Developers Summit 2015 Summer

Thursday, July 29, 2015

Developers Summit 2015 Summer "[User company presentation!] Leading companies talk about software development environments before and after" report

speaker

  • Mr. Daisuke Horie GitHub Japan
  • Mr. Hideaki Ishijima, LINE Corporation
  • Mr. Yoshimasa Iwase, NTT Communications Corporation

[User company presentation! ] I gave a lecture titled "Before and after" of the software development environment, which advanced companies talk about.

First GitHub Japan gave an overview of GitHub, and then Mr. Ishijima from LINE Corporation and Mr. Iwase from NTT Communications introduced the internal use of GitHub Enterprise. I was.

GitHub was founded seven years ago and has become the world's largest developer community, with over 10 million users and over 24 million repositories. In addition, 10,000 to 15,000 new users are registering on GitHub every day.
The background behind the development of GitHub is that the code management tools and version management tools developed by Linux are difficult to use, and the founders of GitHub developed the GitHub business to solve their own “problems”. Another reason for launching GitHub is that in software development in general, if each and every developer in the company can develop great software, the correct workflow and developers can develop software together. I thought that if I could provide the environment, I could develop even better software.
In 2010, we designed it so that team accounts can be used privately, and companies can also use it. In 2012, we released GitHub Enterprise, which allows you to install GitHub in your own environment, making it possible to develop software in-house in an open source style.

GitHub history

The world view of GitHub is to create a world where many people can develop wonderful software by developing software centered on developers.
In 2011, investor Marc Andreessen said, "Every company will become a software company." It's affecting the industry," says Horie. In order for the company to survive, I predict that software will change as one of the key skills, and software departments will be able to do the same as general affairs and sales departments. In other words, I believe that in the near future every company will have software developers, and they will be positioned as important positions.

Every company is a software company

GitHub provides three things for that. The first is the common network. There is a lot of software code on GitHub, anyone can see it, anyone can refer to it, and reusing existing code increases productivity. The second is GitHub Flow. This means the flow of "creating a branch, proceeding with development, creating a pull request, and returning to the original project". is in progress. Third, it offers an integrated platform. It is also easy to integrate with existing tools.

Next, Mr. Ishijima of LINE Corporation talked about the introduction of GitHub Enterprise.
LINE was released in June 2011, and the number of registered users exceeded 40 million around the summer of 2012, and the service was steadily expanding. was increasing, the number of development teams was increasing, the number of developers was increasing, and the number of global development bases was increasing. Also, it's been a year since the development of LINE itself, and the number of functions has been expanded, and the number of repositories in the internal development environment has increased, the number of branches has increased, and the number of commits has also increased. In the fight against this amount, various developers looked at various source codes, but the search did not go well, and the current situation became clear that it was difficult to share. Also, at that time, if I wanted to release this function with Git, I would create a branch, copy my changes, and contact them via LINE or email. Requests for revisions were coming in from , and communication costs between developers were enormous.

Issues at the time

So, from the movement of "I want to share more" and "I want to do reviews more easily", I looked for a way to solve it, and I considered introducing GitHub Enterprise, which allows reviews with pull requests, can be easily done, and can be searched. When introducing GitHub Enterprise, the person in charge of LINE development at the time (now CTO) asked me, "Will there be any effect from introducing GitHub Enterprise?" . In response to that question, LINE's development leader and Mr. Ishijima replied, "We want to share more source code and establish a culture of searching." To be honest, it was difficult to explain to the upper management that we wanted to establish a culture and system rather than express numerical effects, but with the increase in the number of developers at the time, the quality check of development was difficult. We also considered the need for a system, and decided to purchase with that in mind.
Changes in the development process are now in the form of pull requests, where multiple people always review the features and differences you want to change before merging them into the development branch. We ensured that the actual release branch also went through a review before merging. We mix different methods, GitHub Flow and Git Flow, to match our own development flow.

However, there was one problem. Engineers generally don't read emails. If you are focused on programming, you may be looking at the source code and not notice the email at all.
I considered sending a LINE notification for this issue. Specifically, when a review request is received in the pull list, a notification will be sent to LINE. In addition to notifications, we built a list of pull requests and integration with LINE.
Finally, he concluded his presentation by saying, "I think developers would be happier if they could share source code and review it more using GitHub Enterprise."

Summary

Next, Mr. Iwase of NTT Communications Corporation gave a presentation titled "In-house development of today's realization by large companies." Mr. Iwase is absolutely useful to everyone, based on the premise that he is talking about minorities, not about the company as a whole! The announcement began with an emphasis.

The message I want to convey in this lecture is that even a large company with a long history can do modern in-house development! about it. I used to do legacy development myself, but I was told how this environment led to modern development at Imadoki, based on a story.

When Mr. Iwase came to Developers Summit two years ago, he wondered, "Is it possible to make a living as an engineer, and what is going on in the world of development?" Mr. Iwase was developing Waterfall at the time. Waterfall was responsible for requirements definition, external design, integration testing, and acceptance testing. In that process, my weapon as an engineer was Office.

In such an environment, I was shocked when I came to Developers Summit. It seems that he realized that "the world is completely different, the development of the world is amazing!"

Now, two and a half years later, I am in charge of a platform called SkyWay, which uses WebRTC, the most advanced web technology. SkyWay is released mainly for in-house development.

Why in-house development?

This platform is not a one-time release, but a continuous release. Now, let's take a concrete look at why and how we changed from a legacy development environment to a modern development environment like this after two and a half years.

When you hear NTT Communications Corporation, many people think of it as a "long-established large company" or "outsourced development." Of course, outsourcing development is certainly central to our company. However, the team I'm in is the opposite, and we mostly do in-house development. There are several reasons. The first is that technological capabilities are the source of competitiveness. The second is that the speed is slow when outsourcing. The third is that in-house production and DevOps work well together, so we can release at a very high speed. Fourth, above all, have fun! ! said Iwase.

Why in-house development?

As a process that makes in-house development fun, we develop using Scrum and Waterfall. We also place importance on coding, and we write what we can write ourselves, and we thoroughly automate it. Automation is essential to streamline in-house development. GitHub is at the heart of it all. For example, all infrastructure is sourced and code managed.

The culture that supports this development style is explicitly written. It's called a "mission statement". Specific examples include "working in teams," "being an in-house venture," and "developing software." The team has a culture that always utilizes cutting edge technology and encourages personal growth of engineers. Among them, GitHub.com and GitHub Enterprise are also used in parallel.

Use .com and Enterprise according to their characteristics

I will introduce development examples using GitHub in the past week.

Recently, we have renewed the site under the request of updating the content. However, there was an event called a specification change a little before the release. However, the change was immediately identified as an issue and the team worked together to resolve it. When I closed an issue, of course I used pull requests, and it was a situation where pull requests from everyone on the team were flying around. In this case as well, GitHub Enterprise is useful for creating something with the team. .

“When we introduced GitHub Enterprise, we introduced it on a small scale and did steady missionary work,” says Mr. Iwase. As a result, GitHub Enteprise, which started with less than 20 people, is growing to over 80 people. Mr. Iwase asked the audience, "Can you tell what the people in the next department are doing?" I will.” In other words, this means that in-house open source can be realized.

As a result, the organization becomes active. (That person is the person who submitted this pull request, etc.)
People tend to think that GitHub Enterprise is for developers and source code, but document work can also be managed with GitHub Enterprise. You can track who changed what and why on GitHub (using version control).

At the end, I made a strong declaration that "modern development is possible even for a company with a long history."
Because it's easy to get started, he continued. Start small. Good things spread. One really good one is GitHub Enterprise. I concluded my talk by saying, let's have a fun engineering life using GitHub Enterprise.

Finally, Mr. Horie of GitHub GitHub Japan the session by saying, "GitHub's mission is to support companies to become software companies."

Feel free to contact us about GitHub Enterprise

電話でのお問い合わせ 045-476-2010

Reception: Monday-Friday 8:45-17:15

Inquiry/Document request

Macnica GitHub

Mon-Fri 8:45-17:30