Intro to C on Windows - Day 1
Molly Rocket4 HN recommenders · recommended in 4 months, 2014–2022
tutorial · intro · 2014–2022 on HN
Day 1 of Handmade Hero's introduction to C on Windows, covering setting up Visual Studio, creating a Win32 project, the WinMain entry point and writing a first function. It is the starting point for Casey Muratori's from-scratch game series.
HN recommends it as an approachable way into C and low-level programming that gets to something visible quickly.
Up next
10 mo on HN"Performance Matters" by Emery Berger
Strange Loop Conference
12 HN recommender · 2019–2025
11 mo on HNCppCon 2015: Andrei Alexandrescu “std::allocator...”
CppCon
7 HN recommender · 2017–2025
12 mo on HNLexical Scanning in Go - Rob Pike
GoogleFOSSSydney
13 HN recommender · 2012–2025
10 mo on HNCppCon 2017: Matt Kulukundis “Designing a Fast, Efficient, Cache-friendly Hash Table, Step by Step”
CppCon
9 HN recommender · 2018–2026
9 mo on HNRustConf 2018 - Closing Keynote - Using Rust For Game Development by Catherine West
Rust Programming Language
9 HN recommender · 2018–2023
10 mo on HNCppCon 2016: Jason Turner “Rich Code for Tiny Computers: A Simple Commodore 64 Game in C++17”
CppCon
13 HN recommender · 2016–2024
9 mo on HNIdeas about a new programming language for games.
Jonathan Blow
7 HN recommender · 2014–2025
9 mo on HNCppCon 2014: Mike Acton "Data-Oriented Design and C++"
CppCon
9 HN recommender · 2015–2026
9 mo on HNHow I program C
Eskil Steenberg
8 HN recommender · 2017–2025
9 mo on HNGoogle I/O 2012 - Go Concurrency Patterns
Google for Developers
9 HN recommender · 2012–2025
7 mo on HNCppCon 2015: Kate Gregory “Stop Teaching C"
CppCon
7 HN recommender · 2016–2025
7 mo on HNZig: A programming language designed for robustness, optimality, and clarity – Andrew Kelley
Recurse Center
6 HN recommender · 2018–2024
5 comments from Hacker News
I found this video series ( ▶ this video ) very interesting. It is someone (Casey Muratori) building a game from scratch using C. The intro videos really opened my eyes to how powerful C is. Being able to directly access memory seems crazy for someone who is just used to dealing with languages that really remove you from the hardware.
It's not quite aimed at IT/System admin, but Handmade Hero[0] is an excellent resource for learning how a computer works from the ground up. It starts with an excellent intro to C on Windows[1] and works its way up from there. It's really long and involved, but I've found that internalizing the general ethos is quite valuable, even if you just watch a handful of episodes. [0] link [1] ▶ this video
> I challenge you to find a C “boot camp.” C isn't a language that lends itself to bootcamp-stye learning. With Javascript, you can get something on-screen in a few minutes, and even if you make mistakes, you will normally see something . It's a more forgiving environment. With C, a small error prevents compilation at all, and it's going to be a relatively long time before you're ready to progress past the "printing text to the console" stage. C is flatly harder to learn, and unless you're the kind of person who likes mental challenge, it's less rewarding than Javascript. It isn't the kind of thing you tackle because you need hirable job skills by the end of the month. There are still some excellent C tutorials out there (for example, I think Handmade Hero's[0] intro to C is good, and Handmade Hero itself gets you to the "shiny colors on the screen" stage very quickly), but HH has a different mentality than a bootcamp. HH is about learning, exploring, breaking things, and figuring them out on the fly. A bootcamp is about gathering the minimum knowledge necessary to be productive as quickly as possible. [0]: ▶ this video
As a good resource for learning C I would recommend Casey Muratori's tutorials: ▶ this video If you are interested in learning more about writing complex software in C consider checking out HandmadeHero. Sadly there need to be more good resources on learning how to write good C and low level software. I am hoping my article can be a starting point for people who wish to learn about library design for example.
Wow. I can't even begin to express how much the premise behind this series resonates with me. I've been looking for something just like this. My only issue is that, although in C, the preview/introduction video seems pretty centered around visual studio[0]. In the FAQ you say that multi platform support for *nix systems will be added later. How exactly will this work for those of us who want to follow along, but don't have Windows? [0] ▶ this video