Written by Trishia Poplawska, a software developer who likes coding.
Many people think that coding is based purely on mathematics. As much as logical thinking is essential, you do not have to solve complicated calculus equations when you code! As long as you understand three basic commands – if, for, while – you can express all behaviors needed.
I had no coding experience before beginning my studies in Computer Science, which made me apprehensive of the challenge. The first few months of my studies were mostly about changing the way I thought. Learning how to analyze problems and express them in the smallest steps possible. Of great value to me was learning Object Oriented Programming in Java, which helped me visualize how I should organize all the elements of software.
In my first year of Computer Science, my professor gave an assignment to duplicate in software the function of the Enigma Machine. A machine used to encrypt and decrypt messages during the Second World War. This assignment made me realize the power of programming. To write a book, you need different elements such as pen, paper, and an author. These three things combine their individual capabilities to perform a higher-level operation, the authoring of a book. Programming similarly requires you to use various elements and blend their individual capabilities. Such as, using an understandable syntax such as that provided by Java, into something more sophisticated. Our imaginations limit what we can do with coding.
The most important part of programming is coming up with an idea for what you want to create. Once you have an idea, it’s simple to create the code for it. That is why we currently have such a boom in mobile applications. Someone came up with an idea and someone else translated it into lines of code. This is how my most interesting project came about.
As part of my dissertation, I decided to write a program that could analyze real-time video from a restaurant’s CCTV. Then, based on movement and average brightness as an indicator of the time of day, select the background music that will play. After years of working as a part-time waitress (and remembering all the playlists by heart!), it was a very interesting subject for me to explore. The program was based on three main elements:
- analyzing the CCTV video and producing some kind of measurement of movement and color,
- choosing the music and,
- finally, playing it.
Each of these steps was further broken down into smaller actions.
The project turned into a success. Achieving this after less than three years of Computer Science studies, whilst using a programming language I hadn’t known prior to starting the project, turned out to be relatively easy. The key to success was using my own curiosity and passion as the fuel for the project. Searching through good, old uncle Google then helped me come up with strategies on how to achieve something specific for each given step.
The beauty of coding is that there are thousands of ways to describe the same action and thousands of ways that you could arrange those little steps. It all depends on the author and here is where the art of programming starts. I remember shadowing one of my friends as he finished his coursework and I asked him for advice. He gave me a sneak peek into his work. I became simply blown away by the clarity and structure of his code. You could read it and immediately understand its function. I remember feeling a bit ashamed to show him what I produced. As it had three times as many lines and looked awful in comparison even though both programs produced exactly the same results. Like with our book from the earlier example – novels convey the same message but written in such different ways!
To sum up, programming can be extremely creative and one’s programming style can have a large effect on aesthetics and performance. Much like a book, programming occurs in many languages that have syntax rules just like our spoken languages. If you’re considering going into the creative arts, why not give coding and Computer Science a try?
About the Writer
Trishia Poplawska works as a software developer at Goldman Sachs in London. Although she is limited to using the bank’s specific coding tools and proprietary programming language, the solutions she comes up with for problems are boundless. She has a Bachelor of Science degree in Computer Science with Artificial Intelligence from the University of Southampton. She is from Bialystok, Poland and finished the International Baccalaureate (IB) program with higher level Physics and Mathematics. After successfully completing a summer internship in technology at Goldman Sachs, she received a job offer there in September, 2014. In her spare time she likes to cook and is very interested in creating new and exciting ways to spice up traditional dishes. She loves to explore new places and learn about other cultures.