Skip to main content

A programming marathon

Every marathon starts with a single step!

The beginning

I've been learning to program when I entered University, where we learned the basics: loops, variables, arrays, if/else, literally nothing but the basics. My first programming language was MatLab, which is commonly used in the engineering field.


But a sad thing is that the lessons didn't start in a meaningful way... I had never seen a line of code before and, to see such a nonsense thing at first view was absolutely frustrating. I had no idea why I was typing what I was typing and what that code would do. Funny thing: I remember always confusing the letter i with the number 1, which always led me intro trouble and not being able to make my script run.

Even though it was a hard beginning, I definitely saw a lot of possibilities and usages to that new skill that I've been shown. Programming is absolutely a powerful tool to create software, automate tasks and calculations.

The road

During the following years ate University, I have enrolled myself in an extra course, called Emphasis on Computational Fluid Mechanics, where I had great teachers and a wider vision about optimization and programming good practices. I was in touch with computer science students and teachers and that just shown me that I really enjoyed to program. We used to implement math algorithms and calculations, dealing with equations, geometry and, at the end, physical problems, like floating, pipes, a single drop, etc.

água, Drop, Inicial png transparente grátis

The possibility to keep programming and develop my skills is what I really thank this course, because without it, I would probably have paused to program.

It also gave me confidence to always try to be responsible for programming during the works that we had to do at University.

Facing Reality

I felt that I was getting good, but still, I knew only MatLab and I didn't realize back then,but now I can say that I didn't really knew how to program (And I still don't know if I really know what it takes to say that one knows how to program). I knew MatLab, but I had no theory, my foundation was basically the math and algorithms that I have implemented.

I"ve also heard about different languages and some of my friends already knew other languages. The first time a colleague has said to me that he knew how to program, I remember thinking: "But we study engineering, not computer science!"... How wrong could I be? The fact is that nowadays it is much more required to have some knowledge in programming and, thanks God, I have found joy in programming.

How to have Excel convert formula to value using VBAI realized then that I had to keep searching and learning (and I still do, a lot.). I started with a tool that was more familiar to me: Excel. Once I have been using Excel for a while, I was quite comfortable with it and I could also use VBA (Visual Basic Applications) to automate things via macros and to perform calculations.

I couldn't have foreseen that, but VBA is a nice tool because pretty much every office used Microsoft Office, which makes a lot of opportunities arise. I is transitioning nowadays to web application services, developed by Google or for Microsoft.

I started online courses in Python as well, this time not just googling and trying pretty much all by myself, but following a established curriculum created by the University of São Paulo (Link) . The lectures are very didactic and it uses a very simple IDE to help the new student.

Working opportunities

Just to recap, I knew at that time three languages:
  • MatLab
  • VBA
  • Python


But what is much more important than that is the fact that I had, and still have, this urge to study computer science and programming, despite this was not my course.

I had the opportunity to go to Bremen - Germany to work at a company, where I could work with VBA to build automation tools and a database in Access.

Músicos De Bremen Fotos - Baixe imagens grátis - Pixabay


More than that, I had a lot of time to study and so I did. I learned about how the Internet worked, the basics of network communication, HTTP, and also about the codes that we use in Internet (HTML, CSS and JavaScript). I followed Kahn Academy's course about Computer Science.

I was absolutely mesmerized about what VBA could do:

  • Search on Internet
  • Interact with the browser
  • Download files


And look, I wasn't using any other language than the good and old VBA... I remember thinking that VBA was great! Nowadays I still enjoy programming in VBA, but I don't think it is that great anymore... haha

I think this is already enough just to start.

Leave a comment sharing your history as well, if you will.

Comments

Popular posts from this blog

Introduction Hi! My name is Rafael and you landed on my programming blog. Welcome! 😃 The goal of this blog is to share my thoughts and experience during my developments and programming tasks. The focus is to show my difficulties and what where the solutions that I have found. I will try to have some posts in English, since I can reach other communities using it, and others in Portuguese, since it is my mother tongue and I also want to be able to share this content with people that still struggle with other languages. I am following online programs that teach programming and have some tasks where you are expected to program and develop a software solution and I will list them in a future post. Besides that, I am focusing on learning the key concepts about programming, independently from the language or programming paradigm that I am currently using. I believe that in order to achieve a goal, one must be committed and, by sharing my experience, it will lead me to become each ...

Curso de Orientação a Objetos com Java

Estudos sobre POO Introdução A Programação Orientada a Objetos ( POO ) é um paradigma de programação centrado no conceito de objetos  que contém dados de estado ( atritbutos ) e executam ações ( métodos ). Esse paradigma é de grande importância uma vez que permite associar o código com o modelo de negócios e o escopo que o código implementa, aproximando e modelando o comportamento de entidades  reais  ou  abstratas . Por exemplo: um cachorro . Pode-se descrevê-lo por meio de seus atributos (adjetivos), como peso, altura, raça, cor, etc. Com relação aos métodos de um cachorro (verbos), pode-se ter: latir, rosnar, correr, andar, comer, etc. Essas características são utilizadas para se criar um modelo de cachorro e poder instanciar (criar) objetos dessa classe. Atualmente tenho estudado esse paradigma por meio da linguagem Java , que é uma das principais linguagens que utilizam a POO. Eu utilizo a IDE IntelliJ  tanto para programar quanto para as i...