"Legal, eu também faço esse tipo de coisa, seja criando aliases pra coisas mais simples (por exemplo, definir git s como um alias para git status, porque sou preguiçoso nesse nível) ou bash scripts para coisas mais complexas (como é o seu caso). Mas só..."5 tabcoins · 1 comentário · kht · 16 dias atrás
"Sobre o diretório pycache, vale lembrar que ele só guarda os arquivos de módulos que são importados. Ou seja, suponha que eu rodo python meu_script.py e dentro dele tem um import meu_modulo. Então no diretório pycache será gerado o arquivo corresponden..."9 tabcoins · 0 comentário · kht · 23 dias atrás
"Complementando, pra quem quiser se aprofundar no funcionamento do git rebase, eu recomendo este site. É longo e no começo parece que não tem nada a ver com rebase, mas eu sugiro que leia com atenção até o final porque vale muito a pena. Basicamente, é..."4 tabcoins · 1 comentário · kht · 29 dias atrás
"Apenas complementando sobre HEAD^ e HEAD. É verdade que HEAD^^ é equivalente a HEAD2, mas na verdade existe uma diferença mais fundamental sobre o funcionamento deles. Para explicar a diferença, temos que lembrar que um commit pode ter mais de um pai,..."4 tabcoins · 1 comentário · kht · 1 mês atrás
"Complementando, já escrevi um post mais detalhado sobre o assunto: O que é o HEAD do Git? E aproveitando, seguem outros posts que escrevi sobre o Git (e que de certa forma complementam o primeiro, já que te dão uma visão mais clara e ampla sobre como f..."6 tabcoins · 0 comentário · kht · 1 mês atrás
"conversando com alguns colegas descobri que essa recomendação é mais pra projetos grandes, com times separados, e pra criar um micro-SaaS próprio é ideal manter tudo em um repositório só (separando em duas pastas "frontend" e "backend") Eu não tomaria..."5 tabcoins · 0 comentário · kht · 1 mês atrás
"Chegando um pouco atrasado, mas enfim... Pra que complicar? Sério que nenhuma IA te mostrou o mais óbvio e simples? Segue um exemplo em MySQL: CREATE TABLE TEST ( id INT NOT NULL PRIMARY KEY, value VARCHAR(10), created_at TIMESTAMP NOT NULL DEFAULT CUR..."9 tabcoins · 2 comentários · kht · 2 meses atrás
"Era o que ia falar. Criar o set faz sentido se vc vai fazer muitas buscas e/ou tiver muitos elementos, pois aí o custo de criá-lo se paga. Mas se é só para uma ou poucas buscas (ou listas com poucos elementos), pode até piorar. Ou no melhor caso, tanto..."3 tabcoins · 1 comentário · kht · 2 meses atrás
"antes do PHP o python já fazia isso Se considerarmos que o PHP (que foi criado pelo menos 10 anos antes do Django) nasceu com o propósito de gerar HTML dinâmico server side, daria até pra dizer que ele é um framework mais antigo. É, muita gente não vê..."3 tabcoins · 1 comentário · kht · 3 meses atrás
"Vc tem razão, não tem nada de revolucionário. É apenas mais um dos milhares de casos que acontecem na nossa área, de dar nomes novos para coisas velhas, e geralmente com algum discurso bonito pra parecer que é algo inovador e "disruptivo". Sobre isso,..."6 tabcoins · 2 comentários · kht · 3 meses atrás
"Só pra complementar (e também pra não repetir o que já foi dito), segue abaixo algumas discussões interessantes que já tivemos sobre o assunto: O que vocês acham do mundo do php? (não é pergunta repetitiva e sim um debate) Ainda vale a pena PHP em 2023..."6 tabcoins · 1 comentário · kht · 3 meses atrás
"Só um detalhe, o artigo trata map, filter e similares como equivalentes ao loop, mas não é bem assim. map percorre o array, é verdade, mas ele executa uma ação com cada elemento e retorna outro array com os resultados. Então se vc não precisa desse out..."11 tabcoins · 1 comentário · kht · 3 meses atrás
"Tem que ver exatamente de quais críticas ou elogios vc está falando. Mas enfim... Basicamente, um Design Pattern é uma descrição de uma solução reusável para um problema conhecido ("se vc tem uma situação XYZ com tais características, uma possível solu..."5 tabcoins · 2 comentários · kht · 3 meses atrás
"Você já tem uma opinião formada sobre isto? Acho que o maior benefício deste livro é te ajudar a desenvolver certas caraterísticas fundamentais na nossa área, como o senso crítico e pensar/analisar antes de sair fazendo (inclusive isso é citado no iníc..."2 tabcoins · 0 comentário · kht · 3 meses atrás
"O que eu mais gosto nesse livro é o fato dele ser atemporal. Ele não foca em código, linguagem ou framework específico (pois aí teria o risco de ficar datado), em vez disso prefere dar dicas mais gerais e fundamentais que continuam válidas até hoje. At..."9 tabcoins · 2 comentários · kht · 3 meses atrás
"Perfeito! Resume tudo que penso de forma didática e precisa. Eu também estava lá usando PHP 4 no início do milênio e acompanhei todo esse histórico que vc mencionou. E uma coisa que notei nesses anos todos é que nossa área sempre foi cíclica: as modas..."2 tabcoins · 1 comentário · kht · 3 meses atrás
"Muito bom! Mas vale lembrar que, dependendo do caso, usar um quantificador lazy não garante que vc está livre do problema. Segue um exemplo retirado deste artigo: Suponha que tem um arquivo CSV, e quero fazer uma regex que pegue o décimo segundo campo,..."6 tabcoins · 1 comentário · kht · 4 meses atrás
"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 tabcoin · 1 comentário · kht · 4 meses atrás
"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ário · kht · 4 meses atrás
"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 · 4 meses 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 · 4 meses 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 · 4 meses 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 · 4 meses 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 · 4 meses 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 · 4 meses 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 · 4 meses 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 · 4 meses 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 · 5 meses 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 · 5 meses 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 · 5 meses atrás