Coevolving Innovations

… in Business Organizations and Information Technologies

Technology-supported collaboration, Git and GitHub

Through dubious television coverage on GitHub, some publicity on technology-supported collaboration have surfaced.  Business Insider reported:

Fox Business tried to use a bunch of coder lingo in a report on social coding startup GitHub — and failed.  [….]

The coders and developers over on Hacker News have been dissecting the video all day.

While there is technology involved, the challenge is better described as a change in style on collaboration around artifacts.  In an interview at Disrupt SF 2013, Tom Preston-Werner, co-founder of Github, said:

It’s looking more about what’s possible in the world of collaboration. It’s more about people’s behaviour. It’s more about what they’re doing.

If people are using e-mail a lot, to share documents back and forth, this is a huge problem. The work that people do needs to be next to the communication they do. This is our vision for the future. And this is why Github puts communication mechanisms, pull requests, like having discussions around work changes, and being able to document them, put them next to the files that people are working on. Most often it’s code, but put those things together.

The challenge, the real competitor is behavioral. It’s the technologies in general that we’re using, and e-mail primarily. It’s getting people away from the mentaliity that everything can be accomplished via e-mail, and that’s the best solution. That is not the best solution, for most problems. It closes things down.

  • Tom Preston-Werner | On Breaking Down Walls | Sept. 11, 2013 | Disrupt SF 2013

 

This web video led to presentation of an opportunity, and criticism, by Lauren Orsini.  GitHub is focused primarily on software development, although it the technology could be advantageous in broader contexts.

Here’s a secret: GitHub isn’t just for writing code. Too bad GitHub doesn’t seem to care.

If you’re not a developer and you’ve heard of GitHub at all, you probably only know it as an online space where developers work together on coding projects—one that’s only useful to the geekiest sector of the population.

But GitHub is actually an incredibly useful tool that could be used to organize any group project online. And the day that “regular” people begin adopting it is closer than you think.

On Wednesday, GitHub CEO Tom Preston-Werner said normals are welcome to join the party. “We want to make [non-development] use cases possible,” he said at the TechCrunch Disrupt 2013 conference. “Now, we still optimize GitHub for software developers. This is something that’s very important to us. Software is the future of the world.”

With a lackluster welcome like that, you could be forgiven for not rushing to sign up for an account right this instant. From a technical standpoint, though, GitHub isn’t at all specific to code projects. It’s open to anyone. If only GitHub made more of an effort to make those others feel more welcome.

I had previously looked at GitHub when I noticed that Ward Cunningham (the original inventor of the wiki) has been hosting the Federated Wiki project on Github. I played around with it enough to get a basic appreciation of the technology. Other non-technical people might appreciate a bit of a primer.

  • 1. What is Git, and GitHub?
  • 2. What is the promise of Github, in changing the way workers collaborate?
  • 3. Are there alternative to the Github technology?

While Github is the most advanced way for developers to track changes in code, features of real-time collaboration for non-technical professionals first emerging in Google Wave (now Apache Wave) have shown up in Google Docs and IBM Docs.

1. What is Git, and GitHub?

Git was developed by Linus Torvalds around 2007, as an open source alternative for source code management associated with Linux.

Git is architected as decentralized, with an origin from where individuals may push to and pull from (as well as amongst each other).

… (since Git is a DVCS [Distributed Version Control Systems], there is no such thing as a central repo at a technical level). We will refer to this repo as origin, since this name is familiar to all Git users.

Decentralized but centralized | nvie.com
Each developer pulls and pushes to origin. But besides the centralized push-pull relationships, each developer may also pull changes from other peers to form sub teams. For example, this might be useful to work together with two or more developers on a big new feature, before pushing the work in progress to origin prematurely. In the figure above, there are subteams of Alice and Bob, Alice and David, and Clair and David.

This organization of work enables individuals to first work independently, and then subsequently discuss merging their changes together.

Incorporating a finished feature on develop | nvie.com

 

GitHub is a repository hosting system, extended with some additional features.

At the heart of GitHub is Git, an open source project started by Linux creator Linus Torvalds. Matthew McCullough, a trainer at GitHub, explains that Git, like other version control systems, manages and stores revisions of projects. Although it’s mostly used for code, McCullough says Git could be used to manage any other type of file, such as Word documents or Final Cut projects. Think of it as a filing system for every draft of a document.

Some of Git’s predecessors, such as CVS and Subversion, have a central “repository” of all the files associated with a project. McCullough explains that when a developer makes changes, those changes are made directly to the central repository. With distributed version control systems like Git, if you want to make a change to a project you copy the whole repository to your own system. You make your changes on your local copy, then you “check in” the changes to the central server. McCullough says this encourages the sharing of more granular changes since you don’t have to connect to the server every time you make a change.

GitHub is a Git repository hosting service, but it adds many of its own features. While Git is a command line tool, GitHub provides a Web-based graphical interface. It also provides access control and several collaboration features, such as a wikis and basic task management tools for every project.

The flagship functionality of GitHub is “forking” – copying a repository from one user’s account to another. This enables you to take a project that you don’t have write access to and modify it under your own account. If you make changes you’d like to share, you can send a notification called a “pull request” to the original owner. That user can then, with a click of a button, merge the changes found in your repo with the original repo.

These three features – fork, pull request and merge – are what make GitHub so powerful.

2. What is the promise of Github, in changing the way workers collaborate?

In an interview with Tom Preston-Werner, GitHub and its applications were discussed. GitHub is fundamentally a collaboration tool.

Tom Preston-Werner: Github really is the best place for people to work on software projects together. Really, this is about bringing large collections of people together to work on hard problems. Especially, in software, the problems that we face today today require large teams of people working together, on these complex problems, to really be successful.

The interactions that you have, when working you’re working on software, are complex. There’s two parts to writing code. There’s the writing of the code itself, in creating images and workflows. There’s also talking about that with everybody else on the team, and making sure that everybody knows what is going on, and being able to decide what the next decisions are, the next improvement to the product.

And so while most people end up writing code on their own, being able to talk about that is something that you need help with. That’s what we aim to do, making that part of writing software easier, by giving developers the best tools to help that.

Interviewer: When you founded Github, what was the status quo, for coding and developing, at that time? What are the alternatives? What did you replace?

Tom Preston-Werner: [….] Internally, people were using a lot of centralized version control systems. [….] It was all about locking what work could be done, saying I have control over this file, I have control over this chunk of the code, and you can’t have it. This was the mainstay. This was control by preventing people from doing work. What we want to do is to allow people to be able to do the work without having to ask permission, and then propose a change and have a discussion around it.

You need to have what is called branching. You need to be able to say: here is the main version of what we’re working on, the current version. I would like to make my own version with some improvements. To do that on your own terms, and then bring it back to the other people working on the projects and have a discussion about it. This wasn’t happening a lot. This kind of collaboration, this easy experimentation wasn’t the standard ten years ago.

The challenge in large enterprises is that collaborating is not only about technology, but also on culture, i.e. permission.

[at 7:06] Interviewer: …. What should I ever put anything in any open collaborative environment at all? My algorithms are the more treasured thing about what makes my company successful. What would you tell him? Would it be possible at all to convince him?

Tom Preston-Werner: Yeah. Actually I’ve talked to CIOs and CTOs of a lot of large firms, including banks …. They’re not too difficult to sell on the concept. What happens in large enterprise is that you have various divisions of the company grow up as silos, because you need to be able to have those people concentrate on what they’re doing. Each division is concentrated so that they can have the right number of people to talk to. You can’t talk to everyone in the company. You have to focus on what you are doing.

The problem, though, is that you end up with these different silos. Each department has its own silo. They have all their own needs. And then they have problems because they’re not talking to each other. In order to go after these very large opportunities that people are seeking, you need to break down these walls.

So when we talk to them about Github as being a place that can tear down the walls between the silos of companies, to make it so people can watch and follow and pay attention to just the software development, or just the projects that they’re interested in, then that’s very interactive to them.

I’ve definitely sold companies on the idea of a form collaborative type of working, but they need permission. This is where the challenge comes in. Giving them the kind, and finely enough-grained permissions, to control access to, who has access to, what sensitive components.

GitHub has been used by non-technical professionals.

[at 10:25] Interviewer: You have a big distributed workforce, though. That’s been something you’ve been famous for, since day one. You have employees all over the world.

Tom Preston-Werner: Yeah. We have about two-thirds of our workforce distributed. We’re in about 35 states and 10 countries around the world.

Interviewer: How do you keep that all connected? I’ve heard that internally at Github, people use Gmail, but even people who aren’t developers at Github, they use Github. You all use Github to talk to each other. How does that work? How does that non-technical person, what do they do with Github?

Tom Preston-Werner: Even our lawyers, our press people, finance, everyone at Github uses Github. It’s about the ability to create a project for anything. While we started with super-optimizing for just code, Github can work for anything, really.

When we think about what we do today, at work today, it’s about having files that we that we work on, and then working on them with other people, and then communicating about the future of the company. In that way, people can use Github to talk about the changes that they’re going to make. In the same way that we propose changes to code files, and are able to look very specifically at which line changed and what that means, and have a discussion about that.

When you’re designing a legal document, for instance, you need to collaborate in the same way, with people who care about that document. Whether it be a terms of service, or a non-disclosure agreement that you want potential candidates to sign when they come in, whatever it happens to be, anyone in Github is able to look at those things and contribute to that conversation.

The way that we integrate with e-mail is really great. You can @-mention someone on Github, you can just someone’s name, their Github username, in an issue, or a pull request, and they will be notified of that change. It’s a way to bring people in, very easily, that care about something, so easily that you’ll actually do it. You probably won’t take the time to go back out to e-mail, craft a message to someone saying “Hey, you should go look at this thing”, and then paste in the URL for what they will want to look at. It’s too much effort. Reducing the barrier to get these things done, is how we make work better.

The primary challenge is that this form of collaboration changes the workflows within an organization.

[at 12:35] Interviewer: It sounds like that’s how you all you use it at Github. How many other people outside of Github use Github that way? Going forward, how much easier do you want to make it so that people who are non-technical so that Github can be used for other things, e.g. for legal documents. Is that something that you’re purposeful about?

Tom Preston-Werner: There’s a large amount of education that we need to do. We’re working on videos, a lot of video material, to be able to demonstrate these workflows. Workflows are hard to communicate in just static web pages. So, what we want to do is show the world how we use Github, and how other companies are using Github in unique ways, for different types of situations, whether it be for law or finance, or in their design groups, or to interface with their customers in a very open way, showing them their own development. So, video is how we’re trying to tackle this education problem, as well as improving just our marketing overall ….

As a company, GitHub is still mostly targeted at software development.

[at 13:30] Interviewer: In the future, is your goal to have a law firm use Github, or a journalistic newspaper using Github internally, a place where the focus is not developing software, but something totally different?

Tom Preston-Werner: We want to make those use cases possible, yeah. Now, we still optimize Github for software developers. This is something that is very important for us. Software is the future of the world. We want to make it possible for everyone who works around software to be involved in those discussions, while at the same time making the software flexible enough that lawyers, or people within the government, or anyone, can use it to work on the projects that they care about. We can do both. We’re looking and talking to a lot of people right now about how they use Github, and how to extend the use cases for Github.

The cultural aspects of collaboration can be more challenging than the technology.

[at 14:30] Interviewer: I want to talk a bit about the ethos of Github, the idea of collaborating. What is that like?

Tom Preston-Werner: It’s pretty awesome. You should at least try it.

Interviewer: The thing that people say always about Github is that it’s collaborative, saying, hey, I’ll fix that for you.

Tom Preston-Werner: It’s about not having to ask permission. It’s about preferring foregiveness, rather than asking for permission, by saying, hey, your thing is broken, I fixed it, you should check that out. This is the kind of main cycle that you see in open source all of the time. We come from an open source background.

So seeing this workflow of, I propose a change, let’s discuss it and push it back in, this is really empowering. So, now do you no longer need to be blessed to work on a repository of projects, before you start the work. Instead, you can play with it in your own private work space, do whatever you want to it, make mistakes, try things out, try ten things out all at once, different things, choose the best one and show it back to the maintainers, and say, hey, this is what I see as the future of this project.

So, it’s more an empowering thing, by smoothing out those communication channels and bringing people together. It’s networking people more closely. It gives people more power.

The reliance on e-mail is dysfunctional within an enterprise.

[18:45] Interviewer: When you’re talking about people working together, who’s your biggest competitor? When you talk about collaboration, there’s a lot of big companies ….

Tom Preston-Werner: From a competition perspective, we don’t really look at the landscape and say these companies are doing these things, and we need to answer to that. It’s looking more about what’s possible in the world of collaboration. It’s more about people’s behaviour. It’s more about what they’re doing.

If people are using e-mail a lot, to share documents back and forth, this is a huge problem. The work that people do needs to be next to the communication they do. This is our vision for the future. And this is why Github puts communication mechanisms, pull requests, like having discussions around work changes, and being able to document them, put them next to the files that people are working on. Most often it’s code, but put those things together.

The challenge, the real competitor is behavioral. It’s the technologies in general that we’re using, and e-mail primarily. It’s getting people away from the mentaliity that everything can be accomplished via e-mail, and that’s the best solution. That is not the best solution, for most problems. It closes things down. It doesn’t give things a URL.

A huge part of what we do is to give things a URL, so that when someone joins the company, you can say, we already had all of these discussions about how this project you’re going to work on, go look at them right here. You can’t do that with e-mail.

  • Tom Preston-Werner | On Breaking Down Walls | Sept. 11, 2013 | Disrupt SF 2013

3. Are there alternative to the Github technology?

Github is famous as a place to share content on the open web.  For other situations, alternatives include GitHub Enterprise, GitLab, Gitorious and Atlassian Stash, says JonathanMH.


Leave a Reply

Your email address will not be published. Required fields are marked *

  • RSS qoto.org/@daviding (Mastodon)

    • daviding: “Hosting multiple Dialogic Drinks on "From Unfreezing-Refreez…” March 8, 2024
      Hosting multiple Dialogic Drinks on "From Unfreezing-Refreezing, to Systems Changes Learning" online, March 12 (Europe), March 14 (Americas), March 15 (Australia). #Leadership meets #SystemsThinking . Short presentations, longer discussions https://www.eqlab.co/from-unfreezing-refreezing-to-systems-changes-learning-david-ing
    • daviding: “"Climate change has no map that we know of. Each time a new…” February 15, 2024
      "Climate change has no map that we know of. Each time a new scientific study returns something we studied before, it's always going to arrive faster and be worse than we thought before". Episode 5, #DavidLHawk "What to do When It's too Late" https://www.youtube.com/watch?v=VPruvIsDRDk #SystemsThinking "Instead of cause-effect thinking, effects coming from prior effects, not […]
    • daviding: “In the third episode of "What to Do When It's Too Late", #Da…” February 2, 2024
      In the third episode of "What to Do When It's Too Late", #DavidLHawk explains his #systemsthinking with humans in #climatechange, dealing with hopelessness. Live weekly broadcast on #BoldBraveTv with video recordings and podcasts. Text digest at https://daviding.wordpress.com/2024/02/02/what-to-do-when-its-too-late-david-l-hawk-2024/
    • daviding: “Published "Reframing #SystemsThinking for Systems Changes: S…” February 2, 2024
      Published "Reframing #SystemsThinking for Systems Changes: Sciencing and Philosophizing from Pragmatism towards Processes as Rhythms" with #GarySMetcalf in Journal of the #InternationalSocietyForTheSystemsSciences following 2023 Kruger Park, revised after peer review. https://coevolving.com/blogs/index.php/archive/sciencing-philosophizing-jisss/
    • daviding: “Web video of @scottdejong@hci.social + @gceh@mstdn.social ho…” January 23, 2024
      Web video of @scottdejong + @gceh hosted by #zaidkhan in relaxed conversation on "What Can Systems Thinkers Learn from Educational Game Studies" at #SystemsThinking Ontario https://coevolving.com/blogs/index.php/archive/educational-game-studies-scott-dejong-geoff-evamy-hil/
  • RSS on IngBrief

    • Introduction, “Systems Thinking: Selected Readings, volume 2”, edited by F. E. Emery (1981)
      The selection of readings in the “Introduction” to Systems Thinking: Selected Readings, volume 2, Penguin (1981), edited by Fred E. Emery, reflects a turn from 1969 when a general systems theory was more fully entertained, towards an urgency towards changes in the world that were present in 1981. Systems thinking was again emphasized in contrast […]
    • Introduction, “Systems Thinking: Selected Readings”, edited by F. E. Emery (1969)
      In reviewing the original introduction for Systems Thinking: Selected Readings in the 1969 Penguin paperback, there’s a few threads that I only recognize, many years later. The tables of contents (disambiguating various editions) were previously listed as 1969, 1981 Emery, System Thinking: Selected Readings. — begin paste — Introduction In the selection of papers for this […]
    • Concerns with the way systems thinking is used in evaluation | Michael C. Jackson, OBE | 2023-02-27
      In a recording of the debate between Michael Quinn Patton and Michael C. Jackson on “Systems Concepts in Evaluation”, Patton referenced four concepts published in the “Principles for effective use of systems thinking in evaluation” (2018) by the Systems in Evaluation Topical Interest Group (SETIG) of the American Evaluation Society. The four concepts are: (i) […]
    • Quality Criteria for Action Research | Herr, Anderson (2015)
      How might the quality of an action research initiative be evaluated? — begin paste — We have linked our five validity criteria (outcome, process, democratic, catalytic, and dialogic) to the goals of action research. Most traditions of action research agree on the following goals: (a) the generation of new knowledge, (b) the achievement of action-oriented […]
    • Western Union and the canton of Ticino, Switzerland
      After 90 minutes on phone and online chat with WesternUnion, the existence of the canton of Ticino in Switzerland is denied, so I can’t send money from Canada. TicinoTurismo should be unhappy. The IT developers at Western Union should be dissatisfied that customer support agents aren’t sending them legitimate bug reports I initially tried the […]
    • Aesthetics | Encyclopaedia Britannica | 15 edition
      Stephen C. Pepper was a contributor to the Encyclopaedia Britannica, 15th edition, on the entry for Aesthetics.
  • Recent Posts

  • Archives

  • RSS on daviding.com

    • 2024/02 Moments February 2024
      Chinese New Year celebrations, both public and family, extended over two weekends, due to busy social schedules.
    • 2024/01 Moments January 2024
      Hibernated with work for most of January, with more activity towards the end of month with warmer termperatures.
    • 2023/12 Moments December 2023
      A month of birthdays and family holiday events, with seasonal events at attractuions around town.
    • 2023/11 Moments November 2023
      Dayliight hours getting shorter encouraged more indoor events, unanticipated cracked furnace block led to replacement of air conditioner with heat pump, too.
    • 2023/10 Moments October 2023
      Left Seoul for 8 days in Ho Chi Minh City, and then 7 days in Taipei. Extended family time with sightseeing, almost completely offline from work.
    • 2023/09 Moments September 2023
      Toronto International Film Festival, and the first stop of a 3-week trip to Asia starting with Seoul, Korea
  • RSS on Media Queue

    • What to Do When It’s Too Late | David L. Hawk | 2024
      David L. Hawk (American management theorist, architect, and systems scientist) has been hosting a weekly television show broadcast on Bold Brave Tv from the New York area on Wednesdays 6pm ET, remotely from his home in Iowa. Live, callers can join…Read more ›
    • 2021/06/17 Keekok Lee | Philosophy of Chinese Medicine 2
      Following the first day lecture on Philosophy of Chinese Medicine 1 for the Global University for Sustainability, Keekok Lee continued on a second day on some topics: * Anatomy as structure; physiology as function (and process); * Process ontology, and thing ontology; * Qi ju as qi-in-concentrating mode, and qi san as qi-in-dissipsating mode; and […]
    • 2021/06/16 Keekok Lee | Philosophy of Chinese Medicine 1
      The philosophy of science underlying Classical Chinese Medicine, in this lecture by Keekok Lee, provides insights into ways in which systems change may be approached, in a process ontology in contrast to the thing ontology underlying Western BioMedicine. Read more ›
    • 2021/02/02 To Understand This Era, You Need to Think in Systems | Zeynep Tufekci with Ezra Klein | New York Times
      In conversation, @zeynep with @ezraklein reveal authentic #SystemsThinking in (i) appreciating that “science” is constructed by human collectives, (ii) the west orients towards individual outcomes rather than population levels; and (iii) there’s an over-emphasis on problems of the moment, and…Read more ›
    • 2019/04/09 Art as a discipline of inquiry | Tim Ingold (web video)
      In the question-answer period after the lecture, #TimIngold proposes art as a discipline of inquiry, rather than ethnography. This refers to his thinking On Human Correspondence. — begin paste — [75m26s question] I am curious to know what art, or…Read more ›
    • 2019/10/16 | “Bubbles, Golden Ages, and Tech Revolutions” | Carlota Perez
      How might our society show value for the long term, over the short term? Could we think about taxation over time, asks @carlotaprzperez in an interview: 92% for 1 day; 80% within 1 month; 50%-60% tax for 1 year; zero tax for 10 years.Read more ›
  • Meta

  • Creative Commons License
    This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License
    Theme modified from DevDmBootstrap4 by Danny Machal