Skip to content

Instantly share code, notes, and snippets.

@supwr
supwr / main.go
Created March 21, 2024 03:53
dependency injection using uber fx and interfaces
package main
import (
"encoding/json"
"fmt"
"go.uber.org/fx"
"net/http"
)
type Student struct {
@supwr
supwr / main.go
Last active March 21, 2024 03:22
dependency injection with uber fx
package main
import (
"encoding/json"
"fmt"
"go.uber.org/fx"
"net/http"
)
type Student struct {
@supwr
supwr / main.go
Last active March 21, 2024 02:02
dependency injection via init funcion
package main
import (
"encoding/json"
"fmt"
"net/http"
)
type Student struct {
Name string `json:"name"`
@supwr
supwr / main.go
Last active March 21, 2024 01:56
highly coupled application
package main
import (
"encoding/json"
"fmt"
"net/http"
)
type Student struct {
Name string `json:"name"`
@supwr
supwr / find-text.py
Created October 30, 2019 19:16
Dirty fast code to find pdf that contained certain text. Came out handy on a moment of crisis.
# !/usr/bin/env python
# -*- coding: utf-8 -*-
import os
from shutil import copyfile
import PyPDF2
ORIGIN_PATH = r'path\to\file'
DEST_PATH = r'path\to\file'
KEY_PHRASE = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit'
counter = 0
@supwr
supwr / teste-programador-php.md
Last active June 14, 2019 12:45
Teste Programador PHP

Desenvolva uma aplicação em PHP, disponibilize no GitHub e nos envie o link ao final do desenvolvimento.

  • A aplicação deve exibir a lista de Unidades de Atendimento da Receita Federal, com os registros sendo ordenados por Estado;
  • Os dados podem ser baixados a cada requisição ou carregados de um banco de dados(neste caso NÃO nos envie o dump do banco, e sim o script para que os dados do CSV seja importado para o banco de dados);
  • De preferência o código deve ser escrito de forma limpa, separando as responsabilidades, utilizando algum framework MVC, ser orientado a objetos e testável, melhor ainda se já conter algum teste unitário e seguir os princípios SOLID.

Lista de unidades de atendimento da Receita Federal

We can make this file beautiful and searchable if this error is corrected: Any value after quoted field isn't allowed in line 1.
"Unidade";"Logradouro";"Bairro";"Cidade";"Estado";"CEP"
"ALF Alfândega do Porto de Vitória";"Rua Governador José Sette, nº 176, térreo";"Centro";"Vitória";"ES";"29010-480"
"ALF Porto de Manaus";"Rua Marques de Santa Cruz, S/ 202";"CENTRO";"Manaus";"AM";"69005-050"
"ARF Abaetetuba";"Rua 15 de Agosto, nº 223";"Centro";"Abaetetuba";"PA";"68440-00"
"ARF Acaraú";"Rua João Jaime Ferreira Gomes, nº 178";"Centro";"Acaraú";"CE";"62580-000"
"ARF Adamantina";"Alameda Fernão Dias, nº 314";"Centro";"Adamantina";"SP";"17800-000"
"ARF Afogados da Ingazeira";"Rua Padre Luiz de Campos Góes, nº 439, Térreo";"Manoela Valadares";"Afog. da Ingazeira";"PE";"56800-000"
"ARF Alagoinhas";"Praça JJ Seabra, nº 75";"Centro";"Alagoinhas";"BA";"48010-140"
"ARF Alfenas";"Praça Getúlio Vargas, nº 239";"Centro";"Alfenas";"MG";"37130-000"
"ARF Almenara";"Avenida Olindo de Miranda, nº 442";"Centro";"Almenara";"MG";"39900-000"
@supwr
supwr / mailjet-mail-sender.py
Created August 3, 2018 18:28
Mail sender using mailjet API
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from pymongo import MongoClient
from mailjet_rest import Client
import datetime
class Alert:
client = MongoClient()
@supwr
supwr / dynamic-promise-chain.js
Created July 20, 2018 20:53
Dinamically created promise chain.
let promise = new Promise(resolve => resolve(null));
for(let i = 5000;i > 1000;i-=1000){
promise = promise.then(() => {
return new Promise((resolve) => {
setTimeout(() =>
{
console.log(i);
resolve(i);
},i
@supwr
supwr / promises.js
Last active July 20, 2018 19:45
Chaining promises
const query = () => {
return new Promise((resolve) => {
setTimeout(() => {
console.log("executing query");
resolve("executed query")
},
5000)
});
};