Learning to Hack – Part 3: Review of Week 2

Kerry Mui is a student participating in the March cohort of the Web Development Immersive program. This article was originally posted on his blog. It is Part Three of his ongoing series documenting the Bitmaker Labs experience.

This week we converted our command-line CRM into a locally hosted web app. The days are long, but the work and positive environment make it satisfying. Here are the things I learned this week. ## 1) Fear Of Failure ** **_**Courage is only the accumulation of small steps.**  -György Konrád _ A character trait I’ve improved upon since starting is managing my psychology. At times, it’s easy to become intimidated by my classmates, many whom are more experienced. They pick things up quickly. It can be deflating when I spend hours de-bugging my program, only to see a classmate already done the assignment. There are days that I fear falling behind the pace of the program. This fear largely stems from an insecurity of not being good enough and, specifically, failing. My instructors remind me that I have less than a month of experience. I am, mostly, exactly where I should be. Making comparisons creates unnecessary anxiety. So, I do my best to be positive. Yes, my classmates are talented; this is an opportunity to learn from their expertise (I can’t count how many times they have already helped). Yes, some days I fall behind because an assignment takes longer than expected; this is an opportunity to debug my program with instructors in the afternoon. Yes, I will need much more practice after bootcamp before I’m a developer; this is an opportunity to learn the most while in the program. I just have to work that much harder to ensure my success.   ## 2) Optimizing Note-Taking For A Coding Class It took me a week to optimize my note taking methodology to fit BL’s lecture style. Lectures consists of our instructor explaining concepts by coding on a projected screen, while being recorded. The first week, I tried to type along in class but struggled to keep up since I wasn’t as quick running through applications. This caused me to miss key pieces of information. So then, I focused on listening to all the key concepts in class and didn’t take notes. That still didn’t work since it was too passive of a learning style. Now, I’ve finally optimized my method: type along in class & make notes in the code. I’ll ask the instructor to repeat a concept if I miss it because I took an extra moment typing notes (it’s not too often). Also, I can listen to the webcast if required. This is definitely my favorite way. I can read the code after class, with notes in the code explaining the concepts or important points.   ## **3) BetterSnapTool Keyboard Shortcuts ** The instructors are intent on making sure you master keyboard shortcuts, which reduces reliance on a mouse, and results in faster speed. [caption id="attachment_289" align="alignleft" width="300"][![Screenshot showing 3 windows: 1/2 screen with 1 program, 1/2 screen with 1 program x 2 windows](http://kerrymui.files.wordpress.com/2014/04/screen-shot-2014-04-10-at-5-37-56-pm.png?w=300&h=162)](http://kerrymui.files.wordpress.com/2014/04/screen-shot-2014-04-10-at-5-37-56-pm.png) Screenshot showing 3 windows: 1/2 screen with 1 program, 1/2 screen with 1 program x 2 windows[/caption] BetterSnapTool is the recommended application. It can be found in Apple’s app store [here](https://itunes.apple.com/ca/app/bettersnaptool/id417375580?mt=12). It lets you divide your screen into any ¼ or ½ that you like.  I usually work with ½ my screen as a text editor, Sublime Text 2, and the other ½ with Terminal. Shortcuts are determined by your preference, but here’s how I’ve split my monitor into 9 easy shortcuts:
**Screen ½  ** **Commands** ** ** **Screen ¼** **Commands**
Left Ctrl + q Top left Ctrl + z
Right Ctrl  + w Top right Ctrl + x
Top Ctrl + e Bottom left Ctrl + v*
Bottom Ctrl + r Bottom right Ctrl + b
Full Screen Ctrl + a *Ctrl + c is skipped because it’s ‘exit’ in terminal
_Curriculum covered: built our own web server, HTTP Requests & Responses, HTML & CSS, HTML Forms, Sinatra, Intro to Databases (DataMapper)_