Last time I explained why I think doing TDD for mobile is imperative, and why I do it. But now it’s time to get technical, and explain to you how to set up, GHUnit in XCode 4 and run unit tests, not only in the iPhone and iPad simulator but also on your own physical device!, it’s in text and images but also in video form on YouTube.
Note, if you want to know why i chose GHUnit over OCUnit, just scroll down to the end of the post.
Filed under ios, mobile, Testing, Tools | 15 Comments »
Since a couple of months I’ve been developing mobile applications, some are for the business at home (girlfriend-shopping-list app that actually works and augmented reality garden iPad app) and some are for work. I have experienced that TDD and Continuous testing (Test Driven Development) is a way of working that leads to fewer bugs and regression problems and better design in my software, it’s my preferred way of programming, not testing.

And to start off, here’s how I benefit from doing TDD:
and you can read more on TDD and Continuous testing here.
The thing is, writing a mobile app takes about 20% of the time it would take me to write a web+client+server based app. Which of-course is really nice, because I can write lots of apps. It also means that whenever i need to fix a bug or add new functionality, I need to have developed it in a TDD fashion, otherwise i cannot guarantee reliability. So let me explain why…
Filed under android, ios, Methodology, mobile, Technology, Testing | No Comments »
Last week (november 3rd) Andrew Phillips and myself did a presentation on continuous deployment at the awful (so we thought) hour of 8 o’clock in the morning for the NLJUG. We only expected a handful of attendees but fortunately the day before we were told that we had moved to a bigger conference room because of the great number of people signing up! So at 8 o’clock we had about <100 people in the room! So, if you were there, thanks for coming so early, we really appreciate it. It of-course shows that continuous deployment is a hot topic
Filed under Deployment, Middleware, Tools, Xebia Labs | 1 Comment »
In my previous post, “future of deployment, part 2″, i talked about the new ear, which is an image, with an OS and your application.
Now before diving into part 3, which gets you going in creating your own virtual appliance aka “the image”, there is one really big thing i forgot to mention; Some of the benefits of delivering a virtual appliance and getting it from your own development to the production environment! and i’ll list the benefits for administrators/ops and developers.
(more…)
Filed under Cloud, Deployment, Middleware, Virtualization, Xebia Labs | 3 Comments »

Last December I wrote my first part on the Future of Deployment explaining the difference between big ol’ servers with a gazillion applications and lots of new shiny small servers with each its own application. This time I’m going to go to the cloud or your virtualized servers and give you my vision of how we are going to package and deploy applications in about 3-5 years.
How we used to deploy an application
Well you all know this one by heart: You get your environment up and running, like, install an application server, setup your database, choose a sql script to run against the database, configure resources and deploy the application in the application server. After everything is in place you start the whole bunch and bask in glory!
Does the above deployment scenario apply to virtualized/cloudy environments. Yes it does, of course! The environment setup is greatly simplified, using stuff like AMIs or virtual images aka appliances
you get your database or application server out of the box but configuring and installing the application and configuration/resources is still the same old boring cumbersome task.
(more…)
Filed under Deployment, General, Middleware, Virtualization, Xebia Labs | 2 Comments »
I’m going to start a series on the future of deployment. How and what do we deploy in, say 5 years or so. Of-course this is my opinion and please add your own ideas in the comments below.
To start this series off i’m going to talk about the current state of things, or at least what i see at a lot of enterprise customers. Most of the enterprises i’ve been at have physical servers which are used by numerous applications from different development teams. Some of these servers are old and have been in maintenance by operations for years (+4 years
). That means that the server has changed, lots of deltas, aka, patches, deployments etc. have been applied and as my colleague Vincent has stated applying deltas has its cons
Of-course i’m talking about servers and not applications and the same rules do not apply, or do they?
Filed under Deployment, Middleware, Virtualization, Xebia Labs | 2 Comments »
You just baked the first release of your application using Maven. Next you start up the administrative console of the application server in the development environment. Then you deploy the fresh loaf of ear-file to the server and fire up your browser to see if you can reach the application. As you try to load the page, you get a DNS error, “Host not found”. Time to phone Bob! – the friendly operator of all that funky infrastructure and middleware. Bob is of course happy to add a DNS record that will point www.app-in-dev.com to an Apache server. “Wait! An Apache server?”-you exclaim! “But it should point to our application server, not an HTTP server thing.”
Bob, by now used to having to teach young developers the intricacies of modern network topologies, calmly explains that all requests coming from a browser first must go through a cluster of HTTP servers before the requests are routed to the application servers. “You also need to configure Apache!” he says. “But I am developing a Java application, I only need to deploy to an application server and then I am done.” you respond. Bob, sighs. “Listen son, pressing the deploy button in the administrative console is only a small sentence in the big deployment story.”
(more…)
Filed under Deployment, Xebia Labs | No Comments »
For the last 9 months I’ve been working as a team member of Xebialabs on a product called Deployit. The product automates deployments of applications. As any Xebia team we use SCRUM for our development. Now at the end of our two week sprint we give a demo to the product owner and stakeholders of what we’ve been building.
We demo deploying applications onto a variety of Application Servers and other Middleware, like for instance WebSphere/Oracle-Bea Application Server/Portal, MQSeries, HTTP Servers and so on… Sometimes demo-ing a story, like deploy application A to application server B can take 10 to 15 minutes. That means, for an hour of demo time we can not show every user story that we finished in our sprint. So we only show the important ones. But what happens when demoing a story can take up to 45 minutes? How can can we cram multiple finished stories into the hour?
(more…)
Filed under Agile, Multimedia, Scrum, Xebia Labs | No Comments »
On the 15th of April the NLJUG (Dutch Java User group) will be holding their J-Spring conference. Four Xebians will be presenting. Every week we’ll be providing a sneak preview on the podcast of one of those presentations.
The second sneak peek is about The Java Persistence API – How do i build a real application by Vincent Partington.
The preview is in Dutch, a full interview in english will be coming in about 4 weeks.
You can find more information here or read Vincent’s JPA blog series.
Vincent’s presentation is from 14.25 to 15.15
So head on over to the show page or subscribe to our podcast!
Tags: JPA
Filed under Podcast | 1 Comment »
On the 15th of April the NLJUG (Dutch Java User group) will be holding their J-Spring conference. Four Xebians will be presenting. Every week we’ll be providing a sneak preview on the podcast of one of those presentations.
The first sneak peek is about Software Transactional Memory by Peter Veentjer.
You can find more information at the NLJUG presentation page.
Peter’s presentation is from 11:20 to 12:10.
Hosted by Robert van Loghem.
This preview is in Dutch. After the 15th we’ll be doing a full episode in english about STM.
So head on over to the show page or subscribe to our podcast!
Tags: Concurrency Control
Filed under Podcast | 2 Comments »