Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
GitHub loves Ruby. Many of our products, tools and infrastructure are built with Ruby. In this talk, we will look at the libraries, practices and conventions that GitHub uses with Ruby. We will survey all of the repositories maintained by GitHub to get insight into how it is used, and we will also examine some of the areas where we opt to not use Ruby. Help us caption & translate this video! http://amara.org/v/FGbV/
Date
Summarized using AI?
If this talk's summary was generated by AI, please check this box. A "Summarized using AI" badge will be displayed in the summary tab to indicate that the summary was generated using AI.
Show "Summarized using AI" badge on summary page
Summary
Markdown supported
In the talk titled "Ruby at GitHub," Brandon Keepers discusses the extensive use of Ruby at GitHub, emphasizing the company's deep roots and significant contributions to the Ruby community. He outlines the various programming languages utilized by GitHub, indicating that approximately two-thirds of their repositories employ Ruby. However, a deeper analysis shows that Ruby accounts for only about one-third of their codebase by bytes, which is attributed to its expressive nature unlike other programming languages. Key points discussed include the role of Ruby at GitHub, where it is not used, why Ruby is preferred for many applications, the libraries used in their projects, and their approach to handling updates and migrations. - **Languages Used at GitHub:** 602 repositories were analyzed; 228 inactive, with a breakdown of languages showing that Ruby comprises roughly one-third by bytes. - **Native Applications:** GitHub's native applications are primarily developed in Objective-C for Mac and C for Windows, alongside Android applications developed with a focus on existing open-source libraries. - **Ruby’s Role:** The choice of Ruby arises naturally through the founders' connections with the Ruby community, but GitHub maintains flexibility in language choice with a philosophy of empowerment and responsibility for technical decisions. - **Libraries and Frameworks:** GitHub employs multiple libraries, with Sinatra and Rails as the dominant frameworks, along with Redis, PostgreSQL, and MySQL for data management. Testing frameworks include RSpec and MiniTest, reflecting diverse preferences among developers. - **Managing Updates:** GitHub’s approach to updating features involves using feature flags to enable gradual rollout and testing before full deployment, which encourages a continuous integration process. - **Migration Experiences:** The talk highlights GitHub's challenges and successes in migrating code bases from Ruby 1.8 to 1.9 and 2.0 while managing dependencies and performance optimizations. In conclusion, Keepers encapsulates GitHub's strategic use of Ruby while also acknowledging that they do not solely identify as a Rails shop. The culture encourages exploration of various technologies, underscoring a pragmatic approach to development while fostering Ruby's growth within their ecosystem. As a takeaway, the culture at GitHub offers a blend of empowerment, responsibility, and strategic choice in technology, which has defined their successful web services development and infrastructure management.
Suggest modifications
Cancel