2013-03-30

Learning JavaScript - my experience and advice


Since I've mentioned a few times that I just learned JavaScript over the last few months, a bunch of people have emailed to ask what I used and recommend to learn it. So here's my experience and best advice for 2013.


NOTE: I wanted to really learn JavaScript - not shortcuts, quick tricks, or meta-tools that keep me from having to learn JavaScript. I want to learn it, get it, read it, understand it, and memorize it, so that I can understand all the other cool things written in JavaScript for years to come.


First - a bunch of people will tell you to get JavaScript: The Good Parts - by Douglas Crockford. But when I started reading it, it was so dense and succinct that I had no idea what it was talking about!


You know when an expert is talking about their field, and don't know how to simplify it for just anyone? Well, this book felt like it'd be perfect for someone who's been programming for 20 years in C, Java, and C++, and just needs a quick overview of what they should know about JavaScript.


But it doesn't really TEACH you. It doesn't guide you through anything. So I recommend skipping it.


Instead, start with Eloquent JavaScript - by Marijn Haverbeke.


It starts so simple, so easy, almost too simple, but this is encouraging. You get your swagger back as you say, “This is easy!”


Do the online version, here, because you can test and experiment directly in your browser.


Then, after a few chapters of that, switch over to Professional JavaScript for Web Developers, 3rd Edition - by Nicholas Zakas.


THAT is the ultimate tutorial. It takes the time to explain everything thoroughly, and it covers pretty much everything. Put aside a few hours per chapter, and by the time you're done with this one book, you'll know as much as most people who call themselves JavaScript programmers.


Funny thing is, I went back to JavaScript: The Good Parts after finishing this one, and now I understood it. But because Professional JavaScript for Web Developers was so thorough, it had already covered all of the “good parts”, too.


Of course you have to retain what you're learning, so I highly recommend you write down every new thing you learn, ideally into a flashcard program, like this. It's a lot to take in, so you'll have to remind yourself of what you've learned in the weeks and months afterwards.


If you're in the mood for more books to really solidify JavaScript in your head, go through:

All of these are great, and you'll notice you go through them much faster now that you're fluent. Do the examples. Play around.


Read some real-world JavaScript code


After a thousand pages of tiny example code snippets, you'll love looking at the code to two very popular and powerful JavaScript projects:



  1. Underscore.js

  2. Backbone.js


You'll notice that it all makes sense, now. You're now functionally fluent in reading and understanding JavaScript.


Then jQuery, and more...


jQuery is absolutely everywhere, and you must learn it, for your JavaScript tutorial to be complete.


Now that you've learned the plain-JavaScript long and verbose way of doing things, you'll appreciate the shortcuts that jQuery provides.


I really liked Head First jQuery, as goofy as it is. It walks you through jQuery wonderfully well, and has you apply what you've learned, as you go.


And if you're still hungry to learn more JavaScript, dive into:



Then put down the books and go use it!


You would think this goes without saying, but if I didn't say it, someone would complain. So look at your existing sites, and go apply what you've learned. Or start a new site from scratch and make it all with JavaScript, even if just as an experiment.


Any other suggestions? What worked for you?







via Derek Sivers http://sivers.org/learn-js

2013-03-05

Cubism, Cubed: Green Tendrils Wrap Through White Kitchen


“Glamorous”, “spectacular” and “surrealism” are some descriptors offered by the Bulgarian designers of this this electrified room design.



Practicality takes a back seat to formal experimentation and cubist expressionism – shelves, cabinets and racks are fit into the carved-up walls almost as an afterthought.



As a bonus, there is almost no way for this room to look messy – it is chaotic by design, which is a good fit for at least certain cooking styles.



Gememilli Design Studio takes a similarly colorful and angular approach to other interior designs as well, including and beyond some of the examples shown above.





Keep Going - Check out this Great Related Dornob Article:








Modern Kitchen Design: All-in-One Cooking Island Idea








Contemporary Kitchen: Simple Modern Black & White Design
















via Dornob http://dornob.com/cubism-cubed-green-tendrils-wrap-animate-white-kitchen/

2013-03-04

Oreo-creme hater builds Rube Goldberg CNC router to remove the Stuf

oreo-separator


Look, we understand the need to find a project to occupy your time and interest. So we’re not going to ask the wrong question (why?) for this one. This guy hates the creme that connects the chocolate cookies to make an Oreo. So he built a complicated system to separate the cookies and remove the creme. Check out the video after the break for a hardware overview (where we catch a glimpse of an Arduino RBBB) and a complete demonstration.


Although the project is a marketing gimmick for the company, we really love the fun they had making the video and the device actually works! Drop a cookie in the chute and it will be lifted into position for cleaving with a hatchet (we’re unsure what the string mechanism on the hatchet is for). The two pieces are then grabbed by some servo-powered grippers and transferred to a CNC router bed where a Dremel tool removes the residual creme before dumping the cookies out into your hand.


Once again, marketers should take note of this style of advertising. Notice the two main features achieved here: including a product in something we’re genuinely interested in and not being annoying (we’re looking at you Head-On).



[via Reddit]




Filed under: cnc hacks



via Hack a Day http://hackaday.com/2013/03/01/oreo-creme-hater-builds-rube-goldberg-cnc-router-to-remove-the-stuf/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+hackaday%2FLgoM+%28Hack+a+Day%29

Wooden LEGO Bricks

Wooden LEGO Bricks

Japanese company Mokulock makes eco-friendly wooden versions of the famous LEGO bricks.


-- Delivered by Feed43 service






via Design Ideas and Tech Concepts - Toxel.com http://www.toxel.com/tech/2013/02/26/wooden-lego-bricks/

2013-03-03

Money Sculptures

Money Sculptures

Canadian artist Kristi Malakoff makes unique sculptures out of real money.


-- Delivered by Feed43 service






via Design Ideas and Tech Concepts - Toxel.com http://www.toxel.com/inspiration/2013/02/20/money-sculptures/

Freezing Android to crack the encryption

frozen-phone-encryption-hacking


Build a better lock and someone will make a tool to open it without the key. Or in this case they’ve made a tool to discover the key using a trip to through the deep freeze. The Forensic Recovery of Scrambled Telephones — or FROST — uses cold temperatures and a custom recovery image to crack Android encryption keys.


Cold boot hacks go way back. They leverage use of low temperatures to slow down the RAM in a device. In this case, the target phone must already be powered on. Booting a phone that uses the encryption offered by Android 4.0 and newer requires the owner’s pass code to decrypt the user partition. But it then remains usable until the next power cycle. By freezing the phone, then very quickly disconnecting and reconnecting the battery, researchers were able to flash their own recovery image without having the encryption key cleared from RAM. As you can see above, that recovery package can snoop for the key in several different ways.


[Thanks Rob]




Filed under: android hacks, security hacks



via Hack a Day http://hackaday.com/2013/02/20/freezing-android-to-crack-the-encryption/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+hackaday%2FLgoM+%28Hack+a+Day%29