HNHacker News
TopNewBestAskShowJobs

apgwoz

7,307 karma · joined February 20, 2007

Personal: - http://sigusr2.net/ - My topcolor is #ccff66

Email: - web@apgwoz.com

Elsewhere: - https://github.com/apg

[ my public key: https://keybase.io/apg; my proof: https://keybase.io/apg/sigs/FVP39qxp7ptdAG2Nfeigd5-mN2nceMwWnPl2-EIhP4I ]

submissionscomments
apgwoz··on The Tcl Programming Language: A Comprehensive Guide (2nd Edition)
You’re misunderstanding. Dynamic languages inherently have a single type that is checked _at runtime_. Store it in a string, store it in a struct. It doesn’t matter.
apgwoz··on The Tcl Programming Language: A Comprehensive Guide (2nd Edition)
> "a dynamically typed language is a statically typed language with only one static type."

          — Bob Harper
apgwoz··on An image of an archeologist adventurer who wears a hat and uses a bullwhip
Print in demands definitely have terms of service allowing them to take whatever down. You’re playing by their rules, and your $2 revenue / tshirt and very few overall sales is not worth the potentially millions in legal fees to fight for you.
apgwoz··on Show HN: I vibecoded a 35k LoC recipe app
Help! I just made the Diarrhea Walnuts (https://www.recipeninja.ai/recipe/r_N1VSPtXzCJVV3l/diarrhea-...) recipe and it turns out I am allergic to Walnuts! I am throwing up everywhere! You’re gonna be hearing from my lawyers!
apgwoz··on Use Long Options in Scripts
The thought is very compelling! shellcheck is pretty great, but of course isn’t this complete. It definitely can’t reticulate splines, for instance.
apgwoz··on Use Long Options in Scripts
You should always type check your shell scripts as well. For example, you just:

    $ shelltypes script.sh
    # Welcome to shelltypes v 3.23.2
    # type ‘help’ if you’re stuck
    >>> {1) # import POSIX;;
    Importing 73 items.
    >>> {2} # append loadpath “/opt/local/shelltypes/base”;;
    >>> {3} # import base::YOURPROJECT;;
    Importing 15 items.
    >>> {4} # check “YOURSCRIPT.sh”
    Parsing YOURSCRIPT.sh.
    Reticulating splines.
    Expanding aliases.
    Analyzing free shell environment variables.
    Found inconsistencies in PATH.
    Warning: Low battery!!!
    Warning: found free type for ‘shred’, ignoring.
    Warning: use of sudo requires password under /etc/sudoers.
    Warning: this utility is fake.
    Error: use of cat impossible in the presence of mutt.
    Found 15 errors.
    Try again. Goodbye.
    $

Then you can be pretty sure your script isn’t going to do unnecessary harm, and has some proper guardrails in place.
apgwoz··on Zinc, a systems programming language prototype
You cast integers to pointers and play with fire, of course!
apgwoz··on TypeScript types can run DOOM [video]
A WASM VM is just “some calculations,” really.
apgwoz··on A secret poker game you can play on the subway
“Poker is a family of _comparing_ card games in which players _wager_ over which hand is best according to that specific game’s rules.”

— [WikiPedia](https://en.wikipedia.org/wiki/Poker)

I don’t think I would have gone for that definition, but now that I see it, it sums up everything I’ve ever known “Poker” to be. The game is won by comparing cards you have left (meaning that Rummy, Go Fish, or Bridge are different), and there’s a wager about the game (possibly just bragging rights if not playing for money).

apgwoz··on Apple Debuts iPhone 16e
It sold poorly, sadly.
apgwoz··on Basketball has evolved into a game of calculated decision-making
Ah! That would speed up the game a bit, for sure.

I like my idea a bit better. Fouls become way more strategic. Maybe you do away with the bonus, though. A foul on the floor just changes possession. A foul during shot becomes almost a toss up. You still have foul limits on players, and maybe you decrease the foul out limit to 4 just for fun. :)

apgwoz··on Basketball has evolved into a game of calculated decision-making
I don’t have the stats in front of me, but I’d guess more 3s are made with more backboard visible. Need to be way more accurate from the corners.

(Not that people bank off the backboard, but hit the rim, backboard, in, type accidents)

apgwoz··on Basketball has evolved into a game of calculated decision-making
You mean, a free throw is a chance shot that when missed awards the defense?

Seems like that would have a huge impact on end of game strategy.

It would change the “in the paint” strategy—maybe defense would foul earlier to avoid the 2+1? Hoping instead to split the 2, 1-1 with a miss. Of course, the centers and forwards, who typically aren’t great free throw shooters, are gonna get the ball less. Where does the play go? 3pt land, where it’s way more risky to foul.

I still like the idea.

apgwoz··on Guten: A Tiny Newspaper Printer
This looks cool! Reminds me of the long defunct Little Printer (https://vimeo.com/32796535).
apgwoz··on Show HN: I completed shipping my desktop app
> (And again, I generally applaud the enthusiasm. But those things would better be suited as portfolio-building personal OSS projects on github rather than trying to squeeze the dollars.)

Why? They are under no obligation to do so, and then they are working for free. (A common trope related to FOSS, often argued on this very website)

> There is a difference between legitimate business interests after large investments, and freeloaders.

What large investment are you talking about? The thousands of hours of free labor that went ffmpeg? Yeah. See also all of the open source software that went into the operating system and utilities they built everything on. That doesn’t stop people from selling proprietary software, so why is this any different?

This is free market capitalism. If they can find people to pay $29 for a copy of this wrapper, more power to them. That also happens to be a much more powerful resume bullet point.

apgwoz··on Show HN: I completed shipping my desktop app
The fact of the matter is that there are many motivations for creating software. If someone profits off of my work, that I released into the world with licensing terms that allows them to do so, there’s no obligation that I be paid for it. I could have, myself, recognized the potential and done the work to make a marketable tool, but my motivation was different.

You can fault the FOSS community for promoting default libre licensing that created the “exploitable” nature of this, but the fact of the matter is that people creating software are able to make a choice. They can make a different choice if they wish.

apgwoz··on Show HN: I completed shipping my desktop app
You can also just say what you are thinking: $25 of every $29 license should go back to ffmpeg. There. I made your point for you, directly.
apgwoz··on DOOM CAPTCHA
Was able to play, but it didn’t recognize kills. Definitely got 2, possibly a 3rd (hard to tell in small screen).

FF on iOS.

apgwoz··on Seconds Since the Epoch
The leap second in Unix time is supposed to wait a second and pretend it never happened. I can see why a longer second could be trouble, but also… if you knew it was coming you could make every nanosecond last 2 and lessen the impact as time would always be monotonic?
apgwoz··on YouTube Terminates Popular Retro Gaming Channel Without Warning
Ok. I may just be unaware of the actual numbers. “The advertisers came back, and more liberal users were leaving, but businesses still found it valuable” was sort of my last understanding.
apgwoz··on YouTube Terminates Popular Retro Gaming Channel Without Warning
Elon didn’t burn down Twitter. It still has 100m+ users. He turned it into a politically far right echo chamber, gas lighting its users about “free speech absolutism,” and then outright banning, demoting, or drowning out commentary he doesn’t agree with.

Unless you meant “burn down” in the sense of “turned it into the ashes of a trash fire…” but it was always a trash fire. People still go for it, and advertising still happens there.

apgwoz··on YouTube Terminates Popular Retro Gaming Channel Without Warning
Elon is a major beneficiary of Section 230. That’s not going away.
apgwoz··on YouTube Terminates Popular Retro Gaming Channel Without Warning
Ha! Yes, that should be the case, but new supreme leader wants to deregulate.

“It means, Buckle your seatbelt, Dorothy, cause Kansas is going bye-bye.”

apgwoz··on My favorite device is a Chromebook
I had no idea they extended this to 10 years! This makes the original comment that much more wrong.
apgwoz··on My favorite device is a Chromebook
While both technically wrong and true of every computer, many Chromebooks can run non-Googled Linux distros and far outlive their support term… $50 might get you a very nice, lightweight, and portable “netbook” on the used market that you can use another 5 years for basic tasks.

ChromeOS, outside of being Googled, is quite capable (crostini is really nice), well secured (minus Google privacy concerns), and generally a nice user experience. You can even run Firefox and avoid browsing with Chrome.

apgwoz··on Porffor: A from-scratch experimental ahead-of-time JS engine
yes, the entire exercise isn’t important. It just breaks the monotonicity that version numbers typically have. At that point, just call your version <progress>.sha
apgwoz··on Porffor: A from-scratch experimental ahead-of-time JS engine
What happens if there’s a regression in coverage, maybe due to a large sweeping change, and you go from 0.40 -> 0.35 ?
apgwoz··on Porffor: A from-scratch experimental ahead-of-time JS engine
No. Completely green field. Well, it _was_. I believe they’ve recently accepted that third party libraries will be allowed in the non-Serenity OS version.
apgwoz··on Show HN: I built a Jeopardy game maker with buzzer support
There you go then. I guess they don’t care.
apgwoz··on Show HN: I built a Jeopardy game maker with buzzer support
I’m not familiar with all of the ones that already exist, but this is clearly trying to replicate the Jeopardy look and feel. Back in the NES days, there were licensed Jeopardy cartridges and board games. Maybe things haved changed… but I’m pretty sure they still protect at least some of the Jeopardy brand.
← PreviousPage 5 of 34Next →