Best[1] I could do was a non-networked forth that easily fit in a jumbo frame. Maybe one day I'll think of a trick to fit it in a normal MTU, but it's more likely that networking will widen in the meantime.
[1] I chose the constraint that CODE words were fine, but the kernel had to already contain the dictionary implementation: no "magic numbers" known to both the forth and kernel source. The motivation for that constraint was the "three instruction forth" which I would call a "monitor program" instead.
Hell, I've coded in languages that I didn't even know (didn't really even know what the language was -- I think it was like VB or something) by copying terms from some sample, reference or other part of the code and putting in the term or idea I was looking for.
Additionally, just try to look up items on a language that is in (constant?) flux like Swift. Swift 1.x? 2.x? 3.x? 4.x? What's the API today -- naming convention changed, parameters changed, etc. All I can say is that thank goodness Google allows for date ranges with searches. :-)
I did an interview problem like this a while back (was about combining CIDR blocks) and I found an answer on the Internet. I coded up a similar solution (I used a slightly different data structure with a slight optimization just to show I didn't copy the algorithm exactly). The place actually complemented me on my Google foo as they claimed they asked the question because they knew (thought?) people couldn't look up the answer. Of course, they dinged me by saying my code had too many comments (nevermind I was detailing WHY and HOW my algorithm was different from the Google results). I didn't get any love for the man(1) page I made either. Oh well, can't please everyone. :-)
At launch screen, use arrow keys for level up/down, lives up/down (q to enable "rapid fire" cheat) ... start game with either "z" or "x" key.
Pico-8 uses 2 buttons primarily -- keys are mapped to "z" and "x" ... when playing, z will do fastest-sampling fire and x will do regular firing (this is most noticeable after using the q cheat.)
If you use the q cheat -- the score will not count toward the high score.
I stopped developing for pico-8 as I get it that some of the constraints are artificial, but I feel some are just too restrictive (like volume level on sounds). It's a fun little system with everything you need to use it built in. Some people have done some incredible things within the limitations of the system.
On Topic: I own a late '16 MBP 15" w/ touchbar. My machine has been serviced once to replace some issue with a failure of some motherboard component (not touchbar or keyboard). I'm am early adopter (hardware, software, gadgets, etc.) -- and I have the luxury now to wait many years before I need to upgrade again. YMMV.
Off Topic: (sorry)
I think there's a much larger debate around what it means that a company owns "everything" you do on (not via?) their laptop (and worse, the whole concept of owning all thoughts, etc.).
But, what really IS a computer anymore?
I boot off external SSD (for my OSX use). I do this while at work, home, friends, etc. I carry around an SSD drive that's small and light -- no more hauling laptops.
This usage style seems to break a lot of assumptions of what a computer with things such as licensing (Apple, Microsoft, etc.). Although it can be painful at times (if something requires GUI and the network bandwidth is low or latency is inconsistent), using a machine as a client (ie: GUI or GUI-less) terminal to access a remote (dev) machine is possible -- such as any client (windows, linux, OSX on MacBook Air) and iMac (or whatever) on the LAN. Prior to iOS dev (which requires OSX), I was using (windows) PCs and full screen VMWare to run FreeBSD, etc.
If I use a machine and ssh to a remote server and change something, does the owner of the machine that I used to do the ssh now own the thing I changed on the remote server?
I currently share my desktop via iCloud sync (and I used rsync to do this as far back as '03 or so), and split data between local and cloud -- so for the most part I can access the data I need from anywhere.
Many SaaS (cloud or not) can be accessed and used from anywhere. It's extremely frustrating to have to maintain so many different accounts to separate work from personal.
For me, at least, the "computer" is getting abstracted away and devices are just ways to access tools for doing whatever it is that I want or need to do at the moment.