October 20, 2014

Make Your App Development Easier: Programming JavaScript Applications

programming javascript applicationsProgramming ain’t easy. What’s harder is to convey concepts into printed words. Books can sometimes lag behind the latest-and-greatest moments in a given technology, overlooking  the heart of decisions and choices behind the code.

Fortunately some writers get their message to the heart quickly. One who I think got it is Eric Elliott, author of Programming JavaScript Applications: Robust Web Architecture With Node, HTML5, and Modern JS Librarie. Elliott is a JavaScript application development veteran. He is currently a member of the Creative Cloud team at Adobe.

I’m usually searching for open source development tools and developer meetups, so I was lucky that I discovered a early release online version via O’Reilly – special thanks to Revolunet, a French web developer that has collected a great reading library for web developers.

Where It All Started From

A brief technical history is in order: JavaScript is a client-side programming language, meant to operate website functions without having the browser contact a server in the process. Originally those functions were limited to those infamous pop up windows you’d see when arriving at a website – harmful or beneficial depending on the pop up content.

Today JavaScript is providing real value, as Elliott highlights the watershed moments that lead to today’s internet experience.

For a long time, there was no way to save data with JavaScript. If you wanted data to persist, you had to submit a form to a web server and wait for a page refresh. That hindered the process of creating responsive and dynamic web applications. However, in 2000, Microsoft started shipping Ajax technology in Internet Explorer. Soon after, other browsers added support for the XMLHttpRequest object….. Since that time, web developers have produced nearly every type of application, including full blown cloud-based office suites (see Zoho.com), social APIs like Facebook’s JavaScript SDK, even graphically intensive video games.

Such moments also influenced analytics – most analytics rely on Javascript tags, event tracking and regular expressions to measure site performance, so Elliott espouses on the right touchstones.

Learn How to Serve “The Other White Meat” of Programming

I call Javascript “the other white meat” because of its growing prowess as a programming choice among a multitude of programming choices. More than a history, the book offers itself as a cookbook of sorts for objects and functions.  Programming can be analogous to cooking, so to be a good “chef” in the digital “kitchen” a cookbook should give clear instructions.  In this case, Elliott explains advanced JavaScript in context of the Internet.  Diagrams that show how programming works with Internet infrastructure will help managers plan activities and a supporting budget to implement.

The handiness of the acronyms – like, DRY, which means Don’t Repeat Yourself – helps to refine functions for developers. They can also lend ideas for how to approach elements in a project that have to be coded.  Take this example for DOT – Do One Thing:

Each function should do only one thing, and do that one thing as well as it can. Following this principle will make your function more reusable, more readable, and easier to debug.

Steps associated with advanced material get covered pretty well, such as Callbacks, “functions that you pass as arguments to be invoked when the callee has finished its job.”

pierre1

In the above code, the clicked() callback gets passed into into jQuery’s .on() method. When $button receives a click event, it invokes clicked() which runs the ok() assertion and then start(), which tells QUnit that it’s finished waiting for asynchronous operations, so it can continue to run tests.

This material may be a bit much for those who don’t program, but I didn’t find it incredibly overwhelming to managers who have heard of programming languages but have never used an editor.   For those who fear code, fear not. Elliot offers some great suggestions on starter material, as well as additional links for new libraries.

Programming JavaScript Applications is meant for programmers, without question. I have no doubt developers will have a better formation of an app. Moreover, it’s worth a browse for the tech-curious business owner. It can explain some details to make app development easier, and save small business owners some headaches and training costs in understanding some of the programming issues encountered.

5 Comments ▼

Pierre DeBois - Associate Book Editor


Pierre DeBois Pierre Debois is Associate Book Editor for Small Business Trends. He is the Founder of Zimana, a consultancy providing strategic analysis to small and medium sized businesses that rely on web analytics data. A Gary, Indiana native, Pierre is currently based in Brooklyn. He blogs about marketing, finance, social media, and analytics at Zimana blog.

5 Reactions

  1. If we can all do Javascript then what are we going to need the experts for? I am very good at many things and the things that I am not good at, I readily admit and call in the professionals.

    • Hi Ed, Thanks for the comment!

      There are a number of tools and libraries going live essentially on a daily basis. Developers are tuned in to the information surround those at a better rate than a business owner. So an expert can help in vetting solutions for your business objective and budget. In my line of work there have been times when recommending a site redesign was questionable when the analytics data revealed some ideas for content that would potentially yield ideas. For programmers, a number of languages are based on protocol, not a universal rule for all developers, so some understanding of what is suggested can helpful.

      Books like this one are meant for developers, for sure, but they can help a business owner envision some ideas about what can be possible. Understanding some aspects of a language or tool that supports a digital presence – a website, an app – can help foster better discussions with a developer.

  2. Short easy codes are fine with me, but long programming scripts has not been my cup of tea. Troubleshooting them is even worse. Hence, ended up as a blogger, writer and some processing of images on Photoshop.

  3. Hi Pierre,

    Thanks for the detailed review. As I mentioned in the book, this text is targeted at developers with at least a couple of years experience working with JavaScript, but I’m glad to hear that some of the high-level discussion of web architecture, and what is possible with JavaScript is useful even for business owners without a rich background in JavaScript.

    For those with less experience who are interested in learning JavaScript basics, I wrote a post packed with beginner resources called Learning JavaScript: Up to Speed in No Time”.

    I hope it helps! =)

  4. While I see the value of Javascript, I personally won’t go to the lengths of learning it even if there are some available libraries. Programming just don’t go well with me. This is something that I prefer to outsource.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>



Compare your business to the industry - Try our new tool