Skip to content

Curated resources for newbies to get started with programming, open source, cyber security and many more fields. 💎

License

Notifications You must be signed in to change notification settings

FossMec/Learning-Resources

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

Learning resources

This is an initiative to provide a comprehensive curriculum for students to learn about computer science development and open source. This is a curated list of tutorials, guides and everything a beginner needs to know.

Table of Contents

Linux

Why Linux?

  • Open source : apart from Linux's source code being readable to anyone, it also means that there is a whole community to support when you face issues plus it is secure comparing to other closed source OSes.
  • Ease of development : programming and development in general, is a far better experience in Linux than in other OSes.
  • You do things on your own : there is a lot of learning when you use Linux, you get to understand many things about an OS and a get a touch of how everything works under the hood. Read more about Linux here

Installation and Dual-booting

It is generally recommended to go with the latest LTS release of Ubuntu (18.04.2 at the time of writing). Ubuntu is one of the most popular Linux distros and is strongly recommended for beginners due to its large community and forums.

Common issues faced during Installation

Common terminal commands and Bash Scripting

Desktop Customisation

Tips and tricks

For a more detailed look into the Linux commands, Bash scripting and more, go through this book

Laptop Suggestions

Generally speaking, laptops that come preinstalled with Ubuntu are highly recommended. You can also get one without a graphics card to avoid issues with battery life and driver installation. It is recommended to research about the Linux support of a particular model before getting it. If possible try to stay away from the very latest, since these devices might not have open source drivers available so always check compatibility before you go for a specific model.

There are an overwhelming number of processors out there, it's best to go with a laptop with the latest - up to date generation of Intel i3, i5 or an i7 processor.

If there is need for a device with graphics card, it is highly recommended to get one with NVIDIA graphics to use the CUDA technology. Regarding RAM, any system with 8GB or more RAM is going to fine. And if you get one with 4GB, you can usually upgrade it to 8GB or more. Also if you have enough budget, consider getting a system with an SSD instead of an HDD.

CS50

Android

Programming Langauges

Java

Learn how to format Java code properly

Kotlin

Learn how to format Kotlin code properly

Dart

Learn how to format Flutter/Dart code properly

Application Development

Android Development Tools

Certification

Ruby

Ruby On Rails

Python

Automation with Python

Video Lectures

More Resources

Practicing Python

Presentation Skills

Blogging

Best Practices

Blogging Platforms

Git

Git with Software Development Platforms

Credits

Specials thanks to AMFOSS for creating this amazing curated lists

About

Curated resources for newbies to get started with programming, open source, cyber security and many more fields. 💎

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published