IT Manager Game 2.0

Não sou muito fã de jogar, mas como este tinha uma abordagem diferente, resolvi experimentar pra ver do que se tratava…

O jogo em si é uma simulação de um departamento de infra-estrutura/redes, no qual temos que controlar tudo relacionado a: manter o bom funcionamento dos computadores, dos servidores, decidir quais modelos de máquinas serão compradas, contratar e demitir funcionários, estudar e etc.. Ainda aparecem alguns desafios durante o jogo, que são outros pequenos jogos…

O jogo em si é bem simples, tudo em Macromedia Flash, desenvolvido pela (e para a) Intel, mas a jogabilidade é bem legal.. eu sinceramente acho que vale a pena brincar um pouco :).

O melhor é que você pode “salvar” o jogo (a cada “virtual day”) e continuar jogando posteriormente, e nada fica instalado na sua maquina, fica tudo online…

Os sites:
Em inglês: http://itmg2.intel.com/eng
Em português: http://itmg2.intel.com/por

“Governo estuda desoneração para empresas do setor de TI”

Pessoal,

Essa é uma das melhores noticias dos últimos tempos, já pensou se acontece mesmo?

TI Inside:
http://www.tiinside.com.br/Filtro.asp?C=265&ID=71072

POG - Programação Orientada a Gambiarras

Vamos falar hoje sobre um “paradigma de programação” nacionalmente utilizado, bastante difundido. Me atreveria a dizer que não somente na área de TI, mas como um todo os processos empresariais de um modo geral estão utilizando este modelo ou sendo afetados diretamente por esse paradigma ou por um derivado do mesmo :).

É um paradigma bastante interessante, pois tem uma tendência forte de podermos trabalhar utilizando POG e outras diversas metodologias e afins.

Link para a especificação completa do POG: http://desciclo.pedia.ws/wiki/POG :mrgreen:

Fim dos coolers ?!?

Estava eu aqui no computador, pensando no barulho que o cooler do meu cpu está fazendo, quando me deparei com uma noticia de uma nova tecnologia que pode substituir os nossos conhecidos coolers!

Seria uma boa hein… economia de $$ e de ouvidos!

http://tecnologia.terra.com.br/interna/0,,OI1430420-EI4801,00.html

Abraços.

DDL Triggers

Triggers todos conhecemos, certo ? ɉ um negocinho (quase uma store procedure :P) que é executado automaticamente após alguma alteração nos dados de uma tabela ou view, maravilha! Esses Triggers são DML (Data Manipulation Language) - são disparados quando acontece um dos eventos: INSERT, UPDATE ou DELETE.

Hoje vamos falar um pouco sobre uma novidade que veio com o MS SQL Server 2005: DDL (Data Definition Language) Triggers. A diferença entre os Triggers DML (que conhecemos), é que o tipo do evento é diferente, para os “DLL Triggers” serem disparados precisamos de eventos DLL :). Quais seriam eles ?? CREATE, DROP, ALTER, GRANT, DENY e REVOKE.

Falando na prática… acho que é um recurso bastante interessante quando pensamos em registro de alterações de base ou até auditorias.

Bom .. vamos a um exemplo:

- O primeiro passo é criarmos a tabela onde iremos armazenar as informações das alterações da base de dados:

CREATE TABLE DatabaseLogs
(
LogId INT PRIMARY KEY IDENTITY(1,1)
, LogDetails XML NOT NULL
)


- Agora criamos o DLL Trigger:

CREATE TRIGGER LoggingDatabase
ON DATABASE
FOR CREATE_TABLE, DROP_TABLE AS
BEGIN

INSERT DatabaseLogs (LogDetails)
SELECT EVENTDATA()

END

- Tudo pronto para o grande teste:

–CRIANDO UMA TABELA QUALQUER
CREATE TABLE TestingTrigger (TestId INT)
–EXCLUINDO UMA TABELA QUALQUER
DROP TABLE TestingTrigger

- Agora, vamos analisar a tabela €œDatabaseLogs:

SELECT * FROM DatabaseLogs




Clicando nos detalhes de cada linha que foi gerada, podemos visualizar o seguinte:


1-)




2-)



Bacana ?? Eu achei… bem prático e simples.


Mais informações ?
http://msdn2.microsoft.com/en-us/library/ms175941.aspx

Até…

“Empresas de TI procuram profissionais, mas não encontram perfil desejado.”

E parece que a cada dia que passa a situação vai piorando…

Materia da TI Inside:
http://www.tiinside.com.br/outsourcing/Filtro.asp?C=26&ID=70613

Castle ActiveRecord

Vou começar escrevendo sobre um projeto open source, com o qual muito me surpreendi durante o ano passado. Conheci o projeto de forma inusitada, o certo é que somente depois de alguma insistência de um amigo meu (com o qual trabalhei até janeiro deste ano), com até um pouco de receio, resolvi verificar mais a fundo esse tal “Castle ActiveRecord”.

No inicio achei que a idéia de não precisar de procedures ou t-sql e utilizar o HQL (Hibernate Query Language) não funcionaria.. por causa de performance ou algo do tipo - na realidade tive um pouco de receio. Mas como fica difícil agente descobrir como isso tudo funciona sem utilizar na prática, resolvemos tocar um projeto da empresa utilizando o Castle ActiveRecord pra ver no que ia dar.

O resultado foi um ganho de produtividade impressionante. Tarefas totalmente manuais e repetitivas que (pelo histórico) que poderiam nos tomar até uma semana, foram totalmente resolvidas em praticamente dois dias. Tirando que evitamos o uso de Copy/Paste que as vezes acabamos utilizando nesse tipo de tarefa e que normalmente acaba deixando algum bug para trás.

O nosso maior ganho foi pelo seguinte, falando somente do básico (resumidamente) antes tí­nhamos que criar as tabelas, criar as procedures básicas (CRUD - Create, Retrieve, Update, Delete), ai cría¡vamos os entities, a camada de acesso a dados - que chamava as procedures, e uma classe ou outra (dependendo de cada caso) que iriam ser utilizadas pela interface para acessar mais diretamente os objetos de acesso ao banco de dados e etc..

Nesse meio tempo tí­nhamos total repetição de código e desperdicio de tempo. Tivemos um projeto que só nessa brincadeira: tabelas, procedures, camada de acesso a dados, camada de negocio, etc… nós gastamos duas semanas inteiras, isso que não tinha validações, nem regras de negocio propriamente ditas, não tinha nada a não ser o básico mesmo.

Com o Castle ActiveRecord bastou criar as classes Entities do projeto, mapear nas propriedades de cada objeto utilizando algumas tags muito simples, para “configurarmos” o que era cada propriedade (a qual coluna na tabela pertencia por exemplo) e adicionar os métodos que já vem praticamente prontos. Após isso, o próprio AR possui um método que gera um script para gerar as tabelas por exemplo no banco Sql Server - não me lembro ao certo agora se é possivel que seja gerado script de outros bancos também. O fato é: basta rodar o script para gerar as tabelas e… compilar o projeto e num Console App para testar, basta instanciar o objeto e visualizar os métodos: save, update, delete … find, estão todos lá… tudo pronto para testarmos os objetos e utilizarmos eles na nossa aplicação.

Caso você precise criar algum método diferente, fazer alguma consulta mais refinada, o que eu tive de necessidade até o presente momento foi resolvido facilmente utilizando o proprio HQL e as funcionalidades do AR. É um pouco mais difí­cil no começo montar alguns relacionamentos tabela x tabela e objeto x objeto.. dependendo da complexidade do sistema, inicialmente pode parecer complicado como você vai montar isso. Mas com a pratica e alguma experiência você verá que não é tão complicado assim.

Além disso podemos contar com um fórum em inglês e agora também um em português no portal do castle project, para tirar duvidas, reportar algum tipo de bug e etc…

O Castle Project possui outros projetos que acredito que vale a pena investigarmos mais a fundo com o MonoRail ou o Windsor, mas eu pessoalmente utilizei somente o ActiveRecord, que de um modo geral mudou minha forma em como desenvolver sistemas - sei que vai acabar acontecendo mais dia menos dia, mas eu pessoalmente não consigo imaginar um projeto em que o AR se encaixe e que eu não o utilize :).

Utilizando o AR é possí­vel gastarmos tempo com o que de fato interessa… Além de ser extremamente fácil durante o projeto, alterar o banco de dados, de Sql server 2000 para My Sql por exemplo.

Bom .. acho que é isso, creio que se você não conhece ou nunca utilizou ActiveRecord, vale a pena investigar um pouco mais sobre esse projeto.

O Castle project é criação de um Brasileiro e é algo que está começando a aparecer no mercado… abaixo alguns links interessantes:

Site oficial do projeto: http://www.castleproject.org
O Castle ActiveRecord:
http://www.castleproject.org/activerecord/index.html
Link para os foruns:
http://www.castleproject.org/community/forum.html
Artigo sobre o ActiveRecord:
http://geekswithblogs.net/hammett/articles/76697.aspx
Castle na InfoWorld:
http://www.infoworld.com/article/06/11/21/HNcastleproject_1.html
NHibernate for .NET:
http://www.hibernate.org/
O HQL:
http://www.hibernate.org/hib_docs/reference/en/html/queryhql.html

Até!!

Começando…

Bom, este é meu primeiro post, finalmente estou iniciando o blog.

Esse blog é uma idéia que vinha desde o ano passado e que agora espero ter tempo para tocar o projeto adiante…

Procurarei escrever aqui basicamente sobre tecnologia, tentando focar principalmente na área em que atuo: desenvolvimento de sistemas.

Abraços e até !

blog luisph © 2007-2008 by Luís Fernandes.
Powered by Wordpress | Theme designed by WPDesigner