Once a workaholic, always a workaholic

I am a recovering work-a-holic. In my first job I worked myself to the ground. At one point I was unable to sleep and led a very unhealthy life. This contributed to me hitting the wall. Since then I have been more conscious about how I manage my time and how to handle pressure. However, I love what I do and the borders between work and hobbies are very blurred. I realize that I will never loose the stuff that drove me into being burnt out at an early age. It’s always there and it erupts at different times.

Dealing with it

One way I deal with it is to go into an apathetic state where I don’t do much. I work, come home and sleep. This is to help dampen the fire which wants me to take actions on all of the ideas in my head. It is not a very productive or social way of dealing with this, so minimizing these periods are important.

What works so much better is to get a different perspective on things by exercising, taking a walk, visiting friends and playing with the kids. It could be reading books about politics, struggles or biographies. Getting a different input and perspective helps divert my minds attention to other things than work. Going to a concert or just going out to hang with people who are in totally different professions. Getting a bit of variety into my life always helps me put my mind off The Next Thing. It helps cool that fire that constantly tells my brain to occupy itself with work or work related things.

Figure it out

What works for you is probably something else. However I think most workaholics never really recover, because it is something inside us that just makes us have this behavior. Realizing this is important as it makes you more aware and it will help you cope with this much better.

#NoDeadlines Manifesto

- we know that setting a deadline solves nothing

- we know that after a deadline, there’s someone who has to clean up afterwards

- we believe that workers don’t need to be bullied or pressured into performing to be successful

- we believe that managers who can’t make their team perform without deadlines should consider changing profession

This is just some thought and I’d love your input in comments to make this better.

Node is doing to backend Web programing what HTML did to desktop applications

I started programming with edlin in MS-DOS using batch files. Later on I evolved into doing Turbo Pascal and at some point I went to a school where they thought C++, Power Builder and Java. Luckily at that moment something crazy started happening,  this thing called World Wide Web. All of a sudden you could without any expensive tools or servers.  All I needed to do was learn Pico and get an account on the College system.

What was even better was that I could just loom at the stuff others had done and just copy it onto my site. I am not a very smart person and I need to do practical things to learn. Therefor this way of learning was amazing for me. Previously of I wanted to learn something in Pascal I had to read a huge book or some way get my hands on some source code and print it or copy it onto a floppy.

The Web completely changed the means of production where the tools where free and the code was also available in plain sight for anyone to copy. This, and of course some other stuff, completely revolutionized the way we created applications which previously was built for desktops and with proprietary tools. A whole new breed of programmers were emerging from the creative side. Designers learnt to do markup and some started building stuff in Flash. The emergence of the web also paved way for User Experience to become a more critical part of software development. Creating web based solutions meant new types of people became into coding. The new talent that came into the software industry soon leveraged the web into something that made desktop development something of the past. They took the web into in areas nobody would imagine. The Web has succeeded and will not disappear in the near future. Now, fast forward to 2010.

NodeJS and NPM

The beauty of node is that it taps into this base of programmers. What this does it that it unleashes the creative power of programmers without history of back-end programming to complement the mass of already awesome back-end programmers. One consequence is that these newcomers repeat mistakes made in the past. However they also bring fresh ideas on already solved problems. The added diversity is what has made the web an amazing platform for creativity for over a decade. Having the people who care about the front-end more empowered to taking control of the server side of things is a great thing.

The language of JavaScript with all it’s well documented flaws are being adopted by more people every day. One of the most awesome things to come out of Node is the amazing echo system of NPM modules. Being a part of this extremely vibrant community fills you with energy. There are just too many awesome projects out there to keep track.

Conquering both sides

Having server-side and client-side JavaScript merge together thanks to amazing tools like Browserify, the power of Node is even greater. When I code in Node it is a feeling of liberation and empowerment. Coding in Java or .Net stacks I tend to feel frustrated and claustrophobic, because there are so many hurdles preventing me from doing what I like. It is due to lack of competency, as I am no Java or .Net guru, but it is also due to the fact that these stacks are far more closed off. Is there a bug in the npm client, I can just pop open the file in any editor and fix it with just pressing save. Similar with all other tools built on top of Node.

Node is not perfect and it sure has it’s flaws. However, to me it has reignited my will to code and it makes things fun again. With an amazing eco system filled with incredible people, there is no doubt that Node is the most exciting place for people like me who just wants to create stuff. I believe that Node is doing the same thing to server-side development that we saw the web do to desktop during the 1990’s. Then again, I’m neither biased nor exceptionally bright so I could be wrong :)

Growth

You will see people grow when given an opportunity and an end goal which is somewhat clear.
It can of course fail too. But, more often than not giving people an opportunity will get a.positive reaction. This, however, is in stark contrast too strategies where you set goals and demand reporting on this goals or KPI status. Those things undermine the people given a task and a goal. It also relieves them of the task of thinking. What if they should change direction or do something else? In a goal and KPI driven organization there is no real room for people to take responsibility and make decisions.
This leads to a passive environment where not rocking the boat will get you more praise than actually achieving progress.

An ear to the ground

I I’m have interviewed for higher management positions during my career. One question which pops up in all of them is this: “do you have experience in leading through middle managers”.
A fair question one would think given that as a higher position manager you’ll have some other managers below you. However, there is one thing I’ve seen many places which too many higher level managers miss. That’s the ability to keep in touch with what’s happening on the lowest level. To me that should be the number one question interviewing for higher level manager positions: “how do you know what’s going on in the lowest level?”

The answer to this question should, in my opinion, be what determines if you’re qualified. A false answer would be “through my lower level managers”. I have seen so many people disappear into the fog of upper management. The air up there is thinner and the details blurry. Humans become numbers in columns. The product becomes an abstraction consisting of stats and fiscal figures.

Shoes like under cover boss clearly highlight that people who run stuff don’t really have a clue what’s going on. Their reality is like your Facebook stream: curated, delayed and filtered. As a higher level manager you need to have “an ear to the ground”. Weather you’re the CTO, Chief of HR or a upper middle manager that is the most important thing. Otherwise you’ll have no way of being proactive and noticing issues before they become huge problems. You’ll also gradually loose the respect you once had from those who used to be your peers as you’ll be disconnected from their reality.

I am a team lead and this is the thing I’m trying to focus on as much as possible. To not drift into that place where it’s all abstract and the big picture. I need to see individuals and stay in touch with their work. Be engaged and proactive to try and help out before things become too complicated.
I say I try, because I would not say I’m succeeding 100% with this today. As a leader I have tons of areas of improvement, but at least my goal is to have an ear to the ground like Lucky Luke in the comics. Too hear if there’s a train or a buffalo herd coming.