You can code it, I can help!

Using SmartView - Part II

In my last post I explained the basics of using SmartView to create a new project and add User Stories to a Story Map.

Now that we have stories in our Story Map, we are going to learn how to create releases and prioritize our work.

Using SmartView - Part I

Not so long ago I wrote a post about a lean project management tool that I have been working on for the past year and a half.

We are about to release the open beta and start collecting feedback before our official release.

Though you can sign up and try it out on your own, a bit of help is never amiss. Here is the first installment in a series of posts to explain the basic steps for using SmartView.

The Path to No Estimates

Estimating is part of (almost) every project. It takes a lot of effort and more often than not is not accurate, predictable or flexible.

I remember filling in Gantt charts and entering dependencies between tasks, trying to guess the length of the unknown and using magical breakdowns to justify decisions. The result? Disappointment and an increase in stress.

What lies between “It will take as long as it takes” and “Create task breakdowns for everything”?

Can we be more predictable? I do think so, but it requires learning, discipline and a profound desire to improve things.

An Owner’s Journey

Not so long ago I celebrated five years of working as an independent consultant for my own company MavenThought Inc..

As a quality expert I had the chance to work with multiple companies and teams to help them “get better at what they do”. Inspired by all the successful results, I decided to reach this further and build a product to help teams work more efficiently.

Becoming an owner wasn’t easy. How did it come about? Well, it all started around 20 years ago…

The Case for CoffeeScript

I have been doing presentations about CoffeeScript for quite a while, now I feel it is time to put it in writing.

In the spirit of Peter Parker, Pepper Pots, Reed Richards and so many others I present you a language that I believe could change forever the way you develop web applications.

The Feature Toggle Conspiracy

Source Control Workflow

At the heart of many software projects (if not all), no matter which language you use (framework, IDE, etc) you have source code.

There is lots of tools out there (git, mercurial, SVN, CVS, TFS, etc) that help us to version the code and keep it safe so valuable changes are never lost.

However when working with a team choosing a tool is not enough and a workflow has to be agreed to ensure that the same practices are applied by all the members of the team, changes are merged properly, tests run, etc.

Modern Hiring

Lately I been hearing many companies complain about how hard is to find developers.

I do agree, finding good people is extremely complicated.

But not only because perhaps there’s a shortage in the city. Also hiring processes are out of date, driven by the wrong people and produce poor results.

I have done my share of interviews trying to find the right candidate for a position. Let me share a bit of what I learned…

Kanban Limits

Model your process

Probably by now if you work in the software industry you heard about the word kanban or already are using a Kanban board with your team.

A Kanban board (usually implemented using a whiteboard, wall with stickies, or electronic version) lets you model the series of steps that as a team you have to take in order to produce working software.

Some of the benefits are that you gain visibility, communication and transparency in one simple step. And if you use it right you will be able to show bottlenecks and cope with them or at least elevate the issue to someone that has the power to solve it.

Most important is that you can focus on working based on your team capacity (Pull) vs. working by demand (Push).

However today I don’t want to do a 101 post on Kanban. There are plenty of posts for that, you can find them here, here and here.

Today I want to talk about what is the result when, once you read that intro, decide to implement Kanban with your team. What happens next?

I Wrote the Test, Now What?

Working with state

In the previous post I showed some examples of writing specifications using immutable classes. For an introduction to specifications please refer to my post about testing.

There’s no denying that immutability can provide lots of benefits in terms of testing, reducing complexity and lowering coupling. Having a language/paradigm that embraces it could be a huge productivity booster.

Unfortunately that’s not always the case or our choice to make ;).