Larry Ullman

Translating Geek Into English

10 Steps to Becoming a Great Web Developer

I just recently Stumbled Upon an article title 10 Steps to Becoming a Great Web Developer. Even though the article is two years old, I think it does a great job of laying out the steps one would take to become a Web developer, starting with the basics of HTML, then moving into a server-side technology, and then getting into SQL, CSS, and JavaScript. On the higher end, there are regular expressions, Unix/Linux, Web servers, version control, and frameworks. I would question some of the specific resources mentioned, but overall this is a nicely presented list and I can’t argue with the order. Two years later, perhaps the only thing I would add would be to start learning about mobile Web development.

For anyone wondering what to study next, give this a quick read!

Why There Are Few (No?) Good JavaScript Books

I’m working on a JavaScript book these days, titled Modern JavaScript: Develop and Design, to be published by Peachpit Press around the end of the year/beginning of 2012. In all modesty, readers have been asking that I write a JavaScript book for a decade now, as there seems to be a lack of good JavaScript books out there (a JavaScript book recommendation is another common request). I believe I’ve read three JavaScript books in the 12 years since I first started using the language:

These are all recommendable books, with their own strengths and weaknesses (I always think of O’Reilly books being technically thorough and excellent, but not great to learn from for beginners.) In skimming some other JavaScript books, not to be named, and working on my own, I’ve been thinking more analytically about why there aren’t more good JavaScript books out there. I’ve come up with two reasons.

Browser Market Share Updates

As I’m in the midst of writing a book on JavaScript, I’m hyperaware of browser market share at the moment. Although my “Modern JavaScript: Develop and Design” book takes a progressive enhancement approach, which means the end result will work reliably across all browsers and devices, it’s still good to pay attention to what people are commonly using. At the very least, watching the browser market share helps you to know what devices and browsers to test on first. Anyway, InfoWorld had an article last week discussing how IE’s market share is dropping towards 50% (really? still that high?), based on statistics from NetMarketShare. As the article points out, in the mobile realm, Safari remains the clear leader, even increasing its share to over 50%. This despite the fact that Android phones far and away outsell iPhones. But Safari is also running on the iPad and the iPod Touch.

An interesting note to me is that the two most commonly used browsers–IE on the desktop; Safari on mobile devices–are not the browsers that most developers and designers are using, at least not as their primary tool. This is another example of the developer’s primary hurdle with any Web site or application: bridging the gap between what the developer thinks is right and what people will actually do!

New C++ Standard

This summer, a new standard for the C++ language was approved by its governing body. Rather than explain the key changes here, I’d recommend you read this article, which covers the changes in excellent detail. As you’ll read, C++11, what the new standard is being called, contains lambda functions, makes better use of the Standard Template Library (STL), defines smart pointers, and provides other mechanisms for parallel processing and concurrent computing. Expect compilers to start supporting this new standard over the next couple of years.

Modern JavaScript: Develop and Design Status

I haven’t been posting as actively lately because all of my time is being spent on my new book, Modern JavaScript: Develop and Design. The progress is going more slowly than I would like, but it’s going, which is something. For those of you interested in the book, here’s a quick status update…

\[intlink id="2412" type="post"\]\[/intlink\]

), with Part 1 laying out the core information, Part 2 teaching the language in itself, and Part 3 introducing more advanced and newer uses of the language (frameworks, HTML5, server-side JS, advanced OOP stuff, etc.). The first draft of Part 1 is done. Chapter 1 explains what JS is and provides some context for using it in today’s environment. Chapter 2 includes a preview of what you’ll learn, and introduces some of the key concepts for using JS in an HTML page (the script tag, handling a simple event, etc.). Chapter 3 introduces the key software you’ll use: text editors and IDEs, browsers, and debugging tools.