anúncios

segunda-feira, 20 de junho de 2022

Realizar deploy com GitHub Actions

O que é GitHub Actions?

GitHub Actions é uma plataforma de integração contínua e entrega contínua (CI/CD) que permite automatizar a sua compilação, testar e pipeline de implantação. É possível criar fluxos de trabalho que criam e testam cada pull request no seu repositório, ou implantar pull requests mesclados em produção.

O presente post, explica os procedimentos de deploy com CI/CD no GitHub Actions.

No servidor de produção, execute:

ssh-keygen -m PEM -t rsa -b 4096 -C "seuusuario@github.com" cat github-actions >> autenticate_keys cat github-actions

A chave secreta que deve ser copiar na sua conta do GitHub

Criar o arquivo .yml para o CI/CD

$ vim github-action\workflows\ci.yml

NOTA: Se atentar a tabulação do arquivo .yml


name: seudominio.com CI
on:
  push:
    branches:
      - main
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout do repositorio
        uses: actions/checkout@1
      - name: Deploy para meu hosting
        uses: easingthemes/ssh-deploy@main
        env:
          SSH_PRIVATE_KEY: ${{ secrets.SERVER_SSH_KEY }}
          ARGS: "-rlgoDzv0 --delete"
          SOURCE: "src/"
          REMOTE_HOST: ${{ secrets.REMOTE_HOST }}
          REMOTE_USER: ${{ secrets.REMOTE_USER }}
          REMOTE_PORT: ${{ secrets.REMOTE_PORT }}
          TARGET: ${{ secrets.REMOTE_TARGET }}

Agora criar o repositório local e remoto (GitHub, Bitbucket ou GitLab)

Em Settings/Secrets adicione o valor das variáveis definidas no arquivo ci.yml nos respectivos campos, tais como: REMOTE_HOST, REMOTE_USER, REMOTE_PORT.

git add .
git commit -m "First commit"
git remote add origin URL_REPOSITORIO
git push origin main

Verificar no GitHub Actions o processo de deploy

Pronto, é assim que precisa ser o deploy aplicando CI/CD automatizado. Caso você ainda utiliza o deploy via FTP ou conecta o servidor de produção via SSH, esteja ciente que está no modo arcaico.

Referências

https://github.com/features/actions

Feito!

sábado, 18 de junho de 2022

Dicas para ser especialista em JavaScript

O presente post, apresenta as 7 dicas para ser especialista em JavaScript, mas serve também para outras linguagens e framework da respectiva linguagem.

  1. Aprenda conceitos
  2. É importante estudar os fundamentos da linguagem, pois é a base e faz parte do processo de aprendizado.

  3. Conheça bibliotecas que podem te ajudar
  4. Saiba as bibliotecas da linguagem que possa lhe ajudar no desenvolvimento. Verifique a os recursos do JavaScript

  5. Treina sua lógica através de exercícios
  6. O quiz do JavaScript para treinar os conceitos que estudou no item 1.

  7. Faça desafios
  8. Verifique 30 desafios em Javascript disponíveis para resolver

  9. Saiba as boas práticas de desenvolvimento
  10. Clean Code do JavaScript

  11. Siga os padrões de desenvolvimento na linguagem
  12. padrões do JavaScript

  13. Leia livros sobre JavaScript
  14. Verifique o livro de JavaScript versão em inglês e versão em português

Referências

[1] Canal da HCODE

Feito!

quarta-feira, 15 de junho de 2022

Utilizando o MongoDB no VSCode

O presente post é explicar de forma simples como utilizar o MongoDB no VSCode.

Após instalar o VSCode, caso ainda não tenha instalado.

Na guia de extensão do VSCode, pesquise por "MongoDB for VSCode" e marque para instalar.

Adicione uma conexão na extensão que acabou de instalar, informe a URL e credenciais de acesso do MongoDB, pode ser o cluster atlas MongoDB (serviço cloud) ou no ambiente MongoDB na máquina local ou MongoDB no Docker.

Para desativar a mensagem de aviso toda vez que for executar, verique o ícone de uma engranagem da extensão e desmarque a opção de aviso.

Exemplo da minha collection, só para ilustrar um pouco da sintaxe do MongoDB, adapte com a sua collection, ok?


use('empresa');

db.functionarios.insertOne({_id:1, "nome": "Bjorn Cyril"})

db.funcionarios.find();

db.functionarios.insertOne({_id:2, "nome": "Zorzo"})

db.funcionarios.update({id_:2}, {
  $set: {
     "nome": "Zorzo Astrogildo"
  }})

Feito!

segunda-feira, 23 de maio de 2022

Uma forma simples de ler os livros da Amazon

Alguns pensam que para ler livros digitais comprados na Amazon é obrigatório ter o dispositivo Kindle, mas nesse post apresento o Kindle Cloud Reader, que ao logar com a sua conta Amazon no browser em qualquer SO (Windows, GNU/Linux, macOS) e também o aplicativo Kindle, pode ler os livros normalmente.

Para quem é uma pessoa sovina, já pode economizar com o dispositivo Kindle 😂

Como acessar o Amazon Cloud Read

Acesse no browser https://read.amazon.com/ logar com a sua conta Amazon e os livros digitais que comprou estará na lista, basta clicar em um para leitura e fazer as marcações.

Também disponível para Android e iOS

Feito!

segunda-feira, 9 de maio de 2022

Conhecendo o PyScript

O que é PyScript?

PyScript é um projeto que executa scripts em Python diretamente na página web.

Sabemos que Python é uma das linguagens de programação mais populares pela sua facilidade de aprendizado e também ser considerada a caligrafia do programador, dos que não tem costume de indentar códigos.

Também o uso do Python cresceu bastante em Data Sciense (Ciência de Dados), incluindo Machine Learning e Deep Learning.

Assim surgiu o projeto PyScript, como uma biblioteca JavaScript que permite executar scripts Python na página web, inicialmente para quem conhece PHP, irá pensar que é parecido, pois mistura Python e HTML na página web.

O objetivo do projeto PyScript é permitir o público de desenvolvedores Frontend conheçam o poder do Python e as diversas bibliotecas de estatísticas, Machine Learning, Deep Learning, etc.

Se caso você é um Cientista de Dados, pode compartilhar os arquivos HTML, dashboards e modelos para pessoas interessadas poderem executar diretamente no browser a sua aplicação, de forma simples, sem precisar uma configuração complicada.

Como o PyScript funciona?

PyScript foi construído em cima do Pyodide, que é uma biblioteca que transforma código Python em WebAssembly.

WebAssembly é uma tecnologia que possibilita escrever sites em Python. Utiliza uma linguagem no formato .wat legível por humanos, então convertida para o formato .wasm binário para que os browser poder executar. Por meio disso, podemos escrever código em qualquer linguagem, compilá-lo para WebAssembly e executá-lo em um browser.

Por enquanto, o PyScript tem suporte escrever e executar apenas código Python no browser. O objetivo para o futuro é que também ofereça suporte para outras linguagens de programação.

Vamos na prática

Agora vamos executar o primeiro código Python no browser com o PyScript

O famoso Hello World com PyScript

helloword.html


<html>
  <head>
    <link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
    <script defer src="https://pyscript.net/alpha/pyscript.js"></script>
  </head>
  <body> 
    <py-script> print('Hello, World!') </py-script> 
  </body>
</html>

Execute o arquivo HTML no browser que utiliza como default e irá mostrar "Hello, World!" na página. Agora vamos para o segundo exemplo mais elaborado que executa o Histograma de uma Distribuição Padrão, como em Estatística.

histograma-dist.html


<html>
    <head>
      <link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
      <script defer src="https://pyscript.net/alpha/pyscript.js"></script>
      <py-env>
        - numpy
        - matplotlib
      </py-env>
    </head>

  <body>
    <h1>Histograma de uma Distribuição Padrão</h1>
    <div id="grafico"></div>
    <py-script output="grafico">
import matplotlib.pyplot as plt
import numpy as np

np.random.seed(42)

rv = np.random.standard_normal(1000)

fig, ax = plt.subplots()
ax.hist(rv, bins=30)
fig
    </py-script>
  </body>
</html>

Você deve perguntar, se teria como executar o script Python separado do HTML, a resposta é sim, deixando mais limpo.

Adicione o script Python entre a tag

<py-script src="script.py"> </py-script>

<html>
  <head>
    <link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
    <script defer src="https://pyscript.net/alpha/pyscript.js"></script>
  </head>
  <body> 
    <py-script src="/script.py"> </py-script>
  </body>
</html>

Referências

https://anaconda.cloud/pyscript-python-in-the-browser

https://pyscript.com/

https://github.com/pyodide/pyodide/tree/main/packages

Feito!

sexta-feira, 6 de maio de 2022

Configurando o VSCode para C e C++

O objetivo deste post é explicar que pode utilizar o editor VSCode para programar em C e/ou C++

Instalar o VSCode

No Linux (Debian/Ubuntu)

$ wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
$ sudo install -o root -g root -m 644 packages.microsoft.gpg /etc/apt/trusted.gpg.d/
$ sudo sh -c 'echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/trusted.gpg.d/packages.microsoft.gpg]
https://packages.microsoft.com/repos/code stable main" < /etc/apt/sources.list.d/vscode.list'
$ sudo apt install apt-transport-https
$ sudo apt update
$ sudo apt install code

No Windows

Caso ainda não tiver instalado o VSCode Setup do VSCode

Instale o MinGW (GCC for Windows)

Adicione o MinGW no PATH

No editor de variáveis de ambiente do Windows, Propriedades do Sistema, Variáveis de Ambiente, selecione PATH, editar, novo e coloque o caminho C:\MinGW\bin e clique em OK.

Instalando as extensões necessárias para a linguagem C e C++ no VSCode

No menu da barra lateral (item 5 no canto esquerdo) do VSCode, pesquise a extensões C/C++ IntelliSense, C/C++ Compile Run

Pronto, seu VSCode está habilitado para programar em C e C++

Teste na prática

Agora com as extensões C e C++ adicionadas, vamos compilar um código em C no VSCode

Crie um arquivo e salve com a extensão .c

hello-world.c


#include <stdio.h>
#include <stdlib.h>
int main() 
{
  printf("Hello World em C no VS Code!");
  return 0;
}

Tecle F6 para compilar e gerar o executável. Depois no terminal interno do VSCode, execute o nome do executável gerado que é o mesmo nome do arquivo, só executar no terminal.

Feito!

quarta-feira, 4 de maio de 2022

Conhecendo a IDE CodeBlocks

CodeBlocks é um Ambiente de Desenvolvimento Integrado (IDE) de código aberto e multiplataforma, que suporta os compiladores: MinGW/GCC, Digital Mars, Microsoft Visual C++, Borland C++, LLVM Clang, Watcom, LCC e Intel C++ Compiler.

Apesar de ser uma IDE projetada para linguagens C e C++, também possui suporte para outras linguagens, como Fortran e Assembly.Inclui o debug também.

Instalando o CodeBlocks no ambiente GNU/Linux

Abre o terminal na distro que estiver utilizando e segue os procedimentos

No Debian e derivados (Ubuntu)

$ sudo apt update
$ sudo apt install codeblocks codeblocks-contrib

No Fedora

$ sudo dnf install codeblocks*

No Arch/Manjaro e derivados

$ sudo pacman -S codeblocks

No Gentoo

# emerge -av codeblocks

Referências

CodeBlocks Manual

Feito!