Ten things I’ve learnt
Inspired (and challenged) by my friend Bejoy I ended up spending a few hours to list down and articulate ten things I’ve learnt about life. This was a fun and thought provoking exercise. In no particular order:
1. Learn something new everyday
Learning is a great mental exercise and makes me more productive. It helps in continuous growth, especially in software engineering where things change so fast. It doesn’t has to be specific to software and code, it can be a new riff, a scale, a song, science, philosophy or anything interesting. Also, after every week I know at least 7 new things that I didn’t before!
2. Play guitar everyday
I didn’t play regularly for about 4 years in between but recently I’ve picked up this habit again. Its a great way to maintain mental and physical health with my job as a software engineer. It also keeps the creative side active and now I’m investing more in getting better and songwriting.
3. Sleep is the best debugging tool
When in doubt, sleep. It’s always faster to arrive at a solution to a problem after a good night’s rest. Sleep 8 - 10 hours and don’t set an alarm (unless there’s an urgency, for example a flight to catch). We spend almost one third of our life sleeping, invest in the quality - clear mind, a high quality mattress, pillow, comforter, blanket etc.
4. Optimize for time
Automate repetitive tasks. Ensure my tools are fast (computer, devices, builds, development workflows, processes etc). As Naval says, your time costs a specific amount of money (that you set). Spend money for things if it saves you time and costs less than the value you set for your time. This also applies to everyday things like shopping, checking for offers on things you buy, getting a refund, spending time at a party even if you’re being bored.
5. Job is a part of life, not the other way around
Care but don’t get attached to the job. That one last fix can wait till tomorrow. There are so many things to do in non work hours. Recharge, take breaks, play music, games, work on side projects, hang out with friends and family. Despite the fact that I love coding and my job, work towards independence from having the need for a job.
6. Be honest
Stay humble. Stand for what’s right. Give honest feedback to others. Question things.
7. Never miss out on a chance to grab a cup of tea with close friends and family
I’ve had some of the best conversations with friends and family over a cup of tea (not drinks). Its good to take a break and hang out with people who care about you and you can have a conversation about almost anything.
8. Learn by doing
Doing is faster than watching or just reading. Another great way of learning is teaching, if I can’t teach something I don’t really understand it.
What I can’t create, I do not understand.
9. Perfection is relative
Perfection is not attainable but aiming for it leads to better software, writing or music. Just like this post, when I started, all points sounded perfect in my head but now that I’ve reached the 9th point I think there’s still room for improvement. The frame for perfection keeps on shifting but it shouldn’t stop one from shipping stuff.
10. Life is short, enjoy the small things
As Ferris Bueller says:
Life moves pretty fast. If you don’t stop and look around once in a while, you could miss it.
And that’s about it. If you’ve read so far I encourage you to write your own list of ten things you have learnt.