Poem for The Waterfall Organisation

WaterfallThe Waterfall Organisation. Smashing things on to rocks and down great distances with much spray and noise, but to what effect? The Bottom?

Fishes, swimming in the stream. Oblivious to the waterfall for they live in the flow.

But there is life beyond the stream, beyond The Waterfall.

The fish know this not. The Stream knows this not. The Rocks and Water know this not.

Will they learn? That The Waterfall exists within The World which exists within The Universe.

How small The Waterfall is…

Posted in Art, Poetry | Tagged , , , , | Leave a comment

Jennifer Sertl on Resilience

Jennifer Sertl ResilienceWe all want Resilience, but how do we get it? Look at the photo – that’s Resilience!!! The ground has literally shifted beneath the tree, exposing it’s roots. Yet it’s alive!

It’s adapted – seems like there’s quite a bit of flexibility involved too, as it’s probably about 20 feet below all the other trees…
Over to Jennifer now:

  1. Jay Forrester’s Shock the System sloanreview.mit.edu/article/jay-fo… by @ArtKleiner via @MITSloan HT @EkolojikZeka
  2. Self-Determination Theory selfdeterminationtheory.org/SDT/documents/… by #ROC treasure Professor Edward Deci
  3. Treasure trove of article references from military resilience training ppc.sas.upenn.edu/mrtinarmyjan20…
  4. 10 Principles for a Swan Proof World ft.com/intl/cms/s/0/5… by @nntaleb
  5. Trajectory Shift Request: At Davos: Why U.S. companies fail to innovate |ti.me/Ts9y6V via @TIMEBusiness
  6. Mastering Risk gbn.com/articles/pdfs/… … via @gbntweets
  7. Viktor Frankl’s Man’s search for meaning . . . perhaps the most important read in your lifetime: Man’s Search for Meaning
  8. The Stockdale Paradox + Optimism bigthink.com/think-tank/the…
  9. Resilience is to the 21st century what growth was to the 20th bit.ly/I52mE (treasure trove) via @auerswald
  10. Pure gold: Resilience + Knowledge Management knowcademy.com/2013/03/17/res… HT @toughLoveforx
Posted in Miscellaneous, Change, Life, JenniferSertl | Tagged , , , , | Leave a comment

Violence, Silence and Non Violent Communication

I was pointed to this (most appropriately :) by my wife yesterday morning. I’m very much in to TED talks, but not so much her, so I was a amazed that I’d not come across this talk before. Needless to say, it’s a bit of a game-changer and I’d put it in my Top 10 TED Talks ever!

After talking about this quite a bit I then showed her the Marshall Rosenberg series of introduction videos which follow quite nicely from this.

Wrapped up by one of his famous “puppet sessions”

If you want to find out more, the obvious place is The Centre for Nonviolent Communication. If you’re in the UK, then it’s worth looking at Nonviolent Communication UK. Finally, if you want some great information along with one persons journey in to the land of NVC, I’d highly recommend Bob Marshall @flowchainsensei‘s blog with has Many great entries on Nonviolent Communication applied in a Corporate and Organisational context.

For an even broader context, @AndreaChiou recently did a great post about Book Dreams

Posted in Life, Miscellaneous | Tagged , , , , | Leave a comment

The Unbearable Lightness of LightTable

Light Table - Hello Seesaw WorldWhen I last looked at LightTable in The Almost Unbearable Lightness of LightTable, it was kind of usable and I was working out how to configure it to work properly in my environment with dependencies. Unfortunately with 0.3, dependencies stopped working for me (but hey, it’s Alpha OK?). Now, with the release of 0.4.2 we’re “back in the LightTable room” and ready to ROCK!

So what’s changed since then and now? EVERYTHING! Literally. We still have the same very cool black default theme. It’s been possible to change the theme for a while and even create custom CSS, but I’m happy with the default minimalist one. As you can see though, the UI has improved – I like the tabs on the side – a great example of some out of the box elegant thinking.

Anyway, to getting it running… There will be a bit of duplication from my previous post, but the instructions here will be a bit tidier and customised for this new version.

LightTableIconIf you’ve never used LightTable before (I’m assuming you have Java installed somewhere though) and have Leiningen 2 installed, then it’s too easy! Just go to www.lighttable.com, download and run!

If you have used an earlier version of LightTable then you should blow away you’re lighttable directory

rm -r ~/.lighttable

delete your current LightTable application then install and run the application.

You can obviously start playing around (a lot!) with it’s various capabilities which include support for Python and JavaScript – @ibdknox / Chris Granger’s post gives you the lowdown.

Here, I’m assuming you’re using Clojure though where you can obviously play around to your hearts content unless you want to work with dependencies (I’ll be using an awesome Clojure framework for Swing called Seesaw in this post) which is our next step.

Let’s assume you have Leiningen 2 installed so it should again be fairly easy to get up and running, just To create a new project, you just create a default template:

cd ~/Projects/LightTable/
lein new guitesting

Start up LightTable and connect to your project from the workspace:

Light Table Workspace

If you don’t see a structure like the one on the left, then something went wrong and you may want to do some of the “cleaning” as outlined in Still not Working Huh? below. Assuming you do have this then once you’ve selected it you should be able to see your project and just need to edit your project.clj file (which is the equivalent of the dreaded Maven pom.xml file but 1E06 times more readable :)

Light Table project.clj

I’ve highlighted the part where you add the dependency for seesaw – Just Ctrl/Cmd-S to save.

Now all you need is some code to test that out, so if you change your core.clj file to be

(ns guitesting.core)
(use 'seesaw.core)

(-> (frame :title "Hello Seesaw World!"
           :content "Hi, Welcome to Seesaw")
    pack! show!)

and Cmd/Ctrl-Enter to run it and you should have something like the first image on this post. If you make changes and re-run, unlike some Clojure environments that lose track of the JVM it will just bring up a separate window with your “new” app. If you want a bit more background, then you should read my post on seesaw that is a development framework for Swing GUI’s that I talked about in my previous post on Easy UI development in Clojure with Seesaw.

With dependencies working, the Clojure World with LightTable should be your oyster! :-) Go for it and feel free to let me know in the comments as I’ll quite happily update this post or create a new one referring to peoples experiences. I’ll certainly be posting more here about my adventures in LightTable ClojureLand…

Still not Working Huh?

If you’re still reading this, you’re either curious or something went wrong while you were trying to do the above. If one of the below fixes doesn’t work for you then let me know and I’ll try and help you solve it and add it to the solutions below.

Clean your Maven Directory

Whatever version of Lein you’re running it’s probably best to clean out your Maven directory:

rm -r ~/.m2/*

Then try building a project from scratch and see if that works.

LeiningenClean Installation of Lein2

Most likely it was that you’re running Lein 1 instead of 2. To check, you can just check with the following command:

$ lein -version
Leiningen 2.0.0 on Java 1.6.0_45 Java HotSpot(TM) 64-Bit Server VM

and if you get a 1.x you’re obviously running Lein 1 that is an absolute no-no. If you do get something like the above (i.e. 2.x) then you’re really in trouble and should probably let me know…

Otherwise, you’re running 1.x  and LightTable won’t work with this configuration and give you all sorts of weird errors. You’ll have to upgrade, which means that you should clean out your .lein directory:

rm -r ~/.lein

Then you’ll have to do a “Bootstrap Install” of Lein2 which isn’t that hard. Firstly, remove you’re old shellscript which in my case was in my ~/bin directory that is on my Unix path:

rm ~/bin/lein

Github LeiningenFinally, you’ll need to get the latest and greatest version of Lein 2.0.0 – this matters, as the default when you grab it from GitHub is the 2.1-SNAPSHOT (at this time of writing) version which is on the “master” branch, but unfortunately this won’t currently work with LightTable and give you weird connection errors. I originally got this, then changed it to Stable (2.0). In my environment, everything is in ~/Gits.

The last step for this is to then install Lein2:

cd ~/Gits/leiningen
lein install
lein version
>> Leiningen 2.0.0 on Java 1.6.0_37 Java HotSpot(TM) 64-Bit Server VM

Note: One update I got from the previous post was from rjb / rodbiresch who says:

Nice post! I took a slightly different path by using homebrew
to pull down clojure and leiningen. One of the nice things
about homebrew is that you can easily switch versions without
having to manually clone, download, clean stuff, etc.

Again, if you manage do upgrade using homebrew let me know or even better, post a blog entry yourself and I’ll happily link to it :-)

Posted in Uncategorized | Leave a comment

Agile Baby Steps – Iteration 3

If you’ve just landed on this, you may want to first read Agile Baby Steps – Iteration 1 and Agile Baby Steps – Iteration 2 which outline previous parts of my agile journey.

I’d just finished up at Web Media and things were starting to get a bit tight (economy wise) and I started looking at permanent positions, ending up at SilverStream, who were subsequently acquired by Novell. Although there were no real process parts to this role, it did get me going with Web Services, or what was to morph in to SOA using some great orchestration and portal tooling (now part of the dustbin of history…). It was the next role at MYOB (an Australian accounting package) that took me a little further down the road of Agile. MYOB were riding a high after the introduction of the Goods and Services Tax (GST, aka Sales Tax, VAT, …) which meant people really needed to use an accounting package for in order to compute their quarterly statements. There were two major events here:

  • I was introduced to Apple (back before the original iPods – I was sent to WWDC within a few weeks of  starting there!)
  • I was fully trained in Rational Unified Process (RUP) and subsequently “successfully implemented it”

The interesting thing is that my “successful implementation” was a termination of the whole project! The simple reason was that due to the usual lack of stakeholder buy-in, “role protection” and internal politics it was a no-goer. The great bit was that due to RUP’s bias to addressing risk up front, we had about 30 major risks, over 25 of which were being manifested! I think that’s a success as unlike so many “bad RUP” implementations, we had the sense to quantify the fact that the organisation was not ready for iterative development. It also wasn’t an entire failure as the dev teams loved the concept of iterative planning and development, so what was implemented was not RUP, but probably the “Agile bits” of it. It was a start however, and that’s better than nothing as I’ve commented in Egoless Change and Agile.

HMAS Sydney

After a few technical engagements, the next real chance I got to work with process, was ironically with my good friend Peter Tighe, who was the Development Manager at MYOB and had since moved to Tenix Defense, Marine – the people who build Australia’s Frigates. Pete asked me if I’d like to help out with some work there and seeing as he was one of the key reasons for me going to and staying with MYOB, I quickly accepted. Having both used RUP, it was an obvious choice (remember, we used it properly). Needless to say, the project went quite smoothly and I found a great little tool called XPlanner as I’d been reading eXtreme Programming Explained: Embrace Change by @KentBeck. This wasn’t agile yet, but it was RUP with quite an Agile flavour.

After a bit more defence work, I then got back in to the “mainstream” doing a bit of work in Risk Management and Enterprise Architecture around ESB’s, but it was my final gig in Australia, bought in with someone I knew at SP AusNet that really got me in to Agile. Our team had a former ThoughtWorker who was needless to say very pro Scrum. Coming from a RUP background it was certainly a “clash of cultures” in the beginning. After taking out all the “religiousness” from this individuals view I started to see the sense though. We could use the practices of Scrum (which I didn’t really know that much about apart from Stand Ups and Stickies) that went for weeks within a RUP Iteration which could last for months and in fact used Rationals RUP Rational Method Composer to create this hybrid process. Unfortunately our whole team (about 20 people) were terminated due to a political slip-up but it ended well with the guy who bought it all together founding Intunity who have become an Australian success story and me heading off to the United Kingdom…

PS Wondering where all this is going? Apart from being an Agile Ramble…? Stay tuned as like any good thriller, it will all come together in the last parts and they’re next (whenever that is – check the timelines on these posts and you’ll see they’re a bit sporadic)

Posted in Change, Process, Agile | Tagged , , , , | Leave a comment

The Most Expensive form of travel in The World!

Ticket BarriersI had an interesting experience today – I swiped my Oyster Card and then remembered I had to top it up so I swiped back out the barriers. You’re not supposed to be charged in this situation, but when I went to a top-up machine it said my card was -£3! What??? Putting 1+1 together I then went to the ticket window and explained what had happened and the guy confirmed – I’d been charged £4 (as I’d had £1 on the card). No problems, he reversed the transaction and I topped up my card.

UndergroundOn the walk to work (where many of my “great thoughts” arise) I got to thinking – I walked roughly 10ft “round trip” so that makes the “journey” 40p/ft! Following on from this, it would surely make that kind of travel the most expensive, and most annoying as you’re locomoting yourself! Bought to you by our good old London Underground…

Carrying this silliness further I wondered how much would it cost to get to the US using such a pricing structure. A simple query to Wolfram Alpha (I knew it was good for something ;) reveals that it’s 1.832×10^7 feet from London to New York so simple arithmetic gives us a total cost of £7.3M or US$11.4M!!! Well that’s an expensive trip!

Virgin GalacticSo, if you want to “one up” all your colleagues who are talking about Luxurious Cruises, Virgin Galactic and all those “cheap” forms of travel, just go to a tube station, walk in and out of the barriers and you’re then a member of a very exclusive club :-)

Posted in Comedy, Miscellaneous | 3 Comments

Agile Baby Steps

Agile

Just a bit of a placeholder for my posts on Agile Baby Steps:

There’s still Iteration 3 (soon) and Iteration 4 to come…

Posted in Agile, Agile, Process | Tagged , , | Leave a comment