HN user

staplung

2,327 karma

Software Engineer in SF.

Posts14
Comments316
View on HN

I'm not sure I understand why even a truly obscure programming language article should ever be deleted; it's not like Wikipedia is running low on paper. If Odin ceased all development tomorrow it would be good to have some record of what it was.

For the record, I like Odin.

(On homebrew it appears to have been downloaded 6,707 in the past year. Compare to:)

zig: 71,565

rust: 304,405

golang: 1,246,300

malbogle: 9

Ha! This set it designed to take 114 years to construct and for maximum verisimilitude, Lego will run over your foot with a Lego tram after only a few decades of trying to build it.

Oh, cool! I couldn't remember which way Marimo did it so just checked the homepage. The gif there still seems to show it the old way, just FYI.

Anyway, keep up the awesome work! I haven't used Jupyter at all since I started running marimo from uvx.

Reminds me of one of the more brilliant passages in Snow Crash, describing work in "Fed Land"...

'''

Y.T's mom pulls up the new memo, checks the time, and starts reading it. The estimated reading time is 15.62 minutes. Later, when Marietta does her end-of-day statistical roundup, sitting in her private office at 9:00 P.M., she will see the name of each employee and next to it, the amount of time spent reading this memo, and her reaction, based on the time spent, will go something like this:

Less than 10 min. Time for an employee conference and possible attitude counseling.

10-14 min. Keep an eye on this employee; may be developing slipshod attitude.

14-15.61 min. Employee is an efficient worker, may sometimes miss important details.

Exactly 15.62 min. Smartass. Needs attitude counseling.

15.63-16 min. Asswipe. Not to be trusted.

16-18 min. Employee is a methodical worker, may sometimes get hung up on minor details.

More than 18 min. Check the security videotape, see just what this employee was up to (e.g., possible unauthorized restroom break).

Y.T.'s mom decides to spend between fourteen and fifteen minutes reading the memo. It's better for younger workers to spend too long, to show that they're careful, not cocky. It's better for older workers to go a little fast, to show good management potential. She's pushing forty. She scans through the memo, hitting the Page Down button at reasonably regular intervals, occasionally paging back up to pretend to reread some earlier section. The computer is going to notice all this. It approves of rereading. It's a small thing, but over a decade or so this stuff really shows up on your work-habits summary.

'''

Pluto is great. I use it all the time. If you like the reactivity/reproducibility but are wedded to Python, you might want to check out Marimo, which is also great. [https://marimo.io/]

It too puts the output of a cell above the code so if you're unable to adapt to things that are different it's also probably not for you.

FWIW, Observable's Notebooks (Javascript) work the same way: output above the code that produces it. [https://observablehq.com/]

I too did not like having the output above the code but got over it pretty quickly. For plots, it's arguably better: usually, I want to see the plot before I see the 15 line invocation of some plot command. The thing that bugs me the most about Pluto now is that it really wants you to only have a single evaluating statement per cell. You have to wrap stuff in "block......end" if you want to e.g. define more than one variable in a cell.

The headline is perhaps overstating things a bit but they do discuss how this is different than e.g. rivulets

''' This technology is fundamentally different from the “rivulet (shark skin) process,” which is known as a typical aerodynamic drag reduction technology. The rivulet process mimics the fine longitudinal grooves in shark skin, and by carving grooves approximately 0.1 mm wide along the direction of airflow, it aligns the vortices that occur near the wall surface of turbulent airflow areas. DMR, on the other hand, delays the switch from laminar to turbulent flow by means of random and minute irregularities. The flow zones it affects and the mechanisms it employs are based on completely different concepts. '''

I wonder what's holding them back from attempting to land...on land (as opposed to another splashdown in the ocean). They must have their reasons but there have got to be engineers dying to get their hands on a returned vehicle to see exactly how the tiles held up and if there's any other damage that doesn't show up so easily on the video feed.

The USB Situation 3 months ago

Per Dave Barry

"The plug on this device represents the latest thinking of the electrical industry's Plug Mutation Group, which, in a continuing effort to prevent consumers from causing hazardous electrical current to flow through their appliances, developed the Three-Pronged Plug, then the Plug Where One Prong is Bigger Than the Other. Your device is equiped with the revolutionary new Plug Whose Prongs Consist of Six Small Religious Figurines Made of Chocolate. DO NOT TRY TO PLUG IT IN! Lay it gently on the floor near an outlet, but out of direct sunlight, and clean it weekly with a damp handkerchief."

In total, a little over one dozen astronauts died on shuttle flights (14). No astronauts died during Gemini or Mercury. Three died in a test on Apollo 1. The shuttle failure rate was nowhere close to 1/10. In fact, it was 1/67 (2 failures out of 134 flights).

Cool article but I think the write-up no longer matches the actual code. Snippets in the article use `*p->p` a lot. The *p is a parser struct defined above as

  struct parser {
    const char* s;
    int pos;
    struct grid* g;
  };

Notice there is no `p` member within. Assume the author meant `*p->pos`? And indeed if you look at the code in github the parser struct is defined as
  struct parser {
    const char *s, *p;
    struct grid* g;
  };
So there's the missing `p`, even though it's no longer an int. So I presume the member variable was once known as `pos` but got renamed at some point. Some of the snippets did not get updated to match.

The numbers in the headline seem odd. They imply that each (fake|fraudulent) worker only nets $5000 per year for Kim. I know the system has some inefficiencies where people behind the scenes are helping the "employee" with the work and there are cost of living expenses, taxes etc. but that seems like a pretty low take.

Of course since the old syntax is merely deprecated and not removed, going forward you now have to know the old, bad form and the new, good form in order to read code. Backwards compatibility is a strength but also a one-way complexity ratchet.

At least they managed to kill `auto_ptr`.

Cool, but I don't see how it's sorting anything. It just seems to play a randomized arrangement of the slices. You can re-randomize as much as you like but there's no sort option as far as I can see.

I don't think it would work because the accelerometer updates are at too low a frequency. Apple's developer info says:

``` Before you start the delivery of accelerometer updates, specify an update frequency by assigning a value to the accelerometerUpdateInterval property. The maximum frequency at which you can request updates is hardware-dependent but is usually at least 100 Hz.

```

100Hz is way too slow. Presumably some devices go higher but according to the article the peak signal is in the 3kHz to 15kHz range.

Unfortunately, it's not just elected officials that are problematic for prediction markets. The Secretary of War, for instance is not an elected official nor are leaders of the armed forces and there is definitely a prediction market for war. Multiply this by every powerful appointee and every career bureaucrat and see what kind of picture that paints.