Crio Winter of Doing

Crio Winter of Doing

What is “Crio Winter of Doing”?.

Crio Winter of Doing is a one of a kind program focussed on bringing together budding engineering talent to work on challenging projects for the most exciting startups in the country.

It’s an initiative by one of a kind EdTech platform Crio. do.

You can also check out their other career tracks here.

Day 1 of Crio. do winternship

started with an introduction session by Ajay ravindra one of the founding members of crio.do we learned about the Crio.do winternship and kind of real-world projects we would be working upon and these projects sound exciting.

Just a glimpse of projects in winternship

crio-projects.JPG So let’s get started with what exactly did I did in this winternship.

winternship is divided into 3 stages. Right now I just completed the modules of stage 1 so let me share my learning from that.

So stage 1 is comprised of 5 major topic

1.https

2.rest API’s

3.linux

4.cloud

5.Git

And each topic is taught in isolation and learning experience in something you might have never experienced before. It’s not like your typical watch the tutorial kind of learning. Nothing is given to you on a plate you have tp work for everything here. I would say I spent 30-50 percent of the time outside the Crio platform on sites like StackOverflow or googling the stuff. And that actually made my learning experience better. because that’s how a real software engineer works and give me a sense that I did this on my own,

Let me share my experience on what I learned in each byte

1.Https

https.png

when you type google.com on a browser and press enter google website appear on your screen, have you ever wondered what happened in the background.?

The answer lies in the HTTP protocol.

When we enter a website URL, the browser creates an HTTP Request on our behalf and sends it to the server on which the website is hosted. The HTTP response from the server is read by the browser and rendered for us beautifully as web pages on our screen.

I hope this gives you an understanding of how important HTTPS protocol is.

We can also say that “HTTPS power's the internet”.

Each of the images, CSS file, JavaScript file, or any other resource the website uses requires an HTTP request each to get rendered on your screen.

HTTP stands for HyperText Transfer Protocol. It is, like the name suggests, a set of rules for querying the web. It works on a client-server model, where the client, in most cases, the browser, makes a request and waits for the server to respond.

When you complete this module you can answer questions like

1.what happens in the background when I type google.com on a browser?

2.What is HTTP? Why was it introduced?

3.What happens when you type google.com in a browser?

4.What are the main HTTP verbs/methods?

5.What are the different HTTP response codes?

6.What is the difference between HTTP and HTTPS?

7.What is cURL?

8.What is Postman used for?

2.REST API’s

api.gif

APIs (Application Program Interface) is how different software programs communicate with each other. Application developers specify the rules of "How to communicate" with their application, these are APIs.

For example, Google Maps API specifies how other applications can use it to provide map services to its users.

When you complete this byte. you can do answer all these questions

1.How to make REST API calls?

2.Explain how REST API calls differ from normal HTTP requests for web pages?

3.what is the structure of the REST API?

4.How to integrate different APIs and read their documentation?

3.Linux

f.gif If you have only used GUI’s in your life and was always a bit fascinated with those green text’s on a black screen in all the hacker movie’s so you will find this byte exciting because that green text over a black background is nothing but CLI like Linux and this byte gives you a glimpse of the world of CLI with the help of Linux

So what exactly is Linux?

Linux is an operating system. An operating system is a software that manages all of the hardware resources associated with your desktop or laptop. To put it simply, the operating system manages the communication between your software and your hardware.

why learn Linux?

A majority of systems around the world run some form of Linux. These range from enterprise and desktop servers to smartphones.

60 to 70% of all Web Servers in the world run some form of Linux/Unix and ~90% of all cloud computing happens on Linux based servers.

Mac is based on Unix and supports a terminal where these commands can be run

After this module, you will know how to execute the basic command of Linux and you can answer these basic questions around Linux.

1.Explain where the terminal fits in & how it acts as an alternative to the GUI?

2.Run commands in the terminal & modify their behavior using flags?

3.Navigate easily across directories and create/read/update/delete files & directories ?

4.Filter data stored in files and redirect the output of commands to either a file or as input to another command?

4.Cloud

cloud.png Cloud is the Buzz word that everyone uses but is a very simple concept. In very simple terms, Cloud is a bunch of hardware resources like storage or computers that someone maintains for you. Eg: Apple maintains your photos in iCloud instead of your harddisk, AWS provides you with a server (think desktop computer) to host your website instead of doing it from a machine at your house.

After this Byte, you can answer.

1.What is EC2?

2.What is an AMI(Amazon Machine Image)?

3.What are some different types of instances that AWS offers? What do they differ?

4.How do you connect to a remote machine?

5.What is SSH?

6.What is Docker?

5.Git

git.png In this Byte, we understood how Git works Git is a distributed version control system for tracking changes in any set of files, originally designed for coordinating work among programmers cooperating on source code during software development. Its goals include speed, data integrity, and support for distributed, non-linear workflows.

After this module, you can.

1.Download code from hosting services like GitLab/GitHub & start working on them locally

2.Make changes locally and push them back to the GitLab/GitHub

3.Use Git to create checkpoints (sets of changes tracked together) in your project

4.Share code and resolve merge conflicts while working in a team

5.Overall, use commands to perform basic Git operations for version control and collaboration

So I can say that stage 1 of “Crio winter of doing” is a great learning experience. Looking forward to joining stage 2