Maio de 2007


À medida que experimento e convivo com os níveis organizacionais de empresas, principalmente de médio e grande porte, vou percebendo e compreendendo na prática a diferenciação de características dos níveis hierárquicos de gestão.

É nítida a existência de três níveis: o Estratégico da alta gestão, o Tático da gestão departamental e o Operacional da gestão localizada (micro). Consegui identificar e diferenciar algumas características interessantes destes níveis, que listo a seguir.

Nível
Estratégico Tático Operacional
C
a
r
a
c
t
e
r
í
s
t
i
c
a
Abrangência Instituição Unidade, Departamento Setor, Equipe
Área Presidência, Alto Comitê Diretoria, Gerência Coordenação
Perfil Visão, Liderança Experiência, Eficácia Técnica, Iniciativa
Horizonte Longo prazo Médio prazo Curto prazo
Foco Destino Caminho Passos
Diretrizes Visão, Objetivos Planos de ação, Projetos Processos, Atividades
Conteúdo Abrangente, Genérico Amplo, mas Sintético Específico, Analítico
Ações Determinar, Definir Projetar, Gerenciar Executar, Manter
Software Painel de Controle, Editor de texto Project, Planilha, Editor de texto, Apresentação Service Desk, CRM, ERP, Aplicações específicas

Enquanto tenho aprendido isso empiricamente, fiz uma pesquisa na Internet e tive a feliz surpresa em descobrir que minhas experiências práticas convergem para o que a literatura acadêmica preconiza.

Descobri a Teoria Neoclássica da Administração e suas idéias, que parecem o caminho para me dar fundamentação teórica e a organização metodológica para este meu conhecimento tácito.

Estou descobrindo — para tudo na vida tem uma primeira vez, não importa quando — autores fantásticos como Peter Drucker (1909-2005, austríaco) e o mundo dos negócios segundo ele. É de Drucker a corretíssima frase “o que não se pode medir, não se pode gerenciar”. E completando: Não se pode medir o que não se pode definir. E para definir é preciso entender.

É, quanto mais aprendo, mais certeza tenho de quanta imensidão ainda há a aprender. Ou, como diria o filósofo Sócrates: “tudo que sei é que nada sei”.

Para saber mais:

Atendendo a pedidos, em meu artigo recente sobre Melhores IDEs Java gratuitos, acrescentei os links para baixar os produtos e pacotes adicionais, relativos a cada IDE: Eclipse com Exadel/RedHat, NetBeans e Oracle JDeveloper.

Também aproveito para destacar aqui os pontos fortes de cada IDE, em minha opinião:

Eclipse com Exadel Studio Pro (futuro Red Hat Studio): software livre; a popularidade fiel do Eclipse e suas excelentes ferramentas de refactoring em projetos e em código Java em geral; mais as ótimas ferramentas visuais do Exadel, incluindo editor HTML/JSP/JSF “estilo Dreamweaver” e suporte a frameworks populares Struts, Spring e Hibernate.

NetBeans e seus Packs: software livre; facilidade na instalação e na variedade de assistentes produtivos; distribuição toda localizada para Português do Brasil; editores UML (com engenharia reversa e sincronização de código), BPEL, XML e WSDL no Enterprise Pack; excelente editor visual GUI desktop (Swing); ótimo conjunto de ferramentas de desenvolvimento para plataformas móveis no Mobility Pack.

Oracle JDeveloper: pacote completo e abrangente; rico em ferramentas para a plataforma Java EE; grande integração com produtos Oracle — gerenciador de banco de dados Oracle Server, Oracle AS e os frameworks TopLink e ADF.

Como sempre, a pergunta que não quer calar — Qual deles é o melhor IDE? — não tem resposta simples e direta; depende das suas necessidades, expectativas e preferências.

Muito bom o artigo do Vitor Fernando Pamplona, Cuidado com a Orientação a Objetos e os Design Patterns, de ontem. Mesmo para quem não concordar com alguns pontos do texto ou até com nada, vale como momento de reflexão sobre como tem sido sua experiência e aplicação de orientação a objetos e padrões de desenho/projeto (assumindo que você é um profissional da área de análise de sistemas e/ou desenvolvimento de software, claro).

Os comentários do artigo também estão interessantes.

Há poucos anos atrás, JavaScript era um das linguagens de programação mais criticadas e detestadas. Os mais radicais inclusive questionariam chamá-la de linguagem de programação. Programadores e desenvolvedores “de verdade” gostavam de linguagens “de verdade”, como C, Java, Pascal, C#, Fortran… tudo menos JavaScript, que nem tipagem forte tinha e ainda se dizia uma linguagem orientada a objetos.

Nos navegadores web, principal ambiente operacional do JavaScript, existiam entre Firefox/Mozilla e Internet Explorer muitas diferenças nas suas implementações da linguagem e, principalmente, no modelo de objetos de documento (DOM) utilizado para se manipular a estrutura da página web com JavaScript.

O Mozilla (de Netscape a Firefox) foi quem lançou e evoluiu várias versões da linguagem JavaScript, mas a correspondente JScript implementada pelo Internet Explorer tinha uma série de diferenças e de adições proprietárias da Microsoft. Lidar com essas diversidades realmente enlouquecia qualquer programador.

Fazer uma aplicação DHTML (HTML com JavaScript) multi-browser era uma tarefa difícil, às vezes inviável. Em 2003 e 2004, eu mesmo tive que estudar um bocado para fazer Validação de formulários HTML, Tratamento de CPF e CNPJ e Eventos multi-plataforma em JavaScript.

Essa realidade foi bastante amenizada à medida que se consolidou padronização da linguagem JavaScript pela ECMA (ECMASCript) e do Document Object Model (DOM) pelo W3C. O Firefox sempre foi bem aderente a estes padrões, e as novas versões do Internet Explorer têm gradativamente aprimorado esta compatibilidade.

E eis que a era Web 2.0 e o desenvolvimento AJAX deram novo impulso ao JavaScript. Como o próprio HTML e o ambiente HTTP não têm evoluído com a rapidez exigida pelo aumento de demanda por recursos nos serviços através da web, quem deu uma luz no fim do túnel para uma explosão de interatividade na web foi o bom e velho JavaScript. A linguagem é o próprio componente “J” em AJAX: Asynchronous Javascript And XML.

Por bem ou por mal, os desenvolvedores de aplicações e serviços interativos para web têm sido obrigados a dar mais atenção ao JavaScript e, com isso, a linguagem tem perdido seu mito de endemoniada para se tornar um ambiente de programação viável, com riqueza de recursos e grande flexibilidade. Ou, na excelente definição do artigo JavaScript - Nem Java, nem Script - Uma Interessante Linguagem Orientada a Objetos (sem classes), por Leonel Togniolli:

[JavaScript] é uma linguagem dinâmica, fracamente tipada, com orientação a objetos baseada em prototipos.

Se quiser entender melhor o que significa essa definição, leia o artigo citado, que é bem interessante.

Na esteira da Web 2.0, explodiu o desenvolvimento de componentes Ajax e, por conseqüência, despontaram os magos do JavaScript, e recursos e ferramentas cada vez mais interessantes e poderosos estão surgindo, baseados em JavaScript.

Vários IDEs de desenvolvimento para web oferecem suporte a edição e validação de sintaxe Javascript. Além disso, um excelente ambiente para monitorar, inspecionar e depurar JavaScript em ação — assim como CSS, HTML, DOM, tempo de carga de páginas e Ajax — é o Firebug, uma poderosa extensão para o navegador Firefox. Recomendo a leitura do artigo Puxão de orelha faz bem, JavaScript também. Apresento o Firebug!, por Giovane Roslindo Kuhn.

Também existem bibliotecas que, a partir dos pobres componentes padrão atualmente existentes de estrutura de página e formulários do HTML, criam componentes de interface mais sofisticados, há muito já disponíveis em ambientes de programação gráfica desktop, como árvores, tabelas etc.

Existe o popular Dojo Toolkit, um framework DHTML/AJAX de código aberto escrito em JavaScript. Outro exemplo é a biblioteca JavaScript Qooxdoo. Sua lista de componentes é bem rica, como se pode ver no showcase. Conheci esta biblioteca por outro artigo também de Leonel Togniolli: Clientes Ricos Ajax na Web com Qooxdoo.

document.write("Hello world, again, JavaScript!") :-)

Para saber mais:

O Tutorial Tomcat - Instalação e Configuração Básica, artigo mais popular em meu site pessoal desde 2003, foi mais uma vez atualizado na revisão nº 25, hoje. A principal atualização é passar a cobrir o Tomcat 6.0, que suporta as especificações mais recentes da plataforma Java EE 5.0 para web, Java Servlet 2.5 e JavaServer Pages (JSP) 2.1.

O tutorial ainda não foi testado no Tomcat 6, mas devido à sua compatibilidade retroativa com o Tomcat 5.5, não deve haver nenhum problema.

Ao atualizar o texto, foram feitas melhorias na organização e conteúdo dos tópicos de Introdução e Instalação do Tomcat.

Outras atualizações

Aproveitando o tópico, destaco dois outros artigos que foram atualizados. O primeiro é Idiomas - Dicionários e outros recursos para aprendizado e ensino, uma coletânea de referências úteis, principalmente para Inglês, também atualizado hoje.

Em tempo, dia 6 de maio foi atualizado o artigo sobre PMBOK e Gerenciamento de Projetos, incluindo agora uma figura que ilustra a dinâmica dos cinco grupos essenciais de processos de gerenciamento do Guia PMBOK.

« Página Anterior - Próxima Página »