Thursday, November 28, 2013

Book Review: Java EE 7 Essentials

I have recently finished reviewing the book, 'Java EE 7 Essentials' by Arun Gupta which took me considerable amount of time as I was on and off in its study and have not done any major development/study in enterprise java space recently.
As I was having prior experience in j2ee, I was more keen in knowing what new changes have been transpired since the Java EE 6 in the enterprise java specification. One of the noticeable observation is the fact that this book does not follows a sample application (like the famous petstore example). Depending upon your reading habits, it may or may not bother you.
To understand topics like dependency injection, I had to use the internet as my resource as well, for example, to understand differences in its approach in enterprise java & spring. However, when comparing this against the standard j2ee resources, this is more fun to read and does not bores you down to every little detail (which can be obtained from the api/documentation itself).
The book covers the entire enterprise java stack which can be classified under the following points:

  • Servlets, JSF
  • RESTful and SOAP based Web Services
  • JSON processing
  • Websockets & server endpoints
  • EJB & JPA specification
  • Context & Dependency Injection in Java EE
  • Concurrency
  • Bean Validation
  • JTA and JMS
  • Batch Processing
It is helpful to know a basic idea of these concepts as the book dives right into what's new and noteworthy for JavaEE 7 release.
Finally, creation of a sample application is explained that is a three tired architecture which uses the enterprise java detailed in the book.
For an enterprise java expert or beginner, this is the current go-to book to get started with the Java EE 7 specification and makes the learning somewhat less painful that it used to be.
Although setting up application servers is not dealt with, basic instructions to install and use Netbeans IDE (Java EE bundle) are provided which contains the tomcat application server itself.
Disclaimer: I received my copy of the book in its beta version through the oreilly's bloggers review program.

Friday, November 22, 2013

how i learnt to stop worrying and love the Javascript

It's been an eventful week for me with lots of new things for me to try on. But the centerpiece for me remains into trying out various things using Javascript based programming application stack.
Even after doing javascript since 2005, until recently I never had the chance to dig deep into it. Also, when I first came to know about node.js in 2010, it was a pretty nascent technology in those days and was not developer friendly. However, a lot has changed since then and now this technology app stack is not only matured, but is also mainstream. Considering the recent interviews that I undertook in last month, apart from rails skills, people also asked if I was comfortable with node.js, which might not be an indicator for the rails community, but is nevertheless a repetitive occurrence for me.
Currently the app stack stands as follows

Client--(ember/knockout/angular)----json data----Backbonejs(nodejs)---Json data---Mongodb(database)

This is essentially a complete app stack built on javascript (with DSLs thrown in for convenience - such as json).

Coming to backbone, it is quite similar to sinatra and is considerably easier when compared with native nodejs and many concepts are used similar to what has been done in the sinatra framework.

var express = require('express');
var util = require('util');
....  //Other libraries in use here
var app = express();

app.set('views', path.join(__dirname, 'views')); // set the views here
app.set('view engine', 'jade');  // using jade view engine

app.configure(function(){
  //let the app use various activities
});

//routing stuff... that can also be delegated to separate files
app.get('/a/url/path', function(req, res){
res.render('jade_view_name');
});
app.post('/another_path'...

app.listen(8080); // port to listen upon


Using mongodb with this is also quite easy as many choices are present when it comes to selection of a data mapper. I used the mongoose for this, but the only caveat is that we have to explicitly define its metadata. For user authentication, I learnt and used passportjs, which is  quite lightweight and concise in using .
In the client side, there are a lot of Model, View + based  javascript frameworks out of which I am learning angular and ember frameworks. Currently I am not biased towards/against any framework out there and will definitely post my experiences..

Thursday, November 7, 2013

Win Free Copies of “Robot Framework Test Automation”

Win Free Copies of “Robot Framework Test Automation


Readers would be pleased to know that I have teamed up with Packt Publishing to organize a Giveaway of my book Robot Framework Test Automation



Two lucky winners stand a chance to win e-copy of the book. Keep reading to find out how you can be one of the Lucky One.

 

                         


Overview:
  • Create a Robot Framework test file and a test suite
  • Identify and differentiate between different test case writing styles
  • Full of easy- to- follow steps, to get you started with Robot Framework



How to Enter?
All you need to do is head on over to the Book page and look through the product description of the book and drop a line via the comments below this post to let us know what interests you the most about this book. It’s that simple.

Winners will get an e-copy of the Book.

Deadline


The contest is a limited time contest, so hurry. Winners will be contacted by email, so be sure to use your real email address when you comment (On that page: http://bit.ly/1bXReXr)!