Monday, January 28, 2013

Devise Gem

270.75 hours for 14 weeks of studying.  My plan is to do Berkeley 169.1x SaaS coursework and homework for 5-6 days of the week and then pair program with my brother Cody on a project with another developer Dan Voell. I worked on the project today, had some difficulty using Devise but thanks to Ryan Bates and Railscasts worked through it, I really like RailsCasts they are so informative and well done.

Just on a side note, I really like the error messages I get with Rails. I know that's random but I feel like most of them have the answer to the issue written right in them staring you in the face. Knowing that gives me confidence to not despair when I get an error. My advice to anyone else learning Rails is don't get discouraged and Google the error messages.

I'll let you know how the project turns out, I enjoyed working with a new Gem, and understanding how Rails works just a little bit better. - Josh

Saturday, January 26, 2013

Berkeley edX SaaS 169.1x done Homework1 & Quiz 1

Studied 5.75 hours today and finished all the Berkeley edX homework and assignments, it's quite tough. I'm so glad to have someone to pair program with and bounce ideas off of. My brother Cody came over and we studied together, now we're trying to add a function to keep track of the score on the Gosu Gem game, so far no luck, but I'll keep you posted :)

Sometimes I just sit and stare at my Mac hoping it will say: "Hey Josh, this is how to fix the problem." Unfortunately that never happens and I must leave my staring trance and keep thinking and Googling for a solution. Then there are times where I'm like: "I know what this is...I've seen something like this before, I can do this..." I love coding, it keeps you on your toes mentally.I'm at 19.75 hours of study for the week so far so that's good and I still have 2 days left to kick butt.

I've been contacted by several people through this blog now to work with them on side projects or study with, and I'm happy to say I'm going to be started on a small Github project with my brother Cody and another Developer "Dan". Wish us luck, we'll need it, between the edX SaaS course and trying to work through tutorials and books, sometimes it feels like the days are too short. That's also the fun, never bored!

Anyhow I'll keep you up to date on how things are going on the learning journey, and how many awful commits I make to Github :) Happy coding! - Josh

P.S. Did my first Github: Fork, Pull request, and approval yesterday, it actually was fairly easy, sometimes I get intimidated by the "Git Monster" but it was pretty straightforward.

Monday, January 21, 2013

Pair Programming using cell phones and Google Docs = Fun!

End of the week totals:19.50 hours for week 13, although I did read 86 pages today from "In The Beginning Was The Command Line", so that's not technically studying but I feel like I did learn more about the culture and history of OS.

248.75 total hours in 13 weeks of studying, loving the journey and feeling like I'm slowly understanding a little bit more and more :) My brother Cody and I have found a great way to practice communication and pair programming.

Cody lives in Fredericksburg, I live in Warrenton, over an hour drive away, so after he gets off work, we use Google Docs and cell phones on speaker so we can talk about what were doing, it's actually really fun, and I feel like we really have to focus more and think about what we're doing to avoid errors and communicate well. We both feel like we learn much faster when we work together, so we're gonna' try and pair program hopefully 3 times (long distance), and then once in person per week.

Berkeley edX SaaS homework is pretty challenging for me. I find the hardest thing for me so far is to: "think like a computer programmer", I know that sounds dumb but, I feel like I have zero experience to pull from in my mind. No other similar things I've done in the past. I'm sure that's every noon's curse at first :)

I'll just keep typing away with my embarrassing code until I get better, I'm sure It will improve over time with enough work.-Josh

Friday, January 18, 2013

Become super human: Learn To Code!

I am falling in love with this whole make code/solve problems thing, even though I still very much suck at it. It's almost like golf,  90% of the time you suck, but then you get that 1 shot that makes you feel like Tiger Woods. With coding I don't know much of anything yet, but when I finally solve even te smallest problem, I get a euphoric high, a rush and then I get excited to learn more.

Berkeley edX SaaS Course's 2nd week is going great,  the homework is tough but awesome challenges. Colin MacDonald  from South Arlington Hacker Space bought me a copy of "In The Beginning was the Command Line". He said it would help me understand more of the history/culture of the command line, can't wait to read it.

Matthew Gallager from South Arlington Hacker Space helped me Thursday night to get a little more familiar using Github, he's helped me out alot before, in fact I owe him some serious "Monster Drink Kickbacks" for all the help he's given me :)  I'm so grateful for all the awesome, great people I've met and who have helped me since starting this learning to code journey, it truly is an amazing community.

 I Studied 5.25 hours today pair programming with my brother Cody, it's amazing how much quicker you learn when you have someone you can bounce ideas and questions off of, I also think it's funny that there are SO many different ways to solve a problem, whether or not they are all the right way. Cody and I seem to always start off solving a problem differently, which I think helps us learn even more and is pretty cool :) - Josh

Tuesday, January 15, 2013

Learning Regex

I've watched all the new lectures from Berkeley edX, and realized I most know Regex, so that is what I'm going to do. I'm starting Zed Shaw's "Learn Regex The Hard Way". Tomorrow our first homework assignment comes out, busy week I'll let you know how it all turns out :) -Josh

Sunday, January 13, 2013

Learn Ruby The Hard Way: Lesson 47

I love Zed Shaw's books, but dang do they get hard at the end. There are 52 lessons in "Learn Ruby The Hard Way",  and I bet you could start on Lesson 1 and go all the way to Lesson 43 in a about a week or two...but when you hit Lesson 44 and on, it gets really tough for a noob like myself.

I've made it to Lesson 47: Automated Testing and I was like "Holy Crap!...what's this, I'm lost!" However with further googling and reading I feel a little better and will tackle it this week. Tomorrow starts  Lectures 3 and 4 of Berkeley's edX Saas course. I'm so excited to jump into it tomorrow, I'm going to go study in the a.m. before I go to work, I'm hoping they've released the next material for the course by tomorrow morning so I can get started on it.

I'm going to push Lesson 46: Project Skelton's assignment that I made to Github tonight, if anyone want to check it out, or clone it.

 Just as an update as we end week 12, I put in 20 hours of study this week, and 229.25 hours of total study. My end goal was to put in roughly 500 - 1,000 hours of study till I would hopefully  be good enough for a junior RoR development position.

All the best, and if anyone is ever in need of any help on a RoR rails tutorial or something, feel free to drop me a line and I'll do my best to help. -Josh

Thursday, January 10, 2013

Berkeley edX: First Quiz Done!!!

My brother Cody and I are both officially done Lectures 1 and 2. I just took the first quiz oddly enough named 'Quiz 0', felt good about all but one question. I can't believe I finished the assignments already, I'm assuming they will get much harder and have more actual programming tasks, and homework.

Right now I'm pair programming with my brother Cody on the game assignment from Lesson: 45 in Zed Shaw's "Learn Ruby The Hard Way", turning out to be harder than I thought but also awesome, all the learning and awful code we're writing. I'm sure most any real programmer would cry at what we created.

Just finished the game, I'm gonna' push it to Github as soon as I finish writing this post. My Github name is 'joshuakemp1'. Go to , in the search bar type in my Github name. Look at my repositories for 'cody_josh_game.rb'. If you want to play the game, open your terminal (if using a Mac) type in 'git clone'  tap the space bar once, then copy and paste the Github address and press enter.

To play the game, type in 'cd cody_josh_game.rb' hit enter. Then type in 'Ruby cody_josh_game.rb' and the game should run for you no problems...let me know what you think or if you need any help getting it to run.-Josh

Wednesday, January 9, 2013

edX Berkeley CS169.1x Software as a Service!!!

Just completed watching all the lectures and slides for Chapter 1 & 2, for week 1 of the course. I just need to take the first quiz, then I should be done till the next assignment comes out, or if there is any homework, I don't think there is though. 

I love the teacher Dave Patterson. He has a great teaching style, I really like it, really helps me understand new concepts and to let them sink in, five stars so far!

So far it seems like I will have more free time than I thought to continue studying on my own. I expect that to change as we get farther along and have harder topics and homework, but for now I will keep studying on my own as well. Really excited, I love learning, coding, and software development, so I'm one happy clam right now :) - Josh

Sunday, January 6, 2013

Game face for Berekley edX...Starts tomorrow!!!

Still studying 4 hours so far, still going strong. 21 hours so far for this week, just over 200 for 11weeks of studying overall. Had my brother Cody over to study and to get everything set up for tomorrow's Berekley edX course. Set up the VM and installed all the software with out too many problems.

I didn't realize we were going to be using Ubuntu on the Virtual Box, we're using Unity 12.0.4. I normally use a Mac, my brother Cody uses Ubuntu as a dual boot on his Windows machine so he's pretty good with Linux. I'm kind of excited to get to learn a different Operating System, I'm so glad the command line is the bash shell, I don't feel as nervous:)

Downloaded Sublime Text 2 onto Ubuntu so I'll feel more comfortable using the text editor. The course didn't specify a text editor or anything so I'm assuming it will be okay to use Sublime Text 2. Cody and I are about to try and tackle the assignment from "Learn Ruby The Hard Way" Lesson: 45 build a game. I'll let you know if we defeat the evil Ruby assignment!

I'm so excited to be starting a new course tomorrow. Will be good to put my mad skills to work, attacking any and all problems with genius coding solutions :) Wish me luck, encourage me along, and give me advice when I beg you for it :) - Josh

Friday, January 4, 2013

Ruby...I LOVE YOU (My Romance with a Computer Language)

It's so true the old saying about when you start a learning a new subject, at first you don't even realize what you don't know, then eventually you start to realize more and more just how much you don't know. One fine day you wake up and realize: "I don't know ANYTHING! :)"...Oh what a glorious day!

I don't know ANYTHING!, and I'm fine with that I'm loving the journey. When I first started learning RoR there were 2 basic camps of thought: Learn Rails first or Learn Ruby first. I choose Rails mainly because I felt like I was making fast progress because I saw results very quickly just by typing in: "rails new ___" and then BOOM! I'm a RoR developer. Learning Rails first is fun, and I'm glad I did it that way. However now I am feeling like: "Crap, if I don't actually know the language, I'm helpless.".

With the Berkeley edX classes coming up in 3 days, I'm pushing Ruby as hard as I can to put myself in a better position for absorbing the new material in the class. Zed Shaw's book Learn Ruby The Hard Way: Lesson 45 was tougher than I thought.  I've decided instead of taking a week to make the game on my own I'm going to pair program  with my brother Cody on Sunday and just study till we get the game right.

I am going through Chris Pine's "Learn To Program" book again from start to finish. I got through Chapter 5 of 15 today. I plan on knocking out the other 10 Chapters tomorrow. I'm doing all the training exercises for each chapter again just to try and make sure I have the basics down pat so I don't get too mentally swamped come class time.That's where I'm at in my learning journey. I'm dying to learn at a faster rate, but I'm not frustrated with the Language.

Except for the fact that I must take care of my awesome wife and 2 boys. I almost wish I could be locked away in a dark dungeon somewhere fed only bread and water so as to motivate me and not let out till I was a professional RoR developer. Of course that might be considered torture, but I bet my mind would hyper focus like a super human.

I'm hoping to put in 6 hours tomorrow and a big study day on Sunday. It's study time people, Let's rock & roll:) - Josh

Wednesday, January 2, 2013

Zed Shaw's Learn Ruby The Hard Way Lesson: 45

I am SO excited about learning RoR! I've just been so encouraged this week by people following this blog and also on Twitter, I couldn't wait to learn a little more piece of the pie tonight:)

I am 10 lessons away from being done with Zed Shaw's Ruby book, on a good pace, although I must admit, I have only done about half of the extra credit parts to his lessons. The main reason for that is because some say stop for a week and do X or Y, and I agree I need to learn those things down pat, however I really want to finish at least the main core lessons of Ruby before the Berkeley edX class starts on January 7th.

Tonight I'm working on a rather large project (at least for me) building a game, which is lesson: 45. I'll let you know how it goes, can't wait for the 7th! I need to check edX's website later and see if the virtual machine stuff is available to download and start setting up.

Just as a note, if I can help anyone on anything (despite my very limited knowledge) just drop me a line and I'd be glad to help in anyway that I can or maybe at least point you in better direction:)- Josh

Tuesday, January 1, 2013

I need help with a question please.

Seriously I need help from you guys/gals with a question I have:

"How many hours does a student actually spend coding/learning software from a typical 4 year CS degree?

I've looked on Google and really couldn't find any good answers. The reason I want to know know is just as a bench mark in my head. They say mastery of a subject is 10,000 hours, I know most of these 9 -12 week RoR bootcamps teach anywhere from 320 - 480 hours, although they encourage their students to study at night and on weekends.

 Dev bootcamp says some of their students put in up to 800 - 900 hours in 9 weeks of study.  9 weeks divided by 900 hours is 14.28 hours per day 7 days per week. To me that begs the question: How much of those 900 hours is really retained? Meaning would it be more beneficial to do less hours over a longer period of time? I don't know. Dev bootcamp is obviously very successful, I'm not knocking it I think it's great. I just am thinking for my own personal growth.

I will have just over 200 hours of study be the end of this week my 11th week.  I feel pretty good with my progress and what I have learned, I could have done better but all in all I feel like I'm really starting to grasp some of this stuff:)

I always hear people talk in years of experience like I've been coding for 2 years or 3 years.  I have a friend who has been coding for 6 months and he studies 1 hour per night, so to him 6 months experience is 128 hours.  I'm trying to get a more definable answer as to how many hours it takes to be a junior developer, at least in RoR.

At a job as a developer working 50 weeks per year at 40 hours per week means in 1 year that person will have 2,000 hours of experience, 4,000 hours over 2 years. Do we need to put in 4,000 hours before we are useful enough to be a junior developer?

 I will be taking 1 semester worth of RoR training from the same courses taught at Berkeley from Berkeley edX from January 7th - March 15th for a total of 120 hours of study. So when a job posting says 4 year CS degree or equivalent experience required, I wonder how to quantify that, are all 4 years of a CS degree relating to Computer Science? If so I would just do 120 * 8 giving a total of 960 hours.

Sorry to ramble on I love programming! I would love some feedback please, thank you so much:)