Friday, July 31, 2015

Day 10: Yellow Belt Test and jQuery UI

I got the problem fixed from last Friday and was ready to take the Yellow Belt test. The group decided to meet in Sunnyvale to study since it was cheaper than paying for parking in downtown San Jose. For the test I had to design a representation of a randomly generated website from scratch. It was kind of like the assignments I'd done the first week. I had hoped to use Bootstrap to facilitate the setup but in the morning I got an email from the instructor telling me not to use it. After using Bootstrap for a week I had a hard time going back to coding from scratch. It was very difficult to keep the columns in each row align and the texts were always too big. It took me an hour to figure out the correct display setting for the columns before one of my classmates wrote a line that fixed it. I finished in under 3 hours. I'll find out my results on Monday. With any luck that'll be the last time I create a webpage without any frameworks.

When that was over I jumped back the jQuery chapter and the topic of the day, jQuery UI. jQuery UI is a buildup from jQuery that provides GUI (graphic user interface) features. With it users can have a more interactive experience in websites such as moving objects around, sorting, and monitoring progression through a progress bar. Setting that up was really easy after going through the jQuery material and I felt good about the assignments. The API is a little harder to read than jQuery's but it'll become clearer as I move to more complicated assignments.

This is my last weekend before the onsite lecture begins. I have to spend tomorrow finishing up the last jQuery UI assignments before I cover the last chapters of wireframes. I'm worried that I won't have enough time at the end. I haven't skipped over any parts so far and most of my work has been done wholeheartedly. I would hate to make compromises this close to the start date.

Thursday, July 30, 2015

Day 9: Advanced jQuery

After last night's post I stayed up for another hour and finished an additional two assignments. It looked hard when I saw my classmates doing it earlier in the day and the instructions warned that it could take 2-4 hours each. So imagine my surprise when I brushed through them in an hour. I went to sleep feeling optimistic about the ease in which I'm picking up jQuery.

The morning was spent on the last two jQuery assignments. I went to the library in downtown San Jose again to study with my classmates. Yesterday there were four other classmates in attendance but today there was only one. The energy wasn't as high as it had been yesterday.

The first assignment was to download a webpage, locate the javascript errors and fix them. I've had problems like these in college and usually the errors are obvious. I spent an hour looking through what appeared to be a normal webpage that oddly wouldn't work. The instructors were much more clever than my professors at hiding the mistakes. I thought I didn't need any help and I did feel a little embarrassed to look over at the answer sheet for a hint or two. The second assignment was a play off the assignments from last night. For this one we had to make an object change images when you hover the mouse over it and change it back to its original image when you hover out. Going off of last night I extracted the image's attribute and changed the image source when the mouse hovered in. When the mouse hovered out I reinserted the original image using a temporary variable placed before the hover method that saved the original image. I hope my explanation is not too complicated.

When it was over I took a step back and admired what I had done. Years ago I was doing calculus and every time I finished a problem I couldn't help but pause and admired the way I had written out and solved a problem. It was like poetry the way all those numbers and variables moved around so sensibly.

A webpage is divided into three part: HTML, CSS, and Javascript. HTML gives it the outline, CSS makes it pretty, and Javascript makes it move. Individually each part wouldn't make sense but when coordinated perfectly the feeling is as rewarding as solving a calculus problem. Just take a look at the assignment's code and you'll see what I feel.

HTML: 

CSS: 

Javascript:

Final Result:


It was never this simple in college. All those projects and all those lines of code that just drove me crazy to understand. The CSS page would be filled with a hundred lines just to make an object sit still. There'd be multiple scripts placed before and after the body, each one for a different task. I thank Bootstrap and jQuery for making things so much easier.

After lunch I begun the advanced jQuery chapter. Like most of yesterday I spent the afternoon understanding the material before I began the workload. And just like yesterday I started the assignments later in the day and still have a few more to cover by tomorrow. I finally figured out what a callback is; it's like a module in Ruby. It helps reduce redundancy in the code, promoting the DRY (Don't Repeat Yourself) principle.

The final assignment I completed before I began this entry was an optional assignment with instructions to create a form that would accept inputs, display them, and make them interactive. I am sad to say that while I did complete it I didn't make it perfect: the forms wouldn't clear up after an entry was inserted, meaning that the same entry could be made multiple times, and the interactivity wouldn't stop when I wanted it to. In the end I didn't go all the way with it. There was no celebration for this victory. 

Tomorrow is the Yellow Belt Test. I think I got the login issue squared away and so I'm set for it. It's just going to be constructing a web page using HTML and CSS. I'm going to email the instructor tonight to see if I could use Bootstrap. Bootstrap wasn't covered last week but it still counts as HTML and CSS. So it's worth asking. 

Wednesday, July 29, 2015

Day 8: jQuery

I'm wired. Part of that is because of the Red Bull and another part is because of the very interactive day I've had, both with jQuery and with my classmates.

Yesterday we decided to meet today in a library at downtown San Jose to work on the jQuery assignments. This is the major workload for the week. I spent most of the day working on the first assignment which was to create samples of eighteen jQuery methods in action. jQuery is easy in theory but I did make it hard on myself because I didn't read carefully through the API that specified that some methods are obsolete and I wondered for over an hour or two about why some features wouldn't work. It also didn't dawn on me to run debugs as frequently as possible since if there is one error chances are that it will affect the entire code, making even mutually exclusive actions unable to run for reasons that are beyond my understanding. In the last hour of the library I was about ready to give up on the assignment when in the last five minutes I discovered all of these procedures that I have to follow and like a deus ex-machina coming in to save a hopeless situation I completed the assignment and am now dedicating the remainder of the night to the second assignment.

What I liked most about the day was that I got to do my work with three other classmates who I got to meet today. I like meeting new people and spending time with them. Many of them have similar stories, which made it easier to communicate with them. They all want to be web developers and wanted to learn more than the theories they were taught at school. What surprised me the most was their sheer dedication to the coding bootcamp. In hindsight studying engineering at school was a very easy time because the work only required a few hours each day and then everyone was off to have fun. Coding Dojo demands much more than a few hours of studying each day and everyone there is setting aside their entire lives to study all day for the next three months, and maybe more. And we haven't even started the onsite stuff.

We spent most of the day coding, took breaks to get lunch and agreed to meet there again tomorrow. Besides their dedication, everyone there was very willing to help each other out. I was even motivated to explain concepts to anyone who asked for help, even though I know that I'm not much of a talker and have a hard time giving instructions.

The second assignment is to design a webpage with eight images that have disappear when clicked. Then I hit a button that restores all the images. Using Bootstrap (I am seriously in love with Bootstrap) I rapidly coded up the HTML and CSS and am ready to insert the action.


Oh and if you can't tell that's Green Arrow. I figure that if I'm going to do an assignment I might as well make it a little entertaining.

I'm still wired and shouldn't loose an opportunity like this to catch up and be in a better position for tomorrow.

Tuesday, July 28, 2015

Day 7: Git and jQuery

The majority of the day was spent working on git. After my entry last night I decided to attempt commit reverse and reset one last time before going to sleep. I actually understood it and finished off another couple of sections before heading off to sleep. So today's sections to cover were branches, merge, Github connection, and collaboration. I spent most of the afternoon on that. One of the assignments involved using Bootstrap to set up a webpage and I can't begin to express again how much of a relief Bootstrap is in coding up CSS. Yesterday my classmate expressed an interest in trying to do a sample collaboration project just to see what to expect when bigger projects begin.  I studied at home today and after I completed the chapter I contacted him and we spent an hour on google hangout trying to going back on forth on a project loaded up on Github.

So that finished with a relief. I've been using git for over a year and I underestimated the difficulty of this chapter. I'm glad to say that I gotten down the sequence for initializing, staging, and committing changes to the local and later on, Github repository. It would be kinda ironic if when the onsite lectures begin everyone uses the Github app, making everything I learned for terminal use irrelevant. After everything I've done I'm hoping for the console to be used.

So then after git comes jQuery, a javascript library. HTML and CSS are responsible for create static webpages but javascript is responsible for making it interactive. There are hundred of usages for javascript and it would take forever to learn the code for each of them, making jQuery highly prized. With just a few simple lines of code you can get a webpage to do what would take hundred of lines of code to perform. I've had some exposure to the library months ago during my preparation and so the first couple of sections were a quick brush. Back in April I spent the entire month teaching myself Unity, a popular game engine, which was how I learned to use methods frequently. Then jQuery came up and it felt familiar. Although I'm only using a dozen features the patterns are mostly the same and I could pull up other features from the library to perform additional tasks.

I'm about a third of the way done with the chapter and I'm done for the day. I planned on finishing jQuery today and there's still plenty of time to do more but I can't concentrate any more for the day. I studied at home again and it took all my energy to remained focused leaving me mentally exhausted. So rest and tomorrow get out of the house and away from the continual distractions.

Monday, July 27, 2015

Day 6: Bootstrap, LESS, and Git

I'm on the second of the fourteen weeks at the bootcamp and I'm feeling optimistic, especially since I had a breakthrough this weekend with my first front-end framework, Bootstrap. The first time I ever heard of Twitter Bootstrap, Bootstrap for short, was during my last year in college. Up until then I had coded all my webpages from scratch and assumed that that was how I was expected to code my all my projects for my career. Then Bootstrap sprung up as a framework with pre-built CSS features that makes creating websites much easier. I tried to teach myself Bootstrap back then but it was really just so confusing. I told myself that I'd come back to it another time. I bought a tutorial book earlier this year and gave it another try and while the basics were easy to grasp I had a difficult time understanding how it can be applied to bigger projects.

Some frequent questions I had were:

  • What if I wanted to make a change to the font-size? 
  • What if I wanted to have more than twelve columns of boxes in a rows?
  • How can I specify background settings?

In hindsight the answer to all these questions seemed so obvious. Last week I began to grasp the bigger picture when my classmates and I briefly covered the importance of resets. As I mentioned on day 2 our group covered resets, which solved the problem of browser compatibility. To elaborate, every browser has their own sets of rules for font-size, typography, margins, etc. This makes it difficult to sites to run identically on all those different browsers. Resets chance the defaults by implementing their own rules, henceforth compatibility. They operate usually as reset.css and if you place your styles.css stylesheet after that you can make your own modifications while keeping reset.css as the default. 

One of my classmates took the time to explain that to me and at that moment something clicked in the part of my brain that dealt with the Bootstrap conundrum and I asked if Bootstrap can be considered a reset. He said yes. Bootstrap's css file is default and I can make modifications so long as I place my CSS file after the Bootstrap. I kept that in mind for the weekend that followed. 

On Saturday I began the Bootstrap section. Bootstrap covered just one section of the CSS chapter but that was enough to understand it beyond the simple tutorials. Next thing I knew I was coding up a webpage with ease. If I needed to make a change to the margin or increase a component's height I'd just make the modifications on my styles.css sheet that followed Bootstrap's. I can't believe I've been making coding so hard for myself all these years. This felt like a milestone accomplishment. The next day I wanted to do more and so I began to lay down the foundations for a personal website that I've been wanting to set up. I laid it out in half-an-hour, loaded it onto my Github account and intend on making it prettier before I even consider publishing it. 

Today and I met up with a classmate again and we covered the last section of the CSS chapter, LESS. I've known about LESS for as long as I've known of Bootstrap but I never knew how to implement it. Prior to the bootcamp I was instructed to set up MAMP, a server application, on my computer. I did it but didn't understand why. Then today the lecture instructed me to activate it while having the link to the LESS site on my webpage's header. It translated LESS into my webpage, making it easier to organize the contents of my CSS file. 

We spent most of the CSS chapter learning how to write CSS code from scratch and ending it knowing that it can be done much simpler using Bootstrap and LESS. I guess it's all part of the preparation. This kind of reminds me of an episode of Arrow where Oliver learned how to use the bow. Since he was a novice Shado made him slap water in a bowl for days. Oliver eventually got frustrated and demanded to know why he was doing this and she told him its purpose was to focus his strength to handle a bow correctly. This might have been a play off The Karate Kid but the message was the same: repetition is key. 

After lunch came the new topic of Git and the Terminal. I've been using terminals for four years and so I brushed through half that chapter is no time. Then came the topic of git. Git is a repository for recording our data and reverting back to a certain step if needed. I've hard a hard time using it on the terminal and made it easier on myself by using the Github app on my computer. Still, I've known that a day would come when I'd have to face using git on the terminal. Even the developers at my old job used the terminal even though many of them had macs and could have downloaded the Github app to avoid the complicated mess of seeing everything through the terminal.

The process of using git is simple: make a change to the code, then commit to the repository. Making a commit was actually very simple. Now reversing it, that was a completely different story. For some reason git would not reverse a commit. Even my classmate couldn't figure out what went wrong. We restarted that assignment a couple of times but it didn't fix anything. The day eventually came to an end and I had to leave without finishing the rest of the day's assignment.

Tomorrow we're beginning jQuery and I'm behind with git. I'm going to have to try to stay up tonight to try and get this fixed. He's hoping that we can do a collaboration before we can move onto jQuery. If I can fix this one problem tonight I might be able to work on the collaboration in the morning and have time for jQuery. Maybe.

Well, at least I take comfort knowing that the front-end components have been greatly simplified. These lessons build up and the foundation for tackling the tougher problems has been strengthened. 

Friday, July 24, 2015

Day 5: Didn't Take The Test

After breakfast I sat down in my room, setting aside the next 4.5 hours to complete my first test. In school we'd get evaluated through letter grades each term that culminated in overall GPA's but in Coding Dojo it is replaced with a "belt system". I believe there are four, maybe five, belts that students can achieve based on tests given every Friday. If a student fails they can retake the test for a certain number of times and since there are only four or five tests given in the span of fourteen weeks there are plenty of opportunities for retakes. The first test is for the Yellow Belt and it measures a student's knowledge of HTML and CSS, the very basics of web development.

Unfortunately when I tried to log into the exam page it didn't recognize me. I emailed the instructor and while I waited I decided to continue the assignment I started last night.

 I got to say that even though this assignment was the same as the previous one the parameters complicated the setup. I was already used to using divs frequently, even in sections that used only one set of tags, that I had a hard time letting go of that. I also had a hard time identifying the type of font that was used. All my life the default font style I'd type with had been Times New Roman, always figuring that all the other styles were useless. Two years ago I took a web design course where we spent a week covering typography and the historical evolution of font styles. There are families of fonts that follow certain patterns and depending on the length, width, and formatting of a piece of the text it is labeled one style or another. It was all confusing and needless to say I failed that quiz. I didn't think too much of that until now as I was trying to identify the correct font that the same webpage was using and how I could code it into my webpage. In the end I winged it and choose something that looked identical to the same site's font and stuck to it.

Inspect element played a huge role in identifying errors and finding the best way to marginalize and pad my tags so they would fit where they should fit. It's not to say that everything was perfect. Some alignment errors couldn't be explained and with no classmates around today to help me out I was forced to let some mistakes go. But compared to the last few days by the time I finished this and ran it through the validator I had less errors than all the other ones.

My goal was to make this:

And in the end I got this: 

The instructor reached back to me and manually let me into the site but by the time he did that it was late afternoon and I was spent from focusing on this assignment and so I decided to take it next week. Overall today has been my least productive day of the week. It was made worse by studying at home. I realized years ago that studying at home was the worst means of studying since distractions are everywhere and tempting. I'm always reminding myself to avoid studying at home at all cost but some days like today I arrogantly believe I can muster up enough discipline to sit at home and take care of my tasks without distractions. I could have finished this assignment hours earlier and still had time and energy to take the test if I didn't coop myself in here today. A trip to the library would have been much better. 

That's what I'm going to do tomorrow. Now that the CSS lessons are complete I should move on to the optional assignments for the week. 

Thursday, July 23, 2015

Day 4: Inspect Element

So same setup as yesterday; I drove over to the home of one of my classmates and spent the entire day coding another webpage to learn the importance of CSS. Since yesterday whenever I saw him code he'd always have the "inspect element" feature opened up. The lectures describe this feature as being a very important part of debugging a webpage but I had a hard time wrapping my head around that.

The first time I heard about inspect elements was earlier in the year when I saw online someone using it to temporarily change the contents of a tag which were limited only to the computer and erased after refreshing the page. Since then I used it humorously by taking web content like this:


And converting the text into something like this:


To enjoy for the moment of laughter it bring before I hit refresh and everything goes back to normal. Oh and in case you couldn't tell I'm a fan of Battlestar Galactica. 

If there was another reason why inspect elements existed I figured it would be left for usage for someone smarter. 

So the day passed and I was coding the webpage for the day I found myself constantly running into errors and in need of help. The host was always happy to help me out whenever I asked for it but I knew that if I wanted to get any better I'd have to make more of an effort to solve these problems on my own. So I thought about about the inspect element feature and how I could use it to my advantage. So I opened it up and messed around with it for half an hour before it dawn on me how it works. The way it works is so easy and right there in front of me. 

Take a look of this image of the today's assignment with the inspect elements opened on the right: 


Using the highlight feature on the inspect element you can isolate a single object and get its exact specifications of its design (margin, padding, font-size, length, width, etc) and display it on the lower half. It will then let you make temporary revisions to your webpage (kind of like I did with my humor pages) and if those revisions are a better suit for the site then the new settings can be copied and pasted onto the .css file so temporary can become permanent. 

You ever had one of those moments when a switch gets flipped in your brain and all of a sudden everything makes a little more sense? That's what I experienced today and afterwards I was making code corrections on my own. We coded until 1pm and we took a break to walk over to a Greek restaurant for lunch. The day's assignment was completed by the late afternoon and I felt empowered and ready to do more. 

By then the host's wife returned home and we decided to go to the local library to continue with tomorrow's assignment. With a new understanding of the debugging I figured I could get much done in the span of two or three hours. Tomorrow's assignment is to replicate this page: 
 

which is the same as what we did today except we with more features and instructions to avoid divs in sections that have just one use of tags or elements. I told myself that I could at least get the header and sidebar completed by the end of the night. 

Then a few minutes after we started my brain crashed and I was left staring at the screen for half an hour not knowing what I am suppose to do. This occasionally happens when I work myself too long and I temporarily forget how to perform a task. And I was on such a roll. If anything good could come out of that it is that I'm actually taking this seriously. I have a habit of taking frequent breaks but ever since this bootcamp started the frequency has dropped and I loose myself to the coding assignments that have to be completed.

Finally the moment passed and I remembered everything that needed to be done. The library was closing at 9pm and I did all I could do for the last hour I had there. By the time we left I had this much complete: 


It was about half of what I was hoping to accomplish for tomorrow's task. Every Friday is a test and I'm hoping I could give myself enough time tomorrow to complete it. 

Nothing else can be done for the night so it's off to bed.

Wednesday, July 22, 2015

Day 3: More CSS

After breakfast I drove over to the home of one of my classmates and spent the afternoon completing the webpage from yesterday. The other classmate from yesterday joined us and I also got to meet another classmates. I would say that most of the day was spent working on that page, which was pretty much on timeline with our two weeks of web fundamentals.

Instead of going out to eat we figured it would be easier to bring food over and have lunch together. The host had a propane grill and he cooked hotdogs and burgers for lunch and cooled off by the swimming pool for an hour. It is cheaper, more personal, and much more relaxed than going outside.

Setting up the HTML page has always the easy part and most of the details are in the CSS file. Around 5pm I finished the page and submitted it. By then the host had other obligations to attend to and the other guy and I went to the nearby library where I started doing work tomorrow's assignment. After about an hour he had to take off and with him gone I sort of lost my momentum for the day and took off shortly after he did.

I feel good so far. I know everything that's being thrown at me and I'm on schedule. One of the other guys is a little further ahead but I'm not concerned about competing with him. Like any work I pursue, it would be nice to be ahead but it usually isn't the case and I'm often happy just staying on schedule.

Same thing tomorrow.

Tuesday, July 21, 2015

Day 2: CSS

Today's topic is CSS and last night I spoke to contacted two of my classmates and we agreed to meet today to work the assignments together. I couldn't study at home because of all the distractions and studying with others who have the same interests and goals helps keep me focused. After breakfast I picked up one of them and we met the other one at a Starbucks. CSS, another topic I've been covering for years, was suppose to make the second day of the bootcamp another easy day. The lectures caught me by surprise as I was struggling to cover the differences between floats and displays, and the four types of positioning for an object. I was reading the lectures slowly while one of them was speeding past me. I was also still half-asleep and was tempted end this day early to go home and sleep. It worried me that I would fall behind.

NOTE: To preserve the privacy of the people I mention in this blog I will refer to them in the third-person. If in the event I need to mention them individually I will refer to them by their initials. 

Two hours later we took a break for lunch. We got a chance to get to know each other better. Taking some time to eat and talk did help loosen my worries. After lunch we headed over to the library and by then my brain was wide awake and I was processing the information faster than the morning. I wasn't sure if it was the food, the Red Bull I drank, or my habit of starting slow before picking up the pace but I caught up with one of the guys. When it was time to work on a two hour assignment we helped each other complete it under half an hour. He pointed out my errors and I returned the favor when I saw mistakes in his code.

After the first assignment we moved onto the next CSS topics of resets and normalizing to solve the problem of browser compatibility. I didn't understand the lecture and one of the guys explained to me that browsers have different CSS default settings and resets help create consistency between the browsers. That certainly made the next assignment easier.

For the next assignment we had to recreate a sample webpage (as shown below) using the HTML and CSS topics covered. The trick here was to avoid using floats and keep the width below 970px.

I saw the webpage as sections divided by divs. There were four main divs here: #header, #navigation, #main_content, and #footer. After aligning them properly within the width limit it was all just a matter of fleshing it out with the content. By the this I was picking up some serious momentum and my focus was no longer on sleep or the daily distractions of music or video games but on solving this puzzle.

Next thing I knew it was 6pm, we had completed the requirements for the day, and we were getting started on the next assignment. One of the guys left a couple of hours earlier and the other one offered his place to continue with tomorrow's work. We started the next assignment there, which was basically the previous assignment except with sub-divs to take care of the tiny details that are in every webpage.

This is what we had to recreate:


And this is what I had by the time we called it quits at 9pm: 


In case you are wondering what the blue rectangle is doing in a predominately red themed webpage I am using it to mark where the #text_size sub-div is located. I suppose it wouldn't have hurt to deactivate it for the night but by 9pm I was worn and wasn't seeing clearly. 

We're going to meet again tomorrow. Today started off slow with momentum building after lunch. I expect to see more of that in the following days. Like any other muscle my brain needs to be exposed to these exercises on a regular basis so by the time I make it to onsite I'm in full gear for the full-stack assignments. 

Monday, July 20, 2015

Day 1: Orientation, HTML and HTML5

The day started off with orientation. Since the first two weeks are remote I had orientation through a Google video hangout, which lasted about an hour. The two instructors explained the web fundamentals we're going to cover in these next two weeks, which will prepare us for the full-stacks we'll be covering once we come onsite. We got a syllabus and timelines for completing our assignments. I also had a chance to have a group chat with the other students in the cohort, where we all agreed that we should meet up to form a study group. I hope we can make that happen.

After the hangout I started working on the topic of the day which was HTML, the language of the web, and HTML5, a modern version of it. The topic covered each component of an HTML document (head and body), tags and elements (h1, p, div, etc), parent-child-sibling relations, indentations, forms, and the latest features offered in HTML5. The assignments were to properly indent an html doc, mark the parent-child-sibling relation on each tag, and create a fake blog using everything covered.

I've been using HTML for years so most of this lesson was very familiar. Regardless, I took the time to read through every explanation and watched the videos that covered them. I'm glad I did because it never occurred to me how different HTML5 was from HTML. With HTML5 there are new tags like <header> and <center> that simplify many common instructions.

I feel good so far. This is just a warmup so I shouldn't get too ahead of myself just yet. So for now enjoy the rest of the night.

Sunday, July 19, 2015

Final Day Of Preparation

Tomorrow I'll be starting the coding bootcamp making today my final day of preparation. It'll begin with two weeks of remote preparation before I begin the onsite course.

I've spent the last three months preparing for the bootcamp and it paid off this weekend with the pre-bootcamp coursework. Yesterday I completed the introduction chapter and the algorithm problems. The intro chapter consisted of explanations on how the lectures work, setting up important tools, the importance of learning full-stacks, and tips on how to maximize time at Coding Dojo. The algorithm problems consisted of outcome predictions, like what do you expect from console.log(x) when var x = 5, and coding challenges, like finding the max value in an array. As you can probably guess from the previous sentence I had to write everything in Javascript. I used Javascript in college and spent the last three months solving similar problems in it so this assignment was very easy and I completed it in under two hours.

The tasks for today were to complete PHP and Javascript tutorials in Codecademy. It just so happens that I did the Javascript tutorial two months ago so that's done. Perhaps in the future I should do the assignments even if I did it before the bootcamp. It'll be important for developing the right habits of doing everything I am given. Also, much of what I'll learn will be from repetition. For now though I'm pressed for time. As for PHP, I've only ever used once before for an assignment in college and I had very little recollection as to how it works so I started fresh with that one. It is easy but just takes time to complete, which was something I didn't give myself enough of today. I'm about a quarter of the way done with the PHP tutorial and I'll try to get a little more done before I head to sleep.

While I took care of the Javascript tutorials on Codecademy I didn't have enough time to complete those tutorials on W3School as instructed. That's what I get for signing up the weekend before the bootcamp begins. I looked through it and most of it is the same except with the addition of showing users how to insert Javascript into an HTML file. I'll have to pick that up in the following week.

For the rest of the blog I'll be making entries at the end of every class day. There won't be any lectures on weekends but I'll be coding those days and make entries if there is something of interest to write about.

On the night before a new school year begins I'm usually very nervous but in this case I'm actually excited to get started. To be fair, this isn't like any school I've ever gone to and for all I know this might be the best thing I could do for my post-college life. That's what makes this more exciting than nerve-racking.

I'm setting aside my personal life for the next three months do focus entirely on this endeavor. The key advices I got for the bootcamp are:

  • Believe in yourself
  • Connect with your classmates
  • Focus on one task at a time
  • Dedicate 70-80 hours a week on coding
  • Don't think about finding a job until the very end
  • Sleep well, eat well, and stay in shape

I better get a little more PHP done before sleep. So until tomorrow.

Friday, July 17, 2015

Getting Started

Today I took the first steps down the path to become a web developer by enrolling in a three-month coding bootcamp experience at Coding Dojo in Silicon Valley. The bootcamp will begin on July 20th, less than three days from now and this blog will focus on that experience.

I've never done a blog like this before and I figure that the first thing I should do is introduce myself and describe what I hope to get out of the coding bootcamp and this blog.

So about myself: I graduated college last year with a degree in web design and a minor in computer engineering. I loved math and science enough to want to study it in college but I had very little idea what I wanted to do afterwards. During my last term I got a contract job as a system administrator at a startup. It was an exciting job where I got to work with members of the web development team. I was intrigued by their work and they suggested I study basic topics like SQL and Ruby on my own. I loved what I learned and I found myself seriously considering a pursuit in that field. Eventually my contract ended and one of my colleagues suggested I attend a coding bootcamp to accelerate my learning in an organized and methodical way. I did some research and I discovered Coding Dojo.

What I hope to get out of Coding Dojo is to become a web developer. A job afterwards would be very nice but I know that I need to love and be good at what I do first before that happens. Coding Dojo offers their students the opportunity to become experts at three full-stacks but more importantly they want to give their students the confidence to pick up other web tools on their own if they want. I was hooked with that and here I am.

One of my hobbies is writing and I want to use this experience as an opportunity to document my personal and professional growth. As I look back at everything I had ever written I notice that some of my best writing occurs when there's an audience. On those ones I get motivated to be as descriptive as possible. So I'm going to do this blog, bare my work for the world to see, and be as descriptive as possible with everything that happens each day. Also, my dad thinks that it could help me stay focused. If that is true then all the more reason to write.

After I signed up I received prep material for the course. The bootcamp will start with two weeks of remote lectures and assignments that will introduce me to the basic tools that'll be used in the course. After that I'll start attending the onsite course for the next three months with each month dedicated to a different full-stack.

With only three days before bootcamp begins I have the following prep work to complete:

  • Introduction chapter
  • Algorithms
  • Codecademy
  • Javascript tutorials

I already started with the introduction which, as it sounds, is an introduction to Coding Dojo by the instructors. I'm halfway through it and I bet I could finish it in another hour but I should get to sleep soon. Normally I would stay up a couple of hours longer but I need to train my body to wake up earlier than usual so I could make it to the bootcamp each morning on time. 

I'm excited for this blog and I'm even more excited for the Coding Dojo!!!