/s
4,268 karma · joined July 7, 2017
/s
There aren't a lot of tangible gains left to be made by the software teams. The OS is fine, the office suite is fine, the entertainment apps are fine.
If "performance" is shoving AI crap into software that was already doing what I wanted it to do, I'd rather the devs take a vacation.
Very nice.
I toss all of my work into Apple Pages and Google Docs, and use them both for spelling and grammar check. I don't just blindly accept whatever they tell me, though; sometimes they're wrong, and sometimes my "mistakes" are intentional.
I also make a distinction between generating content and editing content. Spelling and grammar checkers are fine. Having an AI generate your outline is questionable. Having AI generate your content is unacceptable.
If I'm using it to remember the syntax or library for something I used to know how to do, it's great.
If I'm using it to explore something I haven't done before, it makes me faster, but sometimes it lies to me. Which was also true of Stack Overflow.
But when I ask it to so something fairly complex on it's own, it usually tips over. I've tried a bunch of tests with a bunch of models, and it never quite gets it right. Sometimes it's minor stuff that I can fix if I bang on it long enough, and sometimes it's a steaming pile that I end up tossing in the garbage.
For example, I've asked it to code me a web-based calculator, or a 3D model of the solar system using WebGL, and none of the models I've tried have been able to do either.
The real answer is that gradients are hard, and clear lines are easy. A shocking number of Americans don't understand how our income tax brackets work; they believe that if you cross the line into a higher income bracket, your entire income is taxed at that new, higher rate, and you end up losing money overall.
Massachusetts, which has the highest percentage of college educated citizens in the entire country, also shot down ranked choice voting last year, because the math was too hard.
Many people are struggling to keep themselves afloat, and adding a family to that mix would be ruinous.
I see this frequently when generating source code; it'll get me 80-90% there, but I need to fix, massage, and adjust. This is fairly easy, since the code-test-code loop is already part of a normal development cycle.
When it's a matter of law, though? You don't really get those kinds of do-overs, and if the judge catches you citing a hallucination in your argument? I doubt that would go over well.
If I picked up a new Mini or MacBook today, I'm reasonably confident it, too, would last me five years or more.
I don't know that they would.
In the 1600s, they'd just invented the printing press, so communication was already undergoing a fairly massive change. A book that once took a lifetime to copy could now be printed in three days.
From there, it's a short walk to "this book that used to take a lifetime to copy can now be printed more or less instantly." And from there, we can start laying the groundwork for what we would eventually call telecommunications.
Cell phones rely on technology that people in the 1600s hadn't discovered yet. Interstellar travel would require us to not only discover new technologies, but technologies that actively violate what seem to be pretty hard physical laws.
If the speed of light really is a universal maximum, and something like an Alcubierre warp drive isn't possible, leaving this solar system is vanishingly unlikely.
100 money "USD"
is the same as 100.money("USD")
`Number.money(currency: String): Money` is an extension method; Kotlin provides syntactic sugar which allows you to "add" methods to existing classes. The above is basically equivalent to: fun money(count: Number, currency: String): Money"Hugely beneficial" is a stretch at this point. It has the potential to be hugely beneficial, sure, but it also has the potential to be ruinous.
We're already seeing GenAI being used to create disinformation at scale. That alone makes the potential for this being a net-negative very high.
The idea used to sell it is that you don't owe your employer any loyalty, and they don't owe you any loyalty; either of you can walk away at any time.
In reality, this creates a completely asymmetric power dynamic. You can be fired at any time, for any reason, which means you have little power to advocate for better compensation, safer working conditions, and so on.
Markdown is simple, and I like working with it simply.
I suppose there is some value in having the more complicated aspects, like images and tables, checked for syntax so you can see if you've made a mistake, but I run a macro to generate those anyway, so I'm fairly confident in the result.
I've also generated quite a bit of technical documentation using markdown, and Pandoc's extensions[1] allow you to include pretty much any formatting you might require, complicated math and syntax highlighted code blocks included.
That markdown can then be transformed into HTML, a Word doc, a ePub, a PDF ...
There needs to be a very compelling reason for me to reach for something other than markdown.
The answer is probably a more generous and better funded Social Security, except that fund keeps getting raided for other purposes.
Any languages that want to be recognizable to people comfortable with the C-lineage are going to converge on a lot of points.
I do think Go and Kotlin have kicked the Java community into high gear, though. A lot of the recent (or upcoming) features are direct answers to features found in those languages.
Reading through the article, though, the author isn't advocating for "no APIs," they're advocating for minimalist APIs that use agent detection to "do the right thing."
Chrome tells the API that it can accept HTML, so the server sends data formatted inside of a web page, with an HTML table.
Curl doesn't send that header, so the server sends unformatted CSV. But you could send an Accept header to get the HTML if you wanted.
The benefit of this is that for most use cases, this will "just work."
The downside is, if you want to view the CSV in a browser, or the web page in curl, you need to know (or guess) how the server is deciding what to send you, and take the correct action. An API documented with OpenAPI, while more complicated, explicitly tells you what you can do.
While that's true, it doesn't mitigate the hammer's usefulness, nor does it propose a better alternative.
Technology is hard. Good tools make it easier, but they never make it trivial. You still need to know what you're doing.
We had to let our pupper go a few weeks ago. The vet had to basically sit there and watch us while we processed the fact that we were about to pay her to kill our best friend.
For us, it was the worst day we had experienced in years. For her, it was Tuesday. She had other people waiting in the room next door, and had to go from solemn to bright and cheery over the span of ten footsteps, and she has to do that every day.
Her job is often to put a very real price tag on the life of a beloved companion. "I'm sorry, but keeping him alive will be $10,000... or we can humanely put him down for much, much less."
It's grim business. Necessary, but grim.