Category Archives: Tech

A request: does this person exist?

I am looking for someone to help with a digital product. It’s a challenging project, without a clear path forward. It is also incredibly exciting and impactful on a global scale. And it has the potential to be even more so. I’m looking for someone to help make that potential become reality.

It’s a social business operating on a non-profit basis. The product is providing support to medical professionals in low resource settings globally. It is literally improving health outcomes and saving lives. (Contact me for more specifics.)

But, unlike recruiting for a normal job, I can’t tell you exactly what the role would entail – because I need someone to work with me to figure that out.

The ideal person would be interested in social entrepreneurship, international development and global health inequality and have a background in medicine.

This person would be involved with everything. That could be discussing a new business plan, changing the business model and structure (a social enterprise? coop? something else?). It will definitely include supporting, training and spending time with users. It will probably include speaking to new and potential clients. It is likely to include learning about and participating in product management.

I’ve wondered if the correct term is “co-founder”. There is a basic salary and an opportunity for some sort of equality/ownership. However, as a purpose led initiative, there will never be a big money exit.

It could be a social entrepreneurship “apprenticeship”, because there is so much opportunity for experiential learning.

For the right person this could be part-time (around studies or a family for example). Initially it would be a 12 month commitment.

The role is unclear, the opportunity is exciting and none of it will be easy. The right person could co-create the role that works for them – while helping grow a truly impactful social business.

So here is my question: how do I find the “right” person for this challenging and very vague role?

Applying for a job? Its so easy to stand out, so why do so few manage it?

Over the years I have done a lot of recruitment. Crafted job descriptions and ads and then waded through lots of mediocre applications. Even great people often seem to want to seem as lifeless as possible when applying for a job or contract role. OK, maybe that’s how you get to be a faceless number as some big cooperate…

Here’s a little secret, be less generic. Actually read the job ad or description, spend some time learning a little about the company and people you could be working with. Then actually apply for that role. That specific role. The person reading your application needs to understand why you are interested in working for them, not why you want a job.

If you just try a little to tailor the information you provide then you’ll be in the top 5% of job applications.

And if you ever apply to work with me, then be aware that you have 1-2 mins of reading time to catch my attention. I want to work with people who are proactive, fun and interested in this specific role, as well as those with the skills and experience. Convince me of that and then it’s up to me to recruit you, not the other way round.

Using OpenCover for nUnit test coverage on AppVeyor

UPDATE: Previous version of this had an error in the OpenCover code where failed tests did not result in a failed AppVeyor build.


AppVeyor is a really cool CI (continuous integration) service that I am currently playing with, so far its been very easy and powerful for both continuous build/tests and deployment (plus they do outstanding support). However, it is missing a couple of features that I would like, one of them being showing code coverage results with each build.

So, until the wonderful people at AppVeyor implement a way to do this natively, here is a bit of a hack to see some nicely formatted coverage results when running automated builds on AppVeyor.

Continue reading Using OpenCover for nUnit test coverage on AppVeyor

Google Analytics cross domain tracking with server side redirect in ASP.Net Webforms

Google Analytics cross domain tracking allows tracking of multiple domains (or sub-domains) in a single Analtics profile.  There are loads of great resources for how to implement this, including in unusual client side navigation.

I have come across an issue when using ASP.Net Webforms, where there is a single form for the page and multiple submit actions (server side button onclicks etc) and when we also need a simple form to submit to a different domain.  It then becomes more complex to call the relevant client side Google Analytics methods.

Continue reading Google Analytics cross domain tracking with server side redirect in ASP.Net Webforms

How an Information Imbalance causes painful failure in software projects

To actually deliver valuable software or websites on time and on budget can seem amazingly difficult.  The horror stories of large, enterprise and public sector IT projects that have gone disastrously wrong are often in the news.   However, even more common, I suspect, are the smaller projects that have wasted time and money and resulted in failed products or (even worse) long, drawn out suffering for everyone involved.

The scrapyard of failure
You know the kind of thing I mean: where small companies or individuals have started a software

development project with shinning eyes, dreaming of the life changing impact the planned product will bring.  Then, over months, or even years, they are dragged over the expensive, incredibly painful, burning coals of a screwed up project.

I imagine a virtual scrapyard full of the twisted, broken output from this type of project and a world full of the scarred and suffering former dreamers now looking at any software development with cynical eyes.

Its a shame; because these sorts of failed projects are totally avoidable.  There are ways and means to avoid the pain so that even when a project hits some bumps everyone walks away without the scars and not adding to that virtual scrapyard of horrors.

There are loads of buzz words to label the tools we use to guide us to success; some cover the ways to increase technical success, some how to make sure the project output brings value and some to keep the people involved smiling.  If you are thinking of things like agile development, lean startup, MVP or some of the many others then you are absolutely correct.The correct mix of these approaches is the recipe for software project success.

However, there are a few underlying pitfalls that are worth pointing out, so that you can be sure to avoid them even before getting started.

Continue reading How an Information Imbalance causes painful failure in software projects

Internet Dongles: can’t live without them!

OK, so maybe that’s a bit strong: you can live without them, but you certainly can’t travel and work reliably without them.

It is so important to have a backup internet connection, in many parts of the world wifi and even power can disappear without notice.  Indeed, in many less developed parts of the world mobile connections are much more widespread and reliable than anything else; in Africa for example many places haven’t bothered with cabling (even for power) but everyone has a mobile phone.

Even in ‘developed’ countries you’ll find yourself grateful for the magic little thing at some point.

Here are some of my recent experiences:


I found the wifi connections in while travelling and working in Vietnam really good (much easier to find that in Europe, Japan or Australia – in fact, as easy as their visa on arrival to Vietnam). But it was still important to have a 3G backup connection; as it was less reliable in some of the places I stayed.

Mobifone and Viettel are two of the good service providers in Vietnam.  I bought a Viettel dongle and sim card with a load of credit for about $30 US in Siagon.  I recommend finding one of the many specialist phone places (in fact it heard it is simple to purchase at the airport, but I wasn’t that organised).  Make sure you get them to activate it for you and then immediately test yourself.

Top up credit can be purchased almost everywhere; but I didn’t need to recharge until after two months.

The 3G speeds where pretty good across the country on the whole; plenty enough for most things including some Skyping.


The dongle was my main connection in Uganda.  There are a couple of places in Kamapla with wifi or cables to connect the laptop and most places have small internet cafes with connected PCs you can use.  However, outside that it was only the dongle.  Also they have significant power issues with the electricity going out for many hours at a time.
I had good success with an Airtel dongle though.

Just the sim card?

So far I have used a locally sourced dongle, but it should be possible and may be better to just buy a local sim card and put that in your dongle, especially if you are moving between countries a lot.
Hurray for dongles (plus its a cool word) 🙂