My Software Engineering Bootcamp Journey (Series two)

My Software Engineering Bootcamp Journey (Series two)

Table of contents

No heading

No headings in the article.

Hey, tech peeps, welcome to my journey into the software engineering Bootcamp series, this is the second in the series of more to come.

During the third week of the training and while we are waiting to be assigned our tech stacks, we were working on the Harvard CS50 problem sets which have been challenging due to the shorter deadline to turn in our solutions to each problem set, we literally have less than 48hours in between to turn in or risk getting zero and you will still be made to turn it in anyways.

So far taking the Havard CS50 course has been challenging and a blessing for me as it has made to understand how stuff works underneath the hood and has challenged me to want to go in deeper on how stuff works as my learning continues.

In the first week, we started with the C programming language lecture of Havard CS50, as someone coming from a Javascript language background which is a high-level language, going through the basics of C, a low-level language that was developed in 1972 to build the Unix operating system, that is believed to be the bedrock of which most other programming languages was built on was a bit challenging at first, most compilers were also built on top of C, due to it being fast and strict.

In javascript, for instance, your program will still run if you forget to put a semi-colon at the end of your statement, "though not advisable to do", it sure does happen to all of us every now and then, but the C language will throw up an error, Yeah, it's that strict, which makes me conclude that it will be more advantageous to an aspiring software engineer/developer to learn the basics of C language before moving on to learn a high-level language like Javascript of python, etc. Learning a low-level language forces you to learn how to write good codes and stick with the industry conventional standard, just my humble opinion though.

Aside from learning about the C data structures, the other stuff that really got me hooked is learning about memory allocation and how it can lead to a stack overflow if not free when done before now I knew about stack overflow as a platform that was founded by Jeff Atwood and Joel Spolsky where programmers go to seek for help when facing a difficulty, as I use it every now and then, never knew this was how the name was coined, I am definitely going to the scratch the surface more on memory allocation to get a full understanding of how it works.

The second week came with its own problem sets in python, although I have some fundamental python knowledge before deciding to go the Javascript way, I found out that python was kind of built on top of C but as a higher-level language that can be almost read like English, where you don't need to bother yourself with too much of the strictness as in C, in python you don't need the annoying semi-colon to run your code. In C you have the "printf" to compute your result while python uses the "print", meaning if you have knowledge in the C language transiting to a higher language like python should not be more of a hassle, and this I realized as I glide through the python pset as most of it was just using the same logic I used in C, only just to change some of its syntaxes, for instance in C, if statement is written inside a curly brace, but python does not require the curly braces, just put a colon at the end and you are good to go.

In week three we dived into databases using SQL, this was also fun for me as I learned how to query the database to both manipulate and store user information, the Fiftyville problem set was kind of challenging as it did require a lot of logic to solve the case.

After working on the database came the front-end with HTML, CSS, and Javascript, this was quite easy for me as I did have formal knowledge of the above-listed languages used for building the front-end of most web applications.

Then came Flask, one of the python frameworks which is considered a lightweight web framework server used for back-end development, this was the first time for me working with the back-end, I did learn a lot from this on how to connect the front-end to the back-end which is like having your own local computer that comes with localhost.

Personally completing the Havard CS50 course puts me on my toe and gave me a lot of insight on how to take up any programming language along the way be it a low-level or high-level language and used it to provide solutions to problems.

Lest I forget, we are also doing our daily POD stand-up where each POD is assigned a POD leader which is like your SCRUM master, and in each stand-up, we are expected to give an account of the task we did the previous day, and the task we intend to complete for the day and if there is any blocker on our assigned task, for me doing this daily stand-up makes me accountable and I am already feeling like I am in a formal work environment.

So, tech peeps that are all for this series, until my next post keep punching those keyboards and debugging.