kht
- Seguem alguns comentários sobre o código: Vc usou várias vezes str(input(mensagem)). Mas veja na documentaç ão que input sempre retorna uma string, então usar str para converter esta string em uma string é redundante e portanto desnecessário. Se quer um...
13 tabcoins ·
3 comentários ·
kht ·
há 4 meses - Em geral eu não gosto de artigos do tipo "não use X" ou "sempre faça Y". Muitas vezes eles usam apenas exemplos em que o uso (ou não-uso) é a melhor solução, e raramente mencionam os casos opostos (em que "quebrar a regra" seria benéfico). Ou só mencio...
12 tabcoins ·
1 comentários ·
kht ·
há 2 meses - A ideia é boa, mas gostaria de sugerir uma melhoria. Quando fui ver as avaliações, e escolhi o estado de São Paulo, as opções que aparecem no combo de "Cidades" estão bem confusas. Parece-me que os bairros e cidades estão todos misturados neste mesmo c...
11 tabcoins ·
1 comentários ·
kht ·
há 2 meses - Muito bom! Complementando, seguem algumas discussões anteriores sobre o assunto: https://www.tabnews.com.br/kht/c0f67409-f988-41f6-90c2-b65033f629a5 https://www.tabnews.com.br/gabrielTapes/por-que-a-matematica-e-essencial-para-a-programacao https://www...
10 tabcoins ·
0 comentários ·
kht ·
há 20 dias - Gambiarra é um termo amplo, mas eu considero que é qualquer coisa que seja mal feita ou que está longe de ser a solução ideal. É uma daquelas coisas que é meio difícil explicar de forma objetiva, mas vc sabe que é quando vê. gambiarra No seu caso, eu n...
10 tabcoins ·
5 comentários ·
kht ·
há 22 dias - Falando de maneira geral, primeiro a gente tem que definir o que seria "colocar em produção". Pois no meu entendimento, este termo significa que o produto/sistema/aplicativo foi lançado e está sendo efetivamente utilizado pelos usuários/clientes. E nes...
8 tabcoins ·
1 comentários ·
kht ·
há 3 meses - Primeiramente, estou assumindo que "clean code" se refere ao famoso livro do Uncle Bob. Acho que vale lembrar que este livro é bem opinativo, além de várias coisas serem meio vagas e genéricas, e muito dependentes de contexto. Ou seja, não é pra seguir...
8 tabcoins ·
1 comentários ·
kht ·
há 3 meses - Só um adendo - e eu sei que o texto está fazendo simplificações para ficar mais didático, mas não tem jeito, eu sou chato e pedante, então vamos lá: Essa questão do array ser um ponteiro para o primeiro elemento é verdade em C. Mas em JavaScript e Pyth...
7 tabcoins ·
2 comentários ·
kht ·
há 10 dias - Qual parte exatamente vc não entendeu? while True é um loop "infinito", já que a condição para se repetir é True (ou seja, sempre é verdadeira). Dentro dele tem o input, e depois eu vejo se o que foi digitado é "y" ou "n": if answer in ('y', 'n'). Basi...
7 tabcoins ·
2 comentários ·
kht ·
há 22 dias - Depende do que vc chama de "morreu". Se for em termos de acessos, eu diria que não, pois ele ainda recebe muito tráfego. Os dados variam dependendo da fonte, mas encontrei números entre 140 milhões e 200 milhões de visitas só em setembro de 2024. Agora...
7 tabcoins ·
2 comentários ·
kht ·
há 4 meses - Pra mim também aparece com todo o texto na mesma linha, e acredito que vai acontecer o mesmo com todo mundo, por causa do HTML gerado e do CSS que o site usa. O problema Este Markdown: Área de rascunho Esta é uma postagem para fins de teste, não gerand...
6 tabcoins ·
2 comentários ·
kht ·
há 2 meses - Eu já escrevi antes sobre isso, mas acho que não custa lembrar: Um detalhe importante (principalmente para iniciantes): API não é só WEB. Sei que hoje em dia "API" acabou virando quase que um sinônimo de "URL que retorna um JSON", mas o termo é bem mai...
6 tabcoins ·
0 comentários ·
kht ·
há 3 meses - Eu fui em 2014 e achei bem legal. Pra organizar melhor, vou separar as dicas em duas partes: uma para o evento e outra para o dia livre. Evento Acho que a principal dica para esse tipo de evento é dar uma boa olhada na programação e escolher o que vc q...
6 tabcoins ·
1 comentários ·
kht ·
há 3 meses - Acredito que nenhuma dessas linguagens vai sumir tão cedo. <sarcasm>Se nem o C++ conseguiu substituir o C depois de todos esses anos...</sarcasm> Pense na base de código existente nessas linguagens. Só pra citar alguns exemplos, temos progr...
6 tabcoins ·
0 comentários ·
kht ·
há 3 meses - Só faço uma ressalva com relação ao item 6 (parsing de dados estruturados). Regex costuma ser a pior opção para esses casos, e geralmente o melhor é usar um parser específico. Em casos mais simples pode até ser tentador usar uma regex simples que "func...
6 tabcoins ·
0 comentários ·
kht ·
há 4 meses - De fato, Big-O é sobre o quão bem o desempenho escala conforme a quantidade de dados aumenta. Mas só pra ser chato, mesmo assim vc cometeu um erro/vício que muitos de nós cometemos: colocou "tempo" nas definições. Só que Big-O não é sobre tempo. Ele é...
5 tabcoins ·
1 comentários ·
kht ·
há 10 dias - O problema da parte teórica que as faculdades ensinam (ou deveriam ensinar), é que muitos dos benefícios são indiretos e só se percebem no longo prazo. Várias coisas eu só fui perceber a importância muitos anos depois. Coisas que na época eu não achava...
5 tabcoins ·
0 comentários ·
kht ·
há 12 dias - Faça o código funcionar primeiro; depois, melhore Eu iria além: não saia escrevendo código loucamente antes de pensar sobre o problema e avaliar as possíveis soluções. Essa fase de análise é importantíssima e pode evitar muito trabalho desnecessário. S...
5 tabcoins ·
0 comentários ·
kht ·
mês passado - senti uma similaridade no comportamento A similaridade é apenas na forma como vc usa o método, ou seja, chamando objeto.novoMetodo(), como se o novoMetodo fosse realmente um método de objeto. Mas por baixo dos panos, o mecanismo é completamente diferen...
5 tabcoins ·
0 comentários ·
kht ·
há 3 meses - a segunda é um algoritmo de encriptação avançada Ambos são algoritmos de encriptação. A diferença é que o AES é simétrico (a mesma chave é usada para encriptar e decriptar), enquanto o RSA é assimétrico (usa um par de chaves, sendo que uma é usada para...
5 tabcoins ·
1 comentários ·
kht ·
há 3 meses - Em vez de: def ask(question): return True if input(question) == "y" else False Poderia ser apenas: def ask(question): return input(question) == "y" Pois o resultado do operador == é True ou False, então pode retornar o valor da expressão diretamente. M...
3 tabcoins ·
2 comentários ·
kht ·
há 22 dias - Como curiosidade, Brendan Eich (o criador do JavaScript) também achava isso uma bobagem. Olha este bug reportado à Mozilla em Julho de 2000, para "remover todas as referências a JavaScript" (para evitar possíveis problemas com a marca). Alguns comentár...
3 tabcoins ·
0 comentários ·
kht ·
mês passado - Já falei um pouco sobre algo relacionado aqui - lá falava sobre o declínio e possivelmente morte do Stack Overflow. E sobre isso, vale destacar que existem dois aspectos para serem analisados. Um é que a esmagadora maioria dos acessos é - e sempre foi...
3 tabcoins ·
0 comentários ·
kht ·
mês passado - Muito bom! Grafos é uma daquelas coisas que se vc só estudar a parte teórica, vai achar que não serve pra nada, mas vai se surpreender ao ver a quantidade de aplicações práticas. Já contei aqui um caso em que precisei de grafos: Tinha um arquivo gigant...
3 tabcoins ·
1 comentários ·
kht ·
mês passado - Outra opção é usar cat -A arquivo, que mostra os caracteres invisíveis. No caso, o CR é mostrado como ^M, o TAB é ^I e o final da linha é marcado com $. Assim, vc consegue ver se tais caracteres estão presentes e se tem algo "estranho" no arquivo. Se b...
3 tabcoins ·
1 comentários ·
kht ·
há 3 meses - Vale lembrar que essas definições variam conforme a linguagem. Por exemplo, a alocação em um bloco de memória contínuo é verdade em C e C++, só para citar duas (mas também vale para Java e outras). Porém, em outras linguagens como PHP e JavaScript, o "...
3 tabcoins ·
1 comentários ·
kht ·
há 3 meses - Pra variar, a resposta é "depende". Não existe fórmula mágica, tem que ser avaliado caso a caso. Por exemplo, se for algo muito complexo, que vai demorar um tempão e ainda tem chance de não ficar bom, provavelmente é melhor usar uma lib pronta. Geralme...
2 tabcoins ·
1 comentários ·
kht ·
há 22 dias - Talvez eu seja exceção, ou "o cara estranho", mas eu prefiro que fique como está. Eu simplesmente detesto sites que abrem links em outra aba. Prefiro eu mesmo decidir se o link será aberto na mesma aba, ou em outra (ou até mesmo em uma nova janela). Po...
2 tabcoins ·
0 comentários ·
kht ·
há 28 dias - Tenho um amigo que há muito tempo deu aula em uma dessas faculdades particulares Uni-esquina - que pelo menos em São Paulo tem aos montes. Ele era tipo o seu professor: pegava pesado porque sabia que era isso que iria fazer a diferença. E claro que hav...
2 tabcoins ·
0 comentários ·
kht ·
mês passado - Sobre os comandos do Git, acho interessante acrescentar que desde 2019 existem os comandos switch e restore, cuja ideia é separar as funções do checkout: o primeiro trabalha apenas com branches, e o segundo, apenas com arquivos. Já escrevi sobre eles a...
1 tabcoins ·
1 comentários ·
kht ·
há 8 dias