educational consulting for institutions looking to improve their STEM courses
do you know that course or teacher that consistently gets bad reviews every year? I'll work with the teacher to turn the problem around!
are you looking to create a consistent open educational resources offering to increase your institutions internationally visibility? I can help with that too.
Chinese name: 三西猴, means "three western monkeys". Phonetic approximation to SANtilli CIRO. More info at: Ciro Santilli's Chinese name. Semi-unintentionally reminds Chinese people of Sun Wukong (孙悟空). This association is further slightly strengthened by the phonetic choice of 三 San, which Ciro later noticed matches the middle character of Tang Sanzang (唐三藏), the monk in Journey to the West. The given name 西猴 was given by Ciro Santilli's wife, then recent girlfriend, as a semi-joke, and he took it up because the best way to take a joke is to play along with the joker. 三 was chosen by Ciro himself.
Taking part in such activities is what Ciro tries to do to overcome his lifelong regret of not having done more experimental stuff at university. Would he have had the patience to handle all the bullshit of the physical word without going back to the informational sciences? Maybe, maybe not. But now he will probably never know?!
Notice the orange high visibility cycling jersey under the lab coat, from someone who had just ridden in from work as fast as possible as part of his "lunch break". It is more fun when it is hard.
Chill and eat your bread in peace comes to mind. A scribe, in a library, reading and writing the entire day in peace and quiet. The life!
The job of a Internet-age scribe is basically that of making knowledge more open, legally extracting it from closed copyrighted sources, and explaining your understanding of it to the wider world under Creative Commons licenses on the web. And in the process of greater openess, given a well organized system, we are able combine the knowledge of many diffferent people, and thus make things more understandable than any single/few creator closed source source could ever achieve.
Ciro once saw some cartoon on Wikipedia help pages of a turtle with a book in one hand, and typing into Wikipedia on its computer, TODO find it. That cartoon summarizes well the modern scribe life.
Another analogous version of this fantasy more in touch with Ciro's sinophily is the ideal of the Chinese scholar, notably including their stereotypical attributes such as mastery of the Four arts.
Ciro Santilli is actively looking for donations and contracts so he can continue to work full time on OurBigBook.com sustainably, and develop free hardcore university-level STEM education for all ages!
Even if you chose a symbolic 1 dollar/month donation, that is extremely welcome to signal your interest! This way if a certain critical mass of sponsors is ever reached (~100?), Ciro can start to more actively asking slightly higher amounts to really try to achieve full time self sufficiency.
one time donations: for amounts of the order of up to 100 USD, consider a 1 USD monthly subscriptions instead: 100 USD doesn't change much short term, and is generally more powerful as a 1 Dollar/month over 8 years of signaling interest. But if you prefer one time, no problem, Ciro will still gladly take your money:
cryptocurrency: note that Ciro is not a regular crypto user, so you might want to make a smaller test donation and confirm that it worked by contacting Ciro before going for colossal amounts (one can dream):
Bitcoin address: 3KRk7f2JgekF6x7QBqPHdZ3pPDuMdY3eWR. This is a Coinbase wallet, off-chain transactions with no transaction fees accepted from other Coinbase users. This method has been tested, I have been able to receive funds from this address in 2023. Fees: 2% withdrawal fee on top of any Bitcoin network for on-chain transactions[ref]
Monero address: 84yNhReik1g5jhK4ymwUzXhbqyh49swSF6qE4HCq4SbBCZkSabiZSx7JEKt5225WbkbQaWRY9R3LnAkKDay7aWYSTJcspK3. This is a Binance wallet, off-chain transactions without transaction fees accepted from other Binance users. But of course, that kind of defeats the privacy goal of Monero.
Ciro Santilli wants to try and for every 100k USD "net donations" amassed (gains minus running costs) to quit his current job and work full time for a year on hist projects. One can dream. He cannot promise this, but he will really really try. The balance is being kept at: Budget transparency.
Ciro is interested in contracts/voluntary work that would be compatible/synergic with the OurBigBook.com project. Some possibilities include:
interacting directly with classes of university students to help them learn the class subject, while at the same time spreading the university knowledge outside of the university walls
one-to-one mentoring of individuals of any age that are looking to make an impact in the world, and not just pass their exams
fixing specific bugs in related projects Ciro has experience in. These could be either via one-off contracts, or on platforms such as:
For grants, think of amounts of the order of 100k USD / year, i.e. an OK tech worker salary in a tech hub of a developed country. 1 year salary in my account now means I quit my job immediately and do these projects full time for a year.
Something like 2000 USD/month after tax (~30%) would likely the minimal somewhat sustainable long term amount. 4000 USD/month after tax is a good tech worker salary.
The nature of taxation depends on how the transaction is characterized. I'm in the United Kingdom:
gifts: limits of 3k/year without paying tax, and unused limits carry over one year. Beyond that gifter pays VAT (20%), receiver pays no income tax on it: www.gov.uk/inheritance-tax/gifts TODO would large amounts of open ended support be characterized as a gift?
if it is characterized as a service, i.e. more specific requirements:
Ciro's current ambitions require him to remain in developed countries, because Ciro wants to document advanced science and technology by liaising with top universities, and there is not nearly as much high technology in poor countries. Remaining in developed countries is also a required due to family reasons.
If you would like public acknowledgement for your support, Ciro will very gladly give it, just let Ciro know how you'd prefer it. Due to Ciro Santilli's campaign for freedom of speech in China, many supporters have chosen to be anonyomous, and that is totally fine, not everyone is interested in politics, or has a situation where going public is acceptable, so we don't have a standard setup yet, let's build it together. A acknowledgement section at the bottom of this page would be a minimum, but I for larger donations we could add a your advertisement in a locations such as:
Ciro's goal in life is to help kids as young as possible to reach, and the push, the frontiers of natural sciences human knowledge, linking it to applications that might be the the next big thing as early as possible. Because nothing is more motivating to students than that feeling of:
Hey, I can actually do something in this area that has never been done before!
To do this, Ciro wants to work in parallel both on:
the multi-user website e-learning platform of OurBigBook.com
creating amazing teaching content that motivates that platform, and that deeply interests Ciro, notably quantum mechanics and its related applications:
Ciro believes that today's society just keep saying over and over: "STEM is good", "STEM is good", "STEM is good" as a religious mantra, but fails miserably at providing free learning material and interaction opportunities for people to actually learn it at a deep enough level to truly appreciate why "STEM is good". This is what he wants to fix.
Omar Khayyam also came to the Vizier... but not to ask for title or office. 'The greatest boon you can confer on me,' he said, 'is to let me live in a corner under the shadow of your fortune, to spread wide the advantages of Science, and pray for your long life and prosperity.'
That is being done as an exercise only for now, since the amounts are trivial, but if amounts ever start getting larger, we will actually start generating more proper accounting.
twitter.com/cirosantilli2: Ciro's secondary Twitter has a small stream of smaller updates, usually one or two a week, both project specific, but also of "the project led me to answer this Stack Overflow question" nature, as well as short China updates.
Ciro's Edit: Ciro has been sending update emails entitled "Ciro's Edict" to his sponsors. These include information more or less similar to the Twitter, but in a more cohesive form not limited to 140 character paragraphs.
When emails would get too large, Ciro is creating separate pages for them, see e.g.: ciro's Edict #4. This does reduce the exclusive priviledge of the sponsors a little bit, but better have clearer communication in the first place.
github.com/ourbigbook/ourbigbook/commits: the more hardcore coders amongst you can also of course have a quick look at the commit log. Ciro has been trying to keep it relatively clean and meaningful, to varying degrees of success.
But maybe "Everything you did brought you where you are now." applies, maybe it is during the "low impact activities" that one gets the inspiration and experience required for the "high impact ones".
The project's mission is one of, or perhaps the most important, life objective of Ciro Santilli. Reproductive goals aside. These two types of goal are incommensurable. This is one of the great challenges of life.
Ciro's goals in advertising this half done project are is partly to obtain some feedback, and partly to give the idea to someone else who might help push it further, be it in this stack or not.
But besides that, it is already in broad strokes the best approach Ciro Santilli can come up with to try and reach the mission statement only with technical advances, i.e. without large amounts of money or political influence which Ciro Santilli does not have.
Maybe that website isn't enough of a technical advance to reach its mission. Maybe there is some further not yet imagined technical insight that would push it into viability. Maybe not. But one must try. Only God can know the answer to these questions.
As of 2022, Ciro has spent about 2.5 years full time working on this project. First he spent about 1 year in 2014 on the first iteration: github.com/booktree/booktree, a GitLab fork, but then decided it was not the way to go.
Then around 2021 he put in some more 1.5 year of full time work, now with a possibly overly complicated (or perhaps just insane/immature) Next.js/Sequelize from scratch website stack.
It makes Ciro a bit ashamed to see that "so little user visible stuff was achieved in so much time". It is partly because he and many people underestimate the difficulty of web development. Perhaps there were some bad stack/usless feature choices issues. And a good dose of indulging in studying the natural sciences to bootstrap content and have fun. But really trying is the only way to learn.
[ 1.451857] input: AT Translated Set 2 keyboard as /devices/platform/i8042/s1│loading @0xffffffffc0000000: ../kernel_modules-1.0//timer.ko
[ 1.454310] ledtrig-cpu: registered to indicate activity on CPUs │(gdb) b lkmc_timer_callback
[ 1.455621] usbcore: registered new interface driver usbhid │Breakpoint 1 at 0xffffffffc0000000: file /home/ciro/bak/git/linux-kernel-module
[ 1.455811] usbhid: USB HID core driver │-cheat/out/x86_64/buildroot/build/kernel_modules-1.0/./timer.c, line 28.
[ 1.462044] NET: Registered protocol family 10 │(gdb) c
[ 1.467911] Segment Routing with IPv6 │Continuing.
[ 1.468407] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver │
[ 1.470859] NET: Registered protocol family 17 │Breakpoint 1, lkmc_timer_callback (data=0xffffffffc0002000 <mytimer>)
[ 1.472017] 9pnet: Installing 9P2000 support │ at /linux-kernel-module-cheat//out/x86_64/buildroot/build/
[ 1.475461] sched_clock: Marking stable (1473574872, 0)->(1554017593, -80442)│kernel_modules-1.0/./timer.c:28
[ 1.479419] ALSA device list: │28 {
[ 1.479567] No soundcards found. │(gdb) c
[ 1.619187] ata2.00: ATAPI: QEMU DVD-ROM, 2.5+, max UDMA/100 │Continuing.
[ 1.622954] ata2.00: configured for MWDMA2 │
[ 1.644048] scsi 1:0:0:0: CD-ROM QEMU QEMU DVD-ROM 2.5+ P5│Breakpoint 1, lkmc_timer_callback (data=0xffffffffc0002000 <mytimer>)
[ 1.741966] tsc: Refined TSC clocksource calibration: 2904.010 MHz │ at /linux-kernel-module-cheat//out/x86_64/buildroot/build/
[ 1.742796] clocksource: tsc: mask: 0xffffffffffffffff max_cycles: 0x29dc0f4s│kernel_modules-1.0/./timer.c:28
[ 1.743648] clocksource: Switched to clocksource tsc │28 {
[ 2.072945] input: ImExPS/2 Generic Explorer Mouse as /devices/platform/i8043│(gdb) bt
[ 2.078641] EXT4-fs (vda): couldn't mount as ext3 due to feature incompatibis│#0 lkmc_timer_callback (data=0xffffffffc0002000 <mytimer>)
[ 2.080350] EXT4-fs (vda): mounting ext2 file system using the ext4 subsystem│ at /linux-kernel-module-cheat//out/x86_64/buildroot/build/
[ 2.088978] EXT4-fs (vda): mounted filesystem without journal. Opts: (null) │kernel_modules-1.0/./timer.c:28
[ 2.089872] VFS: Mounted root (ext2 filesystem) readonly on device 254:0. │#1 0xffffffff810ab494 in call_timer_fn (timer=0xffffffffc0002000 <mytimer>,
[ 2.097168] devtmpfs: mounted │ fn=0xffffffffc0000000 <lkmc_timer_callback>) at kernel/time/timer.c:1326
[ 2.126472] Freeing unused kernel memory: 1264K │#2 0xffffffff810ab71f in expire_timers (head=<optimized out>,
[ 2.126706] Write protecting the kernel read-only data: 16384k │ base=<optimized out>) at kernel/time/timer.c:1363
[ 2.129388] Freeing unused kernel memory: 2024K │#3 __run_timers (base=<optimized out>) at kernel/time/timer.c:1666
[ 2.139370] Freeing unused kernel memory: 1284K │#4 run_timer_softirq (h=<optimized out>) at kernel/time/timer.c:1692
[ 2.246231] EXT4-fs (vda): warning: mounting unchecked fs, running e2fsck isd│#5 0xffffffff81a000cc in __do_softirq () at kernel/softirq.c:285
[ 2.259574] EXT4-fs (vda): re-mounted. Opts: block_validity,barrier,user_xatr│#6 0xffffffff810577cc in invoke_softirq () at kernel/softirq.c:365
hello S98 │#7 irq_exit () at kernel/softirq.c:405
│#8 0xffffffff818021ba in exiting_irq () at ./arch/x86/include/asm/apic.h:541
Apr 15 23:59:23 login[49]: root login on 'console' │#9 smp_apic_timer_interrupt (regs=<optimized out>)
hello /root/.profile │ at arch/x86/kernel/apic/apic.c:1052
# insmod /timer.ko │#10 0xffffffff8180190f in apic_timer_interrupt ()
[ 6.791945] timer: loading out-of-tree module taints kernel. │ at arch/x86/entry/entry_64.S:857
# [ 7.821621] 4294894248 │#11 0xffffffff82003df8 in init_thread_union ()
[ 8.851385] 4294894504 │#12 0x0000000000000000 in ?? ()
│(gdb)
Code 1. Terminal dump of a LKMC session with two tmux panes with QEMU on left and GDB on right showing a backtrace of the Linux kernel code currently being under QEMU.
answer important questions found through Google which he needs to solve an actual problem he has right now, and for which none of the existing answers satisfied him, and close duplicates.
monitor less known tags which very few people know a lot about and where the knowledge sharing desperately lacking, but in which Ciro specializes and therefore has some uncommon knowledge to share
Googles for his own answers to remember some detail he wrote down but with slightly different terms that were closer to mind at the time, and find other similar questions for which he has the perfect answer.
The result is that Ciro ends up getting relatively a lot of reputation without much work! The term passive income, much beloved by fake investment gurus, comes to mind. But now it's "passive reputation"! And it is useless! Yay!
The more patents a research project generates, the less actually working products it produces.
and this does ring true in Stack Overflow as well. When you are answering stuff, it means that you either didn't know, or that the information wasn't well available, and so your specific application is progressing slowly because of that. Once the generic prerequisites are well solved and answered, you will spend much more time on your business specific things rather than anything else that can be factored out across projects, and so you will get more "directly useful work" done, and less Stack Overflow answers. Of course, without the prior research in place, you can't get the final product done either.
In terms of per year reputation ranks, Ciro was in the top 100 in of the 2018 ranking with 38,710 reputation gained in that year: stackexchange.com/leagues/1/year/stackoverflow/2018-01-01?sort=reputationchange&page=4 (archive). He reached top 50 in 2022. Note that daily reputation is mostly capped to 200 per day, leading to a maximum 73000 per year. It is possible to overcome this limit either with bounties or accepts, and Ciro finds it amazing that some people actually break the 73k limit by far with accepts, e.g. Gordon Linoff reached 135k in 2018 (archive)! However, this is something that Ciro will never do, because it implies answering thousands and thousands of useless semi duplicate questions as fast as possible to get the accept. Ciro's reputation comes purely from upvotes on important question, and is therefore sustainable without any extra effort once achieved. Interestingly, Ciro appeared on top of the quarter SE rankings around 2019-11: web.archive.org/web/20191112100606/https://stackexchange.com/leagues but it was just a bug ;-)
Stack Overflow reputation is of course, in itself, meaningless. People who contribute to popular subjects like web development will always have infinitely more reputation than those that contribute to low level subjects.
What happens on the specialized topics though is that you end up getting to know all the 5 users who contribute 95% of the content pretty soon as you study those subjects.
Like everything that man does, the majority of Ciro's answers are more or less superficial subjects that many people know but few have the patience to explain well, or they are updates to important questions reflecting upstream developments. But as long as they save 15 minutes from someone's life, that's fine.
There is great beauty when you are involved in a programming problem, and you suddenly remember: wait, I answered something related a few years ago! And especially so when you can go back and improve your old answer with new insight. This has great value, because when you were more newbie, you would have typed different words into Google Search than you would now. So by updating posts from when you were a newbie, you are helping other newbies more, as they are more likely to be also searching for those keywords. It is also very nice to have some head start on the answer's upvote count and not have to bootstrap yet another answer from 0 upvotes and have to go through all the competition!
For example, Ciro's most upvoted answer as of July 2019 is stackoverflow.com/questions/18875674/whats-the-difference-between-dependencies-devdependencies-and-peerdependencies/22004559#22004559 was written when he spent his first week playing with NodeJS (he was having a look at Overleaf, later merged into Overleaf, for education), which he didn't touch again for several years, and still hasn't "mastered" as of 2019! This did teach a concrete life lesson to Ciro however: it is impossible to know what is the most useful thing you can do right now very precisely. The best bet is to follow your instincts and do as much awesome stuff as you can, and then, with some luck, some of those attempts will cover an use case.
Ciro tends to take most pride on his systems programming answers, which is a subject that truly relatively few people know about. He likes it when he goes insanely deep into a subject, way beyond what OP had in mind, exposing full root causes and broader causes, see e.g.:
Ciro also derives great joy from his "media related answers" (3D graphics, audio, video), which are immensely fun to write, and sometimes borderline art, see answers such as those under "OpenGL" and "Media" under the best articles by Ciro Santillis or even simpler answers such as:
There is something of greater value in perfectly presented technical knowledge, that goes beyond than simply getting something done. The pleasure of understanding and mastering something, and perhaps of the explanation itself. Sometimes when answering, Ciro feels like a tailor, where ASCII is his cloth. See also: Section "The art of programming", Section "Physics and the illusion of life".
Ciro's deep understanding of Stack Overflow mechanisms and its shortcomings also helped shape his ideas for: OurBigBook.com. So it is a bit funny to think that after all time Ciro spent on the website, he actually wants to destroy it and replace it with something better. There can be no innovation without some damage. It also led to Ciro's creation of Stack Overflow Vote Fraud Script.
Like any other style guide, this answer style guide, once fully incorporated and memorized, allows Ciro to write answers faster, without thinking about formatting issues.
When he started contributing, Ciro was still a newbie. One early event he will never forget was when someone mentioned a "man page", and Ciro commented saying that there was a typo!
When Ciro reached 15 points and gained the ability to upvote, it felt like a major milestone, he even took a screenshot of the browser! 1k, 10k and 100k were also particularly exciting. When the 100k cup (archive) arrived in 2018, Ciro made a show-off Facebook post (archive). At some point though, your brain stops caring, and automatically filters out any upvotes you get except on the answers that you are really proud of and which don't yet have lots of upvotes. The last remaining useless gamed achievement that Ciro looked forward to was legendary (archive), and which he achieved on 2021-02-16.
It feels especially amazing when people in the real world start taking note of you, and either close friends tell you straight out that you're a Stack Overflow God, or as you slowly and indirectly find out that less close know or came to you due to your amazing contributions.
It is also amazing when you start having a repertoire of answers, and as you are writing a new answer, you remember: "hey, the knowledge of that answer would be so welcome here", and so you link to the other answer as well at the perfect point. This somewhat achieves does what OurBigBook.com aims to do: for each small section of a tutorial, gather the best answers by multiple people.
Ciro feels that his Stack Overflow alter ego is the user kenorb, which has a surprisingly similar contribution pattern (one of the top necromancers) and subjects (Python, Bash). Ciro tried to contact him to say hi, but it was hard to find a contact. kenorb, feel free to send Ciro a hi one of those days. His GitHub github.com/kenorbA gives name Rafal W. and links to some trading stuff: github.com/EA31337, especially compatible with his stated location of London. Rafal is Rafael in Polish: en.wikipedia.org/wiki/Rafał It would normally have the l with a stroke, but ASCII. LinkedIn: www.linkedin.com/in/kenorb/. Ah, so R3 he works at is actually a blockchain company: en.wikipedia.org/wiki/R3_(R3CEV), FOREX appears to be his on-the-side.
Another one is Aaron Hall, who is also very high on the necromancer list, answers in Python which is a topic Ciro cares about, and states on his profile:
Follow me on Twitter and tell me what canonical questions you would like me to respond to!
Ciro also asks some questions on a ratio of about 1 question per 10 answers. But Ciro's questions tend to be about extremely niche that no one knows/cares about, and a high percentage of them ends up getting self answered either at asking time or after later research.
This was one of the profile pictures that Ciro Santilli used as part of his campaign.
Ciro later went on to prefer the "unmodified" Xi Jinping photo cover of some edition Xi Jinping Though, which also reminds Ciro very much of religious devotional pictures, e.g. those of Li Hongzhi.
Ciro understood that the best propaganda against a dictatorial enemy is recontextualized unmodified propaganda produced by the enemy itself. Their propaganda speaks for itself.
Figure 2. Scatter plot of Stack Overflow user reputation vs profile views in March 2019 with Ciro Santilli marked as A. The A is towards the top right corner.
Ciro feels that the view count started increasing more slowly since 2020 compared to his reputation, likely every single Chinese user has already viewed the profile.
Figure 3. Ciro Santilli with a stone carved Budai in the Feilai Feng caves near the Lingyin Temple in Hangzhou taken during his legendary 2012 touristic trip to China. Will he ever be able to go to China again to re-experience such marvelous locations?
Because Ciro cares about education, around 2014 he looked into markup languages and version control for books, before he noticed that this approach was useless and that ranking algorithms are all that matter:
GitLab: very important to Ciro because he wanted to base Booktree on it.
karlcow/markdown-testsuite improvements: Ciro has implemented the test runner a few months before CommonMark left stealth mode and killed it instantaneously.
Vim: sometimes Ciro want crazy and wasted his time with Vimscript:
Vim Markdown: the owner plasticboy was really nice and made Ciro a collaborator for his contributions, notably a live ToC outline and the header mappings
What is really needed is to create a single cohesive game world, designed specifically for this purpose, and with a very large number of game mechanics.
Notably, by "game mechanic" is meant "a magic aspect of the game world, which cannot be explained by object's location and inertia alone" in order to test the the missing link between continuous and discrete AI.
The question then becomes: do we have enough computational power to simulation a game worlds that is analogous enough to the real world, so that our AI algorithms will also apply to the real world?
To reduce computation requirements, it is better to focus on a 2D world at first. Such world with the right mechanics can break any AI, while still being faster to simulate than a 3D world.
The initial prototype uses the Urho3D open source game engine, and that is a reasonable project, but a raw Simple DirectMedia Layer + Box2D + OpenGL solution from scratch would be faster to develop for this use case, since Urho3D has a lot of human-gaming features that are not needed, and because 2019 Urho3D lead developers disagree with the China censored keyword attack.
Simulations such as these can be viewed as a form of synthetic data generation procedure, where the goal is to use computer worlds to reduce the costs of experiments and to improve reproducibility.
Video 3. DeepMind Has A Superhuman Level Quake 3 AI Team by Two Minute Papers (2018) Source. Commentary of DeepMind's 2019 Capture the Flag paper. DeepMind does some similar simulations to what Ciro wants, but TODO do they publish source code for all of them? If not Ciro calls bullshit on non-reproducible research. Does this repo contain everything?
Video 4. OpenAI Plays Hide and Seek... and Breaks The Game! by Two Minute Papers (2019) Source. Commentary of OpenAi's 2019 hide and seek paper. OpenAI does some similar simulations to what Ciro wants, but TODO do they publish source code for all of them? If not Ciro calls bullshit on non-reproducible research, and even worse due to the fake "Open" in the name. Does this repo contain everything?
Video 5. Much bigger simulation, AIs learn Phalanx by Pezzza's Work (2022) Source. 2d agents with vision. Simple prey/predator scenario.
It is unbelievable that you can't find easily on YouTube recreations of many of the key physics/chemistry experiments and of common laboratory techniques.
Experiments, the techniques required to to them, and the history of how they were first achieved, are the heart of the natural sciences. Without them, there is no motivation, no beauty, no nothing.
A bit like what Ciro Santilli does in his Stack Overflow contributions but with computers, by indicating precise versions of his operating system, software stack, and hardware whenever they may matter.
It is understandable that some experiments are just to complex and expensive to re-create. As an extreme example, say, a precise description of the Large Hadron Collider anyone? But experiments up to the mid-20th century before "big science"? We should have all of those nailed down.
We should strive to achieve the cheapest most reproducible setup possible with currently available materials: recreating the original historic setup is cute, but not a priority.
Someone with enough access to labs has to step up and make a name for themselves through the huge effort of creating a baseline of amazing content without yet being famous.
Until it reaches a point that this person is actively sought to create new material for others, and things snowball out of control. Maybe, if the Gods allow it, that person could be Ciro.
This project is one step that could be taken towards improving the replication crisis of science. It's a bit what Hackster.io wants to do really. But that website is useless, just use OurBigBook.com and create videos instead :-)
Ciro Santilli visited the teaching labs of a large European university in the early 2020's. They had a few large rooms filled with mostly ready to run versions of several key experiments, many/most from "modern physics", e.g. Stern-Gerlach experiment, Quantum Hall effect, etc.. These included booklets with detailed descriptions of how to operate the apparatus, what you'd expect to see, and the theory behind them. With a fat copyright notice at the bottom. If only such universities aimed to actually serve the public for free rather than hoarding resources to get more tuition fees, university level education would already have been solved a long time ago!
Once proved, press a button on your computer, and the proof is automatically verified. No messy complicated "group of savants" reading it for 4 years and looking for flaws!
devel.isa-afp.org/ Isabelle Archive of Formal Proofs. A curated list of Isabelle proofs, with minimal web UI. This is almost what we need, but without the manual curation, and with a better web UI.
However, as expressed by the QED manifesto, is unbelievable that there isn't one awesome and dominating website, that hosts all those proofs, possibly an on the browser editor, and which all mathematicians in the world use as the one golden reference of mathematics to rule them all!
Standard library maintainers don't have to deal with the impossible question of what is "beautiful" or "useful" enough mathematics to deserve merged: users just push content to the online database, and star what they like!
We then just use GitHub-like namespaces for each person's theorem, e.g. "cirosantilli/fundmaental-theorem-of-calculus" or "johndoe/fundmaental-theorem-of-calculus" so that each person owns their own preferred definition IDs, which others can reuse.
No more endless bikeshedding over what insane level of generality do your analysis theorems need to be (Ciro Santilli attended at talk about lean where the speaker mentioned this was a problem)!
Furthermore, it is just a matter of time until the "single standard library" approach starts to break down, as the git clone becomes impossibly large. At this point, people have to start publishing separate packages. And when this happens, you would need to retest every package that you add to your project. This is why a centralized database is just inevitable at some point, it just scales better.
Interested in a conjecture? No problem: just subscribe to its formal statement + all known equivalents, and get an email on your inbox when it gets proved!
Are you a garage mathematician and have managed to prove a hard theorem, but no "real" mathematician will read your proof because your unknown? Fuck that, just publish it on the system and let it get auto verified. Overnight fame awaits.
Such a system would be the perfect companion to OurBigBook.com. Just like computer code offers the backbone of Linux Kernel Module Cheat Linux kernel tutorials, a formal proof system website would be the backbone of mathematics tutorials! You know what, if OurBigBook.com becomes insanely successful, Ciro is going to add this to it later on.
Packages are just regular git repos, with some metadata. One notable metadata would be a human readable description of the theorems the package provides.
The package registry would then in addition to most package registries have a CIserver in it, that checks the correctness of all proofs, generates a web-page showing each theorem.
The Math Genome Project has very similar end goals. Apparently it will run proofs on server against the stdlib, but not allow one proof to depend on another, so in the end you still have to pull request everything back. Also there may be moderation forever, unclear. Ciro tried to create a dummy lolol theorem without any correct syntax and it just became private. Also apparently every single proof needs corresponding LaTeX manually written to be accepted. Cowards!
Figure 1. 42 years of microprocessor trend data by Karl Rupp. Source. Only transistor count increases, which also pushes core counts up. But what you gonna do when atomic limits are reached? The separation between two silicon atoms is 0.23nm and 2019 technology is at 5nm scale.
The medical consequences of this revolution are still trickling down towards medical applications of 2019, inevitably, but somewhat slowly due to tight privacy control of medical records.
Ciro Santilli predicts that when the 100 dollar mark is reached, every person of the First world will have their genome sequenced, and then medical applications will be closer at hand than ever.
But even 100 dollars is not enough. Sequencing power is like computing power: humankind can never have enough. Sequencing is not a one per person thing. For example, as of 2019 tumors are already being sequenced to help understand and treat them, and scientists/doctors will sequence as many tumor cells as budget allows.
Just imagine this: at the comfort of your own garage, you take some model organism of interest, maybe start humble with Escherichia coli. Then you modify its DNA to your liking, and upload it to a 3D printer sized machine on your workbench, which automatically synthesizes the DNA, and injects into a bootstrapped cell.
You then make experiments to check if the modified cell achieves your desired new properties, e.g. production of some protein, and if not reiterate, just like a software engineer.
Of course, even if we were able to do the bootstrap, the debugging process then becomes key, as visibility is the key limitation of biology, maybe we need other cheap technologies to come in at that point.
This a place point we see the beauty of evolution the brightest: evolution does not require observability. But it also implies that if your changes to the organism make it less fit, then your mutation will also likely be lost. This has to be one of the considerations done when designing your organism.
If we could only simulate those, we would basically "solve molecular biology". Just imagine, instead of experimenting for a hole year, the 2021 Nobel Prize in Physiology and Medicine could have been won from a few hours on a supercomputer to determine which protein had the desired properties, using just DNA sequencing as a starting point!
Ciro is sad that by the time he dies, humanity won't have understood the human brain, maybe not even a measly Escherichia coli... Heck, even key molecular biology events are not yet fully understood, see e.g. transcription regulation.
How hard could it be? You just have to learn the encoding of the neural spine/eyes/ear, add an invasive device that multiplexes it, and then the benefits could be mind blowing.
Interestingly and obviously, the initial advances in the area are happening for people that have hearing or vision difficulties. Since they already have a deficient sense, you don't lose that much by a failed attempt.
C/C++: almost all of those fall into "disassemble all the things" category. Ciro also does "standards dissection" and "a new version of the standard is out" answers, but those are boring:
What exactly is std::atomic in C++?. This answer was originally more appropriately entitled "Let's disassemble some stuff", and got three downvotes, so Ciro changed it to a more professional title, and it started getting upvotes. People judge books by their covers.
Section "Formalization of mathematics": some early thoughts that could be expanded. Ciro almost had a stroke when he understood this stuff in his teens.
Ciro Santilli is very happy to meet people with related interests, he really loves his like-minded online friends. Even if you don't have something a specific goal in mind for the contact, please just say hi.
To contact Ciro publicly about any general subject that is not covered in a more specific GitHub repository, including saying hi or suggestions about his website either:
But if you feel more comfortable with private contact, no problem, either:
extract Ciro's email from one of his GitHub repositories. It might be of the form lower case first name, followed by a dot (which Google actually ignores), followed by his lower case last name, and under a popular email domain from Google
The closed sourcedness of the server is however a major point of concern. Signal would be a better choice, but it does not have usernames and so requires users to share cell phone numbers.
Another major pain point of Telegram is the lack of message sync across devices, which Signal also already solves.
a ProtonMail account which is of form: "Ciro's GitHub username + protonmail.com". Ciro doesn't use this very often, so if you don't get a reply soon, do ping Ciro in some other way telling him to check his protonmail. Ciro aims to maintain very high operations security standards on that account, making it the most secure way to contact Ciro, and the only one with a reasonable chance of plausible deniability:
concession: notifications that messages were received in the ProtonMail mailbox are sent an unencrypted mailbox which Ciro views more regularly and which has more free storage. But the message content itself is not. It does not seem that the Android app has a mode where it only notifies you of new messages but requires a password every time to see any messages. Also Android appears to request to remember passwords every time, so you risk clicking yes at some point.
If you have Ciro's phone number (available to closer acquaintances), Ciro's preferred messaging software is Signal. But he basically also runs all other major apps as well. Ciro sets a 1 week disappearing messages timer to all conversations. This is slightly less secure than protonmail as Ciro does not use multi-factor authentication to open the messages every time, but it should be pretty damn good already.
Accounts in Chinese websites. These accounts might be banned or altered or offer other limitations, so Ciro only communicates briefly through them. All communication through those channels should obviously be assumed to be compromised:
pincong.rocks/people/cirosantilli Lost account tested as of 2022-11 and likely much earlier. Last existing password not working, and there doesn't seem to be a reset password button. Creating cirosantilli2
twitter.com/cirosantilli primary channel, contains only updates on Ciro's best technical content. Low volume.
twitter.com/cirosantilli2 secondary channel, contains smaller technical updates that didn't make it to the primary channel, and some China fun. Higher volume.
Thou shalt eat thy watermelon in the morning, and thy melon in the evening. Thou shalt not eat thy watermelon in the evening, nor shalt thou eat thy melon in the morning.
Unconditional basic income is Ciro Santilli's ultimate non-transhumanist technological dream: to reach a state of technological advancement and distribution of resources so high that everyone gets money for doing nothing, enough for:
basic survival needs: food, housing, clothes, hygiene, etc.
two children to keep the world going. Or immortality tech, but is harder and borderline transhumanist :-)
Ciro Santilli will not live to see this, and is content with helping it happen faster by increasing the efficiency of the world as. And having at least two well educated kids to carry on the project after he dies :-)
This is even less likely than AGI due to the end of silicon Moore's Law and at the start of the Genome's Moore's law: information doubles, small sizes halve, but macroscopic mechanical artifacts stay the same.
So in the worst case we can just grow brainless bodies and replace the cavity hole with a computer that controls the body, possibly with high level decisions coming from a remote building-sized genetically engineered biological AGI brain.
Of course, it is all about costs. A human costs about 130k 2010 USD/year. So how cheap can we make the AGI / robot human equivalent / year for a given task?
AGI + humanoid robots likely implies AI takeover though. It would then come down to human loving bots vs human hating bots fighting it out. It will be both terrifying and fun to watch.
AGI alone would be very dangerous, in case it can get control of our nuclear arsenals through software zero days or social engineering. Although some claim that is unlikely.
Video 1. Easy street by Stan Kenton and June Christy (1945) Source. TODO exact lyrics for copy paste? There seem to be several variants, and I don't have the patience to transcribe. Close enough: lyricsplayground.com/alpha/songs/e/easystreet.html. Except that with UBI there won't be a:
guy that you can hire to plant trees so you can have shade
The fact that in poor countries a huge number of people do not speak the economically dominating language of the world, the lingua franca, English as of 2020, is a major obstacle to the development of those countries.
Teaching its people English should be the number one priority of any country. Without that, there can be no technological development. Everything else is secondary and can be learnt off the Internet once you know English.
Of course, like all non-constructed languages, English is not fully optimal in terms of regularity and information density. It could be argued that other languages are better in those aspects.
However, Ciro just doesn't think that the difference is that great to justify replacing English which is already dominant. How much more efficient can a perfect constructed language be than English? 1.01? 1.001? Such margins don't matter. Once you have learnt it young, it's done, for good.
English-based a posteriori constructed languages that regularize English further are perhaps the only reasonable alternative, like how C++ evolved from C by creating a low cost upgrade path. Although in practice they will never take off unless a dictatorship rules the world:
One interesting anecdote is that Ciro met his wife in French, and talking to her primarily in English feels really weird, so language does matter in love.
Different languages might also good at producing interesting diverse touristic locations, with different diverse and interesting foods. Because that's what tourism is all about. The exotic. The unique. And therefore, also necessarily the inefficient.
Ogden's Basic, and the concept of a simplified English, gained its greatest publicity just after the Allied victory in World War II as a means for world peace. Ogden was convinced that the world needed to gradually eradicate minority languages and use as much as possible only one, English in either a simple or complete form.
Video 1. English spelling - a bit mad, but perhaps the best system around by Lindybeige (2015) Source. To be taken as a semi-joke, but he does mention the interesting point that English insane spelling helps disambiguate reading, like an intermediate between Chinese characters and more regular spelled languages.
International Computers Limited fully bought by Fujitsu in 1998 after a long decline. The Fujitsu Wikipedia entry contains the emblematic image caption:
The Fujitsu office in Bracknell, United Kingdom, formerly an ICL site and opened by HM the Queen in 1976
So much for The Queen. This was a prelude to Arm's sale somewhat.
Europe has basically become an outsourcing hub for the United States. The fact that its starts are all sold if they become large enough just means that R&D is also outsourced.
The key problem is that there are so many small countries in Europe, that any startup has to deal with too many incompatible legislation and cannot easily sell to the hole of Europe and scale. So then a larger company from a more uniform country comes and eats it up!
people can't generally work remotely from different countries for the same company as regular employees, only as contractors. This is because of fiscal incompatibilities across countries[ref][ref], and has become an increasing problem in the 2020's with the increase in remote work possibilities during/after COVID-19.
it is quite rare for people to study at university in different countries than their own, because the entry examinations are in the native language and have local history knowledge components. This also means that people from different countries don't easily recognize which are the best Universities of other countries, making you take a hit if you want to search for jobs elsewhere
You just can't go study or work in any other country (except for the UK, when it was still in the EU) without putting a huge effort into learning its language first.
This year, I decided to travel from Berlin to #COP26 in Glasgow by train. The journey was expected to cover 4 trains from 4 different railway operators and to last 17 hours. I had planned for at least 30 minutes transfer time in Cologne, Brussels and London.
Well, as you might have guessed, in reality the trip took 32 hours and I spent one extra night at a hotel in London.
Equally so, it can't force little fiscal paradises who effectively benefit from being in Europe like Ireland, Luxembourg, Monaco, Switzerland ("not European", but should that be allowed?) and Cyprus (the EU can't even maintain its territorial integrity, let alone fiscal) to not offer ridiculously low taxes and incentives which make them entry points for foreign companies to rape Europe.
Historically, this disunion is partly due to the European balance of power, whereby countries would form alliances with old enemies to prevent another country from taking over. Also linked are failed military unification attempts by Napoleon and Hitler, though we are likely better off without the latter succeeding!!! Though those also partly failed due to wider balance of power issues involving the United Kingdom, the Soviet Union and USA, not only due to internal balance. Of course, none of that matters anymore after World War II, where other more unified Europe-sized potencies rose, first the USA and the Soviet Union, and then China, and now European disunion is nothing but a burden.
Don't bend; don't water it down; don't try to make it logical; don't edit your own soul according to the fashion. Rather, follow your most intense obsessions mercilessly.
His family was not even poor. He was young and did not have a family to support. His father even told him: "do whatever the fuck you want, we support your decision".
It was also in part because a physicist uncle which he respected suggested that as an engineer Ciro might be able to make useful contributions to tooling required by physics. When Roberto Salmeron died in 2020, Ciro's friends shared this 2013 video interview with the late professor, where he explains he first went to the University of São Paulo to study engineering (like Ciro), but then fell for his passion for physics (like Ciro?), his first task being to build a Geiger counter, thus explaining the likely origin of the uncle's theory. But who knows, maybe he was right. Maybe Ciro's OurBigBook.com will become huge and help a lot of people, and it might not have had Ciro not done engineering and learnt programming. Destiny operates in weird ways sometimes.
Had he studied more sciences, he might have been happier, and might have had greater achievements later in life, in particular when he went to École Polytechnique.
Similar thoughts crossed his mind when he started his campaign for freedom of speech in China, but this time he had learnt the lesson, and went for it, and it felt very good.
If you have a day job, but also have a dream, and want to keep the day job for a reason, try to reserve the time of the day that your brain works best before or after work for your dream: do one cool thing every day.
Companies can help you grow because you see real problems from within them, but their end goal is to consume you as much as possible. Don't let that happen. Invest part of what you gain, in yourself. www.outsideonline.com/outdoor-adventure/paradox-going-outside/ The Paradox of Going Outside by James Somers (2012) puts it incredibly well:
I work, for instance, as a Web developer. It's a very good job. Our office is a block south of Union Square, a 12-minute commute from my apartment. We're served breakfast every morning. Our kitchen is stocked with "provisions" of organic beef jerky, coconut water, craft beers, chips, and two restaurant-class espresso machines. We have two ping pong tables and buckets of 3-star ping pong balls. (A new office manager bought "1-stars" once and some of the guys protested by crushing them.) We work on 4-cored Apple Mac computers with dual monitors. We have an unmolested hour for lunch, 10-minute breaks in the morning and afternoon, and a "do not disturb" policy past the working hours. We even have a specific email address where employees can ask for free things: genuine maple syrup, hot chocolate, a $900 chair, a new keyboard. Most of the programmers make six figures, and many of those have only three or four years of experience.
It's impossible to say so without sounding like the spokesperson for Entitlement itself but working there is still sort of soul-crushing. It's soul-crushing in the way that any job that doesn't command your full passionate attention must be. What happens is that I will be in my chair in the early afternoon and I will accidentally step out of myself and all I'll see is time passing, nine-hour parcels of healthy consciousness forever being packed away as the user experience of clerical workers or consumers or whoever gets marginally better; and I'll end up thinking that this enterprise of mine is not so much creative but bureaucratic, that what I've gotten good at is reading the instruction manuals of other people, finding my way around their insignificant warrens. And in those moments the whole business will seem to me like kind of a tragic waste.
Said one gazelle to another, "I will Take shelter in the harem from now on; For there are hunters at large in the wild, And there is no peace here for a gazelle. From fear of hunters I want to be free. O how I long for some security."
His friend replied, "Live dangerously, my Wise friend, if it is life you truly seek. Like a sword of fine mettle hurl yourself Upon the whetting-stone; stay sharp thereby. For danger brings out what is best in you: It is the touchstone of all that is true."
Figure 2. Jake Likes Onions "Slowly" cartoon. Source. This is what trying to reach a dream part time feels like. The cartoon reads: "The tiger pursues its prey. Slowly. The human pursues its life goals. Slowly. Very slowly.".
When you grow up you tend to get told that the world is the way it is and your life is just to live your life inside the world. Try not to bash into the walls too much. Try to have a nice family life, have fun, save a little money. That's a very limited life. Life can be much broader once you discover one simple fact: Everything around you that you call life was made up by people that were no smarter than you. And you can change it, you can influence it... Once you learn that, you'll never be the same again.
What do you desire? What makes you itch? What sort of a situation would you like?
Let's suppose, I do this often in vocational guidance of students, they come to me and say, well, "we're getting out of college and we have the faintest idea what we want to do". So I always ask the question, "what would you like to do if money were no object? How would you really enjoy spending your life?"
Well, it's so amazing as a result of our kind of educational system, crowds of students say well, we'd like to be painters, we'd like to be poets, we'd like to be writers, but as everybody knows you can't earn any money that way. Or another person says well, I'd like to live an out-of-doors life and ride horses. I said you want to teach in a riding school?
Let's go through with it. What do you want to do? When we finally got down to something, which the individual says he really wants to do, I will say to him, you do that and forget the money, because, if you say that getting the money is the most important thing, you will spend your life completely wasting your time. You'll be doing things you don't like doing in order to go on living, that is to go on doing things you don't like doing, which is stupid. Better to have a short life that is full of what you like doing than a long life spent in a miserable way.
And after all, if you do really like what you're doing, it doesn't matter what it is, you can eventually turn it - you could eventually become a master of it. It's the only way to become a master of something, to be really with it. And then you'll be able to get a good fee for whatever it is. So don't worry too much. That's everybody is - somebody is interested in everything, anything you can be interested in, you will find others will.
But it's absolutely stupid to spend your time doing things you don't like, in order to go on spending things you don't like, doing things you don't like and to teach our children to follow in the same track. See what we are doing, is we're bringing up children and educating to live the same sort of lifes we are living. In order that they may justify themselves and find satisfaction in life by bringing up their children to bring up their children to do the same thing, so it's all retch and no vomit. It never gets there. And so, therefore, it's so important to consider this question: What do I desire?
That's the way I live my life, I give it my all. I think that a person should really make up his mind what he wants to do, and when did made up, he cannot fail at it. The basic rule to sucess I think, is when the going gets tough, that is a positive signal to keep chargin'.
If you're going to try, go all the way. Otherwise, don't even start. This could mean losing girlfriends, wives, relatives and maybe even your mind. It could mean not eating for three or four days. It could mean freezing on a park bench. It could mean jail. It could mean derision. It could mean mockery--isolation. Isolation is the gift. All the others are a test of your endurance, of how much you really want to do it. And, you'll do it, despite rejection and the worst odds. And it will be better than anything else you can imagine. If you're going to try, go all the way. There is no other feeling like that. You will be alone with the Gods, and the nights will flame with fire. You will ride life straight to perfect laughter. It's the only good fight there is.
I have one of two choices - stay in the post office and go crazy... or stay out here and play at writer and starve. I have decided to starve.
Video 5. All adults are bored scene from an Edward Teller, An Early Time. Source.
Up to the time that I met Klug ([a mathematiciam]), I was sure that all grown ups were people to be pitied. They had to work, they were tired, they were bored with what they were doing. I heard both my parents often complain. Klug was the first man whom I met who most obviously enoyed what he was doing.
But to be fair, being a fucking "genius" might be a requirement to escape that fate!
Ciro Santilli believes that there is a close link between the ability to create disruptive technology, and the desire to find bugs/exploits in systems.
Robert Noyce's stealing a pig for a university party somewhat as a joke. This was actually a felony, but he got away with a compromise by paying the owner and being suspended for 6 months. The law is not blind, and thanks for that sometimes.
Oh, and apparently he also got a university girlfriend pregnant, and she had an abortion.
The minute I dropped out I could stop taking the required classes that didn't interest me, and begin dropping in on the ones that looked far more interesting.
And much of what I stumbled into by following my curiosity and intuition turned out to be priceless later on.
Because I had dropped out and didn't have to take the normal classes, I decided to take a calligraphy class to learn how to do this.
None of this had even a hope of any practical application in my life.
If I had never dropped in on that single course in college, the Mac would have never had multiple typefaces or proportionally spaced fonts.
Of course it was impossible to connect the dots looking forward when I was in college. But it was very, very clear looking backward 10 years later.
Again, you can't connect the dots looking forward; you can only connect them looking backward. So you have to trust that the dots will somehow connect in your future. You have to trust in something — your gut, destiny, life, karma, whatever. This approach has never let me down, and it has made all the difference in my life.
When I was 17, I read a quote that went something like: "If you live each day as if it was your last, someday you'll most certainly be right."
It made an impression on me, and since then, for the past 33 years, I have looked in the mirror every morning and asked myself: "If today were the last day of my life, would I want to do what I am about to do today?"
And whenever the answer has been "No" for too many days in a row, I know I need to change something.
Someone once called Ciro Santilli that: archive.is/W1ocv. It's an overstatement, considering that Ciro's parents have some money. Not infinite. But still. Changes everything. A real Based God is someone like Charles Bukowski, who had to work decades at the post office.
Find a time in which your mind hasn't yet been destroyed by useless work, usually in the morning before work, and do one thing you actually like in life.
Even better, try to reach an official agreement with your employer to work 20% less than the standard work week. For example, you could work one day less every week, and do whatever you want on that day. It is not possible to push your passion to weekends, because your brain is too tired. "You keep all non-company-related IP you develop on that time" is a key clause obviously.
On a related note, good employers must allow employees to do whichever the fuck "crazy projects", "needed refactorings or other efficiency gains" and "learn things deeply" at least 20% of their time if employees want that: en.wikipedia.org/wiki/20%25_Project. Employees must choose if they want to do it one day a week or two hours per day. One day per month initiatives are bullshit. Another related name: genius hour.
The same goes for school, and maybe even more so because your parents can still support you there. Some Gods who actually followed this advice and didn't end up living under a bridge:
George M. Church "[We] hope that whatever problems... contributed to your lack of success... at Duke will not keep you from a successful pursuit of a productive career." Lol, as of 2019 the dude is the most famous biotechnologist in the world, those "problems" certainly didn't keep him back.
Freeman Dyson proved the equivalence of the three existing versions of quantum electrodynamics theories that were around at his time, and he has always been proud of not having a PhD!
Person that Ciro met personally and shall remain anonymous for now for his privacy: once Ciro was at a bar with work colleagues casually, it was cramped, and an older dude sat next to his group.
The dude then started a conversation with Ciro, and soon he explained that he was a mathematician and software engineer.
He never did a PhD, and said that academia was a waste of time, and that you can get as much done by working part time a decent job and doing your research part time, since you skip all the bullshit of academia like this.
Yet, he was still invited by collaborating professors to give classes on his research subject in one of the most prestigious universities in the world. Students would call him Doctor X., and he would correct them: Mister X.
As a software engineer, he had done a lot of hardcore assembly level optimizations for x86 for some mathematical libraries related to his mathematics interests. He started talking microarchitecture with Ciro's colleagues.
And he currently worked on an awesome open source project backed by a company.
At last but not least, he said he also fathered 17 children by donating his sperm to lesbian mothers found on a local gay magazine, and that he had met most/all of those children after they were born.
A God. Possibly the most remarkable person Ciro ever met, and his jaw was truly dropped.
Steve Jobs has a great quote about this. He's totally right on this one!
You've got to start with the customer experience and work backwards to the technology. You can't start with the technology and try to figure out where you're going to sell it.
Video 1. Steve Jobs Insult Response excerpt from the 1997 WWDC. Source. TODO understand the context of the question a bit better. It is something to do with an OpenDoc thing and Java.
There is of course some level chicken-and-egg paradox in this, as highlighted by Dilbert, since choosing an achievable goal in the first place requires some level of technical understanding.
Figure 1. Dilbert cartoon about designing a nuclear power plant from user requirements (2002) Source.
This cartoon illustrates well how when doing deep tech and fighting against the laws of physics, you can't just start from user requirements, but you also have to also think "what can we actually get done at all with this new technique".
The best research engineers are able to identify what is just on the cusp of the "possible", but which has the greatest value. This is the endless dance between the tech push, and the market/need pull.
However, these people underestimate your brain. The brain is beautiful, and human intuition is capable of generating interest towards the things that are actually useful to reach your goal. When you feel like learning something related to your goal, by all means, give yourself the time to do so. But this still be much more efficient than just learning random things that other people tell you to learn.
Ciro Santilli and many many others believe that backward design is a fundamental principle that should be considered by the educational system rather than wasting 90% of everyone's time with the 90% of mandatory curricula they don't care about:
notably that school should be personalized and project driven: