John Bain started to explore programming in high school and chose to study computer science at Tennessee Tech. Unfortunately, Tennessee Tech was not a great fit for John and he made the decision to leave and pursue a career in development through another learning path. That’s when he discovered Nashville Software School (NSS). John was excited about the opportunity to learn development by coding. He explained why he chose to shift his education from college to an NSS bootcamp, “I knew that I would be taught how to code rigorously [at NSS] and knew that it was what I wanted to do.”
John’s favorite part about being in Web Development Cohort 40 was the amount of knowledge he was able to gain in six short months. “I really learned a lot, and proved to myself that I could do it, and that I was actually really good at it,” he shared.
John shared some great advice for students when they encounter an error, “Learning what error messages mean is so important. If you run into the same error over and over try to understand where it’s pointing you to. You might see that it gives you a line, but the error is coming from some data that’s trying to be passed to it, or is passed in an incorrect form. Walk yourself through the code, and be mindful of what type of data you’re handling.”
John’s front-end capstone project is a social media app for dogs! When the coronavirus hit many of our canine companions were no longer able to go on playdates or hang at the park. Sniffer allows them to stay connected with all their furry friends by sending messages. John’s intrigue for creating an app with user-to-user interactions inspired this project. There’s no better way to understand how the data worked in user-to-user interactions than to build an app with that functionality. “I used React for the front-end and JSON Server for the back-end,” he explains. “The main focus for that was showing users what other people had posted, if that is what the user was looking for. There were a lot of different [filters for] data and a whole lot of many-to-many relationships. I liked how complex the data became.”
For his back-end capstone project, John created an app to simplify the experience of finding a service online. CyBuy allows users to request a service, offer a service, and message each other for more information. The app focuses on the messaging so that service-providers and potential clients can build a relationship rather than have just a one-time transaction. “I wanted users to be able to message people seamlessly and I achieved that,” he exclaims. “Messages are tricky to manage in a database in that they are tied to a conversation and users are also tied to that conversation, so you have to figure out which users sent what messages and how you want to display it. You also have to make sure that the messages get updated when the user is on the site, so that users can see when they have new messages.” John built CyBuy with React and Django REST API.
While searching for his first job as a junior developer, John is adding features to CyBuy and building a website for a friend’s new business to showcase the items she is selling with search and filter functionality. John is interested in front-end and back-end development positions, but really enjoys the complexities of back-end development.
You can learn more about John on his podcast or on his website.
Check out all the recent grads at Web Development Cohort 40's class website and hear the graduates share their experience at NSS and capstone projects in their podcasts below.