Skip to main content

My Programming Journey.

··3 mins

Today I was thinking about how I started in 💻 programming, which is something I enjoy doing on a daily basis.

I believe my first exposure to it was when I was 14 years old when my dad told me he was able to create programs in his HP 48G by giving instructions to that small computer.

That didn’t mean that I started programming at that age 😓. I never thought about it again until my second year in college (5 years later). I had a course called “Computing Fundamentals,” an introductory programming class using MATLAB, which I enjoyed.

However, the first time I learned a language with a purpose in mind was for the ‘Well Test" course in my petroleum engineering career, where I wanted to create a program that calculated the reservoir pressure, permeability and skin, given the well test information. In this way, I could avoid doing all of the calculations by hand, which could easily lead to errors and a low grade. That programming language was RPL (Reversed Polish Lisp), used in the HP calculators (recalling what my dad told me, thank you dad!). The program worked, and I managed to get an excellent grade 😁

After that great experience, I wanted to create more advanced stuff, such as an iPhone app. I came across Paul Hegarty’s iOS Development course in iTunes U around 2011, where I learned Objective-C (with a book from Stephen Kochan), OOP concepts, and the architectural paradigm of MVC. This fantastic experience opened my mind and made me understand that I did not know anything about programming or software development, which made me want to learn more.

By the time I got a job, my favorite programming language was MATLAB. I was able to quickly implement engineering calculations and try domain-related apps such as MRST, an open-source reservoir simulator written in MATLAB.

After a couple of years, I met my current favorite programming language, Python 🐍. The reason I delved into Python was again because of a need. I had to create an uncertainty analysis in reservoir simulation. The tool that enabled this analysis had a Python API that allowed more control in creating the samples.

That was six years ago, Python was easy to pick up (2 days) for the task I needed to complete, and it is extensible enough that it has kept me interested for all these years, and using it for almost every task in my day-to-day job.

Finally, the last programming language I tried a year ago was R when I started my Masters’s Degree in Analytics at Georgia Tech. Some of the courses are given in R, an excellent weapon to keep in your arsenal when doing analytics work.

During this journey, I learned many things besides programming languages, like Git, DevOps, Agile Software Development, and, more recently, Cloud Technologies. I believe these are logical things to know if your purpose is not only to code but to create software.

So I’m curious, for those of you who had written code, what was your journey?



Oscar Cortez
Author
Oscar Cortez
Reservoir Engineer with over a decade of experience in the O&G industry working at the intersection of software development, data science and domain knowledge to deliver innovative solutions.

Title