Coders of Finance – { in·deed·a·bly }

Coders of Finance – { in·deed·a·bly }

Welcome back geeky FIRE seekers. A long time has passed since the last episode of this series. Some folks even asked me if it is over. The truth is that this series takes place in a special corner of my heart and I don’t really plan on killing it before I stop blogging, so please calm down. Today I brought you another fellow European and London based blogger who shied away so far from talking about the topic of programming in detail on his blog, however, he is one with the most advanced programming skills amongst us. Enjoy!

Tell us about yourself!

Greetings to all my imaginary friends on the internet! I am the man behind the pseudonym { in·deed·a·bly }, who publishes random thoughts at indeedably.com.

Tell us a nerdy secret if you have one

I wrote the original real-time SMS vote counting algorithm used by several reality television shows.

Some enterprising guys on my team monitored the incoming results, then dashed down to the bookmakers just before voting closed to bet on the outcome.

They didn’t win, learning an expensive lesson that reality television shows are scripted!

When was your first encounter with computing?

When I was about 7 years old, my father came home carrying an enormous box containing a computer.

He plugged it into the television and powered it up, then sat there staring expectantly at the blinking cursor with a puzzled expression on his face… waiting for something to happen.

It quickly became apparent he had absolutely no idea what to do next!

The following day he bought a copy of a computer magazine called Zap from the local newsagent. It came with an insert containing the code listing for a game called Aztec Challenge.

ActecChallenge

This was years before the World Wide Web was a glimmer in Tim Berners-Lee’s eye. Back then if you wanted to play a game, you first had to type in the source code!

My father valiantly tried to key in the pages of incomprehensible hexadecimal source code. He quickly became frustrated, deciding that his sausage fingers weren’t designed for “computering”. He parked me in front of the keyboard and proceeded to dictate the source code, giving me a clip over the ear each time the checksum validator beeped an objection to my dubious two finger typing skills.

Fortunately, this too quickly became boring. My father stormed out to the shed to play with toys that he did understand… power tools! I don’t recall him ever attempting to use that computer again.

Labouriously I keyed in the remainder of the source code. It took hours.

Eventually, it was done, and I was able to run the game.

It was magical! From that moment onwards I was hooked on computers.

What was your first machine?

A Commodore 64, with a cassette player and a joystick.

Commodore 64

Did you started with games first or jumped straight into programming?

I quickly became more interested in learning how they worked rather than playing them.

I wanted to peek behind the curtain at the code that was executing while a program was running.

To translate the magic into science.

To learn how programs actually performed whatever function they were executing.

Before long I had taught myself to program in BASIC. Soon I was modifying games to make them better. Eventually, I started writing games of my own.

What about education, was it related to computing, did you learn in a traditional way or something else? What kind of degree do you have?

Near the end of high school, the school I attended acquired a dozen battered old IBM XT clones. They announced they would offer a computing course, re-badged themselves a “technology” school, and begged the local government for additional funding.

A very angry English teacher was given the thankless task of trying to teach a bunch of disinterested teenagers how to code. He must have really upset the school principal to be given that assignment!

During the first lesson, it quickly became apparent the teacher had never before used a computer.

By the end of the second lesson, the other students were asking me for assistance debugging their simple “Hello World” programs.

Halfway through the third lesson, the teacher gave up and tasked me with running the class.

For the remainder of the school year, I taught the class how to code their own “choose your own adventure” style quest game (including graphics and sound).

The teacher contentedly sat in the corner reading novels by Douglas Adams and Grant Naylor, randomly bursting into thunderous belly laughs that shook the windows.

At university, I studied Accounting. I took a couple of elective computing classes early on but quickly concluded the impractical way universities teach computing wouldn’t help me get a job.

When did you start to work? Was it in your field? How was it?

My first job was delivering newspapers, aged 10.

I took a second job working in a photo lab, aged 16.

I added a third job working in a bar, aged 18.

My first professional job was as an Accountant, aged 20.

Accounting was great. It paid well! More importantly, it taught me to understand the profit motive and how to identify the value chain. These are valuable life skills that everyone should possess.

Accounting also involved no heavy lifting, working outdoors in the rain, breaking up drunken fights, or developing the random (often bizarre, and occasionally disturbing) photos that people take!

Aged 21, I followed a pretty girl to the United Kingdom on a working holiday visa. There I fell into a freelance developer contract, and have been involved in IT ever since.

What are your experiences about the industry?

In the beginning, I loved the beauty of an elegantly coded algorithm.

In those days memory, storage, and CPU cycles were expensive precious commodities. I learned that program efficiency was paramount, and performance tuning was a superpower.

In time I realized that it really didn’t matter how fast or pretty my code was if the specification I was working to failed to solve the client’s business problem.

I moved upstream, into analysis and requirements capture.

It turned out that clients often ask for the wrong thing. In these cases, regardless of how faithfully my requirements document captured their request, the resulting solution would solve exactly the wrong problem.

I moved upstream again, into architecture and later management consulting.

Now I got involved right at the start, helping clients to differentiate between what they think they want and what they actually need.

This typically involves identifying the strategic goals the client hopes to achieve, then (providing the goal makes sense) determining the optimal way to make it happen.

More often than, what is required are people and process focussed changes, that no amount of technical wizardry could ever hope to rectify!

I also learned that data is the true lifeblood of an organization, far more important than any individual process or piece of code.

Lose or leak too much of it, and the business dies.

Corrupt it, and the business experiences a long lingering death from badly informed decision making.

Data lasts forever. It will outlive any of the ever-changing array of transient applications, pipelines and data stores through which it may travel.

Look after your data as if your life depends on it… because in your business’s case, it really does!

What is your current financial situation and what are your financial goals?

I am very fortunate, in that I have passed the point of having “enough”.

Tell us about your journey so far?

Over the years I have established a diversified set of sustainable passive income streams that now cover the majority of my living expenses.

Several years ago I struck a balance between living for today and planning for tomorrow.

I lead a semi-retired working pattern. During the cold wet London winter months, I usually help clients solve interesting tricky problems. The remainder of the year I enjoy being a man of leisure.

How did your profession affect your finances (directly, indirectly)?

Information Technology provides a wealth of opportunities for those who are willing to take them.

IT remains one of the few remaining professions where there are low barriers to entry, and what you can do matters far more than where you went to school or who you know.

Working initially as a freelancer, and then later running a consultancy, allowed me to dictate the pace of my career progression. I could also charge whatever a client was willing to pay for my time.

The flip side of that equation is that every day is a performance evaluation: do well today and you may be welcome back tomorrow. Do poorly and you will quickly find yourself seeking a new client. Competitive pressures and commercial uncertainties are constant threats to your livelihood.

Would you recommend starters/career shifters to step on this path?

Everyone should learn the basics of coding: algorithm design, control of flow, and decision statements. These are core competencies, similar to having a basic grasp of reading or maths.

However, I think people should carefully consider what they desire from life, and where they want to live before they pursue a career as a programmer.

There are amazingly gifted programmers sat all over the world, each capable of writing beautifully elegant and wonderfully efficient code.

Many of them won’t need to earn as much as you to pay their rent.

When the quality of output is materially the same, the main differentiator becomes price.

In a race to the bottom, those living in high cost of living locations get priced out of the market first.

The technology game is also brutally Darwinian. Technology trends change at an alarming rate. Hard-won skills and experience can become stale or irrelevant after a dishearteningly short period of time.

Re-skilling every 2-3 years just to remain employable is not uncommon for programmers. The novelty wears off that particular aspect of coding very quickly.

My recommendation for people interested in a career in technology would be to focus on client-facing roles that cannot be easily outsourced or offshored. Roles that require both business and technology knowledge. These types of roles are also harder to replace with AI.

Did you regret becoming a coder? What would you change?

When your hobby becomes your job, it quickly starts to feel like work rather than fun!
Once I started coding for a living, I quickly lost all interest in tinkering with personal projects.
That was unfortunate, as previously much of my free time had been devoted to torturing computers.

Tips for beginners?

Learn coding basics by completing some free/low-cost online courses offered by sites like Udemy, Lynda.com, and Pluralsight.

Becoming proficient at coding is like becoming proficient at music. Initially, you will be unspeakably bad. With time and a lot of practice, you will improve.

Identify an actual, tangible, problem you are personally experiencing. Now code yourself a solution. And repeat.

Vendor certifications are often an expensive waste of time and money.

If you want to pursue a university degree then carefully consider the value of each institution’s brand. Perform an honest cost/benefit analysis on whether the tuition fees are actually worth having that brand on your degree or diploma.

For example, the internationally renowned Oxford University and the largely unknown Oxford Brookes University share many student facilities and charge identical tuition fees. Yet one is far more likely to get you a job interview than the other.

Which technology area picks your brain most these days?

Some of the work Boston Dynamics are doing with robotics is fascinating.

What do you think is the biggest improvement/challenge the IT industry looking forward these days?

There are several, but one of the big ones is managing “legacy hell”.

Recent ransomware attacks highlighted the huge number of organizations that depend upon technology platforms long past their useful life. It was alarming to see how much of the economy was held together by nothing more than duct tape and hope.

Decades of underfunding, shortsighted management decisions, and the absence of sustainable IT strategies have created a major vulnerability.

The problem has existed for a long time. The core systems found at the heart of many major institutions still run on 1970s technology, written in arcane languages where the majority of skilled practitioners have long since retired or died of old age.

Unfortunately, we keep repeating those same mistakes. For example, consider the vast numbers of web-enabled “Internet of Things” devices that ship with no viable means of patching security vulnerabilities.

We coders have our eternal debates, let us know which side do you stand?

You’re still fighting the last war!

Worry about something you can control, like how you will pay the bills once AI begins to program themselves. The majority of programmers become structurally redundant at that point.

  • Desktop OS: macOS
  • Mobile OS: iOS
  • Machine: Xbox
  • Browser: Chrome
  • Programming language: Visual Basic for Applications… there is nothing Excel can’t do, but an awful lot that it shouldn’t!
  • And the most important… spaces or tabs: gofmt and auto-fixing linters solved this

Would you write a couple of lines of code to present a simple financial principle?

I would love to… but no.

Years ago my developers staged a mutiny and revoked my access to the tools.

It is possible they were intimidated by the sheer awesomeness of the boss’s coding skills…. but unlikely!

They protested that when I was having fun crafting code, I wasn’t doing my day job: lining up new client projects, managing stakeholders, designing high-level solutions, and generally keeping them all gainfully employed.

They were probably right. Identifying, and then focusing on, those unique things we can each do to sustainably add value is a sound financial operating principle.

Epilogue

I hope you enjoyed reading this episode as much as I did. { in·deed·a·bly } your story and talents impressed me pretty much so please, in the future, talk a little bit more about the topic on your blog 😉

You packed enough wisdom into your answers which will provide me with thought food for the incoming celebrations about my career and future paths. Thank you for participating!

Stay tuned, as I have some more interesting CoF interviews in the buffer coming up next year. See you soon.

6 thoughts on “Coders of Finance – { in·deed·a·bly }

  1. To HCF, really love this series. To Indeedably, loved this sentence, “He parked me in front of the keyboard and proceeded to dictate the source code, giving me a clip over the ear each time the checksum validator beeped an objection to my dubious two finger typing skills.”
    I keep picturing this as the teaching model of a shitty for profit ‘elite’ tech academy in a mock commercial. Grade A stuff.

    1. Thanks, my friend. Unfortunately what you described is not just a fictional mockup situation and not just at for-profit places. My college had such teachers…

    2. OthalaFehu, the mental image you paint isn’t far from the truth!

      The year before my high school bought those shitty IBM-clones we all had to do 6 weeks of typing lessons (on typewriters!).

      To teach us to touch-type, the teacher taped a piece of paper over the keyboard. Our hands were under the paper, our eyes were over it, so that we couldn’t see the keys.

      We had to type out a passage from a book, while every typo was met with a whack across the back of the hand with the edge of a metre long blackboard ruler.

      It would be fair to describe the teaching technique as particularly “motivating” in our pursuit of typing excellence.

  2. Commodore 64, Aztec Challenge… I need half an hour to send melancholy away, then I’ll be back with a more meaningful comment!

      1. Wow, just checked it and this game is as old as me myself 🙂

        My first game which I can recall was Paperboy, but I get it on a magnetic tape. Still, the melancholy factor is too damn high 😀

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.