Courses
Practical courses for the work we actually do. Pick one, finish it, and apply it.
This is for people who can already write small Python scripts and now need code that other people can install, read, test and trust. You will set up projects that don't fight each other, split code into modules and classes, work with real files and CSV data, and prove your code works before someone else finds the bug. If your code only runs on your laptop and only you understand it, it is not finished yet.
This is for people who can already make a page react with JavaScript and now need code that survives real projects: Node and npm, modules, classes, real data, waiting for APIs, and tests. You will set up projects that install the same way on every machine, split code into files other people can read, handle JSON and dates without losing data or a day, and prove your code works before a customer finds out it doesn't. If you skip this level, your code works on your machine with your sample data, and breaks the first time the data changes.
This is for people who can write basic HTML and CSS and keep getting layouts that break on phones. You will build responsive pages with Flexbox and Grid, reuse components, and fix the overlap and overflow bugs that show up after launch. If you keep stacking float hacks and random media queries, every new page will reopen the same fights.
This is for people who can write basic TypeScript and now work on code that other people also touch. You will use generics, utility types and third-party typings so shared code stays honest when the data changes. If you keep reaching for any and as at every boundary, the compiler stops helping exactly where the bugs are.
Window functions, CTEs and schema design for tables other people also write to. You will join three tables without double counting, rank and total rows with window functions, design tables that protect themselves, and read a query plan to see why a query is slow. If you skip the checks on duplicates, time zones and concurrent changes, your queries will pass on test data and give wrong answers on real data.
Dockerfiles that don't rot, volumes and networks you can explain, and Compose files other people can run. You will shrink a build context, fix permission errors, wire services together with health checks and push an image to a registry. If you skip the checks on ports, secrets and tags, the project runs on your laptop and breaks on the next machine.