Saturday, November 28, 2009

My first Flex application

The client I currently work for has many applications that are using Adobe Flex to generate a Flash front-end. As there is a chance that I have to participate in a Flex project it is about time to learn something about it and to create my first Flex app, so here you have it: hello world!

It was created using the trial Flex builder plugin for Eclipse and involved little more than a few clicks.

So far so good. I will play around with it a bit more and will dive into the subject of connecting with Java server side code later.

Update: a few lines of code later results in this: playing around with tabs

Saturday, November 14, 2009

Spring Roo

Today I found out about the existence of Spring Roo. A really cool project that certainly fills a sweet spot between what IDE´s and build tools will do for you.

What is Spring Roo: as they say it "a little man that does all stuff you do not want to worry about".

This translates to CODE GENERATION through a Spring Roo command shell environment.

Example goal: create a wedding RSVP application, including persistence using JPA and Hibernate. Take these steps:

1. create a directory named wedding
2. fire up Roo
3. type "create project" (Roo now creates a Maven 2 project)
4. type "persistence setup --provider HIBERNATE --database HYPERSONIC_PERSISTENT" (this creates all xml and properties files)
5. type the following to fill the database with something:
entity --name ~.domain.Rsvp
field string code --notNull --sizeMin 1 --sizeMax 30
field string email --sizeMax 30
field number attending --type java.lang.Integer
field string specialRequests --sizeMax 100
field date confirmed --type java.util.Date
6. Add a web tier: "controller scaffold ~.web.RsvpController"
7. See what we got! "mvn tomcat:run"

That´s (roughly) it, in just a few steps we have a working web application that conforms to the standards and includes unit tests!

Example taken from the Spring Roo site.

Thursday, November 12, 2009

First App Engine experience

Less than a minute!

That’s what it took to get App Engine running locally and seeing the first page served in my browser!

All you need to do, is to add an extra source for software updates and select the Google App Engine. It’s all explained here.

image

Google App Engine

Long story short: Google App Engine is Google’s public application hosting service. You can run your own web application, databases, etc. on Google servers. It’s free for small applications.

Of course you could run your own server (either rent one or run one at home), but this means you have the maintenance problems, security issues and performance problems to deal with.

Unfortunately I have not been able to attend JFALL this year, there was a session which was about Google App Engine.

I have some ideas about using Google App engine. Currently I am thinking about using it to store data for my Android applications.

It’s definitely something I’m going to look into very soon.

This guy got a small Wicket application running on App Engine, cool eh!

image

Wednesday, November 11, 2009

Jira, Confluence and Bamboo

For the last days I've been looking in to some products that a potential client is using and I have no experience with. There are three development process related products that nicely integrate together:
  • Jira - issue tracking and planning
  • Confluence - wiki
  • Bamboo - continuous build server
As they are commercial and all from the same company (Atlassian) it is no surprise that they integrate very well. Reports from Bamboo and Jira can be published via Confluence so that all essential information can be found in the same place - nice for both management and developers.

It is also possible to use Bamboo as a release management tool, somebody wrote a nice article about it and developed some plugins. This is about a year old, so maybe it is built in by now.