Programmer Anarchy

Programmer Anarchy is a concept that has been around for about the last year, is considered “post-Agile”, has so far been evangelised by Fred George and says that software development is more productive when programmers are “self organised”.

Agile is implemented in a wide variety of ways, from a kind of religious dogma, to a model that is fairly close to waterfall but with stand-ups and scrum masters through to the “Thoughtworks approved” approach. One thing I have found as a recruiter is that it takes a team of very high quality developers to make a truly Agile methodology work successfully.

Read more

By Martin Jee

Applying Scrum to Legacy Systems

A Tale of Two Projects

It was best of times, it was the worst of times…  

There were two projects – Project “A” was a greenfield project, with highly motivated, highly skilled Software Architects & Developers who either had a lot of experience with Agile Scrum or were very open to learning about it.  

The Product Owner was fully engaged and worked diligently to create a well defined set of User Stories that could be easily broken down into Story Points.  As this was a greenfield project, we were not distracted by support issues.  In addition, the project had, albeit after some convincing, good management support.

Project 'A'

Whereas Project “B” was the Spaghetti Monster project that was the result of years of mismanagement, misunderstandings with patches patched on top of patches, poor source control and deployment processes and poor engagement between the software development team and the client.  

To make it even more interesting, Project “B” was a core, mission critical system with a large user base (who were not happy or no longer engaged), and suffered frequent outages, slow performance and provided a poor user experience.


Flat is the new up

Businesses regularly evolve to meet modern new challenges, so why do they rely on the same old military-style organizational hierarchies? Here are a few companies that have adopted new structures to try to inspire workers and make the companies more agile.


Ubuntu Unity Custom Launch Items

Want to add a custom lauch-icon to your lauchbar?

First create an old school icon item

gnome-desktop-item-edit ~/Desktop/ --create-new

Next move the icon you’ve just created to the bucket where most launchers are kept

sudo mv my_icon.desktop /usr/share/applications/

Next launch your program and lock it to the lauchbar.

Git patch => SVN patch

Converts git diff to svn patch format

git diff --no-prefix | sed -e "s/^diff --git [^[:space:]]*/Index:/" -e "s/^index.*/===================================================================/" > changes.patch


3 easy steps to reverse engineer apk

3 easy steps android apk Reverse Engineer to get java source-code

Android applications are packed inside a APK file, which is just a ZIP file containing among other things a compact Dalvik Executable (.dex) file.

First step is to extract the “classes.dex” file from the APK:

$ unzip program.apk classes.dex
Archive: program.apk
inflating: classes.dex

Now, we use the tool dex2jar to convert the classes.dex file to Java .class files:

$ bash dex2jar/ ./classes.dex
2 [main] INFO - dex2jar ./classes.dex -> ./classes.dex.dex2jar.jar

here bash is to execute bash script and ./classes.dex is one of your extracted apk files
here output will be dex2jar.jar

From here we obtain the file “classes.dex.dex2jar.jar”, now we can use the java decompiler JD-GUI to extract the source code:

$ ./jd-gui classes.dex.dex2jar.jar

Now just go to “File -> Save all sources” and it will generate the zip file “” containing all the decompiled Java source code

Thanks to Ajit