[go: up one dir, main page]

0% found this document useful (0 votes)
55 views52 pages

WoC 3.0

This document provides information about an open source hackathon called Winter of Code organized by Cyber Labs. The key details are: - It will take place from January to March 2021 and is open to participants of any skill level. Tracks include web development, app development, machine learning, graphic design, and information security. - The timeline includes registration opening on January 24th, a coding period from February 14th to March 18th, and results being announced on March 30th. - Participants who successfully complete their projects will have the opportunity to interview for prizes and cash awards. The event is fully online and does not require forming teams.

Uploaded by

Divyansh Bansal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
55 views52 pages

WoC 3.0

This document provides information about an open source hackathon called Winter of Code organized by Cyber Labs. The key details are: - It will take place from January to March 2021 and is open to participants of any skill level. Tracks include web development, app development, machine learning, graphic design, and information security. - The timeline includes registration opening on January 24th, a coding period from February 14th to March 18th, and results being announced on March 30th. - Participants who successfully complete their projects will have the opportunity to interview for prizes and cash awards. The event is fully online and does not require forming teams.

Uploaded by

Divyansh Bansal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 52

Winter of Code

Open Source Hackathon by Cyber Labs


Pre-requisites
● None (Except Git, Github)
Fees
● None
TRACKS (Fields you can contribute in)

● Web Development
● App Development
● Machine Learning
● Graphic Designing
● Information Security
Winter of Code Timeline
● January 24 Registrations open
● January 31 Last date for submission of proposals
● February 14 Coding Period Starts
● February 26 Mid Evaluations
● March 18 Coding Period Ends
● March 30 Results will be announced
Winter of Code Successful completion criterion

Project completion/adequate progress is mandatory.


PRIZES
● Participants from each division, who successfully complete the
winter of code, will receive shortlist chance to interview
process.

● Cash Prizes and Exciting goodies await the winners!


Some Important Points
● The competition will be online, so you can participate from
anywhere.
● Winter of Code is an individual event. (no formation of teams)
Future Events (for first year only)
Winter of Code 2021 April 2021
Winter of Code event by Interviews
CyberLabs inspired by Regular sessions related to fields
Google Summer of Code (only for members of CyberLabs)

January June-October
2021 (No vacation) 2021

June 2021 onwards


March 2021
Test for recruitment procedure Preparation for summer
(optional for participants of Winter of programs (GSoC, RGSoC)
code or IIT (ISM) website competition)
What is open source?
● Computer software where the source code is distributed
under an open source license that allows anyone to study,
change, improve and distribute the software.
● Promotes collaboration by teaching how to work in a big
organization
● Community of dedicated developers
What is GSoC?
Google Summer of Code (GSoC) is an online, international
program funded by Google designed to encourage university
student participation in open source software development.
About
Students work for an open source software organization, and
earn a stipend for successfully completing the project.
University students spend their time outside of school working
in a field that can help them with their studies and career after
university.
Goals of the program
● Motivate students to begin participating in open source
development.
● Provide students in Computer Science and related fields the
opportunity to do work related to their academic pursuits.
● Give students exposure to real-world software development
scenarios (e.g., testing, version control, software licensing,
mailing-list etiquette, etc.).
● Create more open source code.
● Help open source projects bring in new developers.
How does GSoC work?

● Open source software projects apply to be mentor


organizations
● Google chooses the organizations to participate (206 in
2018)
● Students submit project proposals to mentor organizations
How does GSoC work?

● Mentor organizations choose the students they’d like to


accept
● Students are paired with a mentor to help them throughout
their project
● Coding begins! Students work towards milestones laid out
in their project proposal with their mentor over 12 weeks
Evaluations
● Students must pass three evaluations
● Students who pass each evaluation are paid a stipend for
their work
● At the conclusion of GSoC, students submit the code they’ve
written for their project for everyone to see and use!
Eligibility
● Over 18 upon registration
● Accepted into or enrolled in a university program by the
student acceptance date
● Eligible to work in the country in which you reside
● Have participated in no more than 1 previous GSoC
Statistics
● In 14 years over 14,762 students from 109 countries have
been accepted into GSoC
● Countries with the most students:
○ India (3,436), United States (2,432), and Germany (825)

● Approximately 35+ million lines of code have been produced


Statistics (GSoCers from IIT(ISM))
Last 2 years GsoC results from IIT (ISM)
○ GSoC 2017 :- 4 Selections

○ GSoC 2018 :- 9 Selections

○ GSoC 2020 :- 6 Selections

○ GSoC 2021 :- 5 (You decide)

○ GSoC 2022 :- _ _ (You decide)


Useful links
● Program Site: http://g.co/gsoc
● Student Guide: http://g.co/gsoc/resources/manual
● Google Open Source Blog: https://opensource.googleblog.com/
Want to see a sample successful GSoC
Proposal?
version control with git
why git?
history:

Know exactly which files changed, who made those changes, and when
those changes occured.

backup:

Ability to have different versions of the code in different places.

collaboration:

Collaborate easily with other people on the same codebase


workshop outline
my first git:

git good:

git world:
$ terminal commands are typed with
this font and color.
my first git
Create your shiny repo and your first commit.
what is a repository?
A repository is like any other folder on your computer, it can contain any type
of file and works in exactly the same way…

Except:

It has a hidden file named ".git" that stores the history of that folder
first, install git
second, start a new repository by

$ git init <repository name>


what are commits?
snapshots of the state (e.g. code) of your repository
commit your work by using

$ git add .

$ git commit -m “<details>”


more about commits
Bc7fd9 Commits form a linked list
“Add
Oranges” structure which shows what you
have done over time.
a3ffde
“Add apples” Use git log to see your commit
history.
9cd1ce
“First commit,
Add fruit.txt”
staging changes
git add git commit

Unstaged Staged Committed


Changes Changes Changes

git reset . git reset <hash>


my first git: recap
$ git init - converts a folder to a super smart git repository.

$ git add - adds the files you want to be tracked to the staging area.

$ git commit - creates a new snapshot of your repository at that point in


time.

$ git reset - Undo your commit or unstage your files.

$ git log - View your commit history.

$ git status - See the current status of your repository


git good
branching, context switching, merging
commits
Bc7fd9
“Add oranges”

a3ffde
“Add apples”

9cd1ce
“First commit,
Add fruit.txt”
working with branches
$ git branch - see a list of all available branches.

$ git branch <branchname> - create a new


branch with the desired name, based on the current
branch.
working with HEAD
$ git checkout <branch name> - Redirect HEAD to
the desired branch
commits branches HEAD
Bc7fd9
master HEAD
“Add oranges”

somebranch

a3ffde
“Add apples”

9cd1ce
“First commit,
Add fruit.txt”
merging = combining commits

$ git merge <branch name> - creates a new commit


that combines the last commit of the current HEAD branch
with the last commit of the desired branch.
git good: recap...
$ git branch - List all branches

$ git branch <name> - creates a branch with that name

$ git checkout <name> - jump to the branch with this name

$ git merge --no-ff <name> - merge the branch with this name into
the current one.
git world
publishing, updating and downloading
downloading / updating Repos
$ git clone <url> - downloads a copy of a remote
git repository.

$ git pull - performs a merge of what you have on


your computer with what's on the server.

$ git push - sends your version to the server.


QUESTIONS?

You might also like