Arquivo por ano 2010

Nova sede da Caelum no Rio de Janeiro

Postado em 15. out, 2010 por .

4

Depois de um mês de reformas a nova casa da Caelum RJ está pronta! Estamos em um novo prédio com um conjunto de salas maior e totalmente reformado. Nosso novo endereço no RJ é Rua do Ouvidor 50, Sobreloja 200 – na esquina com a Rua Primeiro de Março. Exibir mapa ampliado O novo local more »

Continue Lendo

Prática: melhore a qualidade do código para evitar uma enchente de bugs

Postado em 14. out, 2010 por .

3

Sintoma: o número de bugs novos que são abertos é maior do que o número de bugs fechados a cada iteração. O backlog é dominado por bugs e cada vez menos funções novas são adicionadas ao projeto. Ação: Por muito tempo acreditou-se que aumentando o número de desenvolvedores aumentaria a produtividade de uma equipe em more »

Continue Lendo

Em busca do nome adequado: métodos, variáveis e classes

Postado em 08. out, 2010 por .

15

É muito comum após alguns dias de trabalho em um projeto perceber que as escolhas de nomes de classes e métodos não condizem com o que cada um representa. Isso acontece pois, com o passar do tempo, aumenta o nosso conhecimento sobre o domínio do problema. Também é natural surgir o desejo de mudança: a more »

Continue Lendo

JavaEE 6: contexto assíncrono das Servlets para o Ajax push

Postado em 27. set, 2010 por .

10

Desenvolvedores de backend que precisam de muita escalabilidade já conhecem os truques de IO não-blocante há muito tempo: selector, poll e epoll no Linux, kqueue no MacOS e BSD e I/O Completion Ports no Windows. A palestra do Renato Lucindo no QConSP abordava questões e soluções que podiam ser implementadas com essas abordagens. Curiosamente são more »

Continue Lendo

QConSP 2010: como foi o principal evento de arquitetos e desenvolvedores no Brasil

Postado em 17. set, 2010 por .

13

Esse último fim de semana foi bastante agitado para a comunidade de desenvolvedores brasileiros: o QCon, principal evento de arquitetos e desenvolvedores, finalmente desembarcou no Brasil e aconteceu na cidade de São Paulo no centro de eventos FeComércio. O evento foi organizado pela Caelum e pelo InfoQ Brasil, e ultrapassou até mesmo o tamanho da more »

Continue Lendo

Começando com parâmetros e configurações da JVM

Começando com parâmetros e configurações da JVM

Postado em 09. set, 2010 por .

10

Quando rodamos nossas aplicações na JVM não sabemos o que acontece internamente dentro dela. Questões como o Garbage Collector, JIT e alocação de memória heap passam desapercebidas por um bom motivo: não devemos nos preocupar (muito) com elas. Mesmo sem ter um controle direto sobre as diferentes JVMs existentes, muitas vezes precisamos customizar e fazer more »

Continue Lendo

Rails 3

Lançado Rails 3 – e apostila atualizada para download

Postado em 02. set, 2010 por .

13

Depois de dois anos de trabalho da junção do Merb com o Rails, saiu nesse fim de semana a versão final do Rails 3. E, para comemorar, a Caelum acaba de liberar a apostila atualizada do curso RR-71 Ruby On Rails 3 para download. Entre as principais novidades, temos a nova API de query do more »

Continue Lendo

Um servidor, um banco

Um produto para muitos clientes: implementando multitenancy

Postado em 23. ago, 2010 por .

6

São diversos as aplicações web disponíveis, como quadros eletrônicos, sistemas de tracking, email e aplicações para empresas, ou até mesmo controle de clientes e vendas. Eles até ganharam um pomposo nome dentro do cloud computing: Software as a Service (SAAS). O que essas aplicações possuem em comum? Todas elas atendem diversos clientes sem que um more »

Continue Lendo

ConcurrentModificationException e os fail-fast iterators

Postado em 18. ago, 2010 por .

12

A java.util.ConcurrentModificationException costuma surpreender a muitos: como uma exception com esse nome pode aparecer mesmo em uma aplicação single threaded, que não envolve concorrência alguma no acesso dessa coleção? Para entender melhor, vale relembrar que as coleções muito antigas, como Vector e Hashtable, são thread safe, implementado através do uso do synchronized em seus métodos more »

Continue Lendo

As 7 práticas para um site otimizado

Postado em 29. jul, 2010 por .

54

Todo mundo gosta de sites rápidos. Seus primos não sabem dizer se você tem um arquitetura escalável, se seu banco NoSQL é mais robusto ou se é melhor usar Web Services SOAP ou REST. Mas eles sabem dizer duas informações com precisão: se seu site é bonito e se ele é rápido. Performance, medida pelo more »

Continue Lendo

Possibilidades de design no uso do seu Generic DAO

Postado em 26. jul, 2010 por .

19

Muitas vezes, quando estamos criando nosso sistema temos a tentação de criar o GenericDAO para não ter que ficar repetindo as operações CRUD e listagens. O maior problema com o GenericDAO é que não necessariamente todas as operações fazem sentido para uma determinada classe. Daí o que fazer se, por exemplo, não faz sentido excluir more »

Continue Lendo

Então você quer ser um arquiteto Java?

Postado em 21. jul, 2010 por .

36

Durante o atual processo de revisão do livro de Arquitetura e Design de Software, discussões apareceram sobre o termo arquiteto. Antes de definir o que faz um arquiteto, há o termo arquitetura. O que é a arquitetura de uma aplicação? Uma pergunta difícil de responder. Entre as definições mais antigas, Roy Fielding possui um bom more »

Continue Lendo

Arredondamento no Java: do double ao BigDecimal

Postado em 15. jul, 2010 por .

16

É fácil se deparar com as limitações do double no Java e na maioria das outras linguagens: quando vamos trabalhar com dinheiro notamos que as contas não estão saindo exatamente como esperávamos: O resultado é um estranho 0.30000000000000004, que pode acarretar em problemas graves dependendo da utilização e arrendondamento aplicado depois nesse número. O problema more »

Continue Lendo

Lista de discussão de um projeto/produto

Prática ágil: facilite a comunicação interna

Postado em 13. jul, 2010 por .

7

Sintoma: durante o processo de desenvolvimento de uma funcionalidade, a equipe se direciona ao Product Owner ou cliente para tirar dúvidas, mas o mesmo se encontra frequentemente ocupado e não pode responder. Quando o PO está livre, a equipe está concentrada em outra tarefa. Ação: crie uma lista de discussão envolvendo todos os interessados no more »

Continue Lendo

Evento CaelumDay Brasília

Evento CaelumDay Brasília

Postado em 08. jul, 2010 por .

0

Dia 17 de Julho acontece o evento CaelumDay Brasília. É o primeiro evento da Caelum realizado na capital federal, após a abertura da unidade na cidade no fim do ano passado. Entre as palestras, Guilherme Silveira, criador do Restfluie e CTO da Caelum, apresentará o keynote “Arquiteturas escaláveis e REST” e Rails 3. Guilherme Moreira, more »

Continue Lendo