-
Drew DeVault
04/06/2017 21:00
O post discute uma abordagem alternativa às generics em C, com a utilização de múltiplas definições de structs para lidar com tipos genéricos. É interessante, mas o autor ressalta que essa estratégia pode ser problemática, especialmente com LTO, como aconteceu no caso do wlroots. No fim das contas, é uma solução criativa, mas que pode deixar alguns devs batendo a cabeça na parede. Sempre bom lembrar que a implementação pode variar conforme a necessidade de cada backend.
-
Drew DeVault
05/05/2017 00:00
Se você já se pegou insatisfeito com as distros Linux disponíveis, a saga desse desenvolvedor vai ressoar com você. Ele decidiu que, em vez de se contentar com o "bloat" e as limitações, o melhor seria construir sua própria distro, chamada agunix. O processo parece mais complexo que configurar uma waterfall em um projeto Agile, mas ele tem uma visão clara: "Um sistema Linux é qualquer coisa que inicializa a partir do kernel Linux". Fica a dica para quem está ressentido: é uma jornada gratificante – se você não se perder nas dependências primeiro.
-
Drew DeVault
04/05/2017 21:00
A ideia de criar sua própria distro Linux, como o agunix, é uma jornada interessante e cheia de frustrações. Como o autor menciona, "nenhuma delas alinhou completamente com meus desejos", é um reflexo do que muitos devs sentem ao explorar as distros populares. O processo de bootstrapping é um desafio que separa os meros usuários dos verdadeiros guerreiros do código. É ótimo ver iniciativas que buscam atender necessidades específicas da comunidade sem o peso excessivo das escolhas convencionais.
-
Drew DeVault
28/04/2017 21:00
O desenvolvimento do Sway está a todo vapor, com novidades que deixam até o Darth Vader impressionado. “Sway 0.12 adicionou suporte a redshift e layouts de partição de espaço binário”, o que parece mais um truque de mágica para devs do que uma atualização. A compatibilidade com i3 e a adição de suporte para drivers Nvidia na versão 0.13.0 são boas notícias para quem está na linha de frente do desenvolvimento com Wayland. O novo programa de recompensas também é uma jogada interessante, arrecadando $1,200 para o desenvolvimento. No fim, parece que Sway está em uma trajetória de crescimento saudável, moldando seu espaço na galáxia dos compositores.
-
Drew DeVault
13/04/2017 00:00
CVE-2016-10229 é uma daquelas vulnerabilidades que fazem você olhar para a tela e pensar: "por que eu não verifiquei isso antes?" O uso do MSG_PEEK em chamadas recv permite que o tráfego UDP execute código arbitrário, o que não é exatamente algo que você quer no seu servidor. Muitos estão subestimando isso, mas o fato de que softwares como nginx e curl podem ser afetados merece uma atenção especial. É hora de dar aquele update, porque, como sempre, ‘atualizações são o novo preto’ no mundo da segurança.
-
Drew DeVault
12/04/2017 21:00
CVE-2016-10229 é o tipo de vulnerabilidade que faz você reconsiderar suas escolhas de programação. O MSG_PEEK, embora muitos considerem uma feature obscura, é usado por softwares bem populares como nginx e curl. Isso levanta uma bandeira vermelha para quem acha que essa vulnerabilidade pode passar batido. Se você ainda não atualizou seu kernel, é melhor fazer isso agora. Como dizem por aí, é melhor prevenir do que remediar, especialmente quando a segurança está em jogo.
-
Phil Oppermann (OS in Rust)
25/03/2017 21:00
Neste post, o autor mergulha no maravilhoso mundo das exceções da CPU e explica como capturá-las, mesmo que isso possa levar seu sistema a um estado de 'bootloop' se tudo der errado. Olha, se você achava que sua última reunião era caótica, tente gerenciar exceções de primeira mão: 'Triple Fault' soa como o resultado de um bug que você não consegue nem ver. E a criação da 'Interrupt Descriptor Table' seria como fazer o mapeamento da sua rede Wi-Fi: crucial, mas tem uns detalhes que se não seguir à risca, pode dar erro. No fim, é uma introdução bem interessante para quem quer ganhar um crash course em sistemas operacionais tendo uma visão prática.
-
Andrew Kelley (criador do Zig)
16/02/2017 23:43
O uso da linguagem Zig para o desenvolvimento de sistemas operacionais e embedded realmente é uma jogada inteligente. Criar um jogo arcade para o Raspberry Pi 3 enquanto atualiza o compilador é quase como um level up na programação. Sim, os campos de bits em C têm uma má fama por conta de desempenho e comportamento indefinido, mas Zig promete melhorar isso, focando em carregar apenas os bytes necessários. Vamos ver se a promessa se torna realidade, ou se vai acabar como aquelas promessas de 'mudar de vida' na virada do ano.
-
Drew DeVault
29/01/2017 23:00
C é como aquele carro clássico: tem suas marcas, mas você ainda quer dirigir. Embora linguagens como Rust e Go estejam fazendo melhorias, não vejo C sendo aposentado tão cedo, principalmente porque ele traz simplicidade e previsibilidade. O autor observa que, "C prefere ser conservador com novos recursos", o que na prática significa menos surpresas para o dev. No fim das contas, C continua sendo uma escolha sólida para quem valoriza controle, estabilidade e uma relação quase íntima com o hardware.
-
Phil Oppermann (OS in Rust)
01/01/2017 23:00
Esse post é um verdadeiro tratado sobre o conceito de falhas duplas e como lidar com elas. Não é todo dia que você vê alguém se aprofundar na implementação de uma Interrupt Stack Table para evitar falhas tripas – uma situação mais drástica do que um loop infinito em um programa. Como mencionado, "é realmente importante fornecer um manipulador de falha dupla", e isso não pode ser subestimado. Para quem está mergulhando no lado mais baixo nível da programação, é uma leitura imprescindível.
-
Drew DeVault
26/12/2016 23:00
O Sway 0.11 chegou com um presente de Natal para os usuários de Wayland: agora é possível configurar políticas de segurança. Isso promete um desktop Wayland mais seguro, o que é essencial em tempos de hackers velhos conhecidos. Além disso, a nova iniciativa de recompensa permite que devs sejam pagos por implementar recursos que realmente importam para a comunidade. Uma jogada inteligente, como um commit bem feito.
-
Drew DeVault
06/12/2016 01:00
Esse post é como um mapa do tesouro para quem quer entender redes, mesmo sem ser um engenheiro da área. O autor menciona o modelo OSI e faz uma brincadeira com a camada 7 que, claro, é onde Minecraft mora - quem diria que blocos digitais teriam tanto a ver com segurança de redes? A explicação sobre como gerenciar interfaces no Linux com o comando ‘ip’ é um bom lembrete de que, no fundo, somos todos responsáveis pela configuração da nossa própria rede, mesmo que isso signifique lidar com variáveis mais confusas que o código do seu projeto. Em suma, uma leitura leve e educativa, perfeita para dar aquele upgrade no conhecimento.
-
Drew DeVault
05/12/2016 23:00
O autor começa com uma ressalva bem honesta: não é um engenheiro de redes. Mas isso não impede que ele faça um passeio pelas sete camadas do modelo OSI, de forma acessível. Ao mencionar que a camada 7 é onde 'Minecraft vive', ele consegue uma analogia que junta tech com diversão. E quem não gostaria de entender melhor essas conversas técnicas que parecem um feitiço de nível máximo?
-
Ruslan Spivak
Ruslan Spivak
01/12/2016 20:20
Enquanto a frase do provérbio chinês parece ter sido escrita para desenvolvedores lidando com bugs, hoje a conversa é sobre parsing de declarações de procedimentos em Pascal. Entender esse conceito é como aprender a montar o LEGO do seu código: cada peça precisa se encaixar perfeitamente. Vamos com calma, porque cada passo conta e, considerando a complexidade de algumas linguagens, estar em movimento é mais importante do que a velocidade em si.
-
Drew DeVault
24/11/2016 01:00
Olha, Electron é como um web browser que ganhou alguns músculos e decidiu virar desktop app. O problema é que esse ‘musculoso’ acabou sendo um pacote de Chromium que traz mais peso do que contribuição. Como o próprio texto diz, se você precisa de um gerenciador de clipboard que usa essa tecnologia, talvez seja hora de repensar suas escolhas. Para um projeto que busca eficiência, escolher Electron é como fazer um upgrade no seu PC apenas para instalar Windows 95 novamente.
-
Drew DeVault
04/11/2016 23:00
Parece que o autor está fazendo uma limpeza no seu workspace e na sua fé política. A frustração com a corrupção e as opções limitadas nas eleições é tão comum que poderia ser um roteiro de uma série de comédia. Ele menciona temas como "voto fraudulento" e "lobbying corrupto", que só faltou uma trilha sonora de fundo de filme de suspense. No fim das contas, isso ressoa bastante com a nossa realidade, onde muitos devs também estão considerando oportunidades fora do Brasil por causa do cenário político e econômico.
-
Dan Luu
22/10/2016 23:00
Os comentários do HN realmente têm suas falhas, e eu diria que, na maioria das vezes, você está mais seguro caminhando na Matrix do que lendo as respostas. Entre 'os comentários são terríveis' e 'mas tem algumas pérolas', estamos num dilema digno de uma equação de programação. A ironia é que, apesar do mar de ruído, quando alguém realmente informado aparece, é como encontrar um debugger que realmente funciona na primeira tentativa. A ideia de que podemos ensinar sem ser sarcástico parece loucura para muitos por lá, mas quem nunca precisava de um manual de boas maneiras em formato de código na vida, não é mesmo?
-
Dan Luu
03/10/2016 05:14
É curioso ver como o pessoal acha que qualquer produto de software poderia ser construído em um piscar de olhos, né? O texto destaca bem a diferença entre a visão de fora e a complexidade interna das grandes empresas, como a FooCorp. Criar um competidor do Google, por exemplo, é mais complicado do que muitos imaginam, especialmente quando se fala de escalabilidade e tempo de resposta. Afinal, tentar indexar trilhões de páginas não é o mesmo que rodar um microserviço em uma tarde de sábado.
-
Phil Oppermann (OS in Rust)
20/09/2016 21:00
O post traz uma abordagem interessante sobre como lidar com exceções, mais especificamente com a exceção de breakpoint, que é uma armadilha digna de um debug-session. A parte sobre a instrução iretq e os registradores multimídia é um prato cheio para quem curte detalhes low-level, lembrando que, às vezes, o maior inimigo do desenvolvimento é o próprio código não tratado. É sempre bom ter um 'handler' pronto para se safar dessas armadilhas antes de dar aquele 'return'.
-
Drew DeVault
17/08/2016 21:00
Com um foco em privacidade, o autor apresenta um tutorial sobre como instalar o Arch Linux com criptografia de disco completo. É uma ótima oportunidade para quem quer mergulhar no universo do Linux e, convenhamos, sentir um pouco da adrenalina de instalar um sistema como se fosse um jogo de Tetris. "Sempre cheque a versão mais recente do Guia de Instalação..." é um lembrete que vale pra vida, principalmente para os devs que adoram um bug inesperado. Um conteúdo valioso, e a promessa de um próximo vídeo sobre Ubuntu só aumenta a expectativa.