My favorite is “and there was some kind of error message.” There was? What did it say? Did it occur to you that an error message might help someone trying to diagnose your error?
My favorite is “and there was some kind of error message.” There was? What did it say? Did it occur to you that an error message might help someone trying to diagnose your error?
I’ve heard his segments get rebroadcast on Russian TV fairly often.
It looks to me like they did it this way so that it could have natural-language names in many languages. So, the function Z10096 is called “is palindrome” in English, but if you’re coding in Japanese you can call it “回文の判定”. I don’t think the idea is for people to refer primarily to the alphanumeric soup version; I think that’s just the unique identifier for the database.
It does look like it’s leading to some issues, though. E.g., someone added a test for the “is palindrome” function which uses a somewhat common example: “Straw? No, too stupid. I put soot on warts.” Now, a human would probably say that this is a palindrome, because it’s got the same letters forwards and backwards, but most of the implementations disagree, because they consider the spaces, capitalization, and punctuation to be part of the string; that is, they test whether the input string and its reverse are equal. So someone (possibly the same person) has added a second python implementation which ignores spaces, capitalization, and punctuation, and mentions that in its name on the page.
Fundamentally this function is solving a different problem than the others (as demonstrated by the differing results on the relevant test), so should it get its own number and page? should there be a “palindrome disambiguation” page? This seems like something the site will have to figure out how to handle.
Turbo Pascal was the first language in which I had serious classes (I had tutoring in Applesoft Basic earlier on, but that language has a lot of limitations), and I used it for years afterwards. You could write auxiliary functions in Turbo Assembler and link them in; I used that to write a library that allowed access to the 320x200 256-color VGA mode (the built-in graphics only did EGA and were super slow), and other libraries for mouse and joystick control. I tried to control the soundblaster for FM synthesis, but it was too complicated for me to figure out how to do anything useful without better access to documentation (this was before the world wide web). The experience also taught me a lot about assembly language basics, function calling conventions for C and Pascal, stack manipulation, and so forth, which gave me a huge head start in my compilers courses at university.
On the whole I would still recommend C over Pascal as an early language–it gives you much better insight into memory layout and so forth, where Pascal kind of obfuscates such things, and C just generally kind of acts like both Pascal and Assembler rolled together. But Turbo Pascal definitely gave me a good foundation.
It really sounds like you’re describing Make (or LLVM). Is there something you need it to do that those can’t handle?
The only real objection I have to this as a term is that it’s too easy to confuse with “rubber ducking”: https://en.m.wikipedia.org/wiki/Rubber_duck_debugging
I do a lot of this stuff with the HP48 Units menu (albeit at this point via an emulator on my phone).
Shaders are terrific fun. I highly recommend ShaderToy if you want to experiment with them; it makes the loop between changing the code and seeing the effect very tight. I also recommend the YouTube channel “Art of Code” for good examples, well-explained.
Certainly! Here’s how this might be phrased in a more casual manner if it appeared as a comment on a web forum: “lol git gud noob jk”
Or it won’t happen when you’re watching, because then they’re thinking about what they’re doing and they don’t make the same unconscious mistake they did that brought up the error message. Then they get mad that “it never happens when you’re around. Why do you have to see the problem anyway? I described it to you.”