code shamed

If your profession or passion involves writing code, this thought has entered your mind sometimes or the other as you shared the code you wrote with your colleagues or pushed the code onto Github as a public repository.

I have never participated in a pair programming exercise so far. From what I heard from a few people who have participated in pair programming exercises, the experience has not been good. After the activity, they felt that even though they got the solution right, the person on the other side judged them for how they went about writing the code. The code compiled well and worked but was not written the way the other person had expected it to be written.

“You did not use the right design pattern”, “did not abstract the code well enough”, “did not use an inbuilt function and went about duplicating an inbuilt method”.

Reviewing code well is challenging. Writing code well is challenging. But, we are all getting better at the craft the more time we spend at this.

“Code is Poetry” — WordPress coined this phrase and has it on its website. Code is indeed poetry. Some people are spending a lot of time getting better at writing poetry. Some write poetry to make a living and not because they feel as passionate about it.


measure

How many blog posts did you publish this week?

How many steps did you walk today or this week?

How many times did you exercise today or go biking?

How many hours did you spend at work this week?

How many bugs did you fix this week?

How many tv shows did you watch this week?

How many meetings were you part of this week where you did not speak?

How many hours did you spend on Instagram or Facebook this week?

How much screen time did you have this week?

There are so many things to measure on a day to day basis. Maybe we could also start working towards measuring these:

how many people did you talk to today or this week?

How many people did you make smile today or this week?

How much time did you spend today or this week working on things where time felt like a blur?

How many times this week did you say no to the extra sugar/fat you have been trying to avoid?

Can we start measuring and spending more time on these too?


episode 3

Maybe these don’t need to be episodes. We never thought about the podcast having a season, yet we addressed the first two recordings as episode 1 and episode 2. episode 3 is where it stops. Just conversations. we still need a name for the podcast, though, or maybe we can call it “Sanat and Sunil’s Podcast”

We spoke about “mutton curry” - The best thing that happened to you this week, Deep Work, Maker’s Schedule and iOS 15 focus mode.

Sanat also updated the recording to now have an Intro 🎉

It keeps getting better.


scary

I sent this word to a friend twice yesterday as I saw a video he had sent. The video was of a person refusing to get out of Uber car when instructed by the driver, who felt that he was being scammed.

I have always been interested in human behaviour. I could spend hours reading and learning more about human behaviour.

What do you do when you are no longer in control of the environment you are in? The example above was the Uber drivers car. It could be your workplace, a meeting you are part of or at a party. How do you deal with the situation? Do you walk away, confront or stay silent?

Depending on the kind of person you are, your reaction to the situation would vary. Likewise, depending on the place you are at, the response to the problem would vary. After a few years of being in cases like this, I would recommend dealing with the situation the way the driver did. Stay calm and walk away. It’s seldom worth going the other way of being angry and getting into an argument/fight.


habits

I have been reading Atomic Habits for a few weeks now. If you are deciding on which book to pick up next to read, I would recommend reading this one.

Goodreads has this paragraph about the book.

If you’re having trouble changing your habits, the problem isn’t you. The problem is your system. Bad habits repeat themselves again and again not because you don’t want to change, but because you have the wrong system for change. You do not rise to the level of your goals. You fall to the level of your systems. Here, you’ll get a proven system that can take you to new heights.

As I read through the book, the advice felt familiar to what I had read earlier. In other books and online articles. “Want to build habits? Make it part of your schedule. Daily or weekly. Stick to it”.

Want to get better at writing? Write every weekend or every second day. You don’t have to publish everything that you write. Write. You don’t have to write a few paragraphs, a few words perhaps.

Want to lose weight? Cut out a few calories from your diet every week. Start exercising for ten minutes, three days a week, maybe two days. Commit to this cut calories/exercise routine.

These are general advices. But if you have a system around your goal and stick to it long enough, you will slowly inch towards your goal. Takes a while, though, and that’s a significant problem.


its good to vent - 2

A follow-up post what I wrote yesterday. When I started writing down my thoughts yesterday, somehow, the topic drifted from me venting towards sopranos. I am always fascinated with how the brain goes from one topic to the other. So I let the brain do its thing.

“four more weeks”. I had this rant with a few colleagues this week on a few zoom calls. I was done with the whole lockdown and being at home. I had done this before. Last year when Covid-19 made its way to Australia, NSW was not in lockdown. Everyone was encouraged to stay at home and stay at home, I did.

For three whole months. Alone in an apartment. It’s fascinating to see how your thoughts wander from one thing to another when you are alone in an apartment for three months. Yes, you have Zoom and Whatsapp calls, but that was not me. It worked the first month, but I was done depending on a screen to interact with people after a month. I was also done being at home all the time. I have never been the kind of person who stays at home for long.

This last year, I have hardly spent any time indoors. After last years experience of being indoors all the time, it was almost like I made a pact with myself to go exploring and visiting places / doing things as much as I could. And that I did to my heart’s content.

It was good, though, the first month of being indoors. I started on a positive note. “a week at home”. I got a whole lot of things done. I had plans for a week. When things did not work out well for NSW, I had plans for two weeks, and then three and four weeks. I could even make plans for what I wanted to get done in the next four weeks of being indoors. It’s just that I am tired of being indoors. I understand why the government is making us stay indoors, and I am more than happy to comply. It’s just that I cant wait to go outside, meet new people, exercise at my gym, visit new places.

Boy, it feels good to vent.


its good to vent

I came across this thread on Reddit this week. “Four more weeks. Fuck positivity, I’m starting a negativity thread”. If you are on Reddit and have some time to spare, I would recommend giving it a read.

I rarely write about anything negative here. It’s not me, and I tell everyone around me to not have negative thoughts. It’s good to vent, though. It’s good to write about the things that are bothering you. Something about putting your thoughts down on a digital notepad or in a diary: it has helped me quite a lot before. I remember reading this post by Marco Arment a few years ago, and it instantly resonated with me “Thank you, internet”. I remember writing a post based on this post, but I lost that post thanks to moving my blog from one platform to the other.

I have been watching Sopranos the last few weeks and following Sopranos as a topic on Twitter.

men will watch tony soprano go to therapy for 6 seasons instead of going to therapy themselves

— Haley OC (@MILFWEEED) July 17, 2021

One of the main characters, Tony Soprano, goes to visit his therapist in almost every episode I have seen so far. To talk about what he has on his mind and listen to what the therapist has to say. It’s good to vent. Let your thoughts out. Maybe you are talking about it with your friends or your diary, writing it on a blog, or visiting a therapist to talk about it. Whatever works best for you. I hope you are taking care of yourself.


developer ecosystem

I was reading through The State of Developer Ecosystem 2021 yesterday. If you are a software developer, I would recommend reading through the report.

This report presents the combined results of the fifth annual Developer Ecosystem Survey conducted by JetBrains. 31,743 developers from 183 countries or regions helped us map the landscape of the developer community.

My takeaways after reading this report were:

  • Need to pay attention to developing Javascript-based apps.
  • GraphQL. I should have paid more attention to GraphQL and building APIs using GraphQL.
  • TypeScript. My next project needs to be built using TypeScript.
  • Go - Look at building a few microservices using Go this year.
  • Since I work with PHP, look at moving more apps(previous and current) to version 8 and start writing tests using PHPUnit or Pest.

tribes

I had almost two hours of discussion yesterday about tribe and its importance. I remember reading this book by Seth Godin named “Tribes” in 2009. However, I don’t remember a lot about the book, and it was great to spend a few minutes this morning reading reviews about the book.

If we have ideals aligned with the bettering of people’s lives, aren’t we obligated to try our hands at doing so?

Review of “Tribes: We Need You to Lead Us” by Seth Godin

I also liked this review of the book

Seth’s basic premise is that a tribe is any group of people, large or small, that is connected to one another, a leader, and an idea. The Internet has eliminated the barriers of geography, cost, and time. All these tribes need is leadership.

That’s where you come in.

Book Review Friday: Tribes by Seth Godin

From my discussions last night, I remember telling my friend that I wish we all belong to a few tribes we associate with. If we are passionate about certain things, we owe it to others to lead certain tribes.


breakups

Breakups are hard. Having been through a few now, I only understand a few things of what it takes to get over one. I hope no one has to go through one.

A friend on Friday told me about one of his friends who committed suicide by hanging himself. While talking to another friend about this, he asked if it was because of a breakup. I was not sure. Police did find a note in his diary which said: “this life has no meaning”. What the person went through before choosing to end their life is only something they know.

I build software for a living and don’t have much knowledge about human psychology. After every breakup, though, I remember reading a lot about what a person goes through and the different signals and emotions your brain has to process. Sometimes you win. Sometimes it’s the other way around. I have a few been told and read about post-breakup suicide stories, though, and it has made me extremely sad to hear about them.

Breakups are tough. If you are going through one and reading this, believe me, it does get better. Each day choose to focus on yourself. A lot of people out there are waiting to meet and hear about you. Maybe you don’t find them right away. Perhaps it takes a few months or a few years. Choose you. 🤗


a routine?

Do you have a routine? The first thing you do after you wake up? Is it different on weekends vs weekdays, or is it always the same?

Does this routine need a change? If you have not been feeling the best through the day for a few days now, maybe a change in routine would help. On the other hand, if the change in routine does not help, perhaps the change you chose to make was not the correct change? For example, running instead of going to the gym, tea instead of coffee the first thing after you wake up, writing instead of reading, yoga instead of jumping on Instagram as soon you wake up. There are so many different choices to choose from.

Or maybe you don’t need a routine. It could be some different each day. Why not?

My routine during weekdays is different from weekends. Weekdays it’s all about exercise; at least it was before the lockdown. Weekends are more about writing while sipping on good coffee and listening to good music. These things I look forward to and consider twice before trading for something else.


well thought out software

When I initially started to build software, I wondered what so many people who worked at the company did. Why did Twitter need 100s of people to maintain their API? Why does PlentyofFish have 100 employees for being a dating site? The naive me did not understand what it takes to build and maintain software.

After working in the software industry for more than ten years now, I can see what it takes to build a well thought, robust and scalable software. However, knowing the scale and reach of some of the products, I now feel fewer engineers work in these companies.

We need more people to join the brigade to build well thought out software. So apply and join that team in the company that you admire.


the best thing that happened to you this week

Before I went to get my coffee today, I was thinking about what to write about here. I must have mentioned this before, but writing early morning on Saturday and Sunday is something I have enjoyed.

The barista at the cafe asked me, “what’s the best thing that happened to you this week?”. It got me thinking for a few seconds, and my mind racing to think of all things that happened from Monday to Friday. I told him about my friend James cooking some mutton curry for me. It was great, and it was nice of James to cook a meal I had been craving for a few days. I am so grateful to have good friends in my life.

It also got me thinking of all the other things I did this week. With NSW still being in lockdown, other than the trip to the cafes downstairs and the grocery store, I have been home most of the time. Computer, TV, food and conversations with friends close by and over Whatsapp.

My chat conversations tell me I was sad on Monday cause of some more people leaving the organisation. I also had to cancel my trip to Cairns cause of the lockdown 😢. We had our OKR boards on Tuesday, so the first half was spent on that and the second half debugging an issue I was working on. Wednesday was a quiet day, focused on updating a node.js Lambda function. I have been enjoying working on node.js. Thursday was the same, with the highlight of the week, mutton curry 😋. Friday, again node.js testing and our companies showcase over Zoom in the second half. Yesterday, I also learnt about the worlds largest sailing yacht.

I am going to make this a regular thing going forward. So, Saturday morning, think about the best thing that happened to me this week. It’s been a fun exercise.


dont build to launch

I had this talk for the second time this week. A friend wanted to build a learning management system to host videos/courses they have been working on while granting access to only a selected few who pay them on a weekly or monthly basis.

Six years ago, I would jump to the opportunity to build a learning management system to learn how to create an LMS and a chance to spend more time programming and setting up servers. Now, though, I know how long it takes to build a new application and all the problems you encounter when setting up a new system from scratch.

When you have an idea and the urge to present the picture, I recommend using an already existing tool. It might not match your requirement 100%, but if it does 50% of what you want it to do, signup, upload content and start marketing. Does it cost a few $$ to pay for the product? It sure does. But a lot less than paying someone to build, host and maintain the product. When you reach a particular scale, though, and when that 50% mark does not cut it anymore, look at building your software.

As of now, I recommend Podia(affiliate link) as a way to get started, but a quick google search for Podia alternatives should give you a few more options. Good luck.


left behind

When I was living in New Zealand, one of my flatmates wrote about the experience and thoughts of people who were still working at the company after the company went through mass layoffs.

I did not think about this topic a whole lot back then. I had never worked for a company that big and did not understand the subject a whole lot. However, now that I work for a large organisation, her thesis topic made sense. How I wish I had gotten a chance to read her paper. I would have loved to read the thoughts of people who were still working at the organisation.

I have been reading more about this topic this week, and the more I read about it, the more I want to document and write a paper about this. Maybe a journal or page on this blog that has details of what I find.
Thinking about this some more, I do plan to add more pages to the blog which documents things I reading/learning about—an easy reference for when I come back to learn about the topic.


episode 2

Sanat and I clicked the “Record” button and started talking about things we had in mind. “Remuneration” is what we had in mind last weekend.

I have been enjoying recording audio again. Even considering applying to be part of a podcast hosted by the company that I work for. I have always done audio, never video. Video will be a welcome change. I am not entirely comfortable with video now, but 2020 and 2021 have made me feel comfortable with change being part of day-to-day life.

This time we tried riverside.fm for recording and descript.com to edit the ums and ahs. I would highly recommend these two tools.


a week at home

I have been busy the last few months. NSW, Australia, the state I live in, has been blessed to have had no community cases the last few months. So being able to move around freely has been great. Between work, meeting friends for lunch or dinner, group fitness classes, gym, it has been great.

Due to the rise in community cases, a few suburbs in Sydney went into lockdown starting last night. Since I work in the city, this means not getting out of home for the next week other than for essential services. Back to working from home and how things were during the lockdown phase. Having lived through a similar experience before, it should be easy to train yourself to go back to not having to get through many things during the day. There is no schedule anymore for the weekend or the following week. Stay at home, read, learn, exercise indoors.

Quite excited about the following week. Build an iOS app being high on my priority list. I have wanted to build an iOS app for a few months now, and this downtime seems like the perfect opportunity to get started and make progress.


gamer gate

A colleague recently spoke about how she enjoys spending hours together playing games. Most of these games are multiplayer and online. Random strangers in one gameplay. She also spoke about choosing a “male” or “neutral” username and tries not to speak when she plays with other people. Growing up, she remembers being selected as a character to be eliminated because of her username and how she has become better over time to deal with online gameplay. She stuck around even after all the harassment. I am sure a lot of people have quit.

I remember reading about Gamergate controversy and was shocked to learn about this side of the internet. Likewise, I remember reading about online harassment and was also surprised when I learned about this side of the internet.

We should do better. We can do better. Internet, for me, has always been a place where you get to interact with people from around the world. Most of them are a few messages away. I have always used it for good. It has given me my bread and my butter. It has helped me connect with friends, learn new things and learn about different aspects of life.

I want more people to join, more people to feel welcome. Maybe it’s a game, a new social media app. I want everyone to experience the good internet has to offer. Building better tools to tackle online harassment, tools that detect bullying, hate speech. As a software developer, I pledge to do better and look at how I can help.


integration test email #1

HBO Max yesterday got a lot of attention on social media yesterday after they sent out an email to a lot of their customers.

Internet was quick to react, and most of the tweets were so so supportive. We have all been there. Wanting to test something and you accidentally run the command on a production system.

Running any command on production scares me. One missed logic, and there are a lot of things that could go wrong. Even with backup, the process of restoring to the previous state is not an experience I would want anyone to have.

I don’t have a “integration test email” story, but two production incidents I do remember are:

apt-get upgrade

I was responsible for ensuring that production systems are well patched with the latest package update. On a Friday evening, I ran ‘sudo apt-get upgrade‘. A few minutes later, the system is updated, and server monitoring tells me the system is down—the days of having just one web servers and no-load balancers in place.

Thanks to the server image created two days ago, I made a new server in no time and deployed the latest code there.

UPDATE gone wrong

As part of the new feature we introduced, we allowed users to attach files from box.net. We had tested the integration, and it worked well. Code review was approved. In production, someone managed to use the integration, which called an “UPDATE” query without a “WHERE” condition. 🤦‍♂️

It took me five hours to restore the database to the previous state and ensure that data was synced to as recent of a snapshot.

Production incidents are always brutal. Always be learning and ensure that processes and tests are updated to avoid as many incidents as you can.


podcasting

I have been wanting to get back at recording the podcast I started last year during the lockdown. After the first four episodes, I lost motivation to record again. Not many things made sense. Being at home all the time, I did not have the energy needed to record / edit/edit again / record again.

Things have gotten a lot better since then. Being able to move around, being able to get back to meeting people, being able to experience new things. I also got told by my cousin that I should start recording again last month. I remember getting the mic out from the storeroom and hooking it up to the mac after I got that message.

Last month, Sanat and I spoke about recording a podcast together. We did not know what it was going to be about. Sanat mentioned that he had heard this podcast where two friends randomly catch up and discuss whatever they had in mind at the time of recording. “We should do that”. And we did. We recorded the first episode last week using Zencastr

The second part involves having to merge the files, edit the silences out, and choose a place to host. That’s a work in progress. We did not know how difficult it would be to merge two mp3 files. Maybe we should have tried Zoom or Skype and recorded audio there. I know how to edit a single audio file, but having to merge two tracks, layer it, and edit it has been difficult. I have been told that Logic Pro is the software to be used. I will be spending some time this weekend learning Logic Pro.

Back at Podcasting. I did not know how much I enjoyed it until I pressed the Record button. Thanks, Sanat.