Hot: JavaScript MV* frameworks
Not: JavaScript files

Long ago, everyone learned to write JavaScript to pop up an alert box or check to see that the email address in the form actually contained an @ sign. Now HTML AJAX apps are so sophisticated that few people start from scratch. It’s simpler to adopt an elaborate framework and write a bit of glue code to implement your business logic. There are now dozens of frameworks like Kendo, Sencha, jQuery Mobile, AngularJS, Ember, Backbone, Meteor JS, and many more — all ready to handle the events and content for your Web apps and pages.

Hot: CSS frameworks
Not: Generic Cascading Style Sheets

Once upon a time, adding a bit of pizzazz to a Web page meant opening the CSS file and including a new command like font-style:italic. Then you saved the file and went to lunch after a hard morning’s work. Now Web pages are so sophisticated that it’s impossible to fill a file with such simple commands. One tweak to a color and everything goes out of whack. It’s like they say about conspiracies and ecologies: Everything is connected.

That’s where CSS frameworks like SASS and its cousins Compass have found solid footing. They encourage literate, stable coding by offering programming constructs such as real variables, nesting blocks, and mix-ins. It may not sound like much newness in the programming layer, but it’s a big leap forward for the design layer.

Hot: SVG + JavaScript on Canvas
Not: Flash
Flash has been driving people crazy for years, but the artists have always loved the results. The antialiased rendering looks great and many talented artists have built a deep stack of Flash code to offer sophisticated transitions and animations.

Now that the JavaScript layer has the ability to do much of the same, browser manufacturers and developers are cheering for the end of Flash. They see better integration with the DOM layer coming from new formats like SVG (Scalable Vector Graphics). The SVG and HTML comprise one big pile of tags, and that’s often easier for Web developers to use. Then there are large APIs that offer elaborate drawing on the Canvas object, often with the help of video cards. Put them together and there few reasons to use Flash anymore.

Hot: Single-page Web apps
Not: Websites

Remember when URLs pointed to Web pages filled with static text and images? How simple and quaint to put all information in a network of separate Web pages called a website. New Web apps are front ends to large databases filled with content. When the Web app wants information, it pulls it from the database and pours it into the local mold. There’s no need to mark up the data with all the Web extras needed to build a Web page. The data layer is completely separate from the presentation and formatting layer. Here, the rise of mobile computing is another factor: a single, responsive-designed Web page that work like an app — all the better to avoid the turmoil of the app stores.

Hot: Mobile Web apps
Not: Native mobile apps

Let’s say you have a great idea for some mobile content. You could rush off and write separate versions for iOS, Android, Windows 8, and maybe even BlackBerry OS or one of the others. Each requires a separate team speaking a different programming language. Then each platform’s app store exerts its own pound of flesh before the app can be delivered to the users. Or you could just build one HTML app and put it on a website to run on all the platforms. If there’s a change, you don’t need to return to the app store, begging for a quick review of a bug fix. Now that the HTML layer is getting faster and running on faster chips, this approach can compete with native apps better on even more complicated and interactive apps.

Hot: Node.js
Not: JavaEE, Ruby on Rails, PHP
The server world has always thrived on the threaded model that let the operating system indulge any wayward, inefficient, or dissolute behavior by programmers. Whatever foolish loop or wasteful computation programmers coded, the OS would balance performance by switching between the threads.

Then Node.js came along with the JavaScript callback model of programming, and the code ran really fast — faster than anyone expected was possible from a toy language once used only for alert boxes. Suddenly the overhead of creating new threads became obvious and Node.js took off. Problems arise when programmers don’t behave well, but the responsibility has largely been good for them. Making resource constraints obvious to programmers usually produces faster code.

The Node.js world also benefits from offering harmony between browser and server. The same code runs on both making it easier for developers to move around features and duplicate functionality. As a result, Node.js layers have become the hottest stacks on the Internet.

2015 Trends

Leave a Reply