Thursday, June 14, 2012

JavaScript from scratch


Simple makes you happy

So you probably read my previous post where I was talking on the reasons why I started to learn JavaScript.
As a first step I logged into Codecademy.com, opened an account and did the first thing which is typing my name “Hod” and see the results.
It is funny to see how a simple thing like typing and see your name as the result  makes you happy, you get the feeling that you can do anything, any program, any coding, any obstacles. I can do JavaScript!


Code Year

Codecademy is a very simple functional site; you understand right away what you should do, what the next steps are and where you are going.
They give you some options to choose of the provided courses and all you have to do is decide on which path will you go and study.
I took the ‘Code Year’ course which contains JavaScript, HTTP and CSS. 
Update- After reading some reader’s comments- I will continue to their JQuery when finish this one.
‘Code Year’ made of 23 subjects, each subject supposed to take you a week and each week get you closer to know how to program and what techniques to use.
I started of course with the basics, lucky me I know the basics from study Python only few months ago, all you need to do is the adaptation from one to the other.
The basics went pretty fast and after few hours I was ready to write my first project- the game ‘Fizz Buzz’.


My projects

Fizz Buzz- See my code over here- Fizz Buzz project inside github
Or inside my Dropbox folder- Fizz Buzz project inside Dropbox
Do not worry; it is my Dropbox folder, no malicious code here.
After few more classes made of Functions and conditionals I was ready for my next project  ‘Roll the Dice’. See github and see Dropbox.
After learning arrays, primitives and some more I was ready for my next project which was creating an address book. See github and Dropbox.
And finally I did my last project which is to build a Blackjack game (well, at least to build the start)
You can see the code and play using github and Dropbox


Objects

Objects (Week 5) were the first time I had hard time to learn.
It is a concept I didn’t meet before and I found myself reading lines over and over to understand the terms being used.
I did well in the course and even find myself explaining others how to fix their code but in overall it is a very hard subject and I think I will re-learn it just to be sure I am cover here.
The project over here was to write a Cash Register and you can see my code in github and Dropbox.


Your input …

As I wrote before, I want to re-study Objects / OOP only to be sure I am 100% controlling it.
I hope you (the readers) can tip me about this subject, maybe you know a site that explains it the best.
Also, your comments on my code will be highly appreciated.


On a side note- I got an invitation from Codecademy to be their beta tester for future classes, I already ran few classes, report some bugs and will run more in the future.

Tuesday, June 5, 2012

JavaScript vs. Python

History

I am working as QA since 1998; I was working for big companies and for Start-Ups, during this time I was moving forward in the QA hierarchy and each time it came with benefits; I even had two exits and finished my Computer Science degree while working.
Last time I was writing websites was using some platforms like Geocities, Tripod and Angel Fire and it was so easy anyone could do it; In those days the html language was so basic and all you needed is to choose your background and some text and you had sites as good as yahoo, eBay or similar.
I didn’t put any attention to websites or new technologies and concentrated on my own job as security hacker and network tester.
Today I know that not letting myself open up for new technology was a bad idea, today I am like a newbie who is excited from sites like Twitter, LinkedIn or Facebook.

Python from Scratch

Last January I decided that it is about time to do some changes in my life, I felt that the QA position is fun and I do like it but the real thing is waiting for me as a developer.
My ultimate goal is to be founder of something cool and not a simple coder at the age of 40s+
So I read some hacker news posts and finally the decision was done- To Learn Python; you can read the entire posts over here: 1234 and 5
And so I did my On-Line Python class and I was doing fine, I had some obstacles but in overall I was great until my eyes met this site- http://42floors.com/ and life didn’t look the same anymore.
Learning Python was a good start but you don’t really know where you are going with it and what’s next? 
//For those of you who followed me I apologize but that’s something I need to do for myself.//

It’s a kind of Magic

Seeing 42floors was a magic: It is a site that let you in, it welcomes you to use it and explore all the data inside. I never been to San-Francisco but through that site I felt like I am part of the city and in some point I felt like really want to rent an office there. The site is extremely User Friendly and easy to use.
Bottom line, I knew that this is what I want to do, to build a site just like 42floors and so I sent an email to the founder of this site and till today didn’t get any response, that didn’t stop me- If you can't join them bit them (I know it is beat and the opposite around). My next step was looking for an answer- "How long will it take someone like me to build such a site" and posted that question in hacker news.
The answers were very detailed but also some disappointed, most said around 3-5 years to be near to that level, well, that didn’t stop me neither, once you find your destiny you should do anything to achieve it; Follow one of the leads I logged into Codecademy.com and signed-up to the "code year" course which teach you JavaScript, HTML and CSS.

More to come …

Now that I am aware to that language I can see how this language is taking amount of career ads around the world, how the ‘front end’ position is needed.
I will write more about my experience inside Codecademy and JS lessons in next post but for now I am doing well. I hope you will stay with me on my next posts.
I will be happy to read any thought or comment coming from you guys

Update- After repeating questions I must say that I didn’t quit Python but just put it aside and currently focus only on JS new adventure.




Please click here for the next post