Archive for the ‘Desenvolvimento de Software’ Category

Aplicativos para iPhone em 1 lugar só? cheiro de monopólio

Friday, October 10th, 2008

Que a Apple balançou o mercado de telefones e mudou muitos conceitos com o iPhone todo mundo sabe. O que muita gente não pára para pensar é na estratégia da empresa da maça referente a software de terceiros.

Segundo a Wikipedia:

Instalação de aplicativos de terceiros sem o licenciamento prévio da Apple: Não podem ser instaladas aplicações no iPhone além das atualizações de firmware da Apple, que também adicionam funcionalidades novas ao aparelho e ainda as aplicações de terceiros previamente licenciadas pela Apple por meio de uma loja própria, a Apple Store;

Em suma: Todo software que você quiser colocar no seu telefone tem que passar pela Apple. Nem a Microsoft teria pensado em um modelo de negócios mais “escravatório”. Software Livre? nem pense nisso…

Quem perde com isso? Os desenvolvedores, que ficam à mercê da empresa, e os usuários, que correm o risco de perder a oportunidade de ter bons softwares em seus equipamentos unicamente porque a Apple não os licenciou.

Para uma empresa inovadora como a Apple, acredito que este bloqueio é uma involução, que vai contra todas as tendências do mercado de software.

Cursos de Computação da Stanford na Web!

Thursday, October 9th, 2008

A Universidade de Stanford - uma das melhores do mundo na área - anunciou que vai disponibilizar gratuitamente o material completo de vários cursos de tecnologia, como engenharia, ciência da computação e inteligência artificial.

A página do projeto pode ser acessada aqui -> Stanford Engineering Everywhere

A iniciativa, parecida com o “MIT Open Course Ware” do MIT, reforça uma nova tendência no meio acadêmico de computação - que particularmente aprecio muito - de disseminar conhecimento para a comunidade.

Para quem conseguir um tempinho na agenda, é uma ótima oportunidade de ter um curso de Stanford ou do MIT no currículo. :-)

O porquê dos mecânicos usarem as ferramentas melhor que os programadores

Tuesday, October 7th, 2008

Estava eu no hall do café da empresa que trabalho, esperando a máquina terminar meu expresso, quando ouço o seguinte diálogo:

- C++ é muito melhor do que Java, cara.

- De jeito nenhum!

- Claro que é! Para te provar isso, você sabia que a máquina virtual do Java foi escrita em C++?

Agora eu te pergunto, amigo leitor: O que tem a ver uma coisa com outra?

Isso me levou a pensar sobre o comportamento de alguns colegas de profissão - e, algumas vezes, o meu próprio comportamento.

Linguagens de programação são apenas ferramentas, e devem ser tratadas como tal, e não como uma ideologia. Aliás, a primeira qualidade de um bom profissional é saber escolher corretamente suas ferramentas, deixando de lado emoções e gostos pessoais.

Ora, por acaso você já viu um mecânico de automóveis tentando tirar um parafuso com um martelo, simplesmente porque ele acha que o martelo tem uma usabilidade melhor? :-) Pois é exatamente isso que as vezes fazemos, por não dar voz à razão.

Hoje trabalho com desenvolvimento de software embarcado nativo, em C. E nem seria louco de propor o uso de Perl, por exemplo. Java? talvez um dia.. mas não hoje - e nem nas camadas que “falam” diretamente com o hardware. Seria loucura.

Durante a minha carreira, já programei em PHP, Perl, Java, C, C++, JavaScript… qual é a melhor? nenhuma delas. Todas são ferramentas importantes guardadas na minha modesta caixinha, prontas para serem usadas quando eu julgar conveniente. :-)

Abrace um programador!

Wednesday, October 1st, 2008

Pessoal, para quebrar um pouco a seriedade deste blog, segue um excelente vídeo. Campanha “Abrace um programador hoje” (hug a developer today) Amanhã voltamos aos posts sérios, prometo.

Metodologia x Processo: O que realmente importa?

Tuesday, September 30th, 2008

Muito se discute sobre metodologias de software e hoje estou convencido de que não é possível o desenvolvimento de software sem uma metodologia eficiente. E toda metodologia traz consigo uma série de processos a serem seguidos. E,  este eh um ponto importante que diferencia as diferentes metodologias presentes no mercado: a quantidade de processo que cada uma traz consigo.

Mas… qual é o limite ideal da relação programação/processo?

Os desenvolvedores irao brigar pelo desenvolvimento, e o pessoal dos times de qualidade, pelo processo :-)

Mas que tal olhar sob o ponto de vista do usuario? sera que ele se importa realmente se o software que esta usando eh proveniente de uma empresa com certificacao CMMI? Eu, como usuario, nao me importo.

Sob este ponto de vista, acredito que a quantidade ideal de processo eh a minima possivel, para que seja possivel o gerenciamento do projeto, mas que nao leve o desenvolvedor a passar mais da metade de seu tempo preenchendo formularios. (quem trabalha em empresas de porte medio a grande sabe do que estou falando… :-( )

PS: me perdoem a falta de acentuacao, estou postando de um PC desconfigurado..