Skip to content

For Students who are willing to start something this summer.

License

Notifications You must be signed in to change notification settings

hashes-jmi/Productive-Summer

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 

Repository files navigation

Productive Summer

Students who are willing to start something this summer.

Mindset

Go through these basic tutorials and all courses. The Numbered bullets should be followed in sequence, whereas unordered bullets can be done randomly.
The thing will get easy with practice always start is hard. My suggestion is that go through the documentation tutorial first, then try video playlist. It will help you to understand better.
Some concepts will be entirely new and can be very hard to understand, give a tough fight try to understand one time two time five time but don't leave, you will understand things on the fly, Just dedicate time, and stay with problems.

What to start?: Just start with anything at the end of the day will learn some logic building and will learn something which will surely stay with you. You can switch domains afterwards when you find your interest.
Documentation tutorial is hard to understand: yes, I know that you will face this. The reason why I am pushing for documentation tutorials is that you need to learn how to read the documentation. When you will do a real project, reading will be the main key. Copy Paste, Try to understand what is going on. Not understanding is completely fine, you will understand with videos when the creator will explain things.

Disclaimer: I am no a guru of anything, I took some of these courses, I included some creators that I love, some just came on a random search. This is not a combination of the greatest courses these are normal courses. I am not affiliated with any one of them.

I AM WAITING FOR YOUR PR, PLEASE.

Content

Web Development

These are more than concepts and understanding terminologies. Backend generally needs critical thinking, logic building, and connecting things. Frontend needs designing, displaying and connecting things.

  1. How web works
  2. HTTP Request and Response
  3. What is Rest API

Frontend development

The workflow that I will suggest that do Basic and then move to React (because that is easy to start with) then come to Basic Level 2.

Basic [Needed for all]

  1. HTML: The skeleton
  2. CSS: The beauty
  3. JS Basic: The logic

This is a basic portion for anyone interested in frontend development. I guess a good read for HTML, seeing some examples of CSS and trying some of JS will do. Don't get stuck here for long.

React

A JavaScript library for building user interfaces.
React is powerful yet simple, you need to learn only concepts and then it is super easy to use.

  1. Get started with documentation
  2. Get started with videos
  3. Project: ToDo Application

React does only one thing that is building user interfaces. For other thing need for a full-fledged application you need to dig into its ecosystem.

Important concepts to learn:

  1. State and Props
  2. Component Lifecycle
  3. Creating Reusable Components
  4. JSX

Some Advanced concepts:

  1. Redux
  2. React with Redux
  3. Routers
  4. Axios: Although this has nothing to do with react but is very frequently used.

Angular

  1. Get started with documentation
  2. Get started with videos

I haven't worked with angular yet, I would love for your pull request.

Basic Level 2

Now JavaScript generally means combined with node.

Design Concepts

This is UI/UX part of an application. Frontend applications are not only for working they should look good.

Designing is a large topic and require more experience than coding, see more and more design on behance, watch

Backend Development

Flask

Flask is easy and simple, used for simple to more complex applications.

  1. Get started with documentation
  2. Get started with videos
  3. Rest api with flask

Django

Django is powerful and very organised, get started with Django can be a little overwhelming, so I would suggest that first complete Flask tutorial and then try hands with Django (you can start with Django, no problem at all, but flask will help you understand the need and core concept of Django).

  1. Get Started with documentation
  2. Get started with videos: Although this tutorial is in Django 1.9 core concepts remain same.
  3. Project: Blog App

Django Rest Framework

  1. Get started with documentation
  2. Get Started with videos

Django Cookbook for advanced users: You will need this when developing a real-world application

Express

  1. Get Started with documentation
  2. Get started with videos
  3. Rest API with Express

Ruby on Rails

Ruby on Rails is the web framework that started it all. Launched over 13 years ago, it popularised web development and made it cool. It is a very powerful framework, that is incredibly easy to use and learn and can do anything you want it to. A lot of current popular frameworks like Django are inspired by Ruby on Rails.

  1. The Odin Project: This is the best course for learning Ruby on Rails, and is arguably the only course you'll need for it. It will teach you fullstack development in Ruby on Rails, i.e. backend, frontend, databases, testing and everything in between. You are basically empolyable after finishing this course.

Cloud Computing and Security

Get started with AWS

Take one of these 3 courses to go with, you will understand what to do next. All three courses are different in some way.

System design

I love this tutorials for understanding system design basics.

Cyber Security and Ethical Hacking

  • Web bug bounty: This is good for a backend developer, I took this course and was basic and good I guess, but is little outdated.
  • Ethical Hacking

Take any of the two above course for getting started with basics. They have the same topics.

Data Structures and Algorithm

Core Concepts

Core concept of Data structures are same for every language.

With Python

Mit OCW Course is great if you can dedicate time.

With C/C++

I found this course useful.

Machine Learning AI NLP

  1. To get started with Machine Learning first course you need to do is this. Complete the assignments for maximu outcome from this course.
  2. For Mathematics and Statistics, Youtube Channel like Mathematical Monk can be preferred.
  3. For understanding Linear Algebra : Essence of Linear Algebra and how Neural Networks and Differntial Equations : Essence of Calculus try these playlists. Channel 3 Blue 1 Brown gives good visual animations to understand these concepts easily.
  4. For specialization in Machine Learning and Deep Learning complete all these Course in specialization pragramme with assignments.
  5. For some real world projects Fast.ai and Applied AI Course are preffered.
  6. At last for learning more and more daily try reading as much research papers as possible.

App Development

React Native

First learn basic JavaScript and also ES6 Syntax. All core concepts like JSX, Redux is same for React and React Native.

  1. Get Started with documentation
  2. Get Started with Videos

React Native can be frustrating while installing, I will highly recommend starting with Expo, which is under the tab Expo CLI Quickstart on page Getting Started.

Read why not expo and if you feel so then use React Native CLI. Installation is given on tab React Native CLI Quickstart. Follow the installation step by step and line by line, do not skip or do anything else other than what is given, even do not try to mess with versions, just do what is said.

React Native is not self-sufficient, it needs more modules for little advanced uses.

  1. Redux
  2. React Native with Redux
  3. React Navigation V2
  4. React Navigation V3: First see V2 then jump to this
  5. Axios: Although this has nothing to do with react but is very frequently used.

Flutter

  1. Get started with documentation
  2. Get started with video

Android

iOS

  1. Swift Tutorial
  2. official apple tutorial is great to start with.
  3. Udacity Free course

Technologies and Languages

Git and GitHub

This Udacity course is great

Python

  • W3Schools
  • Udemy Course: This course is best that I could find, but is lengthy. I recommend this to all level of students, beginners to advanced.

Ruby

  • The Odin Project: This is probably the best Ruby course there is. It teaches Ruby using the concept of learning by doing (which, in my opinion, is the best way yo learn programming), i.e. you learn concepts by building projects using what you just learnt.

Tools

ToDo Section

  • Web Development
    • Frontend development
      • React
      • Angular
      • Vue
      • Design Concepts
    • Backend Development
      • Flask
      • Django
      • Express
      • Ruby on Rails
      • PHP
      • Laravel
  • Cloud Computing and Security
    • Get started with AWS
    • System design
    • Cyber Security and Ethical Hacking
  • Data Structures and Algorithm
    • With Python
    • With C/C++
    • With Java
  • Machine Learning AI NLP
  • App Development
    • React Native
    • Flutter
    • Android
    • iOS
  • Technologies and Languages
    • C and C++
    • Java
    • Python
    • Git and GitHub
    • Ruby
    • Swift

About

For Students who are willing to start something this summer.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published