A curated list of awesome tutorials. It will be updated each time I find a truly well-writtent and clear tutorial. I am not aiming to collect every possible tutorial about development here as it would be a titanic enterprise but the list is ideally restricted to those who are specific to a topic, may it be an aspect of a framework or an algorythm or a specific software/hardware, that are clear, understandable and, optionally, complete. I'm looking more about unofficial tutorials, both because these are harder to find than the official documentations and to give exposure to the authors of them.
If you want to contribute to this list (please do), send me a pull request or contact me @gianlucadfiore. As long as the above guidelines are respected, I'll gladly add your contribution.
For everyone, really. Everyone who is interested in computer science, whether it means being a developer, a network administrator, a db administrator, a security researcher and what not.
- Front-end Development
- Back-end Development
- Operating Systems
- DevOps
- Hardware
- Software
- Networks
- Computer Science
- Formats
- SEO
- Marketing
- License
- A Simple Guide to Getting Started With Grunt - simple introduction on Grunt and writing your first Gruntfile.js
- Do You Really Know CORS? - a clear explanation of what Cross-Origin Resource Share is
- Web Security Essentials - CORS - a shorter but clearer introduction to the whats and whys of CORS
- A Complete Guide to Grid - not exactly a tutorial but a great guide/reference to implementing CSS Grid
- CSS gradient possibilities with the background-blend-mode property - a gallery with code of the possible uses of colour gradients in CSS
- Mapping with D3 - a presentation about creating maps with D3. Beginner-level.
- How Selections Work - about selecting elements in D3.
- Animated US States Border Map - walkthrough in creating an animated US map.
- Command Line Cartography, part 2, part 3, part 4 - how to make thematic maps using D3-geo, TopoJSON and ndjson-cli.
- GraphQL in Depth: What, Why and How - A not-so-deep introduction on what is and how GraphQL works.
- ES6 For Beginners, part 2, part 3 - An introduction to the new features of ES6. Short and with plenty of examples.
- The Absolute Essentianls for Bit Manipulation in JavaScript - a clarifying tutorial on bitwise operations in JavaScript.
- Using Array.prototype.reduce() - step by step tutorial on the use of
reduce()
.
- An Introduction to MongoDB - brief and practical introduction on MongoDB, mostly just installing and the basic commands to interact with the database.
- Build Your Own Starter - not exactly a tutorial but a guide on how to build your own basic React+Babel+Webpack+Express starter.
- Intro to React - the official React tutorial.
- Web Development Simplified with Svelte - a comprehensive tutorial on setting up and showing Svelte's features
- WebAssembly Physics and DOM Objects - playing with svg and DOM objects in WebAssembly from a C library
- NASM Tutorial - a concise tutorial on how to write Assembly for x86-64 architecture and integrate it with C.
- The Descent to C - article showing the difference in learning C coming from a higher level language.
- Just Tell Me How To Use Go Modules - a short and straight to the point introduction to Go modules
- You Could Have Invented Monads! (And Maybe You Already Have.) - brief article trying to convey what actually is a monad, and how it is much more common than you might think.
- About ncurses Colors - short introduction to how the Linux console paint colors.
- Parallel processing with Unix tools - pipelines, xargs and threading in Unix tools.
- UEFI boot: how does that actually work, then? - an exhaustive introduction about UEFI and how it boots different, and multiples, OSes.
- Docker Images: Reducing Image Size, part 2, part 3 - a tutorial series on how to make your Docker images as small as possible.
- Modern Microprocessors: a 90-minute guide - probably less than 90 minutes though. An useful, albeit outdated, guide on how CPUs work internally. For when you have no idea what "branch prediction" or "memory hierarchy" are.
- Five Minute Vimscript - a concise introduction to Vimscript
- Git from the inside out - a deep look at how Git internally works.
- Github Fork & Pull Request Workflow - a gist on how correctly fork a project and contribuite to it on Github
- DNS Root Servers: The most critical infrastructure on the internet - a throughout explanation of what, and where, are DNS root servers
- VLANs for sysadmins: the basics - an introduction to VLANs
- Proof in Functions - functions proof (in Swift).
- Logic Literacy - introduction to Logic.
- Locks, Mutexes and Semaphores: Types of Synchronization Objects - an overview of the differences, from a C++/Windows point of view but appliable to any other context
- Mathematical Background - minimum math for computer science.
- Programmers' Theoretical Minimum - honestly way beyond the "minimum" but a very useful list of topics by technology to learn (or try to).
- Mastering Markdown - a quick reference to Markdown syntax, with an appendix about Github Flavoured Markdown.
- More than you ever wanted to know about GeoJSON - gentle introduction to GeoJSON and how it compares to similar alternatives.
- The Absolute Minimum Every Software Developer Absolutely Positively Must Know About Unicode and Character Sets - beginner's guide to what is Unicode. Very simply written and not technical at all.
- Google Search Console: The Definitive Guide - a truly comprehensive and "definitive" guide about the various features of the Google Search Console.
- The Ultimate Guide to Google Ads Ad Extensions - a clean explanation of each of the Google Ads ad extensions
- Google Analytics: A Guide to Setup, Track and Measure Results - a beginner guide on how to setup and navigate through Analytics' interface
This work is licensed under a Creative Commons Attribution 4.0 International License.
Please provide a link back to this repository. This is not necessary for GitHub forks.