As of the post last week, I'd been exploring a number of database technologies and had set up a simple serverless chat application via AWS Lambda (thanks to the help of Frank Kane and Brian Tajuddin's udemy.com course on the subject). At the end of the post, I briefly mentioned wanting to explore more front-end stuff (such as the HTML, CSS, and JS mentioned in this post's header) so I could move toward having more agency in creating web apps that are completely my own.
Toward that end, I threw myself into Colt Steele's Web Developer Bootcamp (also on udemy.com) and was blown away by how much value I got out of it. Not only did I get a ton of practice with HTML, CSS, and JS, but also I got a bunch of exposure to even more backend tools, conventions, and languages like Node.js, Express, Mongoose, RESTful routing, and MongoDB. I still have a ton to learn in the web development space (and probably always will!), but feel much closer to being confident in spinning up my own deployable (and hopefully functional!) apps.
I think this is as good a time as any to lay down a tangible "pivot point" in my development as a software engineer. I love taking courses and learning new stuff in a structured environment, but I think it's equally (if not more) important to be starting up my own projects and getting them deployed. Stay tuned for another post about milestones, challenges/successes, and progress during the next week. Until then, I'll share some screenshots of progress on the YelpCamp app we built as a final/cumulative/ongoing project in Colt's web dev course.
Source code from my time in the course can be found at my GitHub location (https://github.com/bradleypmartin/webdevbootcamp). Different versions of the YelpCamp project code are in there; the photos below are from the YelpCampFinal build. There's still some more functionality that Colt and his TA's have been adding over time (and that I have yet to put in the app) like fuzzy search, password reset, interaction with Google Maps API, etc.... and when I include some of those extras, they'll be included in the Final build as well.
Figure 1. Landing page for the YelpCamp website. The CSS for this landing page was pretty cool to work through, as it involved the display of a transitioning slideshow of 5 photos (one of which is shown in the screengrab here).
Figure 2. Index page for the YelpCamp website. In the top-left corner of the photo, you may be able to pick out hints of authentication/authorization functionality, which was indeed a cool part of this course. The material we covered here was a good complement to the AWS Lambda project discussed in my last post (where we were using Cognito to take care of authentication).
Figure 3. The YelpCamp comments page was an excellent exercise not only in additional functionality of the website, but also in nested application of RESTful routing (for Create/Read/Update/Delete operations on comments for each campground).