Cara Mudah Berkolaborasi dengan Github - Gilang RamadhanDicodingEvent
Di dalam dunia development aplikasi, source code management (version control) adalah salah satu tools yang bisa digunakan untuk berkolaborasi antara developer. Perusahaan-perusahaan besar di dunia sudah pasti menggunakan version control untuk mengelola produk aplikasinya, contohnya Facebook menggunakan Mercurial, Quora menggunakan Git, dan Twitter menggunakan Git.
Version control merupakan kemampuan untuk mengatur perubahan dan konfigurasi dari suatu aplikasi. Setiap perubahan yang dilakukan oleh individu akan dicatat sehingga memperjelas siapa yang melakukan perubahan terhadap suatu berkas. Version control bisa juga berfungsi sebagai backup files ketika terjadi kesalahan dan mempermudah pencarian bug dengan adanya fitur pencatatan perubahan.
Poin yang akan dipelajari :
- Apa itu kolaborasi dan seberapa pentingnya
- Memahami tentang Git dan penggunaannya
- Mempelajari tools VCS (Version Control System) serta penggunaannya
Cara Mudah Berkolaborasi dengan Github - Gilang RamadhanDicodingEvent
Di dalam dunia development aplikasi, source code management (version control) adalah salah satu tools yang bisa digunakan untuk berkolaborasi antara developer. Perusahaan-perusahaan besar di dunia sudah pasti menggunakan version control untuk mengelola produk aplikasinya, contohnya Facebook menggunakan Mercurial, Quora menggunakan Git, dan Twitter menggunakan Git.
Version control merupakan kemampuan untuk mengatur perubahan dan konfigurasi dari suatu aplikasi. Setiap perubahan yang dilakukan oleh individu akan dicatat sehingga memperjelas siapa yang melakukan perubahan terhadap suatu berkas. Version control bisa juga berfungsi sebagai backup files ketika terjadi kesalahan dan mempermudah pencarian bug dengan adanya fitur pencatatan perubahan.
Poin yang akan dipelajari :
- Apa itu kolaborasi dan seberapa pentingnya
- Memahami tentang Git dan penggunaannya
- Mempelajari tools VCS (Version Control System) serta penggunaannya
10. Besut Kode program
Registration → Elimination → Mentoring → GSOC
1. Set up online accounts:
2. Use online services:
1. Create your own Jekyll website
2. Edit Wikipedia article
3. Earn one Stack Overflow badge
4. Solve three Project Euler problems
5. Fix a small bug in a GitHub repository
13. Besut Kode program
Registration → Elimination → Mentoring → GSOC
Task 1
Task 2
Task 3
Task 4
Regular GitHub activity: every three days
14. Besut Kode program
Registration → Elimination → Mentoring → GSOC
Task 1
Task 2
Task 3
Task 4
Earnt three Stackoverflow badges
20
15. Besut Kode program
Registration → Elimination → Mentoring → GSOC
Each participant builds a
small block of a common
problem.
You choose the color of your
block.
Mentors help you make
decisions,
and identify quality
problems.
Your block must be merged.
16. Besut Kode program
Registration → Elimination → Mentoring → GSOC
February 2017
Jakarta
Application writing workshop
Mid-March 2017 – FOSSASIA
Singapore
Build connections
March 2017
Submit application
17. Google Summer of Code
Application review
Applicants
Reviewer/Mentor
18. Google Summer of Code
Application review
What are my questions when reviewing?
● Which University are they from?
● What projects have they done at University?
● What programming languages do they know?
● What is their IELS score?
● How well written is the application?
● Have they defined good milestones?
19. Google Summer of Code
Application review
What are my questions when reviewing?
● Which University are they from?
● What projects have they done at University?
● What programming languages do they know?
● What is their IELTS score?
● How well written is the application?
● Have they defined good milestones?
22. Git adalah
Github adalah situs web yang dibangun disekitar Git.
Setiap orang harus tahu Git itu apa (terutama pemrogram perangkat
lunak)
Github adalah situs web yang dibangun disekitar Git.
Setiap orang harus tahu Git itu apa (terutama pemrogram perangkat
lunak)
23. Apa itu Git?
● Git adalah kanvas dimana Anda bekerja dan
berkolaborasi
● Git adalah distributor perangkat lunak terbuka dengan
dengan sistem terkendali (VCS)
● Git diciptakan oleh Linus Torvalds, untuk
membantunya membangun sistem operasi Linux.
https://github.com/GitIndonesia/handbook
https://github.com/endymuhardin/buku-git
https://github.com/endymuhardin/belajarGit
24. Git adalah
Git mengelola
berkas yang
disunting oleh
orang-orang dari
seluruh dunia, dan
memberikan setiap
berkas identifiernya,
sehingga setiap
orang tahu versi
yang mana yang
mereka punya, dan
bagaimana mereka
bisa
menggabungkan
perubahan yang
mereka punya
dengan perubahan
yang dilakukan oleh
orang lain ke berkas
yang sama.
26. GitHub.com
35 juta repo
Publik : Sumber terbuka (Open Source)
Privat : Untuk komersil
125,000 baris kode (lines of code -LOC)
diciptakan per hari
14 juta pengguna
Halaman GitHub – hosting situs web
gratis
35. Repo Indonesia yang keren
https://github.com/GitIndonesia/awesome-indonesia-repo
https://facebook.com/groups/GitHubID
36. GitHub – bukan sekedar perangkat
lunak
Perangkat lunak (software) itu bukan hal
istimewa, mereka hanya berkas
Publik atau pribadi (privat)
Publik:
●
Data terbuka
●
Rumah terbuka
●
Perusahaan terbuka
●
Situs web terbuka
●
Tulisan
●
Terjemahan
37. Berbagi berkas di GitHub
https://github.com/CMAA/nova-organi-harmonia
38. Berbagi berkas di GitHub
https://github.com/CMAA/nova-organi-harmonia
50. GitHub dengan SiteLeaf
Perangkat tambahan Github lainnya adalah SiteLeaf, yang termasuk alat
penyuntingan beta WYISWYG (apa yang anda lihat anda dapatkan)
Perangkat tambahan Github lainnya adalah SiteLeaf, yang termasuk alat
penyuntingan beta WYISWYG (apa yang anda lihat anda dapatkan)
51. Continuous Integration (CI)
Integrasi berkelanjutan
https://github.com/integrations/feature/continuous-integration
Continuous Integration (CI) atau
integrasi berkelanjutan adalah sebuah
cara untuk membuat tes berjalan
secara otomatis (seperti menyusun
program, menjalankan unit tes, dll).
CI digunakan dengan cara
memerintahkan apa yang harus
dilakukan ( seperti: susun program ini
dengan clang, jalankan program ini, Tes
kecepatan program, dll ).
Instruksi ini biasanya ditulis dengan
berkas konfigurasi (configure files), dan
perintahnya adalah command
Linux/*nix. Karena itu, pengetahuan
dasar Linux dibutuhkan untuk memakai
CI.
53. Kualitas perangkat lunak GitHub
https://github.com/integrations/feature/code-quality
Alat yang memberi peringatan untuk
aspek aspek yang mencurigakan
dalam kode sumber, yang bisa jadi
kesalahan (bug)
Biasanya menggunakan analisa statik
– dimana mereka tidak menjalankan
program saat analisa berjalan.
54. Code Climate
https://codeclimate.com/dashboard
Code Climate menyatukan hasil-hasil dari serangkaian analisa statik menjadi
satu laporan langsung, yang memberikan tim Anda informasi yang mereka
perlukan apabila mereka perlu untuk mengidentifikasikan daerah daerah kritis,
mengevaluasi cara-cara baru, dan memperbaiki kualitas kode.
59. blissai.com
BLISSAI
Blissai mendukung
banyak bahasa
pemrograman dan
memiliki banyak
tipe linters.
BLISSAI
Blissai mendukung
banyak bahasa
pemrograman dan
memiliki banyak
tipe linters.
Go
JavaScript
TypeScript
Java
C
C++
C#
Objective-C
Objective-C++
PHP
Python
Ruby
CoffeeScript
Rails
CSS
SCSS
Swift
Scala
Elixir
Perl
Stylus
Editor's Notes
Do you want to become a programmer?
Do you like mathematics or natural science?
Then you need to code, and code well!
This workshop will show you a few tools, to help you get started.
Do you want to become a programmer?
Do you like mathematics or natural science?
Then you need to code, and code well!
This workshop will show you a few tools, to help you get started.
Do you want to become a programmer?
Do you like mathematics or natural science?
Then you need to code, and code well!
This workshop will show you a few tools, to help you get started.
Do you want to become a programmer?
Do you like mathematics or natural science?
Then you need to code, and code well!
This workshop will show you a few tools, to help you get started.
https://commons.wikimedia.org/wiki/File:Olivetti_Valentine.jpg
Public domain
Git is the canvas on which you work and collaborate.
Git is an open source distributed version control system (VCS).
Git was created by Linus Torvalds, to help him build an operating system that you may have heard of, called Linux.
<number>
Github is website built around Git.
Everyone must know git.
https://commons.wikimedia.org/wiki/File:Git_operations.svg GFDL
Git is the canvas on which you work and collaborate.
Git is an open source distributed version control system (VCS).
Git was created by Linus Torvalds, to help him build an operating system that you may have heard of, called Linux.
<number>
Git manages files that are being edited by people all over the world, giving each copy its own version identifier. So each person knows which version they have, and how to merge their changes with other peoples changes, to the same file.
Git is the canvas on which you work and collaborate.
Git is an open source distributed version control system (VCS).
Git was created by Linus Torvalds, to help him build an operating system that you may have heard of, called Linux.
<number>
Github has more than 14 million users and more than 35 million repositories. 125,000 LOC added per day.
It the largest host of source code in the world.
It also host websites on Github Pages.
53rd most visited site on the Internet
Up 10 in last three months
i.e. was 63rd three months ago
Your Github profile is your most important CV.
It doesnt lie.
It does not include information, such as I am a PLSQL programmer extrordinaire, but PLSQL is not in my github repositories as it is all commercial.
And Github publishes their prime asset; thier metadata .
You can download it on Github Archive.
People fetch the Github Archive data, and publish new statistics
Such as http://octoboard.com/ (Defunct) showing statistics as of March 11, 2012
https://web.archive.org/web/20150801193208/http://octoboard.com/
Another tool shows the most “starred” developers, per country
Notice faisalman, best in Bandung
Per city
If you are a startup company in Bandung, and you need a good developer, who are you going to call…
Another way to look for Indonesians is to look for Awesome repositories
This is an awesome github project, linking to all the other awesome github projects by Indonesians
This list is managed by the GitIndonesia organisation
Any thing you can legally share
Public domain, Creative Commons, and other Open Licenses.
The Nova Organi Harmonia , by German priest and musicologist Jules Van Nuffel
Organ accompaniments for Gregorian Chant
LilyPond transcription
LilyPond is a computer program and file format for music *engraving* , to make printed music look beautiful, accurately representing the original printing .
One of those contributions is by “Mylee”, who is Mika from Finland.
Who knows what this change does?
It is not surprising that it requires someone outside of USA to fix this bug.
And here is their bug tracker.
Maybe you do not want to create a website by hand?
GitBook will help you focus on writing,
And they will create a beautiful website for you.
Here is the Github Repository
A research paper with Latex formula
Another Github addon tool is SiteLeaf, which includes a beta WYSIWYG editor.
This is a Wordpress killer.
Free cloud servers, building open source projects.
Travis CI provides free virtual machines for open source projects.
In return, Open source programmers fix bugs for them.
Everyone wins.
Finding bugs.
We dont need to open a text editor, or a command prompt.
Github integrates many online services that do the linting for us.
Here are some projects I have in Code Climate.
Code Climate consolidates the results from a suite of static analysis tools into a single, real-time report, giving your team the information it needs to identify hotspots, evaluate new approaches, and improve code quality.
It supports many languages and linters.
But it doesnt support C.
Some of the problems it finds
An explanation of the problem.
Blissai supports the most languages, with many types of linters.
Includes the C family of languages.