Upon discovering what a pure function means

Hi, my name is Ryan Sheehy, welcome to my website.

The purpose behind this website was to be a centralised storage house for all the issues I encountered when programming. I found when I would dive into a new project that I would have to leave it on the shelf because of other pressing matters, and when I did have the time to pick it back up, or even start a similar project, I would often hit the same issues.

This website is like a part of my memory bank – just so I don’t forget how to resolve or overcome a coding issue.

In regard to my history, it’s difficult to pinpoint a particular part of my life where I decided to do more coding. I never did any formal training, and the school I went to only had old Microbee computers – so using a computer wasn’t fun! Even at home my father had purchased an Atari 1040 ST computer and all I remember on that computer was playing Bubble Bobble.


It wasn’t until around the age of 20 when I started to dabble into day trading. My uncle had purchased the OmniTrader system that enabled people to buy and sell stocks based on trend line and sentiment analysis. It was the thrust into handling data, using Excel, that I began to search for better ways of doing things with a spreadsheet, and this is what landed me into the world of coding through VBA.

When you become a heavy user with Microsoft Excel and wade through countless spreadsheets, there will come a time when the humble formula processing through this data becomes either too large or inadequate to capture what is needed. And this is where I started to learn to code.

What I appreciated most about programming in VBA was being able to understand basic programming concepts by visualising data representation through columns and rows on a spreadsheet, and how values in a scripts change when calling and referencing the variables in the Immediate Window pane.

Seeing the power of what coding could do to spreadsheets opened up the possibility of what it could do elsewhere! And this is what spawned my curiosity in exploring other programming languages.

It was also during this time that I started working full time, but after realising I could do a lot more with my life I enrolled in college and later in university studying Commerce. During my full-time years studying at university, I continued day trading and picked up some jobs working at a stockbroking firm. I can still remember the day the stock market crashed in April 2000 when I was working there.

While at university, I did enrol in a semester learning how to program using Java, but I found this too much of a leap in my brain to fully wrap my head around at the time, so I dropped it after completing the first semester.


After obtaining my Bachelor of Commerce degree from Murdoch University, I continued day trading and moved some of my VBA coding skills into another language that seemed easy to learn – Python. It was easy enough to comprehend with the syntax and easy to see the result of my code through the integrated development environment (IDLE).

However, it was in 2004 when things began to change. I began to sink my teeth into scripting languages and web programming using PHP, HTML, CSS and JavaScript.

I registered and created a few websites using my newfound web programming knowledge, and started a few websites from scratch, with others using WordPress and making some customisations.


During 2005-2006 I had developed enough confidence in my own programming skills that I was able to work in a small fintech startup using the Delphi programming language. The business was a small managed fund that also offered buy and sell signals to clients. My task was making sure the buy and sell signals sent out to clients were replicating what the fund managers were doing.

It was my first real thrust into programming for other people and taught me a lot about deadlines! There were some nights where I would find myself coding through the night to meet a deadline by 8 am the next morning.

That time certainly helped to cement my understanding of programming, regardless of the language used. I felt more confident with structuring my coding and wasn’t afraid of trying new languages.

After my time spent with the fintech startup, my father decided to go out on his own and to build his own business after being laid off. During the next few years I was able to help his business build an accounting package using Excel and VBA, as well as a simple website using basic SEO to advertise.


During 2007 I did some soul-searching and travelled the world with a mate, at the end of our trip I decided to make a change from finance to teaching. I had been helping out a lot more in ministries at the church and was enjoying the time spent teaching kids and teenagers.

I jumped at the opportunity to go back to study full-time for one year to complete a Graduate Diploma degree in Secondary Teaching.


Spending 1 year back in full-time study was not fun, but the year flew by and by the end of it I came out unscathed with a teaching degree. I launched into my new teaching career and started at a busy college in Mandurah as a high school math teacher. I continued to use my Excel and programming skills to create helpful teaching aids for the staff.

But at the turn of the decade life changed again, and I found a girl on the other side of Australia, who I soon married and settled down with over in Sydney.


When I landed over from Sydney in 2010 I quickly searched for a teaching job. I was able to land a job teaching math and business studies and thoroughly enjoyed those years teaching students.

It was when I began working at this small Sydney school where I put up my hand to help school their broken website. I teamed up with the marketing manager to help code up what he wanted the web pages to look like, and with the help of WordPress we were able to win some awards for innovation with his design.

Coding continued to help me stand out from the rest of my colleagues whenever things were needed to be done, I was able to use my coding skills to help:

  • Design a report card system to automatically create, design and send report cards for each student
  • Create a house selector for each new enrolment
  • Create a system to automatically create report comments and grades based on weighted assessment marks

Overall, coding has continued to be a blessing and I cannot stress enough the importance of learning this skill. Start with one language, any language, and get started learning the fundamentals of coding today!


If there’s one skill I’m very thankful to have spent the time learning and crafting, it would definitely be coding. I hope to impart to my own children the importance of being able to learn how to read and write code, just as we teach children how to read and write normal textbooks.

Coding can be fun too

I hope my story can show the benefits of learning how to code, and I hope you get started learning how to code today and every day. Little by little, bit by bit.