Como petrolhead que sou, fiquei encantado com os espécimes que se encontram mundanamente em Londres. Aqui deixo algumas das melhores fotos do belo safari que fiz na cidade à beira do Tamisa. Caso queiram ver todas as fotos, cliquem aqui para acederem ao album no Picasa. Enjoy!
Categoria: Ramblings
Pensamentos e opiniões
Quatro livros até ao fim do ano
Reparei há uns meses que não andava a despender tempo nenhum com literatura. Sempre gostei de ler, mas com a excepção de alguns livros técnicos no início da faculdade, costumava optar por obras relativamente light. Estava na altura de tomar a iniciativa e ver se aprendia uma coisinha ou duas. Infelizmente entre o trabalho e a faculdade não sobra muito tempo, pelo que me desafiei a ler (apenas) quatro livros durante este ano. Aqui ficam os escolhidos:
The Pragmatic Programmer – From Journeyman to Master
Andrew Hunt e David Thomas
O “The Pragmatic Programmer” foi recomendado por uma miríade de programadores no Stack Overflow, e foi por essa razão que o escolhi. Apesar de já ter alguns anos, aborda os principais assuntos relacionados com o desenvolvimento de código e manteve-se surpreendentemente actual. Está dividido em pequenas tranches, cada uma abordando uma boa prática de programação. Foi um dos melhores livros que já tive o prazer de ler, e tenho a certeza que o irei reler muitas mais vezes. Os bons conselhos são tantos que é difícil interiorizar toda a informação apenas numa passagem. É um livro para redescobrir, mudar hábitos, e recomendar a todos os que tenham uma paixão pela arte de programar e queiram passar de prosa a poesia com o código que escrevem.
Evolutionary Robotics – The Biology, Intelligence, and Technology of Self-Organizing Machines
Stefano Nolfi e Dario Floreano

Este livro apresenta uma análise em profundidade do trabalho mais relevante na área da Robótica Evolucionária até à data de publicação (2000). Também dá uma excelente visão geral dos processos envolvidos no desenvolvimento de metodologias evolucionárias, particularmente as que utilizam robótica ou simulação de agentes. A abordagem de auto-organização do comportamento tem várias vantagens relativamente às tradicionais soluções codificadas “à mão”, vantagens essas que são exploradas nos primeiros capítulos.
Na minha opinião, este livro é uma óptima introdução a este enorme mundo, com muitos exemplos de como desenhar e realizar experiências. Fiquei surpreendido com a quantidade de possibilidades que podem ser exploradas e investigadas, desde arquitecturas reactivas, a co-evolução, aprendizagem durante a vida, e mudanças de morfologia. Este livro é uma referência e recomendo a quem tenha interesse na área de Aprendizagem Automática e Robótica.
Code Complete: A Practical Handbook of Software Construction
Steve McConnell

Mais um livro que descobri através das recomendações do Stack Overflow. Na realidade, é mais uma bíblia que um livro, com quase 1000 páginas. Não posso falar muito sobre este visto que é o que está a ficar para o fim, por ser tão intimidante. Aqui fica uma quote do Joel Spolsky: “The encyclopedia of good programming practice, Code Complete focuses on individual craftsmanship — all the things that add up to what we instinctively call “writing clean code.” This is the kind of book that has 50 pages just talking about code layout and whitespace“. Para quem conhece os meus hábitos de programação e já “sofreu” com isso (sou extremamente picuinhas) dirá que é um livro adequado a mim 🙂
97 Things Every Software Architect Should Know
Rebecca Parsonns

Este livro foi parte do espólio do Codebits 2010. Contém uma compilação de conselhos de muitos arquitectos de software sobre os mais variados tópicos relacionados com esta profissão. É relativamente pequeno, quando comparado com qualquer um dos outros. Ainda por cima cada secção tem 2 páginas e inclui uma pequena biografia de cada autor, pelo que se torna numa leitura bastante leve que pode ser feita aos poucos. Mesmo que só tenhamos 5 minutos para ler, dá para avançar sem ficar com capítulos a meio. Este livro está disponível online gratuitamente aqui. Se quiserem ver uma ou duas secções, posso recomendar (até onde li) a Stand Up! e a Don’t put your resume ahead of the requirements.
Se tiverem que escolher apenas um livro de programação, certifiquem-se que esse livro é o “The Pragmatic Programmer”. Caso queiram ver mais livros interessantes deixo aqui o link para a pergunta no Stack Overflow com dezenas de recomendações. Recomendo também o Good Reads para gerirem os vossos livros e a vossa wishlist.
O fim dos LulzSec
A segurança é, cada vez mais, um ponto fulcral de qualquer sistema informático. Os ataques multiplicam-se, os prejuízos são cada vez maiores e, com os nossos dados espalhados por inúmeros serviços na internet, todos estamos vulneráveis. Muitas entidades não têm qualquer mecanismo de segurança e estão à mercê de hackers que agem por maldade. A possibilidade de existirem backdoors ocultas e activamente usadas é algo que deveria provocar arrepios e noites em branco a qualquer sysadmin ou responsável de sistemas.
O fim está a chegar rapidamente para os membros dos LulzSec. Estão a ser feitas apreensões todas as semanas e os cabecilhas começam a ser apanhados. Esta telenovela dos tempos modernos já dura há alguns meses e gerou muita discussão sobre os métodos utilizados pelo grupo de “hacktivistas”. De certo modo, foi algo completamente novo no mundo da tecnologia: a mediatização da verdadeira anarquia digital.
A minha opinião divide-se um pouco entre os dois lado da barricada.
Por um lado, este tipo de acontecimentos costumam provocar rupturas de comportamento. Por exemplo, o surgimento do Firesheep em 2010 apressou o ritmo da implementação de ligações seguras por SSL no Facebook e outros sites de grande porte. Só quando sentimos na pele as consequências é que tomamos acções drásticas. Existem entidades que não têm qualquer respeito pelos dados dos seus utilizadores. Quantas bases de dados terão dados confidenciais em plain-text? O caso da Sony foi flagrante e deverá servir de exemplo para qualquer um. Ao menos este grupo teve a “decência” de fazer um grande alarido da situação e não ficou a utilizar os dados pela calada, o que teria sido ainda mais grave.
Por outro lado, milhares de inocentes foram apanhadas nesta situação. Os LulzSec divulgaram os dados de cartões de crédito, e-mails e passwords, provocando prejuízo na vida das pessoas. Este tipo de ataques sem regras tem consequências reais graves, razão pela qual não consigo apoiar totalmente esta ideologia.
A fama, a vaidade e o poder subiram-lhes rapidamente à cabeça. Afinal de conta, não é todos os dias que se tem os olhos do mundo concentrados em cada passo que damos, para além do medo incutido nos cibernautas. Este excesso de confiança foi, na minha opinião, a morte do artista. Deixaram pegadas por todo o lado e não acredito que consigam sair incólumes depois de tudo o que fizeram.
As acções dos LulzSec ficarão marcadas na história da internet. Espero que toda a situação não tenha sido em vão e que haja uma mudança de hábitos radical. A cultura da segurança deveria ser a primeira prioridade de qualquer entidade com presença na web. Cada vez mais piratas navegam nestes mares: quem não se proteger, mais cedo ou mais tarde acaba saqueado.
Automotor Speed Day 2011
No passado dia 23 de Julho, ocorreu no Autódromo do Estoril o Automotor Speed Day. Este evento é realizado para celebrar o aniversário da revista Automotor e conta com inúmeras atracções para convidados e respectivos acompanhantes. Tive a sorte de ir como acompanhante de um amigo e viver muito do que havia disponível no mítico autódromo.
Ao chegar ao paddock, fomos recebidos por algumas belas máquinas: Mercedes (C63 AMG e SLS AMG), Abarths (Punto e 500), Audi (R8 V10), Renaults (Megane RS), Opels (Insignia OPC e Corsa OPC), Caterhams, entre outros. Passámos algum tempo por aqui a ver os carros a chegar, a partir, e a passar na recta da meta. O barulho de alguns deles [1][2] e o cheiro a gasolina e borracha era mais que suficiente para alegrar qualquer entusiasta logo pela manhã.
Enquanto não chegava a hora de experimentar o Mercedes C63 AMG, fomos dar uma volta pelo recinto. Numa zona periférica estava um circuito para testar alguns carros eléctricos da Citroen, Mitsubishi e Peugeot. Fui experimentar um deles num percurso de pinos e fiquei surpreendido pela passividade do instrutor: podíamo-nos divertir à vontade e abusar do pequeno motor (que até tem algum binário).
Depois de almoço fomos então experimentar a “besta”. Já o tínhamos namorado bastante (bem como o SLS AMG) e a vontade de sentir em primeira mão o V8 de 6.2 de cilindrada era enorme. A primeira volta ao circuito foi feita pelo instrutor e pudemos (os acompanhantes) ir no banco de trás. O carro ligou-se com um rugido rouco e o resto é história… Podem ver o vídeo aqui.
A experiência foi religiosa, como disse o João Pires. A força que o carro tem é algo de indescritível e a forma como se agarra nas curvas parece desafiar a física. Sentimos os Gs em todo o corpo ao descrevermos a silhueta do Estoril. Tão rápido como começou, a volta acabou e estávamos novamente no paddock. O Pires teve a oportunidade de conduzir os cerca de 450 cavalos em 2 voltas ao circuito. Se a inveja matasse, eu era um homem morto por esta altura 🙂
Ainda com as pulsações elevadas e um sorriso na cara, dirigimo-nos à pista de karts. Confesso que nunca tinha experimentado, e a experiência foi excelente. Apesar da pista improvisada ser pequena, conseguiam-se atingir velocidades engraçadas. Fiquei com o bichinho e vou mesmo ter que passar por um kartódromo brevemente!
O próximo passo foi passar pelo circuito de TT. Ao chegarmos lá, a fila estava enorme e com mais de 1h de espera. Em vez de ficarmos parados a esturricar ao sol, decidimos ir ver o pessoal que estava a circular pela pista. Destaque para os Caterhams que “papavam” praticamente todos os outros e para uma Ford Transit que, de alguma maneira, envergonhava muitos desportivos.
Foi um dia em cheio e espero que para o ano consiga açambarcar um dos convites para mim. Obrigado à Automotor e ao Pires por me ter convidado! Se quiserem espreitar as fotos e os vídeos fica aqui o link do album no Picasa.
Primeiras impressões sobre o Mac OS X Lion
Ontem saiu a versão 10.7 do OS X. Juntamente com cerca de 1 milhão de pessoas, perdi o amor a cerca de 24€ na App Store. Ao fim de dois dias já tenho alguma noção do que gosto e do que não gosto nada. Não é que a minha opinião (ou qualquer outra) tenha alguma influência: a Apple é famosa por seguir o seu caminho, com o sem o consentimento dos seus utilizadores. No final, a maioria de nós será mais um carneirinho às ordens do Deus Jobs, e os defeitos (antigos ou recentemente introduzidos) do OS X serão esquecidos ou aceites. Sad, but true.
Sobre o processo de instalação, só tenho a dizer bem. O download demorou um pouco, mas é normal visto que são quase 4GB. O processo de instalação é seamless e dura cerca de meia hora. Até aqui, tudo perfeito. Quando finalmente entramos no sistema operativo, é apresentada uma caixa para testarmos o scroll. Fui apanhado de surpresa ao verificar que o inverteram verticalmente! Esta alteração vai de encontro com a estratégia da Apple de tentar aproximar o OS X com o iOS, visto que nos dispositivos tactéis como o iPad e o iPhone o scroll é feito ao “empurrar” o conteúdo. A habituação tem sido relativamente fácil, devido (penso eu) à utilização regular do meu iPad.
Após o ambiente de trabalho carregar, uma das primeiras coisas que saltou à vista foi que os Spaces tinham desaparecido. Para além disso, o Exposé foi substituído pelo Mission Control e foi introduzido o Launchpad para gerir as aplicações instaladas. Vamos por partes:
Mission Control: eu era bastante Exposé-dependente. Usava e abusava desta feature para trocar entre várias janelas, que era acessível através de um swipe para baixo. Agora podemos aceder ao Mission Control com swipe para cima. Não percebo bem porque é que inverteram a direcção. Para além disto, já não é possível afastar as janelas, mostrando o ambiente de trabalho, com um swipe para cima (3 dedos), que também era extremamente útil. Agora temos que fazer um pouco de malabarismo com um gesto rebuscado: uma espécie de pinch para fora com o polegar e 3 dedos. 80% das vezes activo o Mission Control em vez de conseguir afastar as janelas, talvez devido ao pequeno touchpad do meu Air. Useless!
Spaces: demorei um pouco a descobrir como se adicionavam novos Spaces. É necessário ir ao Mission Control e arrastar uma janela em direcção ao canto superior esquerdo. Se antes podiamos ter Spaces verticais e horizontais, agora só é possível serem horizontais. O Dashboard de widgets vem por default como um Space, mas removi-o imediatamente. Por default também vem a opção de reordenar os spaces de acordo com os que são mais usados. Também removi isto porque prefiro saber exactamente em que space é que está determinada aplicação. Apesar do novo sistema não me parecer tão flexível, penso que me vou adaptar bem.
Launchpad: Quase nem vale a pena falar disto. Para quem usa o Quicksilver ou o Alfred (ou outro launcher qualquer) esta feature é inútil. No entanto não é possível ignorá-la totalmente: ao instalar uma aplicação, o Launchpad abre para mostrar o progresso, quer queiramos quer não. Uma minor annoyance.
Outra coisa que reparei é que as aplicações que tenho abertas não estão a ficar nos spaces onde as deixo. Gosto de ter um space para o Mail.app e Twitter, outro para o browser, outro para o Photoshop e ainda outro para o Coda/TextWrangler. Por vezes ao clicar numa dessas aplicações, em vez de ir para o space correspondente, a aplicação abre no space actual e tenho que a arrastar para o sítio certo. Não sei se é por o Lion fechar aplicações que não estão a ser usadas, mas torna-se chato.
As alterações cosméticas são súbteis mas agradáveis. Deixámos de ter barras de scroll explícitas e é necessário fazer scroll para que apareçam. Algumas aplicações que usava deixaram de funcionar: o cliente de VPN da Cisco crasha com estilo e o TotalFinder recusa-se a iniciar. Ainda não tive oportunidade de experimentar bem algumas funcionalidades como o AirDrop, Resume, Auto Save e Versions, mas já ouvi dizer que funcionam bem.
Uma coisa que me irrita profundamente foi terem arruinado a aplicação DigitalColor Meter. Antes era possível ver o código RGB em hex, bem como copiá-lo. Agora nem uma coisa, nem outra. Esta aplicação era excelente para webdesign, porque podíamos rapidamente pegar no valor de uma cor para aplicar no CSS ou mesmo no Photoshop. Gostaria de saber quem foi o [escolher um daqui] que olhou para a aplicação e pensou “Hmm… Isto é bastante útil. Vamos tirar features, só para os lixar”, principalmente quando o OS X é utilizado en masse por designers.
Esta foi a primeira migração de versão pela qual passei no OS X. Não sei se as outras foram assim tão leves, mas não se compara à alteração de um Windows XP para um Windows Vista, por exemplo. É mais parecido com a passagem do Windows Vista para o Windows 7, na medida em que não há assim tanta diferença. É óbvio o esforço que a Apple está a fazer para tentar fundir o iOS com o OS X. Não sei se esse caminho é o mais correcto, mas safaram-se (bastante) bem com as escolhas que fizeram ao longo dos últimos anos, pelo que irei dar-lhes o benefício da dúvida. É esperar para ver.
