• git

    Utilizando o git patch

    As vezes na correria do dia, é muito mais fácil compartilhar códigos com outros devs sem a necessidade de criar 1 commit, push e pull, simplesmente porque aquele código não vai para a versão final. Nesse caso entra o patch. Criando o patch A melhor forma de se fazê-lo, é criar a partir de um sha, e especificar quantos commits para trás você quer incluir nesse patch, exemplo Dessa forma será gerado um arquivo, com a extensão .patch como por exemplo file.patch Aplicando o patch Prontinho!

  • Api,  Postman,  Programação

    Chamando uma api externa de dentro do Postman

    Para um teste recente de um sistema, precisei, a cada cadastro, utilizar um CNPJ diferente para cada chamada no postman, para não conflitar com o que já havia sido cadastrado na base de dados. Claro que poderia ter excluído os dados a cada chamada, mas queria fazer algo diferente. No tutorial que fizemos sobre scrapping, ensinei a pegar os dados de uma API comum, então eu tinha, em um sqlite, 3000 registros, que poderiam ser utilizados. A idéia básica seria, quando clicar em enviar (em 1), ele já trazer a variável fetched_cnpj, em 2, preenchida) Para isso, vamos clicar em pre-request-scrips e colar o seguinte código

  • Uncategorized

    Como fazer web scraping com laravel

    A ideia inicial desse tutorial foi de pegar os dados que estão disponíveis no site cnpj.info/lista e montar uma base de dados local para utilizá-los como massa de testes para um tutorial futuro (sobre a criação de uma extensão para o chrome). Para instalar o projeto siga os passos abaixo O segredo para o scraping está no arquivo app/Http/Controllers/GoutteController.php, método doWebScraping, que é acessado pela url http://127.0.0.1:8000/web-scraping O próximo passo, é, informar nessa página os seletores que queremos extrair da página. É bem simples, o processo consiste em abrir o dev-tools, inspecionar, e copiar o seletor. Subi um video (abaixo) que mostra o processo. Um detalhe que temos que ficar…

  • git

    Como alterar a parent branch no git

    Imagine o cenário, você criou uma branch, a partir da master, fez todas as alterações que precisava, e descobre que ao invés de implantar essas alterações de imediato, precisará enviá-las para outro servidor que não produção. Ou seja, você precisaria que essa branch tivesse sua origem em outra branch, quem sabe develop ? O processo é bem simples e direto. Imagine a situação. Você está na master (git checkout master) e você cria uma branch, baseada nela (git checkout -b new-branch). Adiciona os arquivos, trabalha e commita. O truque, bem simples na verdade, é continuar na branch ‘errada’, e dar o rebase para a branch certa git rebase develop dessa…

  • Docker,  Laravel,  PHP,  Siege

    Testando a performance de aplicações utilizando o siege e docker

    Para testar a velocidade/disponibilidade/performance de um site, utilizando o siege. A primeira coisa que vamos fazer é clonar o repositório Siga os seguintes passos: Depois de executado o comando, você já tem uma imagem docker rodando … para procurá-la basta digitar o comando Você verá uma imagem que se chama siege-local …. para rodar os testes em um servidor, execute o comando abaixo Entendendo os parâmetros utilizados Parâmetro Parâmetros -c 100 O parâmetro -c 100 indica que, para esse teste de stress, utilizaremos 100 usuários concorrentes. É como se o siege criasse 100 usuários para você. Esse número só é limitado pelos seus recursos da máquina. -r 50 O parâmetro…

  • Portfolio

    Site novo no ar!

    O traço diferencial é o tratamento personalizado oferecido a cada um de seus clientes, na busca constante da excelência na prestação de serviços e, principalmente, de resultados satisfatórios. O escritório é composto por 4 procuradores do município de Santa Luzia – MG Desenvolvido em php7.2, composer, node e blade. Visitem https://aavm.adv.br/

  • PHP,  Programação,  SMS,  Tutoriais

    Enviando SMS pelo PHP

    Disclaimer Originalmente esse tutorial foi escrito em 2011, entao existem muitas alternativas pagas baratas por ai. O tutorial consistia em espetar um telefone no PC, porque era a alternativa mais barata na epoca. Objetivo desse tutorial Ensinar, passo a passo, como configurar seu Telefone, e fazer um script PHP para enviar mensagens através do próprio telefone Celular. Motivações para escrita desse tutorial Em um projeto recente, precisei enviar uma enorme quantidade de SMS, através do próprio sistema, e procurei a melhor forma, entenda por mais barata, de enviar minhas próprias mensagens através do mesmo. Pré-requisitos Conhecimento basico em PHP Conhecimento básico em windows Um telefone que seja reconhecido no windows…

  • Docker,  EC2,  PHP,  Programação

    Como instalar o ffmpeg no Amazon Linux AMI

    Recentemente tive a necessidade de criar thumbnails de vídeos em um projeto, e para gerar as mesmas recorri ao bom e velho ffmpeg. Nenhum tutorial funcionou de forma adequada para a instalação em uma instancia EC2 da amazon, e essa foi a única forma que consegui. This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters Show hidden characters mkdir -v -p /usr/local/bin/ffmpeg cd /usr/local/bin/ffmpeg wget https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-i686-static.tar.xz tar -v -xf ffmpeg-release-i686-static.tar.xz --strip-components=1 rm -v -f ffmpeg-release-i686-static.tar.xz ln -snf /usr/local/bin/ffmpeg/ffmpeg /usr/bin/ffmpeg ln -snf /usr/local/bin/ffmpeg/ffpropbe /usr/bin/ffpropbe…

  • Laravel,  PHP

    Customizando o timestamp do monolog

    Recentemente trabalhei em um projeto onde os logs do laravel estavam sendo enviados para o cloudwatch da amazon. O problema era que o horário do servidor estava setado em UTC (O que é o correto), porém o laravel estava gravando os logs utilizando o timestamp que estava nas configurções (o que pra mim é incorreto, já vi diversos lugares reclamando dessa abordagem). Bom, para não ter que reescrever a classe de Log, alterei diretamente dentro do app/Providers/AppServiceProvider.php, alterando o timezone do monolog, conforme gist abaixo. Não se esqueça depois de `php artisana config:cache` para recarregar as configurações


Notice: ob_end_flush(): failed to send buffer of zlib output compression (0) in /home/samu/public_html/blog/wp-includes/functions.php on line 5219