When running Selenium tests from JUnit it’s very useful to be able to capture screenshots when something fails. Especially when you run it in a Continuous Integration environment which you aren’t monitoring. A screenshot combined with the stacktrace makes identifying and fixing the error easier. When you combine this with a JUnit @Rule you can make it transparant and use it for every testcase (more…)
Filed under Java, Testing, Tools | 3 Comments »
Right now I’m following some geospatial tweets and came across an interesting one about a new option to add a geospatial index to a MongoDB. Since I’ve done some stuff with Scala recently I decided to insert the data into MongoDB with Scala using scamongo. Unfortunately the scamongo Scala driver for MongoDB gave me too much trouble, so I switched to the java driver.
Tags: geohash, geospatial, GIS, index, mongodb, Scala, spatial
Filed under General | 2 Comments »
A deployment package arguably is never just a single file to be dropped somewhere and you are done. No! Choosing and bundling your artifacts for deployment is none less complex than figuring out an efficient deployment strategy itself. The Java EE specification suggests EARs as the standard packaging and distribution mechanism but we all know that this is not enough. In reality the ‘deployment package’ comprises a whole list of artifacts and more:
In short, an EAR and a lot around it! But wait, there is still more, what about the plethora of environment specific configurations that also go along?
This leads to a few questions and the reason for this blog.
Filed under Deployment, Middleware, Xebia Labs | 3 Comments »
Imagine God creating the world in a waterfall way….
I then, picture God behind a big desk, discussing with all the angels about how Earth could look like. What animals should be created?, How long should it take to go from complete darkness to complete daylight? What colors will we use ?….
After having decided on what they wanted to create, how long would they have needed to decide in which order all the creation was supposed to happen? What comes first ? The water or the birds, the trees or the ants, the apple or the snake ?
Finally, some Angels started to nag about risks. Would the animals not get to fat of all the eating ? Won’t there be any fights ? How big is the chance the sky will fall down ?
I’m sure they would have talked about it hours and hours for ages. It’s not that they didn’t have the time to talk for ages ( they’re immortal, you know), but I guess they would have given up long before coming to any good solution.
Instead of all this discussion and thinking, suddenly, God decides to separate light from darkness. And after a one day Sprint, He looks around and sees it is okay. Since there was darkness now, there was a good reason to go home and have a good night of sleep. He knew He had to make sure He could keep up the speed for some time longer. (Sustainable pace is as old as the world itself).
At dawn, again He looks around, and with new insight He decides the creation was not yet finished. It just didnt look like the vision He had in mind yet, a bit boring.
So He creates land and water. Nice ….. now after a day of labour, He could not only go to bed because of darkness, but also take a long nice bath. He looks around, after another Sprint of hard work, and was happy with what was there.
More Sprints of days went by and each Sprint He learned from the previous Sprint, creating more complex stuff in the same amount of time. Starting with plants, and little fish, continuously improving right up to mammals and even man and wife. What a wonderful learning curve.
And instead of having never ending discussions and making complicated plans, God created Earth so efficiently that He had a Sprint left to take some rest. On time, on budget, on scope…. The first project ever was a true success.
It is not for no reason they say ‘At the beginning there was nothing…”
No plan, no discussion …. just a Vision and a talented Guy.
Filed under Agile, Scrum | 13 Comments »
What does it mean when a Scrum team “commits to a Sprint”? There is a subtlety in the English language that leads to misinterpretation and misuse of the verb “to commit”. I have seen too many cases where a team is held accountable (“bad team, bad!”) because they did not achieve their Sprint goal in some way. And it will be accompanied by the accusation: “…but you committed to the Sprint, didn’t you?”. As a coach, this is the moment I step in to explain what “to commit” really means, and that you want to fail every now and then: succeeding every time is a failure mode all of its own.
(more…)
Tags: commitment, Scrum
Filed under Agile, Scrum | 6 Comments »
From Java EE to Google App Engine to GigaSpaces, the idea of developing against a middleware or “infrastructure” API is well established in the Java world.
But these are fixed environments. With the (re-)advent of virtualization, it is now becoming feasible to package and rapidly provision your own environment, custom-designed to meet your application’s needs.
As the big middleware vendors are realizing, it is not just possible to create such Virtual Appliances, but necessary: a production app’s setup inevitably includes more than just a couple of EARs.
Here, we’ll look at the current state of cloud and middleware deployment tooling, examine possible future developments and draw parallels between deployment and related processes.
(more…)
Tags: cloud, deployment automation, Oracle, virtual appliance, websphere
Filed under Deployment, Java, Middleware, Virtualization | 5 Comments »
In a recent post, XebiaLabs‘ CTO Vincent Partington discussed some important organizational topics you will want to address while introducing deployment automation using Deployit.
Preparing your organization is, of course, crucial to getting maximum possible benefits from deployment automation. A few technical considerations also apply when introducing Deployit, and here we’d like to go into these so that you can be sure your infrastructure is ready when it comes to carrying out your first fully automated deployment.
(more…)
Tags: Deployit
Filed under Deployment, Middleware, Process, Xebia Labs | No Comments »