Aprenda inglês com podcasts

1 09 2009

Encontrei alguns sites que podem servir como ferramentas auxiliares no aprendizado da linguagem:

São dois professores americanos, que discutem vários assuntos e dicas de inglês. São arquivos MP3 de 45 minutos, e eles falando o tempo inteiro. Assim você não precisa ficar gravando rádios online.

Cada episódio é bem curto, e fala-se sobre uma palavra. Algo como um dicionário audível.

Mantido por um casal de americanos que vivem no estado de Massachusetts. Este casal fala sobre o que eles acham de como é viver em Massachusetts, falando sobre todos os assuntos, desde lanchonetes a shoppings, mas também de outros assuntos como videogames, programas de televisão americanos, e uma infinitude de assuntos. Este podcast não é criado especificamente para aprender inglês, por isso ele tem um atrativo a mais: eles falam o inglês comum do dia-a-dia, sem “facilitar” para as pessoas aprenderem esta ou aquela expressão. Às vezes pode parecer meio sem graça alguns assuntos, mas no geral ele é muito bom para aprender as expressões atuais do inglês, e os assuntos em evidência nos Estados Unidos.

Bons estudos a todos.

[]‘s





Layer e Tier são a mesma coisa?

15 08 2008

Em grande parte dos cursos e das palestras técnicas que ministro ou nos trabalhos de mentoring que executo, surge a questão: Layer e Tier é a mesma coisa?

E aí cabe a quem vos fala, eu mesmo (rssrs), explicar e exemplificar os conceitos e diferenças dos termos.

Por isto,  havia inserido o tema em minha lista de asssuntos à blogar, no entanto, hoje encontrei um bom post do Márcio d´Ávila sobre o mesmo (não é jaba, apesar de termos o mesmo sobrenome! Putz, acho que até podemos ser parentes… hehehe) e gostaria de compartilhá-lo com vocês (até parece que muita gente lê o que eu escrevo, além é claro da mãe, pai, irmãos e alguns amigos… rsrsrsrs).

No post, além do Márcio definir muito bem a questão ainda de quebra fez uma boa compilação de vários materiais a respeito do assunto.

Portanto, leitura obrigatória!

[]´s e divirtam-se!





Rails Summit Latin America. Aí vamos nós!

9 08 2008

Rails Summit Latin America

Este não dá para perder!!!

E por isto a Sírius já fez a inscrição de todos os seus consultores. Vejo vocês lá!

E para esquentar os motores, vejam a lista de blogs, sites e projetos open source brasileiros de Ruby no blog do Akita.





Mais uma Sprint

29 07 2008

A área de Arquitetura da CVC sobrevive a mais uma sprint! E mais uma vez com a meta da sprint alcançada! Sucesso total!

Pode soar engraçado mas o momento que mais gosto na sprint é a reunião de Sprint Retrospective.

Estas reuniões são show!

Por dois motivos: compartilhamos o sucesso obtido na sprint e lavamos a roupa suja (o problema é que o Leandro sempre sai chorando, no caso, de tanto rir do Morais com sua cara de choro)…

Como é bom lavar a “roupa suja” e podermos dizer o que, em nosso ponto de vista, está errado e pode ser melhorado.

Mas principalmente, como é bom participar e atuar na busca e aplicação de soluções para corrigir estes desvios.

Resumindo: puro crescimento!

E a sensação de dever cumprido com qualidade, transparência e com a obtenção do resultado esperado pelo nosso PO.

Valeu galera! Que venha a próxima!





Java – Visão Geral

23 07 2008

Introdução/Histórico

Em 1990 um grupo liderado por James Gosling e outros desenvolvedores da Sun MicrosSystems iniciou o desenvolvimento de uma linguagem, independente de plataforma, que atendesse vários dispositivos eletrônicos como aparelhos de microoondas, video-cassetes e etc. Batizaram essa linguagem inicialmente de OAK, porém já havia uma linguangem com esse nome e foram obrigados a escolher um outro, daí Java.

O que é Java?

Basicamente e de forma bem simplista, é um conjunto formado por:

  • Uma linguagem de alto nível para desenvolvimento orientado a objetos;
  • Um pré-compilador(gerador de bytecodes) de código fonte;
  • Uma máquina Virtual(JVM) que interpreta o código pré-compilado para uma plataforma específica.

Principais Características

  • Orientação à objetos;
  • Portabilidade, pois o mesmo bytecode pode ser interpretado em qualquer plataforma;
  • Grande número de bibliotecas disponibilizadas através da Core API.

Entendendo sobre as versões do Java

Há um padrão de nomenclatura adotado para definir as versões do java, veja: 1.2.3a-000

Onde:

  • 1 – indica a versão base.
  • 2 – indica mudanças de biblioteca.
  • 3 – indica bug-fixes, ou seja, não ocorre mudança de bibliotecas. A partir do Java 2 a itenção é ter uma versão de bug-fixes a cada trimestre.
  • a – em alguns poucos casos surgiram versões com uma letra no final. Isso indica uma versão que foi lançada para corrigir um bug de segurança.
  • 000 – a partir da versão do Java 2, a letrinha no final foi substituida por três números, mas significam a mesma coisa que o “a”.

Histórico

  • 1995: Versão 1.0 – 8 pacotes e 212 classes
    • Criação do AWT, primeira biblioteca de criação de interfaces gráfica (o resultado visual depende de bibliotecas gráficas da plataforma);
  • 1997: Versão 1.1 – 23 pacotes e 504 classes
    • Melhora na manipulação de eventos, inner classes e JVM;
    • Suporte à Swing (biblioteca gráfica que o resultado visual não depende de plataforma)
  • 1999: Versão 1.2 (Java 2) – 59 pacotes e 1509 classes
    • Criação do primeiro Kit de Desenvolvimento, chamado SDK
    • Incusão do Swing no core api
    • Criação da Collections API;
  • 2000: Versão 1.3 – 76 pacotes e 1842 classes
    • Melhoria de performance com a criação da Hotspot para JVM.
  • 2002: Version 1.4 – 135 pacotes e 2991 classes
    • Melhorias na IO API
    • Suporte a XML
  • 2004: Versão 5.0
    • Início mais rápido e melhor uso de memória da JVM
    • Alterações na linguagem(generics, ehanced for, varargs, autoboxing, annotations)
    • Melhoria nas funcionalidades de multithreading
  • 2006: Versão 6.0
    • Melhorias na performance
    • Suporte a Scripting
    • JDBC 4.0 Annotations
    • Ferramentas de monitoramento e gerenciamento

Definições: JRE, JDK, JEE, JSDK, JVM, JCP, API, etc

  • Veja as definições destes anacônios aqui!

Estrutura de Programação

A estrutura de programação composta basicamente por:

  • um arquivo contendo um código fonte que deve ser salvo com a extensão .java;
  • um pré-compilador que transformará esse arquivo em um bytecode;
  • uma JVM que é um interpretador do bytecode para uma plataforma específica.

Ferramentas de Programação (Linha de comando e IDE’s)

O JDK vem com varios utilitários para linha de comando, exemplo:

  • javac – compilador padrão;
  • java – executor dos códigos pré-compilados;
  • javadoc – gerador de documentação.

Existem ainda IDE´s,  ambientes integrados, que disponibilizam de forma gráfica os componentes de linha de comando. Esta interface visual proporciona agilidade e ganho de produtividade, no entanto recomendo para quem está começando ficar na linha de comando até adiquirir familiaridade com a linguagem e saber os detalhes básicos da mesma. Dentre as IDE’s mais utilizadas atualmente, posso citar: Eclipse, NetBeans e JDeveloper.

Instalação e Configuração

Existe uma instalação específica para cada plataforma (Windows, Linux, Mac, etc).

É necessário configurar algumas variáveis de ambiente (path, classpath) para iniciar o desenvolvimento de aplicações.





Fundamentos da Linguagem Java

23 07 2008

Nem todos sabem mas, desde agosto/2007, eu e o Leandro Silva estamos, dentre outras coisas, atuando como mentores JavaEE na CVC Turismo e durante o primeiro ciclo deste processo nossos mentorados (Leonardo Luz, Fábio Morais e Valdir Emmerick) produziram ótimos materiais sobre fundamentos da linguagem Java e gostaria de compartilhar com vocês uma pequena compilação de tudo isto.

Esta compilação será divida em 4 posts:

  1. Visão GeralIntrodução, histórico, definições e conceitos gerais, versões e estrutura de programação;
  2. Fundamentos da LinguagemFundamentos básicos da linguagem;
  3. Aplicando OOParalelo entre os conceitos de OO e os recursos da linguagem Java utilizados para implementar estes conceitos;
  4. Organização do CódigoConceitos sobre organização e convenções de código, visibilidade e modificadores de acesso, empacotamento, anotações, nested class, etc;

Veja também alguns sites, tutoriais e referências com mais detalhes sobre os assuntos :

Divritam-se e boa leitura!





Você faz o que gosta?

1 07 2008

Há alguns dias atrás recebi um material de um grande amigo por e-mail, sobre um discurso que o Steve Jobs fez em 2005 na universidade de Stanford para os formandos. Sei que muitas pessoas já tiveram acesso a este este material mas fica aí a dica e as referências:

Leia a traduçao do discurso ou a transcrição em inglês ou então assista ao vídeo e me diga:

Você descobriu o que quer fazer?

E o mais importante, você gosta do que faz?








Seguir

Obtenha todo post novo entregue na sua caixa de entrada.