Author: Matt

  • Not Infallible

    I’ve been reading the Walter Isaacson biography of Benjamin Franklin which is quite insightful both in terms of the genius of the man himself, and the historical perspective. One trait he had which I think I also share is a healthy appreciation of my own and everyone else’s fallibilities.

    In my world view the human body and mind are imperfect. We have aches and pains, need glasses, use hearing aids, suffer from kidney stones and other benign ailments. Our senses can trick us, optical illusions being a obvious example, colour blindness, numbness (or anaesthetics) deaden our sense of touch, hot and cold perception can be tricked. Inside our minds the fallibilities are numerous and complex: recall of memories is never exact (yet we are often adamant of their accuracy) and we are victims of a litany of cognitive biases that sway us from rational thought.

    With these imperfections in mind, I think it is healthy of have a slight distrust in our own opinions, and likewise to understand that everyone else is prone to the same human fallibilities too.

    Extending that concept. Everything in the world that is not derived from the laws of physics: law, business, art, finance, parks, music, government, building design, computer programs etc. are built on the pillars of ideas that come from human minds. All those things are also fallible in similar ways.  Government legislation is crafted by people with limited perspectives and therefore may have honestly unintentional and unforeseen consequences. It’s not necessarily the case that corruption or conspiracy is any more to blame than simple ignorance or under-appreciation of the balance of winners/losers for any given change that is made. However it is also worth considering that our opinion of the legislation may be based on incomplete perspective.

    The world is complex, trying to simplify it can be one of those cognitive biases we all exhibit.  I have accepted that my human mind has limits to the level of complexity it can comprehend, and that even within my domain of expertise – computer programming – what is ‘right’ is almost always just a matter of opinion.

  • Crypto Currency Rabbit Hole

    Over the last several weeks I have been getting deeper and deeper with my crypto currency investments and knowledge.

    I have been a long time holder of bitcoin and purchased my first few way back in 2013 when 1.0BTC was roughly $50. I bought a couple more last year.

    In the most recent couple of months things have been exploding. The value of Bitcoin is up 75% in the month of August to a high of over $6000.  Needless to say I wish I bought more.

    For the last couple of months I have been watching my portfolio more closely and getting nervous about the security of my bitcoin assets as well as the lack of diversification of having everything in bitcoin when there are hundreds of newer and technologically better and unique blockchain based currencies and tokens available to buy.

    This past week I was reading a lot about ICOs and various new coins that are becoming available.  I bought some Ethereum, BAT and ARK.

    There’s some real hype around all this stuff that is bleeding into the public knowledge. Big companies are starting to test out some of the potential for applying blockchains to de-centralize various things. As a result demand is growing and valuations are skyrocketing.

    For sure, there are some sketchy things going on and many of these coins are doomed. But it seems like this is a technology that just isn’t going to go away.

    One growth investment thought experiment I’ve come to appreciate is to answer this question: “In 10 years will X be more or less relevant?”.  I think crypto currencies in general have a huge potential to become more important.  It’s something I’m planning on investing in much more over the next while.

  • Keep Moving Forward

    My current project is picking up. The more I think about it the more excited I become about the potential value that will be created with it.

    Things took a significant step forward on Friday with a meeting with an accountant firm and corporate lawyer.  I’m taking the weekend to think through the options they gave me, and will hopefully be able to give them the go-ahead next week to make this business real.

    The important thing to realise is that getting to the initial launch is just the start of things.  Once this website is online the real work begins of trying to attract clients and work with them to iterate and continue to make this thing even better.

    If things are executed well I’m hopeful that I can do a soft launch before the end of May.  The Minimum Viable Product (MVP) is becoming functional.  Just a couple of late night sprints should be enough to push it over the edge.

    As part of getting this new business up and running, I’m going to spin down my old ones, and archive all the old content I have written on Halotis.com.  Amazingly, over the years I have written 593 blog posts for that website since 2005!  As my attention switches to newer ideas it’s finally time to retire that site and focus on the future.  However, I’m still undecided about where to move all that content.

  • Naming is Hard

    There’s a quote in Computer Science – “There are only two hard things in Computer Science: cache invalidation and naming things.”  Well, naming things is hard for everyone.

    Everyone brings to the table a history of accumulated connotations and associations such that the meaning of everything is different to each and every one of us.  Finding the right word for something new is ever more challenging in some ways. We intuitively gain a sense of meaning of words even if we have never heard them before in many cases.. this requires deliberate thinking.

    In software, naming variables well can be the difference between sensible readable self-documenting code or unintelligible write-once junk.

    Likewise naming things in the real-world is also difficult, the right name really does make an impact.  The right company name will make a difference, the wrong name will make everything harder.

     

  • Maintaining Focus and Passion

    My current side project is a bit bigger in scope than I had imagined when I set out my goals at the beginning of the year. With any large project it can be difficult to stay focused and passionate about continuing to work on it.

    For this project, the more I think about it, the more excited I get about the possibilities.

    One of the keys has been to set aside time to think about it more deeply.  I have been going for regular walks alone for 30 minutes to an hour at a time to wander and wonder.  This is something I mentioned a few posts ago, but it’s worth re-iterating just how effective it has been to help me resolve things and further develop ideas and attachment to the vision.  Without these walks this project would have died weeks ago, instead it is getting closer and closer to being ready to launch.

    For the right project you want to keep working on it late into the night, and that’s what I have been doing these last few weeks.

    Often times in life we find ourselves in a reactionary mode.  Emails come in and we deal with those, kids fall or whine and we deal with that situation, something is on TV and we focus on that. In business we know that reactionary mode is not very productive – instead of fighting fires at every turn you should be building on new ideas, expanding visions and problem solving how to make them a reality.

    You need to carve out space to do that and walking alone for 30 minutes allows you to be in control over your own agenda, your own thoughts for just enough time to bubble up new connections.

     

  • The Problem With Open Source

    Open Source software has been on my mind a lot the last few weeks with regards to a problem that exists within the community.

    The world is built on the shoulders of Open Source software. If you look at any tech startup out there,  they are more public code than proprietary. We leverage open source as a starting point for new ventures and new innovation.  Even large companies – the Googles and Facebooks of the world would not run without that foundation of open source code.

    The reliance on Open Source inflates the risks. Bugs in open source come at huge costs due to the amount of shared code by everybody. The direct costs of a bug or security vulnerability could be massive.  For example, the estimated cost to fix the Heartbleed vulnerability in OpenSSL was $500,000,000. There are indirect costs as well, relying on goodwill of volunteers means you can’t have the best people work on the hardest problems.

    Yet, despite the critical nature of this code the vast majority of work on open source goes unpaid.  Most projects are started out of personal interest – an often fleeting commitment. There is little accountability and in fact as has happened time and time again these developers burnout and abandon popular projects.  Were you to do ‘due diligence’ on any of these projects you would find that 30% of the top 133 projects on Github are maintained by a single person, that the next 34% have only 2 contributors.  These are at risk of being abandoned quietly or at short notice.  Key pieces of supporting infrastructure such as package management services need to be up, but are maintained by people who need to book vacation days from their paying jobs to do so.

    Github was launched in 2008 and with it, a new wave of open source developers started to dip their toes into it.  These open source boomers are becoming more senior, they are realising the value of the code they write, and they are starting families that vie for their time and attention. For many of these developers burnout is real and they increasingly need to justify their continued involvement.  If we ignore this problem the code we all rely on for a functioning internet could be abandoned.

    It is a growing problem for which something must be done.

     

  • Consider Your Loss Aversion Bias

    Loss aversion is the preference we have to avoid losing $5 compared to gaining $5.  It’s logically the same value in this example but yet some studies have shown that we are twice as likely to favor avoiding the loss.  This effect plays out multiple different ways in our lives.  We tend to hold on to losing stocks to avoid taking the loss, we price anchor our houses and have a hard time accepting lower bids, we stay in bad relationships, we stick to secure jobs instead of following our dreams.

    We should be conscious that we are ourselves under this bias with our own choices.  The truth is that perceived losses FEEL worse than reality. Actual losses are usually less dire than we imagine. Worst case scenarios are usually not as bad as we intuit.

    The flip side of that coin is that potential gains are usually undervalued.  The prospect of making an extra $100 per month has LESS perceived value than its actual impact on your finances would be. The upside to a successful entrepreneurial venture are under appreciated by all but the most motivated entrepreneurs.

    We are not great at logically assessing risk. Hence cold hard math can be a competitive advantage since it has a way to shine a light on our biases and accept facts.  When you find yourself contemplating taking a loss assume that your ability to come to the optimal solution is compromised and therefore the exercise of doing a more logical analysis is often beneficial.

  • Team Communication Overhead Costs

    I’m in the middle of undertaking a large software project – something that could take 200 hours to get to an MVP. I wanted to get things organised. My first thought was to use some of the tools I’m used to – Trello for a kanban style board, bug tracking, continuous integration services, Slack. But on second thought I realised that all of these tools are designed to aid in communication to other team members. With a team of one (me) all the communication can happen within my own head thus the time that would go into configuring all these extra tools and transcribing my thoughts into them is wasteful.

    Instead I’m able to work off off of a simple todo list.

    Do some brain storming, sketch out some ideas on paper then figure out some reasonable list of high level tasks.  I can leave it all on paper so it’s on my desk and in my face and easy to scratch off and add to at any time.

    If I add just one more developer to this project, then suddenly all these things come back into play. It becomes necessary to discuss who is doing what, to understand and verify each other’s work, to maintain consistent code style and quality. Digital platforms like Trello become necessary to stay in sync and the quick and flexible paper approach gets crumpled up and tossed into the waste bin.

    It’s hard to appreciate the cost overhead of scaling from one to two people.  It’s easy to look at a calendar full of scheduled meetings and see how much time is spent talking compared to writing software, but what is harder to see is the amount of time spent chatting on slack, updating trello, and commenting on pull requests. There are communication costs that are hard to measure.

    It’s something to consider when you are deciding to hire your first person

  • Finding a Coach

    Learning new things that affect the core of your being is a challenge not many people take upon themselves.  Yet it could be the personal pivot you need to make a genuine change.

    Many years ago I took a Dale Carnegie course, it showed me a side of myself that I couldn’t get from my friends and family who are always trying to be nice and avoid confrontation. Those people accept you for who you are and will not challenge you to change.  That course taught me that I cannot speak loudly. Through exercises I got better at conversation and assertiveness.  It helped change my behaviour at work and grow as a person.  It’s something that I could not do on my own, nor could I get it from the people around me.

    I needed a coach.

    A coach will analyse you and provide constructive feedback on how to get better by suggesting exercises to do, changes to make, and perspectives to consider. A great coach has a keen eye to spot areas for improvement and will hold you accountable to work on them.  This is something you cannot expect to have from your friends and family who will typically avoid candid conversations. Chances are you need to hire a coach.

    Last year I took sailing lessons. It was a chance to learn something completely different from what I do all day and gave me a very different sense of accomplishment compared to, say, learning another Javascript framework. Part of the difference is that with sailing I had a coach who suggested areas to improve on all the time and with each lap I got better.  At the end of the course it changed me, it had opened the door to many other perspectives which were not even on my radar prior to taking the course.

    This is the power of a coach.  To show you things you cannot see for yourself.

    For years, when I was in meetings I spoke at a low volume which created the perception that I was shy and not confident.  NOBODY TOLD ME!  It took years, and then when fishing for feedback on an annual performance review my boss suggested taking the Dale Carnegie Course to build some assertiveness.  Why didn’t anyone say something sooner?

    We continue to need coaches in our lives.

    Even the best sports players of all times at the peak of their careers still rely on their coaches.  With that in mind perhaps we should all have a coach to help us improve with some aspect of our lives more often. A piano teacher, or speech coach, CEO coaching, or business mentor. If there is something you could say “I am not awesome at X”, then perhaps it’s worth finding a coach for X.

    It’s something I hope to make part of my routine more often, accept that I have areas for improvement and find a coach to help work on them in-person.

  • Brainstorming Week

    After reading Elon Musk: Tesla, SpaceX and the Quest for a Fantastic Future I was pretty charged up and inspired to start working on something more long term and meaningful. Since the book was published Elon has also gone on to create several more businesses that weren’t mentioned – OpenAI, The Boring Company, and NeuraLink.  Elon’s ambition to tackle really hard problems that have long term massive impact potential is admirable and inspiring.

    The problem with reading books like that for me is that it always gets me thinking.  What kind of things could I build? What ideas are worth the risk? Could I take the same leap of faith to pursue a goal that Elon has on several occasions?

    Several times over the last few years I have found myself thinking that the world needs a few more people like Elon Musk to solve audacious problems.

    Now I have a little bit of insight into how to create another Elon, the traits and stepping stones that could be modelled.

    Along those lines, I have been doing a lot of brainstorming over the last couple weeks. I will be trying to prototype some of the ideas and further develop them over the next couple of months as part of my goal to have 12 software projects implemented this year.

    The idea to work on for April is to find a way to fund open source.  It has been tried, but no one has found the right formula yet.