O Guia Essencial do HTML 5

Este livro explica os novos e excitantes recursos do HTML5, além dos já reconhecidos JavaScript e CSS, de modo que você entenda como todo o conjunto funciona. Cada capítulo faz uma apresentação do aplicativo; detalha os requisitos básicos; e depois descreve os recursos relevantes do HTML5, CSS e JavaScript.

Mas um livro traduzido pela parceria  com Cláudio Rodrigues Pistilli.
A agradeço por mais esse caso de sucesso!

  • Paperback: 376 pages
  • Publisher: friendsofED; 1 edition (November 2, 2010)

Titulo em Inglês:
The Essential Guide to HTML5: Using Games to learn HTML5 and JavaScript

Titulo em Português:
O Guia Essencial do HTML 5 – Usando jogos para aprender HTML5 e JavaScript

Um roqueiro no além

Eu gosto de livros que agreguem de alguma forma a minha vida, sempre no sentido de melhorar.

Acabei de escutar o podcast da Rádio Boa Nova que nada mais é que uma rádio novela do livro um roqueiro no além.

Roqueiro famoso, surpreendido por morte prematura causada por drogas, vê-se diante de realidade inimaginada. Propagador da liberdade incondicional, submetido à lei de causa e efeito, viu-se preso à sepultura, durante longo período. Amparado por benfeitores, conheceu, no mundo espiritual, diversas situações em que se encontram espíritos ainda apegados aos prazeres da Terra. Seus depoimentos servirão de alerta para muitos pais, cujos filhos são órfãos de carinho e compreensão.

Com certeza esse livro me fez pensar ainda mais na lei de ação e reação. Vale a pena escutar ou ler o livro. Recomendo.

Quem quiser escutar os 5 capitulos dessa radio novela, pode baixar no 4shared e escutar no computador ou escutar direto pelo site da Rádio Boa Nova.

Kleber Rodrigo de Carvalho

SOA for Dummies 2nd IBM Limited Edition Mini eBook

Service Oriented Architecture For Dummies, 2nd IBM Limited Edition. Service Oriented Architecture (SOA) is the most important technology initiative facing businesses today. SOA is game changing, and early SOA successes make it clear that SOA is here to stay. This book introduces you to the basics of SOA in context with the real life experiences of seven companies. Seen through the varied business environments depicted in each of the case studies, we hope you will recognize that SOA is more than a bunch of new software products strung together to allow technology companies to have something else to sell. SOA represents a dramatic change in the relationship between business and IT. SOA makes technology a true business enabler and empowers business and technology leaders alike.

Bookmark it now.

Kleber Rodrigo de Carvalho

Studying zlinux with RedBooks

Lately I’ve been studying mainframe architecture because I’m responsible for production operations of an application and since August/2008 it is running over zLinux architecture. I’m listing below some useful source about zlinux. It’s in order by year.

Redbook – Achieving High Availability on Linux for System z with Linux-HA Release 2 – 2009

As Linux® on System z® becomes more prevalent and mainstream in the industry, the need for it to deliver higher levels of availability is also increasing. IBM® supports the Linux High Availability (HA) project (see http://www.linux-ha.org/) which provides high availability functions to the open source community. One component of the Linux HA project is a program known as Heartbeat. Heartbeat runs on every known Linux platform. Heartbeat is part of the framework of the Linux High Availability project.

Redbook – z/VM and Linux on IBM System z The Virtualization Cookbook for SLES 10 SP2 – 2008

This IBM Redbooks publication describes how to roll your own Linux virtual servers on IBM System z hardware under z/VM. This edition applies to Version 5, Release 4, Modification 0 of z/VM (product number 5741-A05) and Novell SUSE Linux Enterprise Server (SLES) Version 10, Service Pack 2 (SP2).

Redbook – Problem Determination for Linux on System z – 2008

This IBM Redbooks publication addresses some of the common problems that customers have experienced on the Linux® on System z™ platform. This book provides a problem determination methodology and tools to help the reader diagnose the problem in an easy-to-read self-help manual.

Redbook – z/VM and Linux Operations for z/OS System Programmers – 2008
This IBM Redbooks publication discusses z/VM and Linux operations from the perspective of the z/OS programmer or system programmer. Although other books have been written about many of these topics, this book gives enough information about each topic to describe z/VM and Linux on IBM System z operations to somebody who is new to both environments. This book is intended for z/OS programmers and system programmers who are transitioning to the z/VM and Linux on System z environments and who want a translation guide for assistance. We base this book on our experiences using System z10 Enterprise Edition, z/VM version 5.3 RSU 0701, and Novell SUSE Linux Enterprise Server (SLES) 10 on System z.

Redpaper – Sharing and maintaining Linux under z/VM – 2008

Large operating systems, such as z/OS , have, for several decades, taken advantage of shared file structures. The benefits of a shared file structure are reduced disk space, simplified maintenance, and simplified systems management. This IBM Redpaper describes how to create a Linux solution with shared file systems on IBM System z hardware (the mainframe) running under z/VM. It also describes a
maintenance system where the same Linux image exists on a test, maintenance and gold virtual servers.

Redpaper – A Shared WebSphere Application Server Installation for Linux on zSeries – 2005

This IBM Redpaper describes a process to enable sharing one WebSphere Application Server installation among many Linux guests running under z/VM.

Redbook – Linux on IBM eServer zSeries and S/390: Best Security Practices – 2004
This IBM Redbook discusses best security practices for running Linux as a z/VM guest on IBM eServer zSeries and S/390 machines. This publication is intended for system administrators and IT architects responsible for deploying secure Linux servers running under z/VM. We consider both z/VM and Linux security topics.

Redbook – DB2 for Linux on iSeries: Implementation Guide – 2004

This IBM Redbook discusses DB2 UDB for Linux on iSeries. We provide the installation and configuration steps for DB2 UDB for Linux on iSeries. We also present connectivity scenarios between OS/400 resources and Linux resources.

Redbook – WebSphere for Linux on iSeries: Implementation Guide – 2004

This IBM Redbook is about WebSphere Application Server V5.0.2 for Linux on iSeries. It begins with a brief discussion of WebSphere Application Server V5.0.2, then provides details about product positioning on the OS/400 versus Linux for iSeries platforms, and about the features included in various packaging options.

Redpaper – Linux on IBM eServer zSeries and S/390: z/VM Configuration for WebSphere Deployments – 20003

This tip details how to configure gcc on Linux for IBM eServer zSeries to act as a cross-compiler.

Redpapaper – Linux on IBM eServer zSeries and S/390: z/VM Configuration for WebSphere Deployments – 2003

In this Redpaper, we introduce a method to determine an efficient infrastructure for WebSphere deployment on Linux for zSeries. The infrastructure consists of LPARs running multiple Linux guests under VM. Each Linux guest runs WebSphere, which in turn runs Web applications. In this paper, we describe steps to configure z/VM Linux guests intended to run WebSphere applications. Specifically, we outline a method to calculate the memory required to deploy WebSphere applications, and describe how that memory should be allocated to the LPAR, z/VM, and Linux guests.

Redbook – Linux on IBM eServer zSeries and S/390: Application Development – 2002

This IBM Redbook describes application development for Linux on the IBM eServer zSeries platform. The target audience is application developers writing primarily in C/C++ and Java. The Linux development environment for zSeries is quite similar to the development environment on other platforms running Linux since the operating system services and development tools share a common code base. We note differences and optimizations specific to the zSeries platform where applicable.

Technote – Linux on IBM eServer zSeries: Configuring gcc as a cross-compiler – 2002

This tip details how to configure gcc on Linux for IBM eServer zSeries to act as a cross-compiler.
If you wanna add some new source above, leave me a comment. Thank you.

Kleber Rodrigo de Carvalho

Livro Linux Kernel in a Nutshell disponivél para download

Escrito por um líder do desenvolvimento e mantenedor do kernel do Linux, Kernel do Linux em poucas palavras (Tradução literal do livro Linux Kernel in a Nutshell) é uma abrangente visão, da construção e configuração do kernel do linux, uma critica tarefa para usuários e administradores do Linux.

Este livro pretende cobrir tudo que é necessário saber para construir, personalizar, instalar o kernel do Linux de maneira correta. Não é exigida experiência em programação para entender e usar este livro.

O Livro está disponível para download em formato PDF ou DocBook, o livro inteiro ou por capítulos. A inteira história do desenvolvimento do livro ( você também pode saber porque a primeira versão do livro estava com mais de 1000 página), pode ser feito o donwload no repositório git.

Você pode acessar o web site do livro, Linux Kernel in a Nutshell, escrito por Greg Kroah-Hartman, publicado pela O’Reilly.

Kleber Rodrigo de Carvalho

Linux Kernel in a Nutshell

Written by a leading developer and maintainer of the Linux kernel, Linux Kernel in a Nutshell is a comprehensive overview of kernel configuration and building, a critical task for Linux users and administrators.

This book is intended to cover everything that is needed to know in order to properly build, customize, and install the Linux kernel. No programming experience is needed to understand and use this book.

The book is available for download in either PDF or DocBook format for the entire book, or by the individual chapter. The entire history of the development of the book (you too can see why the first versions of the book were 1000 pages long) can be downloaded in a git repository.

You can access the web site for the book, Linux Kernel in a Nutshell, by Greg Kroah-Hartman, published by O’Reilly.

Kleber Rodrigo de Carvalho

Como se tornar um programador Java

Pessoal

Enquanto existem pessoas preocupadas com o fim do Java, existem outras querendo aprender Java.

Baseado no artigo que li há muito tempo atrás, sobre Quer ser um desenvolvedor Java, decidi aqui fazer uma receita mais atualizada para as pessoas se tornarem um programador Java. No artigo Quer ser um desenvolvedor Java o Hildebrando Furlan Neto fala sobre o item 1 – Faça uma faculdade de tecnologia, então aqui não quero discutir se você já trabalha com alguma linguagem de programação ou tem experiência com desenvolvimento de software, mas é importante o item 1 mencionado pelo Hildebrando. Quando eu iniciei meu curso técnico em processamento de dados em 1994, investi muito em lógica de programação, é isso me ajudou muito a aprender a linguagem C na época, quando entre na universidade as coisas realmente ficaram mais fáceis.

1. Lógica de Programação

Sendo assim recomendo fortemente para aqueles que nunca programaram, estudar essa seqüencia:

  • Lógica de Programação

Entender lógica de programação é muito importante. Neste caso não recomendo nenhum livro ou tutorial especifico, se concentre em procurar isso na Google, existem sempre ótimos tutoriais e livros disponíveis, tanto em inglês como em português. Recomendo livros e tutoriais bem recomendados, se for comprar livros, veja as recomendações dele, se for baixar alguns tutorial na internet, veja o que as pessoas acham dele. Numa rápida pesquisa aqui achei vários.

Encontrei o Curso Básico de Lógica de Programação, que parece ser um ótimo guia para lógica de programação.

2. Paradigma de linguagem de programação

  • Programação estrutura e Programação orientada a objetos

Entender esses 2 paradigmas de programação é muito importante. Hoje quando se compra um livro sobre Java, alguns abordam o mesmo assunto, tipo aprender Orientação a Objetos com Java junto. Como a minha primeira linguagem de programação foi o C, eu aprendi junto com o C o paradigma de programação estruturada. Sendo assim, se você quer se tornar um desenvolvedor Java, se concentre em programação orientado a objeto.

Abaixo as links do wikipedia em português:

Linguagem de programação
Programação estruturada
Linguagem orientada a objetos

Abaixo links do wikipedia em inglês, que parecer estar mais completo:

Programming language
Structured programming
Object-oriented programming

Bom, neste momento você tem tudo para poder investir em uma linguagem de programação, no caso o Java.

3. Java e OO

E importante você se concentrar em aprender Java, neste momento, embora haja uma forte demanda para que você pule os passos indo direto para JSP e Servlets.

Antes de você iniciar no mundo Java na Web, e imprescindível você conhecer muito bem a linguagem Java.

Então agora eu recomendo alguns livros para você, sobre Java:

Java: Como Programar da Deitel, que está na sexta edição em português, parece que domina o mercado nessa área de Java e OO para iniciar. Mas você pode escolher um livro sobre Java da sua preferência, mas pelo que tenho conversado com vários alunos, os profissionais sempre recomendam este livro. É muito importante, você sempre ao adquirir um livro ver a recomendação do livro, e também ver se o livro está desatualizado ou não. A ultima versão do Java How to Program (7th Edition), para quem quiser adquirir a versão em inglês.

Eu também recomendo o livro Core Java 2: Fundamentos – vol. 1, quando comecei em Java eu estudei por esses livros, tanto o volume 1 como o volume 2, mas isso foi por volta de 1997, e naquela época usei a versão em inglês mesmo. Em português eu encontrei apenas o Core Java Fundamentos Volume 1, que hoje se encontra na sétima edição, o original que encontrei na amazon está na oitava edição:

Core Java(TM), Volume I–Fundamentals (8th Edition)
Core Java(TM) 2, Volume II–Advanced Features (8th Edition)

Java em poucas palavras (In A Nutshell), parece ser também uma boa introdução, pelo menos quando pesquise na amazon, encontrei bons comentário deste livro.

Java In A Nutshell, 5th Edition (Paperback)

Um livro que está na moda, e todos falam bem é o Head First Java, 2nd Edition, por isso acho que esse livro vale a pena também pois tem boas indicações e comentários

A Caelum uma empresa de treinamento Java, além de oferecer um curso Java e Orientação a Objetos, oferece uma apostila, que é quase um livro, totalmente em português aqui e grátis, baixe a vontade.

Além disso, temos também na categoria Java e Orientação a Objetos, os cursos Introdução à Programação I e Introdução à Programação II disponibilizados no projeto JEDI, com apostila, apresentação, vídeo aula e exercícios, além de uma estrutura para tirar dúvidas de casa lição.. Ou seja, para você investir nisso, você pode ser inscrever no curso do JEDI, que é uma excelente iniciativa na carreira Java, e também grátis.

Depois do tópico Java e Orientação a Objeto, você pode estudar Estruturas de Dados também, que é recomendável neste momento.

4. Estruturas de Dados

Novamente vou fazer propaganda da Caelum e do JEDI.

A Caelum disponibiliza o curso Algoritmos e Estrutura de Dados em Java, com apostila em português disponível aqui.

O JEDI também disponibiliza um curso de Estruturas de Dados com apostila, apresentação, vídeo aula e exercícios também, que é outra fonte de estuda para estudar sobre Estruturas de Dados grátis também.

Vocês perceberam que avancand0 no estudo de Java, que existem segmentos diferentes para desenvolver Software em Java. Aplicações standalone ou aplicações batch, ou seja programa sem interface gráficas. Esse programas serão feitos por você muitas vezes, quando vocês estiverem aprendendo a linguagem Java, e é claro existem aplicações no mundo real para este tipo de aplicação.

5. Design Pattern

Depois que você já está bem afiado em OO, Java e estrutura de dados chegou a hora de estudar Design Pattern. Perceba que neste momento você deve estudar Java Design Pattern e não JEE Design Pattern.

Para este o estudo de Java Design Pattern eu indico os seguintes livros:

Design Patterns: Elements of Reusable Object-Oriented Software, este livro é o mais famoso na area de design pattern, conhecido pelo time de escritores Gang of four (Erich Gamma, Richard Helm, Ralph Johnson, John M. Vlissides). O exemplos desse livro estão em C++, mas isso não será um problema para quem já conhece o java. Este mesmo livro tem uma versão em português intitulado com o Padrões de Projeto.

Outro livro muito recomedado para Design Patterns é o Head First Design Patterns.

Temos também o Padrões de Projeto em Java e sua versão em inglês Design Patterns in Java, para quem quer ver os exemplos em códigos Java.

Para quem não quer gastar dinheiro o livro Java Design Patterns , está disponibilizado aqui, para qualquer que queira estudar por ele.

6. AWT/Swing/SWT

AWT/Swing/SWT são APIs para desenvolver programar com interface gráfica em Java. Eu Já falei isso aqui no blog, neste momento vocês estarão aprendendo a construir aplicações no estilo Visual Basic e Delphi. Lembrando que nestes livros sobre Java para iniciante, abordam apenas o tópicos sobre interface gráfica de uma maneira geral. Se você quer se especializar em desenvolver softwares com interfaces gráficas em Java, recomendo comprar um livro somente sobre assunto como AWT, Swing ou SWT.

7. Java na Web

Esse é o assunto alvo para muitos desenvolvedores. Muito estudam tanto para chegar aqui, e finalmente desenvolver aplicações Java para a Web.

Mais é muito inportante neste momento inicial você se concentrarem em 2 tópicos.

7.1 HTML

HTML é a linguagem de marcação de texto que os nossos browser como o Firefox e IE (Internet Explorer) entendem. Tudo o que você visualiza dentro de um browser, foi desenvolvido e escrito usando HTML. Então HTML é essencial neste momento. Se concentre em estudar HTML através de livros com boas recomendações e atualizados.

Já vi muitas pessoas estudando feito desesperado JSP e Servlets API para construir aplicações Web em Java sem a mínima noção do que é HTML, então recomendo fortemente concentrar esforços em HTML antes de ir para JSP e Servlets.

7.2 JSP e Servlets

Finalmente você chegou no momento para desenvolver aplicações Java para Web. Por desespero você não ve a hora de aprender Struts, que é o framework para desenvolvimento Web mais ultilizado do mercado (muitas oportunidades de empregos pedem Struts). Mas antes de partir para o Struts, pense em estudar bem JSP e Servlets.

JSP e Servlets são APIs para desenvolvimento em Java, por exemplo o framework Struts usa muito a API Servlets.

JSP ( Java Server Pages) é a tecnologia de visualização no mundo Java. Podemos comparar inicialmente JSP com PHP. Em Java diferente do PHP, onde só usamos scripts dentro de páginas PHP, podemos fazer a mesma coisa com o JSP, mas devido as recomendações de boas práticas usamos o JSP somente para a camada de visualização do nosso sistema.

Neste momento recomendo você estudar muito JSP e Servlets. Por isso fica a vontade em escolher um bom livro que apenas aborde JSP e servlets.

Eu estudei JSP e Servlets por esses:

Core Servlets and Javaserver Pages: Core Technologies, Vol. 1 (2nd Edition)

Core Servlets and Javaserver Pages: Advanced Technologies, Vol. 2 (2nd Edition)

Core Servlets e Java Server Pages – Vol. 1 existe em português também, por isso também recomendo.

O problema desse livros é que eles são um pouco velho (principalemente as versões em português), e a tecnologia muda muito rápido, por isso eu recomendo o Murach’s Java Servlets and JSP, 2nd Edition, que é novo e parece ser bem interessante também. Achei um interessante discussão sobre esse livro no the server side. No mesmo the server side encontrei um livro grátis, em inglês com o titulo de Servlets and JavaServer Pages: The J2EE Technology Web Tier.

Na próxima parte deste artigo vou escrever o que vem depois de JSP e Servlets.

Last update: March, 18, 2008

Kleber Rodrigo de Carvalho

Struts 2.0.8 GA release available

A apache liberou a versão 2.0.8 GA (General Availability) do conhecido framework struts.
O apache struts 2 é um elegante, extensível framework para criar aplicações web java mais rápidas ( ou seja, sem ficar “inventando a roda”). O framework é projetado para simplificar o desenvolvimento de forma completa, desde do build até o deploy e também na manutenção de aplicações.

Mas o Struts 2 não usa nada do nosso velho conhecido Struts 1, pois a versão 2 é baseado no WebWork 2, ou seja o struts 2 nada mais é que a continuação do WebWork 2. O Struts 2 só tem nome de Struts (por que o pessoal aproveito o fama do struts, enquanto WebWork já era um framework muito bom, mas ainda não tinha caido no gosto dos developers popularmente. Assim depois dos trabalhos independentes por anos, a comunidade WebWork e Struts se juntaram para criar o Struts 2.

Mas se você tem pressa em aprender, e não quer ficar pulando de tutorial a tutorial, a infoq disponibilizou o Starting Struts 2. Esse minibook cobre diversos aspectos sobre o struts 2 e merece ser lido.

Kleber Rodrigo de Carvalho