I know, it's February, but I reached out to a lot of smart people last month for their thoughts on what lies ahead for enterprise developers in 2016 -- more than I could squeeze into parts 1 and 2. In addition to industry analysts, I connected with some of the thoughtful execs I spoke with last year.

Martijn Verburg, for example, sent me an intriguing list of predictions. Verburg is the CEO of jClarity, which focuses on automating optimization for Java and JVM-related technologies, and he serves as co-leader of the London Java Users Group. Last year he predicted that developers would begin to feel a new pressure to fully understand DevOps and virtualization, "or be left scratching their heads when their apps fail miserably in their private or public cloud deployments." This year he added containerization to the trends that will stress developers in 2016.

"Docker has now moved beyond the mass adoption curve and is more or less here to stay," he said, "although many SA's won't touch it for production. Interestingly some of the DevOps tooling (Chef, Puppet, Ansible) will become less important as developers cobble together containers running services instead. For example, we used to Chef up a Host with Java, MongoDB, and a host of other software. Now we just deploy a set of Docker containers that all contain one major service each (MongoDB, or Java or Foobar)."

"The wise developer who really starts to utilize Docker in test will be the productive developer," he added. "No more relying on QA infrastructure, just bring up and down containers as you need! Extremely wise developers will not rely on the results of performance testing on container based architectures, unless they mimic production."

He also believes that microarchitectures "will continue to be much hyped, seriously abused, and difficult to co-ordinate and maintain." But we should also expect to see some good tooling emerge by the end of the year.

Jonas Bonér also sent me a list of prognostications. Bonér is the CTO and co-founder of Typesafe, the company behind Scala, the general purpose, multi-paradigm language that runs on the Java Virtual Machine (JVM), and Akka, the open-source run-time toolkit for concurrency and scalability on the JVM. Last year he said that he expected container-based infrastructures to continue to make life easier for the developers who adopt them. He pointed to several technologies driving this trend, including Docker, Apache Mesos, Google Kubernetes, and CoreOS. He also said that the game-changing impact of Java 8 would continue throughout 2015 as adoption spread -- which would have the interesting side effect of allowing more functional style programming.

In the coming year, Bonér expects microservices to "graduate" from an early adopter tool to "the first wave" of real mainstream adoption. The reason: The technical constraints that held microservices back -- things like single machines running single core processors, slow networks, expensive disks, expensive RAM, and organizations structured as monoliths -- are gone.

"Networks are fast, disks are cheap (and a lot faster), RAM is cheap, multi-core processors are cheap, and cloud architectures are revolutionizing how we design and deploy systems," he said in an e-mail. "In 2016 we have a much more refined foundation for isolation of services, using virtualization, Linux Containers (LXC), Docker, Unikernels, and Reactive runtimes like Akka. This has made it possible to treat isolation as a first class concern -- a necessity for resilience, scalability, continuous delivery and operations efficiency -- and has paved the way for the rising interest in microservices-based architectures, allowing you to slice up the monolith and develop, deploy, run, scale and manage the services independently of each other."

"The need for building Reactive applications is driving people towards microservices," he added, "and Reactive power users in particular already claim a very high incidence of building microservices." To support that claim, he points to a recent survey, the results of which are post on the company's Web site. (It's well worth reading.)

Bonér also expects a growing number of "Fast Data" tools and libraries to embrace Reactive Streams, an initiative to provide a standard for asynchronous stream processing with non-blocking back pressure. He pointed to such Reactive Streams-compatible products as Akka Streams, upcoming Java 9 Flow and Spark Streaming, Gearpump, Jetty, Vert.x and Cassandra.

Verburg also sees Reactive/Dataflow style applications becoming increasingly popular in the coming year, but also increasingly misunderstood, because of a lack of visual tooling support. He also recommended the Vert.x tool for Java JVM developers.

I also received an interesting list of predictions from Docker, and I had a chance to talk about them with Scott Johnston, the company's SVP of Product Management. His company sees containers becoming "the prevalent mechanism for application development and deployment" in the coming year, thanks to advancements in 2015 around container security, manageability, storage, networking, which are driving rapid growth. He pointed to an O'Reilly report ("The State of Containers and the Docker Ecosystem 2015," which shows that 40 percent of organizations using Docker have it in production currently, and that those numbers are expected to rise sharply in the coming year. (Another report you should read.) He also pointed out that downloads of Docker images have risen from 67 million in December 2014 to 1.2 billion last year.

"Think of Containers-as-a-Service as a platform for development teams to get the agility they need to build, ship, and deploy containers, while giving Ops the control they need to adhere to governing and regulatory standards and uptime SLAs in the datacenter," Johnston told me. "It's the notion of Ops standing up infrastructure that is container-ready and aware, while providing a self-service interface for the development teams to use to pick up the containers they've made and deploy them and manage them in production. We're trying to balance the agility needs of the Dev organization with the control needs of the Ops org."

"CaaS will succeed without requiring organizational changes as seen with the rise of DevOps," the company stated, "eliminating the need to retool and re-skill by refocusing on what Ops can do for Dev through integration of core and container technologies, thereby creating a more circular pattern of collaboration."

"At the end of the day, whether you're in Dev or Ops, the business of IT is shipping apps that deliver value to the business," Johnston said. "So it helps for devs to carry pagers, to make sure the apps they're shipping maintain the quality they need, and thereby get a little taste of the Ops world. And it makes sense for Ops to push toward the Dev side, to get their hands a little dirty with code so they understand how the code is working, so they can make sure they create environments that will stand it up."

Johnston said we should expect to see the balance between Dev and Ops—between agility and control—improve in the coming year as container-based services become more "Ops-led" and less of a Dev-only model. Dev and Ops will share the development lifecycle, his company predicts, with Ops setting up development environments in which everything, from security to management, is baked into the platform. And containers will move beyond Dev and Test to become a production mainstay, thanks to the integration of enabling technologies from the container ecosystem, as well as accelerated innovation from de-facto container leaders.

"Apps are increasingly where the value is," Johnston said, "and lower-in-the-stack layers are increasingly becoming commodities. In some ways that's just a continuation of that trend we've seen with hardware and operating systems."

News that Oracle Corp. plans to deprecate the Java browser plug-in in JDK 9 prompted a rousing chorus of "Ding Dong the Witch is Dead" from the Internet last week. But the news came as no surprise. A growing number of browser vendors have either stopped supporting the plug-in or announced plans to do so. (Flash and Silverlight, too.)

Dalibor Topic, a member of Oracle's Java Strategy Team, posted the news on the Java Platform Group blog. "With modern browser vendors working to restrict and reduce plug-in support in their products," he wrote, "developers of applications that rely on the Java browser plug-in need to consider alternative options such as migrating from Java Applets (which rely on a browser plug-in) to the plug-in-free Java Web Start technology."

Java Web Start is a framework designed to allow users to download and run Java apps from the Web. It has been included in the Java Runtime Environment (JRE) since the Java 5.0 release.

The vulnerability of Java in the browser, which was largely the result of the way Oracle bundled the extension with the JRE, has been a thorn in Oracle's side for awhile now. Back in 2013, when the plug-in was the target of some high-profile breaches, Oracle's senior product security manager, Milton Smith, told Java User Group (JUG) leaders during a conference call that the company's chief security concern was Java plug-ins running applets on the browser. "A lot of the attacks that we've seen, and the security fixes that apply to them, have been [about] Java in the browser," he said. "It's the biggest target now."

"Browsers are powerful gateways, and when they're used as platforms for extensions from other vendors (for example, Java from Oracle or Flash from Adobe) the picture of management and accountability for security becomes complicated," Smith added. "This is why the industry is shifting to HTML5 for browser applications, so that the browser vendors own the security of the platform end-to-end."

IDC analyst Al Hilwa agrees. "The browser plug-in has been problematic," he said in an e-mail, "but more importantly, in the face of trends in client-side software development, it makes great sense to clean things up now. The world is shifting to HTML5, and while there are legacy apps that use Java and Flash, they are likely slotted to be rewritten to operate without a plug-in. For Java this is a positive step to reduce its complexity and surface area, and focus it on staying current."

Martijn Verburg, CEO of jClarity, a start-up focused on automating optimization for Java and JVM-related technologies, and co-leader of the London Java Users Group, said that deprecating the plug-in has been on Oracle's to-do list for a long time.

"This has been a long term strategy of Oracle for a very long time," he said via e-mail. "I suspect they just needed to get enough of their customers comfortable with it before they could officially decide on a time frame. It's a good thing for the world, although this decision won't have any practical impact for a number of years yet. Some businesses/organizations will complain, but this is a reality of doing business in the modern information age. IT infrastructure is a core part of any business, and companies/organizations that ignore this fact will continue to get caught out, it's another wake up call for senior management who still have outdated thinking on this."

Oracle plans to make JDK 9 generally available in early 2017. Early access releases are available now for download and testing. It's safe to say few will complain about the absence of the plug-in.

We're only a month into 2016 and it's already shaping up to be another lively year for enterprise developers. Mobile, cloud, DevOps, IoT, microservices, the API economy, cognitive computing, virtual reality -- all are reshaping organizations in fundamental ways, and it looks like devs are going to have a large role to play in that change.

Analyst Clive Howard, who keeps an eye on the mobile and IoT space for UK-based Creative Intellect Consulting, expects 2016 to be the year most companies figure out what all this stuff actually means for their businesses. Projects that have hovered mostly around the edges will find their way into the heart of the enterprise, and a few -- IoT, cognitive computing and cloud -- will mature as a "progressive few" organizations "begin to shape them into exciting new products that will start to appear in 2016 but really emerge in 2017+," he said.

Howard also expects IoT to continue to pull in developers, both consumer and enterprise, with the action heating up on the enterprise side. Mobile B2B and B2E (Business to Employee) will grow significantly, he said, which means and more developers within organizations will be involved in mobile—which means lots of people are going to have to buff up their skill sets.

Meanwhile, non-developers are likely to be more involved in enterprise development, Howard predicts, via so-called low-code tools and services. Given the current skills shortage, it's likely that companies will create strategies that embrace these non-developers, he said.

The coming year will not, however, see the hype around connected cars and wearables live up to the reality, he said. "I think there will be little activity [around connected cars] outside of those already involved in the car industry," he said. "Cars are probably heading to the top of the hype bubble. And wearables will go nowhere in 2016, certainly in terms of the consumer. Industrial use cases may see some interesting developments, but not at significant scale."

Another UK-based analyst, Gartner's Gary Olliffe, sees the growing interest in microservice architectures as something of a harbinger, signaling a rediscovery of the value of service orientation. "Enterprise developers are waking up to good old fashioned architecture principles that aren't new," he said. "Microservices are a kind of beacon, showing them the benefits of those principles and how they can apply them to their own work.

"Developers are excited about microservices, because they allow them to simply their development stack, chose optimal technology, and not have bloated middleware forced upon them," he added.

Microservices have gained enough mindshare that even though most organizations are not trying to, say, replicate a Netflix-style microservice architecture, they're learning from that example, and feeding that knowledge back into the business, Olliffe said. In 2016 microservices will have an impact on most enterprises delivering anything that needs to be exposed or managed as a service, he said,

One bump on this particular road: no true microservice platform. "The tools to help you get your feet wet are easily accessible, and have become more so in the past 18 months," he said. "But the vendors have yet to step up and really provide a true microservice platform for developers. We're not seeing what you might call the next generation of app servers, the platforms onto which I deploy my units and which handles all of the complexities of the outer architecture."

Microsoft's Azure Service Fabric comes closer to providing more rapid developer productivity in that environment, Olliffe said. But to actually manage and operate tens or hundreds of instances of multiple microservices in production is a whole different game, he said. The app lifecycle teams that increasingly include coders, integrators, architects, operations, and QA, have yet to really get their arms around these environments, he said.

Microservices are poised on the edge of the phase of Gartner's hype cycle known as "The Trough of Disillusionment," Olliffe said, which follows "The Peak of Inflated Expectations." During this phase, people focus on a technology's shortcomings and limitations, and a few products fail. But he expects developers to dig in and figure out what really works, prompting speedy progress to the "Slope of Enlightenment," followed by the "Plateau of Productivity."

As we reported earlier, Java won TIOBE's annual popularity contest for 2015, and came in a close second among languages used on GitHub, even though everybody and his brother seemed to be predicting Java's decline last year. This is why covering this beat often makes my head hurt. How can Java be on its way out when it's more popular than ever?

Turns out, you could argue that both are kinda true.

"We have seen a decreasing focus on Java EE," Gartner analyst Mark Driver explained. "Very few of the companies I talk to are doing new Java EE projects. They're using lighter versions, doing a lighter stack. But you shouldn't confuse Java EE with Java. In the enterprise today, it's about Java SE. Java SE 8 was probably the most innovative change we've seen in Java in 20 years. At the same time, we're seeing growth in Java-VM-based languages, like Scala and Groovy. If you're just watching the sexy stuff -- the cloud, IoT, microarchitectures, containers -- you could miss that Java and .NET are the only enterprise platforms with real breadth and depth today."

Gartner's Pace-Layered Application Strategy provides a nice framework for understanding what's going on here. Introduced in 2012, the strategy is a methodology for categorizing applications and developing a differentiated management and governance process that reflects how they are used and their rates of change.

The strategy defines three application categories ("layers") to distinguish app types: Systems of Record, which refers to established packaged applications or legacy homegrown systems that support core transaction processing and manage the organization's critical master data; Systems of Differentiation, which refers to apps that enable "unique company processes or industry-specific capabilities;" and Systems of Innovation, which refers to new apps built on an ad hoc basis to address new business requirements or opportunities.

"I have seen a remarkable decline of Java in Systems of Innovation," Driver said. "This is the next-gen, high velocity stuff -- areas where people have turned to alternative technologies, like Node, JavaScript, Ruby, and Python, and at the bleeding edge, Golang. But Java still retains extremely heavy control over Systems of Differentiation. The more mission-critical, larger scale projects are still being done in Java. I talk with clients all the time who say, we built the prototype in Ruby or Node, and then when we had to scale it, to implement it in the real world, we turned to Java."

The high-profile of the innovative stuff has led a lot of people to assume that there has been a decline in the use of Java in the enterprise, Driver said, in spite of that data that clearly shows that it is not.

"When I look at the data -- when I look at GitHub and StackOverload, at all the books being published -- it shows that Java is still firmly entrenched as the No. 1 development tool in the world."

And yet Driver allows that a decline is almost certainly in Java's future, or perhaps it's more accurate to say, an evolution.

"The very definition of what we call Java is changing," he said. "In the old days it was understood that what we meant when we said 'Java' was the APIs, the SDKs, the VM, and the language. Nowadays, there's as much or more open source being done with the traditional Java blueprints. There's are four or five real languages with real work loads now on the VM. So the VM is a piece that is still consistent. There's a lot of variation on that theme."

And then, there's Jigsaw in Java 9, which will modularize Java, and turn it into more of a family of technologies that will increase complexity, but also flexibility.

Driver also believes that part of cause of the contradictory perceptions about Java over the past year has to do with its age. The venerable mostly-OO language turned 20 last year, which is an eternity in distributed computing. Many developer, especially elite developers, might simply want to move on to something else. But for enterprise computing today, nothing else exists that provides the same functionality as Java.

My annual, informal survey of industry watchers about challenges and opportunities for enterprise developers in the coming year led me this year to a group of Forrester analysts (Jeffrey S. Hammond, Kurt Bittner, John R. Rymer, Diego Lo Giudice, Jost Hoppermann, John M. Wargo, Randy Heffner and Michael Facemire) who made some predictions back in November in a must-read report, "Predictions 2016: Modern Development Goes Mainstream").

The report covers such trends as continuous delivery, DevOps, composable apps, microservices and API management -- all of which have been the province of bleeding-edge enterprise appdev-and-delivery teams, but which may now be going mainstream. I caught up with two of the report's authors, Jeffrey S. Hammond and Randy Heffner, and talked with them via e-mail about what they see on the horizon for enterprise developers.

One of the biggest challenges facing the industry in the coming year, Hammond told me, will be a dearth of JavaScript developers with experience building microservices architectures and using public cloud services. "Everyone wants these folks," he said, "and can't find them."

This will also be the year of "making things work" for IoT, he said. "Everyone 'knows' it's going to be big, but we still have to write the code and connect the things. We'll see some cool successes, while a lot of folks struggle, because IoT dev is harder than IT or mobile dev -- the 'ilities' are trickier. The cloud players will benefit as the stand-up IoT services that are 'good enough' for most developers to deal with the complexity."

Hammond also expects real opportunities for developers to emerge this year from the much-hyped virtual reality and augmented reality markets. That would be my prediction, too, given the growing and intense interest in AR/VR among so many big players (Google, Facebook, Microsoft, Samsung, and even Apple). Hammond expects to see "a strong focus on the next generation of AR/VR technologies" in 2016.

"We're gearing up for the Oculus," he said, "and I think folks have almost forgotten about Glass. And then I'm expecting big Hololens progress at [Microsoft's Build 2016 conference] in March. So, in the space of three months, we could see three major players vying for devs' attention with AR/VR devices."

Heffner underscored a couple of the report's predictions. One of the most intriguing: "A broader API conversation drives a better understanding of API strategy."

Everyone has been focused on APIs for mobile and open Web APIs, he observed, but that's likely to change this year as "a greater industry focus on B2B APIs and internal APIs for more than mobile will drive an increase in the proportion of well-rounded API strategies." In short, that conversation will be about the value APIs deliver to the business. And it will be developers who inject "API thinking" into business strategy, he said. His advice: "As AD&D pros identify APIs for point solutions, they should consider not just their immediate need, but also how each point solution contributes to their organization's evolving portfolio of APIs. They should understand the different types of APIs -- business APIs, UI-layer APIs, and more -- and craft design guidance appropriate to each type.

Heffner also pointed to the report's conclusion that developers will probably be leading much of this change in 2016. They should, in fact, make a point of lending their deeper understanding of APIs to execs to get them up to speed on how business APIs open broad access to core business capabilities and have the potential to "open new lines of business and new angles into delivering their current business strategies," he said.

The growing adoption of what Forrester calls "agile-plus-architecture" in the coming year is also going to demand new leadership from AD&D pros, he said. They are likely to find themselves working with their "architecture counterparts" to develop organizational structures and processes that bring "streamlined, collaborative architecture practices into their Agile and continuous delivery streams." He added: "If architecture teams are not there yet, AD&D pros should help bring them along by inviting collaboration at key points in their delivery processes."

The impact of Google's decision to use Oracle's OpenJDK in upcoming versions of its Android OS remains to be seen, but reaction to the news in the tech community has been cautiously optimistic.

RedMonk analyst James Governor's take was typical: "[A]fter a long hiatus, Java is finally improved with some significant new functionality -- notably lambdas in Java 8," he observed in an e-mail. "Java, the language, still has strong legs, as RedMonk data clearly show, and it makes sense for Google to embrace that ecosystem's ongoing strength. OpenJDK has made considerable progress as a community and codebase, so why not tap into that momentum?"

IDC analyst Al Hilwa viewed the decision as a smart one, with the potential to help Google in its legal struggles with Oracle: "In one move, Google is able to make Android more compatible with Java, reduce its software development costs by leveraging OpenJDK, and potentially reduce future penalties in case its use of the Java APIs that are the subject of the lawsuit are not found to be fair use," he said.

The two companies have been fighting in the courts since 2010, when Oracle sued Google, claiming that the Internet search giant infringed on patents associated with the Java Platform in Android. Five long years of court decisions, appeals, and reversals followed, and the fight continues. As it currently stands, the courts have ruled that the 37 Java APIs at the center of the lawsuit are copyrightable, and Google is set to argue that its use of those APIs falls under the doctrine of fair use.

Rumors that Google might be replacing its Apache Harmony implementation of the Java libraries in upcoming versions of Android circulated following a Hacker News post in December about a "mysterious Android codebase commit." Google later confirmed its plan with Venture Beat reporter Emil Protalinski.

"As an open-source platform, Android is built upon the collaboration of the open-source community," Google said in a statement. "In our upcoming release of Android, we plan to move Android's Java language libraries to an OpenJDK-based approach, creating a common code base for developers to build apps and services. Google has long worked with and contributed to the OpenJDK community and we look forward to making even more contributions to the OpenJDK project in the future."

Google recently clarified with the publication that this move is a work in progress, and that future versions of Android will continue to contain parts of its own implementation of the Java libraries.

Keep in mind that Apache Harmony was retired as a project in 2011. It was replaced, more or less, by Sun Microsystems with the OpenJDK project.

As Google adapts OpenJDK to Android, it looks as though the company will be effectively replacing the code at issue in Oracle v Google. But does this move actually signal the beginning of the end of hostilities between the two companies?

"Rest assured," Governor added, "there is no love lost between Oracle and Google, but working with direct and indirect competitors is very much how the modern IT industry functions. It's also worth noting that there was a notable softening of anti-Google rhetoric at Oracle OpenWorld this year: Android was mentioned positively."

Whatever else you can say about the past year, 2015 was a good'n for Java. The language turned 20 with much fanfare and well-earned acknowledgement. (Oracle marked the anniversary with a great Web site. Java 8, with its game-changing support for lambda expressions, was adopted at a record-setting pace. And though the release of Java 9 was pushed back, modularization became real.

Now, at the start of 2016, Java gets an extra pat on the back from the industry watchers at TIOBE Software, who named the it "Programming Language of 2015." The reason: The language enjoyed the largest increase in popularity of the 50-plus languages tracked in the TIOBE Index. Java's popularity grew 5.94 percent last year, according to TIOBE, smoking the closest runners up. Visual Basic.NET grew in popularity by 1.51 percent, and Python grew by 1.24 percent.

"At first sight, it might seem surprising that an old language like Java wins this award," the TIOBE researchers wrote. "Especially if you take into consideration that Java won the same award exactly 10 years ago. On second thought, Java is currently No. 1 in the enterprise back-end market and No. 1 in the still growing mobile application development market (Android). Moreover, Java has become a language that integrates modern language features such as lambda expressions and streams. The future looks bright for Java."

TIOBE is a Netherlands-based provider of software quality assessment services based on the ISO 25010 standard. The company ranks the popularity of software languages based on "the number of skilled engineers world-wide, courses, and third-party vendors." The purpose of the Index, the company says, is to provide coders with a kind of contextual yardstick with which to measure their own language skills against current demand.

Altogether, TIOBE ranks 50 programming languages, though it follows many more. The company emphasizes that the Index measures only the popularity of a language, not its actual quality (no "bests") nor the number of lines of code written in it.

TIOBE expects Java to continue to rank among the most popular languages in 2016, along with PHP, JavaScript and Swift. Scala, the functional programming language, could earn a permanent Top 20 spot, the company predicted, and Rust, Clojure, Julia and TypeScript are likely to "move up considerably on the chart." JavaScript earned the top spot last year.

The Open Container Initiative (OCI) unveiled its technical governance model this week. The nascent coalition of industry leaders and users seeking to establish common standards for software containers is just over six months old, and the establishment of a governance model is a big step in its evolution.

At the core of the OCI model is a Technical Developer Community (TDC) consisting of nine maintainers who have been working on the specification since the coalition was formed. The TDC will be responsible for maintaining the project and handling the releases of both the runtime and the spec. The community is currently made up of both independent developers and employees of founding companies, such as Docker, CoreOS, Google, and Huawei.

The model also includes a Technical Oversight Board, some members of which will be elected by the TDC, and others by the wider OCI membership. That board will work closely with the TDC to ensure cross-project consistencies and workflows. And there's a Trademark Board, which will oversee the development and use of the OCI's trademarks and certifications. A representative from each of the member companies will serve on that board.

"The maintainers are very technical and neutral," said Patrick Chanezon, a member of the technical staff at Docker who has been working on OCI from the beginning. Docker donated a draft specification for the base format and runtime to the OCI, as well as the code associated with a reference implementation of that spec, known as runC. The company donated the entire contents of its libcontainer project and all modifications needed to make it run independently of Docker. libcontainer provides a standard interface for making containers inside an operating system.

The OCI has released two versions of the OCI spec so far (0.1.1 and 0.2), and Chanezon expects several more releases on the road to version 1.0. He was careful to avoid promising a release date. And there have been six releases of runC.

Backward compatible: OCI Specifications and OCI Projects strive to be as backward compatible as possible with prior releases.

A Linux Foundation Collaborative Project, the OCI aims to host an open source, technical community, and build a vendor-neutral, portable, and open specification and runtime for container-based solutions. So there's a big emphasis on openness in its governance model. The OCI's technical roadmap, which was developed by the current members of the TDC, is available on GitHub. And any developer or end user can make contributions to the OCI.

GitLab, the company behind the open source code collaboration platform of the same name, has released a new version of one of its Git-based offerings with some additional enterprise muscle, and the company is using the occasion to throw stats at the press like ninja stars in a Kung Fu movie.

GitLab Enterprise Edition (GitLab EE) is an on-premises solution for Git hosted repositories. The newest version, GitLab EE 8.2, comes with a fairly long list of features targeting organizations with more than 100 users. Among the upgrades in this release is the addition of repository mirroring, which allows users to set up a project to automatically have its branches, tags, and commits updated from an upstream repository. GitLab EE is offered on a subscription basis, but the company also provides a free Community Edition, on which GitLab EE is built. GitLab.com is the company's free SaaS offering.

GitLab is also touting new support for Git Large File Storage (LFS) in GitLab.com and both its Enterprise and Community editions. Git LFS is an open source Git extension that replaces large binary files, such as audio, video, and graphics, with text pointers inside the Git repository; the actual file contents are stored on a remote server. GitHub, that other code-hosting site, announced Git LFS in April.

Sytse "Sid" Sijbrandij, the current CEO, believes that GitLab is offering the first open source production implementation of Git LFS.

The company was founded in 2013 by Sijbrandij, who is a Dutch software developer, and Ukrainian developer Dmitriy Zaporozhets, who created the platform. Back in 2011, Zaporozhets was working for a large software consultancy with 200 people who were struggling to collaborate across projects, Sijbrandij told me. The company required that any collaboration software be on-premises, but Zaporozhets couldn't find a solution he liked.

"So, he did what programmers do," Sijbrandij said, "and coded something himself, and then he open sourced it. Within a year, about 800 contributors had been attracted to the GitLab project. We didn't know each other at that time, but I e-mailed him and said that I would like to commercialize what he had developed, and asked if he would be okay with that, and with me not paying him a cent. He said, sure, go for it."

Zaporozhets later tweeted that he wanted to work on GitLab full time, and Sijbrandij went to the Western Union office to wire him some money. "He was in the Ukraine at the time," he recalled, "and the person behind the counter asked me, 'Do you know this person or is it someone you met over the Internet?' She was worried that I was being scammed."

A year later, a company was born. Sijbrandij and Zaporozhets had become friends, but the two co-founders only started working together directly at the beginning of this year.

The startup emerged from the Silicon Valley's Y Combinator accelerator program this summer and promptly raised $1.5 million in seed money. And it announced a $4 million Series A funding from Khosla Ventures in September. The company has grown from 8 employees to 34, and today competes with the much better known GitHub, and with Atlassian's BitBucket.

In October, the company entered into a partnership with SCM provider Perforce Software to create Helix GitSwarm, that company's new Git management platform.

Sijbrandij believes that GitLab is the most used code collaboration platform on premises. The company claims that more than 100,000 organizations are currently using it; that there have been more than 1 million downloads of GitLab to date; and that nearly 30 percent of Fortune 500 companies use the platform. The company currently counts IBM, NASA, Alibaba, CERN, Expedia and SpaceX, among its users.

Since I spoke with Sijbrandij, the company issued a security update, GitLab 8.2.1, and is advising users who installed GitLab 8.2 to upgrade immediately.

A complete list of new features in GitLab 8.2 is available on the company's blog page.