smcameron
smcameron on Hacker News
Not of that era, but Moral Orel is a modern (2005-2008) parody of Davey and Goliath (not sure parody is the right word, Moral Orel is kind of its own thing, but apes the style of Davey and Goliath.)
Must be nice. I live in Virginia, outside Richmond. For the past 8 years, the power company has failed to provide me with even 3 nines of power availability (that means at least 9 hours of outage every year for the past 8 years. Just had a 17 hour outage as of last night, lost everything in my fridge. Again.)
Thanks for pointing me to that! Definitely some cool ideas in there. Almost seems like some of those ideas could be incorporated into git itself.
I wonder if you could replace the whole github issues feature with just a directory within each git repo named "Issues/". Within that, have another couple directories, "open/", and "closed/". Within "open", have a directory per issue, e.g. "such-and-such-does-not-work/". Within each issue directory, have "issue.txt", or "issue.md", which takes the place of the page for each issue on github. You could store other things in the issue directory which "issue.md" could reference, e.g. screen shots, logs, whatever. When an issue is closed, it gets git mv'ed to "closed/". You want to see a list of open issues sorted by time? Just "ls -ltr Issues/open". Want to see open issues related to the frakfrobber? "grep -i frakfrobber Issues/open/*". Add a comment to an issue? "vim Issues/open/my-issue/issue.md; git add !$; git commit -m 'Updated my-issue';" It would move the entire issues subsystem back under control of bare "git" and make it portable. Undoubtedly, I am not the first to think of such a thing.
I recently was sent patches for my open source space game[1] that added cascaded shadow mapping[1] and gravitational lensing[3] for black holes, both things that I've wanted for years, but found too difficult to tackle. The patches were made with Claude Opus doing pretty much all the work, guided by a human. The quality of the patches was, in my estimation, pretty damn good. It didn't do weird things, it used the infrastructure already present, it looked like what I wish I could have written. It was clearly not plagiarized in bulk, in as much as it was so well integrated with my existing code, though I imagine all CSM code/shaders and gravitational lensing shaders tend to look pretty similar, or at least do similar things. It was eye-opening to find out that Claude was capable of doing such a thing.
Neither of these changes affect the game play, they are both purely aesthetic in their effects, without introducing anything which might be called "art" in a traditional sense, unless you count crudely modeling the behavior of light in shaders and C code as "art", but at that point the distinction between code and art vanishes. I had previously had a "no-ai" policy in my codebase, just as a kind of over-reaction, and kind of, "if I ban it, then I don't have to think about it" response. But these patches... after studying them, there's just no way I wasn't accepting them.
[1] https://github.com/smcameron/space-nerds-in-space [2] https://en.wikipedia.org/wiki/Shadow_mapping [3] https://en.wikipedia.org/wiki/Gravitational_lens
No, you don't commit trash to a public branch, EVER, if you can help it. Your commits are as perfect as you can make them, and that does not mean squashed in a trash compactor. That means one logical idea per commit, compiles and works as perfectly as you can make it. Use stgit, and this is easy. You do not break git bisect. No need to squash your trash in a trash compactor. Your standards are lower than mine, not higher.
At my local hackerspace, people sometimes laser cut solder stencils out of transparencies -- the plastic sheets you use with overhead projecters. The trick is to put a piece of paper under the transparency when laser cutting, otherwise they tend to melt too much and deform, but somehow the piece of paper prevents this, maybe the laser needs something non-transparent to interact with to get the heat in quickly and move on quickly. Anyway they worked pretty well, but obviously not as durable as steel, so after some number of uses they start to wear out. (Can't remember how many really, but probably something like 20? more than just 3 or 4 I think. Probably also depends on the density of holes, a big swiss cheesed area will fail sooner.) If the circuit's not too big you can cut several stencils out of one transparency all in one go.
Disagree. You need small, git bisectable commits. Use stgit to do it and it's nearly effortless.
> Working with lots of changes in parallel on git can be painful. You end up juggling branches and commits, and running scary rebase -i commands that can leave your tree in a half-broken state if you so much as sneeze.
I mean, just use stgit[1] to maintain a stack of patches instead of parallel branches, it's so much better. You can easily wrangle thousands of patches (aka commits) with stgit.
A lot of people, on first encountering stgit, read a bit about it, think "why do I need this? I can do the same thing with just plain ol' git.". Yeah, you can. But not at scale. Not practically. Not with thousands of commits. And it makes the case when you just have a few tens of commits absolutely trivial. Try it for awhile and you'll find it indispensible.
[1] https://stacked-git.github.io/
I've heard of use after free, but I've only heard UAF to mean Ukraine Armed Forces.
He's a mathematician, so what he means by "in general", is "in every possible case", or "without exception", so what I think he means is, "not all bugs will be found by code review." I agree it probably could have been made more clear.
My own efforts in this area amount to creating the game, Space Nerds in Space[1], which is a LAN game in which everyone gathers in a room with their computers, and each computer acts as one of the stations on the bridge of a starship: navigation, weapons, science, comms, engineering, damage control, etc. Multi-bridge is supported as well, so if you can overcome the insurmountable task of gathering enough people together, you can indulge in that luxury. This is in the same genre as such games as Artemis: spaceship bridge simulator and Empty Epsilon, but with the additional hurdle that it's linux only. Good luck mustering enough spacenerds. If there are missing features, well, it's open source, so it's got that going for it, which is nice.
[1] https://smcameron.github.io/space-nerds-in-space
> I don’t know what C++ thinks it’s doing anymore.
C++, when increment becomes excrement, decrement back to C.
Ukraine, in operation spiderweb, has already launched drones from containers deep within Russia to damage "... one third of Russia's strategic cruise missile carriers, estimated to be worth $US7 billion ..."
https://en.wikipedia.org/wiki/Operation_Spiderweb
Not to mention the endless stream of marketing emails you'll get forever after.
Similarly, Ben Travers didn't have a delay pedal, so learned to pick the delayed parts on Pink Floyd's "Run like hell" when he was younger, since taken to ludicrous speed:
https://www.youtube.com/watch?v=1CY0_HG8J5M
The TI99/4a version of the Logo language which has turtle graphics used user defined characters to implement them. There were only (I think) 128 user definable characters, and when the turtle graphics had redefined all of them to create its output, it gave the user a message, "out of ink".
Interesting... RP2040 seems like maybe a bit overkill for a zero power badge. I've participated in writing some software for an RP2040 powered badge for the RVASEC conference in Richmond, VA, for several years, and the RP2040 is really nice to program for, and is quite powerful.
https://www.youtube.com/watch?v=A5ZrHAXCFLA
PRs can contain multiple commits. You need something like stgit to make it easy to make a bunch of small commits that appear to be the work of an omniscient genius who knew exactly what they were doing. Try using stgit for awhile, and you'll wonder how you ever lived without it.
On the "reset"/"stty sane" trick, I also sometimes have found it necessary to press Ctrl-J rather than RETURN at the end of the command.
Something like those switches might be made very cheaply with a 3D printer, possibly a laser cutter, some transparent or semitransparent acrylic sheet, tactile switches and some LEDs. I designed a cheapo replacement for $50 tellite switches and got the price down to about $0.60 Not quite the same, as these are a lot bigger, and getting things down to the desired size might be troublesome. Anyway, here's a little video of my fake cheapo tellite switches:
https://www.youtube.com/watch?v=LaenrgPVCjc
Can't you just read from /proc/pid/fd/0 ?