"com certeza deve haver um bom motivo para não fazerem isso. Seja financeiro ou de tempo. Geralmente é um pouco dos dois (afinal, "tempo é dinheiro" não é um clichê à toa). Um cenário bem comum: o sistema atual está em constante uso e evolução, com nova..."1 tabcoin · 0 comentário · kht · 1 ano atrás
"Um que não está na lista e eu gosto muito é o The Pragmatic Programmer, que apesar de "velho" (a primeira edição é de 1999, o que na nossa área é considerado "pré-histórico"), ainda é bem atual, pois não foca em nenhuma tecnologia específica. Em vez di..."7 tabcoins · 1 comentário · kht · 1 ano atrás
"Acho que essa decisão deveria ser tomada de acordo com o contexto e necessidades de cada projeto, e não por preferência pessoal. Por exemplo, estou em um projeto totalmente em português, fazendo algo que só vai ser usado no Brasil, e unicamente por pes..."3 tabcoins · 0 comentário · kht · 1 ano atrás
"Complementando, já teve outras discussões sobre isso: https://www.tabnews.com.br/G4lile00/opniao-o-stack-overflow-e-toxico-para-programadores-novatos https://www.tabnews.com.br/boekdev/motivo-de-muitos-desistirem-de-usar-o-stack-overflow https://www.ta..."4 tabcoins · 0 comentário · kht · 1 ano atrás
"O post ficou confuso porque está comparando laranjas com automóveis, não faz o menor sentido. React é uma biblioteca JavaScript. No site oficial diz que é "The library for web and native user interfaces" (biblioteca para web e interfaces nativas). VSCo..."1 tabcoin · 0 comentário · kht · 1 ano atrás
"10 pessoas ao mesmo tempo fazem um cadastro De forma bem resumida, não será ao mesmo tempo. Mesmo que os requests cheguem juntos, será inserido um de cada vez. Mas hoje em dia os computadores estão tão rápidos que dá a impressão de que foram todos ao m..."2 tabcoins · 1 comentário · kht · 1 ano atrás
"Só não acho que o único tipo de conteúdo válido seja o conteúdo que ensina, de forma direta Acho que me expressei mal nesse ponto. Eu quis dizer que conteúdo que ensina errado é ruim e prejudicial, e portanto - na minha opinião - sem valor. Os demais e..."1 tabcoin · 1 comentário · kht · 1 ano atrás
"Entendo sua frustração com o feed, inclusive já existem issues que propõem algo parecido com a sua sugestão: em uma busca rápida, encontrei essa e essa. Obs: o trecho abaixo refere-se ao conteúdo do post antes de ser editado: ele basicamente tinha uma..."5 tabcoins · 1 comentário · kht · 1 ano atrás
"De fato, uma das grandes vantagens da Internet é a facilidade de compartilhar conhecimento e experiências. Foi assim que aprendi muita coisa, e tento retribuir de alguma forma participando de algumas comunidades online. Mas o grande problema da Interne..."4 tabcoins · 4 comentários · kht · 1 ano atrás
"Curioso ter deixado de fora dois casos citados em uma famosa frase: There are only two hard things in Computer Science: cache invalidation and naming things. -- Phil Karlton Em tradução livre: "Existem apenas duas coisas difíceis em Ciência da Computaç..."5 tabcoins · 0 comentário · kht · 1 ano atrás
"Eu acho matemática importante sim, pelo menos a parte de raciocínio lógico e capacidade de abstração, que são habilidades fundamentais para se programar bem. Na verdade programação tem uma relação muito profunda com matemática. Eu já falei sobre o assu..."3 tabcoins · 0 comentário · kht · 1 ano atrás
"Acho que vale a pena, mas o ganho será indireto. Explico: Estudar Lisp na faculdade me fez finalmente entender de verdade algumas coisas que eu só achava que entendia. Uma é programação funcional (e sua base teórica, o lambda calculus, que por sua vez..."4 tabcoins · 1 comentário · kht · 1 ano atrás
"No RubyDoc tem uma seção com vários tutoriais, pode ser um bom ponto de partida. No site oficial da linguagem também tem material introdutório."1 tabcoin · 1 comentário · kht · 1 ano atrás
"Eu já disse minha opinião a respeito em outro fórum. Segue o trecho: Eu vejo essas ferramentas NoCode/LowCode mais ou menos como uma comida de micro-ondas. Já vem tudo praticamente feito, é só esquentar e pronto, mas não é a melhor comida que existe. O..."5 tabcoins · 0 comentário · kht · 1 ano atrás
"Talvez para aplicações novas, algumas dessas linguagens atraiam nichos específicos. Mas temos que lembrar que existe um enorme legado em C e C++, que não pode ser ignorado. Por exemplo, C é usada atualmente para fazer programas extremamente complexos c..."5 tabcoins · 0 comentário · kht · 1 ano atrás
"Complementando, tem um caso em que o uso de find pode ser ambíguo. Como ele retorna undefined caso não seja encontrado nenhum elemento, o que acontece se o array contém undefined? Exemplo: var array = [1, 2, undefined]; var result = array.find(n => isN..."2 tabcoins · 1 comentário · kht · 1 ano atrás
"Se eu entendi direito, dá para fazer de forma mais simples: String str = "TANTOFAZOTEXTO"; int quebraLinhas = 3; // dividir a string em 3 partes iguais int qtdChar = str.length() / quebraLinhas; // tamanho de cada parte String[] partes = new String[que..."1 tabcoin · 1 comentário · kht · 1 ano atrás
"Dentro do if o objeto só existe lá, correto? Se o problema é esse, basta declarar o array fora do if, não precisa criar outro. Se for para quebrar a string em partes iguais, basta pegar substrings de tamanho fixo, em vez de pegar um caractere de cada v..."1 tabcoin · 3 comentários · kht · 1 ano atrás
"achando que o problema era só referente a expressão "teste[i].length() == 0", mas não era. Sempre que ocorre uma exceção, a mensagem de erro mostra a classe e a linha em que ocorreu. Sempre leia as mensagens e veja o que tem na linha indicada, é por al..."1 tabcoin · 5 comentários · kht · 1 ano atrás
"Uma outra característica que marca o JavaScript é por ser uma linguagem interpretada, o que significa que o código é executado diretamente pelo navegador linha por linha, sem a necessidade de um processo de compilação. É um pouco mais complicado que is..."5 tabcoins · 2 comentários · kht · 1 ano atrás
"O ChatGPT faz com que eu me sinta um grande impostor incompetente. Vejo muita gente dizendo que ele ajuda muito, é incrível e sempre resolve os problemas com soluções maravilhosas. Eu simplesmente não consigo esses mesmos resultados. Posso dar o prompt..."5 tabcoins · 0 comentário · kht · 1 ano atrás
"Bom, existe muita intersecção entre os termos, mas no primeiro link que coloquei tem o seguinte: "API não é o serviço fornecido, é o método de acesso". Esses serviços online que vc faz uma chamada HTTP pra pegar os dados, eu entendo que são API's cuja..."2 tabcoins · 1 comentário · kht · 1 ano atrás
"Sem mais detalhes, o máximo que dá pra fazer é especular. Bom, meu palpite: pode ter acontecido algo relacionado ao fato do spread criar uma shallow copy (cópia "rasa"). Ou seja, apesar de criar outro objeto, as propriedades dele continuam apontando pa..."1 tabcoin · 0 comentário · kht · 1 ano atrás
"Eu já disse algo sobre isso aqui. E se fosse resumir o ponto mais importante que tem lá, seria: 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 mais amplo que isso (e a id..."2 tabcoins · 3 comentários · kht · 1 ano atrás
"Definir propriedades no HTML Uma alternativa - como já sugerido - é inverter o controle. Em vez de deixar as regras no JavaScript, cada botão poderia indicar como ele deve ser. Para isso usamos o dataset de cada elemento. Por exemplo, o HTML ficaria as..."1 tabcoin · 0 comentário · kht · 1 ano atrás
"Acho que fica menos legível, e continua com a desvantagem de gerar o dicionário toda hora. Se quer mesmo usar o dicionário, poderia criar apenas uma vez. E aí pode até usar a opção que eu fiz, de passá-lo como parâmetro da função. Ou a função sempre us..."3 tabcoins · 0 comentário · kht · 1 ano atrás
"Mas nesse caso vc só trocou if/elif por case (um pra um, praticamente, ou seja, no fim não "enxugou" nada, só trocou a keyword). Se sua preocupação é somente ter menos linhas (não deveria ser, mas enfim), então isso é trocar 6 por meia dúzia (para esse..."3 tabcoins · 0 comentário · kht · 1 ano atrás
"Antes, umas correções: na primeira função o return value está dentro do else. Ou seja, em vez disso: else: value == None return value # return está dentro do else Deveria ser isso: else: value = None return value # agora está fora do else Ah, e reparou..."15 tabcoins · 4 comentários · kht · 1 ano atrás
"Muito bom, principalmente por reforçar que Base64 não é criptografia (já vi muita gente que acha que é). Complementando, um dos primeiros usos da Base64 foi em sistemas de email, mais precisamente no protocolo PEM (Privacy-enhanced Eletronic Mail). Iss..."10 tabcoins · 0 comentário · kht · 1 ano atrás
"Sim, concordo que ainda falta implementar muita coisa, como por exemplo identificar qualquer edição, não só as feitas por moderadores. Não tem como saber nem sequer se um post foi editado pelo próprio autor, e muito menos o que foi mudado (um histórico..."3 tabcoins · 0 comentário · kht · 1 ano atrás