Postagens

Mostrando postagens de janeiro, 2020

HTTPie: Uma alternativa amigável ao curl

Imagem
HTTPie é um cliente HTTP de linha de comando com uma interface de usuário intuitiva, suporte a JSON, destaque de sintaxe, downloads semelhantes a wget, plug-ins e muito mais. Seu objetivo é tornar a interação da CLI com os serviços da Web o mais amigável possível. Ele fornece um comando http simples que permite o envio de solicitações HTTP arbitrárias usando uma sintaxe simples e natural e exibe saída colorida. O HTTPie pode ser usado para teste, depuração e interação geral com servidores HTTP. O HTTPie consiste em um único comando http projetado para depuração indolor e interação com servidores HTTP, APIs RESTful e serviços da Web, que ele realiza por: - Padrões sensíveis - Sintaxe de comando expressiva e intuitiva - Saída de terminal colorida e formatada - Suporte JSON incorporado - Sessões persistentes - Upload de formulários e arquivos - Suporte a HTTPS, proxies e autenticação - Suporte para dados de solicitação e cabeçalhos arbitrários - Downloads semelhantes ao W

Gtop: Um painel de monitoramento do sistema para terminal

Imagem
Ferramentas de linha de comando como "top" dificultam a visualização do uso da CPU em aplicativos de vários processos (como Apache e Chrome), picos ao longo do tempo e uso de memória. Afim de facilitar esse processo, existem diversas ferramentas como o vtop , htop e o gtop. Mas o que é o Gtop? O gtop é uma ferramenta que lê informações sobre processos e o estado do sistema no modo dinâmico. Está escrito em node.js e pode ser facilmente estendido. Para verificar seu código fonte basta acessar o github . Qual a diferença entre o vtop e o gtop? Com o VTOP você consegue monitorar apenas o CPU, Memória e os PID. Já com o GTOP você consegue monitorar CPU, Memória, SWAP, PID, Network e o Disco. Outra diferença entre os dois é que com o VTOP você consegue matar um determinado PID, setar um intervalo em que o monitorar irá atualizar os dados mostrados na tela, consegue também mudar o tema do monitor, desativar interação com o mouse e definir um tempo para o monitor ser

Vtop: Um monitor de atividade do sistema para terminal

Imagem
Ferramentas de linha de comando como "top" dificultam a visualização do uso da CPU em aplicativos de vários processos (como Apache e Chrome), picos ao longo do tempo e uso de memória. Afim de facilitar esse processo, existem diversas ferramentas como o vtop, htop e o gtop . Mas o que é o Vtop? O Vtop é um monitor de atividades de código aberto e gratuito para a linha de comando. Está escrito em node.js e pode ser facilmente estendido. Por que não verificar o código fonte ? Qual a diferença entre o vtop e o gtop? Com o VTOP você consegue monitorar apenas o CPU, Memória e os PID. Já com o GTOP você consegue monitorar CPU, Memória, SWAP, PID, Network e o Disco. Outra diferença entre os dois é que com o VTOP você consegue matar um determinado PID, setar um intervalo em que o monitorar irá atualizar os dados mostrados na tela, consegue também mudar o tema do monitor, desativar interação com o mouse e definir um tempo para o monitor ser fechado automaticamente. Já com

G Cloud: Gerando chave de autenticação para o Google Cloud

Imagem
Para integrar uma aplicação com os serviços disponibilizados pelo Google Cloud, será nescessário gerar uma chave de autenticação para que a sua aplicação possa ter permissão de comunicar com os serviços da Google. Se você é marinheiro de primeira viagem, conseguir essa chave acessando o painel do google cloud é um puco tanto complexo. Logo abaixo está o passo a passo de como obter as chaves de autenticação. Para maiores informações você pode acessar a documentação oficial, clicando aqui . 1-  Já na página inicial do console do G Cloud, acesse as opções: APIs e serviços -> Credenciais 2 - No botão "Gerar Credenciais" teremos algumas opções. 2.1- Chave de API Será criada uma chave de API Simples que poderá ser usada em alguns serviços como exemplo o Google Maps, onde você pode passá-la pela URL da API. 2.2- Id do cliente do OAuth Essa opção serve para sua aplicação poder ter uma opção de login ou sincronização dos dados com o Google. 2.3- Conta de

Python: Conhecendo a declaração With

Imagem
A declaração a "with" foi inserida ao Python na PEP 343  em 2005. Com ela conseguimos tornar o código mais limpo, legível e seguro. Resumidamente ela é um gerenciador de contexto reponsável por garantir que determinados recursos sejam liberados independente se o código deu sucesso ou erro. O exemplo mais comum e de melhor entendimento é o de leitura de arquivos. Suponha que um arquivo é aberto. Quem irá garantir que o mesmo será fechado? Por mais que você coloque no código de forma explícita que ele deve ser fechado, se ocorrer uma exceção, sairá do escopo sem executar o restante do código pulando o fechamento. Para esse caso normalmente usaríamos o try/finally, pois o finally iria garantir que o arquivo seria fechado. Mais lembre-se que o with alem de garantir segurança ele visa um código mais limpo e menos complexo. Mas afinal, como é um código que utiliza o "with"? Veja abaixo: Na linha 1 utilizamos o "with ",  logo em seguida chamamos a fun

asdf-vm: Gerenciador de versão extensível com suporte a várias linguagens e ferramentas de desenvolvimento

Imagem
Nos dias de hoje é muito comum você ter que lidar com diversas versões de diversas linguagens ao mesmo tempo. Pense comigo, suponha que tenhamos alguns projetos que utilizam as linguagens de programação python, nodejs e golang. Agora suponha que dentre esses projetos eles utilizam versões diferentes para cada linguagem, como exemplo python 3.7.2, python 3.9.0, go 1.15.6, go 1.14.3, node 14.16.0 e node 15.12.0. Já imaginou como seria difícil ter que instalar cada versão da linguagem em seu computador? Com o asdf você vai perceber como isso se torna muito fácil de se gerenciar e o melhor é que ele tem diversos plugins. Com ele você consegue não só instalar linguagens de programação mas também ferramentas de desenvolvimento. Veja alguns exemplo: node.js, python, r, go, ruby, clojure, erlang, dart, java, php, deno, elixir, flutter, dotnet-core, mysql, postgres, mongodb, redis, rabbitmq, elasticsearch, docker-slim, yarn e muitos outros . Instalação A instalação dele é muito simples

Python: Duas formas de criar um Switch Case

Imagem
Todos nós que trabalhamos na área de desenvolvimento sabemos que nas linguagens mais populares temos como opção utilizar a condicional switch/case, mas para quem trabalha com Python sabe-se que isso não existe na linguagem. Como forma de contornar o problema irei demonstrar duas formas para você poder implementar em seu código. Atenção: Na versão 3.10 do Python foi implementado o  Pattern Matching que tem como objetivo ser igual ou melhor que o switch case. 1- Utilizando dicionário (object literals) O que iremos fazer nesse procedimento é criar uma variável do tipo dicionário e utilizando a função get iremos capturar um valor do dicionário. Segue o exemplo: Vamos entender o que está escrito nesse código? Nas linhas 1, 4 e 7 estamos apenas criando funções que iram dar um print na tela assim que elas forem chamadas. Na linha 11 criamos uma variável do tipo dicionário e nela definimos a key como sendo a nossa condicional do case e o valor sendo as funções criadas anteri

Pyenv: Gerenciando versões Python

Imagem
Demonstração de como gerenciar versões Python em um mesmo ambiente utilizando Pyenv. Se você trabalha com vários projetos Python sabe como é complicado lidar com as versões do Python para cada projeto. Com intuito de auxilizar os desenvolvedores a gerenciar melhor as versões do Python, surgiu em 2011 uma biblioteca open source chamada pyenv . Com ela a gente consegue criar um virtualenv com uma versão especifica do Python e isso simplifica muito a nossa vida. Instalação em ambiente Linux Primeiramente você precisa instalar os pré-requisitos da biblioteca. Para isso você pode acessar esse link e seguir os passo a passo. Após a instalação dos pré-requisitos iremos instalar a biblioteca. O passo a passo para a instalação você irá encontrar aqui . Instalação em ambiente Windows O passo a passo para a instalação no ambiente windows você irá encontrar nesse link . Conhecendo a biblioteca O primeiro comando e o mais importante é o pyenv . Se a sua instalação foi bem suced

Redis + Docker Compose: Criando uma instância do Redis com Docker Compose

Imagem
Recentemente fiz uma postagem explicando como criar uma instância do Redis com Docker a partir de comandos digitados diretamento no terminal. Hoje iremos aprender a como criar a mesma instância a partir de um arquivo docker compose. Primeiramente você precisa criar um arquivo chamado docker-compose.yml e salvá-lo em algum diretório do seu computador. Dentro desse arquivo você irá colocar todo o conteúdo como especificado abaixo: Explicando algumas linhas do arquivo - Linha 5: informamos qual a imagem do Docker Hub que iremos baixar assim que rodar o arquivo; - Linha 6: nessa linha temos dois comandos: o primeiro é  --requirepass SUASENHA e serve para setar uma senha de acesso ao banco de dados e o segundo  --appendonly yes serve para falarmos que iremos utilizar volume no Redis; - Linha 8: aqui estamos expondo a porta 6379 para outras aplicações conseguirem se comunicar com o Redis; - Linha 10: essa linha é para especificar onde será salvo os dados do Redis e com isso

Redis + Docker: Criando uma instância do Redis com Docker

Imagem
Neste tópico será demonstrado o passo a passo para a criação de um contâiner  Docker  para o banco de dados  Redis . Mas o que é Redis? Redis é uma estrutura de armazenamento em memória, muito utilizado como banco de dados, cache e intermediário de mensagens. Atenção Antes de tudo você deve ter o  Docker  instalado em seu sistema operacional. Criando o contâiner Para criar o contâiner basta você rodar os comandos abaixo em seu terminal: docker run --name redis -d -p 6379:6379 redis:latest O comando acima irá fazer o pull da última imagem docker do Redis e logo em seguida irá criar e iniciar o contâiner em seu computador. Caso você queira especificar uma versão do Redis, basta alterar a palavra  latest  do comando pela versão desejada. Para criar o contâiner com senha, basta adicionar ao final do comando  --requirepass yourpassword Por fim você pode também adicionar um volume ao contâiner, para evitar de perder os dados quando o mesmo for parado. Para isso basta adicionar

pgAdmin 4: Configurando um server do Postgres

Imagem
Nessa postagem aprenderemos a como conectar o pgAdmin 4 com um banco de dados PostgreSQL. Se você ainda não tem o PostgreSQL ou o pgAdmin instalado, veja nossa postagem:  PostgreSQL + pgAdmin 4 + Docker Compose: Criando ambiente para uso Se você seguiu o nosso passo a passo para configurar o pgAdmin basta você acessar o endereço  http://localhost:15432 para poder acessar o painel de controle. Assim que você acessar será exigido que você digite o email e senha, esses dados é setado assim que você cria o contâiner do pgAdmin no docker. Após o login você irá encontrar uma tela bem parecida com essa: Agora basta clicar com o botão direito do mouse sobre a opção Servers e navegar até a opção Create -> Server No modal que será aberto, na aba  General clique no campo Name e informe um nome qualquer para a sua conexão: Agora clique na aba Connection e informe os dados de conexão do seu banco de dados Postgres: Se campo Host você pode digitar o IP ou URL q

PostgreSQL + pgAdmin 4 + Docker Compose: Criando ambiente para uso

Imagem
Recentemente fiz uma postagem de como criar uma instância de PostgreSQL e pgAdmin com Docker. O modo abordado na postagem funciona muito bem mas o problema é que você tem que informar alguns comandos via terminal e isso parece ser bem chato pois temos que decorar todos eles. Portanto existe uma forma bem bacana de criarmos os contâiners docker apartir de um único arquivo e isso é o que veremos nessa postagem. Esse arquivo que simplifica a criação de contâiners docker tem a extenção .yml e normalmente se chama docker-compose . Logo abaixo temos o nosso exemplo: No exemplo acima estamos criando duas instâncias docker. Cada instância você irá encontrar na seção services sendo a primeira  postgres-compose que irá criar o PostgreSQL e a segunda o  pgadmin-compose que irá criar o pgAdmin. Dentro da seção do  postgres-compose  encontramos algumas outras seções: - environment: define as variáveis de ambiente para o contâiner; - ports: expõe a porta 5432 para conseguirm

pgAdmin 4 + Docker: Criando uma instância do pgAdmin com Docker

Imagem
Neste tópico será demonstrado o passo a passo para a criação de um container Docker  para acesso ao pgAdmin . Mas o que é pgAdmin? Ele nada mais é do que um gerenciador gráfico para o banco de dados PostgreSql. Atenção Antes de tudo você deve ter instalado o  Docker  em seu sistema operacional. Há e para esse passo a passo ter sucesso, preciso que você já tenha visto esse aqui:  PostgreSQL + Docker: Criando uma instância Criando o contâiner Para criar o contâiner basta você rodar os comandos abaixo em seu terminal: Explicando cada comando: - Linha 1: Ao executar esse comando iremos obter a imagem oficial do pgAdmin la no DockerHub que é um repositório de imagens para docker. - Linha 2: Com esse comando iremos criar uma rede interna, assim os containers que estiverem nela poderam conversar um com o outro. - Linha 3: Por último iremos criar o container pgAdmin. Lembre-se de alterar o e-mail e a senha para logo mais acessar o painel do pgAdmin. Após executar os

PostgreSQL + Docker: Criando uma instância do Postgres com Docker

Imagem
Neste tópico será demonstrado o passo a passo para a criação de um container Docker para o banco de dados PostgreSQL . Mas o que é PostgreSQL? Resumidamente ele é um sistema gerenciador de banco de dados relacional ( SGBD ) que tem seu  código aberto à comunidade. Atenção: Antes de tudo você tem que ter o  Docker  inatalado em seu sistema operacional. Criando o contâiner Para criar o contâiner basta você rodar os comandos abaixo em seu terminal: Explicando cada comando: - Linha 1: Ao executar esse comando iremos obter a imagem oficial do PostgreSQL la no DockerHub que é um repositório de imagens para docker. - Linha 2: Com esse comando iremos criar uma rede interna, assim os containers que estiverem nela poderam conversar um com o outro. - Linha 3: Por último iremos criar o container PostgreSQL. Nesse comando você pode alterar o usuário e  senha padrão de acesso ao banco de dados. Após executar os comandos, você já pode se conectar ao banco de dados pelo ter