No one has a crystal ball to see the future of technology. Even for projects developed out in the open, code alone can't tell us whether or not a project is destined for success—but there are hints along the way. For example, perhaps it's not unreasonable to assume that the projects that will help shape our future are those projects that have first seen rapid growth and popularity among the developer community.
So which new projects should an open source developer watch in 2017? Let's take a look at a few projects that emerged in 2016 to achieve rapid notoriety in the GitHub community.
To develop this list, I went through GitHub with a focus on projects whose repository was created in 2016, and looked at the projects ranked by number of stars. It's not a perfect system; there are, of course, repositories that contain something other than an open source project, and so these were omitted from the list. Of course, there also were many great projects introduced in 2016 whose development took place somewhere other than GitHub. Admittedly, the process of picking these 10 projects to watch for 2017 from a pool of many choices was as much of an art as a science. But I still think these projects are worth keeping an eye on in the new year.
Yarn
Yarn pitches itself as providing "fast, reliable, and secure dependency management." In short, it's a modern replacement for npm, a package manager built specifically for JavaScript developers, which helped build the enthusiasm for using JavaScript across the entire application stack that seems so prevalent today. In addition to its speed and security features, yarn also features off-line installs, advanced dependency-management features, and deterministic design to ensure that packages installs across multiple machines should match identically.
Create React App
A new project from Facebook's incubator project, Create React App is, unsurprisingly, a template for creating React-based applications without having to create a custom build configuration. Providing a simple command-line interface for generating new application, it's easy to create and deploy a simple application stack that gives developers the power of the React framework.
Android Architecture Blueprints
The Android Architecture Blueprints repository is a great resource for learning from the UX team at Google best practices for organizing and architecting an Android app. By demonstrating several ways of handling common problems, the repository provides a starting point for creating a new application, or to inform a design decision in your existing app.
Hyper
For developers and system administrators, there are two tools that one simply cannot live without: a web browser and a terminal. Hyper is an attempt to bring best attributes of a web application to a terminal emulator, creating a modern terminal experience with JavaScript, HTML, and CSS. Relying on web standards opens up customization and control to a whole new audience who can use their existing JavaScript skills to customize and optimize their terminal.
Parse server
Parse server is a Node.js-based open source backend that makes it easy to migrate applications designed for Parse, after the announcement that the hosting service would be retired in early 2017. Designed to make creating web applications and APIs easier, Parse is cross-platform and works everywhere that Node.js can be deployed.
Bulma
Designing a good-looking website or web application can be difficult, and made even more so by the complexity of competing browser standards and the wide array of devices your users are viewing from. Bulma is a modern CSS framework designed to be responsive and modular, easing development for UX teams trying to design interfaces that flow naturally.
TensorFlow models
TensorFlow, the Google-driven machine learning framework, was one of our top projects from the 2015 Open Source Yearbook. Looking back at the growing interest in AI over the past 12 months, finding another TensorFlow-related project in this year's batch should come as no surprise, with this repository of TensorFlow models earning more than 10,000 stars. Conducting tasks from name generation and learning, image to text processing, and classification, this is a great starting point for anyone who wants to learn more about TensorFlow while getting their hands a little dirty.
Anime
If you're interested in web animation, give Anime a look. Anime is a JavaScript animation engine that works with CSS, SVG, the document object, and JavaScript objects to bring animation and interactivity to any web-based project. It's cross-platform, working on all of the major browsers, and is designed to make both simple and complex animations easy to implement.
Swift Algorithm Club
Another of our top project from last year's list was Swift, the open source language from Apple that has rapidly become a developer favorite. In this year's list is the Swift Algorithm Club, a collection of various algorithms and data structures implemented in Swift that you can use for learning purposes or simply drop into your application. Including numerous sorting, searching, spanning, and tree algorithms, Swift Algorithm Club is an amateur computer scientist's wishlist of code implementations.
Weex
The final entry in this year's top 10 is Weex, a framework designed to make developing a cross-platform user interface for mobile applications easier. Weex is designed to be fast, lightweight, and extensible, allowing you to get near native performance without having to write a different native app for each platform.
Honorable mentions
As I explained, a few new repositories were emerging on GitHub this year that, by popularity, may have made this list, but weren't strictly speaking properly-licensed open source projects. Here are a few of my favorites:
- HEAD: A comprehensive list of the many uses for the "head" section of an HTML document, from providing meta information to browser directives to social sharing hints.
- Google Interview University: One developer's self-study plan for moving from web developer to software engineer—essentially, a computer science knowledge checklist.
- Public APIs: A list of publicly available APIs to return JSON data on just about anything you can imagine, along with links to their documentation.
- A security guide for developers: A work in progress containing an outline and checklist for security-minded developers.
- How to Be a Programmer: A book about the hard and soft skills that are necessary to master in order to be successful in a software development career.
Are there any projects you're particularly interested in watching in 2017? Let us know in the comments, or send us an article proposal.
2 Comments