Introducing Objectify for Scala

It's a framework we developed almost a year ago, that has been running in production for over 10 months. It's so simple and effective that we have barely had to make any commits to it since. That framework is Objectify.scala.

Objectify was inspired by James Golick's framework, Objectify. He introduced it by describing why Rails needs to move away from fat models, and create a service layer. In a sense this a move towards the Java/J2EE way of creating applications and it's something both Joe and I agreed with.

When looking at our own codebase at the time, which was built on Scalatra (a Scala port of Sinatra), there was definitely a lack of organization and structure. Since the application had become fairly complex, the way the Scalatra routes were separated into files and policies enforced, was mainly using inheritance and traits. We didn't feel that this was a scalable solution for our architecure going forward.

We decided to create a light-weight framework, based on Objectify.rb, to help us structure our Scalatra application. In particular, the key features that we developed to do this were dependency injection and policy management.

Read this entry...

AngularJS -- Quick Role-Based Authentication

We've recently started on a new product at work using the AngularJS framework. One of the most useful resources when starting out was the #angularjs room on freenode. There seems to be a really large, vibrant community around AngularJS and that's always helpful when starting from scratch on a new framework. One of the best resources in the room was David Mosher, who helped us get set up with Lineman -- an awesome build framework based on Grunt -- and pointed us to some of his video tutorials. Honestly, these were a great resource for getting started and I highly recommend watching them. The following tutorial is heavily inspired by the examples David provided.

Read this entry...