Today is the Sunday following my 4th week at Tech Elevator’s coding bootcamp.
The 4th week is known to be one of the most challenging times at Tech Elevator. We finished our focus on object oriented programming, then worked on a ‘Mini Capstone’ which combined the skills we learned in the first four weeks. On Monday, Tuesday, and Wednesday we learned about exception handling, how to make our C# programs read and write to basic files, and topics like thread safety, buffering output, and garbage collection. On Thursday we were assigned the Mini Capstone project, which was to be completed in pairs by Monday.
Each week we’re partnered up with a different student to work on pair assignments. For the first few weeks, most of our time was spent on individual exercises, and the pair work only took a few hours.This week the pair work was much more demanding, taking as much or more time than the individual exercises. I assume this is because pair programming is a common practice, and nowadays your technical skills don’t mean much if you can’t communicate ideas effectively. I’ve found the important part of working in pairs is to understand how your partner will work most effectively, and cater your skills to his or her workflow. For example, my first partner didn’t seem to fully understand the subject matter, so I asked him to ‘drive’ the mouse and keyboard, instructing him on how to complete the exercises. My second partner was up to speed on the subject matter, so we took turns driving, and completed the exercises with ease. The Mini Capstone project this week was completed in pairs, and I’m really happy with how it turned out.
The project required us to write a command line program for a vending machine. The vending machine reads its stock information from a .csv file, allows the user to show the stocked items on the screen, deposit money, select items to purchase, and complete the total transaction, receiving change. The program records all transactions in a .txt file, and allows a hidden menu selection which creates a .csv sales report, showing how many of each item was sold, and the machine’s total sales.
After the project was assigned, most of the two-person teams were coding in minutes. My partner and I decided not to jump straight into coding. Instead, we discussed the project’s requirements for about an hour, drew up the classes in Unified Modeling Language, and delegated who would write each piece of the program. We each wrote half of the program on Thursday, and had a complete version by 2pm. We added finishing touches and submitted the project on Friday morning. We were the first team to finish the project by a long shot, which I credit to our detailed planning, and my highly skilled partner. Since my partner is one of the brightest programmers in our class, I found delegating to be especially important; his only downside is that he thinks so many steps ahead, it’s difficult to follow his thoughts. This is why it was important to sketch out the entire project, set clear benchmarks, and collaborate whenever necessary. I’m happy with the program we wrote, and especially proud of being the first group to finish.
Tomorrow we start the database portion of the bootcamp, learning how to use SQL Server. Thanks for reading! As always, if you have any questions, please email me at joeosterfeld@gmail.com