quarta-feira, 18 de setembro de 2013

Into the unknown: Elixir

Every now and then one feels the urge to adventure himself to new and unexplored territory.

Last week i took the first step into the wild and bought myself a copy of Programming Elixir by Dave Thomas.

Some background on my journey preparation:

  • I've been dealing with erlang for a while (and i'm quite interested in its concepts and philosophy) 
  • I've been doing rails development for some time  
  • I have no background in functional programming paradigm
That said, and after watching a video where Dave Thomas explains why he likes Elixir, and reading this blog post by Joe Armstrong on a week with elixir i thought: this might be it ! It's erlang in a more ruby syntax way !
I must confess i'm not one of those who curses erlang syntax. I do find it quite natural ... but elixir ? Well it's just another level.

I hope you can also give it a try.

I'll try to share my progress as i go along through this journey into the great unknown !


sábado, 25 de maio de 2013

Semana Grails (2013-20)

Link para artigo original de Burt Beckwith


A grande notícia é a de que Grails 2.3 M1 foi lançado. 2.3 será uma importante atualização com inúmeras correcções, melhorias e novas funcionalidades. M1 apenas tem um sub-conjunto do que está para vir e está já recheada com novas coisas muito interessantes. Graeme escreveu sobre o que está para vir, Grails 2.3 M1 e Futura M2 e Caminho para Grails 2.3: Mapeamentoss URL RESTful e Relatórios de Mapeamento de URL.
Não percam este video sobre Grails que o pessoal na Orange & Bronze criou.
Eu lancei dois plugins, standalone-tomcat-memcached e standalone-tomcat-redis. Estes são como o plugin database-session na medida em que eles reconfiguram o servidor web para armazenar dados da sessão numa datastore em vez da abordagem tradicional, mas estes plugins apenas funcionam com Tomcat uma vez que trabalham directamente com as APIs Tomcat em vez de interceptarem e substituirem as sessões reais. Tenho estado a trabalhar na reconfiguração da forma como as aplicações Grails se colocam em Heroku, modificando a utilização de uma instância Jetty embebida para a utilização do plugin standalone (quer com Tomcat quer com Jetty). Pelo caminho, uma vez que Heroku não suporta sessões "sticky" eu criei estes plugins para tornar as coisas mais fáceis com o plugin heroku. Mais sobre este assunto mais tarde.


Itens Diversos


Plugins

Foram lançados 7 novos plugins:
  • apidocs versão 0.1. Gera Documentação de API REST
  • criteria-js versão 0.3. Critério GORM para JavaScript
  • db-helper-rest versão 0.3. Fornece métodos para eliminar, criar e inicializar esquemas de base de dados a partir do bootstrap do projecto
  • httplogger versão 1.0. Regista tráfego HTTP
  • required-parameters versão 1.0.0. Permite a verificação de parâmetros obrigatórios para acções de controladores utilizando anotações simples
  • standalone-tomcat-memcached versão 0.1. Usa Memcached como gestor de sessão do Tomcat
  • standalone-tomcat-redis versão 0.1. Usa Redis omo gestor de sessão do Tomcat
e 26 plugins foram atualizados:
  • goodform versão 1.0.2. Cria formulários complexos altamente utilizáveis com fluxo baseado em regras que funcionam bem nos navegadores
  • airbrake versão 0.9.3. Plugin de notificação para integrar Airbrake com a aplicação
  • asynchronous-mail versão 1.0-RC5. Envia email de forma assincrona armazenando-o na base de dados e utilizando uma tarefa Quartz
  • aws-sdk versão 1.4.3. Usa os serviços da infra-estrutura Amazon Web Services
  • closure-templates-resources versão 0.2.3. Suporta compilação, no servidor, de ficheiros template .soy em ficheiros JavaScript
  • easyui versão 1.3. Fornece recursos e taglibs jQuery EasyUI
  • external-config-reload versão 1.3.0. Verifica se ocorrem alterações a ficheiros de configuração externos (ficheiros adicionados a grails.config.locations), recarrega a configuração quando ocorre uma alteração, e notifica os plugins especificados disparando o evento onConfigChange em cada um deles
  • font-awesome-resources versão 3.1. Integra o conjunto de icones Font Awesome
  • google-visualization versão 0.6.2. Fornece uma taglib para gráficos interactivos da Google Visualization API
  • grails-melody versão 1.44. Integra a ferramenta de monitorização de sistema JavaMelody
  • hibernate versão 3.6.10.M3. Fornece integração entre Grails e Hibernate através de GORM
  • i18n-fields versão 0.6.4. Fornece uma forma declarativa de localizar campos de classes de domínio em diversas linguagens
  • jrimum-bopepo versão 0.3. Permite a criação de Boletos Bancarios para Bancos do Brazil usando a biblioteca Jrimum Bopepo
  • neo4j versão 1.0.0.RC2. GORM para Neo4j
  • newrelic versão 1.0-2.18.0. Adiciona a funcionalidade NewRelic Real User Monitoring nas tuas páginas GSP
  • pusher versão 0.5. Contentor para api REST pusher.com
  • recaptcha versão 0.6.5. Integra serviços ReCaptcha e Mailhide
  • remote-pagination versão 0.4.4. Fornece etiquetas para paginação e para ordenar colunas sem refrescamento de página usando Ajax e carrega apenas a lista de objectos necessários
  • segmentio versão 0.2.0. Usa Segment.io para enviar dados de analítica para qualquer serviço desejado, sem ter que integrar com cada um individualmente
  • spring-security-mock versão 1.0.2. Suporte para Mock de autenticação para Spring Security
  • standalone versão 1.2.1. Executar uma aplicação Grails como um ficheiro JAR num servidor Tomcat embebido
  • vaadin versão 1.7.5. Adiciona integração Vaadin (http://vaadin.com/)
  • validate-config versão 0.4.2. Adiciona métodos a ConfigObject para validar propriedades esperadas e requeridas
  • war-exec versão 1.0.3. Torna os ficheiros war gerados por Grails executáveis (java -jar myapp.war) embebendo Jetty. Jetty pode ser configurado utilizando propriedades em Config.groovy
  • webdriver versão 0.4.2. Integra Webdriver com Grails para permitir testes funcionais tanto em HtmlUnit como em navegadores web reais
  • xwiki-rendering versão 1.0-RC3. Converte textos utilizando XWiki Rendering Framework


(AS SECÇÕES SEGUINTES NÃO SE ENCONTRAM TRADUZIDAS POR SUGESTÃO DO AUTOR DO ARTIGO)


Tweets Interessantes


Ofertas de Emprego




Grupos de Utilizadores e Conferências