20130625

If you have a hammer, everything looks like a nail

The case

A big (2B+ $) company. The division in the middle of UK. They make Set Top Boxes - they are somehow good at that.

The hammer

There is plenty of good old-schoold devs here, perfectly knowing C (but nothing else), working on Windows machines, connecting to "build server" through one putty console.
They usually use one LCD, they love to put a 1000+ of shell commands to copy files instead of using at least Midnight Commander.
They do a hard work with their hammers. And yet they are afraid of learning anything more than hammer:
What is QT for ? It's just adding mess into regular function calls ! I don't get it !
Arrrgh, JavaScript, what for is that ? and that bloody QML ? We could do that in C !

The nail

Devs here were forced some time ago to switch from CVS to SVN. Some of they did, some not. They end up with a multi-repo environment with a bunch of propertiary magic shell scripts that TRY to connect messy SVN + CVS world in one piece... This made so much horror/trauma to devs, that now they are just frozen ! No-one wants to solve a situation. Word "git" is prohibited. They don't make branches - it's forbidden... Yes, really - magic world of Alice in Wonderland !

The unproductivity

Instead of solving the situation, they add more and more advanced tools on top of existing software development chain... Using hammer for everything is not optimal. But using hammer with over-grown interface is even worse...

That kind of work is non-productive. Solving bug takes ages. Testing a fix or integrating - takes even more...

They struggle to meet deadlines. The official reason is: there is not enough people.

Vicious circle: people come


But yet, they employ a lot !
People come and work here. They see hammers and nails... They try to convince them for improvement, to introduce better tools, known by rest of the world, instead of repairing existing broken hammers.

They fail to introduce any change, becuase of frozen wall. After some time - good people go...

Vicious circle: people go

Good people don't like to work in such environment, where nothing is moving forward, where you can see no progress. Instead - people change job.

So the company again end up with new unfinished ideas. Number of hammer-nail solutions grow. Then, even if more people come, they also escape after some time...

Productivity

This post is just a suggestion - try to think about your productivity and productivity around you.

Do you use proper tools ? Can you learn something new to be more productive or to make people around you more productive ?

Do you use hammer for everything ?

20121206

Time management

Personal time management may be a hudge subject - a lot of knowledge to learn, train and understand to do it perfectly... or it may be just any simple set of rules you always follow. I've found "The Pomodoro Technique" - which is just a simple set of rules.

Pomodoro rules:
- if you do The Task, you do The Task. Nothing can disturb you (other people, phone call, news feed - just nothing),
- you do The Task for a specified amount of time (e.g. 25 minutes), and then you take a short break (e.g. 5 minutes). Then you continue The Task or start a next one, and break, and next task, and break, ... you got the point.
- after few work/break cycles (usually 4), you make a long break (e.g. 20 minutes),

So simply saying your work-cycle is for example:
- 25 minutes of work, then 5 minutes of rest (short break),
- 25 minutes of work, then 5 minutes of rest (short break),
- 25 minutes of work, then 5 minutes of rest (short break),
- 25 minutes of rest, then 20 minutes of rest (long break),

The "Pomodoro Technique" works and I like it. Of course, it is not the "golden rule" - it may not "fit" to your needs. Anyway, let's just give it a try :)

Pomodorro - our version:
There is a lot of software already present in the net, however we (in Kemu) made some own version. We called it Pomodorro - try it :)

The idea was - to have a nice looking (well designed), simple to run (web version) and configurable (few simple options) Pomodoro tool. I hope you like it!

Future:
We like the idea so much, we plan to create version for mobiles (Android at least) and desktop (Windows and Linux).

20120729

Just one of nice-looking job postings I've found:
Reading all these developer job ads is a great way to put me to sleep:
- Looking for: "talented and passionate developers that live to code".
- Offering you: "a competitive package and challenging work environment".
Blah blah blah

Let's admit it, usually dishonesties are told from both sides of the table. We don’t like that game; we don't want to bore you with the same bullshit that every recruiter is selling you.
So down with my pants I go, and here is a snapshot of who we are:
We are a distributed team of workaholics that take pride in our work. We select our challenges based on the amount of fun they can generate and we don't pull our punches for anyone.

We don't understand the concept of a cubicle or an office. We believe work hours are those points of the day that give you most inspiration. And most importantly our boss (me) tends to swear a lot.

20111211

Sit on hands

Sitting on hands - is an idiom of "doing nothing", of "taking no action"... It's negative in meaning: "No matter what happen, I won't do a thing". But...

Let me tell you the 1st story:
I am IT-guy. Yes, that crazy kind of people, that love to sit all the night staring at PC/Mac/whatever..

I work in IT and I meet a lot of people somehow related to IT. IT is a fast-business thing. Things change fast, new things appear, some disappear. To be good in IT - you need to adapt ASAP to the changes. And so, IT people are often realy fast in what they are doing...

Let's imagine that boss tells you about his new brilliant idea. Or just you read about a new software development technique... The thing is simple, looks like easy to make, so most IT guys don't even let the boss finish talking about the idea. They don't let complete the DESIGN. They start working.

They start, they do, they implement/code/test/program/whatever... And - it often DOES NOT WORK. It has bugs, it is slow, it needs to be rewritten. How many times we can hear, the IT guy needs to redo something.

Why?
My opinion: between "The Idea", and "The Do It" - there is a gap. People don't care about it, because most of them assume that's a waste of time. The gap is called "The Design" or "The Architecture" or it may be called a thousand of other names.

Anyway - that's my "Sit on your hands" definition: THINK before you DO.