From 0e84c413e4c6b6afd5d1eb1eeea093ca291e8e0b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ciro=20Santilli=20=E5=85=AD=E5=9B=9B=E4=BA=8B=E4=BB=B6=20?= =?UTF-8?q?=E6=B3=95=E8=BD=AE=E5=8A=9F?= Date: Sun, 5 May 2019 00:00:00 +0000 Subject: [PATCH] waste your life --- README.adoc | 52 +++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 51 insertions(+), 1 deletion(-) diff --git a/README.adoc b/README.adoc index e301b51..42be0b3 100644 --- a/README.adoc +++ b/README.adoc @@ -301,6 +301,8 @@ The only thing you can do with open source is purely functional designs with lin If you really want to develop semiconductors, your only choice is to join an university or a semiconductor company that has the EDA licenses. +See also: <>. + While hacking QEMU, you will likely want to GDB step its source. That is trivial since QEMU is just another userland program like any other, but our setup has a shortcut to make it even more convenient, see: <>. ===== Your first glibc hack @@ -14340,7 +14342,9 @@ We haven't found the ultimate distro yet, here is a summary table of trade-offs * (7): `ls recipes-* | wc` * (8): Poky reference system: http://git.yoctoproject.org/cgit/cgit.cgi/poky -=== Fairy tale +=== Soft topics + +==== Fairy tale ____ Once upon a time, there was a boy called Linus. @@ -14364,6 +14368,52 @@ And so everyone was happy. Except some of the old weird kernel hackers who wante THE END ____ +==== Should you waste your life with systems programming? + +Being the hardcore person who fully understands an important complex system such as a computer, it does have a nice ring to it doesn't it? + +But before you dedicate your life to this nonsense, do consider the following points: + +* almost all contributions to the kernel are done by large companies, and if you are not an employee in one of them, you are likely not going to be able to do much. ++ +This can be inferred by the fact that the `devices/` directory is by far the largest in the kernel. ++ +The kernel is of course just an interface to hardware, and the hardware developers start developing their kernel stuff even before specs are publicly released, both to help with hardware development and to have things working when the announcement is made. ++ +Furthermore, I believe that there are in-tree devices which have never been properly publicly documented. Linus is of course fine with this, since code == documentation for him, but it is not as easy for mere mortals. ++ +There are some less hardware bound higher level layers in the kernel which might not require being in a hardware company, and a few people must be living off it. ++ +But of course, those are heavily motivated by the underlying hardware characteristics, and it is very likely that most of the people working there were previously at a hardware company. ++ +In that sense, therefore, the kernel is not as open as one might want to believe. +* it is impossible to become rich with this knowledge. ++ +This is partly implied by the fact that you need to be in a big company to make useful low level things, and therefore you will only be a tiny cog in the engine. ++ +The key problem is that the entry cost of hardware design is just too insanely high for startups in general. +* Is learning this the most useful thing that you think can do for society? ++ +Or are you just learning it for job security and having a nice sounding title? ++ +I'm not a huge fan of the person, but I think Jobs said it right: https://www.youtube.com/watch?v=FF-tKLISfPE ++ +First determine the useful goal, and then backtrack down to the most efficient thing you can do to reach it. +* there are two things that sadden me compared to physics-based engineering: ++ +-- +** you will never become eternally famous. All tech disappears sooner or later, while laws of nature, at least as useful approximations, stay unchanged. +** every problem that you face is caused by imperfections introduced by other humans. ++ +It is much easier to accept limitations of physics, and even natural selection in biology, which is are produced by a sentient being (?). +-- ++ +Physics-based engineering, just like low level hardware, is of course completely closed source however, since wrestling against the laws of physics is about the most expensive thing humans can do. + +Are you fine with those points, and ready to continue wasting your life? + +Good. In that case, read on, and let's have some fun together ;-) + === Bibliography Runnable stuff: