101 Great Freebies
Want to make your PC more productive, secure, informative, and entertaining? These downloads and services will do the trick, and they don’t cost a dime.
Want to make your PC more productive, secure, informative, and entertaining? These downloads and services will do the trick, and they don’t cost a dime.

Google has decided to offer its users a different element of customization by allowing them to select a theme for their Google Personalized Homepage. Prior to this, the only option was the typical Google logo on a white background.
You’ll have six different options for a theme including the beach, bus stop, city scape, sweet dreams, tea house, and seasonal scape. After selecting your option, it will ask you for your location because the themes will dramatically change to match your time of day and weather. I changed my location three different times to get an idea of what the same theme looks like at different times. Below is the beach theme showing sunrise, day time, and night time.
And some “Easter Eggs” appear at 3:14 am (Pi = 3.14) and last for a minute.
City Scape – UFOs
Pi in the Sky – Sweet Dreams
Tea House – Weird creatures in the water? (anybody know what that is?)
Seasonal Scape – Northern Lights


Crisp photography is a sure-fire way to make a site look great, but what about the loading times of those chunky images? Give your users a nice animated loading icon, and fade the image in when it’s loaded. It’s a nice effect with little overhead.
HTML tables are so last century. ActiveWidgets provide a dynamic data table library, allowing users to sort data by columns and highlight rows of interest. It is, however, a large overhead and not suitable for large amounts of data.
Asking users to enter a valid date can be a pain - frustrating for the developer, and frustrating for the user. Offer them a simple GUI to select dates with this very customizable script.
Tabs are great for sorting short snippets of information. Tabs without reloading the page are even better. Tabs with a rolling animation effect too? Well, that’s just killer.
These draggable windows are lightweight and efficient, and are perfect for intranets and web-based applications where multiple views are required simultaneously. And don’t worry, you needn’t have the Windows 95 look either.
One subject, many photos? These tidy thumbnail displays are just the ticket, allowing visitors to blow up photographs of interest. Similar to those found on eBay and such, but not as heavy on the code.
A favourite little effect of mine found on many good sites these days - the Javascript Lightbox. Enlarge photographs with slick animation and easy-to-use navigation. Put a smile on the CEOs face and wow the marketing team ready for your “afternoon meeting” down the pub.
Get your visitors from Google Search to card payment in ninja time, with a drag-and-drop shopping cart. Reducing page loads, form elements and complicated menu screens increases sales and repeat business. But with mission-critical code like this, make sure to test it on every platform before it goes live. You know this. I was just reminding you.
No one likes a smartass, unless they’re doing your homework for lunch money. Let this script do your users’ hard work so they don’t have to - autocomplete from a selection of known data. Great for street addresses (if you have the data), category selection, search engines, tagging and everything inbetween.
Nothing says “I love you, user” more than drag-and-drop items. Remember the days of an “order” column, and wanting to insert an item at the top? Nightmare no more! Slick interface with a very practical purpose.
Javascript Logging & Debugging
“PC Load Letter?! What the hell is PC Load Letter!!” cries from the office. Meaningless error messages are enough to drive a man crazy, so why not step up your debugging skills and hunt those bugs in style?
After spending days getting your web site pixel perfect, inconsiderate users will always resize your text and ruin your layout. Well okay, they need to because their eyesight can’t comprehend your 6pt type. Which means you need to support different font sizes without ruining your layout.
Displaying Points & Text On Maps
If your data is geolocation based, it looks great on a map with clickable points. But how do you make that interface accessable to everyone? A List Apart shows you how.
A more advanced way of displaying your pictures - let users sort them by category, view random pictures, and even set up a personal slideshow. Probably more suitable for family pictures than commercial uses, but I’ve found it handy over the years.
And finally another slick animation for your site, without the overhead of Scriptaculous, create “Digg-style sliding comment boxes” for popup information.
No último dia do TechDays, comecei por ir à sessão de um colega de trabalho o Bruno Câmara que se intitulava por ARC007 : As Angústias de um Arquitecto [Tiago Pascoal / Bruno Câmara], tal como na edição do TechDays de 2005 a apresentação desta sessão teve o seu aspecto teatral, mas excelentemente bem apresentado pelo medico psicanalista de doentes do foro “tecnológico” (Tiago Pascoal), que explicava e dava soluções ao doente (Bruno Câmara) cheio de duvidas e problemas tecnológicos na implementação de sistemas de informação na sua empresa. Os conceitos com nomes diferentes mas que definem o mesmo objectivo foram desmitificados nesta excelente sessão.
Em seguida fui assistir à sessão do amigo Paulo Morgado, que é responsável pelo smart client que comporta as paginas web que desenvolvo todos os dias. A sessão DEV021 : Composite Applications: WebClient Software Factory & SmartClient Software Factory [Sérgio Amendoeira e Paulo Morgado] abordava um tema complicado de explicar em tão pouco tempo, os conceitos de Composite Application e Software Factory foram bem apreendidos mas explicar o Composite UI Application Block, foi o CABo dos trabalhos. Valeu pelo esforço de tentarem fazer passar a mensagem, mas ficou a sensação que ficaram muitos conceitos por falar e como funciona a implementação de cada um deles.
O Almoço foi agradável e deu para comer bem.
Na parte da tarde fui assistir à sessão DEV027 : LINQ - .NET Language Integrated Query (LINQ) Framework [Luis Falcão], que foi boa até entrar em loop. Uma das características do LINQ, é a implementação de código similar ao T-SQL numa classe de C#, e este código permite executar “queries” a colecções que implementem o IEnumerable, resumindo é isto que se tinha que falar em hora e meia, o que chegou perto das 14:00 e a mensagem era sempre a mesma.
Depois de levar com a semi-seca, veio a seca completa, a sessão DEV024 : Construir Serviços WCF com WF - Presente e Futuro [Miguel Barros], tinha um titulo aliciante e apelativo, mas caiu por terra com a apresentação. O objectivo era exemplificar a utilização das duas tecnologias, WCF e WWF em conjunto, mas ficou muito aquém das expectativas pelo mau exemplo apresentado e a explicação confusa. Eu conheço uma implementação onde estas tecnologias funcionam em conjunto, e penso que actualmente é um dos poucos exemplos práticos em que a conjugação de WCF e WWF faça sentido, um broker ou proxy, agora concatenação de strings é que não. Fraquinho.
Para encerrar em beleza a edição do TechDays 2007, fui assistir a mais uma sessão do Bruno Câmara, ARC008 : Team System - Metodologias Ágeis & Conceitos: SCRUM, MSF, XP [Tiago Pascoal / Bruno Câmara], esta sessão destinava-se a project managers e apresentava os diversos métodos para orientar e gerir com eficácia um projecto. Para alem das metodologias apresentadas e bem explicadas foi exemplificado como utilizar o Team System para efectuar um acompanhamento de um projecto.
E foi assim mais uma edição do TechDays, este ano mais “académico” e menos prático, foi bom e deu para aprender mais qualquer coisa.
De manha cheguei tarde, porque estive quarenta minutos a tentar arranjar lugar para estacionar o carro.
Cheguei com trinta minutos de atraso a sessão DEV009 : ASP.NET AJAX [Jeff Prosise], mas fui a tempo de apanhar a parte que ele mostrava como fazer callbacks a webservices ou a métodos em codebehind em vez de utilizar o UpdatePanel. O UpdatePanel deve ser utilizado de forma sucinta, pois a cada post vem um conjunto de informação desnecessária que irá sobrecarregar o tráfego da pagina. A chamada de callbacks a webservices ou a métodos em codebehind, devolve para pagina código JSON (caso dos webserices) e código cliente (caso métodos em codebehind). Em resumo esta sessão demonstrou boas praticas para utilizar o ASP.NET AJAX.
Por ter achado brilhante a primeira sessão de Chad Hower sobre WPF, fui assistir a DEV012 : Windows Presentation Foundation II [Chad Hower], esta sessão abordava o WPF/E, e como ainda não existe muito a dizer sobre o WPF/E houve um esforço por parte do orador em mostrar tudo que se sabe sobre este sub-set do WPF. Soube a pouco, mas valeu a pena.
Em seguida foi o almoço, muito melhor do que no dia anterior, mais comida e mais variedade.
Na parte da tarde fui a sessão DEV013 : 0wn3d: Hacking ainda mais fácil em AJAX Web Sites ? [Rui Quintino], que deu a conhecer as vulnerabilidades existentes nos sistemas web e que são difíceis de travar. Foram descritos os ataques mais comuns a sites web: o cross-site scripting e o cross-site request forgery , referindo as suas características, os métodos e práticas para protecção contra estes ataques. Esta sessão foi muito esclarecedora.
Depois desta excelente sessão fiquei na duvida a que sessões iria assistir o resto da tarde e decidi ir metade do tempo a uma e metade do tempo a outra, primeiro fui a sessão DEV015 : Introdução ao Windows Communication Foundation [António Cruz], achei um bocado “secante” e quase que adormeci, mudei para a sessão UCM005 : Voz sobre IP (VOIP) e a Gestão das Comunicações com o Microsoft Office Communications Server 2007 e o Office Communicator 2007 [Virgilio Ribeiro / João Brazão] e gostei muito dos novos produtos da suite Microsoft Office 2007 apresentados nesta sessão, se uma empresa implementar uma infraestrutura Exchange com estes dois novos produtos, pode cancelar o contrato com a operadora de serviço telefónico. Pois estes produtos eliminam todos os terminais de telefone, substituindo-os por cada computador, com as vantagens de partilha de documentos em real-time, para alem de um Instant Messenger o Office Communicator é um telefone VoIP. O Communications Server 2007, permite criar e gerir centrais de Messanging/Email/VoIP com mailboxes de correio electrónico e correio de voz (voice mail).
Para terminar o dia fui a sessão ARC006 : SaaS: Software as a Service, Desafios e Oportunidades [José António Silva], mas fiquei por pouco tempo, pois não tinha nada a ver com a minha área. Mudei-me para a sessão DEV017 : Novas APIs para Reconhecimento e Síntese de Fala em Português para Aplicações Cliente e Servidor [Pedro Silva] que mostrou como implementar a API Speech do .NET 3.0.
Pois é, já começou o evento mais esperado pelos programadores deste país, e eu também estou lá. O evento começou, após eu ter recolhido o badge e uma pasta cheia de papelada dos patrocinadores e alguns cupons para concorrer a prémios dos mais variados, no maior auditório da antiga FIL iniciou-se a primeira sessão chamada “People Ready” que resumiu as temáticas que iriam ser apresentadas nas várias sessões.
Comecei por ir à sessão SRV002 : Nova Geração de Arquitectura de Infra-Estrutura: Service Oriented Infrastructure (SOI) [Luís Carvalho], e escolhi mal, por ser uma sessão para analistas de sistemas.
De seguida fui almoçar, e mais uma vez fiquei surpreendido pela negativa com os tugas, o almoço era buffet e a malta enchia os pratos, até a comida cair para o chão e depois davam duas garfadas e deixavam o resto. O almoço também não era dos melhores, mas passava-se um bocadinho de fomeca.
De seguida escolhi uma sessão da minha área, DEV005 : Team System: Extensibilidade e Integração Continua [Sónia Moreira], muito boa a sessão para quem não conhecesse o CruiseControl.NET, ferramenta que é utilizada por mim todos os dias . Cada cavadela, cada minhoca … enfim.
Para terceira sessão escolhi a, DEV006 : Windows Presentation Foundation I [Chad Hower], até que enfim um sessão em cheio, Chad Hower ( a.k.a Kudzu ) no seu melhor, a mostrar as potencialidades do WPF sem mostrar aqueles efeitos 3D e vídeo a rodar numa esfera, sim porque como ele disse, quais são as aplicações empresariais que iríamos desenvolver e necessitávamos de colocar um vídeo a correr numa esfera. Assim ele apresentou de uma forma simples e intuitiva os conceitos do WPF, 5 estrelas.
Por fim a terminar o dia escolhi uma sessão para descomprimir, DEV004 : Desenvolvimento de Jogos com XNA Express [Rob Miles], esta sessão deu-me uma certa nostalgia, pois fez-me lembrar os tempos em que programava os meus jogos no velhinho Timex ZX 2048. Nesta sessão, muito animada Rob Miles demonstrou como posso voltar a programar jogos com a framework XNA.
Windows only: TaskSwitchXP replaces Windows XP’s stock task-switcher with one that combines thumbnail previews and an application list.
Normally, pressing Alt-Tab produces an icon-based row of open applications. TaskSwitch XP serves up a nice big thumbnail alongside a vertical apps list. Right-click any item in the list and you get task-management options like “minimize” and “end process.”
Get free blog up and running in minutes with Blogsome
Theme designed by Jay of onefinejay.com