The Thirty-Million Line Problem
?
?

Keyboard Navigation

Global Keys

[, < / ], > Jump to previous / next episode
W, K, P / S, J, N Jump to previous / next timestamp
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 and Index Controls

a
w
s
d
h j k l


Esc Close menu / unfocus timestamp

Quotes and References Menus and Index

Enter Jump to timestamp

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:00Welcome to the lecture
0:00Welcome to the lecture
0:00Welcome to the lecture
1:20Hardware Quality is At Its Historical Best
1:20Hardware Quality is At Its Historical Best
1:20Hardware Quality is At Its Historical Best
4:06Software Quality is At Its Historical Worst
4:06Software Quality is At Its Historical Worst
4:06Software Quality is At Its Historical Worst
8:15It's Not Hard to See Why
8:15It's Not Hard to See Why
8:15It's Not Hard to See Why
12:12How Many LOC Does It Take To Read a Text File?
12:12How Many LOC Does It Take To Read a Text File?
12:12How Many LOC Does It Take To Read a Text File?
17:04The 30-Million-Line Problem
17:04The 30-Million-Line Problem
17:04The 30-Million-Line Problem
18:191980–1990: Thousands of Consumer Operating Systems
18:191980–1990: Thousands of Consumer Operating Systems
18:191980–1990: Thousands of Consumer Operating Systems
21:362000–2015: Three Consumer Operating Systems
21:362000–2015: Three Consumer Operating Systems
21:362000–2015: Three Consumer Operating Systems
25:191995: USB / Plug-and-Play
25:191995: USB / Plug-and-Play
25:191995: USB / Plug-and-Play
26:011996: Mandatory Hardware-accelerated Graphics
26:011996: Mandatory Hardware-accelerated Graphics
26:011996: Mandatory Hardware-accelerated Graphics
27:30This Curve Continues Because of the Late 90s
27:30This Curve Continues Because of the Late 90s
27:30This Curve Continues Because of the Late 90s
28:43An SoC is a Super-powered 1980s Home Computer
28:43An SoC is a Super-powered 1980s Home Computer
28:43An SoC is a Super-powered 1980s Home Computer
34:02What if we were to extend the conceptual model of the x86 ISA to cover an entire SoC?
34:02What if we were to extend the conceptual model of the x86 ISA to cover an entire SoC?
34:02What if we were to extend the conceptual model of the x86 ISA to cover an entire SoC?
36:39More Efficient, Reliable, Secure and Maintainable1
36:39More Efficient, Reliable, Secure and Maintainable1
36:39More Efficient, Reliable, Secure and Maintainable1
43:45“Everything gets better when the code gets smaller.”α
43:45“Everything gets better when the code gets smaller.”α
43:45“Everything gets better when the code gets smaller.”α
44:01Requirements for Direct Coding
44:01Requirements for Direct Coding
44:01Requirements for Direct Coding
48:21A Collaborative Effort
48:21A Collaborative Effort
48:21A Collaborative Effort
51:27First Steps
51:27First Steps
51:27First Steps
55:39The Negative and Positive Hypotheticals
55:39The Negative and Positive Hypotheticals
55:39The Negative and Positive Hypotheticals
1:07:14Thanks for Listening!
1:07:14Thanks for Listening!
1:07:14Thanks for Listening!
1:10:40Q&A
1:10:40Q&A
1:10:40Q&A
1:11:08areriff Q: Is IncludeOS2 going in the right direction? It does not contain OS, only your program (except for bootloader)
🗪
1:11:08areriff Q: Is IncludeOS2 going in the right direction? It does not contain OS, only your program (except for bootloader)
🗪
1:11:08areriff Q: Is IncludeOS2 going in the right direction? It does not contain OS, only your program (except for bootloader)
🗪
1:12:02vateferfout Q: Did you have any returns since you made that talk?
🗪
1:12:02vateferfout Q: Did you have any returns since you made that talk?
🗪
1:12:02vateferfout Q: Did you have any returns since you made that talk?
🗪
1:15:15onebitbrain Q: Casey, have you seen Redox OS? It's a 20kloc minix
🗪
1:15:15onebitbrain Q: Casey, have you seen Redox OS? It's a 20kloc minix
🗪
1:15:15onebitbrain Q: Casey, have you seen Redox OS? It's a 20kloc minix
🗪
1:17:00thebaker__ Q: What can someone who isn't a hardware vendor do towards this cause?
🗪
1:17:00thebaker__ Q: What can someone who isn't a hardware vendor do towards this cause?
🗪
1:17:00thebaker__ Q: What can someone who isn't a hardware vendor do towards this cause?
🗪
1:18:15runamar Q: What about security? Should that be part of a new OS or built into hardware somehow directly?
🗪
1:18:15runamar Q: What about security? Should that be part of a new OS or built into hardware somehow directly?
🗪
1:18:15runamar Q: What about security? Should that be part of a new OS or built into hardware somehow directly?
🗪
1:21:41pragmascrypt This will be uploaded to YouTube, right?
🗪
1:21:41pragmascrypt This will be uploaded to YouTube, right?
🗪
1:21:41pragmascrypt This will be uploaded to YouTube, right?
🗪
1:21:44ws_ubi Q: Include OS runs on C++. What about the programming languages issue (just focusing on relying on a programming language that is messy)
🗪
1:21:44ws_ubi Q: Include OS runs on C++. What about the programming languages issue (just focusing on relying on a programming language that is messy)
🗪
1:21:44ws_ubi Q: Include OS runs on C++. What about the programming languages issue (just focusing on relying on a programming language that is messy)
🗪
1:23:22jessem3y3r Q: Have you had a chance to evaluate Ager Fog's ISA?3
🗪
1:23:22jessem3y3r Q: Have you had a chance to evaluate Ager Fog's ISA?3
🗪
1:23:22jessem3y3r Q: Have you had a chance to evaluate Ager Fog's ISA?3
🗪
1:24:19vodonikhs Q: For smaller code you need reusability and for reusability you need generic programming. Programmers are not used to writing generic code and companies don't care about reusability as long as they ship features? Do you think generic programming should be taught and practiced more?
🗪
1:24:19vodonikhs Q: For smaller code you need reusability and for reusability you need generic programming. Programmers are not used to writing generic code and companies don't care about reusability as long as they ship features? Do you think generic programming should be taught and practiced more?
🗪
1:24:19vodonikhs Q: For smaller code you need reusability and for reusability you need generic programming. Programmers are not used to writing generic code and companies don't care about reusability as long as they ship features? Do you think generic programming should be taught and practiced more?
🗪
1:25:20penapenasd Q: Can you give an example of how the interface would be simpler for your common programmer?
🗪
1:25:20penapenasd Q: Can you give an example of how the interface would be simpler for your common programmer?
🗪
1:25:20penapenasd Q: Can you give an example of how the interface would be simpler for your common programmer?
🗪
1:26:34vtlmks Q: Not much harder to set up 64bit than 32bit, just one more step
🗪
1:26:34vtlmks Q: Not much harder to set up 64bit than 32bit, just one more step
🗪
1:26:34vtlmks Q: Not much harder to set up 64bit than 32bit, just one more step
🗪
1:26:43guitarm87 Q: Damn, I missed most of the talk. Will it be watchable / visible somewhere?
🗪
1:26:43guitarm87 Q: Damn, I missed most of the talk. Will it be watchable / visible somewhere?
🗪
1:26:43guitarm87 Q: Damn, I missed most of the talk. Will it be watchable / visible somewhere?
🗪
1:26:53internal_static_void_ Q: So do you propose that we should make a chip that doesn't support consumer features, or features that a consumer expects?
🗪
1:26:53internal_static_void_ Q: So do you propose that we should make a chip that doesn't support consumer features, or features that a consumer expects?
🗪
1:26:53internal_static_void_ Q: So do you propose that we should make a chip that doesn't support consumer features, or features that a consumer expects?
🗪
1:27:53internal_static_void_ Q: Do you think that maybe the reason that some of this software and driver has become more bloated, and some of the code paths are larger is because the hardware is more complicated than it used to be as well?
🗪
1:27:53internal_static_void_ Q: Do you think that maybe the reason that some of this software and driver has become more bloated, and some of the code paths are larger is because the hardware is more complicated than it used to be as well?
🗪
1:27:53internal_static_void_ Q: Do you think that maybe the reason that some of this software and driver has become more bloated, and some of the code paths are larger is because the hardware is more complicated than it used to be as well?
🗪
1:31:08the_troll_toll Q: Does the world you're promoting mean the end or at least a big decrease in interoperability? If so, wouldn't that make developing applications much harder across multiple systems?
🗪
1:31:08the_troll_toll Q: Does the world you're promoting mean the end or at least a big decrease in interoperability? If so, wouldn't that make developing applications much harder across multiple systems?
🗪
1:31:08the_troll_toll Q: Does the world you're promoting mean the end or at least a big decrease in interoperability? If so, wouldn't that make developing applications much harder across multiple systems?
🗪
1:33:41nilsirl handmade_hero Isn't that what Android (and, I believe, iOS) do?
🗪
1:33:41nilsirl handmade_hero Isn't that what Android (and, I believe, iOS) do?
🗪
1:33:41nilsirl handmade_hero Isn't that what Android (and, I believe, iOS) do?
🗪
1:33:50andmyselfesteem Q: In a world where every program runs its own OS how do you handle running two programs simultaneously? Or am I misunderstanding?
🗪
1:33:50andmyselfesteem Q: In a world where every program runs its own OS how do you handle running two programs simultaneously? Or am I misunderstanding?
🗪
1:33:50andmyselfesteem Q: In a world where every program runs its own OS how do you handle running two programs simultaneously? Or am I misunderstanding?
🗪
1:36:19voxeloot Q: So you propose that there is no multitasking? Because if you start separating applications you will start to get all of the requirements of modern operating systems over time...
🗪
1:36:19voxeloot Q: So you propose that there is no multitasking? Because if you start separating applications you will start to get all of the requirements of modern operating systems over time...
🗪
1:36:19voxeloot Q: So you propose that there is no multitasking? Because if you start separating applications you will start to get all of the requirements of modern operating systems over time...
🗪
1:40:14hedgehogs_are_really_cute Q: So all we really need is for USB to be in the ISA and CPUs with enough cores for GPUs to be irrelevant?
🗪
1:40:14hedgehogs_are_really_cute Q: So all we really need is for USB to be in the ISA and CPUs with enough cores for GPUs to be irrelevant?
🗪
1:40:14hedgehogs_are_really_cute Q: So all we really need is for USB to be in the ISA and CPUs with enough cores for GPUs to be irrelevant?
🗪
1:41:59emosaru Do you feel there's a risk to locking things in an ISA that are potentially still substantially evolving? The average lifespan of an ISA is / should be substantially longer than an API, and I worry that the rate of progress would necessarily change for the worse
🗪
1:41:59emosaru Do you feel there's a risk to locking things in an ISA that are potentially still substantially evolving? The average lifespan of an ISA is / should be substantially longer than an API, and I worry that the rate of progress would necessarily change for the worse
🗪
1:41:59emosaru Do you feel there's a risk to locking things in an ISA that are potentially still substantially evolving? The average lifespan of an ISA is / should be substantially longer than an API, and I worry that the rate of progress would necessarily change for the worse
🗪
1:43:34internal_static_void_ Q: The Amiga GPU was just a wire that went across the screen. The GPUs today literally have specific units for texture mapping, and they have cores specifically made for computing, and specialized memory
🗪
1:43:34internal_static_void_ Q: The Amiga GPU was just a wire that went across the screen. The GPUs today literally have specific units for texture mapping, and they have cores specifically made for computing, and specialized memory
🗪
1:43:34internal_static_void_ Q: The Amiga GPU was just a wire that went across the screen. The GPUs today literally have specific units for texture mapping, and they have cores specifically made for computing, and specialized memory
🗪
1:44:55onebitbrain Q: Is Arrakis part of the Dune OS?
🗪
1:44:55onebitbrain Q: Is Arrakis part of the Dune OS?
🗪
1:44:55onebitbrain Q: Is Arrakis part of the Dune OS?
🗪
1:45:14Summarise the notion that switching to an ISA oriented industry merely slows but doesn't halt innovation
1:45:14Summarise the notion that switching to an ISA oriented industry merely slows but doesn't halt innovation
1:45:14Summarise the notion that switching to an ISA oriented industry merely slows but doesn't halt innovation
1:46:52bigmofo1 Q: But the Amiga didn't evolve since 1985. Why do you want to freeze PC into 2018 design?
🗪
1:46:52bigmofo1 Q: But the Amiga didn't evolve since 1985. Why do you want to freeze PC into 2018 design?
🗪
1:46:52bigmofo1 Q: But the Amiga didn't evolve since 1985. Why do you want to freeze PC into 2018 design?
🗪
1:48:12alexkelbo Q: Are you still in contact with Intel about this?
🗪
1:48:12alexkelbo Q: Are you still in contact with Intel about this?
🗪
1:48:12alexkelbo Q: Are you still in contact with Intel about this?
🗪
1:48:36Wrap it up
1:48:36Wrap it up
1:48:36Wrap it up
You have arrived at the (current) end of Handmade Miscellany