Arquivo pela Tag: Ruby

Há bom aprendizado em cursos online?

Postado em 22. set, 2011 por .

16

Ainda há uma certa desconfiança quando se fala em ensino a distância. O que poderia torná-lo uma alternativa viável ao presencial? Há 7 anos tenho o privilégio de trabalhar com a equipe da Caelum, buscando potencializar o aprendizado em uma sala de aula, trazendo a experiência do desenvolvimento. Questões de didática, colaboração com alunos, entre more »

Continue Lendo

http://www.flickr.com/photos/fxtreme/235948470/

Scala: os cuidados com encapsulamento

Postado em 26. jul, 2011 por .

5

Um dos pontos difíceis de lidar em qualquer sistema está ligado com quebra de encapsulamento. Em Java, uma vez que o padrão de uma variável membro permite que ela seja acessada por fora do objeto, protegemos os dados através do modificador private e um getter: Enquanto a criação de getters é um padrão amplamente adotado, more »

Continue Lendo

Criando novas estratégias com OmniAuth

Postado em 15. jul, 2011 por .

3

Diversos sistemas espalhados pela web hoje tem seu login facilitado através de um outro sistema que o usúario utilize, como Facebook e Twitter. O Agendatech é um exemplo onde fazemos o login através da conta de Twitter do usuário. O protocolo utilizado para isso é o OAuth, que possui uma extensa documentação. Para facilitar o more »

Continue Lendo

Começando com o cálculo lambda e a programação funcional

Postado em 18. abr, 2011 por .

12

Na Caelum há muitos interessados e entusiastas da programação funcional pura, e resolvi ler o Structure and Interpretation of Computer Programs, clássico curso introdutório do MIT, por indicação do Rafael Ferreira, Renato Lucindo, Pedro Matiello e outros amigos. O livro é muito interessante para quem não conhece nenhum dialeto LISP, como eu. Mesmo se você more »

Continue Lendo

Perdendo ou ganhando tempo com testes de unidade

Postado em 10. dez, 2010 por .

17

Durante as aulas e palestras sobre TDD e testes de software é bem comum ouvir perguntas relativas a “o que deve ser testado e o que não precisa ser testado”. Geralmente os exemplos inicials que encontramos na literatura sobre TDD são muito simplistas, nos levando a crer que devemos testar todo e qualquer método de more »

Continue Lendo

5 dicas simples de escalabilidade com Ruby

Postado em 08. dez, 2010 por .

4

Escrever aplicações Ruby e Rails, justamente pela alta produtividade dessa plataforma, permite a criação e implantação de um novo projeto em um curto espaço de tempo. Colocar o projeto rapidamente em produção para receber feedback dos clientes faz parte da cultura ágil. Mas e se a aplicação atingir um público maior que o esperado inicialmente? more »

Continue Lendo

Instalando sua aplicação Ruby no cloud do Google (GAE)

Postado em 03. nov, 2010 por .

8

É cada vez mais comum ouvirmos sobre instalação de nossas aplicações em um servidor nas nuvens. Boa parte da comunidade Ruby já está acostumada a utilizar o Amazon EC2 através do Heroku, mas pouco se fala sobre a instalação de nossos aplicações no cloud do Google, o Google App Engine (GAE). Embora o GAE não 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

Compondo seu comportamento: herança, Chain of Responsibility e Interceptors

Postado em 28. jun, 2010 por .

12

São diversos os momentos em que temos a tentação de usar herança para implementar funcionalidades de maneira rápida. Um exemplo simples é o polêmico caso de Properties e Hashtable em Java. Alguns padrões também costumam ser implementados através de herança são cadeias de responsabilidade, decorators, template method, filtros/interceptadores, entre outros. O exemplo a seguir mostra more »

Continue Lendo

Escalando sistemas com soluções NoSQL

Postado em 07. jun, 2010 por .

10

Um dos grandes desafios enfrentados no dia a dia do desenvolvedor eficaz é o de cumprir requisitos não-funcionais de uma aplicação, principalmente os relacionados a performance e escalabilidade. Uma das alternativas mais conhecidas para escalar horizontalmente é a de dividir as tarefas que não necessitam de retorno imediato ao cliente em processos batch. Para tanto, more »

Continue Lendo

Diminuindo acoplamento de sistemas com REST, e video!

Postado em 28. mai, 2010 por .

0

Muitos ainda me perguntam qual é a real vantagem do REST sobre os modelos mais tradicionais . Ao integrar sistemas, a implementação de acesso ou de processos costuma ser feita de maneira sequencial, onde esperamos resultados específicos de nosso servidor. Esperar um resultado específico de um servidor é criar um grande acoplamento, e desejamos diminuir more »

Continue Lendo

Últimos aprendizados e inovações na Caelum

Postado em 27. mai, 2010 por .

15

Inovação é parte fundamental da missão da Caelum. E, como uma empresa de treinamentos, Ensinar e Aprender são nosso dia a dia. Muitos nos perguntam o que devem estudar no seu tempo livre, onde devem investir. A Caelum tem seguido várias linhas e iniciativas que eu gostaria de apresentar nesse post. De tempos em tempos, more »

Continue Lendo

Metaprogramação: Eigenclass em Ruby

Postado em 10. mar, 2010 por .

10

O modelo de objetos do Ruby não é trivial. Em códigos mais complexos não é simples saber de onde realmente vem um método ou mesmo enxergar que toda classe em Ruby é um objeto, e isso pode causar algumas confusões. Uma das partes mais interessantes do modelo de objetos Ruby é conhecida como Singleton Class. more »

Continue Lendo