"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 · 2 anos atrás
"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ário · kht · 2 anos atrás
"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ário · kht · 2 anos atrás
"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ário · kht · 2 anos atrás
"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 · 1 comentário · kht · 2 anos atrás
"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 · 2 anos atrás
"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 · 2 anos atrás
"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ário · kht · 2 anos atrás
"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ário · kht · 2 anos atrás
"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ário · kht · 2 anos atrás
"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ário · kht · 2 anos atrás
"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ário · kht · 2 anos atrás
"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ário · kht · 2 anos atrás
"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ário · kht · 2 anos atrás
"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ário · kht · 2 anos atrás
"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 · 2 anos atrás
"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ário · kht · 2 anos atrás
"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ário · kht · 2 anos atrás
"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ário · kht · 2 anos atrás
"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ário · kht · 2 anos atrás
"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ário · kht · 2 anos atrás
"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..."9 tabcoins · 0 comentário · kht · 2 anos atrás
"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ário · kht · 2 anos atrás
"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 "..."4 tabcoins · 1 comentário · kht · 2 anos atrás
"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ário · kht · 2 anos atrás
"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 · 2 anos atrás
"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 · 2 anos atrás
"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ário · kht · 2 anos atrás
"Complementando, tem alguns detalhes que mudam conforme a linguagem. Por exemplo, em Java e C#, os operadores lógicos só aceitam operandos booleanos. Já em outras linguagens, como Python, PHP e JavaScript, eles aceitam operandos de qualquer tipo. Isso p..."4 tabcoins · 1 comentário · kht · 2 anos atrás
"Para modificar o conteudo do ultimo commit, adicionando novo conteudo, mas sem ter que criar um novo commit: git commit --amend --no-edit Só um detalhe importante: git commit --amend sempre cria um novo commit (ok, quase sempre, mais detalhes abaixo)...."2 tabcoins · 1 comentário · kht · 2 anos atrás