Over the last couple of weeks, many have reached out and said that they read these posts. I started writing these posts for myself and I don’t intend to change that. All the same, I am very happy that many find some value in my own learnings and journey. I keep saying that there is enough we learn in a day to fill pages, but because we have many challenges on our attention, these things slip away. That is the reason I write every week–so that I can remember.
This week, I focused a bit more on learning Go (golang) through Exercism and some other videos. Other than that, I found some nice articles and podcasts that gave me additional perspectives. It’s been a humble and gratifying journey.
Ultralearning
The first topic today is highly relevant to the theme as well–learning. Coaching for Leaders is one of my favourite podcasts and this week’s episode was an interview with Scott Young who wrote a book on Ultralearning. On the podcast, he talks about how he completed MIT coursework that typically takes four years within a year (this is also the first chapter in his book). There was also discussion about the contemporary methods of acquiring knowledge and how they fall short. I could associate this with what I know of machine learning and learning models in general. To learn something, actually, learn, you need to “rewire” your brain. The regular methods of attending talks and lectures don’t help do that. That is only possible with practice–intense practice.
“Passive learning creates knowledge. Active practice creates skill.”
This is one of the lines in the very start of the book and he goes on to present a strategy, or a framework to make this learning possible. One curious thing was that the foreword of the book seemed very familiar to me and I began to suspect who it might be. By the time I ended the foreword, I was not even surprised to see it was James Clear who wrote the foreword. After the influence of Atomic Habits on my own behaviour and methods recently, I have no hesitation in recommending this book even though I have barely started it.
Authenticity
There was an interesting discussion on authenticity in another favourite podcast of mine. The podcast description starts like this:
We’ve gotten a lot of comments in the past couple of years from some folks who say they don’t like our Trinity models because they don’t feel “authentic.” Sometimes they say it’s “formulaic.”
I have been thinking of this lately. For example, I always thought that putting your whole day on the calendar is “formulaic” is not me. I never liked it but there was a point when I thought I should try it. Coincidentally, the senior leadership at work began recommending this around the same time and I thought to myself that it is now time for me to try it. If you have been reading some of my older posts, you know that I struggled with it. I have now settled into it and accepted the idea; even reap the benefits. I am now identifying something with myself which, only weeks back, I thought is not me.
But I digress. While the podcast covers a lot of things, one of my main takeaways was about authenticity being used as a crutch for lethargy, or lack of willingness to be uncomfortable. If you listen to Manager Tools, you already know how they repeat that you give up certain rights when you agree to go work. You essentially live your organisation’s values when you are working. And values take priority over authenticity.
Act of Kindness
I have been thinking about kindness a lot this week. I tweeted earlier about how I am writing messages to all my colleagues most of whom I’ll be meeting in about a month in a company retreat. Kindness is one of my core values and of the three core values of Axelerant, my company. But this section is not about that.
It’s about a podcast episode from another of my favourite podcasts–Brain Science. Here, the hosts dig into what empathy means and why it is so important today. Understanding empathy has gotten more important with remote communication being so prevalent, and I especially identify with it working in a completely distributed company. In this episode, the hosts talk about the 5 aspects of empathy, the brain structures involved in the act, and even suggest a simple mnemonic framework to help us be more empathetic.
One of the more interesting things that struck me was about the saying that how people who grow old together look alike. They explain it with empathy and how when we live with someone for a long time, we mirror the facial expressions which cause the ageing wrinkles to grow in the same manner. Humans are amazing!
40 Lessons
I write about learnings every week. That’s nothing compared to distilling 40 years worth of learning in 40 lessons. Go read it. I’ll wait.
While all of them are poignant, I’ll share some that I especially identified with.
- It’s ok to say, “I don’t know” because it’s impossible to have all the answers.
- Never underestimate the power of being the first to truly believe in someone.
- Everything rises and passes. It’s a law of nature. Change is constant around us and within us.
- The only person you can change is yourself. It is nearly impossible to change other people. However, when they notice your own change, it might give them the courage or impetus to change themselves.
- Being a parent is 5x harder but 100x more enjoyable and fulfilling than I ever imagined. Love for a child is boundless. Caring for your child is the purpose of life.
- Travelling is the single most effective way to learn about yourself, humanity and the world.
- If you wait for the perfect moment or inspiration to learn a new craft or create something, you’ll never progress.
- Listening with your eyes is just as powerful as listening with your ears.
- You’ll never get what you don’t ask for or actively seek out. Go for it!
These are what I identify with most. You should read the whole list to see what you identify with. You are not me. Don’t expect that the above is sufficient for you. Always go seek out more.
Drop of Honey
There is a reason that the Coaching for Leaders podcast is my favourite. He keeps churning out ideas I especially identify with. This episode is essentially my style of management at work and my mechanism for tact in my personal life.
A drop of honey gathers more flies than a gallon of gall.
In this episode, Dave talks about his personal experience with an errand and how he faced disappointment when tired and annoyed. But instead of demonstrating frustration, he empathised with the other person.
I try my best to limit demonstrating my frustration in my work life. Only my colleagues can say how successful I am in doing so but I think I manage to be open and kind at the same time most of the time. I don’t think that forcing someone is going to make them perform better and the only advantage is a temporary calming of my own frustration. Instead, I have seen growth and learning in scenarios where I have kept my calm and worked out a problem together.
MS08-67
This is just interesting for me for historical reasons. This is from a podcast called Darknet Diaries which covers “true stories from the dark side of the Internet”. Each episode is interesting to listen to and gives me a perspective in the highly complex world of cybersecurity. This episode was interesting because I identified with Microsoft’s approach to releasing a fix for a highly critical security vulnerability. The story of how they found the issue is interesting but how they coordinated the fix is even more interesting. I see parallels in the Drupal Security team who manage security issues in a widely deployed CMS. The logistics of releasing the patch, seeing it updated across millions of installations, and taking care in communicating the aspects of the patch while dealing with effects of reverse-engineering the patch are everything that I know from the operations of the Drupal security team as well. If you’re interested in cybersecurity, do listen to this episode.
Go Interfaces
Like I said before, I have been learning Go and am intrigued by their object model or the apparent lack of it. Go does have interfaces; in fact, everything in Go is an empty interface, but the practices around using interfaces are completely opposite from other languages. While in many languages like Java and PHP, it is encouraged to expose interfaces and have the dependent code use your interfaces, Go suggests the exact opposite. In Go, you should not worry about the interfaces provided by packages; in fact, packages are encouraged not to export interfaces at all. The client code is expected to define the interfaces it cares about.
When I learnt this at first, it kinda made sense but I was not completely satisfied. Then, I saw a video suggested to me by a mentor on Exercism and I now see the benefits. I will not try to explain it but link straight to the video. The beginning of the session is about interfaces in general and you can skip it if you already use interfaces in other languages (but it’s worth a watch). Start at the 27:09 min mark to learn about implicit interface satisfaction, which makes all the difference.
New package managers
One of the things different about Go is its distributed package management system. In this week’s syntax.fm podcast episode, they talk about a lot of different technologies that are likely to come out this year. Of these, alternative package managers for Node caught my eye (or ear). I don’t use NPM that often to have a strong opinion but I am aware of various issues that npm has faced over many years and how people are looking forward to an alternative, rethought from ground-up approach to package management in the Node world. In the podcast, they talk about Deno (which is an alternate runtime altogether for JavaScript and TypeScript), Pika, and tink and how they would be redefining package management in JavaScript. I am not going to comment further here as I am not an expert on this. But I’d suggest you listen to that episode if this is interesting.
Underappreciated Go compiler
This is another thing I am not qualified to comment about in detail as I am just beginning to learn more about Go. This post was very interesting to me and helped me learn more about the golang ecosystem, how it is cross-compiled, and about its module management (package management). I also read about “vendoring” which is admittedly something that I wouldn’t do in other languages, and am not convinced is the right approach in Go, but I don’t know Go enough to comment more.
There are other things in my notes but I think this is enough to write about this week. It’s funny that I was worried I wouldn’t have enough to write about this week, but this might be one of my longest posts yet. Have a good week everyone and thanks for reading if you made it this far.
Leave a Reply