
Docker para Desenvolvedores
Se você é um entusiasta da programação ou está iniciando sua jornada, certamente já sentiu falta de um material sobre Docker para Desenvolvedores. Este artigo é mais do que uma introdução; é um conv...
Explore nossa coleção completa de artigos sobre desenvolvimento, tecnologia e programação.
Total de artigos: 112
Se você é um entusiasta da programação ou está iniciando sua jornada, certamente já sentiu falta de um material sobre Docker para Desenvolvedores. Este artigo é mais do que uma introdução; é um conv...
YAML, ou "YAML Ain't Markup Language", é uma linguagem de serialização de dados de fácil leitura e escrita. Ela é frequentemente usada em configurações de software, como arquivos de configuração, par...
NumPy é uma biblioteca popular de Python para computação numérica que é usada por cientistas de dados, engenheiros e pesquisadores em todo o mundo. Ela fornece uma estrutura de matriz poderosa e efic...
A Lei de Conway, também conhecida como Lei de Conway de Organização, é uma teoria que descreve como as organizações evoluem ao longo do tempo. Ela foi desenvolvida pelo cientista da computação Melvin...
Kubernetes é um sistema de código aberto que ajuda a automatizar, escalar e gerenciar aplicativos em contêineres. Ele foi desenvolvido pelo Google e lançado em 2014. Desde então, tornou-se uma das fe...
Linux Containers (LXC) são uma tecnologia de virtualização que permite a execução de múltiplos sistemas operacionais em um único host. Essa tecnologia é baseada no kernel do Linux e oferece uma alter...
Cgroups, também conhecidos como Control Groups, são uma funcionalidade do kernel do Linux que permite aos administradores do sistema limitar, isolar e priorizar recursos de sistema, como CPU, memória...
Testes Unitários são uma técnica de programação utilizada para testar pequenas partes do código de um software. Esses testes são realizados em unidades individuais de código, como funções ou métodos,...
SRE, do inglês _Site Reliability Engineering_ (ou Engenharia de Confiabilidade de Site) é uma metodologia de engenharia de software que visa garantir a confiabilidade, disponibilidade, escalabilidade...
No livro "Microsserviços Prontos Para a Produção: Construindo Sistemas Padronizados em uma Organização de Engenharia de Software", a autora Susan J. Fowler compartilha sua experiência ao abordar os d...
O padrão de arquitetura SAGA é um modelo que tem como objetivo simplificar a implementação de sistemas distribuídos, robustos e escaláveis. O padrão SAGA foi inicialmente proposto para lidar com tra...
Máquina de Estados é um conceito fundamental em ciência da computação e engenharia elétrica. É uma ferramenta poderosa para modelar sistemas que mudam de estado com base em entradas ou eventos. Em es...
Para trabalhar com datas e horários, você terá como aliado a biblioteca Datetime no [Python](https://codigo35.com/python/). **Ela fornece uma ampla gama de funções para manipulação de datas e horário...
Markdown é uma linguagem de marcação simples que permite que usuários escrevam em um formato fácil de ler e escrever sem precisar de conhecimentos em [HTML](https://codigo35.com/html/). Criado em 200...
O PIP (Gerenciador de Pacotes) é um sistema de gerenciamento de pacotes para o [Python](https://codigo35.com/python/). Ele permite que os usuários instalem, atualizem e desinstalem pacotes [Python](h...
O Jupyter Notebook é uma ferramenta de software livre que permite a criação e compartilhamento de documentos interativos que contêm código, visualizações e texto. Ele é amplamente utilizado por cient...
Unity é um motor de jogo popular usado por desenvolvedores de jogos em todo o mundo. Ele foi criado pela Unity Technologies e lançado em 2005. Desde então, tornou-se uma das ferramentas mais usadas p...
ORM (Object Relational Mapping) é uma técnica de programação que permite que os desenvolvedores trabalhem com bancos de dados relacionais usando objetos. Em outras palavras, ORM é uma camada de abstr...
O NPM (Node Package Manager) é uma ferramenta de gerenciamento de pacotes para o ambiente Node.js. Ele permite que os desenvolvedores instalem, compartilhem e gerenciem as dependências de seus projet...
O MVC (Model View Controller) é um padrão de arquitetura de software que divide um aplicativo em três componentes principais: o modelo, a visualização e o controlador. Cada um desses componentes tem...
CSRF, ou Cross-Site Request Forgery, é uma vulnerabilidade de segurança que pode ser explorada por criminosos cibernéticos para obter acesso não autorizado a informações confidenciais. Essa vulnerabi...
Uma consulta de banco de dados, também conhecida como Query, é uma solicitação de informações de um banco de dados. Essas consultas permitem que os usuários recuperem dados específicos de uma tabela...
Node.js é uma plataforma de software de código aberto construída sobre o motor V8 do Google Chrome. Ele permite que os desenvolvedores criem aplicativos de rede escaláveis e de alto desempenho usan...
Aprendizado de máquina é um subconjunto de inteligência artificial que permite que os computadores aprendam e melhorem a partir de dados sem serem explicitamente programados. Em vez disso, os algorit...
IDE (do Inglês "_Integrated Development Environment_" ou Ambiente de Desenvolvimento Integrado) é uma ferramenta de software que oferece um conjunto de recursos para desenvolvedores de software. Ele...
O desenvolvimento Frontend é uma área de grande importância no mundo da tecnologia. É responsável pelo desenvolvimento da interface do usuário em sites e aplicativos, tornando a experiência do usuári...
Redis é um banco de dados em memória de código aberto que é usado para armazenar e acessar dados. Ele é conhecido por ser rápido e escalável, tornando-se uma escolha popular para aplicativos que exig...
CSV, ou Comma Separated Values, é um formato de arquivo amplamente utilizado para armazenar e trocar dados tabulares. Ele é simples e fácil de usar, tornando-o uma escolha popular para muitos tipos d...
Se você já se aventurou na programação em JavaScript, provavelmente já se deparou com a necessidade de remover um elemento específico de um array. Essa é uma tarefa comum que pode ser realizada de vá...
SSL (Secure Sockets Layer) é um protocolo de segurança usado para proteger a transferência de dados pela internet. Ele foi criado para garantir que as informações enviadas entre um servidor e um nave...
O SAML (Security Assertion Markup Language) é um padrão aberto que permite a troca segura de informações de autenticação e autorização entre diferentes sistemas. Ele foi desenvolvido para resolver o...
OAuth2 é um protocolo de autorização que permite que aplicativos acessem informações de usuários sem precisar saber suas credenciais de login. Em vez disso, o OAuth 2 permite que um usuário autorize...
O MVP (Minimum Viable Product) é uma estratégia utilizada por empresas para lançar produtos no mercado com o mínimo de recursos necessários. A ideia é que o produto seja lançado rapidamente, com o ob...
JSON Tokens Web (JWT) são uma forma popular de autenticação e autorização em aplicações web modernas. Eles são usados para transmitir informações entre partes confiáveis e não confiáveis, permitind...
JSON (JavaScript Object Notation) é uma linguagem de formatação de dados leve e fácil de ler e escrever. Foi desenvolvido para ser uma alternativa mais simples ao XML (Extensible Markup Language) e é...
A área de tecnologia é conhecida por ser intensa e dinâmica, mas também pode ser um ambiente propenso ao burnout. **O burnout é um estado de exaustão física, emocional e mental que pode levar à dimin...
O TypeScript é uma linguagem de programação de código aberto que é uma extensão do [JavaScript](https://codigo35.com/javascript/). Ele foi desenvolvido pela Microsoft e é amplamente utilizado para cr...
React JS é uma biblioteca JavaScript popular para construir interfaces de usuário. Desenvolvida pelo Facebook, ela permite que os desenvolvedores criem componentes reutilizáveis e eficientes para cri...
OpenID Connect é um protocolo de autenticação de usuários que permite que usuários façam login em diferentes sites com as mesmas credenciais. Ele fornece um método seguro e fácil de usar para autenti...
Jest JS é uma biblioteca de teste de [JavaScript](https://codigo35.com/javascript/) desenvolvida pelo Facebook. É uma das ferramentas de teste mais populares para aplicativos [JavaScript](https://cod...
Terraform é uma ferramenta de código aberto usada para gerenciar a infraestrutura de nuvem. Ele permite que os usuários definam sua infraestrutura como código, o que significa que podem criar, altera...
Docker é uma plataforma de software que foi criada para ajudar os desenvolvedores a criar, implantar e executar aplicativos em contêineres. Esses contêineres são unidades de software que incluem tudo...
O Protocolo REST é uma abordagem arquitetural para desenvolvimento de APIs que tem ganhado popularidade nos últimos anos. Ele é baseado no protocolo [HTTP](https://codigo35.com/http/) e foi criado pa...
O Protocolo HTTP é uma das tecnologias fundamentais da internet moderna. Ele é responsável por permitir a comunicação entre os navegadores web e os servidores que hospedam os sites que visitamos diar...
Elixir é uma linguagem de programação funcional criada por José Valim em 2011. Ela é inspirada em outras linguagens como [Ruby](https://codigo35.com/ruby/), Erlang e Clojure, e tem como objetivo forn...
Bytes são uma unidade de medida de informação digital que é usada em muitos aspectos da tecnologia moderna. Um byte é composto por oito bits, que são os blocos básicos de informação digital. Bytes sã...
Você já se deparou com números que precisam ser arredondados ou truncados em seus projetos de programação? Arredondar e truncar números são tarefas fundamentais na programação, e dominar essas habili...
WebAssembly é uma tecnologia relativamente nova que permite a execução de código de baixo nível em navegadores modernos. O objetivo principal do WebAssembly é fornecer uma plataforma comum e segura p...
Service mesh é uma tecnologia emergente que está mudando a forma como as empresas gerenciam suas aplicações em nuvem. Em resumo, um service mesh é uma camada de software que fornece um conjunto de re...
A Linguagem de Programação Rust é uma das linguagens de programação mais populares da atualidade. Ela foi criada pela Mozilla em 2010 e é conhecida por sua segurança, desempenho e eficiência. Rust é...
O termo "Microfrontend" tem sido cada vez mais utilizado no mundo do desenvolvimento de software. Mas o que exatamente é isso? Em resumo, o Microfrontend é uma arquitetura que consiste em dividir a i...
GraphQL é uma tecnologia de consulta de dados que permite aos desenvolvedores obter exatamente o que precisam de um servidor. Ele fornece uma maneira eficiente de buscar dados em várias fontes e é um...
O Framework Web Django é uma ferramenta de desenvolvimento web de código aberto, escrita em [Python](https://codigo35.com/python/). Ele foi criado para facilitar a criação de aplicações web complexas...
Microsserviços são uma abordagem arquitetural para o desenvolvimento de software que tem ganhado popularidade nos últimos anos. Eles são uma forma de dividir um sistema em componentes independentes e...
SQL é uma linguagem usada para gerenciar e manipular dados em bancos de dados relacionais. É uma sigla para Structured Query Language, ou Linguagem de Consulta Estruturada em português. A linguagem f...
A linguagem de programação Ruby é uma linguagem de script de alto nível que é conhecida por sua simplicidade e elegância. Criada por Yukihiro "Matz" Matsumoto em 1995, Ruby é uma linguagem de program...
Go é uma linguagem de programação de código aberto criada pelo Google em 2007. Ela foi projetada para ser eficiente, confiável e fácil de usar. GO é uma linguagem de programação compilada e estática,...
[Python](https://codigo35.com/python/) Pandas é uma biblioteca de software livre para a linguagem de programação Python, usada principalmente para análise de dados. O nome "Pandas" é derivado de "pan...
A linguagem de programação Assembly é uma linguagem de baixo nível utilizada para programar computadores, dispositivos eletrônicos e sistemas embarcados. Essa linguagem é considerada uma das mais ant...
[Python](https://codigo35.com/python/) Anaconda é uma distribuição de Python que inclui uma vasta biblioteca de pacotes e ferramentas para análise de dados. É uma das opções mais populares para cient...
Javascript é uma linguagem de programação que foi criada em 1995 por Brendan Eich, um programador da Netscape. Trata-se de uma linguagem de script que é usada principalmente para criar e controlar aç...
A linguagem de programação Java é uma das mais populares no mundo da tecnologia. Ela é utilizada em diversos tipos de aplicativos, desde jogos até sistemas de gerenciamento de empresas. Desenvolvida...
HTML é a sigla para Hypertext Markup Language, que em português significa Linguagem de Marcação de Hipertexto. É uma linguagem de marcação utilizada para criar páginas na internet. O HTML é a base pa...
A linguagem de programação Cé uma das mais populares no mundo do desenvolvimento de software. Ela foi criada pela Microsoft em 2000 e é usada principalmente para desenvolver aplicativos Windows, jogo...
Desenvolvida na década de 1980 por Bjarne Stroustrup, a linguagem C++ é uma evolução da linguagem C, acrescentando recursos como orientação a objetos e templates. A linguagem de programação C++ é uma...
Linguagem de Programação C é uma das linguagens de programação mais utilizadas em todo o mundo. Criada em 1972 por Dennis Ritchie, a linguagem C é uma linguagem de programação de baixo nível que é us...
Python é uma das linguagens de programação mais populares do mundo, conhecida por sua simplicidade e versatilidade. Ela é uma linguagem de alto nível, o que significa que é mais fácil de ler e escrev...
GCP, ou Google Cloud Platform, é uma plataforma de computação em nuvem oferecida pelo Google. Ela permite que indivíduos e empresas armazenem, gerenciem e processem dados e aplicativos em servidores...
AWS é uma plataforma de serviços em nuvem oferecida pela Amazon. A sigla significa Amazon Web Services e é uma das maiores plataformas de computação em nuvem do mundo. A plataforma oferece uma ampla...
API é uma sigla que significa Application Programming Interface, ou em português, Interface de Programação de Aplicativos. É um conjunto de rotinas e padrões estabelecidos por um software para a util...
Se você já se aventurou no mundo do desenvolvimento de software, provavelmente já experimentou a necessidade de voltar atrás em algum commit que você fez. Neste guia, vamos explorar **como desfa...
Precisa saber como ler parâmetros GET via Javascript? Se sim, está no lugar certo. Imagine o seguinte cenário: você está navegando na web, se depara com um link cheio de informações estranhas na ba...
Hoje vamos explorar um assunto que pode parecer um quebra-cabeça complexo, mas prometo que você vai entender como a Escalabilidade de Sistemas, e suas principais abordagens de podem fazer toda a dife...
Você sabia que algoritmos são tipo receitas de bolo para computadores? **Eles são sequências de instruções que ajudam a resolver problemas e realizar tarefas.** Eles são tão importantes na programaçã...
O comando with no [Python](https://codigo35.com/2023/02/06/como-programar-em-python/) é usado para criar um contexto em que um recurso é usado de **forma segura e eficiente**. Vamos aprender a utiliz...
Guia completo para você aprender a como programar em Python, sem enrolação e com desafios práticos. Este post traz informações essenciais para a sua carreira de desenvolvedor decolar, indo desde as...
A criação de uma [API](https://codigo35.com/api/) é uma parte fundamental no escopo de qualquer serviço online. Mesmo quando pensamos em APIs privadas, elas viraram o feijão com arroz da arquitetura...
Sistemas distribuídos vão falhar, todos nós sabemos. Em algum momento os sistemas que construímos deixarão nossos usuários insatisfeitos devido a erros e instabilidades. Sábado, por volta das oito h...
Hoje vou mostrar em poucas linhas de código como criar um Websocket usando um pacote padrão no Go (Golang) chamado [net/http](https://golang.org/pkg/net/http/) e a implementação de [Websocket](https:...
Um clássico que merece estar em toda e qualquer coleção de livros sobre desenvolvimento de software: esse é o caso do [**Clean Code: A Handbook of Agile Software Craftsmanship**](https://amzn.to/3Qs...
Inegavelmente um livro introdutório ao tema, o **[Effective Akka da](https://goo.gl/EgKpVe) [O'Reilly](https://amzn.to/3W2yXUY)** entrega exemplos práticos sobre o uso do Akka e modelo de concorrênci...
Kotlin é uma [linguagem](https://kotlinlang.org/) que já esta no mercado [há alguns anos](https://en.wikipedia.org/wiki/Kotlin_\(programming_language\)), mas foi recentemente anunciada pela Google co...
O **Hypermnesia** é um sistema de cache local compatível com aplicações NodeJs, podendo também ser utilizado diretamente no browser. Desenvolvi com foco em alta performance na comparação de chaves...
Fiz uma rápida apresentação sobre microsserviços no Peixe Urbano Tech Talk - uma iniciativa interna da empresa para compartilhamento de conhecimento técnico entre os engenheiros de software. Abaixo...
Chegou a hora de deixar seu Jenkins um pouco mais nerd com o Star Wars Jenkins plugin. Com ele você pode ter as famosas frases dos filmes clássicos relacionadas as suas builds de acordo com os seus...
> O texto abaixo é a uma tradução do clássico artigo escrito sobre microsserviços por [Martin Fowler](http://www.martinfowler.com/) e [James Lewis](https://twitter.com/boicy). Para acessar a versão o...
É sempre bom acompanhar **bem** de perto quem esta criando as últimas tendências de mercado - e certamente os blogs das empresas são um bom caminho para isso. Como o humorista Murilo Gun diz _"Quem...
Graças a um pequeno update enviado pelo [vinivsb](https://github.com/vinivsb), estou atualizando a versão da chrome extension [gemExplorer](https://chrome.google.com/webstore/detail/gemexplorer/ebbpj...
Hoje, vamos ver em Ruby como combater o _Code Smell_ de duplicação de códigos usando um _design pattern_ conhecido como _Template Method_. **Identificando o** Code Smell Um cenário muito comum ao d...
Hoje vamos criar testes funcionais usando Cucumber e mais algumas libs do mundo Ruby. Anteriormente, meu post foi justamente uma [tradução do ótimo artigo do Martin Fowler sobre Page Objects](https...
_O texto abaixo é a uma tradução autorizada do artigo PageObjects escrito pelo Martin Fowler. Para acessar a versão original em inglês, [clique aqui](http://martinfowler.com/bliki/PageObject.html) ....
Acabei de entrar na reta final do livro [APIs: A Strategy Guide](https://amzn.to/3CBXTLY) e acho que já vale me adiantar e publicar as minhas impressões. O livro em questão é do Daniel Jacobson (@d...
Muito tem se falado sobre o poder das linguagens funcionais atualmente – o velho entrou (novamente) na moda. Fiz há alguns meses o curso "**Functional Programming Principles in Scala**" do Coursera,...
Tentando reduzir o tempo que os testes no Django (a framework [Python](https://codigo35.com/2023/02/06/como-programar-em-python/) mais usada) consomem pra rodar, descobri um truque que fez um simples...
Passei as últimas semanas trabalhando com o Magento, líder do mundo dos e-commerces. Em um cenário distribuído em cloud, tentando assim obter o máximo de performance, escalabilidade e o mínimo de cus...
O Open Graph Protocol é uma especificação de meta tags que pode ser adicionada ao código HTML de um website para fornecer informações específicas sobre a página aos mecanismos de busca e redes sociai...
Hoje a idéia é simples: montei alguns gráficos usando as funções trigonométricas e recursos nativos do web browser através do Jquery, funções Math e a biblioteca Flot. A tarefa em si já não é muito...
_O texto abaixo é a uma tradução autorizada do artigo Integração Contínua escrito pelo Martin Fowler. Para acessar a versão original em inglês, [clique aqui](http://martinfowler.com/articles/continuo...
Aproveitando as férias da faculdade prometi pra mim mesmo que vou botar em dia algumas metas de leitura e o primeiro foi o livro do Vinicius Teles da Improve It, cujo tema e titulo são os mesmos: [Ex...
Uma ótima dica para quem usa uma IDE ou editor decente é usar os snippets, blocos de códigos reutilizáveis que "brotam" no seu código após o uso de uma keyword e um tab. É impressionante como a maio...
Estamos lutando aqui na 3Jane para alcançarmos um formato indolor de [Continuous Integration](https://codigo35.com/2009/03/04/traducao-do-artigo-sobre-integracao-continua/) em nossos projetos - que s...
As universidades MIT (Massachusetts Institute of Technology) e Stanford são consideradas duas das melhores instituições de ensino superior do mundo. Hoje vou recomendar cursos online grátis das maior...
Em pleno século XXI, eu, um desenvolvedor latino-americano, venho com esse papo mole de que dinheiro não é tudo. Sei que a proposta do post não é nova, mas sei também que tem muita gente que vai conc...
Chegou a hora de começar o projeto e o gerente pede uma estimativa em horas. E como bons funcionários que somos, analisamos os requisitos, geramos as especificações, quebramos em partes tangíveis...
Embora não tenha terminado de ler, tenho gostado **muito** do [The Pragmatic Programmer](https://amzn.to/3CAjVP3). É um livro obrigatório, servindo de introdução geral sobre refatoração, versionament...
Gosto de usar o VIM (VI improved) no dia-a-dia e encontrei um recurso muito útil disponível a partir da versão 7 deste super editor: abas! Basta usar o **:**tabnew para abrir uma nova aba. Você p...
No PHP existem três mecanismos para tratarmos com XML: o Simple API for XML (SAX), o PHP5 Document Object Model (DOM) e a biblioteca SimpleXML. Hoje decidi listar rapidamente os ônus e bônus de cada...
Como reagir quando um profissional 'super-star' entra na sua equipe? Hoje quero compartilhar algumas conversas que tive sobre esse problema. Semana passada surgiu um debate aqui na [3Jane](https://w...
Saindo um pouco das linhas de codigo, decidi conversar com vocês um pouco sobre um mito que o Linux, em especial o Slackware, é um SO quase impossível de ser operado de tão complexo. Com isso vou de...
Esses dias estava conversando com um grande colega programador sobre a carência do comando With no PHP e pensei: como criar essa função usando Interfaces Fluentes. Ontem, em mais uma das minhas noit...
Dando continuidade ao estudo sobre Design Patterns no PHP, vamos hoje começar a falar sobre o Modelo de Classes no PHP e a sua aplicação. No ultimo post ([Design Patterns no PHP – Introdução Geral...
Esse é o primeiro estudo de Design Patterns relacionado a PHP que publicarei no blog – e espero que seja o antecessor de muitos outros. Certamente, por o PHP ser uma linguagem extremamente fácil, ta...