Skip to content

Latest commit

 

History

13 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OSDC - Open Source Development Course for Azrieli staff 2023.03

  • site

  • Start day: 2023.03.29

TOC

Videos

General information

This workshop is a shortened version of the full OSDC planned for the staff of the Azrieli College of Engineering in Jerusalem (JCE)

  • Lecturer: Gabor Szabo gabor@szabgab.com
  • The workshop is planned to be in 4 meetings of 5 academic hours.
  • In each meeting we'll have a presentation that will last about 2-3 academic hours (depending on the questions). Then we'll have hands-on assignments aided by the lecturer.
  • The workshop is planned to take place via Zoom, though the first session might be in a class-room setting. We'll decide this later on.
  • The sessions in Zoom will be recorded and made available via YouTube.
  • The presentation will be given in Hebrew. Notes and written materials are in English.
  • The exact dates and time of the meetings will be decided later.
  • If you don't have one yet, please create an account on GitHub and upload an image or avatar.
  • We will have a web-form for the participants so the lecturer will have some understanding of the participants' background.
  • We'll have a private Slack channel for communication in-between the meetings for participants who would like to get help outside of the meetings.

Syllabus

Day 1

  • Day 1 - 2023.03.29 15:00-19:00

  • Introduction to the Open Source development process using GitHub (forking and pull-request).

  • Continuous Integration (CI) to ensure different contributors don't interfere with each-other.

  • Old way in open source:

    • start from the code you have (but it might have been already outdated)
    • change code
    • use diff to created diff-file (also called a patch).
    • send the diff to developer of the project or to the mailing list of the project if it had one.
    • Use the patch command to integrated the changed to the most recent version of the source code.
  • We discussed how GutHub with the idea of forking made this process much easier.

  • We saw the fork, pull-request process in a drawing.

  • We saw a few Pull-Request in the Forem in GitHub project (the platform on which DEV.to runs).

  • We saw how to accept a Pull-Request in the Kantoniko - Ladino dictionary project.

  • We discussed the 3 ways to accept a pull-request.

    • Create a merge commit
    • Squash and merge
    • Rebase and merge
  • We created a Pull-Request adding a JSON file to our website.

  • We hadd issues enabling workflow and checked the GitHub Status page. GitHub Actions was basically down.

  • We discussed a few examples of GitHub Actions (Bash, Python, and Postgres)

  • Video-1

  • Video-2

  • Video-3

Day 2

  • Day 2 - 2023.05.15 15:00-19:00

  • GitFlow

  • Git Workflow - single branch, Continuous Integration

  • Git commit, push, staging

  • What is a fork (historically, in GitHub it is friendly)

  • What is a branch

  • Why do people develop Open Source projects?

  • Why do corporations develop Open Source software?

  • Video 2-1

  • Video 2-2

Day 3

  • Day 3 - 2023.06.19 14:00-18:00

  • The wealth of GitHub (Issues, diffs, blame, insights, watching, stars)

  • Create Github pages - Creating a free website using Markdown and static site generators.

  • Docker - containerization for easier on-boarding and to reduce the risk of executing unknown code on our system.

Day 4

  • Introduction to automated testing. A testing demo with a Python project.
  • On request of the participants there can be demo for other programming languages as well.
  • How open source projects ensure high quality. CI systems, test farms.

Prerequisites

No programming background is required. People without programming background will have non-programming assignments.

About the instructor

Gabor Szabo has been writing software since 1983, working in the hi-tech industry since 1993, teaching software development since 2000, contributing to open source since 2002. He is the author of the Code Maven web site. Check out his GitHub profile.

About

OSDC 2023.03 Azrieli Staff Workshop

Resources

Stars

0 stars

Watchers

1 watching

Forks

Contributors