Welcome to my weekly post. In this posts I share thought and ideas or fact that I have experienced during my last working week.
We are all too busy to actually write entire blog post on any small details, but small and concise info can be gathered in just a few minutes, and writing them down is helpful both for the writer ( allows him/her to think about the events) and for the readers (that could learn from it).
I really hope you enjoy it, and as with every of my post, I look forward to see feedback and comments.
Overtime != Overproduce
Today I would like to begin my post by sharing an event that took place on twitter. The twit was initially created by @ashleymcnamara , and it was a simple message to people to stop and overwork.
That post made me realise that unfortunately the IT industry is full of driven individuals that give 200% of themselves working for incredible amount of hours.
This kind of behaviours is not maintainable, and as the title shows, it does not actually increase productivity.
I have been working for the same company for over 5 years, and in my opinion, the main reason that kept me there, is my ability to maintain a very healthy life/work balance.
I am a very driven and organised individual that gives 150% of himself during working hours. But on the same time when home time comes I am ready to give full attention to my family and personal interest. I am very keen in keeping this line defined and strong, and all my colleagues are well aware of my work attitude (No late meetings, no phone calls).
Most of you may immediately comment that this is probably just possible because my company allows it, but I do not agree on that. This may be the case sometimes, but I am of the opinion that most of the time, the behaviour is all due to personal control.
To enforce my comments, I know of many individuals within my company, that work on average 10/11 hours a day, and are asked (in some occasion) to work even more, but this does not actually mean that they are more productive, or that they should be praised by it.
I surely agree that it is not easy to push back, and it will be hard at times to refuse to help, but I am of the idea that if you are not able to complete your daily tasks and/or projects, within a working days, then working more would just hide the real problem that is due to bad managements.
disclaimer: Of course there are some “specific” situation like live issue, or very “one of a kind situation” where I have given my support, but it is a very rare occasion, and when it happens, I make sure it is raised and discussed with the team.
Hack the City – help the community
Being a developer, has lots of advantages, but unfortunately like every other job, it also comes with some disadvantages. One of this is actually the monotony that the day to day job offers us.
Unfortunately, there is no IT company around that can easily keep developers interested for a long length of time. Luckily I have found the solution for this problem, and it can be summarised into one single word “community”.
On Monday I was involved into a local meetup called hack the city. This, like many other’s meetups I attend locally, is a great way to try something new. They can be used to share your knowledge, or to get involved in something that is outside your conference zone.
We have all tried many side projects that we will complete one day. But we are all aware that the percentage of completed side project is quite low.
I usually compare side project to attending the gym. We all say we will do it to lose the extra weight, we go for a couple of weeks, and then we start to lose interest and go less often, until we keep paying a membership for something that we do not actually use. Does this means that no one will ever attend the gym? Are gym’s completely empty?
The secret is in cooperation and support, in fact many people would probably agree that most of their consistency in attending the gym and get fit, was due to a specific person that has supported them or to a group of people or a personal trainer.
Well I think “community” work can actually be the equivalent to a personal trainer for a developer. Being part of a group that has agreed on specific deliveries and goals, is sometimes enough to make sure you keep working for your goals, and on top of that it will keep you interested, it will keep the spark within you and will (indirectly) also make you love your day to day work even more.
I would really hope for more people to get involved. It is fantastic, and even more it is more beneficial that you actually think. If you are in the Swansea area, I urge you into getting involved.
More brains == better result
In this last post, I am actually referring to Peer Programming and not clinical surgery. Unfortunately, due to the nature of my position, I am not able to support my team member often, but when it happens it is a great joy.
On Wednesday I had the chance to Peer programming with two members of one of my team, in creating our first Vue.js Mixins (is a bit more complex that this actually).
There are still many people that may argue that having two/three developers on a single PC is a waste of time, but the more I do it, the more I think it should really be pushed as an industry standard.
I am going to list below just a few advantages of Peer programming:
- Knowledge transfer: There are instances where it is essential for part of your system to have as much exposure as possible. No documentation can compare to Peer programming.
- Skill transfer: We all have different skills, and we may all tackle problems differently. I have found Peer programming being an enlighten exercise, no matter the experience of developers involved.
- Self-esteem: We all know that the industry is full of “imposters syndrome”, and many developers may not actually have a strong idea of themselves. For my experience, Peer programming is actually a fantastic tool to support developer to come out of their shell.
- Time saving: This may raise lots of highbrows, but I am of the opinions, that if there are complex tasks in a sprint, Peer programming, should actually be mandatory. It would actually result in better code, less mistakes and quick delivery.
- Peer programming: it is not easy. I had to learn how to give space, how to wait for other people to comment, how to accept other people opinion, but all this has made me a better developer and I will always welcome a couple of hours of Peer Programming whenever I can.
While reading the post, I have just noticed that all the above points seem to aim at supporting developers in keeping their work interested. It is not easy, but there is no harm in trying.
You may be working in a company that may not actually support you and won’t allow you to accomplish any of the point above, and if it is the case, I suggest you to leave (maybe come to work to Vizolution J ), because you spend on average more time in work that at home with your family, and I am of the opinion that you should enjoy it as much as you can.
As the collection of sample programs grow, I continue to discover interesting programming language features. In this article, I document some of the coolest programming language features I've come across.