gasGuilherme Silveira

Tech Education Leader no Alura

Todos os artigos por gas

 

100 SQLs erradas ao ano e um único caractere

Quer armazenar seus LIVRO no banco? Ou quer buscar um PRODUTOS no banco? Minha orelha já dói e a sua? Quando juntamos um monte de livro… temos livros, portanto tabelas levam o nome no plural: Quando colocamos um livro entre os que já existem, colocamos um livro nos… livros. Removemos um livro dentre os… livros:
Continuar lendo…  

Produtividade do Gui: limite o tempo desse site

Diz a lenda que o Mark Zuckerberg, fundador do Facebook, tem seu almoço definido por outra pessoa pois ele não quer gastar energia decidindo o que vai comer. Eu ainda tenho muito prazer escolhendo meu prato ou sobremesa, mas extremos como este trazem a tona as dificuldades que enfrentamos na hora de escolher algo. Costumes
Continuar lendo…  

Valores inválidos no SQL? CHECK a sua integridade

Promoção com viagem internacional por 5 reais? Ou ainda -5 reais? Tem campos que deveriam ser validados declarativamente, como o preço de um produto: 🙁 Que caca. Eu queria integridade dos meus dados. Queria que ele checasse por valores inválidos. Manda o banco checar o valor: MySQL ainda não suporta checks, bora aprender a usar
Continuar lendo…  

Trazendo linhas a mais?

Query bonita escrita, executada, resultado zoado. Quem nunca teve uma query respondendo um monte de coisa que não foi pedido? Gostaria de trazer os livros ativos cujos preços tem algo de estranho: são muito baratos (< 10) OU muito caros (> 1000) Que caca! O espertinho trouxe um livro que está inativo. Mas eu pedi
Continuar lendo…  

Aprender duas linguagens de programação ao mesmo tempo?

Uma, duas, três linguagens. Quantas linguagens devemos aprender para começar a trabalhar? E quantas aprendemos logo de cara? Tudo bom, Henrique? Esta é uma pergunta bem válida: vale mais a pena aprender logo de cara duas linguagens ao mesmo tempo ou me aprofundar em apenas uma e só depois começar uma segunda? Um primeiro ponto
Continuar lendo…  

SQL engolindo valores? 1 boa prática que resolve o problema

Busquei os livros e a quantidade de vendas, mas meu novo livro de introdução a computação não apareceu: Meus livros (tabela da esquerda) são usados com um join com suas vendas (tabela da direita). O join padrão só traz linhas quando existem valores equivalentes nas duas tabelas… se o livro é novo e não possui
Continuar lendo…  

2 passos para o e-mail marketing não ser marcado como spam

Muitas vezes quero me comunicar com os clientes ou estudantes de tecnologia do Brasil e, para isso, uso o e-mail, claro. O Mailchimp é uma das ferramentas que permite o envio de e-mails para um grupo grande, mas um dos problemas é que à medida que o número de pessoas que querem nos escutar aumenta, maior a
Continuar lendo…  

Quando 1 não é 1 no SQL?

De repente deparo com a query sendo rodada no meu código de programação, quando tento buscar um livro pelo nome e ano de lançamento: Que porcaria é essa? 1=1? Claro que 1=1, podemos tirar esse cara daí por favor? Claro! Ele é totalmente desnecessário em nosso SQL, mas se olharmos o código que gerou essa
Continuar lendo…  

SQL having e video games

Tenho um banco de dados com informações sobre vendas de jogos. Gostaria de saber como estão as vendas por produtora, então agrupo como de costume: Mas repara que tem uma dezena de resultados “menores” que não estou tão interessado. Só queremos quem vendeu mais de 500? O banco de dados não aceita resultados de funções
Continuar lendo…  

Coalesce: colocando valor padrão no resultado da query

Já sabemos que quando se trata de SQL, nulo é nulo e vazio é vazio. Nosso sistema permite o campo nulo, então temos alguns nulos no banco: Agora, queria trazer também a empresa(que é um campo opcional). Mas se ela fosse null, gostaria que trouxesse algo mais significativo, como “Não informada”. O que quero então
Continuar lendo…  

SQL pirando ao somar Doubles

Do nada o meu produto que custava R$ 30,40 agora parece que custa R$ 30,399999. Pior ainda, a soma das notas fiscais não bate com a soma dos produtos! Olha meu SQL piradão: Que doideira é essa? Até eu não erro essa conta! Mas eu preciso armazenar os números direito e o tipo double é
Continuar lendo…  

3 práticas de como aprendi muito

Estudando! Rá! Estudei de todas as maneiras. Por exemplo, boas práticas de SQL todo dia estudando um minuto por dia. Ou dicas de Javascript da mesma maneira. Mas bom, no dia a dia tenho 3 práticas que me ajudam muito: 1. Estudar um pouco todos os dias é cientificamente comprovado como eficaz. Faço isso todos
Continuar lendo…  

2 queries e uma conta final em um único SQL

Quantos usuários do Alura já compraram livros na Casa do Código e quantos não? Fácil, executa duas queries, cria uma stored procedure (aiiiiiii meu coração), devolve um divido pelo outro: E uma stored equivalente a: Como diz minha sobrinha de 2 anos: -Uxi! E sai correndo, fugindo de medo. Poderia agrupar, e fazer a divisão:
Continuar lendo…  

2 SQLs em 1. Metade do esforço, o dobro de resultado.

Precisa fazer um insert rápido pra testar algo? Maravilha. Mas e se forem dois clientes? Dois inserts? Tão claro quanto, mas mais bonito: Rápido e eficaz. Sobrou até tempo para você se inscrever na lista de boas práticas avançadas de Javascript! Já conhece nossa trilha de Banco de Dados?
Continuar lendo…  

Em SQL nulo é nulo, vazio é vazio

Como trazer quem não preencheu o campo cargo mesmo? Para de brincadeira, sei que tenho mais de 1000 alunos que ainda não preencheram este campo, cade eles? O que acontece que alguns alunos estão em branco, outros estão nulos? Muito cuidado quando criar suas tabelas. Em geral fazemos como com qualquer linguagem de programação: definimos
Continuar lendo…  

O que significa ser um desenvolvedor sênior?

Recebi uma dúvida do nosso aluno Luiz, sobre o que é ser um desenvolvedor sênior. Afinal, o que significa ser um desenvolvedor sênior? Ou então plenior ou júnior? Não tem ideia de como classificar cada uma dessas categorias de desenvolvedores? Aparentemente é algo bem abstrato e difícil de classificar, certo? Aproveitando a dúvida do nosso
Continuar lendo…  

Economizando 198 megas com um único SELECT

Quero o nome, o preço e a categoria de um produto: Executo a query e por muitas semanas ela funciona lindamente em produção. Até que um dia o site começa a ficar lerdo… lerdo… lerdo… Mas local, funciona que é uma beleza. Mas calma lá, eu disse que queria nome, preço e categoria, e eu
Continuar lendo…  

Produtividade: Responder email, fazer reunião ou trabalhar?

Na empresa existem três coisas que posso fazer: responder emails, fazer reunião ou trabalhar. E assim segue a piada… Claro que, na verdade, responder um email é uma pequena parte da execução de uma tarefa. Assim como adoro reuniões que são na verdade um trabalho em par ou uma revisão de algum conteúdo que foi
Continuar lendo…  

Como entrar no mercado de trabalho de programação?

Conversando com os alunos que mais estudam na plataforma, nosso aluno Henrique Lopes me enviou três perguntas sobre a carreira de um desenvolvedor que está começando. Considerando as três perguntas, resolvi fazer um vídeo respondendo todas as dúvidas com a minha experiência como programador. Curioso para saber quais foram as dicas? Não perca tempo! Veja
Continuar lendo…  

Crescendo com o Alura: de Ragnarok a médico programador com Romário Torres

O Romário é um daqueles alunos que está sempre lá, tem ritmo. Pode passar uma semana afastado pois teve um pepino ou outro…mas ele volta, continua e retoma o ritmo. Eu também sou assim, todos somos. Por todo seu esforço junto a plataforma ele foi escolhido para ser moderador no Alura e compartilha conosco um
Continuar lendo…  

Destaques de 2015: escolha do aluno

De tempos em tempos surgem novas maneiras de como pegarmos feedback e permitirmos que os alunos contribuam com o crescimento da plataforma, do conteúdo e da comunidade. Recentemente lançamos uma funcionalidade de sugestão de correção de textos, já temos a de sugestão de cursos, e no fim do ano passado resolvemos pesquisar a escolha dos
Continuar lendo…  

Potencializando meus estudos e práticas de SEO

Continuando o bate-papo com a especialista e analista SEO Paula Nakayama, corremos atrás agora de uma outra fase na vida de um analista SEO: já aprendi alguma coisas, já estou praticando a análise de SEO, talvez já tenha feito um curso ou outro…e agora? Quais práticas podem fazer uma grande diferença na minha carreira? Agora
Continuar lendo…  

Como ganhar experiência enquanto estudo?

A pergunta do aluno Henrique Lopes é útil para todos nós que queremos ganhar experiência ao mesmo tempo que estudamos: Adorei a pergunta, Henrique! Nós temos a impressão de que estudar não é ganhar experiência, não é praticar. Isso depende de sua fonte de estudo. O que tentamos fazer aqui no Alura é que em
Continuar lendo…  

Dicas de SEO que eu devia ter escutado no início de minha carreira

Tive a chance de conversar com a Paula Nakayama, Analista de SEO e instrutora do curso de acompanhamento de métricas em SEO do Alura. Ela nos deu algumas dicas que fazem toda a diferença para quem está começando e quer seguir carreira como analista SEO. Quais dicas você tem para quem começa agora e quer se especializar como analista SEO?
Continuar lendo…  

A carreira de programador: qual curso fazer primeiro?

Uma das perguntas que mais gosto de responder é para ajudar alguém a encontrar um primeiro caminho na carreira de desenvolvimento de software. Gosto de programar, começei aos 9, e sempre pude ter meu irmão, o Paulo, fundador da Caelum e do GUJ, como guia. Mas e quem não teve essa sorte? Tento repassar um
Continuar lendo…  

O dia a dia de um profissional que aprende: o calendário de estudo

Esses dias têm sido corridos demais… já passou por isso? Sensação de que faltou tempo para estudar o que eu queria, e para praticar o que eu precisava. Às vezes tenho a ilusão de que é um dia da minha vida que fez a diferença na minha carreira. Que um dia bem estudado vai permitir
Continuar lendo…  

Refatoração em Java: early return na prática

Em Java, quanto mais simples, melhor… Quero calcular o imposto de um investimento. A regra é simples: Se o saldo for maior que mil reais, pagamos 10 porcento de taxa. Se o saldo for maior que 500 até exatos 1000, o imposto é 5%. Caso o saldo seja menor ou igual a 500, o imposto
Continuar lendo…  

select count(*), count(1) e count(nome): a batalha dos counts de SQL

Quantos produtos tem minha empresa mesmo? Mas… Como assim? SQL pirou? De novo? Tã dã!!! O select count verifica o número de linhas não nulas dentro do count que você quer fazer! Se tinha nome nulo, não contou! Resultado? Zoou. Muito cuidado com seus counts. Então o que devo contar? Se você quer contar valores
Continuar lendo…  

Certificação Java: vale a pena estudar?

Estudar sempre vale a pena. Podem tirar meus bens, mas o que eu aprendi, ninguém me tira. A outra pergunta importante é: uma certificação Java é valiosa pelo certificado ou pelo estudo? Como co-autor do curso de Certificação Java 7 e 8 pela Alura essa é a pergunta que vale ouro – ou pelo menos
Continuar lendo…