UML – An old acquaintance long forgotten

Yesterday I experienced a moment of involuntary memory Proust would be proud of. Rather than the “episode of the madeleine” though, it was the much nerdier “episode of the UML”.


Memories of arrows and boxes were quickly over-shadowed by those of the conversation and coffees that were enjoyed during the timeslots allocated for UML class at university. The non-native speaking lecturer, the confusing notes, the seemingly pointless nature of it all; memories that make me wonder if we really gave it a chance at all? As if it were an old friend I found myself asking, where is UML now? What is it up to? Is it still alive?


For those of you not familiar with it, Unified Modeling Language (UML) is a general-purpose modeling language in the field of software engineering, which is designed to provide a standard way to visualize the design of a system. The idea of UML seemed to make a lot of sense… theoretically. Indeed where would designers be without an ability to map out their designs diagrammatically? Standardized notation was an obvious logical progression.


But is standardization really necessary, or is it a burden that generates additional work, developer frustration and unnecessary complexity?




Use of UML by a team who are fully competent with it may carry some benefits, but lets face it, here in the real world a large number of developers cannot, or are not interested in remembering the nuances of the notation. Many never learned it properly in the first place. Developers may hide the fact that they don’t remember the notation and as a result, waste time looking it up or waste other coder’s time getting it wrong. I’ve seen full-blown arguments as a result of misinterpreted UML. It has always struck me as a tool that made the design stage unnecessarily complex.




In recent years UML seems to have somewhat fallen out of favor as a result of the direction the industry is taking. It may have been useful at a time where Business Analysts imagined a solution in a land far away and news of the beast flowed down through the deadly waterfall of documentation. But with tech entrepreneurs now preaching the good word about Agile development, ‘failing fast’ and all the other fancy ways of saying ‘just get it done’, it has lost significant ground. It is notable by its absence from job application requirements. In almost 10 years I have never once been asked about it in an interview or discussed its merits with another developer. Coding has also grown and changed so much since UML was first created in the mid-90’s that it is sure to carry extensibility issues, even if it has been updated several times since.


In thinking about modeling systems, I ask myself ‘what is the simplest way to communicate a design idea to the team efficiently and without ambiguity’.


Considering that the majority of people (60 – 65%) think visually, making use of the full range of possibly imagery must be more intuitive and allow for a broader scope of idea depiction than a small set of standard notation?


As a designer and developer who creates and comprehends ideas best when they are represented visually, I made extensive use of all sorts of diagrams of my own creation when we designed the game engine. I used a mish-mash of boxes, arrows, color coding, side notes, cave art representations of memory registers or pointers and a few interpretative dance moves to explain my ideas. And despite the unique nature of how I like to present an idea, the team never once suffered dire consequences from the lack of standard notation.


As long as there is good face-to-face communication in the team and an open atmosphere of scrutiny applied to all proposed solutions, a simple cave-man drawing scrawled in whatever format suites the designer with a round of questions afterwards can fit the bill just as well as a formal notation. Who really cares if the arrow is supposed to be filled in or not, just as long as we can establish quickly what actually needs to be done!


And so through my own experiences I have to conclude that UML is not the clearest, quickest or most extensible way to represent a system design.


Will the next generation of developers even hear of UML? My guess is that it will become, like Proust’s madeleine, a distant memory.


Farewell my old friend.

Enterprise award 2014

After doing the pitch for the county final of ibye on monday, we had several nerve racking days waiting for the results.

And so, on thursday the 9th of October, we were delighted to hear that we had won in the category of the young startup.

We had a great time, and it was a very good learning experience.


Now… back to game making ;)




The last few weeks have been very exciting !

We’ve been selected to be part of the first round of Irelands Best Young Entrepreneur 2014. And we’re also finalists at the Bank of Ireland startups award 2014  ! Yeeha

I’ve also updated the look (after a tough fight against wordpress) and the content of the website so have a look around ;) ( Below, there are some great posts by Niamh about how it felt to make Primal Flame )


Summer’s over, here is what’s comin’



The summer is over, and here at Irrelevant Fish we’ve been busy. We made a movie app for Cinext ( It was great to use our skill on a short term project.

Apart from that, we’re prototyping new game idea’s weekly. And should have decided on our next game project within weeks  ;)



The hidden factor in time estimation


Project overrun and the difficulties encountered when trying to accurately predict development time still brings the finest war stories to any IT Christmas party table. Over the years, numerous methodologies have been developed to tame the beast, but with software still the adolescent of engineering, the dark art of estimation remains elusive.

Powering towards them like a Mexican wave of guesses and preemptive overestimation.

As a developer who is drawn to those romantically told war stories forged in the quiet cubicles of industry, part of me kinda likes it that way. A shocking confession perhaps, but in my head the orderly world of left-brain logic will always long for the great unexplored chaotic space of imagination. In some ways, it is the occupational necessity for both of these that makes the IT department the most romantic, humorous and fun bunch of dreamers in the cold world of carpeted cubes.



In recent years, the issues of vague requirements and incomplete proposals have been somewhat addressed by the addition of that layer of people between IT and the rest of the world. But despite this progress, we have all seen the look of fear in a developer’s eye when the question ‘how long it will take’ ripples across the morning stand-up meeting, powering towards them like a Mexican wave of guesses and preemptive overestimation.

with undoubtedly late nights, we usually hit the target – there or thereabouts.

We’ve all done it – aired on the side of caution, made a quick estimate without knowing where we’d start and then added a few days ‘just in case’. Of course the more confident you are, the easier it becomes to ask for more time or demand more specifics. But with varying degrees of competence, confidence and out-and-out optimism on any given team, when all estimates are pulled together they will usually contain a few land mines. And so with a balancing act of cautious early estimation and frantic late re-estimation, by the seat of our pants and with undoubtedly late nights, we usually hit the target – there or thereabouts.



Estimating for oneself however, now that’s a whole different story. Cover-ups and management-pleasing are no longer required. You are free to be totally honest with yourself, even if that means admitting “I haven’t got the foggiest notion”. Of course you still need to make a stab at it for your own sanity – and it was this stabbing that taught us a lot about what is required to get it right.

Before making Primal Flame, we did not have Industry experience managing a full project life cycle and were unfamiliar with the freedom and responsibility that comes with manning ones own vessel. So how did it go..? Our initial estimate was wildly inaccurate, with the final release having 100% overrun on our original estimation. But why..?

We estimated with our hearts and not our heads.

We had minimal experience with iOS development, even less with game engines or animation and for reason outlined in another post, our design was not fully envisaged before we started. But as it turns out, our biggest mistake in estimation came not from these obvious stumbling blocks but from a hidden factor – Emotion. Our original estimation was actually a reflection of ‘when we would have ideally liked to be finished’, ‘when those around us would have expected us to be finished’ and ‘how long we thought we could do this for’. We estimated with our hearts and not our heads.



Whether we have truly learned to remove the last minute panic and serious all-nighters from our development cycle remains to be seen

Making our first game has taught us a lot about getting involved in long-term projects. You must be prepared for the long haul; to see it through even if the ‘proposed’ finish line fades into the distance behind you; to be honest about how long it will take you to produce something really great.  No matter how much you want to feel like a fast coder or a genius designer, casting aside your emotions and focusing on the cold hard facts will serve you well in the long run.


Whether we have truly learned to remove the last minute panic and serious all-nighters from our development cycle remains to be seen, but at least this experience has given us one more great war story for the Christmas party table :)

Primal flame’s reception


a quick post about the release of the Primal flame…It went well !

We had great reviews from the major websites ( thanks guys), here are some examples :
5/5 – AppAdvice – Game of the week – “a real gem […] gameplay is completely unique ”
5/5 – Cult of Mac – ” It just keeps on being amazing”
4/5 – TouchArcade – “Primal Flame could start a whole new genre”…”beautiful … poetic”
4/5 – 148Apps – “extremely cool and tactile mechanics”
– IGN – App of the day ( 25 / 02 )
– GamesRadar – “Might be one of the most beautiful [games] you’ll find on iOS”
4.5/5 – – “An absolute download recommendation”
4.5/5 – iPhonelife – “refreshingly enjoyable”
4.5/5 – Apptual Gamer – ” One of the most beautiful mixes of art and arcade you can find nowadays.”