Spike list 2014


I suffer from list syndrome. A condition where you constantly feel the urge to quickly scribble down ideas, and stuff your pockets with these little yellow crumpled up post-it notes…mine seem to focus on two main topics, [1] of all the cool ideas that randomly pop into my head, and [2] technology related things I want to spend my “free” time studying.

I really like the term “spike” coined back in the XP days:

“The purpose of a spike is to gain the knowledge necessary to reduce the risk of a technical approach, better understand a requirement, or increase the reliability of a story estimate.”

Big Ticket Items

Java EE

  • JAX-WS - Java API for XML Web Services.
  • JAX-RS - Java API for RESTful Web Services (JAX-RS, defined in JSR 311).
  • JPA - Java Persistence API.
  • CDI - Contexts and Dependency Injection.
  • EJB - Enterprise beans are Java EE components that implement Enterprise JavaBeans (EJB) technology, which provides system-level services, such as transactions and security.
  • JSF (JSR-314) - JavaServer Faces technology is a server-side component framework for building Java technology-based web applications.

General libraries

  • Guava - Google Core Libraries for Java 1.6+
  • Guice - Google’s lightweight dependency injection framework for Java 5
  • protobuf - Google’s data interchange format, because moving XML/JSON over the wire seems stupid.
  • Hibernate with JPA - CRUD it baby
  • Scala - functional JVM
  • Netty - async NIO client/server
  • Grissly - NIO event development simplified (AJP, LZMA, Memcached, WebSocket)

Web frameworks

  • AngularJS - HTML enhanced for web apps.
  • JSF - JavaServer Faces technology establishes the standard for building server-side user interfaces.
  • Play! - the high velocity web framework for Java and Scala.
  • Atmosphere - client and server side components for building Asynchronous Web Applications.
  • Grails - full stack, web application framework for the JVM.

Servers

  • Vert.x - a lightweight, high performance application platform for the JVM that’s designed for modern mobile, web, and enterprise applications.
  • Tomcat 8 - open source Servlet container.
  • Glassfish 4 - open source Java EE 7 Application Server.
  • WildFly 8 - redhats new and improved JBoss Application Server.
  • Google App Engine - Google’s Platform as a Service
  • ActiveMQ - the most popular and powerful open source messaging and Integration Patterns server.

Online courses

Architecture

JavaScript

Java

Persistence

Handy

User Interface