Imagine that you are recently graduated from school. Or, you want to switch your career to Software Engineering and her close friends. Or, imagine that your close friend or relative ask you for the advice to make a journey to become lifelong student on Software Engineering (or life in general). This is my personal curated collection of resource that I will use if I were on those three situation. This document is structured into five roadmap and I will try to adjust each of them into three level, Basic, Intermediate, and Advanced. Basic is the resource for you to be 20% percentile. Intermediate is 80% percentile. Advanced is 97% percentile.
- Software Development
- Help developing right software right from zero to one.
- Help shipping software. Help running shipped software effectively and efficiently. Involve scalability, availability, and reliability.
- Help building good enough knowledge and skill foundation. So, when you found hard enough problem, you can dig deeper on the foundation to solve it better
- Help you to get hired or promoted. Because, 80% of the cases that you need to be the student are you need to get paid (or get paid just more). I believe that to get paid is the beginning goal of our journey.
- Help shipping software who communicate with each other (client-server architecture or other) or software that lay above the hardware layer and below user layer (80% current use case).
- Software Lead
- Help building best culture and principle for your team to succeed.
- Help translate business requirement into software design and architecture.
- Artificial Intelligence
- Help developing intelligent computer model who can infer. My personal definition are the software who can either (1) predict, or (2) give you insight from another point of view, or (3) understand the world as if through the lens of human, or (4) automate as much as your task as possible.
- Help shipping intelligent software effectively and efficiently. Scalable, available, and reliable intelligent software system.
- Business
- How to run the whole business as if you're the executive of the company. The focus are external involving business strategy and continuous shipment of value
- How to design the right product or service right. Developing the right business value.
- How to develop and ship business that matter for each vertical. Currently my focus are education and agriculture with co-op business model.
- Life
- How to build foundational map about how we see the world through the lens of mental model.
- How to build knowledge and skill in various field (polyglot) until "the loop" itself is broken.
- How to become better parent or educator.
- How to become better person in general.
- My personal resource about how to build your better legacy.
My recommended approach is to dig "just enough" for each level and iterate it again from Basic. In parallel with those approach, I recommend to do full cycle knwoledge -> skill -> knowledge approach. Do just enough to learn, then practice, then learn again, and loop.
-
GeeksforGeeks (LastMinuteNotes / GATE CS Notes / UGC NET CS Notes Paper II / UGC NET CS Notes Paper III)
-
Courses 2019-20, Department of Computer Science and Technology, University of Cambridge
-
Cosmos - your personal offline collection of every algorithm and data structure one will ever encounter and use in a lifetime.
-
interactive-coding-challenges - 120+ interactive Python coding interview challenges (algorithms and data structures)
-
Design Patterns for Humans: An ultra-simplified explanation to design patterns
-
A pattern language for microservices | Microservice Architecture
-
A curated list of software and architecture related design patterns.
-
learn-x-in-y-minutes (erlang elixir) ๐
-
make-a-lisp-process (erlang elixir) ๐
-
newsletter (elixir-digest elixir-weekly awesome-elixir) ๐ฐ
-
elixir-cqrs
- building-conduit ๐
-
elixir-rtc (membrane-framework xirsys) ๐
-
backlog
-
learn-x-in-y-minutes (go / rust) ๐
-
make-a-lisp-process (go / rust) ๐
-
cheatsheet
-
newsletter
-
go-training (ultimate-go-study-guide / ultimate-go / writing-web-services-in-go / repo / python-based-workflows / machine-learning-with-go / important-reading)
-
pingcap-training-courses (distributed-systems-in-go / distributed-systems-in-rust / tikv-deep-dive / practical-networked-applications-in-rust)
-
A list of useful resources to learn Data Engineering from scratch
-
Large-Scale Data Processing and Optimisation | 2018-2019 | Cambridge Computer Laboratory
-
Elixir
-
Rust
-
Go
-
DB
-
Frontend
-
DevOps
-
Leader
-
Founder
-
Deep|Bayes โ Summer school on Deep Learning and Bayesian Methods
-
Gaussian Process and Uncertainty Quantification Summer School 2019
-
[FoundationsOfDataScience](https://www.cs.cornell.edu/jeh/book no so;utions March 2019.pdf)
-
-
Introduction
-
Linear models 1
-
Methodology 1
-
Methodology 2
-
Probabilistic Models 1
-
Linear Models 2
-
Deep Learning 1
-
Probabilistic Models 2
-
Deep Learning 2
-
Tree Model and Ensembles
-
Models and Sequential Data
-
Matrix models
-
Reinforcement Learning
-
Review
-
-
Part 2: Deep Learning from the Foundations | fast.ai course v3
-
List of summer schools in machine learning + related fields across the globe
-
new fast.ai course: A Code-First Introduction to Natural Language Processing ยท fast.ai
-
Deep Learning for NLP and Speech Recognition | Uday Kamath | Springer
-
Developing Enterprise Chatbots - Learning Linguistic Structures | Boris Galitsky | Springer
-
A library of state-of-the-art pretrained models for Natural Language Processing (NLP)
-
Tracking Progress in Natural Language Processing | NLP-progress
-
Extractive Summarization
-
How To Make Custom AI-Generated Text With GPT-2 | Max Woolf's Blog
-
Elixir
-
Go
-
Rust
-
https://dataelixir.com/issue/ + issueNumber or https://twitter.com/dataelixir