GitHub Isn’t Just a Git Hosting Service Anymore
Now, it’s becoming a social network for developers, and that’s great
GitHub platform was initially created just as a hosting service for Git repositories. In other words, Github allowed developers to create remote Git repositories for collaboration. Therefore, developers were able to show their open source projects to the community. Developers who were in the community made their own copies (forks) of existing repositories. Also, they submitted their code changes to the original repository via pull requests.
GitHub at 2008 was like this.
GitHub’s repository count was doubled every year. It indeed passed the 1 million repositories milestone in 2010. After the 2010s, GitHub’s most of the features targeted the community. They used the term social coding for marketing on the features page. The social coding term refers to building software with a community in a collaborative manner. For example, the community will contribute to the project by coding, sending bug reports, and testing. On the other hand, the project maintainers pay attention to the community’s suggestions.
Social media vs. social coding
In general social media platforms, people share their achievements, activities, and interests. Similarly, in social coding platforms like GitHub, developers can save favorite repositories, show their work with the commits calendar, and follow their favorite topics. Moreover, general social media platforms display a newsfeed where users can see other’s activities and news according to their interests. Likewise, GitHub displays a newsfeed with activities from people we follow and trending projects based on our interests. We can indeed check the newsfeed based on a particular organization too.
The notifications system is a crucial feature of any social media platform. GitHub shows a helpful notification page with various sorts of notification types. All these features improved GitHub as a developers’ social network. That’s indeed a great way to attract newcomers and keep existing users active on GitHub every day.
Acquisition by Microsoft
My idea is that GitHub’s acquisition made Microsoft’s future brighter. Luckily, Microsoft identified the future value of social coding. The future is social coding. See, every software company maintains a Github organization with several open-source repositories even if their products are closed-sourced. Many startups follow the open-source business model built on top of social coding principles.
After GitHub’s acquisition by Microsoft, everybody thought that Microsoft was going to destroy GitHub’s community-related features by integrating their own bloated products set. Fortunately, Microsoft understood that their future depends on what they do to the open-source community. Microsoft improved GitHub with impressive social coding-related features. Meanwhile, Microsoft silently introduced some new built-in features as well. Some remarkable improvements are shown below.
- The official mobile app: Every social media platform has a mobile application because people often use mobile devices to access internet resources than PCs. As a social coding platform, GitHub introduced a mobile app to keep developers much closer to each other.
- Discussions: Communication is the key in every collaborative work. In open-source software development, communication among community members is highly required. Earlier, maintainers had to integrate external chat applications for communication. On the other hand, mailing lists are outdated and not very interactive. GitHub introduced the discussions feature to solve this problem.
- Packages: The majority of open-source projects are libraries. Those projects eventually will become a package that will be deployed into a package registry, such as NuGet, npm, RubyGems, etc. GitHub introduced its packages service to keep all packages in the same place.
- Funding: Earlier, to collect donations, open-source developers added external links to the GitHub repositories or landing pages. But now, fund-raising for open-source projects can be done inside GitHub.
My opinion is that Microsoft will try to introduce more useful features — to make GitHub a full-featured social coding platform. In-site messaging could be a great feature. Right now, if we need to contact a person quickly via GitHub, we usually find the Twitter username from the profile. On-premise GitHub alternative, Allura also has this in-site messaging feature.
Another predicted feature is that they may integrate their other popular tools with GitHub closely. In other words, they may create one package from all distributed services to keep developers closer with GitHub further. It seems like something similar to this idea is being implemented already. This feature is known as GitHub Codespaces, where developers can create their entire development environment on the cloud.
We can expect more features that will enhance the developer’s online presence. Almost all tech companies recommend their employees to create Github profiles to improve their online presence. Meanwhile, GitHub introduced several features focusing on online presence: status feature and a feature to add about yourself via a README file. Undoubtedly, they will add more features for online presence. Maybe, a career timeline and skills management section will be the upcoming features.
The source code is the most crucial component of every software project. When GitHub has both source and community, it makes endless opportunities for GitHub. The rapid growth of open-source businesses also builds a clean future for GitHub.
In open-source, we feel strongly that to really do something well, you have to get a lot of people involved.
Perhaps, In the future, we may hire, code, discuss, plan, and deploy on GitHub without even touching another service or tool.