Handmade Hero»Episode Guide
Intro to C on Windows - Day 5 Q&A
?
?

Keyboard Navigation

Global Keys

[, < / ], > Jump to previous / next episode
W, K, P / S, J, N Jump to previous / next marker
t / T Toggle theatre / SUPERtheatre mode
V Revert filter to original state Y Select link (requires manual Ctrl-c)

Menu toggling

q Quotes r References f Filter y Link c Credits

In-Menu Movement

a
w
s
d
h j k l


Quotes and References Menus

Enter Jump to timecode

Quotes, References and Credits Menus

o Open URL (in new tab)

Filter Menu

x, Space Toggle category and focus next
X, ShiftSpace Toggle category and focus previous
v Invert topics / media as per focus

Filter and Link Menus

z Toggle filter / linking mode

Credits Menu

Enter Open URL (in new tab)
0:36At some point, Casey might do a real multi-week intro to C for non-programmers
0:36At some point, Casey might do a real multi-week intro to C for non-programmers
0:36At some point, Casey might do a real multi-week intro to C for non-programmers
1:46Have you ever found a use for bitfields?
1:46Have you ever found a use for bitfields?
1:46Have you ever found a use for bitfields?
2:32,b lets you see binary in Watch window of Visual Studio [n.b. this is in newest version only]
2:32,b lets you see binary in Watch window of Visual Studio [n.b. this is in newest version only]
2:32,b lets you see binary in Watch window of Visual Studio [n.b. this is in newest version only]
3:17More clarification on Virtual Memory (is page table itself virtual?)
3:17More clarification on Virtual Memory (is page table itself virtual?)
3:17More clarification on Virtual Memory (is page table itself virtual?)
5:26Clarification on where the stack lives, and on the CPU's i-cache and d-cache
5:26Clarification on where the stack lives, and on the CPU's i-cache and d-cache
5:26Clarification on where the stack lives, and on the CPU's i-cache and d-cache
6:36Clarification on undefined behavior (casting structs from day 4 of C stream)
6:36Clarification on undefined behavior (casting structs from day 4 of C stream)
6:36Clarification on undefined behavior (casting structs from day 4 of C stream)
7:51Can you make the OS load all of your code into memory at once instead of mapping the file?
7:51Can you make the OS load all of your code into memory at once instead of mapping the file?
7:51Can you make the OS load all of your code into memory at once instead of mapping the file?
9:10Is the C Runtime Library different from the C Standard Library?
9:10Is the C Runtime Library different from the C Standard Library?
9:10Is the C Runtime Library different from the C Standard Library?
9:45Why do you prefer K&R style brackets? (and other neat bracket style annecdotes)
9:45Why do you prefer K&R style brackets? (and other neat bracket style annecdotes)
9:45Why do you prefer K&R style brackets? (and other neat bracket style annecdotes)
10:49Do different bitwise operators differ in performance? (And other performance musings)
10:49Do different bitwise operators differ in performance? (And other performance musings)
10:49Do different bitwise operators differ in performance? (And other performance musings)
14:18How much bit-fiddling do you do on real code?
14:18How much bit-fiddling do you do on real code?
14:18How much bit-fiddling do you do on real code?
14:37Will you be writing your own allocator?
14:37Will you be writing your own allocator?
14:37Will you be writing your own allocator?
14:43More talk about showing vars in binary in Visual Studio
14:43More talk about showing vars in binary in Visual Studio
14:43More talk about showing vars in binary in Visual Studio
15:30Can you show us how to open a blank window using the WinAPI?
15:30Can you show us how to open a blank window using the WinAPI?
15:30Can you show us how to open a blank window using the WinAPI?
15:44What do you think of RAII? (Musings on robustness and error handling)
15:44What do you think of RAII? (Musings on robustness and error handling)
15:44What do you think of RAII? (Musings on robustness and error handling)
20:52Do you think a four-year CS degree is a waste of money?
20:52Do you think a four-year CS degree is a waste of money?
20:52Do you think a four-year CS degree is a waste of money?
21:00Are you going to use structs instead of classes?
21:00Are you going to use structs instead of classes?
21:00Are you going to use structs instead of classes?
21:07How will you handle polymorphism? (Rant against inheritance, instead promoting mixins)
21:07How will you handle polymorphism? (Rant against inheritance, instead promoting mixins)
21:07How will you handle polymorphism? (Rant against inheritance, instead promoting mixins)
22:57Will the game be in C++ or C? If the latter, why all the .cpp files?
22:57Will the game be in C++ or C? If the latter, why all the .cpp files?
22:57Will the game be in C++ or C? If the latter, why all the .cpp files?
23:47What are the differences between references (int &v) and pointers (int *v)?
23:47What are the differences between references (int &v) and pointers (int *v)?
23:47What are the differences between references (int &v) and pointers (int *v)?
25:19Will the code be backwards compatible with C?
25:19Will the code be backwards compatible with C?
25:19Will the code be backwards compatible with C?
25:52Short Circuiting
25:52Short Circuiting
25:52Short Circuiting
28:20More on entry points (main vs WinMain), how programs are init'd [n.b. Code::Blocks is an IDE]
28:20More on entry points (main vs WinMain), how programs are init'd [n.b. Code::Blocks is an IDE]
28:20More on entry points (main vs WinMain), how programs are init'd [n.b. Code::Blocks is an IDE]
32:58How big is the community? What are your preorder stats?
32:58How big is the community? What are your preorder stats?
32:58How big is the community? What are your preorder stats?
34:15Will you show how to look for i-cache misses in the main stream?
34:15Will you show how to look for i-cache misses in the main stream?
34:15Will you show how to look for i-cache misses in the main stream?
35:31Do you use a lot of advanced algorithms? Do you worry about Big O?
35:31Do you use a lot of advanced algorithms? Do you worry about Big O?
35:31Do you use a lot of advanced algorithms? Do you worry about Big O?
35:48The DuckHorse question (Muses on duck trustworthiness, Rants against horses)
35:48The DuckHorse question (Muses on duck trustworthiness, Rants against horses)
35:48The DuckHorse question (Muses on duck trustworthiness, Rants against horses)
36:55What OS is your PC?
36:55What OS is your PC?
36:55What OS is your PC?
37:03Did you talk about pass by val / pass by ref yet?
37:03Did you talk about pass by val / pass by ref yet?
37:03Did you talk about pass by val / pass by ref yet?
37:25Do you have an opinion on Data-oriented design?
37:25Do you have an opinion on Data-oriented design?
37:25Do you have an opinion on Data-oriented design?
37:46Talks about Stack Overflows
37:46Talks about Stack Overflows
37:46Talks about Stack Overflows
38:19Are you going to use OpenGL / DirectX?
38:19Are you going to use OpenGL / DirectX?
38:19Are you going to use OpenGL / DirectX?
38:40More talk about showing binary in VS.
38:40More talk about showing binary in VS.
38:40More talk about showing binary in VS.
38:56Can I follow along in Linux?
38:56Can I follow along in Linux?
38:56Can I follow along in Linux?
39:42Will * do << instead if it's faster? (Bit about Strength Reduction)
39:42Will * do << instead if it's faster? (Bit about Strength Reduction)
39:42Will * do << instead if it's faster? (Bit about Strength Reduction)
40:42Will the allocator be lock-free / thread-safe?
40:42Will the allocator be lock-free / thread-safe?
40:42Will the allocator be lock-free / thread-safe?
41:31How much dependency injection do you use?
41:31How much dependency injection do you use?
41:31How much dependency injection do you use?
41:56Do you feel the same about using RAII for public APIs?
41:56Do you feel the same about using RAII for public APIs?
41:56Do you feel the same about using RAII for public APIs?
42:18Why are you using struct{} instead of class{}?
42:18Why are you using struct{} instead of class{}?
42:18Why are you using struct{} instead of class{}?
44:09Explanation of Mixins
44:09Explanation of Mixins
44:09Explanation of Mixins
45:57Other operators (Comma, goto)
45:57Other operators (Comma, goto)
45:57Other operators (Comma, goto)
46:48How do I get the art and music for the game?
46:48How do I get the art and music for the game?
46:48How do I get the art and music for the game?
47:03Do you use goto ever in C?
47:03Do you use goto ever in C?
47:03Do you use goto ever in C?
47:12Are you Ben Cousins?
47:12Are you Ben Cousins?
47:12Are you Ben Cousins?
47:22Will be showing the creation of any tools (e.g. level editor)
47:22Will be showing the creation of any tools (e.g. level editor)
47:22Will be showing the creation of any tools (e.g. level editor)
47:46Have you ever made anything for the demoscene? Know anyone who has?
47:46Have you ever made anything for the demoscene? Know anyone who has?
47:46Have you ever made anything for the demoscene? Know anyone who has?
48:51Why don't you use a platform-independent library?
48:51Why don't you use a platform-independent library?
48:51Why don't you use a platform-independent library?
49:00What is the general plan for making the game?
49:00What is the general plan for making the game?
49:00What is the general plan for making the game?
49:39Drink Suggestions. Fractals? (No.) Dependency Injection Joke.
49:39Drink Suggestions. Fractals? (No.) Dependency Injection Joke.
49:39Drink Suggestions. Fractals? (No.) Dependency Injection Joke.
50:12Can a struct have a constructor? (More struct==class rant, Positivity musings)
50:12Can a struct have a constructor? (More struct==class rant, Positivity musings)
50:12Can a struct have a constructor? (More struct==class rant, Positivity musings)
51:51Will the game include old-school passwords for saving?
51:51Will the game include old-school passwords for saving?
51:51Will the game include old-school passwords for saving?
52:05What about Game Design? (best ways to prototype, how to learn it vs. this stream)
52:05What about Game Design? (best ways to prototype, how to learn it vs. this stream)
52:05What about Game Design? (best ways to prototype, how to learn it vs. this stream)
53:26How much money do game devs make? (General career and skills musings)
53:26How much money do game devs make? (General career and skills musings)
53:26How much money do game devs make? (General career and skills musings)
55:27Will the source downloads be under version control?
55:27Will the source downloads be under version control?
55:27Will the source downloads be under version control?
55:53Trolls exist
55:53Trolls exist
55:53Trolls exist
56:03What's your current day job?
56:03What's your current day job?
56:03What's your current day job?
56:08More pay discussion (how location, company factor in)
56:08More pay discussion (how location, company factor in)
56:08More pay discussion (how location, company factor in)
57:01More on RAII
57:01More on RAII
57:01More on RAII
57:25Will you use any libraries to make the game?
57:25Will you use any libraries to make the game?
57:25Will you use any libraries to make the game?
58:24What's your life story? How did you learn programming? How'd you get an internship at MS?
58:24What's your life story? How did you learn programming? How'd you get an internship at MS?
58:24What's your life story? How did you learn programming? How'd you get an internship at MS?
58:51Early years, Programming with Dad (who worked at DEC)
58:51Early years, Programming with Dad (who worked at DEC)
58:51Early years, Programming with Dad (who worked at DEC)
59:58Learned 3D math out of Foley and van Dam [n.b. this is how Carmack learned 3D too]
59:58Learned 3D math out of Foley and van Dam [n.b. this is how Carmack learned 3D too]
59:58Learned 3D math out of Foley and van Dam [n.b. this is how Carmack learned 3D too]
1:01:46Getting the Microsoft Internship (Luck, and the right kind of skill)
1:01:46Getting the Microsoft Internship (Luck, and the right kind of skill)
1:01:46Getting the Microsoft Internship (Luck, and the right kind of skill)
1:06:22The Internship - Old MS Culture, Blowups
1:06:22The Internship - Old MS Culture, Blowups
1:06:22The Internship - Old MS Culture, Blowups
1:09:47The Internship - Casey's job at MS
1:09:47The Internship - Casey's job at MS
1:09:47The Internship - Casey's job at MS
1:12:29The Internship - Microsoft Money
1:12:29The Internship - Microsoft Money
1:12:29The Internship - Microsoft Money
1:14:53The Internship - Getting lucky again, because he couldn't cook or rent a car
1:14:53The Internship - Getting lucky again, because he couldn't cook or rent a car
1:14:53The Internship - Getting lucky again, because he couldn't cook or rent a car
1:21:38The Internship - Meeting Chris Hecker and the WinG group
1:21:38The Internship - Meeting Chris Hecker and the WinG group
1:21:38The Internship - Meeting Chris Hecker and the WinG group
1:24:45Starting out in Games - Chris Hecker and Friends
1:24:45Starting out in Games - Chris Hecker and Friends
1:24:45Starting out in Games - Chris Hecker and Friends
1:25:51Starting out in Games - Learning to Program For Real (RAD)
1:25:51Starting out in Games - Learning to Program For Real (RAD)
1:25:51Starting out in Games - Learning to Program For Real (RAD)
1:27:57Leaving RAD - Trying (and Failing) at Game Design
1:27:57Leaving RAD - Trying (and Failing) at Game Design
1:27:57Leaving RAD - Trying (and Failing) at Game Design
1:29:14Present Day - More Game Tech (Larabee, Bink 2, Moustache, The Witness)
1:29:14Present Day - More Game Tech (Larabee, Bink 2, Moustache, The Witness)
1:29:14Present Day - More Game Tech (Larabee, Bink 2, Moustache, The Witness)
You have arrived at the (current) end of Introduction to C