HNHacker News
TopNewBestAskShowJobs

kstrauser

33,735 karma · joined March 27, 2011

I make things. I’ve learned a lot from messing up along the way. It always works out OK in the end.

I don't speak for my employer, obviously. I barely speak for myself half the time.

I blog at https://honeypot.net/

Write me at kirk@strauser.com

submissionscomments
kstrauser··on Microsoft killed FoxPro in 2007. Anyway, here's FoxPro revived
Gambas was neat. I think we also looked at Kivy at the time, and I think there were a couple of other Python RAD systems that aimed to be similar to VFP in spirit, although not even slightly compatible.
kstrauser··on Microsoft killed FoxPro in 2007. Anyway, here's FoxPro revived
Access is a whole package with form designers, widgets, scripting, etc. so that you can build an entire distributable app from it. SQLite's a brilliant little DB but it only covers a tiny portion of what Access does.

I kinda loathe access for any number of reasons, but appreciate the dev tools it put into the hands of non-developers. A great many people who'd be passive users on most systems were able to build apps to meet their business and requirements, and although Access was janky as hell, that's very, very cool. I think it's most spiritually similar to HyperCard on Mac: you wouldn't want to write a whole large app in it, and if you're an experienced developer there are any number of tools you'd rather write programs with. But if you weren't a traditional developer (e.g. an office worker or a student or a home computer enthusiast, etc.) it gave you a pleasant hand-holding process for making your ideas come to life. I respect that.

kstrauser··on Microsoft killed FoxPro in 2007. Anyway, here's FoxPro revived
Hey, I got to mention this recently! One of my bizarre claims to fame was writing this little tool[0] a few employers back to convert Visual FoxPro database files to PostgreSQL as part of a migration. For a while we had to run it as a cron job so that people could to data entry in an old VFP app but others could run fast reports on our web app with a postgres backend. It wasn't pretty, but it worked great and helped us get off that ancient stack.

[0]https://github.com/kstrauser/pgdbf

kstrauser··on Apple has added persistent 'ads' to iOS, and it's driving users crazy
Whenever I see an ad in Apple Maps, I leave a bad review for the advertiser, specifically giving them a thumbs-down in customer service. They are making the service worse for me, the customer. I can dream that this would become common practice such that these ads get the reputation of providing negative value to the companies who buy them.

They urgently need to rip the ads out of the App Store and news, too. One of my "favorite" App Store ads[0] was straight out of a "DARE" program. Nothing like browsing through the store looking for a fun new game to fidget with and stumbling across a PSA that fentanyl can kill you. And Gruber was right[1] about the awful, awful ads in News. It's common to see five articles in a row, each packed with multiple copies of the exact same dumb ad for a young, pretty, AI-looking woman wearing hearing aids.

[0]https://honeypot.net/2023/12/21/one-pill-can.html

[1]https://daringfireball.net/2026/07/ads_on_apple_news_suck

kstrauser··on Samsung is expected to more than double output of its HBM4 and HBM4E DRAM
The “Apple only does X better because they do Y” thing has been a meme for ages. I remember dismissals like “PowerPC is only faster at math because it has more integer units” or something along those lines, and thinking, uh, isn’t that a good thing?
kstrauser··on English: A vs. An
From your link:

> Style guides like The Chicago Manual of Style, The AP Stylebook, and The Penguin Writer’s Manual regard the following as correct in modern usage: “a historical event” “a historic event.”

If you don’t pronounce the h, “an” is the clear winner. Now that most people do in America, “a” is the obviously correct spelling.

kstrauser··on English: A vs. An
Confession: Whenever I hear an American say "an historic...", pronouncing the "h", I roll my eyes at the pretense. That's the only word I think I've ever heard someone swap in "an" for "a" before a pronounced consonant.

Now, if they used the British-style "an 'istoric event", that's fine. In American we don't pronounce the "h" in "herb", so someone here saying "an herb garden" would follow the rule correctly and sound normal.

But "history" with the full "h"? To me it screams "this person memorizes without understanding", or at least "this person desperately wants to sound posh but fails". It's the verbal equivalent of wearing a polo shirt with a giant logo, imagining if a tiny one is fancy, then an enormous one must surely be exactly what rich people would wear.

kstrauser··on I built the fastest PHP webserver in the world
I agree. Nginx, Caddy, Apache, etc have found and fixed a million edge cases you'd never think of just from reading and implementing the spec. I guarantee there's code in each of these along the lines of:

  # Send an extra 0x20 space character after this header's value, because
  # otherwise Chrome on Android 15 shifts into compatibility mode and
  # it takes 37x longer to render the page, which everyone will blame on
  # "the slow webserver". The spec doesn't say we *can't* add this, and
  # tells clients to ignore trailing space, and we've tested this with 483
  # other clients to demonstrate that it doesn't cause problems. ¯\_(ツ)_/¯ .
Now, as a very cool hack, or for easier local development with one less dependency, or just to scratch a personal itch and see if it can even be done, right on! That's clever and I'm glad they did it!

BTW, in your showdead (for wholly unclear reasons) comment about it using copy-on-write RAM semantics, that's just the Unix process model. The OS does all that courtesy of fork() and the server gets it for free.

kstrauser··on My temporary PHP fix from 2014 has nearly 20M installs. Today I'm deprecating it
Yeah, for real. A friend sent me a copy, captioned “this u?”, and I nearly choked.
kstrauser··on My temporary PHP fix from 2014 has nearly 20M installs. Today I'm deprecating it
I am, or was. Once, while living there, I wrote a little C program to read a Visual FoxPro database file and write out PostgreSQL commands to load the data. It was for my employer at the time. We needed it for a migration.

And then, a year later, I got invited to a PostgreSQL convention in Brazil where it was one of the tools being quasi-formally recommended to help migrate the country off of VFP.

The world can feel awfully freaking small sometimes.

kstrauser··on My temporary PHP fix from 2014 has nearly 20M installs. Today I'm deprecating it
Heh, right?

Author: Ugh, this is ugly, but it fixes the specific problem I’m having so I can go on and work on other things.

Author, later: What do you mean, you’re all using this?

kstrauser··on Every invoice in Brazil's economy runs on SOAP 1.2
I’ll do you one better: if that’s the same project, I contributed to it: https://pypi.org/project/SOAPpy/#user-content-contributors

I recoil in horror at SOAP, not because I don’t know it, but because I do.

kstrauser··on Factory raises $200M at $5B valuation
Bottom line: I look forward to coming to work here every day. If I'm ever the smartest person in the room, I'm in the wrong room. Here, I am definitely in the right room because I get to learn from some brilliant folks.
kstrauser··on Every invoice in Brazil's economy runs on SOAP 1.2
It was last updated in 2001. I'd be shocked if it didn't have any relevant breaking changes in the last 25 years.
kstrauser··on Every invoice in Brazil's economy runs on SOAP 1.2
So, first up: why? Why is everything still using SOAP? I'm not talking down on Brazil, by the way. I've worked in American healthcare tech, and at some point you find yourself learning EDI to talk to insurance companies.
kstrauser··on iOS 27, iPadOS 27, and macOS 27
That's dramatically overstating it. iOS 26 was just... alright. It wasn't great. It also wasn't the devil incarnate in a phone. iOS 27 has been legimately good since the early public betas.
kstrauser··on Oracle’s 6am layoff emails hit staff amid new wave of cuts
Who was the first Oracle? Did IBM transition into it before Oracle did?
kstrauser··on Oracle’s 6am layoff emails hit staff amid new wave of cuts
Sure, but then they're out of the "growth" stock category they so badly wanted to be in, with its higher valuation multipliers, then in the stodgy "keep the lights on" niche. If a company makes $10B this year, and you had a way of knowing it was going to make $10B every year from now on, there's not much incentive to invest in it.

Note that this doesn't make for a bad company! You can run a $0-profit company indefinitely and give employees nice jobs for providing nice services to your customers. There's nothing wrong with that. It's great! But you don't get the same multiples for that arrangment as you do for a company that's growing quickly. Lower multiples = stock drops = One Medium Wealthy Asshole Called Larry Ellison, and that's something I simply do not think he could tolerate.

kstrauser··on iOS 27, iPadOS 27, and macOS 27
There's approximately zero chance Google would go along with the changes that Apple would have had to make to support EU's DMA.
kstrauser··on HP ZGX Fury Is Now Orderable: GB300 Superchip, 748GB Unified Memory
Can you imagine a Beowulf cluster of these?
kstrauser··on OpenAI bots knew about the RubyGems caching vulnerability
Ah, the infamous Crimson Wave.
kstrauser··on Libraries Run Rust Inside Python (With PyO3)
This is so cool. That's going to be amazing when it lands.
kstrauser··on Flock cameras used to arrest a child for playing on a swing?
You know it. They also lack the imagination to see how this could be used against them, instead of the "right" people.
kstrauser··on Flock cameras used to arrest a child for playing on a swing?
OK, big surveillance fans: please explain why this is OK because "it's not the government", and this keeps us safe, and we don't have any expectation of privacy. It's inevitable that someone is going to claim it's a great idea. Let's get it out of the way.
kstrauser··on Libraries Run Rust Inside Python (With PyO3)
How’s that GCC backend coming along? I could look it up, but I bet others would like to hear about it too.
kstrauser··on Flock worker calls police on reporter filming public camera installation
So their tracking is OK because it's immobile. That's an interesting and novel defense of a surveillance state which I hadn't heard before.
kstrauser··on Flock worker calls police on reporter filming public camera installation
In my opinion, yes, that makes you a radical. I don’t want an armed organization with a trillion dollar budget stalking me. That’s the common stance in America. We even put it in our constitution.
kstrauser··on Homebrew 7.0.0
What broke and affected you?
kstrauser··on Flock worker calls police on reporter filming public camera installation
That’s literally exactly what Flock does. I can’t find sympathy for the company on this.
kstrauser··on Waymo pulls over, calls cops on juvenile riders who had 'ghost gun"
And the sign along the highway says my speed might be monitored by airplane, but I don’t want to live where that means a surveillance drone is flying along side me at all times. Consenting to let a taxi record me in case it comes up later that I did something bad and they want to have footage of it is one thing. But now we know Waymo is a little Flock tattletale, and people generally aren’t ok with their robocab proactively narcing on them.
← PreviousPage 3 of 34Next →