160704 – 160717 — Total classroom hours 20(ish)
I missed another week, but it’s 19 weeks in and the blog is pretty up to date, so I’m not sweating it. Still pushing along at a steady pace, with two projects in the works simultaneously. Talk about time management… Not only am I trying to make noticeable progress between mentor meetings (twice a week now), but I’m also trying to make headway with the non-school project that I’ve been invited into.
Besides not having enough time in the day, things are going pretty well. The Blocipedia project is complete! It was by no means a cakewalk, but I felt pretty good about the code I was producing. The one major hangup I encountered was with a collaborator model. Even as I write this I’m still not sure why I wasn’t able to wrap my head around it on my own. There was just something about a model that existed for the sole purpose of connecting other models that just threw me. I will say that I was definitely over complicating the process, and my mentor did a great job of correcting that with me.
But it’s done! Which means that my two curriculum-required projects have been completed! And, with ~10 weeks left in this part of the program, I’ve still got some time to dig even deeper. Let me say that when I refer to my projects as ‘completed’ I mean that all the data and views function properly. As far as the front-end design goes, its, um… rough. But, my focus is the backend at this point, and I do have time to show the front end some love, when the timing is appropriate. Also, as of last weekend, both projects are up on Heroku, functioning live, with legitimate user-emailing functionality.
I wasn’t necessarily looking forward to the Heroku push or the email changeover, but it actually went pretty smooth. I used Sendgrid to handle the emailing. After some trial and error (which is a pretty tedious process when working locally, committing, merging, and pushing master to Heroku) I found that setting up a Sendgrid Add-on was the most efficient way to go. I used this Sendgrid article to help with the process. I also used this blog post to help fill in the gaps a bit. The one caveat is that the ‘sent from’ email is a random string, so it doesn’t look super professional if trying to show off a functioning site. I’m confident I could change that when I find the time to do so (it’s pretty low on the list at the moment).
So that was school, now the other half of my workload, the collab project. To be honest I find myself thinking about this project most of the time. I don’t know if its because I’m basically done with the school work and the fine tuning minutia of it doesn’t seem as appealing as a whole new project, or if I’m just more excited to work on a team project. I will say that creating code that I know someone is going to go over with a fine tooth comb makes me code better. I’m sure I’ve mentioned this before, but it’s also forcing me to not only write tests, but write solid tests. Some of the spec code is borrowed from the coursework Blocitoff project, but tests are tests, and I don’t see any reason to try and reinvent the wheel.
I’m learning a lot about the industry standards for programmers. I’m almost certain that there is not one ‘holy grail’ of programming standards. It makes sense that there are slight differences in practices based on regions or other factors. I’ve already come across a few things with this collab project in terms of standards that are different than what I’ve learned with Bloc. That’s not to say that one is right and the other wrong, but I appreciate that I’m now aware of both ways and because of that I am a better programmer overall.