LibreCourseUY

How to Learn

Our philosophy for learning programming effectively.


The Approach

01

Quick Context

Watch a short tutorial (no more than 2 hours) to understand the basic syntax and structure of the language or tool. Don't try to learn everything, just get enough context to understand what you're looking at.

Example:

You want to learn Python. Watch a 1-hour "Python for beginners" video to understand variables, loops, functions, and basic data structures. That's it. Don't finish the entire course.

02

Build Something Real

Find a project to work on or a repository to contribute to. Just start doing it, even if you don't know anything. Learn by using documentation, forums, and search engines. No tutorials. Figure it out yourself.

Example:

You want to contribute to fingcomms. Clone the repo, try to understand the code, make a small change, and push it. When you encounter an error, search on Stack Overflow, read the FastAPI docs, ask in the community

03

Ask for Help

If you get truly stuck, reach out to more experienced developers through the community groups. This is the "assisted" part of assisted autonomy.

Example:

You've been stuck on the same error for 2+ hours. You've searched everywhere and nothing works. That's when you ask for help in the LibrecourseUY Discord or group chats.


What Can You Learn?

This approach works for anything in programming:

Learn in community!

Join our Discord, where you will find a community to learn open source together

Programming Languages

Python, JavaScript, Rust, Go, C, Java, and more

Frameworks

React, Vue, FastAPI, Django, Express, Spring, and more

Tools & Technologies

Git, Docker, PostgreSQL, MongoDB, AWS, Linux, and more

The key is: context first → build real stuff → ask for help when stuck


What is DeepWiki?

DeepWiki is an AI-powered documentation tool that automatically generates comprehensive documentation for your codebase. It creates API references, architecture diagrams, and code explanations.

We use DeepWiki across all our projects to help you understand the codebase faster. Check the Projects page for DeepWiki links to each repository.

Why it's useful: When you're trying to contribute to a new project, DeepWiki helps you understand the codebase structure, API endpoints, and how different components connect, exactly when you need it.


Assisted Autonomy

We believe in assisted autonomy, a learning approach that balances independence with guidance. This method builds real, lasting skills rather than temporary copy-paste knowledge.

DeepWiki (deepwiki.dev) is an AI-powered documentation service that automatically generates comprehensive documentation for GitHub repositories. It analyzes code and creates API references, architecture diagrams, and code explanations.


Recommended for Beginners

Start with these languages and frameworks based on your goals:

Web Development

JavaScript + React

Popular

Most popular, huge community, infinite resources

Python + FastAPI

Easy

Great for APIs, easy syntax, very readable

Systems & Low-Level

Rust

Modern

Modern, safe, great for learning systems programming

C

Foundation

Foundation of everything, understand how computers work

Mobile Development

React Native

Cross-platform

Use JavaScript for iOS and Android

Flutter (Dart)

Beautiful

Google's framework, beautiful UIs

Data & AI

Python

Top

The language for AI/ML, easiest for data science

Julia

Growing

Growing fast in scientific computing

Automation & Scripting

Python

Versatile

Scripts, automation, dev tools, APIs, everything

JavaScript

Browser

Browser automation, Node.js scripts, web scrapers

Bash

System

Shell scripting, Linux automation, CLI tools

Go

Fast

High-performance scripts, CLI tools, automation

Other Languages

Ruby

Trending

Elegant syntax, great for web development with Rails

TypeScript

Web

JavaScript with types, great for large web apps

Java

Enterprise

Industry standard, Android, enterprise backends

C#

Game

Game development (Unity), Windows apps, .NET


Resources

Use these to learn (in this order):

  • 1 Official Documentation

    MDN, Python Docs, Rust Docs, always start here

  • 2 Community Forums

    Stack Overflow, Reddit (r/learnprogramming), community Discord

  • 3 Tutorials

    Only when you need quick context (limit to 2 hours max)