I wrote a post about Indonesian culture. In it I wrote about my experiences in Indonesia and how I’ve interpreted what I’ve experienced as many people here lives in a world without WHY. Read more in that post.
In this post I wanted to continue my thoughts about this and specifically around what actually motivates Indonesian people. Or how I could motivate someone that lives in a world without WHY. How do you get someone to start thinking in long-term goals in a culture that do not? This is has been my task for the last 1,5 year and I’m still struggling. Sometimes I have, accidentally mostly, succeed too and in this post I wanted to describe HOW I did and why I think that it worked.
As before remember:
Should I make any generalizations (which I will) it’s based on my own experiences. If they are wrong or weak is due to that. If they are good… well I was lucky I guess.
BUT, one thing that I am quite sure of is that I’ve learned a lot about my own culture by studying the Indonesian culture. All the phenomenas that I’ve observed here can be seen in Sweden as well, but in lesser extension maybe.
Basically - I’ve learned a lot. I hope you learn something tooRead on ...
I’m poking around quite a lot with io.js recently for reasons that soon will be revealed. When doing so I used my favorite Node version manager - Node Version Manager to manage different versions of Node and io.js.
Switching back and forth is simple and sometimes I end up running some code on a version of Node/io.js that the code does not support. For example running EcmaScript 6
let-statements in Node.
I was hoping that I’d get a warning or preferable even an error when doing that. But no. Or…
In this post I’ll show you how to use the package.json file to make sure that you get warnings and errors when using the wrong version of the frameworkRead on ...
Like most cities in Asia the traffic in Jakarta is horrible. Especially the motorbikes that are plentiful is an interesting phenomena to observe.
Once you mange (took me a year to do) to look past the total disrespect for human life on display, the drivers own lives as well as other people, I saw patterns that have bigger influence on at least me.
In this short post I wanted to share those with you and maybe you can also get some thoughts that can help you.
My good friend Håkan Forss wrote an excellent presentation called What can traffic in stockholm teach you about queuing theory. That inspired me to write this post, at least a little.Read on ...
I’ve just ended one of the hardest but also most rewarding gigs I’ve been part of. As often I was merely a coach, but this time I marveled at the result. We took a company (hospital) on the verge of dying to being self-sustaining and profitable in 7 months.
The leader of the hospital is called Dr Lillian, a young doctor that been very responsive to my tips and radical changes. I’m very grateful for her cooperative spirit and hard work. The same goes for many many people in the hospital. As I said; they are the people who made this possible. I just gave some hopefully helpful (although hands-on) pointers.
Last Friday (the 13th…) was my last official day at the hospital. Now, it’s ca 150 m from my house so I will keep it under close surveillance during my time here.
But I wanted to leave Dr Lillian with some advice for the future. Although this is about a hospital I think that it can teach us something, as it has taught me while I was uncovering them.
So, here we go:
Dear Dr Lillian,
Now that I leave you I wanted to give you some advice that builds on all the things that we have talked about and that can help you in the future. Don’t read this as instructions but rather inspiration:Read on ...
When I first arrived in Indonesia I didn’t think nor knew much about the difference in our cultures. This quite understandable, although in hindsight I should have read up on it a little bit more. Now, as I know more and more, I also get more and more interested and confused about some very basic things in the society.
To not come out as very prejudiced there’s some of disclaimers to be made and I’ll do that throughout the post, but here are few to get started:
Oh, this post is mostly me reasoning. I have no ambition so solve any problems. Although, I think that this can be useful for you even if you never leave your own country (in which case I pity you - get out there!). Remember that each organization form subcultures of their own. Maybe this can help you understand things in another department. I can tell you that many of the things I find puzzling here in Indonesia can be observed to some degree in Sweden as well.
Let’s get started… I’m fearing it might be long.Read on ...
I wrote a little application called page-logger for purely selfish and lazy reasons. It was fast, quite fun, I learned a lot and apparently I could make MONEY by using it. Which I didn’t thought of when I wrote it.
In this post I’ll take you through some code, point to some things that I learned and finally some thoughts about learning from your data. I hope you like it.Read on ...
The blog post I wrote yesterday was from my experience at the time. I even ended the post with a callout for better ways.
And sure enough, twitter to the recscue:
@marcusoftnet Marcus.. I just use the Coffee command that you installed earlier? No need to compile at all..— Erwin van der Koogh (@evanderkoogh) March 4, 2015
As a side, this why I hang out on twitter. There are brilliant people there that will push you towards ever better. Thanks Erwin for this.
So… what does that mean for my post yesterday… Let’s find out:Read on ...
So the other day I found myself thinking again:
Hey - CoffeeScript. That's not such a bad idea. Maybe I should try to write some.
I thought I’d write a simple little kata in Node to fresh up my CoffeeScript-fu. How hard could it be?
Well… there’s quite a lot of setup and idiosyncrasies that you need to be aware of. This post tries to summary what I learned as I got my environment up and running. Specifically; initialization, run tests, write code and run my app.Read on ...
In Indonesia there’s an interesting development going on right now in health care. A nationwide health insurance is being rolled out. For everyone. Until now health care has been paid for privately or via private health insurances, but with the advent of BPJS (that it’s called) everyone can now afford to go to the hospital… or at least there’s fixed tariffs.
Before we continue, imagine the effort to roll this out in the world 5th biggest population… 250-270 million people. Most of which is very poor. I think this is such a great thing and I applaud the Indonesian government for doing it.
However… I work for hospitals in Indonesia. On the “other” side of things. For us this is also an opportunity since this will bring more patients to our hospitals and we get to serve those in need. But there’s another side of the story that have very interesting implications around service quality, of all things.
In this post I will tell you a little about that, quote a great book and then ask myself some tricky questions that I cannot answer. It will be a blast - tag along!Read on ...
But one thing that trips me up a lot is the configuration and especially things that I want to vary per environment, like connection strings to databases or user names. Hey - some of those things I don’t even wanna check into source control at all. They might be secrets that I don’t want anyone else to get hold off.
In this post I’ll show you a little function / object that I’ve found plenty use of and that I now include in almost every project I deploy. I’ll finish up with a little discussion on how to handle secrets too.Read on ...
I reflected a little bit about the great teams I’ve had the honor to be part of. It’s just a few out of all the teams that I’ve been part of that I would call great. But they all shared some common traits.
My first ever scrum team was a great team, that I still think back on fondly. Gothenburg Brass Band was an orchestra that I had the opportunity to be part of for almost 2 years - total awesomeness. My “current” (since I don’t play with them now) band Vasa Band is another group that I hail as a great team. The prayer group we had 2006-2010 in our home was an amazing group too.
Looking back I remember these things that was common about them, in the very particular order that I remember the traits…:Read on ...
A few days back I said something to my client that apparently many people on twitter found interesting.
“How is the project going?” “We have a lot of things going on!” “Ahhh… so you’re slowing down the progress?” #stopStartingStartFinishing— Marcus Hammarberg (@marcusoftnet) January 29, 2015
My client, the hospital that I’ve written about many times before, has a big project ahead. We are going to be accredited for quality in all our processes. So… there’s a lot of documentation, implementation and training to be done.
Nobody really knows how much. We think, for hearing other projects, that it’s about 6 months and made that our goal. But we haven’t got a clue how much work it is left for us.
The work is divided into 4 areas that we’ve formed teams around. Each of this area has a number of targets that they need to consider and help the hospital to meet.
So I asked them:
How far have we come?Read on ...
Imagine that you want to learn a new technology or tool. Who would you want to learn that from, and how? For me I’d want to sit down and pair program with the creator (not The Creator, but you get what I mean) of the tool, and then someone who has vast experience implementing this and finally someone who knows this tool well on my platform. Preferable all three together.
This book is exactly that. It’s an opportunity for you to learn Cucumber from Aslak Hellesøy (the creator of cucumber), Matt Wynne that has consulted and trained on the tool for a long time and Seb Rose that have build the Java Implementation.
Now, the important thing to remember about Cucumber is that it’s not about the tool. Specification by example (BDD) is first and foremost a communication and collaboration technique that doesn’t really need a tool. I’ve got a lot out of just “specifying with examples”. But soon you want to verify your specifications and then Cucumber is great choice.
The author stresses this point throughout the book and make the reasons for Cucumber and human-readable tests (as opposed to JUnit test) very clear.
The books consists of 3 parts; the first gives you the basic knowledge about the tool but also the basic understanding of the process and how to use the tool. The second part is a “worked example” that goes beyond the basic. Not only do we get to know more about Cucumber and it’s capabilities but also how to make sure that you are building a structure for you glue code that is maintainable over time. Also - there’s more in this part on the process and what works and not. The final part is more in the form of patterns and recipes and gives you techniques and approaches to handle common scenarios and situations, such as using Dependency Injection frameworks, testing web applications and APIs and running cucumber in a continuous integration tool.
Throughout the book there’s a very nice “this is not that hard really”-tone that I enjoyed throughly.
Even though I’m not a Java programmer (and through the examples in this book, I hope never will be either…. GOD some of it is verbose) I got a lot out of this book. I am a long time user of Cucumber on the .NET platform (SpecFlow as it’s known there), I even built part of the tool on that platform. Still I learned new things, tricks in the tool and ways to work with the tool that I haven’t tried before.
I cannot recommend this book enough. In fact, I’d recommend the book to anyone working with Cucumber, regardless of platform. It’s the best treatment I’ve seen on the tool.
Below you’ll find my detailed, but rough, notes that I wrote as I read the book.Read on ...
M: “… hahaha, exactly. And speaking of RT*M, you know what I did yesterday?”
H: “No, but I like it already. Tell me more.”
M: “So I wanted to whip out a fast little Koa site. It’s sooo good for those”
H: “Yeah, I know. You told me like a million times.”
M: “Ok… sorry. Off to the terminal I went and went through the usual steps:”
mkdir newAwesomeApp cd newAwesomeApp git init npm init npm install koa koa-route --save touch app.js
In my last post I told you about some practices and policies around emergency lanes. Today, when I visited my client I realized that we, ourselves, had created the need for them. That’s great news because that means that we can also take that need away.
Let me explain what I mean.Read on ...
I’ve talked more about effectiveness vs efficiency than you all care about. The reason for this fascination might be that the word is mixed up in Swedish I guess; there’s only one word for these both concepts. Boooh… Swedish.
Because the difference is paramount.
In the excellent book the Goal Dr Goldratt puts it like this:
Productivity is meaningless unless you know what your goal is
This is the same thing. I hear many people talking about efficiency, or that we should become both effective and efficient and yes, but all means, become efficient. BUT don’t speak another word about that until we all have a shared view on what the goal is. Without a clear goal - there can be no effectiveness. And then efficiency is pointless, as Dr Goldratt said.
My favorite explanation for the difference of effectiveness and efficiency makes this very clear;
Usian Bolt take the blocks. He has trained his muscles to perfection - they are very efficient for moving him fast. He has the latests experimental shoes from Pumaddike on - super efficient! No air resistant at all. The same goes for his clothing - they are super light, no air resistance. He knows how to get out of the blocks the fastest in the world. Even his hearing and reflexes are the best in the world. He’s focused. Everything around him is blocked out. Now the referee is calling “Set”. Usian Bolt is preparing his body.
BAM - the gun goes off. Perfect start! It’s the fastest ever measured speed in the world. His leg movements are amazing, his hands is held perfect.
But… he’s running off the track right into the middle of the field.
He’s very very efficient but not very effective. Because he didn’t know the goal.
All that efficiency… wasted.Read on ...
One of the things that first made kanban known and loved was the introduction of emergency lanes. Or at least the lack of fixed scope for a sprint where sudden urgent work items was hard to handle in other methods.
Many kanban boards have an emergency lane. However often I see it abused (or being feared to be abused) and hence it will not be as useful as it could be. It’s a really great tool, both for “product owners” and the team alike. In this post I wanted to share some policies that I’ve found useful to manage emergency-lanes (or equivalent).Read on ...
This thing I say often “thing” is quite new and a bit personal. It’s very important for me personally and I hope that you like it.
I’ve had the great, but scary, opportunity to play a couple of times under the late James Watson. For any non-brass-players he’s one of the truly great trumpet players of the world, brought up as a wonder boy in the brass band movement. Later in his career he returned and made the world famous Black Dyke Band into a new being - possibly changing what people thought a brass band could be for ever.
Also - he’s know for being very … direct … even mean sometimes during rehearsals. But I fondly remember a lot of things from the hours I got to spend under his direction.Read on ...
But really I’m so tired about talking about management for organisation and teams. Manage. That’s what I do with computer resources, stuff and sheeps.
I have higher thoughts for just about every person I ever met. If something these people need a leader. Someone that points, with clarity, towards the better future we are trying to reach, creates an environment where I can feel safe and give room and be challenged to be the best I can be.
I much rather talk about leadership and leading than management and managing. Leadership is what you use on people, management is for your pens or harddisks.Read on ...
One of the “clients” I work with right now is a hospital. We have tried to turn their performance around and they are improving immensely. In fact - I think they will be just fine. I did not think that just 4 months ago.
One of the things that we have talked with the management team about is trying to do smaller things often and act on the feedback we get from that. Nothing new … in software development or other lean practicationers, but in this setting. I hear eyelids popping open everyday.
How does that look? What have we done? Most of the work we have done has not directly with health care to do but rather change management and business in general. Very practical stuff mostly. In this post wanted to share two of our current projects (or Focus areas as we call them) where our approach made a big difference.Read on ...