1 pontos por GN⁺ 2024-06-28 | 1 comentários | Compartilhar no WhatsApp
  • Nos anos 2000, era difícil fazer o Wi-Fi funcionar corretamente no Linux logo após a instalação, e Larry Finger foi um desenvolvedor que elevou a usabilidade do Linux no desktop ao melhorar drivers sem fio
  • Finger contribuiu para pelo menos 94 versões do kernel e 1.464 commits desde o Linux kernel 2.6.16, e faleceu em 21 de junho de 2024, aos 84 anos
  • Em uma época em que a Broadcom não fornecia código para seus equipamentos, ele participou do trabalho nos drivers Broadcom BCM43XX e Realtek, analisando diretamente registradores de hardware para fazer engenharia reversa das especificações necessárias
  • Sem formação formal em ciência da computação, acumulou experiência com Fortran, PDP-11, VAX e Unix/Linux; em 2023, afirmou que o kernel Linux 6.4 incluía 172.346 linhas de seu código
  • Ele deixou conselhos como começar com pequenos patches, usar git send-email e suportar críticas, e é lembrado como alguém que orientou outros desenvolvedores para que o código open source da Broadcom entrasse no kernel

As marcas deixadas no suporte sem fio do Linux

  • Denise Finger, esposa de Larry Finger, deixou uma breve mensagem na Linux kernel mailing list informando que Finger faleceu em 21 de junho de 2024
  • Segundo a LWN.net, Finger contribuiu para pelo menos 94 releases desde o kernel 2.6.16, quando o Linux kernel começou a rastrear mudanças com git
    • O total de commits foi de 1.464
    • Finger não teve formação formal em computação e se considerava um cientista
  • É um exemplo de como, mesmo em um projeto enorme como o Linux, a contribuição constante de uma pessoa pode deixar uma marca duradoura na experiência dos usuários e no ecossistema

As dificuldades do Wi-Fi no Linux nos anos 2000

  • Na época em que Finger começou a contribuir, era pouco provável que o Wi-Fi no Linux reconhecesse, ativasse e fizesse o hardware funcionar corretamente logo após a instalação
  • Usuários com chipsets sem fio não suportados precisavam recorrer ao NDISwrapper, uma ferramenta de contorno que fazia a ponte com drivers do Windows
    • A instalação do Linux passava a depender de um método menos aberto
    • O peso de instalação e manutenção também continuava existindo
  • Finger começou a melhorar esse problema com o trabalho nos drivers Broadcom BCM43XX
  • Como a Broadcom não fornecia código para o equipamento, ele contribuiu fazendo dumps manuais e leitura de registradores de hardware para fazer engenharia reversa das especificações necessárias
  • Ele também forneceu vários drivers Realtek, e diversos comentários em blogs e fóruns ainda hoje mencionam que seus sistemas usam parte do código de Finger

De equipamentos científicos ao Unix/Linux

  • Além de centenas de commits no kernel, os vestígios de Finger na web não são muitos
  • Seu domínio pessoal tem uma página do DRAWxtl, software open source para criar figuras de estruturas cristalinas
  • Ele respondeu perguntas no Quora, e seu perfil no GitHub mostra contribuições para mais de 100 projetos em 2024
  • Na série em três partes “Linux in a Windows Workstation Environment”, publicada pela Linux Journal em 2005, Finger resumiu sua carreira
    • Começou em 1963 como programador Fortran
    • Trabalhou nos anos 1970 com PDP-11 e interfaces para equipamentos científicos
    • Trabalhou no início dos anos 1980 com VAX-11/780
    • Depois passou a trabalhar com sistemas Unix/Linux
    • Aposentou-se em 1999 da Carnegie Institution for Science, em Washington, DC
  • O mineral extremamente raro Fingerite recebeu esse nome em homenagem a Finger
  • Sua pesquisa em cristalografia o levou a uma bolsa no norte da Baviera, algo que ele mencionou em uma resposta no Quora sobre a Autobahn

Construção de uma rede em resort de RV após a aposentadoria

  • Finger escreveu na Linux Journal que, após se aposentar, tornou-se morador de RV em tempo integral, “dedicado a evitar o frio”
  • Finger e sua esposa Denise chegaram a uma comunidade de RV para maiores de 55 anos em Mesa, Arizona, e ele entrou para o clube de informática local
  • Na época, o clube tinha cada vez mais PCs Windows compartilhando uma conexão DSL, e um sistema gerenciava isso com WinGate
  • O novo proprietário do resort de RV queria aumentar o número de workstations para 22, mas o custo das licenças do WinGate era alto demais para o clube
  • Finger, dizendo “desconfiar muito de usar Windows 98 em uma função mission-critical”, construiu ele mesmo um sistema alternativo baseado em Linux
  • Depois, a rede se expandiu até o seguinte nível
    • 38 estações de usuários
    • Compartilhamentos pessoais via Samba
    • Banco de dados de membros
    • Túnel VPN
    • Várias portas RJ-45 gratuitas
    • “Acesso Wi-Fi gratuito” em todo o parque

Mentoria e conselhos para contribuir com o kernel

  • Finger é lembrado não só como um desenvolvedor que tornou o Linux acessível a mais pessoas, mas também como mentor que ajudava outros contribuidores
  • Um comentário na LWN.net afirmou que Finger orientou outras pessoas para colocar o código open source da Broadcom no kernel, e que isso foi um grande sucesso
  • Em 2023, no Quora, à pergunta “uma pessoa comum sem formação formal em ciência da computação pode contribuir de forma significativa para o Linux kernel?”, Finger respondeu: “acho que sim”
  • Ele linkou as estatísticas do Linux 6.4 kernel e indicou que seu código somava 172.346 linhas, cerca de 0,5% do total
  • Disse que nunca cursou disciplinas de ciência da computação, mas tinha experiência considerável de programação adquirida em uma época em que era necessário escrever código eficiente porque os computadores tinham desempenho muito inferior ao de hoje
  • Para quem quer começar a contribuir com o kernel, Finger recomendou:
    • Começar com patches pequenos
    • Ler profundamente as diretrizes
    • Sempre enviar patches com git send-email
    • Patches enviados por clientes de e-mail como Thunderbird podem ser rejeitados rapidamente
    • Encontrar erros de digitação e outros erros em comentários e strings também ajuda
    • Esperar críticas sobre regras e formato, e continuar tentando
  • Ele disse que o desenvolvimento de drivers do kernel é um trabalho muito gratificante e também muito frustrante, aconselhando aprender C, começar analisando drivers USB e dedicar tempo ao estudo de DMA
  • Finger afirmou que ele próprio levou cerca de 2 anos até conseguir fazer mais do que indicar a especialistas o local de uma fault no sistema, e deixou a mensagem: “não perca a esperança”

1 comentários

 
GN⁺ 2024-06-28
Comentários do Hacker News
  • É uma notícia realmente triste, tanto para o mundo quanto para mim pessoalmente. Eu deveria ter agradecido sem adiar, e agora me pego arrependido profundamente de repente. Talvez ele não soubesse, mas foi uma espécie de mentor para mim
    No começo dos anos 2010, comprei um notebook com uma placa RTL 8188 CE que funcionava pessimamente no Linux, e acabei fazendo um fork do driver dele e aplicando várias mudanças até o Wi-Fi passar a funcionar muito bem. Também usei abordagens que não poderiam entrar no upstream por causa de restrições legais e regulatórias
    Durante alguns anos, fiz rebase com frequência e revisei minhas alterações olhando o código dele, e aprendi muito nesse processo. Levei um tempo para me acostumar, mas aos poucos surgiu uma sensação de beleza e gratidão. Uma coisa era clara: essa pessoa fazia muito do trabalho de manter tudo de pé para que o conjunto não desmoronasse. Só manter o driver compilando a cada release do kernel já exigia muitas vezes refatorações nada triviais, e ele fazia isso de forma constante e competente
    Larry, vou sentir sua falta. Descanse em paz. Se você está esperando para entrar em contato com alguém, é melhor não adiar demais. O tempo passa num instante, e de repente pode ser tarde demais

    • Entendo que a maioria dos contribuidores do kernel é voluntária e pode fazer o que quiser, e que autores de drivers não integrados ao upstream precisam correr atrás do trunk. Ainda assim, isso parece um desperdício de talento humano
      Algo que funcionou uma vez não deveria quebrar nunca mais. Parece que as várias camadas de gordura acumuladas ao longo de décadas não resolvem muito esse problema e, em vez disso, acabam criando mais trabalho só para manter tudo no mesmo lugar
    • Encontrei um pequeno erro de digitação, mas o texto original já não pode mais ser editado. Eu quis dizer começo dos anos 2010, não começo dos anos 2000
    • Fiquei curioso sobre que tipo de coisa legalmente não permitida foi feita para o Wi-Fi funcionar melhor
  • Saiu um bom texto na Ars Technica. Ele fez muito para tornar o Linux Wi-Fi e o ecossistema de drivers muito melhores
    https://arstechnica.com/gadgets/2024/06/larry-finger-linux-w...
    Lembro de reclamar antigamente do ndis wrapper e do ecossistema de Wi-Fi da Broadcom, e Larry ajudou a consertar esse problema, além de orientar muita gente no processo
    A citação no texto da Ars Technica também impressiona. Em 2023, no Quora, à pergunta “alguém sem formação acadêmica formal em ciência da computação pode contribuir de forma substancial para o Linux?”, Finger respondeu: “Acho que eu consegui”, e mostrou que, nas estatísticas do kernel 6.4, seu código somava 172.346 linhas, cerca de 0,5% do total

  • Em 2005, quando eu era um universitário sem dinheiro tentando usar Linux, penso nele mais ou menos uma vez por semana por causa do suporte à placa sem fio Belkin FG…. O driver dele funcionava melhor do que o driver para Windows fornecido pela própria Belkin
    Às vezes eu me perguntava por que alguém gastaria o tempo depois do expediente para se voluntariar a trabalhar com esse tipo de hardware aparentemente banal. Será que ele não tinha família? Tinha, sim. E hoje essa família o perdeu

    • Eu pensava de forma parecida. Imaginava um funcionário fixo na faixa dos 40 anos, cansado de projetos corporativos burocráticos e com alguns filhos pequenos, mas descobri que ele morreu aos 84 anos
      Isso significa que esse trabalho com drivers foi feito depois dos 60. Nessa idade, eu já vou me dar por satisfeito se ainda lembrar do meu nome :-)
    • Acho que ele era o melhor do mundo em desenvolvimento de drivers Wi-Fi para Linux de forma ampla. É uma realização realmente valiosa. Obrigado, Larry Finger
    • Se não fosse Larry, talvez eu ainda não fosse usuário de Linux. Um verdadeiro herói desconhecido
  • Quis deixar aqui para que todos vejam as frases “A Broadcom não forneceu absolutamente nenhum código para seu equipamento” e “então Finger fez dump manual e leitura dos registradores do hardware e fez engenharia reversa das especificações necessárias”. A grandeza desse feito não deve ser subestimada
    Eu mesmo já fiz um pouco de algo parecido. Já fiz engenharia reversa de recursos de notebook, escrevi eu mesmo software livre para rodar dentro do Linux e mandei e-mails para fabricantes pedindo documentação, só para receber páginas de ajuda ao usuário. Na maioria das vezes era coisa relacionada a USB e, ainda assim, apesar de ser a interface mais bem documentada que se pode imaginar, foi difícil
    É quase impossível imaginar como ele fez engenharia reversa de Wi-Fi. Para mim, isso é uma inspiração enorme, e espero um dia chegar perto do nível dele. Muito obrigado por todo o trabalho até aqui, e descanse em paz

  • Pelo nome eu não reconheci, mas quando vi o nome de usuário lwfinger no commit do CREDITS, reconheci na hora. Acho que esse nome de usuário, e mais ainda “hadess”, vão ficar para sempre na minha memória
    Compilar o driver para a placa RTL8723BS foi a primeira vez que mexi de verdade no funcionamento interno do Linux, e no fim consegui fazer o Linux rodar quase perfeitamente num pequeno conversível Intel Baytrail bem ruim. Organizei esse processo e publiquei um tutorial de instalação do Ubuntu, e pelas 80 estrelas e a longa discussão abaixo, parece que isso ajudou bastante gente a continuar usando sucata eletrônica com Windows 8.1 por mais algum tempo

  • Além de Larry Finger, outro desenvolvedor do kernel Linux também faleceu esta semana: https://lwn.net/Articles/979617/

  • As pessoas vivem tirando sarro do “ano do desktop Linux”, mas para mim esse ano ficou claramente marcado como por volta de 2007, quando o Wi-Fi no ThinkPad começou a funcionar quase sem sofrimento

  • O trabalho do Larry mantendo vários drivers de fornecedor da Realtek no GitHub foi imenso para a comunidade. Até hoje, em muitos casos, esses forks funcionam muito melhor do que os drivers da mainline. Ele fará falta. Como outros já disseram, foi uma grande inspiração

  • Descanse em paz. Obrigado pelo trabalho com drivers de Wi-Fi. NDISWrapper era realmente doloroso

  • Uma figura lendária. Larry viveu uma vida plena, orientou centenas de pessoas ao longo dos anos, e seu legado continuará vivo nas pessoas que ele ensinou e inspirou