Stop designing useless software architecture, Start coding useful software

Don’t Let Architecture Astronauts Scare You Article was written 2001, but It’s still up to date.

I disassemble two parts of that article that I’ve thought over:

These are the people I call Architecture Astronauts. It’s very hard to get them to write code or design programs, because they won’t stop thinking about Architecture. They’re astronauts because they are above the oxygen level, I don’t know how they’re breathing. They tend to work for really big companies that can afford to have lots of unproductive people with really advanced degrees that don’t contribute to the bottom line.

Remember that the architecture people are solving problems that they think they can solve, not problems which are useful to solve. Soap + WSDL may be the Hot New Thing, but it doesn’t really let you do anything you couldn’t do before using other technologies — if you had a reason to. All that Distributed Services Nirvana the architecture astronauts are blathering about was promised to us in the past, if we used DCOM, or JavaBeans, or OSF DCE, or CORBA.

Alan Braz wrote in his Sametime message: Stop Talking, Start Doing. I found the ad video that explain the main idea, clicking on “Globalization” video.

In few words, we can brief both the article and the IBM Ad Video: Stop designing useless software architecture, Starting coding useful software.

Are you learning or using new technology because It is a hype or buzzword ?
Or are you learning or using new technology because It contributes to the bottom line ?
Any thoughts ?

Kleber Rodrigo de Carvalho

Paradigm based Polyglot Programming

Are you Polyglot Programmer ?
You can be Polyglot Programmer even so you have understanding just Java world.

How many languages are you using on the same project? If you go counting you will see that they are many. I mean XML, Java, XSLT, HTML, CSS… etc. But the reason why you are using almost all of them is that they happen to be mainstream and, oftentimes, they are the only language choice for a needed framework. You are actually almost obliged to use them. The choice is done for you. Style? CSS. Configuration? Often XML. Web interface description? Html. However, if you want to adopt true polyglot programming, you will have to face inevitable decision of language choice.

Read the full Article: Paradigm based Polyglot Programming

CGI Error Parte 2

Infelizmente depois de algumas horas tentativas, ainda não consegui resolver o problema do erro de CGI.

Na verdade existe um bug no CGI/FastCGI do IIS.

Eu achei que era um problema do wordpress:

http://wordpress.org/support/topic/146225
http://wordpress.org/support/topic/131976

Mas perceba que esse problema somente aparece no Microsoft-IIS/6.0, meu ambiente de teste aqui é Windows/Apache com CGI/FastCGI, e não tem problema. O mesmo acontece no Linux/Apache. Realmente o problema está no IIS com FastCGI.

A empresa de host que contratei, possui alguns plano e eu assino o plano Aw, com Windows e Microsoft-IIS/6.0.

Se os problemas persistirem, e ter outro custo beneficio melhor, terei que mudar.

Kleber Rodrigo de Carvalho

CGI Error

Pessoal

Alguns links do blog aqui não estão funcioando, e aparece a mensagem CGI Error.

Isto está acontecendo devido a um bug do wordpress:

http://trac.wordpress.org/ticket/5951
http://wordpress.org/support/topic/131976
http://wordpress.pastebin.ca/893007
http://wordpress.org/support/topic/150484

Na verdade já existe um fix para este bug, mas eu tenho que atualizar minha versão do wordpress, que vai levar um certo tempo.

Estarei fazendo um mais rápido possivel, mas enquanto isso você não conseguiram acessar os artigos no histórico desse blog.

Peço desculpa, e assim que corrigir estarei fazendo um novo post com os resultados dessa correção.

Kleber Rodrigo de Carvalho

Aplicativos com Interface Gráfica

Cada dia mais eu tenho usado o linux (Ubuntu). Não tenho preferência entre KDE ou Gnome, por isso tenho instalados os 2 desktops environment ou com alguns também falam desktops manager. Antes eu usava bem mais o KDE , mas agora uso mais o Gnome, ou seja tudo depende da época. Como gosto de linguagens de programação open source, e sempre programei em Java, tenho também estudado ultimamente Ruby, Groovy e também C/C++. Investigando um pouco sobre desenvolvimento Linux especificamente sempre encontro 2 requisitos quando alguém está contratando alguém para trabalhar com desenvolvimento Linux especificamente, são eles o GTK and QT. Mais precisamente quando se fala em GTK se pensa em Gnome, quando se fala em QT se pensa em KDE.

Bom para mim, sempre que precisei desenvolver algum aplicativo com interface gráfica, usei o Swing do Java. Que é um graphical widget toolkit para Java, parte da Java Foundation Classes (JFC), uma aAPI para desenvolver graphical user interface (GUI) usando Java. Não me fale, que Swing é lento, porque isso já aconteceu em um passado de 5 anos atrás. Hoje Swing sim é uma opção para se desenvolver (GUI) usando Java. Tem grandes cases como o NetBeans, o SquirrelSQL, JEdit citando alguns aplicativos que uso no meu dia a dia.

Tenho também outro toolkit para desenvolver aplicações gráficas chamado SWT. Standard Widget Toolkit (SWT) também é um widget toolkit para Java, originalmente desenvolvido pela IBM e agora mantido pela Eclipse Foundation. SWT é escrito em Java, mas para mostrar elementos GUI, acessa bibliotecas GUI nativas dos sistema operacional usando JNI (Java Native Interface), de uma maneira similar sobre aqueles programas escritos usando uma API especifica dos sistema operacional. Programas que usam SWT são portavéis, mas a implementação do toolkit, apesar do fato de ser escrita em Java, é unica em casa plataforma. Exite grandes apliativos desenvolvidos usando SWT, é todas as ferramentas que se baseiam nele como RAD, RSA, RDA (todas da IBM), tem também o Azureus BitTorrent para citar um bom exemplo de aplicação open source.

Bom pessoal, neste artigo escrevi sobre os graphical widget toolkit que conheço Swing and SWT, pois sou do mundo Java.

Prometo escrever nós próximos artigos sobre o GTK e QT.

Enquanto isso, fica aqui 2 links interessantes:

List of widget toolkits

Graphical user interface builder

Kleber Rodrigo de Carvalho

Servidores de Aplicação JEE

Eu estava fazendo uma busca por market share relacionado ao servidores de aplicação JEE. Não encontrei nada realmente conciso, mas posso dizer que o WebSphere AS e o Weblogic AS devam estar entre os lideres. Cheguei até a encontrar algo no google dizendo que nos Estados Unidos o WebLogic AS já teria passado a frente do WebSphere AS.

Vou colocar abaixo os application server que considero importante no Java Enterprise:

Se você quer saber sobre compatibilidade com qual versão do JEE, aconselho você seguir esses links:

Kleber Rodrigo de Carvalho

Arquitetura do eBay

Dan Pritchett oferece a nós um idéia das decisões por trás do ebay (a maior arquitetura em grande escala do mundo, que vai além do eBay.com ou PayPal.com ou o Skype). Ele explica como uma escala do eBay torna um simples requerimento, em um complexo problema de engenharia, e ele nós envolve através da desafios técnicos e organizacional do gerenciamento da arquitetura do eBay.

Dan Pritchett é atualmente um membro da equipe do eBay e está envolvido em resolver os maiores desafios relacionado a problemas de engenharia encontrado na web. Sua carreria de engenharia ultrapassa 25 anos, incluindo pesquisa em banco de dados relacionais, projeto de software para mapa geográfico, construção de produtos relacionados a e-mail, e criação de aplicações web escalavéis.

Assista esse video no InfoQ, que realmente vale a pena.

Kleber Rodrigo de Carvalho