The Journal App Making Journal: Day 41

Git version control

Nicole Liu
3 min readAug 10, 2020

Continue to journal on three questions everyday in this Journal App Making Journal.

1. What have I learned about app design and development today?

Continue to acquire app design and programming skills through the iOS App Development course on Udemy by Angela Yu and the London App Brewery.

Learned about git and source code version control today.

Screenshot by Author (The grey highlighted section shows the clear difference between two versions of the code that created the Udder app-a new take on Uber.)

> What is Git?

An extremely impressive thing.

It is a system of undo’s and redo’s at their most sophisticated. It caters for one person’s creativity at the repository’s local version, while doing so for teams and collaboration at the level of the world at its remote version.

By dissecting the versioning process into clear decision points and clearly managing each, the git system flows so well. From the point of adding, to checking status, to the options of removing, ignoring, to points of committing, pushing, pulling, branching, forking, discarding, or merging code, the version histories are there, with the evolution even shown graphically.

Anyone who has worked in an office and tried to create documents with others would understand the pains and confusion of versioning and track-changes. In software development, the constant updating and great need for collaboration magnify the impact of this process.

The git system saves the day by adding significant value to,

  • provide a safety net for the human and inevitable mistakes that occur in the journey to explore and create,
  • log and present crystal clear side by side comparisons between histories of code for easy viewing and checking,
  • while extending an easy invitation to clone and fork so learning and co-creating between teams and strangers have never been easier.

For example, the Alamofire project on GitHub, for HTTP networking implementations in Swift, is starred or referenced 34.2K times, forked or copied 6.3K times, with 14 open pull requests (contributions asked to be incorporated), and 861 closed ones (past contributions adopted or rejected).

> Git vs GitHub

I wrote about GitHub in a previous journal. Git existed first, but only shortly before GitHub.

Git is a version control system that performs the sophisticated do-undo-and-redos of source codes. It was created in 2005, by Linus Torvalds, the Finnish-American software engineer who is the creator of Linux, as a solution to better facilitate the collaborative development of the free and open source operating system that Linux is.

GitHub is like the social networking platform for git. It started in 2007/2008 in San Francisco. It is to programmers perhaps like Medium is to writers, with the additional functionality to co-create novels with strangers, which Medium does not do, and which the film/music/creative writing collaboration platform, HitRecord, does.

Given today’s experience, there is an amazing sense of how far software development has come in a short dozen years. At the same time, as innovative as these new technologies seem to be, they remind me of a saying, “there are no new problems in the world”.

2. What have I learned about other journal users today?

To be continued.

3. What have I learned about journaling products / technologies today?

To be continued.

About The Journaling App Making Journal.

Connect with me.

Follow updates from this journal.

Read the last update. … Read the next update.

--

--

Nicole Liu

Dance . Learning . Technology . Design . Entrepreneurship