Podcast: And Jeff ep 1 – Cause, Discipline and Self-Improvement

 

Kalle and Matte simply add Jeff to the mix with a glorious inaugural podcast where the guys each bring one topic for the group to discuss on air.

If you are not Kalle, Matte or Jeff and is still reading this, we’d appreciate any feedback you have on this experiment. Thank you!

1:10 Cause (Kalle’s topic)
(The Bret Victor talk: http://vimeo.com/36579366)

16:24 Discipline (Matte’s topic)

31:59 Self-Improvement (Jeff’s topic)

Our best akward silence: 19:58 – 20:14 (out of a couple of strong contenders)

Do I need my own desk? – Tieto Sweden HQ

Hi Kalle (and Jeff),

Time to talk some more about Do I need my own desk?, this time with real life examples from the company I work at! (Oooh, exciting!)

I had an example of a web agency I read about that had no set work stations for their employees and lockers for personal belongings.

Turns out that I didn’t need to go far to find this thinking in action – the Tieto Sweden HQ in Stockholm is using this concept live!

Here are two clips explaining the concept from Struktur, the company that helped Tieto with this. Yes, there is some marketing happytalk in there, but try looking past that. 🙂

I will visit the HQ in September and will make sure to talk to some people about how this REALLY works in practice, will keep you posted. By the way, the Luleå office is not using this in any shape or form – here we are talking standard offices, fixed desks and sitting 2-3 in each room with standard telephone rooms and conference room. However, it would be interesting to find the lowest hanging fruit from activity-based workspaces, and try bringing that into the Luleå office as well.

House of Win-Win in Gothenburg seems like another example, care to fill in the details there Kalle?

This all feels very Peopleware, time to go back and reread that book methinks.

Miss you guys, take care!

Mattias

 

Attempted poetry on user feedback

LOVE

To Kalle and Jeff,

I just read a most excellent post from a poster whose posts are excellent most.

It spoke of why user testing comes hard, and why good user feedback is hard to come by.

If you get no feedback on bugs in your system, assume your system for feedback has bugs.

If you get feedback on a certain feature, certainly look at the feature but not to the feedback.

If you get feedback on smaller deal issues, you might have to with larger issues deal.

If you wish for user feedback on a wish application, apply yourself to get the feedback you wish to use.

LOVE,

Mattias

No bosses, no juniors – working at Valve

Hi Kalle,

if you haven’t already, it’s now time for you to go and read what might be the most interesting publication in company and workplace culture this year:

The “leaked” Valve handbook for new employees.

There is just too much interesting stuff in here to discuss in one blog post so I’ll probably break this down to a few posts (or we discuss it on the podcast), but here are some highlights:

  • No management – people work on the projects where they feel they can be of most use and move their desks to form groups accordingly.
  • No juniors – only hire extremely competent and driven people at the height of their careers. No costly bringing up of juniors, they have enough attraction as an employer that they don’t need to “grow their own” – they can attract the best within the business.
  • Compensation based on peer review – salaries are based on stack ranking by your co-workers. You make what the guy sitting next to you think you should make based on your contributions.
  • “T-shaped” employees – hire people with a broad range of skills that are also one of the best in their field within a narrow discipline (sounds a bit like The “Jack of all trades” department put into practice!).

Valve also lists what they think they could improve on (mentoring, predicting more than a few months away etc) which is very self-aware of them, could be interesting to discuss as well.

But what are you waiting for – let me know when you read it, can’t wait to discuss it with you (and Jeff)!

And may all your TF2 hats be awesome,

Mattias

Day 1 checklist – Make the new guy the hero

Hi Kalle,

since I just started at a new company and am in the first few weeks in the “getting-up-to-speed” phase where you go around feeling kinda useless and stupid, I have two good, solid tips for how to make sure to get your new employee a flying start.

So when you have to hire a guy three years from now to your gloriously successful start-up, whip out this post and make sure to:

1) Have everything ready for them.

Computer, chair, phone, keycard, whatever system access they need (especially to SVN/TFS/etc – for some reason version handling always gets forgotten by HR, I wonder why…).

Everything you need to do good work should be there ready to use at day 1 – no exceptions. If the hire has a choice of computer or phone, make sure to sort this during the time between the signing and the first day so everything is ready to go.

If you have this all sorted and stars align on that first day, you have a chance to…

2) Have the new guy/girl make an impact in the company on day 1.

First day at Lavasoft, I got to fix a bug for customer support that caused their support form to give the customer the impression that their ticket failed submitting, causing the customer to type in the same request over and over again in an increasingly agitated tone, producing a nice mess for the support department to deal with.

I wrote a single line of code, managed to publish the change and voila! – instant gratitude by the support department and saved money for the company on day 1. Couldn’t have asked for a better start.

This was by pure chance in my case but in future hires, I will try to make this part of the introduction plan – to have a task that needs doing that day that is important for the company, so they get to be the hero on the first day of work. I forgot this at my last company, so this is as much a reminder to you as it is to me.

Some ideas for suitable tasks might be:

  • Fix a bug that can be published the same day.
  • Improve the language of a particularly nastily written public webpage / wiki.
  • Answer customer questions on the company forum.
  • Fixing the resolution of the projector in the conference room so that it actually fits the canvas. (We might have this problem at work…)

Can you think of other useful tasks in the same spirit?

Take care,

Mattias

 

Creating an API to a team – a system developer’s take at company communication

Hey Kalle!

Been a while since I posted here (we should really publish the podcast too btw, need to speak to Jeff about that).

As you know, I’m now working for a really big company (about 18000 employees) and as such I’m but a grain of sand on a large beach of company culture.

However, the part of the company I’m working for used to be a smaller company that was bought and incorporated into the bigger company in a single-brand strategy (i.e. the old company’s name is not used any more etc). It is still a fairly self-contained branch with stable customer relations that was established before the merger and has the application management of a product that has been around since the early 90’s.

So our department is both a part of the rest of the organization, as well as our own ship, and this reflects in our methodology. In some parts we are running some SCRUM, we are looking at Kanban for some of our stuff and we also have a lot of waterfall in a lot of parts as well as some ITIL-inspired roles for application management. On top of this, we also have a delivery excellence process that is instituted by the company as a whole. In short, it’s all a bit of a mixed sallad (one that has both tomatoes and tuna as well as steak and kumquats – yummy!) with each bite tasting slightly different (not very agile-sashimi at all).

Here is our dilemma:

We need to work out a way of working that works for our independent unit given our customers, our products and our staff – while at the same time working together with the large organization we are also a part of in a way that they can understand and appreciate.

The good news is that I feel that it would be accepted to run any kind of methodology internally in our branch as long as it meshed well with the rest of the company and it yielded great results (i.e. we were efficient and very profitable), so it is a great situation for improving our process. However, the key here is how to work together with everyone else in the company in a manner that is efficient for them and for us.

So I thought:

Why not approach this as a system developer and picture our part of the company as a module in a large piece of software?

If we could just provide an API to the exterior world (the rest of the company and our customers) with metrics and ways of communication that is useful and efficient for them, we could pretty much run any kind of internal process as long as it was CPU-efficient (i.e. cost-effective).

This is obviously the opposite of transparency, and it would be interesting to hear your thoughts on the subject. Maybe transparency should be a topic for a future podcast, sometimes I feel that people just don’t want to know and too much transparency might just create confusion as to what they are looking at.

I’ll keep you posted on how this develops – I think my next step will be to map our “interface” in a way similar to how I would map the interface of a module and see if that yields any interesting results.

Thanks for reading all of this (I think I just scored 0/3 on my own scale…), let’s talk soon.

Take care,

Mattias

 

Change for the sake of change

Dear Kalle,

this has long been a pet peeve of mine:

I hate when people (usually managers) want to change the look of the corporate website just to “keep it fresh”. Not better, not improved, just fresh. Without measuring, the best efforts can actually make the website worse than before.

On the other hand, there are arguments that change or attention in itself creates positive results:

http://en.wikipedia.org/wiki/Hawthorne_effect

This can be seen in almost any team implementing agile for the first time – regardless of how bad your early implementation is, the team will become entusiastic enough that it shows in the quality of work produced. However, when this effect dies out eventually as things becomes more settled, the true colors of the quality of your agile implementation will start to show.

Agile methodologies usually combat this effect by embracing constant change and refinement within the methodolgy itself.

However, it would be interesting to switch the entire methodology every three months or so between SCRUM, Kanban, Crystal etc, just to “keep things fresh” and keep the entusiasm going. Food for thought (might be more interesting than practical though).

Until then – keep it fresh,

Mattias

Good, amusing or short?

Hey Kalle,

I’ve been a bit unhappy with some of my recent blog posts. (The post about Rule of Three comes to mind, took forever to write and ended up really mediocre…)

From now on, I will aim to make all my posts accomplish at least one of these three criteria to make sure that you don’t have to waste your time on crap:

Good.

This is obviously the best one. Nothing beats quality. Sadly, this doesn’t always happen, so if I can’t accomplish that, at least I should aim for…

Amusing.

Hey, I might not have anything interesting to say, but at least I made you smile and that kinda makes up for it, right? However, if I can’t accomplish either good or amusing, I should aim to reduce the pain of reading my crap by making it…

Short.

The less time wasted, the more time you can spend on other more important and fulfilling activities than reading bad posts by yours truly.

If these criteria are good and true, you can also make the following interesting conclusions:

If I always keep it short, any bad posts that I write will cause the least amount of discomfort for you.

The holy trinity is obviously good, amusing AND short. That hasn’t happened yet.

Tweets are rarely good in themselves (links don’t count), often amusing and always short. Is this why Twitter has been so successful compared to all those other failed blog platforms?

I’ll stop now before this becomes too long, for obvious reasons.

Enjoy your weekend!

Mattias

 

Loose leadership – Lavasoft lessons learned

Hey Kalle,

it’s read-an-article-and-then-read-what-Matte-thinks-so-we-can-discuss time!

Here’s the link:

http://h30565.www3.hp.com/t5/Feature-Articles/Lead-Leaders-Why-Loose-Leadership-Matters-Most-in-the-Coming/ba-p/1910

I’ll give you a few minutes…

Back? Good!

This post from mr Brogan obviously ties into my previous post about The “Jack of all trades” department. He might have even read it. Or not.

Anyways, the idea about leader employees is pretty exciting. Pretty much a situation where you have succeeded with empowering everyone to be decision-makers, something that we worked hard on at Lavasoft if you remember (succeeding in some cases, failing miserably in others).

Brogan had four points that can make this style of leadership possible, I’ll illustrate with some examples from our shared time at the web department of Lavasoft for your reading pleasure (ah, the memories):

1. “Bumpers” to keep your team from making any grievous and irreparable mistakes. 

At Lavasoft, this would be the peer reviewing of design decisions and the sanity checks in stand-up meetings. Also, the whole back-up support from a manager in tricky communications with partners and other departments. When it comes to expenses and being able to drive parts of the budget themselves, we never came that far – I mostly took advice on which licenses and office equipment we needed and mad decisions based on that. That would have been an interesting thing to try, putting people in charge of different parts of the budget and managing that all by themselves.

2. Production- and results-based metrics versus “butt in seat” metrics.

We were never much about metrics for performance at Lavasoft, and we didn’t need to be since we had such a small team (about 5-6 members) and good daily communication that I knew what you guys were doing and how it was going. Not much need for metrics then, but in a larger organization they might form a good starting point for discussion and a fairly unbiased measurement (the bias, of course, lies in what you measure though).

Putting in the wrong measurements though might lead to everyone managing their own pet projects, the success of which they’ll be measured by, and competing for resources for these – not my favorite kind of workplace.

One solution might to be set metrics for the group instead (hewwow SCRUM sprints!) that are better indicators for if people are performing. And then coach the group to figure out what needs fixing.

I’ve heard example of real estate brokers (of all things) that get provision based on how they are doing as a group, which encourages them to send prospective buyers to other brokers properties as well which benefits everyone in the group – something that a straight bonus system based on individual performance traditionally discourages.

3. A more open communication stream. 

Hopefully you’d agree, but I tried hard to give you guys as much information about what was going on in the company as possible, barring sensitive information about co-workers and such that wouldn’t benefit you and actually would hurt someone else.

I think this is just common sense – the more information you guys have, the better you can make decisions on your own. You will always be more knowledgable about the technology than me anyways since that is your speciality so if I can impart as much relevant information about the business as possible, we’ll can cut out me as the middle-man in decision-making, making us less vulnerable.

This stream should always be finetuned constantly so only relevant and interesting information is passed on both ways (“I don’t think I need these numbers anymore, they are useless to me and I never take any action based on if they are high or low since I have better indicators if the application is performing as it should or not. If you say we’re doing fine, that is enough for me and more efficient.”).

4. An active learning culture and mistake-learning path.

It’s always healthy to question how things are done at the company. It’s important to keep this constructive though. The “What puzzles us?”- question in the heartbeat retrospective after sprints was a good way of catching organizational flaws that needed adressing by someone with a bit of clout with the rest of the organization (“Why does marketing always deliver their stuff a few days late?”). I guess if you have a group of leaders, you should coach them in optimizing these things themselves (advice them a bit on how to approach Marketing in a constructive way on this subject that might be a little bit touchy).

We had a lot of shifts in how we did stuff (build-your-own vs adapt-your-own, figuring out what the web department should focus on, adopting SCRUM) and most of these were results of employees pointing out flaws in the way we worked and suggesting that we examine alternative approaches.

So, did we have loose leadership at the web department at Lavasoft?

More so than some other departments I would say. We were a long way from embracing it completely I feel, but the aspects of it that we implemented (without ever labeling them “loose leadership” per se) worked pretty well and were beneficial to us.

And that is the key take-away for me:

If you are constantly trying to get better, you’ll never be fully optimized and content, ever.

So make sure that each step is a goal in itself and makes you happier, more efficient or more powerful by itself, while at the same time bringing you closer to a goal or vision of how you want things to work.

Let’s do lunch some day,

Mattias

Rule of Three and the stuff that don’t make your board

Hi Kalle,

As you probably have noticed over the years, I have a tendency to get really absorbed and fascinated with some of my hobbies during a time period.

Since I have limited time and focus available, a sort of Kanban-like system has evolved for this without me actually thinking about it – I can really only focus on three hobbies at the same time.

Right now, my three are:

  • League of Legends
  • Civilization 5
  • Skyrim

Past examples of these include previous versions of Civ, Starcraft 1 and 2 (both as a player and a spectator), a crappy Facebook game called War Metal:Tyrant, another crappy Facebook game called Farmville, Fallout, NBA basketball, Wrestling (the fake WWE-kind), Magic: The Gathering and various other card games and surprisingly enough, front-end development (the XHTML/CSS Web Standards days). Yes, a lot of games on that list – what can I say, I like games more than most people.

What’s more interesting though is that this list only includes the things I’ve perceived as major hobbies and time-drains over the years. There are obviously a lot of other things that have both taken up time and energy and given me great fun, that I haven’t thought of in terms of this system.

These fall into a couple of categories:

Family and friends.

These are in a class of their own, since the “system” is mostly for the part of my free time that is usually “Matte time”. It would be weird to think I’d have to bump a friend in order to have time for another. In reality though, this is probably closer to the truth than I would like to admit (just ask Jeff and Mark…).

Things that are too small to register.

Right now, that would be this blog, Puzzle Quest on the iPhone, reading books, reading magazines and playing board games.

Things that aren’t easily categorized as “hobbies”.

Ironically, this might be work items that bridges the gap between work and freetime (like reading work-related articles or improving a mostly work-related skill).

Here is the point:
Your Kanban or SCRUM board only holds what you think about and label as stories or tasks, which probably isn’t all activities that your team performs (like maintenance, meetings, bug fixing, software installation etc).

Everything else, you still need to have a plan for – either that part of your work automatically flows into your day and is part of your velocity, or you have to make it visible in some way so you can track it, manage it and improve it (always improve everything, right?).

Can you remember how we did this at Lavasoft? It seems like a blur to me now… 😉

Have a great weekend,

Mattias