Testing MVP of B2C Product? You Need a Lot of Users

You have an idea for a B2C product, for a mobile app even. But you’re worried about bugs & bad reviews on app store. So, you only release it for a very limited audience. That’s probably wrong… More...

Value Hypothesis and KPIs

This post talks about setting a value hypothesis and related KPIs. It’s part of the ‘Product Management in the Open’ series. The goal of the series is describe the process of product managing a mobile app - Best in Town / Best in Edinburgh. Please, check this page to read more about the app itself. This post describes my thinking back in the beginning of 2017. Not everything I did at that time was correct and I also try to reflect on some of the mistakes here. More...

Idea

Elevator Pitch

A mobile app that helps to find places that do you favourite meal or drink the best. Unlike existing products (Google Maps, TripAdvisor, Yelp), you see ratings for meals & drinks, as opposed to the whole place. More...

Lean Startup and Inspiration

This is the first article in the series about working on a mobile application - Best in Town / Best in Edinburgh - and applying the Lean Startup methodology and other good product management techniques. More...

Split User Stories Ruthlessly - And Get Value Earlier

Why do you need to split user stories? Often, you hear that it is important to split user stories. You read articles that say it should be possible to complete a user story within a single sprint, ideally within a few days. That’s entirely accurate.
But the main benefit of splitting user stories is that you will deliver value faster!
More...

Writing a JavaScript Public Library? Validate Your Arguments

How many times have seen an obscure JavaScript error when using one 3rd party library or another? More likely than not, you’ve come across a message like:
TypeError: Cannot call method 'someMethod' of undefined
Your browser or the Node.js interpreter will tell you in which file and on which line that error has occurred. Then, you’ll start a very mundane task of examining the code of a 3rd party library, if it’s has not been minimised, of course. Eventually, you will find out that you have forgotten to provide one of the arguments required by a function. You may even see a more obscure error. More...

Practical Functional Programming in JavaScript

JavaScript is a multi-paradigm language with rich functional programming capabilities. Functional programming does not have to be difficult or hugely theoretical. Quite the opposite – it can help you to solve the most common programming challenges in a more concise and elegant fashion. In this video I focus on working with arrays in JavaScript. Normally, when dealing with arrays a developer would write a for loop and mutate a variable or two. However, JavaScript already comes with functions, such as, every(), filter(), map(), reduce(), etc. that help you to write better code for array operations. More...

Joy and Benefits of Codefest

I have already blogged about the ways to share expertise and knowledge inside your organisation However, there is one more way. That’s something we call a codefest or hackathon. Codefest is an opportunity to work for two days on any project you like using any technology of your choice. Also, it’s a chance to work with people you don’t have on your project. This blog post is available on my company’s blog. More...

Information Sharing in Software Development

Where IT organisations have heterogeneous technical environments it is not always possible to know what your colleagues are working on and which challenges they are facing. This blog post will discuss various ways to share information in an IT organisation. The article was written for company’s blog where you can read it now. More...

A Code Review Is More Useful Than You Think

Recently, I came across a situation which once again proved the immense value in having code reviews. I was working on a tricky part of an application that involved substantial design work. As part of our 'Definition of Done', I had to submit my code for a peer review. The review turned out to be invaluable - after all, it's always useful to get the second pair of eyes to look at your work. I wrote this article for my company’s blog where you can read it now. More...