1,787 karma · joined April 24, 2014
http://www.robotu.com/Gemini_files/User_Manual.pdf starting on page 55
http://www.robotu.com/Gemini_files/Tech_Reference.pdf starting on page 47
I suspect roms/VOCREM.BIN in the 'software' package is actually the compiled VOCOL code, but I haven't disassembled it to find out yet.
When I wrote the article, I believed it was still produced by the original company. I later learned that while the same company produced the RB5X for about 20 years after its initial release, eventually the name & the remaining stock was sold off, twice.
They kept afloat despite only having produced a handful of bots because the stock of parts was kept in somebody's garage & ever few years when an order came it, the gang got back together to build one.
If you've got an interest in these things & aren't confident about your ability to build one from scratch, the RB5X seems like a good choice: help them clean out their garage. If you are confident in your ability to build one from scratch, I recommend downloading the code, designs, & instructions for the Gemini from Mike Fowler's site -- the Gemini is more capable than even newer robots on the market at a price comparable to what they originally asked for, & the price of components can only have gone down since.
However, there's still work being done adjacent to 5G using real prolog, by people who thought it was an interesting idea: https://github.com/bitlaw-jp/the-constitution-of-japan
Prolog is still used in the development of expert systems, though when those systems are shipped, they have often been rewritten in an imperative language based on a Prolog prototype.
The fifth generation project, from what I understand, died because of a dedication to custom hardware using already-obsolete fabrication tech -- mid-70s flipflops-on-IC tech over late-70s microprocessor-on-IC tech, wire wrap, etc. There was an inability or unwillingness to iterate on original committee designs. By the time it folded in 1998, everything involved looked like stone knives and bearskins. Those boxes wouldn't have been able to run it fast by 1980 standards.
Basically, to the extent that web tech is acceptable at all, it has no interactivity. HTML and CSS aren't particularly good even as representations of static rich text, but they are far, far worse as graphics toolkits.
On the subject of hypertext, The Web That Wasn't gives a nice history of the idea (for anybody who thinks it starts with TBL -- surprisingly many people!): https://www.youtube.com/watch?v=72nfrhXroo8
Another reframing-oriented talk is Clay Shirky's "It's not information overload, it's filter failure", which ultimately leads to Shirky suggesting the kinds of user-oriented filtering features that Mastodon has implemented: https://www.youtube.com/watch?v=LabqeJEOQyI
At the intersection of neurology and information science, Peter Watts always has something interesting to say, and as a former marine biologist focusing on the nervous system of starfish, this is absolutely in his wheelhouse: https://www.youtube.com/watch?v=6GAicTW7MGo
This one ("moving away from defensive programming") justified strong typing in a pretty clear way: https://www.youtube.com/watch?v=Csj3lzsr0_I
Dan Dennett is just as relevant as Doug Hofstadter when it comes to metacognition: https://www.youtube.com/watch?v=EJsD-3jtXz0
Forgotten Ideas in Computer Science starts slow, but if you don't have much of a historical background (like, if you're only vaguely aware of what happened in CS in the 70s), it's a laundry list of things you should look up and be aware of before you start your next project: https://www.youtube.com/watch?v=-I_jE0l7sYQ
Everybody should understand procedural generation: https://www.youtube.com/watch?v=WumyfLEa6bU
Likewise, since AI is hyped up right now, we should all remind ourselves that IA is a thing too: https://www.youtube.com/watch?v=narjui3em1k
More hypertext history: https://www.youtube.com/watch?v=i67rQdHuO-8
Even more hypertext / UX stuff: https://www.youtube.com/watch?v=gDrHkNgGQDs
A great explanation of Fourier transforms: https://www.youtube.com/watch?v=spUNpyF58BY
Allison Parrish does mindblowing things with corpus statistics by treating term vector spaces as generalizations of 2d image formats: https://www.youtube.com/watch?v=L3D0JEA1Jdc
Finally, these aren't tech talks but instead UI demo reels. If you have any interest in UI or UX, you should watch them. They are wonderfully cheesy, mostly doable, and despite being more than 20 years old, nobody has bothered actually implementing the useful features shown: https://www.youtube.com/watch?v=NKJNxgZyVo0 https://www.youtube.com/watch?v=hb4AzF6wEoc https://www.youtube.com/watch?v=1iAJPoc23-M
Since you have experience in development for real problems, you should have an easier time learning the fundamentals, since you'll have context & you'll be able to easily recognize potential applications. People who go into a university CS program having never worked on a real project tend to find things like time complexity unnecessarily abstract.
You're probably not behind the curve because of lacking fundamentals. Most code people get paid to write is absolute trash, showing neither common sense nor understanding of freshman-level topics. Understanding fundamentals will put you ahead of the curve permanently.
In my experience, it works best if the person sitting is performing the planning aspects, while the person standing is critiquing or looking for bugs/typos.
If there's too much of a difference in experience level between the two people doing pair programming, I don't see the point -- it's not very effective as a didiactic tool, compared to throwing a junior engineer at a problem way over their head and waiting until they figure it out themselves.
That said, I sometimes get a lot out of performing the 'coaching' role for someone who has a lot more experience than I do, if they generally aren't good at explaining their logic, because it provides me the opportunity to ask very specific questions with very clear context about how and why they are making particular decisions. Sometimes, such questions reveal the logic behind behaviors that were learned through experience and never consciously considered yet have big ramifications on performance, code structure, or engineer effort.
I haven't seen general-purpose systems optimized for micropayments in this way. Aside from flattr, I've seen token-coin (a blogging platform, essentially), and places like patreon roll their own system internally.
I love to code. I code for a living. If UBI was established, I would quit my job and code for free, because being told what to do is inherently frustrating.
Migrating posts is complicated -- it's straightforward to export all your posts with third party tools, but you shouldn't expect to be able to move them to a new instance unless you're running it yourself, in order to avoid the possibility of faked histories. (I personally keep a backup of all my posts, and it's fairly straightforward to re-format them as a static html document if you feel like you need to re-host them for archival purposes.)
Personally, I recommend keeping accounts on several instances, and posting to different accounts corresponding to your various interests. This makes it less irritating for members of your social group that don't want to hear about particular topics, makes migration in case of instance apocalypse easier, and encourages you to stretch out your identity a bit (rather than feeling like you need to stay 'on-brand' like people do on twitter).
As for interesting people to follow (biased in favor of people who post interesting technical content) I recommend https://mastodon.social/@natecull, https://cybre.space/@a_breakin_glass, https://mastodon.social/@hisham_hm, https://mastodon.social/@tomharris, and https://hackers.town/@thegibson
I'm at https://a.weirder.earth/@enkiv2 at the moment.
HR generally doesn't have the training to distinguish good code from bad code, and will be counting your repos or the lines of code in your repos if they look at your github at all.
Ultimately, the bigger issue is whether or not you feel like your competence should disqualify you from a position. If you feel that way, then you should do something about it before applying for jobs. A good way to improve your skills is to fix the code you've already written, and doing that in a public repo demonstrates progress in a way that technical peers can appreciate.
(Re: trendy frameworks -- fashion has nothing to do with fit, and trendy frameworks are overhyped specifically because people use them when they are inappropriate for the task at hand. It's not hard to pick up a new framework on the job if you're asked to do so; I would avoid trendy frameworks and focus on the basics until somebody who controls your paycheck tells you otherwise. After all, which framework is currently trendy is liable to change inbetween getting a job and being able to start work, and the people making decisions about which frameworks will be used are almost inevitably tied to the trend cycle but ten or fifteen years behind it.)
Group #4 accounts for most individual open source projects (though not most code, since big projects tend to be huge); we discount it at our own risk.
You might think of grabbing an OLPC machine, making a couple demos with turtle (like, lsystems or something else with knobs that are easy to tune), and giving them that.
I'm vaguely aware of some non-epileptics trying to induce ketogenesis in order to lose weight (which seems pretty dangerous, and maybe self-defeating since smelling like turpentine is less attractive than having curves), but real ketogenic diets (as recommended by medical professionals for intractable epilepsy) generally contain plants.