You are on page 1of 6

15 hot programming trends -- and 15 going cold

1 of 6

http://www.infoworld.com/print/233343

Published on InfoWorld (http://www.infoworld.com)


Home > Application Development > 15 hot programming trends -- and 15 going
cold > 15 hot programming trends -- and 15 going cold

15 hot programming trends -- and 15


going cold
By Peter Wayner
Created 2014-01-06 03:00AM
Programmers love to sneer at the world of
fashion where trends blow through like
breezes. Skirt lengths rise and fall,
pigments come and go, ties get fatter, then
thinner. But in the world of technology,
rigor, science, math, and precision rule
over fad.
That's not to say programming is a
profession devoid of trends. The difference
is that programming trends are driven by
greater efficiency, increased customization,
and ease-of-use. The new technologies
that deliver one or more of these eclipse
the previous generation. It's a meritocracy,
not a whimsy-ocracy.
[ How much do you really know about
programming? Find out by acing our
Programming IQ test: Round 3 and our
"Hello, world": Programming
languages quiz | Work smarter, not
harder -- download the Developers'
Survival Guide from InfoWorld for all
the tips and trends programmers need
to know. | Keep up with the latest
developer news with InfoWorld's
Developer World newsletter. ]
W hat follows is a list of what's hot -- and what's not -- among today's
programmers. Not everyone will agree with what's A-listed, what's D-listed, and
what's been left out. But that's what makes programming an endlessly fascinating

2/10/2014 1:02 AM

15 hot programming trends -- and 15 going cold

2 of 6

http://www.infoworld.com/print/233343

profession: rapid change, passionate debate, sudden comebacks.


Hot: Preprocessors
Not: Full language stacks
It wasn't long ago that people who created a new programming language had to
build everything that turned code into the bits fed to the silicon. Then someone
figured out they could piggyback on the work that came before. Now people with a
clever idea just write a preprocessor that translates the new code into something
old with a rich set of libraries and APIs.
The folks who loved dynamic typing created Groovy, a simpler version of Java
without the overly insistent punctuation. Those who wanted to fix JavaScript
created CoffeeScript, a preprocessor that lets them to code, again, without the
onerous punctuation. There seem to be dozens of languages like Scala or Clojure
that run on the JVM, but there's only one JVM. W hy reinvent the wheel?
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.

2/10/2014 1:02 AM

15 hot programming trends -- and 15 going cold

3 of 6

http://www.infoworld.com/print/233343

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: Almost big data (analysis without Hadoop)
Not: Big data (with Hadoop)
Everyone likes to feel like the Big Man on Campus, and if they aren't, they're
looking for a campus of the appropriate size where they can stand out. So it's no
surprise that when the words "big data" started flowing through the executive
suite, the suits started asking for the biggest, most powerful big data systems as
if they were purchasing a yacht or a skyscraper.
The funny thing is, many problems aren't big enough to use the fanciest big data
solutions. Sure, companies like Google or Yahoo track all of our Web browsing;
they have data files measured in petabytes or yottabytes. But most companies
have data sets that can easily fit in the RAM of a basic PC. I'm writing this on a
PC with 16GB of RAM -- enough for a billion events with a handful of bytes. In
most algorithms, the data doesn't need to be read into memory because
streaming it from an SSD is fine.
There will be instances that demand the fast response times of dozens of
machines in a Hadoop cloud running in parallel, but many will do just fine plugging
along on a single machine without the hassles of coordination or communication.
Hot: Game frameworks
Not: Native game development
Once upon a time, game development meant hiring plenty of developers who
wrote everything in C from scratch. Sure it cost a bazillion dollars, but it looked
great. Now, no one can afford the luxury of custom code. Most games developers
gave up their pride years ago and use libraries like Unity, Corona, or LibGDX to
build their systems. They don't write C code as much as instructions for the
libraries. Is it a shame that our games aren't handcrafted with pride but stamped
out using the same engine? Most of the developers are relieved -- because they
don't have to deal with the details, they can concentrate on the game play,
narrative arc, characters, and art.
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. W hen 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

2/10/2014 1:02 AM

15 hot programming trends -- and 15 going cold

4 of 6

http://www.infoworld.com/print/233343

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, W indows 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: Android
Not: iOS
Was it only a few years ago that lines snaked out of Apple's store? Times change.
W hile the iPhone and iPad continue to have dedicated fans who love their rich,
sophisticated UI, the raw sales numbers favor Android more and more. Some
reports even say that more than 70 percent of phones sold were Androids.
The reason may be as simple as price. W hile iOS devices maintain a hefty price,
the Android world is flooded with plenty of competition that's producing tablets for
as low as one-fifth the price. Saving money is always a temptation.
But another factor may be the effect of open source. Anyone can compete in the
marketplace -- and they do. There are big Android tablets and little ones. There
are Android cameras and even Android refrigerators. No one has to say, "Mother,
may I?" to Google to innovate. If they have an idea, they follow their mind.
Hot: GPU
Not: CPU
W hen software was simple and the instructions were arranged in a nice line, the
CPU was king of the computer because it did all of the heavy lifting. Now that
video games are filled with extensive graphical routines that can run in parallel,
the video card runs the show. It's easy to spend $500, $600, or more on a fancy
video card, and some serious gamers use more than one. That's more than
double the price of many basic desktops. Gamers aren't the only ones bragging
about their GPU cards. Computer scientists are now converting many parallel
applications to run hundreds of times faster on the GPU.
Hot: GitHub
Not: Rsums

2/10/2014 1:02 AM

15 hot programming trends -- and 15 going cold

5 of 6

http://www.infoworld.com/print/233343

Sure, you could learn something by reading a puffed-up list of accomplishments


that include vice president of the junior high chess club. But reading someone's
actual code is so much richer and more instructive. Do they write good
comments? Do they waste too much time breaking things into tiny classes that do
little? Is there a real architecture with room for expansion? All these questions can
be answered by a glimpse at some code.
This is why participating in open source projects is becoming more and more
important for finding a job. Sharing the code from a proprietary project is hard, but
open source code can go everywhere.
Hot: Renting
Not: Buying
W hen Amazon rolled out its sales for computers and other electronics on Black
Friday, the company forgot to include hype-worthy deals for its cloud. Give it time.
Not so long ago, companies opened their own data center and hired their own
staff to run the computers they purchased outright. Now they rent the computers,
the data center, the staff, and even the software by the hour. No one wants the
hassles of owning anything. It's all a good idea, at least until the website goes
viral and you realize you're paying for everything by the click. Now if only Amazon
finds a way to deliver the cloud with its drones, the trends will converge.
Hot: Web interfaces
Not: IDEs
A long time ago, people used a command-line compiler. Then someone integrated
that with an editor and other tools to create the IDE. Now it's time for the IDE to
be eclipsed (ha) by browser-based tools that let you edit the code, often of a
working system. If you don't like how WordPress works, it comes with a built-in
editor that lets you change the code right then and there. Microsoft's Azure lets
you write JavaScript glue code right in its portal. These systems don't offer the
best debugging environments and there's something dangerous about editing
production code, but the idea has legs.
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.
W hatever 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.

2/10/2014 1:02 AM

15 hot programming trends -- and 15 going cold

6 of 6

http://www.infoworld.com/print/233343

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.
Hot: Hackerspaces
Not: College
One costs $250,000 for four years. The other charges about $50 a month, with
big discounts for paying in advance. One uses the money to buy football
stadiums, fancy houses for the president, flashy dorms, and four-color magazines.
The other buys 3D printers, oscilloscopes, soldering irons, and more.
Hackerspaces are stepping up to nurture innovation without the outrageous
overhead of the college industrial complex. They are creating the social networks
that spawn startups and build wealth but without the bureaucracy and foolish
consistencies Emerson called the "hobgoblin of little minds." Courses don't need
to last an entire semester. Students don't need to start campaigning for admission
a year before starting to learn. The ad-hoc nature is fast proving better suited for
the rapidly moving world of technology.
Related articles
Dev-olution: Saluting 19 generations of computer programmers
Quiz: "Hello, world": Programming languages quiz
Quiz: Programming IQ test: Round 3
15 workplace barriers to better code
9 key career issues software developers face
Top 7 dilemmas facing today's developers
7 programming myths -- busted!
10 hard truths developers must learn to accept
11 programming trends to watch
12 programming mistakes to avoid
Safeguard your code: 17 security tips for developers
Download: InfoWorld HTML5 Deep Dive
This article, "15 hot programming trends -- and 15 going cold," originally appeared
at InfoWorld.com. Follow the latest news in programming at InfoWorld.com. For
the latest business technology news, follow InfoWorld.com on Twitter.
Application Development

Application Development

Mobile Development
Web Development

Source URL (retrieved on 2014-02-09 09:59PM): http://www.infoworld.com


/d/application-development/15-hot-programming-trends-and-15-going-cold-233343

2/10/2014 1:02 AM

You might also like