User:BC1278/sandbox/github

GitHub is a Web-based platform mostly used  for developers to post and collaborate on computer code. It is the largest host of source code in the world.

The platform is a Git version control repository hosting service. It offers all of the distributed version control and source code management (SCM) functionality of Git as well as adding its own features. It provides access control and several collaboration features such as bug tracking, feature requests, task management, and wikis for every project.

GitHub offers both plans for private and free repositories on the same account which are commonly used to host open-source software projects. [As of April 2017, GitHub reports having almost 20 million users and 57 million repositories, ] '''Github had 24 million developers affiliated to 1.5 million organizations and 67 million repositories, located in 200 countries of the world, in October 2017. '''

GitHub has a mascot called Octocat, a cat with five tentacles and a human-like face.

GitHub
Development of the GitHub platform began on 19 October 2007. The site was launched in April 2008 by Tom Preston-Werner, Chris Wanstrath, and PJ Hyett after it had been made available for a few months prior as a beta release.

Projects on GitHub can be accessed and manipulated using the standard Git command-line interface and all of the standard Git commands work with it. GitHub also allows registered and non-registered users to browse public repositories on the site. Multiple desktop clients and Git plugins have also been created by GitHub and other third parties that integrate with the platform.

The site provides social networking-like functions such as feeds, followers, wikis (using wiki software called Gollum) and a social network graph to display how developers work on their versions ("forks") of a repository and what fork (and branch within that fork) is newest.

In October 2017, it said it added recommendations of relevant repositories to the homepage of logged in users.

A user must create an account in order to contribute content to the site, but public repositories can be browsed and downloaded by anyone. With a registered user account, users are able to discuss, manage, create repositories, submit contributions to others' repositories, and review changes to code.

Users can pay a subscription fee to keep to keep their code private.

The software that runs GitHub was written using Ruby on Rails and Erlang by GitHub, Inc. developers Chris Wanstrath, PJ Hyett, and Tom Preston-Werner.

Scope
GitHub is mostly used for code.

In addition to source code, GitHub supports the following formats and features:


 * Documentation, including automatically rendered README files in a variety of Markdown-like file formats (see README files on GitHub)
 * Issue tracking (including feature requests) with labels, milestones, assignees and a search engine
 * Wikis
 * Pull requests with code review and comments
 * Commits history
 * Graphs: pulse, contributors, commits, code frequency, punch card, network, members
 * Integrations Directory
 * Unified and split diffs
 * Email notifications
 * Option to subscribe someone to notifications by @ mentioning them.
 * Emojis
 * GitHub Pages: small websites can be hosted from public repositories on GitHub. The URL format is http://username.github.io.
 * Nested task-lists within files
 * Visualization of geospatial data
 * 3D render files that can be previewed using a new integrated STL file viewer that displays the files on a "3D canvas". The viewer is powered by WebGL and Three.js.
 * Photoshop's native PSD format can be previewed and compared to previous versions of the same file.
 * PDF document viewer
 * Newsfeeds
 * Explorer (connecting to curated collections, topics and other resources)
 * Dependency Graphs
 * Security Alerts
 * Projects (card-based project management of repositories)
 * Marketplace (discover and purchase apps)
 * Atom editor integration
 * Electron (framework for cross-platform development of desktop applications)

Licensing of repositories
GitHub's Terms of Service do not require public software projects hosted on GitHub to meet the Open Source Definition. For that reason, it is essential for users and developers intending to use a piece of software found on GitHub to read the software license in the repository (usually found in a top-level file called "LICENSE", "LICENSE.txt", or similar) to determine if it meets their needs. The Terms of Service state, "By setting your repositories to be viewed publicly, you agree to allow others to view and fork your repositories."

GitHub Enterprise
GitHub Enterprise is similar to GitHub's public service but is designed for use by large-scale enterprise software development teams where the enterprise wishes to host their repositories behind a corporate firewalll. Enterprise customers can cluster servers to act as a single installation, enabling it to support large teams.

'''In the spring of 2017, GitHub Enterprise added on an option to store work on the major cloud services, including Amazon Web Services and Microsoft Azure.  IBM's BlueMix cloud-platform was added in February, 2016.'''

'''Git Hub Enterprise allows users to follow each other, rate each other’s work, receive updates for specific projects and communicate publicly or privately.   It also has private workspaces and 24/7 support.'''

GitHub Enterprise added support for Jupyter in November 2016. It allows for annotations and discussions around specific lines of code and, card-based project-management software created directly from GitHub objects.

GitHub Enterprise 2.9 added the following features in March 2017:
 * Support for load balancers

'''In November 2017, Github adopted the "Git Virtual File System" created by Microsoft for Windows development. The system makes it easier to run large projects with thousands of developers and a very large codebase. Microsoft and Github are further extending the new system to include GitHub Enterprise projects built on MacOS and Linux. '''
 * Resolve merge conflicts from within pull requests
 * Dismiss pull request reviews
 * Ask for pull request reviews from specific individuals
 * Search commit messages in specific data fields, such as author, date, and message
 * Organization-wide projects

'''Forty five percent of the 100 largest companies in the United States (by revenue) use GitHub Enterprise to build software. About $110 million of GitHub's annual revenue, based on a run rate in August 2017, came from GitHub Enterprise.'''

'''GitHub Business offers largely the same features as GitHub Enterprise but is hosted by GitHub. It also includes SAML single sign-on, and automated provisioning and deprovisioning. '''

Gists
GitHub also operates other services: a pastebin-style site called Gist that is for hosting code snippets (GitHub proper is for hosting larger projects), and a slide hosting service called Speaker Deck.

Tom Preston-Werner presented the then-new Gist feature at a punk rock Ruby conference in 2008. Gist builds on the traditional simple concept of a pastebin by adding version control for code snippets, easy forking, and SSL encryption for private pastes. Because each "gist" has its own Git repository, multiple code snippets can be contained in a single paste and they can be pushed and pulled using Git. Further, forked code can be pushed back to the original author in the form of a patch, so gists (pastes) can become more like mini-projects.

Education program
GitHub launched a new program called the GitHub Student Developer Pack to give students free access to popular development tools and services. GitHub partnered with Bitnami, Crowdflower, DigitalOcean, DNSimple, HackHands, Namecheap, Orchestrate, Screenhero, SendGrid, Stripe, Travis CI and Unreal Engine to launch the program.

GitHub Marketplace service
GitHub also provides some software as a service integrations for adding extra features to projects. Those services include:
 * Rollbar: Integrate with GitHub to provide real time debugging tools and full-stack exception reporting. It is compatible with all well used code languages, such as JavaScript, Python, .Net, Ruby, PHP, Node.js, Android, iOS, Go, Java and C#.
 * Codebeat: For automated code analysis specialized in web and mobile developers. The supported languages for this software are: Elixir, Go, Java, Swift, JavaScript, Python, Ruby, Kotlin, Objective-C, TypeScript.
 * Travis CI: To provide confidence for your apps while doing test and ship. Also gives full control over the build environment, to adapt it to the code. Supported languages: Go, Java, JavaScript, Objective-C, Python, PHP, Ruby and Swift.
 * GitLocalize: Developed for teams that are translating their content from one point to another. GitLocalize automatically syncs with your repository so you can keep your workflow on GitHub. It also keeps you updated on what needs to be translated.

History


On 24 February 2009, GitHub team members announced, in a talk at Yahoo! headquarters, that within the first year of being online, GitHub had accumulated over 46,000 public repositories, 17,000 of which were formed in the previous month alone. At that time, about 6,200 repositories had been forked at least once and 4,600 had been merged.

On 5 July 2009, GitHub announced that the site was now harnessed by over 100,000 users. On 27 July 2009, In another talk delivered at Yahoo!, Tom Preston-Werner announced that GitHub had grown to host 90,000 unique public repositories, 12,000 having been forked at least once, for a total of 135,000 repositories.

On 25 July 2010, GitHub announced that it hosts 1 million repositories. On 20 April 2011, GitHub announced that it is hosting 2 million repositories.

On 2 June 2011, ReadWriteWeb reported that GitHub had surpassed SourceForge and Google Code in total number of commits for the period January to May 2011.

On 9 July 2012, Peter Levine, general partner at GitHub's investor Andreessen Horowitz, stated that GitHub had been growing revenue at 300% annually since 2008 "profitably nearly the entire way".

GitHub, Inc. was originally a flat organization with no middle managers; in other words, "everyone is a manager" (self-management). Employees could choose to work on projects that interest them (open allocation). However, salaries were set by the chief executive. By 2014, the company had adopted a traditional management structure.

On 16 January 2013, GitHub announced it had passed the 3 million users mark and was then hosting more than 5 million repositories. On 23 December 2013, GitHub announced it had reached 10 million repositories.

In June 2015, GitHub opened an office in Japan that is its first office outside of the U.S.

On 29 July 2015, GitHub announced it had raised $250 million in funding in a round led by Sequoia Capital. The round valued the company at approximately $2 billion.

In 2016, GitHub was ranked #14 on the Forbes Cloud 100 list.

With the first release on July 21, 2017, Brave  web browser features Github as one of its default search engines.

In November 2017, GitHub introduced security alerts for vulnerabilities in software packages that their projects depend upon.  The security alerts service is based on a GitHub "dependency graphs" and include severity levels and suggested fixes.  

Censorship
On 3 December 2014, GitHub was blocked in Russia for a few days over user-posted suicide manuals.

On 31 December 2014, GitHub was blocked in India (along with 31 other Websites) over pro-ISIS content posted by users. On 10 January 2015, GitHub was unblocked. Again, on 12 Sep 2015, GitHub was blocked all over India. The site was unblocked soon after.

On 26 March 2015, GitHub fell victim to a massive distributed denial-of-service (DDoS) attack that lasted for more than 118 hours. The attack, which appeared to originate from China, primarily targeted GitHub-hosted user content describing methods of circumventing Internet censorship.

On 8 October 2016, GitHub access was blocked by the Turkish government to prevent email leakage of a hacked account belonging to the country's Energy Minister.

Harassment allegations
In March 2014, GitHub programmer Julie Ann Horvath alleged that founder and CEO Tom Preston-Werner and his wife Theresa engaged in a pattern of harassment against her that led to her leaving the company. In April 2014, GitHub released a statement denying Horvath's allegations. However, following an internal investigation, GitHub confirmed the claims. GitHub's CEO Chris Wanstrath wrote on the company blog, "The investigation found Tom Preston-Werner in his capacity as GitHub’s CEO acted inappropriately, including confrontational conduct, disregard of workplace complaints, insensitivity to the impact of his spouse's presence in the workplace, and failure to enforce an agreement that his spouse should not work in the office." Preston-Werner then resigned from the company. In 2017 more allegations were made of discriminatory and unsupportive behavior at Github by a developer, who had been recruited following a commitment by Github to improve its diversity and inclusivity.

Mascot
GitHub's mascot, Octocat, is an anthropomorphized female cat with five octopus-like arms. The character was created by graphic designer Simon Oxley as clip art to sell on iStock, a website that enables designers to market royalty-free digital images.

GitHub became interested in Oxley's work after Twitter selected a bird that he designed for their own logo. The illustration GitHub chose was a character that Oxley had named Octopuss. Since GitHub wanted Octopuss for their logo (a use that the iStock license disallows), they negotiated with Oxley to buy exclusive rights to the image.

GitHub renamed Octopuss to Octocat, and trademarked the character along with the new name. Later, GitHub hired illustrator Cameron McEfee to adapt Octocat for different purposes on the website and promotional materials; McEfee and various GitHub users have since made hundreds of variations of the character.

Company
GitHub, Inc. was originally known as Logical Awesome LLC.

Organizational structure
'''Originally a flat organization with little management structure, in 2014, GitHun introduced middle managers, including heads of engineering, legal, marketing, sales. About 700 people worked at GitHub, as of October 2017. '''

Finance
GitHub.com was a start-up business, which in its first years provided enough revenue to be funded solely by its three founders and start taking on employees. In July 2012, four years after the company was founded, Andreessen Horowitz invested $100M in venture capital. In July 2015 GitHub raised another $250M of venture capital in a series B round. Investors were Sequoia Capital, Andreessen Horowitz, Thrive Capital and other venture capital funds. As of August 2016, GitHub was making $140M in Annual Recurring Revenue. GitHub reported annual revenue of about $200M based on its July 2017 annual run rate. About half the revenue comes from GitHub Enterprise and half from subscription fees to keep repositories private.

Octoverse Report
'''GitHub releases an annual trends report based on data from its millions of code repositories, including the most popular programming languages used in its hosted projects and the most active repositories. '''

'''In October 2017, based on 67 million repositories, the report stated that Javascript is the most popular programming language, followed by Python and Java. The most forked project was TensorFlow, a machine learning project.  Visual Studio Code was the project with the most contributors, at about 15,000. '''