I want to learn...
list of resources for a variety of topics - collected from my experiences
Programming Languages
C
Jacob Sorber's Youtube Channel - entire youtube channel dedicated to a variety of c concepts
C++
Cherno's cpp series - youtube playlist covering a bunch of cpp concepts, use this as more of a reference than a guide
cplusplus.com - my favourite site for cpp documentation
x86 assembly
Davy Wybiral - brief youtube playlist with some assembly programming basics, should get you started
Haskell
Learn YOu a Haskell for Great Good! - very detailed and well explained book on haskell
Haskell for Imperative Programmers series - youtube series on various haskell topics. goes very in-depth. might be better to use this one as a reference instead of watching every single video
Rust
rust has a bit of a learning curve, especially if you are not familiar with cpp.Let's Get Rusty series - youtube playlist on a whole bunch of haskell concepts
r4cppp: rust for C++ programmers - exactly what it sounds like. if you are familiar with cpp, this will be a very great help
Zig
Zig Learn - Book style guide going through various language features
Rendering Libraries
OpenGL
Learn about OpenGL rendering concepts like primitives (VBs, IBs, VAOs), shaders (lighting, textures, maps), and some linear algebra concepts. Most resources use cpp.learnopengl.com - solid website that walks you through OpenGL basics. you can easily get by by only following this
Cherno OpenGL series - youtube playlist tutorial about various OpenGL concepts. also focuses on optimizations and does some things in more efficient ways than learnopengl.com
docs.gl - OpenGL documentation (use as a reference)
Ncurses
Primarily focus on c.NCURSES HOWTO - basic website based guide to walk through Ncurses basics. also covers a couple of ncurses libraries like the panel, menu and form libraries. also includes a couple of example projects
Casual Coder Ncurses series - youtube playlist that covers some ncurses fundamentals. this is good if you like video tutorials over text. also explains a couple of important concepts in good depth.
ncurses 3x - documentation for ncurses library (use as reference, and also in depth reading)
Xlib (rust)
Learn xlib programming with rust (the language i chose). Good luck with this one - xlib is huge and documentation is sparse. I had to scour the source code as documentation. To get started, you need rust bindings for xlib, i ended up using x11rb. My best advice for this is to read the source code for other projects that use x11rb to figure out what the heck is going on. It may perhaps be better to learn xlib first using c as there seems to be more resources.x11rb tutorial - decent walkthrough of x11 basics. nothing much on extensions like render or xkb though
XFT but for XCB - font rendering concepts
Game Engine
Bevy
Rust game engine with ECS, built in renderer and a bunch of other cool features.Logic Projects Youtube Channel - lots of awesome video tutorials on bevy (simple concepts, shaders, let's codes)
Unofficial Bevy Cheat Book - pretty great docs on general concepts
bevy_rapier - physics library
kayak_ui - very cool macro system for making writing ui not a nightmare (early stages of development)
bevy_hanabi - particle system
bevy-inspector-egui - in game inspector
Projects
Window Manager
Create a window manager using rust and the x11rb crate.xplain - series of in depth articles on how the X11 protocol works
How X Window Managers Work, And How To Write One - specifics on how a window manager works, and some cpp code to along with it. note that this tutorial uses Xlib whereas x11rb is based on xcb
x11rb simple window manager - an example project provided by x11rb
日本語
Wanikani - kanji learning site (it's paid, but you can do a free trial and see if you like, also great community forum)
Kaniwani - Wanikani, but quizzes English->Japanese instead (you just need a Wanikani account to use)
80/20 Japanese - lots of in depth articles on grammar (mostly particles)
Tae Kim - many articles covering a wide range of grammar points
Animelon - anime site with both Japanese and English subtitles (older anime only)
Jisho - Japanese dictionary
DeepL - pretty good translator
Bunpro - SRS for grammar, it's paid (and the site is a bit jank), but the idea is good
Genki - n5-n4 grammar textbook (some exercises are meant to be done in a group though, also comes with audio files)
Quartet - n3-n2 grammar textbook, it integrates all four skills into one lesson very nicely
日本語の森 - nice youtube channel with jlpt content