Category Archives: Life hack

Stop websites from tracking you

An earlier post on how cookies are used to track you, explained how tracking cookies work. This post will show you how to stop websites from tracking you using Firefox 4. This latest release has a Do-not-track feature that lets you tell websites you don’t want your browsing behavior tracked.

By turning on the Do-not-track feature, Firefox tells websites you visit that you don’t want your browsing behavior tracked. Please note that honoring this setting is voluntary. To put it differently websites are not required to respect it.

Turning on the Do-not-track feature in Firefox 4

  • Click the Firefox button at the top of your browser window and click options.
  • Make sure you’re on the Advanced panel.
  • Select the General tab.
  • In the browsing section check the Tell websites I do not want to be tracked.
  • Click OK to leave
Do-not-track feature

Check the Tell websites I do not want to be tracked option

Architecture it is not exactly Brain Surgery

Although there can be a lot of debate on what is Architecture in the world of IT and on who is an architect and who isn’t, I think it is clear that it is not exactly Brain Surgery. And i think that is actually a good thing. Although the implementation of a (Service Oriented) Architecture is in most cases bound to hit vital parts of an organization it isn’t …

And even though there can be just as many parameters in the larger equations, architecture isn’t exactly rocket science either…

Revoke Access to Twitter Account

There is a growing number of Twitter Apps that trick you into giving them access to your account and so enabling them to send spam on your behalf. Should you (like me at least once) fall for this trap, here is an easy way to prevent further damage. Use the following url: http://twitter.com/settings/connections or click the links that are highlighted in the screen shot on the right to manage your Twitter connections.

After that you just click Revoke Access below the Application that is using your account to spam others. An example is depicted in the screen shot below (for a non spamming App):

Definition of Done example

It is impossible to create a single Definition of Done (check the Scrum Guide Mind Map) that suits every situation. In Scrum each team should come up with it’s own definition. A definition that suits its unique environment. To help you and your team to get to your Definition of Done, I post ours as an example here.

In general organizations that have just started with agile may find it difficult to reach a mature level immediately; therefore, they should take the steps, sprint-by-sprint, to improve their done definition. For example on the code coverage of their JUnit test.

Definition of Done on our current project

In our current project we are working with a customer that is getting started with an Agile and Scrum way of working. Besides that they also recently changed their technology stack to WebLogic Server, SOA Suite. They have been programming in Java for years. Here is what we as a team came up with:

Definition of Done

  • Code complete
  • Unit tests all green
  • Code Coverage 35% (with the explicit ambition of growing to 90%)
  • Documentation updates:
  • Release doc
  • Deployment Guide updated
  • Technical Design
  • Quick Guide for Users
  • Coding Standards met
  • Functional Testing passed on DEV

Motivating without money

Some of the RSA talks are distilled by the folks at CognitiveMedia into abridged animated versions – RSAnimate. Here is one om motivation and drive:

There are loads of examples in litterature but also in more popular books like Freakonomics that:

People respond to incentives

In the animation you’ll see the kind of incentives that work well for tasks that go beyond mechanical skills and that require rudimentary cognitive skills (like conceptual and creative thinking). These incentives include the following aspects :

  • Autonomy – Which demands engagement instead of management and control.
  • Mastery – It is great fun to learn things and sometimes even be (really) good at something!
  • Purpose – Humans are purpose maximizers even more than money maximizers.

Please note that money isn’t one of them. So motivating without money should be possible. In short for organizations and managers it boils down to:

Treat people as people!

Let me know what you think on this subject in the comments….

Group Development and a Lessons Learned session

Yesterday I attended a Lessons Learned session for a Software Development project where I’ll be involved in the upcoming phase. All participants shared their opinion on the negative and positive experiences. What went well and what needed improvement. Putting all these opinions expressed on Post-It notes in perspective I realized that the major part of the negative experience where from the early days of the project. Whereas the positive experiences seemed to be from the most recent period. This brought me back to one of the models I was taught on Group Development while taking training and coaching courses. It suddenly made sense to me that there had to be a relation with the Tuckman’s Group Development Model.

Tuckman’s Group Development Model

Tuckman Group Development ModelThe Group Development Model that was proposed by Bruce Tuckman in 1965 has four phases:

  • Forming: Individual roles and responsibilities are unclear. Lots of questions about the team’s purpose, objectives and external relationships. Processes are often ignored. Members test tolerance of system and leader.
  • Storming: Clarity of purpose increases but plenty of uncertainties persist. Cliques and factions form and there may be power struggles.
  • Norming: Agreement and consensus is largely forms among the team. Roles and responsibilities are clear and accepted. Commitment and unity is strong. The team may engage in fun and social activities.
  • Performing: The team knows clearly why it is doing what it is doing. The team has a shared vision and is able to stand on its own feet with no interference or participation from the leader. There is a focus on over-achieving goals.

More in this PDF on Forming, Storming, Norming and Performing.
So in which phase do you think the most fun, excitement and productivity is? And as you guessed this was reflected in the Lessons Learned session mentioned: The negative experiences were during the Storming, and the positive experiences during the Performing phase.

Note that:

These phases are all necessary and inevitable in order for the team to grow, to face up to challenges, to tackle problems, to find solutions, to plan work, and to deliver results.

It is important to realize this because sometimes a group of people in a meeting go through these same four phases. And if your a real goal oriented person you could try to skip the first two of three steps. That in will have a severe impact on the buy in of the group / team.
The teams that don’t get out of the Storming phase usually deliver no or very low quality software…

Running SOA Suite on Amazon EC2

SOA Suite on EC2

SOA Suite on EC2


One of the things on my To Do list was to move my local SOA Suite 11g R1 to The Cloud. It seemed a good idea to save my laptop some resources (to spare some for JDeveloper) with only a limited investment. Besides that it can be a good way to demo applications, and work together with my colleagues on these demos.

During the last months I noticed that there are several good blogpost on the subject. In this post I’ll show you the ones I used and provide some additions to them.

Setting up Amazon Web Services (EC2 and S3)

This arcticle on OTN guided me while signing up for:

  • Amazon AWS
  • Amazon S3 – Simple Storage Service
  • Amazon EC2 – Elastic Compute Cloud

and to setup PuTTY. The only hick-up here was that I’m using the PortableApps version of PuTTY that doesn’t come with the puttygen – Key Generator.

Provisioning a SOA Server on Amazon EC2

This blogpost guided me in the provisioning of the AMI (Amazon Machine Image).

  • AMIs are per region: The Amazon Machine Instance (AMI) for SOA Suite (id = ami-acb557c5) is only available in the US East (Northern Virginia) Region.
  • Don’t bother to setup the Elastic Block Store (EBS) Volume. It is scripted in the latest version of the AMI, as described in step 5 of “SSH to your image and accept license”. The EBS Volume is seeded using a snapshot (id = snap-dd980db4) that is provided. This volume will be used to persist your data across sessions and AMI start/stop.
  • When launching the image (during the Configure Firewall step) set the SecurityGroup to accept HTTP traffic on port 7001 in case you want to use the SOA Suite from outside the Image.

Gestures as the human – device interface

Pranav Mistry did a great TED talk on tools that help the fysical world to interact with the digital world. Pranav works on a project called Sixth Sense and most of his examples are based on this project and the research that led to it.

And the busines – IT gap

Inspiring talks like these make me wonder if there is any groundbreaking research that could bridge the business IT gap that is mentioned so often. One thing that makes this even more complicated is that both “IT” and “business” are concepts, unlike the real fysical world. Besides that the concept do not follow laws of nature like the fysical world does.
To build a bridge between business and IT bith need a level of understanding of how the other works. In most case this will require a lot of communication.

Convenient Open Source on the move

Working as a consultant for multiple customers, I get to work with a lot of different desktops, besides my laptop. This used to result in installing the same software again and again on different machines, and keeping it up to date. I found an alternative in PortableApps.

Portable Apps in Windows 7

Portable Apps in Windows 7

PortableApps.com is an open platform that works from any USB flash drive, iPod, memory card, or portable hard drive. It’s open source, it´s free and it´s convenient. Now I can carry a great bundle of applications and utilities on a simple USB stick (OK, I admit to use an USB hard drive). This allows me to work with the same tools everywhere without additional cost, or the need to install software.

These are the applications and utilities I favor from the collection:

  • Firefox: Not only enables this me to take my bookmarks everywhere, thanks to the great collection of add-ons I also take my Twitter and Yammer platform with me.
  • Notepad++ a great text editor.
  • Task Coach to keep on track with my tasks.
  • Filezilla, WinSCP, and PuTTY
  • OpenOffice Works great for reviewing etc. However most companies I work with use templates based on the MS office suite for reports, memos, etc. The right version always comes with the PC…

The complete set of applications can be found here.

Experience

When I started using Portable Apps it was installed on the first available USB stick. Which turned out to have a USB 1.1 controller. That was replaced very quickly with one that supported USB 2.0. This device was a few months later replaced by a USB hard drive. Both because of capacity and speed considerations. Now the external hard drive is the primary device and the (network) storage of the PCs serves as back up.
Portable Apps works on any Windows computer.Using Ubuntu you can use Wine to run it.