No meu post anterior sobre IA e desenvolvimento de software, algumas pessoas entenderam minha posição como se eu estivesse negando as melhorias reais que a IA traz. Esse não era bem o ponto.
Eu uso IA na maioria dos meus projetos pessoais hoje, e uso porque… bem, funciona. Ela melhora velocidade, me ajuda a explorar código, deixa implementações mais rápidas e diminui o custo de transformar ideias em algo que roda.
Post rápido:
Por alguma razão, o meu post sobre eleição de lider em spring boot continua sendo um dos mais acessados nesse blog.
Contudo, aquela solução parece não ser mais válida, visto que usava Jedis, que não está mais disponível nas últimas versões do spring.
Então, para cobrir esse cenário para quem tiver essa necessidade específica, eu desenvolvi um pequeno starter que usa locks de tabelas para disponibilizar um mecanismo simples de eleição de líder.
Tenho acompanhado poucos canais no youtube, mas um que sempre que eu vejo eu fico satisfeito é o do Renato Augusto.
Recentemente vi o vídeo sobre o encurtador de URLs que ele fez. Num geral, não tem como discutir que a solução dele é provavelmente a melhor possível dadas as premissas do problema:
Requisitos Funcionais: Encurtamento de URL: dado um URL longo -> retornar URL muito mais curto Redirecionamento de URL: dado um URL mais curto -> redirecionar para o URL original Requisitos não funcionais: O sistema deve suportar 100 milhões de URLs geradas por dia O tamanho da URL encurtada deve ser o mais curto possível Somente números (0-9) e caracteres (az, AZ) são permitidos na URL Para cada 1 operação de gravação no banco de dados, haverão 10 operações de leitura O comprimento médio das URLs armazenadas é de 100 bytes URLs devem ser armazenadas pelo período mínimo de 10 anos O sistema deve operar em modo de alta disponibilidade (24/7) Estimativas Operações de gravação: 100 milhões de URLs por dia = 100.
Anteontem recebi uma pergunta simples:
“O que preciso fazer para iniciar e crescer na carreira de desenvolvedor web?”
A resposta direta é fácil: estudar, treinar e aprender com as experiências. Na ânsia de zerar minha caixa de emails, foi o que pensei em responder.
Mas a pergunta é boa, e se você começar a dissecar um pouco a ideia, percebe que, embora a resposta direta não esteja errada, existem alguns pontos que serão mais estressados ao longo da carreira, e se você puder fortalecer esses pontos, isso ajudará não só a sua entrada e estabilização no mercado, mas também servirá como base quando você já for experiente.
Às vezes sinto falta da adrenalina de descompilar um jar (porque o fonte foi perdido anos atrás), adicionar um if e colocá-lo de volta em produção. Mas acredite, aqueles tempos eram uma droga.
Nos velhos tempos, as pessoas entregavam em produção sem qualquer tipo de teste automatizado. Nós apenas contruíamos as funcionalidades necessárias, testávamos localmente e copiávamos os arquivos para um servidor, geralmente depois da meia-noite, acompanhados de pizzas e de medo.