Week 4 & 5 Combo!

Man, time is sure flying by.  I don’t know if that’s a good thing or bad thing.  I can still remember how slow week 1 went.  Coding was such a new experience, everyday I was building a foundation on a blank slate, and each day felt long and drawn out.  Fast forward to the present and it’s already day 1 of week 6!  Every day I’m still learning new things but the concepts aren’t as foreign as they once were.  A foundation has been laid.  I won’t call it solid but it’s there.  I’m not sure why times going by as fast as it is now as opposed to how slow it was going initially.  Now that I think about it, it kind of makes me nervous that times going by as fast as it is.  I’m nearly halfway through the program and there’s still so much I want to learn and practice but the pace of the boot camp is unrelenting.

We’re beginning to transition to back end development.  We briefly worked with Google’s Firebase platform.  Using it as a database I created a train scheduler for a homework assignment.

Train Scheduler

The user inputs a train name, destination, the first time it runs, and the frequency.  The information gets stored in Firebase and we then use the information to calculate an arrival time and then display everything to the page.  Seems pretty straight forward but it was pretty cool for the first time to have user input saved and displayed.

I’m looking forward to learning more about back end development.  I think right now if I had to pick between the two I’d probably lean more towards back end.  Although creating a visually stunning front end of a website is fun and rewarding, I think I’ll find the back end workings to be more interesting and challenging.  That’s just where I’m at now, but who knows what I’ll be thinking by the end of week 12.

Week 3

First off, I’d like to apologize to all my faithful readers.  It is now Tuesday evening and I still haven’t updated you guys on how Week 3 went.  That’s because this past weekend I actually had a social life!  Yup, went for the full trifecta and went out on Friday, Saturday, AND Sunday.  Yes, yes shame on me.  All those good hours I could’ve spent coding wasted on family and friends.  In my defense I coded before going out each night and my homework wasn’t due until Wednesday.  So I don’t feel terribly guilty about not dedicating my entire weekend to coding.

Back to week 3.  Everything is going pretty well.  I felt better at the end of week 3 than I did at the end of week 2.  I feel like I have a decent grasp on the JavaScript and jQuery material we’ve covered so far.  Check out this Game of Thrones trivia I made using JS and jQuery.

Game of Trivia

I had originally written all the questions out in the HTML.  After looking at the giant wall of text in my HTML file I figured there was probably a better way of doing this with JavaScript.  And sure enough there was.  Placed the questions and choices in an object.  Then created a loop and used jQuery to write it to the HTML.

That’s the beauty of JavaScript.  If you can think of a solution to your problems there’s usually a way to do it in JS.  A classmate had an issue “grading” her trivia.  As part of the instructions for the homework in addition to the right and wrong answers we also had to take account of the unanswered questions as well.  Her problem was accounting for the unanswered questions.  This was also the hardest part I had with the homework.  It took me a while to figure out the solution for my homework, but with the guidance of my TAs and instructor I was able to figure it out.  Because of the way I had written my code the solution to my problems ended up being pretty complicated.  So naturally when I was trying to help my classmate I was trying to implement the things that I learned from my own problem to hers.  Our code ended up being drastically different and I wasn’t able to implement a solution that was similar to what I had done.  Later that day I checked in with my classmate to see if she was able to get it working.  Turns out she had found a really simple solution to her problem.   Had I not been so focused on the way I solved my own problem and took a step back to look at the big picture I may have been able to see the simple solution that was right there.  And I guess that’s the beauty of coding.  Even though we had the same exact problem, the solutions couldn’t have been more different.

The lesson there is to always be looking at the big picture.  What exactly is it that you’re trying to do?  What are the things that you’re currently working with?  Is this enough to do what you’re trying to accomplish?  If not, what else do you need?  I’m still really enjoying this learning process.  The more I learn and understand the better I get.  And getting better is fun.  I’ve never been in an educational setting that was so instantaneously gratifying.  I can only hope the remainder of the boot camp goes the same.


Week 2: JavaScript and jQuery

Well the boot camp is definitely starting to get harder.  Instead of the end of day burnouts I had during week one, I actually found myself getting burnt out during the class on some of the days.  I guess with HTML and CSS most of the concepts have a visual aspect to them so it isn’t as hard to conceptually visualize how things should work.  However with JavaScript and jQuery since a lot of the concepts are more dynamic and kind of take place behind the scenes it requires a bit more brainpower to digest.

One of the most difficult aspects of learning JavaScript is that there’s just so much to learn.  The best way I can describe it is that in class we’re taught how to put sentences together, but we don’t know enough to make a paragraph.  And in most cases we need to be making paragraphs, not sentences.  When I was working with HTML and CSS if I had parts of the paragraph missing I could usually describe what I needed to search for to fill in the blanks.  With JavaScript it’s a lot harder since there’s so many different ways of going about doing the same thing.  Even if you’re able to find a solution to your problem it might not even apply to the method you’ve used.

The homework assignments have also started to increase in difficulty.  In week one the homework assignments were more time consuming than they were hard.  Planning, AKA pseudocoding, is very important.  I’ll admit, planning has never really been my style.  I’m more of a throw it against the wall and see if it sticks type of guy.  But it didn’t take me long to learn that if I wanted to work efficiently I would need to take the time to pseudocode and figure out step by step what I needed to do.

Even after all the planning in the world, I’m still my own worst enemy.  Debugging code as a newbie is definitely a frustrating experience.  Does my code actually work?  Did I write it correctly?  Are there any typos?   How about a missing semicolon?  Do my conditions have the right number of equal signs?  Are you sure there aren’t any typos?  Are all my parentheses and curly brackets closing the right things?  Is everything in the right scope?  Lexical !@#$ing scope…  If you have no idea what lexical scope is I wont burden you with an explanation.  Just imagine Schrödinger’s cat meets Inception.

I think my head is still above water at this point, but I do feel myself sinking a bit.  While most people will spend this MDW at the beach or BBQing, I’ll be spending a majority of it trying to stay on top of all the material we’ve covered, maybe one BBQ…