The delays are over, the final approvals are in, and the general availability release of the Java Platform, Standard Edition, 8 (Java SE 8) is right around the corner. What has been called a revolutionary upgrade of one of the world's leading software development platforms is due on March 18. Mark Reinhold, chief architect in Oracle's platform group, has described Java SE 8 as the largest ever upgrade in the history of Java, covering the programming model, as well as a "carefully coordinated co-evolution" of the virtual machine, the language, and the libraries.
This release incorporates several high-profile Java Specification Requests (JSRs), the most talked about of which is JSR 335, Project Lambda. Originally planned for the Java SE 7 release, but pushed back, Project Lambda extends support in the Java language and core libraries to enable the Java SE APIs to use lambda expressions (closures), which are anonymous functions.
Reinhold has called the support for lambda expressions in this release the single largest upgrade to the programming model, ever. Mike Milinkovich, executive director of the Eclipse Foundation, calls it a massive change of the Java language, libraries, and JVM.
"Without a doubt the most important new feature in Java 8 is lambdas," Milinkovich told ADTmag. "This is a sweeping change that modernizes the language, allows for a much more readable syntax, allows for better code generation, and helps the JVM make much better use of multicore processors. Inner classes were always a hack, and having proper closures in the Java language has been a missing feature for a very long time."
The Foundation is releasing Java 8 language support as an add-on to the Eclipse IDE at next week's EclipseCon. That add-on includes a formatter, a code completion feature, code navigation, search and indexing, a reconciler, incremental builder support, and "quick assist" support for migrating anonymous classes to lambda expressions. "I think [that feature] will be particularly popular with Java developers as they migrate their code," Milinkovich said.
Using lambda expressions will, among other things, make it easier for developers to write code for multicore processors. But on a more fundamental level, lambda expressions introduce the idea of functions from lambda calculus into the Java language, making the Java SE 8 release look like a step toward functional programming. The functional paradigm, which emphasizes the evaluation of expressions, rather than the execution of commands, and essentially eliminates the need for program state by expressing all computations in the form of functions that take arguments and return values, is used by such modern JVM languages as Groovy, Scala, and Clojure.
The lambda support in Java SE 8 alone makes it an important milestone for the language and platform, said IDC analyst Al Hilwa, but it's one of several changes that represents significant new functionality in this release.
The list of new features in this also includes the new Date/Time API (JSR 310), Type Annotations (JSR 308), and a set of Compact Profiles, which allow Java SE 8 implementations to scale down easily.
One prominent Java initiative, Project Jigsaw, hasn't been included in this release. The Java-native module system is expected in Java SE 9.
"Generally, programming languages evolve slowly and with great focus on stability," Hilwa observed, "because the code has to continue to run for decades. Meanwhile, new innovations have to be accommodated, and so Java's governance model allows it to be evolved and adapt to new innovation, and this is what we are seeing here."
Oracle is hosting a live Java 8 Launch Webcast on March 25.
Posted by John K. Waters on 03/12/2014 at 10:35 AM0 comments
The long awaited, much anticipated release of Java SE 8 is nearly upon us. March 18th is the official release date, though numerous "launches" and other events will follow. A lot of work went into this release, with contributions coming from many quarters -- including Java User Groups (JUGs) around the world who participated in the Adopt-a-JSR program.
The Java Community Process (JCP), which manages the development of standard technical specifications for Java technology, launched the program in December 2011. Adopt-a-JSR encourages individual members of the Java community -- average developers working with Java day-to-day -- to "adopt" a Java Specification Request (JSR) by following its progress, supporting its expert group, reporting back to the wider community on its progress, and evangelizing its benefits.
The program aims to get JUGs involved in the Java standards process, and through those organizations, to promote "grass roots, developer-level participation in existing and emerging Java standards," the JCP says. The idea it to generate "earlier feedback, leading to more developer-friendly APIs;" "end user/developer expert input;" and to get the developer community to do more of "the heavy lifting."
To get that level of participation, the organization turned to the London Java Community (LJC) with the idea. LJC members Martijn Verburg and Ben Evans got the ball rolling, and the JCP considers the program to be "JUG-led."
"This is one of the best things to happen to the [JCP]," JCP chair Patrick Curran told ADTmag in a recent interview. "It has added some great energy and real enthusiasm."
The initial list of JUGs participating in the Adopt-a-JSR program included SouJava in Brazil, GoJava (Brazil), Houston JUG (US), and Chennai JUG (China). That list now reportedly comprises 20 JUGs, including Belgium JUG, Campinas JUG, CEJUG, Cologne JUG, Congo JUG, Faso JUG, Guadalajara JUG, Hyderabad JUG, Indonesia JUG, Istanbul JUG, Joglo Semar JUG, Jozi JUG, LJC, Madrid JUG, MBale JUG, Morocco JUG, Peru JUG, Silicon Valley JUG, and Toronto JUG.
Participants engage with the program on three levels: Starter, Intermediate, and
Advanced (details here).
The JUG members contributed to many of the signature changes coming in Java SE 8, including JSR 335 (Lambda Expressions for the Java Programming Language), and JSR 310 (the new Date and Time API). The latter effort was led by LJC members James Gough and Richard Warburton.
JUGs have long been a valuable community resource for Java professionals. These volunteer organizations create opportunities to share information and to network, in person, with other Java practitioners. Most groups have some kind of Web presence, and there are some virtual groups out there.
Oracle also sponsors an Adopt OpenJDK program, which was launched in 2012. It has the same goals as Adopt-a-JSR, but focused on the open-source Java reference implementation. The program currently has 147 participants, and is administered by the LJC's Verburg.
Of course, the final release of Java SE 8 on March 18 doesn't end the Adopt-a-JSR program. For more information on how to get involved in work already under way for Java SE 9, go here.
Posted by John K. Waters on 03/12/2014 at 12:28 PM0 comments
There was a time when enterprise application development teams simple threw their code over the wall to the people charged with the task of localizing it. Those days are fading, of course; software developers in medium to large companies have been generating ever greater percentages of their organizations' revenues outside the West for the past decade. And the pressure to "go global" faster is ever increasing.
Consequently, say the industry watchers at the Cambridge, Mass.-based research firm Common Sense Advisory, it's time for the team responsible for adapting U.S.-made software to other languages and cultures (a process called localization) to join the Agile team.
"Agile goes so fast that the other teams supporting it have had to get much closer together," said Director of the Global Leaders Service Rebecca Ray. "Testing, documentation, even the marketing people -- everyone needs to get together. And the localization team needs to work closer with the app dev team, too."
Ray recently co-authored a research report ("Localization at the Speed of Agile: Best Practices for Making the Transition") with her firm's founder and chief strategist, Donald A. De Palma. The report looked at the unique challenges associated with implementing Agile localization through interviews with 21 companies that develop software and faced this challenge.
"Agile is the gateway to integrating internationalization and localization as they were meant to be in the software development process," the authors wrote. "No localization team should pass up the chance to make it happen."
You'd think the spread of lightweight development methodologies among app dev teams would offer a nice solution to this "go global" challenge, but Agile is not a natural fit with traditional localization processes, Ray said.
"Agile is really a different way of developing software," she explained. "It's much more circular than linear, so it basically breaks the more linear processes that have been used for localization in the past. It's a huge change for localization teams."
Yet it's a change that must be made, Ray said. The localization team must become a part of the Agile team from the beginning of a project. If you don't want it to break your software, "localization" must become part of the "definition of done."
"Make sure that you talk to the localization people up front, during design," she said. "When you put together your users stories, the localization people should be in that group. The definition of done has to include localization."
During their research, Ray and De Palma found three common strategies among the companies interviewed for "syncing up" localization teams and developers: 1) "lag one sprint behind developers," which allows localizers to test features that may not be finished until the last minute in the previous sprint; 2) "stay current with each drop," which requires a high degree of automation, especially if sprints occur every two weeks or less; and 3) "sync up when most of the user interface (UI) work is complete," which allows the localization team to avoid the huge churn in features that usually happens within the first few weeks after development begins.
The report emphasizes the importance of automation to the success of an Agile localization effort. "Things have to be automated enough so that the translation management software can be connected directly into the source code repositories," Ray said. "That way, the software can just pick up whatever strings have changed and shoot them off to the translation/localization provider."
Also, the integration of localization with Agile doesn't have to be an all-or-nothing proposition, the researchers suggested. "There are certain things you must get right and places where you have to align or integrate localization with product development processes," they wrote. "However, you don't need to attend every single Scrum, translate every iteration of every string, or deliver 100% human translation for all sprints. If you spend too much time creating a perfectly Agile process, you will likely lose much of the adaptability and flexibility that comes with the model."
The reprioritization of localization from a last-minute consideration mirrors in some ways the status evolution of software testing from the ugly stepchild of the software development process. Proper localization can be a matter of life-and-death when it involves medical devices or automotive applications.
"I want to be sure that the doctor in Turkey can read my MRI output," Ray said. "And when my Toyota Prius arrives, it better speak English to me, and it better speak it well. There can't be any mistakes in that dashboard."
"People should keep in mind that this should not be painful," she added. "It should just be, this is another business process, and here's what we need to do."
An extract from the report is available on the Common Sense Advisory Web site.
Posted by John K. Waters on 03/07/2014 at 9:53 AM0 comments
I've been covering tech trade shows and user conferences for more than two decades, and last week's RSA conference was the first in my experience to include a comedic keynoter who actually understood the technology and the issues surrounding it. Stephen Colbert, host of Comedy Central's "The Colbert Report," gave the conference closer in San Francisco on Friday to a packed house, and killed.
"RSA developed this conference in 1991 as a forum for cryptographers to gather and talk shop," Colbert said, "and I assume breed with one another. Of course officially that's called exchanging private keys."
Colbert kidded conference organizers for booking FBI director James Comey as a speaker, and noted the director's comment that "At our best, we are looking for security measures that enhance liberty."
"Well said director," Colbert said. "I'm sure that under enhanced liberty you can have all the privacy that you want-just like under enhanced interrogation you can breathe all the water you want."
He also dinged Scott Charney, head of Microsoft's Trustworthy Computing group, who also spoke.
"Not everyone can book a speaker from an Orwellian dystopia," he said. "I look forward to next year's speech from the executive director of Sweet Dreams Euthanasia Clinic, Incorporated."
Colbert laid into NSA leaker and conference buzz hog Edward Snowden during his talk, calling him "practically a war criminal" for taking top secret U.S. intelligence to China and then to Russia. "Was Mordor not accepting asylum requests?" he asked. (He's a known hardcore Tolkien fan.)
He also had a few choice words for the NSA: "We can trust the NSA," he said, "because without a doubt it is history's most powerful, pervasive, sophisticated surveillance agency ever to be totally pwned by a 29-year-old with a thumb drive."
Colbert addressed the boycott of the conference this year by 13 digital security experts, who canceled their talks after Reuters reported that RSA, the conference organizer and chief sponsor, had a $10 million contract with the NSA to set as the default in their encryption products a flawed formula for generating random numbers, which effectively created a back door.
Activists from Fight for the Future appealed to Colbert to join their boycott in an open letter, which read in part: "We know you, Stephen, and we know you love a good 'backdoor' joke as much as we do-but this kind of backdoor is no laughing matter...We want to hear your speech, but give it somewhere else!"
"The elephant in the room is that I was asked not to come [and] speak here," Colbert told his audience. "That came as something of a shock to me. Normally I'm asked not to be somewhere only after I've spoken."
"I looked at the signatures on the online petition," he added. "Then I looked at the signature-my signature-on the bottom of the contract saying I'd be here today, and my conscience was clear, as long as the check clears...Well, it's not actually a check. They gave me a bitcoin voucher from Mt. Gox, and I'm sure it's going to be fine."
At one point, Colbert offered a kind of acknowledgment of the American people for their support of the NSA's programs.
"We all deserve credit for this new surveillance state that we live in," he said, "because we the people voted for the Patriot Act. Democrats and Republicans alike. We voted for the people who voted for it, and then voted for the people who reauthorized it, then voted for the people who re-re-authorized it."
Colbert also pitched his own data security venture, CloudFog. "We take a novel horizontal approach to vertical socket encryption," he said. "The result can only be described as diagonal."
Here in Silicon Valley, smart often equals rich. I'm glad to see it sometimes equals funny.
Posted by John K. Waters on 03/03/2014 at 3:27 PM0 comments
It's been a while since I attended a conference keynote presented by a speaker as apparently pissed off as Nawaf Bitar, senior vice president and general manager at Juniper Networks. His RSA Conference talk, entitled "The Next World War Will be Fought in Silicon Valley," was seasoned with infuriation and rife with get-off-your-butt admonitions.
"Our privacy is being invaded," he said. "Our intellectual property is being stolen. The public trust is at an all-time low. The attack on our information is outrageous. But you know what? I don't think we give a damn. I'm fed up with talking about outrage. It's easy to talk about outrage."
He then went on to compare what he considered true outrage -- the self-immolation of Tibetans protesting China's rule of their country, Nelson Mandela's refusal to renounce his views in exchange for release from prison, and the Tiananmen Square protests of 1989 -- with "liking" a cause on Facebook, retweeting a link, posting a bad review, and boycotting a tech security conference (referring, one assumes, to the 13 speakers who canceled their scheduled talks at the event over allegations that RSA agreed to incorporate a flawed encryption formula into one of its security products to satisfy a secret $10 million NSA contract.)
The second group, he said, are examples of "a new American disease," which he called First World Outrage.
The problem is, we're not really paying attention, Bitar declared, even when we're warned in no uncertain terms. He pointed to a Wired article (http://www.wired.com/threatlevel/2012/03/ff_nsadatacenter/) by James Bamford published in 2012 entitled "The NSA Is Building the Country's Biggest Spy Center (Watch What You Say)," which quoted an unnamed U.S. intelligence official: "Everybody's a target; everybody with communication is a target."
"We were explicitly told that we would be spied upon," Bitar said. "There are data centers and data closets all over the world collecting an unprecedented amount of our personal information…. We now know with stunning clarity how deeply our privacy is being invaded. What's really changing?"
Not that we would sit still for everything, Bitar allowed. Threats to families and livelihoods never fail to move people to action. If Edward Snowden's NSA revelations had raised our taxes, he argued, there would have been rioting in the streets. But it's "high time" that we added our information to that very short list of things we truly care about.
We are now facing the unintended consequences of our response to 911, he said, which, among other things, fueled a well-meaning U.S. government to build an information collection system "the like of which the world has never seen."
"Fast forward to today, and we have direct evidence of the depth and breadth of this information collection," he said. "The meta data of our phone calls. Backdoor access to systems. Deciphering encryption keys. Spying on companies. Spying on everyone!"
We should also be concerned (if not actually freaking out) about the changing threat landscape, he said. The past five years have seen attacks against nuclear sites, power grids, and the intellectual property of companies by hactivists, thieves, and increasingly nations seeking to exploit weaknesses in the "cyberfabric" of other nations. Government officials have voiced concerns that cyber attacks might now pose a greater threat than terrorism.
In fact, a cyber attack could, he asserted, lead to actual war.
"If an enemy shot down one of our passenger airliners, we would go to war," he said. "If a nation state compromised our air traffic control system and two passenger airliners collided, would we not also go to war?"
It took him a while to get there, but Bitar finally arrived at his call to action.
"Our information is being stolen," he said. "As individuals and citizens, we should be truly outraged -- not first-world outraged. The time for apathy is over. We cannot go on the offensive and hack back; we would lose the moral high ground. But we can no longer remain passive. It's time for a new type of defense, an active defense that disrupts the economics of hacking and challenges convention, a type of defense that interferes with the attackers, that breaks algorithms, that disrupts data collection. It's time for all of us to turn the tables on the attackers."
Bitar's concerns are not new, of course, and he offered no specific solutions. But his effort to create a kind of historical context for the current state of affairs in the world of cyber security was engaging, and his unvarnished outrage was refreshing. He didn't set himself on fire, so I'm not sure whether he could be faulted for expressing First World Outrage, but judging by the audience response to his talk, I suspect that he might have lit a fire under at least a few attendees.
Posted by John K. Waters on 02/26/2014 at 10:29 AM0 comments
There's a lot on the horizon for developers in 2014, and I just couldn't let the "predictions" thing go without passing on the observations of two more top industry watchers.
Theresa Lanowitz, founder of industry analyst firm Voke, for example, points out that catastrophic software failures in 2013 could make 2014 the year enterprises begin dialing back the pressure on app dev teams to get to market at warp speed. Why? Because businesses are being held accountable for these software failures. The shutdowns and glitches that plagued U.S. financial exchanges last year resulted in a credit rating downgrade (Goldman Sacks), a major contract termination (CGI Federal for healthcare.gov), and IT people being put on administrative leave.
"I believe that's the first time we've seen repercussions for the technology side," Lanowitz said. "The constant relentless push to get things to market faster is coming back to haunt us. Software is now such an integral part of the enterprise that failures have a serious impact. Businesses can't afford to absorb these big failures. Customers will give you only so many passes. And when Standard & Poor's says they are going to downgrade your credit rating and that you have to have a liquid capital reserves on hand to pay out for damages your faulty software causes… Well, the C suite is suddenly interested in software."
Time-to-market still matters, Lanowitz said, but more than ever, so does software quality. Those conflicting demands are likely to lead to enterprise developers to embrace what she calls "extreme automation."
"Developers are going to have to say, all right, what can I do to make sure that we are delivering on time, but also with a high degree of quality, while understanding my cost and knowing what's going to happen when we have a defect in production when there's a catastrophic event," she said. "I think we're going to see developers answering that question more often in the coming year with extreme automation across the entire application lifecycle."
Essential for this level of automation, she said, is service virtualization, which she believes, though currently underutilized, could become the hub of the modern application lifecycle.
"The app lifecycle needs to be built using things like service virtualization, virtual lab management, and dev/test cloud," she said. "You want to give developers and testers environments as close to production as possible, so that the testers can test and immediately give developers the defects to remediate. This approach also reduces the provisioning time; developers and testers don't have to wait for lab environments. And you want to be able spin up a platform very quickly, and then replicate that platform throughout your software supply chain."
According to Voke's research, organizations that employ service virtualization in this way see significant benefits, Lanowitz said, including fewer defects going into production, shorter wait times, and an increase in the availability of services for end-to-end integrated testing.
"I think the term 'virtualization' has become too closely associated with the data center, and people don't think of it in this context," Lanowitz said. "But this is a technology that spans the entire application lifecycle. Now it's just a matter of education."
Forrester Research analyst Randy Heffner says 2014 should be the year developers begin to focus seriously on what he calls "digital business design," which is an integration strategy that sees the trends that will likely dominate the coming year -- big data and predictive analytics, mobility, and API management -- as pieces of a larger picture.
"There are no stand-alone applications anymore," Heffner said. "So don't design your application as though it is one. Your app will be integrated across a multi-organization ecosystem of business activity. So design the business activity first. Design the transaction, and then figure out how to embody it within the delivered solution. This business-first approach is going to be the key to bringing these trends together in a coherent way that enables sustainable business flexibility going forward."
Heffner also advised developers not to let their enthusiasm for REST architectural style cause them to miss the continuing value of SOAP.
"There are a lot of what I call quarter truths out there about SOAP," he said. "Of course, REST is very important, but don't fear SOAP. Understand when and how to use them. On the open Web, you'd better be using REST, because that's what developers demand. For BtoB situations, companies are often willing to invest a bit more, and often they're using toolkits where SOAP is easier to use; they're not scripting-language-based, but Java- or C++-based. The truth is, there's a lot of expansion still happening with SOAP."
"Just be wary of those who get very religious about REST -- you've got to have these particular models and you have to use verbs in this way and that way, etc.," Heffner added. "What will rule the day is pragmatic REST, designing to fill the right kind of model based on what you need to do."
Posted on 02/05/2014 at 11:06 AM0 comments
It was during a break in the action long ago at the 2004 JavaOne conference that I found myself sitting in the W Hotel restaurant in San Francisco across from an earnest Canadian dude whose name I mispronounced twice during the interview, as he explained how IBM would really (no, really) keep its Big, Blue mitts off its relatively recently open-sourced, Java-based tooling platform, code-named Eclipse.
"They'll be involved, of course," said Mike Milinkovich, the first (and to date, only) Executive Director of the then-spanking-new Eclipse Foundation, "but as a member of the community only, without undue influence. With a little time, we'll prove that. We want people to have confidence in this technology."
I was skeptical (so was just about everybody), but IBM kept its distance, and the budding Eclipse community bloomed and spread far and wide over the next decade, virtually terraforming the IDE landscape in the process. Milinkovich and the Foundation cultivated that growth with vendor-neutral governance practices and what proved to be one of the most effective models for community open-source development.
Today, the Eclipse Foundation marks its 10th anniversary, and Milinkovich took the time to put up with my questions yet again. I reminded him of our first meeting back when he'd been on the job for about a month.
"Looking back, I'd have to say that credit for a big part of the community's early success should go to IBM, which did an exemplary job of setting Eclipse free," he said. "We became the first open source organization to show that real competitors could collaborate successfully within the community. When BEA and Borland joined in 2005 as strategic members, they effectively validated our claim of vendor neutrality. Both were important, but BEA in particular was a fierce IBM competitor at that time. Having BEA demonstrate that it was comfortable enough with our governance model to participate was a major milestone."
The impact of the Eclipse Foundation over the next decade is hard to overstate. When IBM released Eclipse to open source in November 2001, it was essentially a version of its WebSphere Studio Workbench, which the company then characterized as "a kind of universal tool platform -- an open, extensible IDE for anything, but nothing in particular." That release was a strategic move, Milinkovich said, to ensure that the fragmented Java tools market would have sufficient market share to compete with Microsoft's Visual Studio franchise.
"Given that there are now effectively two major tooling ecosystems -- Eclipse and Visual Studio -- I think it's fair to say, mission accomplished," Milinkovich said.
But perhaps more importantly, under the auspices of the Foundation, that "open, extensible IDE for anything, but nothing in particular" became the jumping off point for a remarkably diverse community responsible for, as the organization puts it, "a wide range of technologies, including rich client platforms; modeling; Web-based development tools; Java server runtimes; and frameworks, protocols and tools for the Internet of Things."
That most people still think of Eclipse as primarily Java tech continues to vex Milinkovich.
"If there's one thing I wish people would recognize, it's that with projects like Vertex and Jetty and Orion and EclipseLink and Equinox and on and on, there is an enormous variety of technology coming from the Eclipse community," he said.
Since the Foundation was established, it has grown from 50 members engaged with 19 projects to 205 members engaged with to 247 projects, including the totally-not-Java CDT Project, which provides a fully functional C and C++ IDE that has become the de facto standard development environment of embedded systems.
The foundation has also been responsible for a set of best practices for open-source IP management that has led to "pervasive use of Eclipse open source technology in commercial products," the organization pointed out in a statement.
But in my view, the Foundation's greatest accomplishment so far is its annual Release Train. This simultaneous, synchronized launch of Eclipse projects was one of a kind in the open source world when it was announced nine years ago. The first Eclipse Release Train, dubbed "Callisto," comprised 10 projects; the "Kepler" release last June included 71 projects comprising 58 million lines of code written by 420 committers in 54 supporting organizations.
"I agree that this is a big one," Milinkovich said. "The Release Train allowed us to show that it's possible to have a vendor neutral, open-source organization predictably ship commercial-ready software that companies can adopt in their products. And we did it in a way that provides for an explicit role for corporate members, while also making sure that the community is still represented in the governance. It's been a huge part of our success."
Much of the credit for the Foundation's efficacy should go to its highly professional staff, Milinkovich insisted. He also insisted on naming everybody during our interview, but I'm just going to do it with a link to the staff page.
Milinkovich has been in the catbird seat for an awful lot of changes for developers, and I asked him what stood out for him as the most significant in the past decade.
"One of the things that has completely changed over the past ten years is the way technology is being procured," he said. "If you don't have an open-source offering that provides for frictionless adoption by developers -- where they don't have to involve procurement to try your technology -- you basically can't sell. There are still a few exceptions to that, but when was the last time you heard somebody say that they were going to do a six-month proof of concept, hire two consultants, and get a vendor to come in and show them how the technology works? Ten years ago, that's how it was done. There has been a fundamental shift in that process that I think has put developers in the driver seat in selecting the technologies for the applications being deployed."
The Foundation issued a press release today that included a comment from Stephen O'Grady, Principal Analyst at Red Monk, that summarizes the importance of Eclipse Foundation pretty well, and bears including here: "Having begun its life as a bold experiment in corporate open source contribution, the Eclipse Foundation has, over the past decade evolved from a focused Java development project to a diverse community supporting a wide array of languages and needs. From browser based development to the Internet of Things, Eclipse is always willing to rethink its role and adapt itself to the fast changing industry around it."
Many happy returns of the day.
Posted by John K. Waters on 02/03/2014 at 9:42 AM0 comments
The coming year is fraught with challenges for enterprise developers, but it's also full of opportunities, say top industry analysts -- if you keep your eyes on a few key trends.
Eric Knipp, who manages Gartner's burgeoning Application Platform Strategies research team, puts the growing importance of the user experience (UX) at the top of his list of developer challenges for 2014.
"With so many device types out there, with the Web evolving, with the Internet of Things coming along, fast, we're getting constant questions from our clients about how to reduce the interactive friction experienced by both internal and external users of their software," Knipp told ADTmag. "And the fact is, inside most large enterprises most of the developers just don't have the chops to do that well."
This gap in UX skills in the enterprise is a fundamental problem, Knipp said, because the developers building the applications and designing the interaction patterns are typically not familiar enough with how the users of those apps interact with that software to do their jobs.
It's an old problem, he said, but a new opportunity.
"UX is one of the big things to get your arms around in 2014," he said. "It presents a great opportunity to outpace your competitors if you do, especially if you recognize that it isn't just important for consumers using your mobile app, it's also important to the productivity and satisfaction of your internal employees."
Another opportunity Knipp sees ahead for developers comes from what might for many be an unexpected place: crowdsourcing and hackathons.
"The enterprise is finally taking an interest in crowdsourcing AD," he said. "The question of how enterprises source apps -- do we build them ourselves, do we hire a third party outsourcer, do we buy them off the shelf -- now has a third answer. Most organizations don't get it yet, but they will."
Crowdsourcing also gives developers a chance to sharpen their skill sets, he said.
"Say, I'm doing boring old Java EE at my day job, which pays the rent very well, but I want to do Node.js," he said, "or native iOS development or Ruby on Rails with deployment into Heroku. The bank I work at doesn't provide opportunities for me to do that. You can sharpen your skills in contests in crowdsourcing forums where the applications that you're building are increasingly enterprise class. This is a great opportunity for individual developers. If you want to sharpen your tool box, this is a fantastic place to do it."
That crowdsourcing trend points, if indirectly, to another trend: the social organization of developers. Jeffrey S. Hammond, vice president and principal analyst at Forrester Research specializing in application development and delivery, calls it The Emergence of Social Development.
"The social consciousness of developers is changing their orbits, so to speak," Hammond said. "It used to be that developers clustered around big ISVs, such as Microsoft, IBM and Oracle. Those vendors were the planets around which the developers revolved. I believe those 'planets' are increasingly the open source communities, like Eclipse and Apache and Hadoop. GitHub is part of it, too. As the gravity shifts to communities from vendors -- and open source communities in particular -- they become much more important. And much more influential."
The implication here is that the developers themselves could well be calling more of the shots somewhere down the road.
"In a way, I see the software dev space going the way the music industry and the movie industry have gone, where the race for talent gives talent a much bigger say," he said.
Looking ahead to 2014, Hammond said it's simply a great time to be a developer.
"This is a big change from six or seven years ago, when people said all the development was going to China. I've seen that prediction completely turned on its head. That may be the case for maintaining existing systems, but for new systems, if you know this stuff -- if you know Node.js and you know how to use Bootstrap -- you can name your price these days."
Hammond is developing a new report on the shifting orbits of developers, and Knipp is working on a paper about developer crowdsourcing. I'll let you know when they're published.
Posted by John K. Waters on 01/28/2014 at 10:00 AM0 comments
Now that the confetti has settled, I thought it would be a good time to talk with industry mavens about what lies ahead in the coming year for developers, both the challenges and the opportunities.
Not surprisingly, many of the industry watchers I spoke to agreed that machine-to-machine learning (M2M) and the Internet of Things (IoT) offered enormous opportunities for developers to get into the embedded space. "Having the Java people get involved will make it easier for those not familiar with this space," said Michael Azoff, principal analyst at Ovum, "but [coding for] real-time systems is a skill and requires some domain expertise. It's not a pure software space, but demand will be huge for the skills."
Azoff also observed that 2014 will continue to see niche languages like Erlang, Scala, and Lisp finding a place in more developers' tool boxes, as Java continues its evolution with lambda expressions, which are coming in Java 8. The ability to add functional programming features to Java "could be the next big programming paradigm shift," he said. "It's the one to watch."
IDC analyst Al Hilwa sees 2014 as "the age of the API redesign." "We are entering the golden age of APIs," he said in an email. "API design becomes a mainstream developer discipline. Organizations re-design APIs to new realities of mobile networks and devices. API marketplaces proliferate. API management will be essential." He also said that, despite its growing popularity and maturity, HTML5 will not replace native mobile app development through 2017. Instead, HTML5 will co-exist with native development, he said. APIs that enable Web pages to use the WebSocket protocol will see increased use in mobile development, for example.
2014 is rife with buzzwords, but a few -- mobile, cloud, big data, and social -- comprise what Gartner Group calls a "nexus of forces." Each has a separate impact, explained Gartner analyst Mark Driver, but together they're causing profound changes. The challenge for developers lies in creating a synergistic relationship among these forces, he said.
"Building a mobile system for example isn't just about building a mobile system," he said. "It's about all the things you have to do to feed that system and integrate with it. You start asking questions like, How will a mobile system cause me to have to go back and undo all of my existing Web architectures that I've had in place for ten years? How does big data affect how I do these things? What new frameworks and best practices to I have to bring in to build truly cloud-native applications? It really is a challenging time for developers."
Mobile is somewhat central to that challenge, Driver said. "Mobile is now assumed to be an element of virtually any new project in the enterprise," he said, "which is about much more than simply shrinking a screen down to fit on a smart phone. It's not only a separate set of tools and languages, it's a different way of building applications, like the reactive programming model, for example, which involves architectures for systems that deliver highly responsive user experiences with a real-time feel -- architectures that are relatively new to a lot of enterprise developers."
Mobility is key component of in a list of strategies that have created a new "business reality" for developers, said Dana Gardner, principal analyst at Interarbor Solutions. But 2014 could offer new leadership opportunities for developers as businesses acclimate to new mobile-first, cloud-first, and data-centric strategies. Developers, he said, are in a unique position to help move companies forward in ways that others in IT are struggling with.
"We're now adjusting to this new business reality," he said, "and software has never been more critical. Developers can advocate -- from their vantage -- on how best to define strategy and how to attain it. They could, for example, align with line of business managers on key business objectives and requirements, and then sell that together to the operations and IT leadership. They can, in effect, lead, thanks to disruption; they can put the horse firmly in front of the cart, where it belongs."
"So if developers or app dev groups can advocate now for what they believe is right to get to mobile-first using cloud-best to then produce and deliver the data and analysis where it does the most good," he added, "they will immensely help their company, while improving their credibility, standing and worth. They might even make it a better place to work at and thrive."
Posted by John K. Waters on 01/21/2014 at 11:53 AM0 comments