Personal tools
You are here: Home Artigos



 
Showing blog entries tagged as: web

Estes, à esquerda e abaixo, são artigos que eu publiquei aqui, no Webinsider ou em revistas e jornais como a Macmania, a Mac+ e o Estado de São Paulo.

Muitos deles foram escritos em acessos de raiva. Me orgulho de alguns deles e, embora eles sejam "temporalmente esparsos" demais para serem chamados de um blog, foi esse o papel que eles tiveram por um bom tempo.

Mas não é porque eu começei um blog (aqui mesmo) que eu vou abandoná-los e nunca mais acrescentar nenhum texto aqui - os posts mais "elaborados" ficarão aqui. O meu lado "repentista" ficará no blog.

Espero que você, leitor, goste dos dois.

Um abraço,

Ricardo Bánffy

 

Vivendo no Windows, parte 3 - a reinstalação

Durabilidade

É um fato conhecido que instalações de Windows "apodrecem". À medida em que programas são instalados e desinstalados, discos são fragmentados e desfragmentados e atualizações são aplicadas umas sobre as outras, aparentemente, coisas se estragam, a máquina fica esquisita e chega, finalmente, a hora de formatar o HD e reinstalar tudo.

E nem mencionei o problema de malware crônico que aflije usuarios de Windows desde que a internet deixou de ser um clube para cientistas bem educados para se tornar um antro de marginais dispostos a tomar seu computador de você.

É verdade que o Windows tem feito progressos expressivos. Nos meus dias de Windows 95 e NT, um Windows apodrecia em mais ou menos um ano. Seis meses, se você instalasse um Visual Studio ou algo parecido. Foi com o NT4 que eu adquiri o hábito de ter uma partição do disco para o sistema operacional e programas e outra só para os meus dados, hábito que persiste até hoje no meu Ubuntu. O Windows 2000 foi um bom progresso. Com ele minhas instalações sobreviviam por cerca de um ano de uso pesado (naquele tempo eu ainda desenvolvia quase que exclusivamente para as plataformas da Microsoft). O XP marcou uma outra melhoria - elas passaram a durar mais tempo. Pode ser que eu tenha parado de programar para Windows e que isso tenha facilitado a vida das ferramentas de auto-limpeza dele, mas pode também ser que o sistema tenha ficado melhor. Do Vista não ouço muitas histórias de horror. Por outro lado, ninguém usa o Vista há tempo suficiente para ter problemas sérios. E, com a chegada iminente do Windows 7, nem vão.

A verdade é que, se você não maltratar muito a sua máquina Windows (instalado coisas vindas de lugares suspeitos, por exemplo) é bem capaz que ela dure anos sem precisar de uma reinstalação. O máximo que você pode precisar é instalar o PageDefrag (não funciona no Vista, até onde eu sei) e deixar que ele faça seu trabalho quando necessário (apesar do nome, ele desfragmenta o registry e outras coisas importantes também).

Nada do que você faça vai transformar o Windows em um ótimo sistema operacional, mas, pelo menos, você pode evitar que ele se torne um transtorno.

Isso tudo, claro, não evita outra mazela da vida com computadores: problemas de hardware.

O HD clicando

Um tempo atrás, meu computador de trabalho (um Dell D-630, mais feio do que bater na mãe, mas robusto como um tanque) começou a dar sinais de que o HD estava prestes a falhar - o HD começou a produzir cliques altos. Como eu notei o problema logo, avisei o pessoal que cuida das máquinas para que se preparasse para receber um paciente terminal e já pedisse o HD novo para a Dell, evitando perdas de tempo.

Fazendo back-ups depressa

Nessas horas, a primeira coisa a se fazer é um back-up de tudo o que é importante.

Como o código-fonte em que eu estava trabalhando está em um Subversion, eu simplesmente fiz um commit e mandei para o servidor, onde ele fica seguro.

Não fosse a tragédia de usarmos Exchange, eu não precisaria fazer nada com o e-mail. Como a empresa usa Exchange, de tempos em tempos eu tenho que mover e-mails antigos para fora do servidor, onde eles têm back-up, para a máquina (e o HD) que ia parar a qualquer momento. O Exchange simplesmente não sabe lidar com muito e-mail. O mailbox de trabalho que eu usei por uns 5 anos acumulou uns 4 gigas de dados, sempre no servidor. O meu mailbox no Gmail tem uns 2 gigas. O meu no Exchange não pode passar de 100 megas. Copiei o .PST para um pendrive.

É por coisas assim que ordens judiciais para que uma empresa entregue e-mails de 2 anos atrás são um pesadelo de administradores de sistemas Windows. Bem-feito. Quem mandou deixar usarem Exchange?

Para os logs do Pidgin (não - eu não uso o Live Messenger nem no Windows) eu adotei a solução que já vinha adotando - rodei o rsync nas pastas dele para o pendrive, onde só as mudanças foram copiadas. Eu já usava o procedimento para consolidar os logs entre meu computador de trabalho e meu computador pessoal, então, não precisei me preocupar muito com isso.

Eu tenho também no meu computador uma coleção de revistas em PDF. Para essa coleção, também uso o rsync para sincronizá-la com a outra cópia dela (ou o original), que fica no meu computador pessoal (que, apesar de ser um netbook minúsculo, costuma ficar em casa e é onde eu estou escrevendo isso).

Os podcasts que o iTunes baixou e outras coisas maiores foram compactados e copiados para um servidor na mesma rede.

Eu sei que o Windows tem um "assistente de migração", mas, como eu mantenho meus dados separados de todo o resto, a única coisa que ele poderia preservar era precisamente todo o lixo e restos de programas instalados que eu queria aproveitar para remover. Além disso, ele pode levar muito tempo para rodar e, se o HD morrer antes dele terminar, você acaba com precisamente nada.

Ele também é inútil quando você está reinstalando a máquina por causa de algum vírus que foi contraído porque alguém baixou um programa vindo de um site suspeito na Estônia. O malware provavelmente será parte do back-up. Na verdade, nenhum back-up que você não possa inspecionar detalhadamente pode ser um vetor para uma reinfecção. É uma péssima idéia.

O resultado

Configurar máquinas Windows é muito chato e demorado. Depois de instalar a imagem padrão da empresa, para qualquer extra você tem que caçar o disco de instalação do programa (ou caçá-lo na web) baixar o instalador, rodar o instalador, passar atualizações de segurança, rebootar várias vezes... Depois de receber a máquina com a instalação padrão, eu levei mais de dois dias para voltar ao meu nível normal de produtividade.

Em contrapartida, a máquina ficou mais "redonda". Parece um pouco mais rápida. Continua um Windows com todos os problemas e pequenas insanidades que eu já comentei antes, mas, ainda assim, o progresso foi sentido.

A profunda insanidade desse processo todo me choca. O jeito Linux de fazer a coisa (através de repositórios e controle de pacotes) é muito mais racional.

Adendo: se livrando de um HD

Quando levaram meu HD embora eu perguntei o que ia acontecer com ele. Muitas empresas não se preocupam com isso, mas eu me preocupo. São dados de trabalho, cronogramas, orçamentos, contratos e mais um monte de coisas que não deveriam nunca sair do prédio. Muitas vezes adicione a isso dados pessoais, certificados digitais de bancos e outras coisas que seriam a festa de um ladrão de dados. Quando seu técnico for devolver seu HD ao fabricante, pergunte o que ele vai fazer. Se ele disser que vai excluir a partição, faça-o ler esse parágrafo. Se seu HD ainda funciona você precisa gravar algo por cima dos seus dados. Contra malfeitores medianos, zeros bastam para todos os dados menos importantes, mas, se você mais paranóico e quiser se prevenir contra malfeitores competentes e com recursos, eu indicaria gravar dados aleatórios no seu disco. Tanto no caso dos zeros como no caso de dados aleatórios, eu uso o dd. É um utilitário de linha de comando comum a vários sistemas Unix-like. E, mais legal, é livre - grátis e vem com código, pra você ter certeza de que ele faz o que você quer que ele faça.

Afinal, com segurança de dados não se brinca.

Este artigo também está disponível no Webinsider, em http://webinsider.uol.com.br/index.php/2009/10/04/vivendo-no-windows-parte-3/

Read More…

Resultados da Pequena Pesquisa

Alguns dias atrás, depois de um post relativamente grosseiro que eu fiz, eu me propus a conduzir uma pequena pesquisa para responder algumas perguntas:

  1. Programadores inexperientes realmente tem uma tendência a escolher Java como linguagem de implementação?
  2. Programadores tendem mesmo a rejeitar o BASIC (Visual Basic, VBScript, VB.Net etc)?
  3. Quais programadores rejeitam o que? Há algum padrão reconhecível por experiência ou escolha de linguagem?

Hoje, depois de minhas merecidas férias e de mais ou menos 300 respostas, eu acho que posso começar a comentar sobre alguns resultados interessantes.

Sobre a pesquisa

Como o formulário diz, a pesquisa é metodologicamente falha - de um questionário incompleto, potencialmente inconsistente a uma amostra viciada - e uma causa perdida do ponto de vista científico. Não tenho intenção alguma de traçar o perfil definitivo dos programadores lusófonos. Minha intenção era apenas lançar alguma luz sobre as questões que eu enumerei há pouco e confirmar ou refutar meu mal-criado post.

Um dia, talvez, eu faça algo sério. Hoje não.

De longe, o problema mais chato de ajuste dos dados foi a amostra viciada: minhas preferências de listas de discussão impactaram significativamente as respostas. Previsivelmente, muita gente da comunidade de usuários de Python respondeu, desviando todas as leituras. Para chegar a dados mais significativos, em alguns casos eu precisei reduzir o peso das respostas em que Python é a primeira escolha para refletir melhor a realidade. Vários dos números que eu vou apresentar a seguir refletem esses ajustes.

Java e os inexperientes

Java foi a linguagem de escolha de 19% dos novatos (com experiência de até 3 anos), praticamente empatada com C# (17%). Ambas ficaram atrás de PHP que é a escolha de 33% dos inexperientes.

O fato de Java e C# serem relativamente populares entre os novatos pode ser atribuído a vários fatores: das oportunidades de emprego aos excelentes IDEs disponíveis (sim, Visual Studio é um ótimo IDE, mas apenas se você nunca for desenvolver nada para qualquer outra plataforma que não Windows).

A parte importante é que meu mal-criado post está errado: os inexperientes preferem PHP.

Quanta gente odeia o BASIC?

Essa não foi surpresa. Falando friamente, VB (que é o único dialeto sobrevivente de BASIC) é uma porcaria. Foi legal nos baixos anos 90, principalmente porque permitia escrever programas para Windows quando a única alternativa seria o Microsoft C ou a família Turbo Pascal e seus descendentes. Linguagens de terceiros para Windows sempre deixavam "cicatrizes" de interface e isso sempre me incomodou - é parecido com o efeito de se usar AWT em programas Java: eles simplesmente não parecem "certos" em nenhuma plataforma.

De qualquer modo, metade dos respondentes declararam que não usariam BASIC (o que inclui VB.net e VBScript) por nada nesse mundo. Eu acho isso um progresso significativo que enche meu coração de esperança.

O que os programadores mais detestam?

Essa é, no fundo, a pergunta mais interessante. Para respondê-la, precisamos separar nossos programadores em categorias. Para isso vou usar dois critérios: linguagem de escolha e tempo de janela.

Entre os novatos, a linguagem mais detestada continua sendo o BASIC (e seus descendentes). Surpreendentemente, o segundo lugar nessa categoria é o Java. Aparentemente os novatos que não gostam de Java têm opiniões fortes a respeito da linguagem.

Entre os veteranos, com 10 ou mais anos de experiência, o BASIC é o mais detestado. O segundo lugar é do Perl (o que me surpreende um pouco), seguido de Java e C# bem de perto.

Entre os 3 que preferiram BASIC, a linguagem mais detestada por dois deles é o próprio BASIC. Eu imagino que esses dois ou não entenderam o formulário ou não quiseram colaborar. O outro dos três respondentes que preferem BASIC, escolheu quase todas as outras linguagens como as que ele nunca jamais usaria. Como eu o conheço de muito longa data (ele preencheu o nome), eu acredito que ele conheça a lista toda. Ou que tenha me pregado uma peça.

Entre os PHPistas, BASIC é, de novo, a linguagem mais detestada. Interessantemente, o segundo e terceiro lugares pertencem a Erlang e Lisp, respectivamente. Eu achei esse resultado confuso - nunca vi um PHPista que conhecesse qualquer uma dessas duas linguagens o suficiente para detestá-la. Java também é bastante detestado entre os PHPistas, mas não sei se posso levar muito a sério esses resultados considerando a posição do Erlang e do Lisp. Vai entender...

Os Javistas detestam BASIC acima de todas as outras linguagens, mas, em seguida, detestam Smalltalk, Perl e C# igualmente. Interessante, porque pouquíssimas pessoas usam ou usaram Smalltalk (que eu considero uma das linguagens mais interessantes que existem por aí). Eu brinco que o Smalltalk/80 faz o Java/2009 parecer primitivo. E no fundo parece mesmo.

Os amantes do C# também detestam BASIC, o que pode surpreender, uma vez que BASIC é uma linguagem importante no portfolio de linguagens da Microsoft e que Windows é o único ambiente em que C# faz algum sentido. Ainda assim, os C#-istas detestam BASIC com menos energia do que os demais. Em termos de linguagens detestadas, aliás, eles são os que menos detestam.

A turma do Ruby é interessante: detesta BASIC como todo mundo, mas não polariza sua seletividade em nenhuma outra linguagem. Eles detestam muitas linguagens (praticamente todas estão representadas), mas parecem detestá-las igualmente.

Finalmente, o pessoal do Python, que ficou um pouco super-representado nessa pesquisa por conta das listas em que ela foi divulgada, detesta BASIC, como todo mundo, mas detesta Java mais do que qualquer outro grupo - um pouco mais até do que detestam BASIC - coisa única nessa pesquisa. Depois de Java e BASIC, detestam Perl. C# e PHP ficam com distantes quarto e quinto lugares.

O que quer dizer tudo isso?

Muito pouco.

A natureza falha dessa pesquisa não nos deixa tirar conclusões e ter falsas ilusões a respeito de sua validade, mas pode nos apontar em direções interessantes e para outras pesquisas mais elaboradas. Seria interessante saber que outras linguagens os programadores conhecem. Seria bom também relacionar isso com para que plataforma eles desenvolvem. Seria bom também ter mais amostras, mesmo como está - para isso ela vai continuar disponível para preenchimento aqui. Quem quiser respondê-la, sinta-se à vontade.

A pesquisa, assim como está, é um retrato divertido de se olhar e, quanto muito, material para discussões nos botecos próximos aos nossos escritórios. Mas nada muito mais sério do que isso.

E, claro, eu estaria mentindo se dissesse que eu não me diverti muito com ela.

O que, no fim, é o que conta.

Pelo menos pra mim.

Nota: Você encontra esse artigo (com um título melhor, feito por um jornalista de verdade) lá no Webinsider. Lá você também vai encontrar os comentários dos leitores de lá, que são muito mais numerosos que os daqui.

Read More…

Vivendo no Windows, parte 2

Segunda parte da comparação entre a vida no Windows e a vida no Linux

Read More…

Vivendo no Windows

Primeira parte do comparativo entre a vida no Windows e a vida nos diversos ambientes Linux do mercado

Read More…

O Kanamit Web Framework

Eu sempre gostei de escrever aqui sobre linguagens "exóticas". Já houve um tempo em que Python era exótico. Hoje Python é mainstream. Ruby, idem. Há até suporte a Rails no NetBeans 6 e para Python no Visual Studio. Não dá pra ser muito mais mainstream do que isso.

Read More…

Aqueles que Simplesmente Não Entendem

Nem todo mundo no mundo é rápido para perceber as mudanças na sociedade. Há aqueles que são naturalmente "mais lentos" que os outros e há também aqueles que insistem em se apegar ao passado que não volta em busca da segurança que acreditar que as coisas não mudam pode trazer.

Read More…