Across the pond

2016 began with a very big decision for the Madsen family – we were leaving Australia and moving further north; Sweden to be exact.

I wont go into the reasons for going. Instead I’ll go into some of the experiences that’s come out of this. It’s a big decision, upping your family from one country to another; selling your home, cars, furniture et al. But as with many other experiences in life, it has it owns rewards.

First and foremost – Sweden. Yeah, it’s cold and really dark during winter. Definitely  a big difference from Perth, Western Australia. That being said, Sweden makes it relatively easy for Nordic citizens to settle in. You don’t need a visa or anything else. And yes, I’m a Danish national so I fit into that category very easily.

…What to do first

If you’re ever considering going to Sweden, be aware that the first thing you WILL need to sort out is the “skatteverket ID”. Basically it’s your tax ID. Uh, shouldn’t be a surprise seeing as swedes really love paying tax. This is a two-stage process. First step is to register for the ID itself. This takes 4 weeks to process. You need to do this in person and make sure you read the details of what documentation et al you’re likely to need. Expect to spend a good part of the day waiting in line as well.

The ID

Without the “skatteverket ID” you can’t:

  • Get a mobile phone subscription, internet access (fiber, DSL etc)
  • Register your public transport card (yes, you can buy it, add funds to it, but you cannot register it)
  • Get a bank account
  • Access the library
  • Get paid
  • pretty much everything that requires you to identify yourself…

The second step is to get the ID card – because, well, yes the card is somewhat more important than the actual ID. The reason why? simple, it’s an official government ID that verifies that you are who you say you are and that your ID is valid. This ID card is a photo ID. Once you get this ID you’re set to go and can get your bank account set up, access the library, get paid etc. What you can’t do, till you have a full income is get a mobile phone subscription. It takes about 2 weeks for the card to arrive and you’ll have to pick it up in person.

Yes, a mobile phone subscription actually has an additional requirement. You must have an income. Doesn’t matter how much money you say you have sitting in the bank. A credit check is actually run against you and if you don’t have an income it’ll come back negative and you’ll be rejected.

The ID card is the holy grail of IDs for foreigners – with it you can pretty much do anything. Without it, well..not so much.

The biggest problem for the period of time where you don’t have your ID is that you’re a non-entity.

Now that’s the practical out of the way. Had to be said as it’s incredibly important that the “skatteverket ID” is attended to ASAP.

…But wait, there is more

As mentioned, it’s a big decision to move. So where do you move to? Ah, here’s the biggest issue with Stockholm in particular. The rental market is tough. It took us quite a while to find a place to rent. And don’t expect to find anything below 12,000sek that’s worth living in. That’s quite expensive compared to what your repayments on, say a mortgage is here in Sweden. The interest rates are crazy low here and has unfortunately pushed the housing prices way up. I mean, stupidly high. So, finding a place to live. That’s a tough one. Don’t go into central Stockholm, unless you really have the cash for that.

Sweden has two types of rental agreements. First-hand contracts, which are between you and the owner directly. It’s the cheapest by far but there’s generally a waiting list around 2-4 years so you might as well forget that. The other is a second-hand contract. Where the landlord has “bought” the apartment/house from the “owner” (yes, doesn’t make sense, but there you go) and you end up paying quite a bit more. Probably averaging around 2x the cost of a first-hand contract. Luckily most utilities are included in the cost (if you get a fair landlord). We got a great landlord and water, electricity and even our fibre internet connection is all included in our rent.

Here’s where, as a foreigner, it becomes a bit hard to manage – most landlords will want to meet you in person before they will sign a contract with you. Doing this from overseas is not easy – so try to find a proxy that’s willing to assist, otherwise, forget about it; buy a tent instead. Most landlords will also want to see that you can pay your rent; so proof of employment can be very important. Not always, but it can be.

Expect also that things will take 4-8weeks to finalise for a rental. There’s a lot of paperwork to sign and it’s all very official. You might also want to ensure that your landlord has gotten permission from the owner to rent it out. If not, then you could very easily get booted out the minute you set foot in the apartment; wave goodbye to your deposit et al.

…The journey

For practical reasons I left Perth before my wife and kids. There was a lot of things to resolve before they could follow and my wife really pulled out all her magical powers of organisation to get things finished. Honestly don’t think this move would have been possible if it wasn’t for my wife’s effort and the help of a lot of our friends.

Lucky for me, the rest of the family followed 2 weeks later.

We also got here at the right time of year. There was still some winter left, but we managed to avoid the deep winter and incredible cold (-15c or below) and still got a taste of snow (much to my kids’ delight).

We’re now in April and getting a good deal of sunlight – this of course also means the weather is getting better. e.g. the cold is pretty much gone. Expect April to hit between 11c and 3c. Light rain is common too.

…What to expect from Sweden?

Well – first and foremost, expect things to cost a wee bit more than AU at least. Petrol is about 2x the cost of what we saw in Perth. The easiest would be if you just take the cost in AU and automatically add 25% on top for most other services and/or products. It’s a bit of a head-bender when you see a bottle of water being sold at 15:-

Another thing is the language – unless you’ve had a babelfish embedded, Swedish is nothing at all like English. But the swedes are more than happy to accommodate you and speak English to you. That’s initially really good because you don’t have to look like a failing, unemployed mime when ordering your food or asking for direction. After a while it becomes a nuisance as you will need to learn the language and the best way is just to start speaking it.

Sweden does also offer SFI; not sure what it stands for but it’s language schooling for migrants – sign up for that as soon as possible. We’re going to be enrolling fairly soon.

Another part is the public transport – you’ll love that for sure. It costs about 790sek for an adult to pretty much have 30-days of public transport. That’s cheap folks – especially compared to AU prices.

I mentioned interest rates are low and housing being expensive? yeah, think i’ve already covered that. It’s important to keep in mind tho. Also, if you do get a job then it’s likely that you’ll be able to purchase quite a few things without paying MOMS for it (E.g. VAT, GST) which is 25%.

sb-logotypeLastly, alcohol – yeah, that’s a tough one. Nearly all super markets stock alcohol…not. it’s light/mid-strength only. For the good stuff you have to go to Systembolaget; a government run liquor store. Kid you not. Full-strength alcohol can only be purchased at this place. Prices are what you’d expect. about 25% more than what you’ll see in AU. Selection, very limited. However they do have to order home pretty much anything that you want. Might want you to buy 6 or more bottles of it, but they will order it in.

…Schools – for the kids that is

Education conceptMan – here’s probably one of the biggest changes for us coming from AU. The school system here is brilliant. And i mean brilliant. The school we enrolled with is local to us. It’s a public school (we’re used to having to put the kids through private school in AU if you want a good education, and lets face it, that’s not even a promise with the quality of private schools plummeting) but incredibly organised. We literally had a meeting with the headmistress on a Friday afternoon, and the girls started the following Monday. They have an interpreter available and have been teamed up with other students who’s bilingual. Big bonus. Plus, your kids get fed at school. Breakfast if you want, but a hot lunch is always served.

Once you have your “skatteverket ID” you can enrol your kids. Doesn’t take much, just contact the school and set an appointment to see them. Easy Peasy.

…Pros and Cons

weather - stockholmIt’s an adventure; Whatever reason you have to move across the pond, make it an adventure and you’ll do fine. A lot of people think it’s a massive move and full of risks, but remember that in Sweden you’re very heavily protected as an employee. That limits the risks significantly once you’ve landed a job.

Another benefit here is that everything is incredibly organised and it all communicates/integrates. It’d almost be scary if I wasn’t already Danish and familiar with the amount of knowledge the government has about you.

Some things that’s not so good – well i touched on housing. That’s a really big problem, but not just for migrants. Get registered on, pay the fee and start looking. It’s cold as well. If you don’t like the cold, don’t go here. Winters are bad for beach-goers. It gets dark and you’ll get close to 18hrs a day without the sun (at least if you go this far north). The same goes for summers of course. Some really, really long days during summer.

The industry is booming here – ok, when i say the industry i mean IT&T. Stockholm in particular is a start-up heaven. Nearly 90% of all VC funding for start-ups in Europe are expected to go to the north. That means that IT is a big thing here.

This also means that the job market really needs more people. Especially technically skilled people. Which of course is good for us geeks.

Windows Phone 10 update, stuck with error 0x8024201f; easy fix

I’ve always been happy to give cutting edge apps, operating systems and gadgets a go and when Windows Insider opened up for Windows Phone 10 preview I definitely had to sneak on board and get my trusted Nokia Lumia 930 (a gift from a very dear friend, Jin) upgraded.

To be honest, the experience hasn’t been altogether a happy one. That being said, the actual risk is minimal, but frustrating nevertheless. Especially with apps failing (apps i was using frequently, such as Outlook or my Calendar) in steady streams.

Over the past 5 months I’ve done more than 15 hard resets of my phone – purely because it became too unstable or vital apps (such as the Phone app, durr) became unresponsive. Granted, it’s an easy process to reset, but time consuming.

It came to a head in the past 3 days – 11 hard resets and a couple of updates keeps failing. Especially 10514 and 10536. Kept getting a message “an update was not installed” or somesuch, with the phone then proceeded shortly after with another update download. This went on and on and on, not only making the phone unusable for me but also very hot to touch.

Finally deciding that this was going to stop I figured a downgrade and another upgrade would see the WP10 updates install properly.

So here’s the fix if you’re actually stuck with not being able to upgrade..

  1. Download the Windows Phone Recovery Tool 2.1.2 from here: onto your PC/Laptop
  2. Install the app and connect your phone to your PC/Laptop
  3. Once connected up, click on the “Install Software” icon (this can take a while so be patient)
  4. Go through the full install and setup your phone again. This will bring it back to WP8.1.
  5. Go to the Store and install the Windows Insider app
  6. Once installed, open the app and sign up for the “Fast” track (only Apple fanbois should go with the slow route)
  7. Once done, restart the phone
  8. Go to Settings -> Phone Update and download the update. Once it’s downloaded it’ll tell you to install and restart. Do so. Voila, I skipped what i believe is the troublesome update 10514 straight to 10536.

(I didn’t have any issues with the phone not being recognised, but have heard some have that issue. Do a Hard Reset if that’s the case first before going through with this process)

This brought me straight to the 10536 update and it’s working a treat again. Apps are stable and I’ve gotten new versions of many of the apps I always used (Outlook, Calendar, Phone, Messaging etc).

There you go, stay happy and keep coding..



IFA 2015 in Berlin – Santa needs TOIL

Yeah – Santa seriously needs some TOIL this X-Mas

Most know (by now you should anyways) that I’m a geek and all excited about new gadgets – CES and IFA are two of my most favourite shows. Gadgets everywhere.

This year’s IFA has just kicked off this week in Berlin and to say that there’s a few toys that’s caught my attention, is probably an understatement. Since they threw about 80 new devices out there, it’d be too much for me to cover (some also isn’t that important to me) – but the ones i’m the most excited about is here..

Moto 360 2nd Gen (link)

..yes..i know, it’s a ‘droid watch – but damn, it’s one fine looking specimen. I’m (secretly) a watch whore..s’cuse me..enthusiast, and the wearable market is flooding with smart watches (and no, i do not count the iWatch as being smart), but they tend to look like “packaging” rather than something you want to wear.

lenovo-launch-moto-360-bigok – some of the 2nd gen designs are a little bit “blingy” for my taste, but the matte black steel link is just awesome.

some key points on the 2nd gen:

  • There’s now a men’s and women’s collection (yes, ladies, you can play with the cool guys too)
  • There’s an inbuilt fitness tracker (can see some awesome applications coming for that, g’bye Fitbit)
  • Thinner bezel than 1st Gen 360

Oh, and lets not forget it looks a hell of a lot better than both Galaxy Wear and the Apple iWatch.

This one is on the top of my list of toys for the next year.

IdeaCentre Y700/900 (link)

With the Y700/900 Lenovo steps right into the high-end gaming market and mentioned during the reveal was tool-free install, from end-to-end, 32Gb ram and Dual-GPU, not to forget Skylake CPU.

lenovo-launch-ideacentre-y700-bigI actually didn’t think Lenovo would make this move to be honest – yes, we’ve heard them ask for “What do you want in a gaming rig?” on more than one occasion, but the gaming industry is a numbers game. Bang-for-buck is the mainstay for gamers these days. The true enthusiast will of course shell out their second kidney for the coolest tricked out rig on the market, but they’re not the mainstream users that most manufacturers target from the bat. No, that was what we saw with the entry level Y50/70 gaming laptops. They’re right in the sweet spot on price and capability.


Yes, they looked good and the addition of the 4K screen was something totally unexpected, but it was a numbers game predominantly – again, bang-for-buck.

For gaming i’m usually by far a desktop and console type of guy; have owned both dedicated gaming laptops before and the experience (especially with the Dell XPS 1710) left me with a bad, bad, bad taste in my mouth. The Alienware later owned took the edge of the bitter experience – but, that was also some seriously expensive kit. Would take something seriously impressive to make me fork that kind of dough out for a gaming laptop again.

Lenovo doesn’t sit still of course – the Y700/900 shows that and I for one can’t wait to see what the guts will look like when more is revealed.

That leads me to the next toy..

IdeaPad Y700 (link)

As just implied, the gaming laptops are mostly a gimmick for me – ok, owning one of the Y-series laptops would be awesome but not for the mobility aspects of it. They come with some serious guts that I can appreciate and I don’t currently have a desktop.

It’s coming in 4 flavours (awesome, awesome’er, awesome’er’er and awesome’est):lenovo-laptop-ideapad-y700-touch-back-1

  • 14″ entry level, yet still with AMD R9 discrete graphics
  • 15.6″ with Intel RealSense
  • 15.6″ with Touch screen, and
  • 17″ (which is rumoured to come with the Skylake chip – unconfirmed at this stage)

Lastly, one device that I think is epic.

Yoga Tab 3 Pro 10 (link)

I owned (guess you can say “we” own it now) a Yoga Tab 10 HD (the little cousin to this one), which is a 10″ Android tablet. Still, I’m not a fan of Android, but this little device is here to stay. It’s probably one of the devices that gets the most usage around the house and that’s because of the awesome battery life this tablet has – 18hrs.

So, the YT3P10 is the same as the Yoga Tab 2 Pro and maintains the nice build quality – and of course it has a projector in-built. Yeah, the Yoga Tab 2 Pro also had a projector in-built, but rumour has it that this one is even better (projects a 70″ display onto any wall).

Here’s the total list of devices that got revealed..

Lenovo IFA 2015 Products Showcase (external)

Technical debt – when the bank really can’t help you out

Not long ago I had a brief 2hr session with a client who were looking at implementing a collaboration platform (read: SharePoint) to support their massively growing business. The discussion as usual went around platform/product capabilities and as usual the topic slowly venture into requirements and different scenarios that the client wanted the system comply.

Due to the growth of the business, all internal systems had soon been left behind and simply couldn’t cope with the expansions – this is often the case for companies that doesn’t factor IT into their business model. Luckily for the client, most of the OOTB capabilities of the product supported directly what they needed, but a few didn’t. These were for the client seemingly extremely important and a custom solution would most likely be needed.

If you’ve ever spent any time in a meeting with a sales representative, you’ll know that the general consensus is to sell – yeah, go figure. But as a consultant there’s always areas that you really need to be careful of entering into – and this is where you need to have an open and honest discussion about the impact a system can have to a business.

Picking a solution (No, you are not given a choice)

Naturally most companies employ consultants because they know that it’s not their core business. So looking at the reasons to adopting a system (any system), from the business perspective, there’s:

  1. The need to increase productivity, or
    • The need to decrease deficiencies in current system
    • The need to cut cost of productivity
  2. The need to introduce controlled/improved processes
  3. The need to expand, or match a shifting market, or finally
  4. The need improve on system quality

It’s a very broad non-specific and/or descriptive list but covers the various models used by management consultants (including PI-MDD, which from a consulting perspective is my personal favourite – that quite often goes against the grain, especially since I’m predominantly a SharePoint consultant). I’m not going to into the how and why of modelling these things, because I don’t have any formal “Consulting” education (can you even get that?) – but i digress – the needs and context needs to be detailed, which is where many smaller corporations don’t see any value – “We know our business and don’t want to pay YOU to tell us about it” – so they find a budget, which rarely actually has any foundation in either context or need, but a “This is our budget, get it done” perspective. The next step is then to either find a solution provider or a product.

The model here is pretty cost higher than budget.

Double-click, Next, Next, Next, Finish

Once a solution provider has presented a “choice” which matches the “budget”, the time comes to integrate the solution. A short stint from an onsite specialist and you’re up and running. Some time allocated to “Power training” and the business now has a Best In Breed solution. Exit stage left.

At this stage there’s already conflicting ties between the Need and Context. Initially there’s a drop in productivity because most users are having to learn on the job, perhaps mistakes even occur? orders are lost, tasks are left incomplete – and this is were human ingenuity kicks in and the proactive folks simply circumvent the system till such a time as the system can be “fixed”.

What occurs in this instance is a dramatic drop in ROI – the system is not doing what it’s meant to do and staff are either slipping back and using what they previously used or are making up new processes in order to meet their KPIs or deadlines. After all, business must go on and the outcome is “the system doesn’t work”.

Utopia doesn’t exist

Most platforms seems to have a lifecycle that spans over 5 to 7 years before being replaced/upgrade.image

In the period between introduction and end of life – the utopian fantasy with software is that there’s no cost involved with it. Once it’s bought and installed, everything takes care of itself.

Ok, realistically most have an idea that software does need to grow, so storage, backups and servers are all part of the “natural” life of having a software platform.

The decisions to adapt a platform is far more intricate than that. oh, vendors will sell “support and maintenance agreements” to you at a % price. For that you’ll upgrades/updates, patches and an offshored support email that you can use to contact them if you do need some assistance.

But mostly the vendor relies on partners and/or solution providers to take care of that for them.

It’s here that technical debt comes into play and it’s where vendors or solution providers doesn’t want to go. Yes, I’ve just sold you on the idea that you should by my services or product, at a concise price, why can’t I declare all the costs to you right now?

There’s a natural increase in cost associate with a software platform – it comes in the form of both financial and resource efforts and it could increase the investment figures by up to 20% per annum, of the initial purchase cost, very easily.

Technical debt can be calculated – but it’s very complex so I tend to use an analogy to explain that adopting a platform is much like having kids – there’s an initial phase of excitement, followed by a sense of dread because the project is taking a long time and concluded with the reality that it’s a never ending cost that didn’t just stop when the kids left home.

When decisions matter

It’s always hard to sell a software platform/solution based on a high upfront cost, hence why most don’t do it, whilst there’s a seemingly ignorant belief in the fact that off the shelf packaged software doesn’t carry the debt as well.

Most have heard that a bespoke solution is too risky – hiring some developers to slap a system together and then call it a solution is risky, especially when approached like that.

Can you quantify the exact cost for any system? for most, no – there simply isn’t that much tangible proof to state what that figure is. Like with anything else, there’s a risk involved with the business having to change too frequent, which leads to either an out dated solution or a high cost in retrofitting it to meet the new needs.

Yes of course there’s a banging good approach that’ll be offered when this happens – lets go agile!!! For seemingly unknown reason, companies has now decided that agile is risk free. But it still doesn’t eliminate the technical debt that’s accruing – of course not, since the changes to the system is going to cost money and effort.

In conclusion

The only decision that really matter is an informed decision. Go into the adoption process with both eyes open and on the prize. Be aware of all facets of solution adoption and be realistic. The fact is, if your budget cannot sustain the system it needs in order for the business to prosper, then your business model is wrong.

Life is a like a box of chocolates

“When the present determines the future, but the approximate present does not approximately determine the future”

This entry today isn’t going to focus on technology…but why a “aha” moment got clarity to me…

Running a business can be extremely challenging, as I’m sure many people have figured out over the years – so it’s not surprising that decisions made in the now can have far reaching impacts and ramifications. That goes both for the good and the bad.

Most business decisions are made with an immediate financial goal in mind or with a long term strategy. Either way, a business decision is long standing and most of them can’t be unmade.

Drawing a comparison here, I guess the most important aspect of making decisions, be they business or personal, is to make an informed decision.

When decisions are made, without the backing of factual data, the outcomes more or less fall into either of these three categories:butterfly-effect

  • A positive, unexpected benefit;
  • A negative, unexpected detriment occurring in addition to the desired effect, or
  • A perverse effect contrary to what was originally intended;

The law of unintended consequences pretty much lists ignorance as the top of the causes for this. On the other hand, no level of analysis or consulting with specialists can ever account for human stupidity.

If you don’t take the law of unintended consequences into account when you make decisions, you end up with an uncontrolled outcome. That’s also true with personal decisions.

I’ve recently had an epiphany which led me to realise that at some point my own decision(s) weren’t quite that informatively backed as I’d like them to have been. This realisation pretty much meant that I had to re-visit previously made decision(s). And as the law of nature state – nothing can ever be unmade – it pretty much means there’s only two things you can realistically do.

  • Attempt to change the previous outcome, and
  • Don’t be an idiot and make the same mistake again

Of course that’s easier said than done – but at least I’ve realised that I’ve made a mistake (isn’t that the first step towards redemption?) somewhere along the line and now it’s just up to me to locate and fix it…

yeah, right…life’s like a box of chocolate and if I approach the “fix” with the same ignorant/uninformed position, aren’t I just going make the same mistake all over again, and hence leave the outcome into the same hands that caused the first set of results?

So now it’s time for me to investigate as much as I can about my decision(s) – ask a friend and mentor for some advice – and move on to address the “wrong” results

New horizons–a change is as good as a holiday

Back in August 2008 I joined Fujitsu Australia to take on a long term, SharePoint based project, as a SharePoint specialist. The project was challenging and rewarding, not without taking into consideration that I got to work with some excellent people, and as it’s drawing to a close there really isn’t much more for me to do.

Now, 4 years later, its time for me to look for other pastures. I’ve learned a ton of stuff and had a great experience, both by working with some of the best people in the industry, but also from a mentoring perspective. Fujitsu is a massive organisation, not just in Australia where it’s the third largest, but also internationally and the corporate learning that can come by being involved with global service offerings, from the ground up has really given me a new appreciation for enterprise solutions.

thumbs-upI’m leaving some very capable guys behind that truly knows what they’re doing – two colleagues who’s made my time at Fujitsu especially fun, such as Martin Abbott, probably one of the smartest guys I’ve ever had the fortune to work with, and Louis Mierowsky – one truly awesome architect – I appreciate all of you bearing with my eccentricities over the past 4 years. There’s other people who’s been a great influence to me, especially Omar Abdel-Alim has been there, all the way, teaching me so many things about corporate life and business.

This will also be a new experience for me – I get to work with another fellow MVP – in that I’ve actually worked with most of the senior guys there before. Mostly when you step into a new organisation you don’t just have to learn corporate policies, processes and people’s idiosyncrasies (including mine), but you also have to get to know the people you’ll now be working with. Luckily here I’ll know most of them so it should be a breeze to slip right in and get started with the serious stuff.

So now I’m off to join another big corporation – I accepted an opportunity with NEC Australia as a Snr. Solutions Architect in their Perth offices.

I’m very much looking forward to getting started and see where this journey will take me.

Input, Output and Actions – Back to basics

I was recently going through my RSS feeds and found an old article that I’d apparently earmarked for later reading. That seemed to start a trend and I kept going further and further back – several years back actually.

And that got me thinking….

What is the one trend that we (broad brush term) keep doing in this industry? We look forward…Constantly looking at what’s coming…what’s next…where do we go from here…where will “this” evolve to. We look at the gadgets, devices, frameworks, tools and services to innovate – because that’s where we are expected to look and then we moan when we don’t understand the basics – when that developer we just hired doesn’t get fundamental program construction or when we make mistakes ourselves.

We are quite often afraid to look at what we left behind – mostly because that’d make us be aware and acknowledge the mistakes we’ve made.

One of the bloggers out there that I quite often enjoy reading (i’m a consumer off his blog, not a participant) is Alberto Gutierrez and he’s the author of the blog that I’d bookmarked an entry from.

His blog entry “Forget about requirements, Software Development is all about inptus, outputs and actions” was what jump started my brain into gear and got me thinking about what I’m often doing wrong.

  • Labelling – i’m fanatical at labelling tasks

This helps me organise my work into segments that I can manage – or so I thought..Alberto’s blog entry must have sparked something that made me bookmark it back in 2009. And here it was. My labelling actually isn’t helping me. It’s making it unnecessarily complex. The fact of the matter is that it’s a task – one which has to be done – one which contributes to an overall goal. So, as Alberto puts it: It’s an input.

The result of that input is output – yeah, once the task has been completed of course.

I then set out to make this change to how I was managing things and the idea was to see if this would speed up what I set out to complete. Over a couple of weeks I did notice that the simplification of what I was doing was helping me spend less time organising and more time achieving.

I scrapped all my previous tasks lists and just made a single list. I use “Remember the milk” to manage my inputs – use whichever you want to use, the important thing really is that it’s available to you when you need it.

Full circle – looking back (or going back to basics) can quite literally be more valuable than to look for the future.

As Confucius said “Study the past if you would define the future”. It rang true with me and I’ve learned a valuable lesson. Making mistakes isn’t bad – as long as you recognise it, you can avoid making it again and that goes for all aspects of life really – not just for the professional side, but also in the personal.



Stick to your guns – why lifecycle management is important in the enterprise

The concept of Application Lifecycle Management is not a new invention that just popped out last year and hit us in our backsides. It’s a very wide topic with a lot of categories, which includes categories such as:

  • Project Management
  • Change Management
  • Release Management
  • Design, Modelling and Issue Management

Yes, that’s right guys and girls (honestly!!) – Project Management is indeed part of the Application Lifecycle (for real this time!!).

This is spread over an even larger list of methodologies and tools, some fluid/agile and some integrated…

We often hear that IT projects are more likely to run over budget, be delivered late and in a state of looking like a bug-ridden open source project…. statistically that’s quite often the case – so why do we bother when we’re doomed for failure? Well, because when things are done right, it just works.

One of the biggest mistakes I frequently notice on IT projects is the failure to understand that it’s not just the development and project management team which has to adhere to a process. (Yes, i know, those that pay the bills just want things done now…you arguing?…s’ok, there’s the door). IT projects are like a house of cards, the more you add and the more complex the “build” becomes, the more careful you have to be – so that means following that process even if it means you have to get approval before proceeding.

I was once assigned to a project to resolve a few bugs here and there. Nothing major, this was final stage of the project, just a few helpful hours when the cycles where free. The first issue I was assigned wasn’t that complex, but getting to grips with the code base and project layout did take a bit of time. It wasn’t really documented and there was nobody around to give a hand. Anyways, after about 1 1/2 of trying to reproduce the alledged bug, I finally gave up and tracked down the BA who’d lodged the bug to start with. For the first 30secs the BA had to get their head around which particular bug I was referring to – all understandable, the project had run for years.

Then it dawned on the BA which issue i was referring to…the message was…

That issue was fixed 1-2 days before it was assigned to you…

Ok,  naturally I wasn’t entirely impressed, so I chased down the PM that’d assigned the issue to me and got the usual blabber about “being newly assigned onto the project” and “we’re all in this together, please stop strangling me…garggle..ugghh..gasp”.

So the incident at least had a release for my homicidal side..

Why did the Project Manager assign the issue to me in the first place? Well, he’d been running around, trying to get resources stitched together to complete the project and get it out of his hair. Yes, he was a newly assigned PM and the developers on board were largely juniors. Obviously a failure to communicate on one level or another….or….something a bit more sinister?

The steps pretty much showed a full breakdown of the lifecycle.

Test conducted -> Issue Found -> Issue Raised -> Issue Triaged -> Issue Fixed….

And then that’s where things really broke down. No detail was found in TFS that the issue had been fixed. It was still assigned to the PM. Still in active status.

Obviously the PM was never informed that the issue had been fixed..who’s to blame for that? The developer? the tester? the PM?

It’s a very basic example of what can go wrong when the process isn’t followed by everybody involved. That includes developers, testers, project managers, stakeholders etc.

Considering how simple this was, the cost was huge and the ROI so small as to be negligent. Look at that from a project perspective, a drop in the ocean, however if that happened often enough the project would fail (unless we had some seriously generous clients and budgets).

Look at this from an enterprise perspective where cost of delays, additional licensing and hardware, consulting resources et al, then it’s obvious that the lifecycle is paramount. Had a process been in place above (well it was, but it obviously wasn’t followed) the waste of time (and additional cost to the project) could have been avoided.

Shortly after that incident I received an email, asking me to make a small change (just a date calculation, v.simple and quick fix) to another feature. I naturally understood that the work item had been assigned to me so I could see all the details of the change (and ensure nothing had been missed in the email), but alas, it hadn’t. Due to timezone differences I needed to wait for the PM to get back on board for the day, to ensure that the details I’d been given in the email was all encompassing. The work item change had been raised as an issue to be resolved – and lo and behold – it also hadn’t been assigned to me. Great, now due to check-in policies in TFS, I wouldn’t be able to check in before the change to go to the test team. Again, and added piece of delay that ends up costing money in the long run. Of course, I could go and make the change to the code base, wait for the issue to be assigned to me, check in and then move on. But, here’s another idea.

How about I DON’T do the work before the “paperwork” is all sorted?

Yes, I waited patiently for the PM to respond to my email – “S’cuse me, sir..please assign issue xx to me and verify all details…kthxbai” – and then I proceeded.

Did it take a bit of extra time to get this done? Of course it did, but what could the consequences have been had I not gone down that path? Again, wasted time and even possibly impacting code and changing features which wasn’t meant to be changed. Again, more wasted money/time/resources.

This is just a small example of why being very careful to follow a set lifecycle is paramount to IT projects – in the whole scheme of things, this wasn’t something major really – however, the project had already rolled way over budget and deadline, why continue to waste resources when a simple process could have prevented it all.

Measure twice, cut once – The law of professional development

Over the years, I’ve been fortunate to work with some seriously talented people – people who’s put my own meager skills to the test on a daily basis. It’s been a mix of people – some with strong academic backgrounds (BsC, Masters, Phd, et al) and some with a born knack for development. It has at times been a humbling experience, and in many ways it continues to be, that’s taught me that there’s always somebody out there much better, faster, smarter and stronger than me.

I’ve also been lucky to have people to lean on, for support (not just technical) and guidance, and some of the ways I try to work is reflected in that. I’ll be the first to admit that I don’t do everything absolutely right. I’m human and therefore expected to fail. We’re genetically wired to fail, it’s as simple as that.

One of my long-time mentors once gave me a task to complete (it’s irrelevant what the task in itself was), with no timeline, except I knew that this particular task would only benefit a minute fraction of people that I knew. I started working to complete the task, quickly made headway and was nearly finished when I was stopped to answer some questions. In this case the questions was “Why did you choose to do X, when Y was naturally a much better approach?”. Now method “X” was about 5 times faster to complete than method “Y” – it wasn’t a real kosher way of doing it, but usage was less than a handful of people, I “cut the corner” so to speak and took the risk of failure on my own shoulders. Simple math really.

Risk =  Probability * Damage Potential

So I took the chance based on that and figured that it’s only going to be used by a couple of people – no reason to go all out and design the Eiffel Tower all over again. Naturally as with many things that happens in life, I didn’t quite see the point of the exercise, except I knew that there certainly was one. After I answered the question of my choice of method (“X” over “Y”) I complete the rest of the task.

A couple of things occured to me as I was looking at the final output. Well, it did the trick….buuuuut….I wasn’t necessarily proud of the way it’d been done. First I figured the doubt came from not being 100% sure of what the point of the questions and exercise was, but then it dawned on me. I had used a shoddy approach – yes, it did indeed do the trick and got the job done, but there was very little satisfaction in completing the task. Personally I wasn’t entirely happy with it. It took me a few days to get it all sorted out..the “why” factor had hit me.

If it is worth doing, its worth doing right

It didn’t really matter how many people would be impacted by it – what mattered was the way I’d chosen to go about doing it. From a professional perspective, what did it say about me – I was willing to cut corners when nothing prevented me from doing it the right way. I had no time, budget or complexity constraints. It was a lazy attitude and this was exactly what the point of the exercise was.

Back to present day – I came across a question about why bother use proper techniques in a development shop, seeing as it was a small 1-2 man shop only. Was using MVC, UML, OOD etc overkill for an internal application? Now, very little risk would be associated with the “probability” of failure by the internal application. Impact was tiny and each of those impacted could easily fix any issues that would pop up. It was a supportive application and obviously not business critical (otherwise the question would most likely not have been asked). Many other answers were provided – such as what OOD was and why it was technically implemented. How it helped manage complexity etc etc.

I read through most of the answers, but noticed nobody was looking at the question from another point of view – from the perspective of “What does it say about me, professionally?”. It occured to me here that my lesson learned way back when, was applicable to many other areas and it founded on how I do things.

Do it right, not because its an option not to, but because what you do, and how you do it, is what shapes you as a professional

Does cutting corners, when there’s no reason not to do it right, not signal that something is wrong? Personally I believe so.


Getting close and personal – pitfalls of long term consulting

I’ve been consulting for quite a number of years now – mostly in and around service delivery – so have been exposed to a number of different types of projects. Needless to say, both good and bad, however isn’t that why consultants are called in? If things were always easy and straight forward, would there really be a need to for a consultant? probably not, so you’ve got to take the good with the bad…and vice versa.

Most projects are of a short term nature, meaning, you’re called in to sort out a small specific piece of the puzzle, whilst rarely stay long enough to see a project reach completion.

Consultants come in many shapes and sizes, but the most common traits are:

  • Subject matter experts of various platforms, technologies or business related topics
  • Skills resource to subsidise excisting pool of resources

The main benefit you can get by taking up consulting is the width of exposure you get to a large number of industries, challenging scenarios and people. It’s a great way to build a huge repertoire of experience, in relatively short periods of time. The second benefit I see is that you don’t get terribly personally involved with the projects you’re working on – generally there really isn’t time to get attached.

But, once in a while you’ll end up either going back to the same project again and again, or you could stay with a project for years on end.

Here’s where the line between consultant and project member tends to blur. As most who’s dealt with developers would know, they’re a passionate bunch (and at times can have huge egos). A developer can become very attached to the project, and in relation also to the work they contribute. There’s a certain pride amongst developers in what they do (both good and bad) and I guess this pride is what often makes them excel in their chosen line of work. Basically if you don’t care your work often reflects it.

As a consultant you really cannot afford to become too passionate about things – and here’s where long term consulting can become rather bad. Whether or not you’re part of service delivery or planning, it matters not. But alas, consultants are merely human, and getting involved on a personal level will happen once you’ve spent years on a project – it’s inevitable really. The difference between the short and long term gigs are that you start to see yourself (read: the consultant) as a project member. You spend more time on the project and on-site, than you do at the company you’re working for.

Your client office/location is where pictures of your kids appear, where that favorite coffee mug has a permanent home in the cupboard etc.

Well, is this a bad thing? You’re a gainfully employed member of the industry – secure enough that you dare take out that car loan, settle on that mortgage, raise a family. All things that generally requiere stability.

I guess it depends greatly of where you’re sitting and the pros and cons has to be weighed up carefully.

Rather than going into the personal benefits of long term consulting, there’s a few points that can raise danger signs everywhere…

  • A blurred disconnect between employee and employer (note, not consultant and client)
  • A deep personal involvement by the consultant

These two points are very hard to compensate for. By being away from your “colleagues” and place of employment for long periods of time, a natural disconnect occurs between the employee and employer. Questions such as “Who do i work for?” will pop up more and more frequently. So a certain amount of investment has to be put into maintaining that cord of loyalty and feeling of belonging to a company. If that isn’t done, chances are that, that once the project is complete (or contract runs out, whichever occurs first), that the consultant would be amenable to other offers from possible competitors.

The second point, which i touched on briefly above, is just as dangerous – but more from a personal development perspective – if the consultant whishes to continue to be a consultant – this must simply never occur and it’s detrimental to maintaining a continued professional exterior. As a consultant you cannot have a too deep personal investment into the projects you’re contributing to or frustrations will bubble up and take over, again, making you amenable to seeking for other pastures.

So, the cold truth of long term consulting is that there’s very high probability of the consultant looking elsewhere for employment.