In this post, I'm going to briefly describe the difficult situation we had during our college thesis.
I was a member of a group of 4 for our Systems Analysis and Design class. In general, what we needed to do was to build three subsystems that were all part of one larger system. We had 4 months to finish this while also juggling our other classes. Out of the 4 of us, I was one of the only 2 people that did well in our other programming classes, but compared to the scale of the application we needed to build, our knowledge was still very limited.
Fast forward a few months later, on the day of our defense, we nervously prepared and waited for our turn. We went in and presented our application and, to put it bluntly, it was a horrible mess. At the end of the presentation the professors gave us one more chance. They had us wait outside the room while they tampered with the code, and if we could debug all of the errors, they would give us a passing grade. Luckily, we were able to successfully debug the application. We did of course celebrate, it was still a victory. But another few months later I started discovering some technologies that made me realize that we could have done so much better.
In my next post, I'll begin discussing these awesome technologies and the advantages they could have given us had we known about them earlier.