Já há muitos anos que gosto de Pink Floyd, o meu pai tinha vários LP's desta banda, e durante a minha infância divertia-me imenso a ouvi-los, apesar de nunca ter ligado às letras das suas grandes músicas.
Só recentemente, comecei a ter em atenção esse pormenor, e quando me deparo com a letra da música "time", fiquei sem palavras, só posso dizer que não posso concordar mais com a mesma, é linda e como se aplica a tantas pessoas.
Deixo-vos então o vídeo e as lyrics (podem-nas ver na descrição que a pessoa que colocou o vídeo pôs, se clicarem no botão youtube).
Uso linux já há muitos anos (salvo erro desde 2001), sendo utilizador desde 2007 do Linux Ubuntu, no entanto as últimas versões deste sistema operativo desiludiram-me bastante, principalmente devido à nova interface, a que a Canonical chamou Unity.
A versão 11.04, apesar de já ter esta interface, suportava-se razoavelmente e até era um sistema operativo razoavelmente estável apesar do Unity, no entanto com a versão 11.10 as coisas descambaram por completo. Crashes é coisa habitual, até nas coisas mais simples, a ideia de instalar aplicações através do Ubuntu Software Centre, uma aplicação já por si instável e cheia de bugs, foi uma péssima ideia, por vezes até a instalar debs de aplicações simples, crashava outras dava dois cliques e nada, sem resposta por parte do sistema, e lá tinha eu de ir ao terminal fazer o "dpkg -i <aplicação.deb> que era em muitas vezes, a única solução .
No entanto, descobri uma nova distribuição que apesar de baseada em Ubuntu, é muito mais estável, fácil de usar e rápida, tal como o Ubuntu até à versão 10.10, o seu nome Mint.
Apesar de não ter um período fixo de lançamento de novas versões (ao contrário do Ubuntu que sai de 6 em 6 meses) tendo como data de lançamento "When it's done", é sem dúvida (pelo menos para mim) uma excelente funcionalidade, pois muitas das versões supostamente estáveis do Ubuntu, deveriam ter ficado em desenvolvimento durante mais algum tempo, principalmente a 11.10.
Relativamente ao gestor de janelas, a versão que estou a usar, a 11, traz o Gnome 2, no entanto a versão 12 que irá saír em breve, irá trazer 2 de origem, o novo Gnome 3 e o MATE, um projeto recente que pretende continuar o desenvolvimento da 2ª versão do Gnome, pois muitos utilizadores odeiam o Gnome 3.
O Linux Mint, não possui um Software Centre tão completo como o do Ubuntu, no entanto disponibiliza a alternativa "Software Manager", que apesar de inferior, é bastante estável e possui uma grande quantidade de software de código aberto disponível (O software centre do Ubuntu possui também algumas aplicações pagas).
Quanto às aplicações pré-instaladas, traz quase tudo o necessário para ter a melhor experiência "out of the box" possível, trazendo codecs para os filmes, o LibreOffice, o Firefox e até aplicações gráficas como o GIMP, entre outras. Possui também uma ferramenta intitulada Startup-Manager que permite entre outras cosias, fazer o que expliquei no tutorial "Alterar o Sistema Operativo Selecionado por Defeito no Grub 2", mas de uma forma gráfica e mais simples.
Em conclusão, posso apenas dizer que é uma distribuição que pessoalmente recomendo, é muito fácil de usar e tem tudo o que a maioria das pessoas precisa, e se precisar de algo mais, provavelmente poderá encontrar no Software Manager.
Agora, espero ansiosamente, pela versão estável da nova distribuição de Linux da Commodore, baseada no Mint e que está em fase beta.
Obrigado Steve Jobs! Não serás esquecido.
Quando instalei o Ubuntu 11.04, verifiquei que este trazia a versão 2 do Grub e que ao contrário da versão 1, em que podiamos alterar o sistema operativo seleccionado por defeito editando o ficheiro menu.lst, aqui as coisas são um pouco diferentes, no entanto o procedimento continua bastante simples.
Primeiro, abrimos através de um editor de texto (vi, emacs, gedit, nano, etc.) o ficheiro /etc/default/grub e procuramos a linha que diz "DEFAULT=0", depois abrimos um terminal e escrevemos o seguinte comando:
grep menuentry /boot/grub/grub.cfg
Contamos as entradas "menuentry", começando a partir do 0, e procuramos a ordem da linha do sistema operativo que queremos marcar por defeito, por exemplo, se for a 3ª linha, consideramos como a 2ª, pois a contagem inicia-se do zero, e no ficheiro que abrimos anteriormente, alteramos a linha DEFAULT para esse valor, neste caso, alteramos para "DEFAULT=2" e gravamos as alterações.
Seguidamente, corremos o seguinte comando:
sudo update-grub
A alteração deverá então ser efectuada.
Nos comentários deste post, alguém perguntou-me como poderia implementar a arraylist no main. Segue abaixo o exemplo de uma possível implementação, sei que poderia ter feito isto através de return, no entanto e como este artigo é para iniciantes, este vai com o out.println:
Passo 1 - Após criar o novo projecto (eu dei o nome ArrayListStr), cria-se uma classe usarArrayList com o seguinte código:
package arrayliststr;
import java.util.*;
import static java.lang.System.out;
/**
*
* @author fabiodomingos
*/
public class usarArrayList {
ArrayList<String> professores = new ArrayList<String>();
public void adicionaProfs()
{
professores.add("Jorge");
professores.add("Paulo");
professores.add("Silvio");
}
public void criarNovoProf(String nome)
{
professores.add(nome);
out.println ("Adicionado nome "+nome);
}
public void listarProfessores()
{
out.println("Lista de Professores");
for (String nome : professores)
out.println(nome);
}
public void tamanhoDaLista()
{
int a = professores.size();
out.println("A lista tem "+a+" elementos");
}
public void existe(String nome)
{
int i=0;
for (String profs : professores)
{
if (profs.contains(nome)==true)
{
i++;
}
}
if (i==0)
out.println("Não Existe");
if (i>0)
out.println("Existe "+i+" ocorrencias");
}
public void apagarTudo()
{
professores.clear();
out.println("Todos os registos foram apagados");
}
public void apagaElemento(String nome)
{
professores.remove(nome);
}
public void verificarVazio()
{
if (professores.isEmpty()==true)
out.println("Está Vazio");
else if (professores.isEmpty()==false)
out.println("Não está vazio");
}
}
Passo 2 - No main instanciar a classe e chamar os métodos:
package arrayliststr;
/**
*
* @author fabiodomingos
*/
public class ArrayListStr {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
usarArrayList al = new usarArrayList();
al.adicionaProfs();
al.criarNovoProf("Zé"); //por exemplo
//etc etc
}
}
Se tiverem mais dúvidas ou quiserem dar sugestões/correcções,
utilizem a caixa
de comentários deste post. Obrigado!
Sou utilizador do macports há bastante tempo, tendo instalado muitos packages open source que me deram bastante jeito, exemplos são o wine para correr alguns programas para Windows, o octave que me facilitou bastante o estudo de cálculo matricial, alguns joguitos como o super tux, o frozen bubble, etc.
No entanto, desde que actualizei do Mac OS X Leopard para o Snow Leopard as coisas começaram a piorar, erros, erros e mais erros, pesquisava e nada, por vezes depois de muita luta lá conseguia instalar os pacotes desejados.
Quando corri o update do Snow Leopard para o Lion, aí é que as coisas descambaram mesmo, não conseguia instalar nenhum pacote. No entanto, felizmente, numa visita pelo website usesthis encontrei alguns utilizadores que também usavam o macports e que mudaram para outra aplicação, o homebrew e estão extremamente satisfeitos.
Hoje decidi fazer o mesmo, a instalação é bastante simples, o primeiro passo é desinstalar o mac ports, para isso deve-se utilizar os comandos que estão especificados nesta página pois caso contrário a instalação do homebrew irá dar "barraca", depois segue-se estas instruções e esperar que a instalação termine, muito simples e nem sequer necessita de sudo, seguidamente leia o faq e conheça os comandos que poderá utilizar.
Apesar de ter começado a utilizar este package manager há 2 horas, até agora estou extremamente satisfeito, pois ao contrário do macports até agora tenho 0 erros.
Neste mês de Agosto, por muitos aproveitado para férias, a equipa da Revista PROGRAMAR não descansa e traz-lhe uma nova edição. Com esta edição começaremos também a premiar os autores dos três melhores artigos. E os leitores devem dar a sua opinião para que possamos premiar correctamente. Para isso vote emhttp://tiny.cc/ProgramarED30_V
Por isso nesta edição trazemos até si, como artigo de capa, um artigo sobreIntrodução ao Ruby on Rails para ficar a conhecer as bases da tecnologia "Ruby on Rails" para desenvolvimento de páginas web. Nesta 30ª edição pode ainda encontrar os seguintes artigos:
E em colaboração com a comunidade AzurePT, SQLPort, NetPonto e SharePointPTrespectivamente:
Nesta edição, fui o autor do artigo "Tipos Genéricos", por isso se quiserem contactar-me, dar uma critica (de preferência construtica) ou dar sugestões, podem utilizar a caixa dos comentários. Obrigado!
A equipa da Revista PROGRAMAR traz novamente uma edição recheada de óptimos artigos. Nesta edição, como artigo de capa, um artigo sobre Git: Controlo de Versões para Pequenos e Grandes Projectos, e ainda os seguintes artigos:
E em colaboração com a comunidade NetPonto:
Nota: Nesta edição, o artigo sobre o editor de texto VIM é da minha autoria, por isso se quiserem enviar críticas ou sugestões, podem usar os comentários deste post. Obrigado!

A comunidade Portugal-a-Programar fez no passado dia 28 de Maio 6 anos de existência. São vários anos de trabalho e dedicação, de diversos colaboradores voluntários, para que tenha sido possível criar e fazer crescer uma comunidade de programadores na língua Portuguesa.
Veja alguns números da comunidade (blog, revista, wiki, etc) e divulgue este momento, habilitando-se a ganhar uma das 5 t-shirts que estão a ser oferecidas (termina hoje, por isso despache-se!).
Queria desejar os Parabéns ao grande projecto Portugal-a-Programar e a todos os que têm contribuído!
Para quem não sabe, a distribuição de Linux Caixa Mágica, é baseada noutra distribuição, nas primeiras versões foi baseada na Suse, e actualmente é baseada na Mandriva.
Apesar da distribuição Mandriva, ser uma distribuição bastante amigável, é algo grande e um pouco pesada (pelo menos para mim).
No entanto, eis que vejo uma notícia do mês de Janeiro deste ano no site desta distribuição, e que confirma o que tenho dito relativamente ao melhor futuro da distribuição, a Caixa Mágica vai fazer a transição da distribuição base para Debian, que é para mim, uma distribuição com bom desempenho, de pequena dimensão e com uma excelente comunidade, talvez seja a mais completa em termos de pacotes existentes.
Agora, sugiro à Caixa Mágica, que tenha em atenção os seguintes pontos:
- Corrigir todos os bugs da instalação, principalmente as janelas chatas que me obrigam a dar cliques, a dizer que os pacotes a instalar não estão assinados (ou algo parecido) e que pergunta-me se quero mesmo instalar (são muitas janelas mesmo);
- Utilizar o Synaptic como gestor de pacotes e não como gestor de actualizações;
- Ter o LibreOffice como suite de produtividade por defeito, pois é mais livre;
- Se possível tentar que a distribuição caiba num cd, tal como o Ubuntu.
Desejo então um excelente trabalho, à equipa desta distribuição, e os melhores sucessos com a nova versão baseada em Debian!
Desde há cerca de 2 anos, que possuo como router, um linksys WAG54G2, nessa altura o meu "parque informático" era composto por um macbook (late 2008) a correr o Leopard ligado por Ethernet, um Intel core2quad q6600 também ligado por Ethernet, um portátil HP ligado por wi-fi e uma Nintendo Wii, que não conseguia ligar por wi-fi ao router, problema que foi resolvido com uma actualização do firmware do linksys.
No entanto, ano passado, tive necessidade de ligar o macbook ao router através de wi-fi, a conectividade era razoável, tendo por vezes umas quebras de ligação, que só eram resolvidas desligando e voltando a ligar o Airport, mas nada de especial. Porém, quando instalei o Snow Leopard no macbook, eis que as coisas pioraram, as quebras passaram a ser de 3 a 4 por hora, e tive de encontrar uma solução alternativa e mais rápida do que estar sempre a desligar e ligar o Airport, a minha solução actual para restabelecer a conexão é a seguinte:
1. Abrir as System Preferences
2.Em internet & wireless clicar em network
3. Tendo o Airport seleccionado, clicar em Advanced
4. Seleccionar a tab "tcp/ip" e clicar em "Renew DHCP Lease"
A conexão deverá ser então restabelecida.
Há um ano, comprei um iPod Touch, e o problema também acontece, nesse o procedimento que tenho é o seguinte:
1. Ir às settings e clicarm em Wi-Fi
2. Clicar no ícone com uma seta para a direita, que corresponde à sua ligação (na secção "Choose a Network")
3. Na parte debaixo da "janela", clciar no botão "Renew Lease" que está por cima da secção "HTTP Proxy"
4. A ligação deverá ser então restabelecida.
Por vezes, nem com esta "solução", a ligação volta, nesses casos, tenho resolvido desligando todos os dispositivos que estejam a usar o wi-fi do router.
Este problema, tem sido como devem imaginar bem chato para mim, ocorrendo por vezes quando estou no software update, como podem ver no seguinte registo da consola:
No início pensava que o problema fosse de hardware, no entanto, e dado eu ser estudante da área dos sistemas de informação, por vezes tenho necessidade de usar ferramentas de modelação de dados que só existem para Windows, por esse motivo tenho uma instalação do Windows 7 no meu macbook, que corre em dual boot via bootcamp e nunca tive problemas com o Windows 7, por vezes o ipod e o macbook não conseguem ligar à internet, e quando inicio o sistema no sistema operativo da microsoft, este liga correctamente. Por isso, o problema está relacionado com o Mac OS X, dado eu também possuir um telemóvel Android, que liga à rede também por wi-fi e nunca ter tido nenhum problema do género.
Penso que está tudo descrito, e espero que no caso de terem o mesmo problema que eu, a minha "solução" vos possa ajudar a "suavizar" este problema, qualquer dia, aventuro-me no Apple Script e tento fazer um script que faça isto automaticamente.
Saliento também que a versão do firmware do dispositivo é a última (1.00.19) .
A edição número 27 da revista Programar já foi lançada, nesta edição foram feitos mais uns retoques em termos gráficos e com a entrada de novas comunidades que contribuíram com artigos. Uma edição a não perder!
Os conteúdos da revista são os seguintes:
E ainda uma análise ao livro Silverlight 4.0 - Curso Completo da FCA Editora.
Para mais informações e download faça clique aqui .
Já falei deste browser num dos posts anteriores, apesar de estar bastante melhor que a anterior versão, existem coisas que não me agradam, e que provavelmente irão fazer com que continue a utilizar a minha dupla imbatível Firefox + Chrome.
Um deles é este:
Não sei se é possível verificar correctamente, neste screenshot é possível ver 3 janelas de browsers distintos, à esquerda está o Internet Explorer 9 Beta, no meio o Chrome e na da direita o Firefox, abertos no mesmo site (sapo.pt) .
Em termos de aspecto, tudo parece bem, no entanto a qualidade das fontes do Internet Explorer 9 beta, é bastante inferior às do Chrome e Firefox, parecendo até que foram desfocadas propositadamente, ou que estão escritas num papel sujo, comparando com a limpeza e nitidez dos seus dois rivais cuja qualidade é superior.
Por favor Microsoft, melhora as fontes do teu browser!
Se o seu computador, está muito lento, então efectue o seguinte procedimento, pois poderá resolver ou melhorar o seu problema.
1- Verificar a existência de vírus
Um dos principais responsáveis pela lentidão dos computadores, é o malware, ou seja vírus, spyware, worms, etc. Para verificar se possui alguma destas pragas no seu computador, instale e corra a aplicação Malwarebytes que se encontra no seguinte site:
Se detectar algum vírus, elimine-o, e passe para o próximo passo:
2 - Fazer uma limpeza ao disco
Clique no menu iniciar, depois vá a todos os programas -> acessórios -> ferramentas do sistema -> limpeza do disco, seleccione a unidade C: e clique em ok, depois marque as caixas de verificação que desejar (recomendo reciclagem e ficheiros temporários para além das seleccionadas) e prima ok, a limpeza irá ser efectuada. Se depois de terminada, o computador continuar lento, descarregue a aplicação ccleaner, que se encontra no seguinte site:
http://www.piriform.com/ccleaner/downloa
No menu do lado esquerdo, corra o Cleaner e o Registry, quando terminado, verifique se o problema está resolvido, caso contrário, verifique as sugestões abaixo.
Outros problemas que podem ser responsáveis pela lentidão do seu computador
1- Pouca memória
Para verificar a sua memória, faça clique com o botão direito do rato sobre o item computador do menu iniciar e seleccione propriedades, aí irá abrir uma janela onde poderá verificar entre outras coisa, a memória instalada.
Verifique, se tem no mínimo a seguinte memória de acordo com o seu sistema operativo:
| Versão do Windows | Memória Instalada |
| Windows XP | 512 MB (1 GB recomendado) |
| Windows Vista | 2 GB |
| Windows 7 | 2 GB |
Se não possuir, tente adquirir mais memória, se não tiver possibilidades para isso, veja o 2º ponto abaixo
2 - Pouco espaço disponível
O espaço disponível em disco, pode ser verificado indo ao menu iniciar -> computador, se a sua versão do Windows for o Vista ou o 7, provavelmente já poderá ver o seu espaço disponível, se possuir o xp ou anterior, deverá fazer um clique com o botão direito do rato sobre a unidade C: e verificar quanto espaço tem disponível.
Verifique se tem pelo menos 2 GB livres no Windows XP, ou 5 GB livres no caso do Vista/7, é importante ter sempre uma boa quantidade de espaço livre em disco, pois o Windows precisa de criar ficheiros temporários para trabalhar, e se não possuir espaço suficiente, poderá haver problemas com o computador.
Foi há exactamente 25 anos, que a Microsoft lançou a primeira versão do sistema operativo Windows, apesar de na altura, este não ser um sistema operativo, pois era necessário ter o ms-dos instalado (este sim era o sistema operativo), sendo o Windows apenas uma extensão para este sistema operativo, que integrava um ambiente orientado a janelas no mesmo, melhorando a experiência do MS-DOS que era baseada em comandos.
Comecei a usar o Windows em Abril de 1998, num Pentium 200 mhz, com 32 MB de memória RAM e um disco rígido de 2.5 GB, na altura a última versão, e a primeira que usei foi a 95. O seu aspecto era o seguinte:

Nada a ver com as transparências que vemos hoje.
Desde essa versão, já passei pelo Windows 98, me, XP, Vista e actualmente uso o Windows 7, a evolução tem sido notória, os cinzentos acabaram para dar lugar às janelas transparentes, o sistema operativo mudou o sistema de ficheiro de FAT 16 e 32 para NTFS, pondo fim aos limites nos tamanhos dos ficheiros (o FAT 32 tem um limite de 4 GB por ficheiro), a redução do número de blue screens, as desfragmentações mensais e por vezes semanais que eram quase obrigatórias no 95/98 e agora são on-the-fly, o lento sistema de procura de ficheiros, e que agora é bastante rápido, etc.
Se as evoluções que enumerei anteriormente já são muito relevantes, imaginem as que existiram desde a primeira versão do Windows:

No entanto, se vermos bem, os elementos que compõem um sistema operativo actual, com uma interface GUI estão lá todos, janelas, cursor, botões, desktop. Será que os computadores do futuro serão também compostos essencialmente por estes elementos? Ou algo novo e revolucionário virá? Se isso acontecer, qual o futuro do rato?

Sim, este foi o primeiro rato!
Parabéns Windows!
Descampado por trás da minha casa:
Julho 2005
Março de 2010
Ponte da Praia do Rosário
Outubro de 2005
Fevereiro de 2009
Actualmente não possuo nenhuma fotografia no meu arquivo sobre o estado actual deste local, no entanto fica aqui prometida uma para breve.
Hoje estava a fazer umas experiências com programação por objectos no Visual Studio 2010, quando reparei que este já não me completava as properties. Achei estranho, e pensando que era um bug, fui pesquisar, e eis que encontro a razão deste acontecimento, que é a implementação das Auto-Implemented Properties.
Como funcionam então as Auto-Implemented Properties? É simples, no momento de declaração dos atributos da classe, declaram-se logo as properties, exemplo:
Em vez de
Private m_Nome As String
Private m_Morada As String
faz-se
Public Property Nome As String
Public Property Morada As String
E no momento de declaração da variável, são também automaticamente elaborados os getter's e os setter's.
Como vê, muito simples, e muito trabalho poupado.
Para quem ainda não instalou a vesão Beta do Internet Explorer 9, eis alguns screenshots:
And that's all folks!
. Time
. Mint
. Alterar sistema operativo...
. Java: Colecções - ArrayLi...
. Homebrew
. Revista PROGRAMAR - 29ª E...
. 6 anos de portugal-a-prog...