
Hello (world)! This semester flew by insanely quickly and it has been quite a journey as I reflect on the past few months. This blog post will be my final entry for this course and I come bearing tea.
What did you like the least about the class?
There were many aspects of this course that could’ve gone better. Firstly, I personally had a fairly awful experience for the first exam we took (technical difficulties with my laptops and me being sick for that entire week) and the sudden news imposed upon us mere minutes before taking the exam that the format had changed, in my opinion, was very unfair. Overall, the content taught in class had virtually no correlation with the actual heart of the course (the group project) and that perpetually frustrated and annoyed me through the entire semester. Learning about intricate Python concepts for the entire first half of the course ultimately bore no relevance to the rest of the course (the project) since most of the Python used for the project I didn’t learn through the class lectures and thus I felt not much pressure to truly understand many topics taught in the class until we had to cram for the exam. Then, after finishing Python, we started learning about some SQL topics that I actually enjoyed but then the lectures quickly pivoted to refactoring, something I felt was wholly unnecessary and a waste of time. Ultimately, I believe that the lecture schedule itself can be restructured into a way that could be immensely more effective for our education.
What did you like the most about the class?
The overall group project experience turned out to be an overall positive and enriching journey. Although there were plenty of development hiccups and bugs I burned the midnight oil to work on and spent many harrowing hours dealing with, I believe that those moments are when we are growing the most as programmers. As I reflect back, I was very fortunate to work with group members where we all got along and worked together well. Furthermore, learning all of the new technologies was the part of the course I was most excited about coming in, and through the project, I managed to gain a solid grasp on understanding several new tools I definitely would not have experienced in other courses.
What’s the most significant thing you learned?
I greatly value the full-stack development experience I had through working on this project. Connecting backend work and frontend work as well as our database and hosting technologies to churn out a fully dynamic website was extremely fulfilling to see. It’s cool to go to the URL and think to yourself, “I did that!”. (Obviously it was a group effort and I think we ultimately accomplished a lot together and we did it pretty well!)
How many hours a week did you spend coding/debugging/testing for this class?
During hustle weeks (the week before and the week of the project deadlines), I would spend at least 5 hours a day working on the project. Ultimately, that would make it around at least 30+ hours a week. During more relaxed weeks, I would probably spend up to one hour a day working on the project and that would make it around 7 hours a week.
How many hours a week did you spend reading/studying for this class?
I spent around 1 hour a week reading/studying for this course. However most of my energy directed towards this course was directed towards the project we had in this course so I ultimately didn’t read very much.
How many lines of code do you think you wrote?
I probably wrote around 1k+ lines of code for the project.
What required tool did you not know and now find very useful?
Overall, learning front-end technologies was very useful. JavaScript, React, and some of their respective libraries are now all things I am finally familiar with. Before this course, I only did back-end work and finally being forced to learn front-end (through the form of this course) pulled through! I learned that I truly enjoy full-stack development and now that I have experience in front-end languages, I can hopefully build more full-stack applications on my own too.
What’s the most useful Web dev tool that your group used that was not required?
DB Browser for SQLite was a super useful tool for when we were working on formatting and using our database and the data. It showed our raw data that we got through the APIs we used and allowed us to format it to how we needed it to be in a very user-friendly way. I am immensely grateful for it!
How did you feel about the cold calling, in the end?
There were many flaws in the cold calling system. For instance, there was one class where more than 5 student names were called consecutively and none were present. Many subsequent students who were called had not attended the previous lecture and thus were also unable to answer questions imposed on them. This first led to amusement but quickly devolved into frustration because essentially, class time was wasted and nothing substantial was accomplished. Also, because we knew that there was a rotation for cold-calling so after I was called on within a rotation, I would sometimes lose interest in paying attention to lectures after that until Professor Downing informed us that a rotation had finished and the list had restarted. Ultimately, I personally think cold calling wasn’t a super necessary addition to the class but I completely understand the good-natured intent to keep the class as engaged as possible and it worked for me for a good portion of the time.
If you could change one thing about the course, what would it be?
I would make the content taught in the course more relevant to actual software engineering topics rather than super nitty-gritty Python topics that we could have learned in a 2 minute Stack Overflow search. Learning more about SQL or front-end languages (since most courses don’t really cover front-end in depth) would have been more useful and relevant to a software engineering course.
It was quite a semester. We finally made it to whereWewannabe. That’s all, folks!