I usually ask gpt4o as my ref doc.
HN user
jkoudys
The opening screen in this game is why I ended up working at IBM for 8 years.
Yep. The problem with the story of bikeshedding is that it assumes people know bike sheds but not nuclear reactors. There are plenty of cases of people who are great at nuclear reactor design but have no idea how workers should park their bicycles.
I was big on Rails scene when it was huge in 2008, and saw a big exodus from it. I found so many of the "Rails" problems were solved by learning two languages: ruby, and sql. People would go to crazy lengths to avoid looking at the queries they'd actually run. I can admit to not really learning ruby as a language by itself, and can now see how much better my old code would've been if I wasn't just blindly shoehorning Railscasts in there.
Similar problems for people who learned angular but not typescript, laravel but not php, etc.
Crypto "currency"
I absolutely loved this article. Super well written with interesting insights.
I'm the same camp. I use async/await because they exist and it's usually a good idea to use similar approaches to other devs, but I question why we even needed async/await in the first place. It's a big deal to add syntax to a whole language, and a small one to add a function to a library. We have
const foo = async function() {
const user = await fetchUser()
But if they'd just made a Promise.coroutine, you could equivalently do this without needing to change the language: const foo = co(function* () {
const user = yield fetchUser()
There's some unpopular cases like async iterables or async generators, but for the most part we could've done the same thing without extending the language. I remember the v1 of koa that had yield everywhere and people thought it was confusing af. Then they released with await and suddenly it made sense to people.Chilled sounds pleasant. The utility of lukecold is you're saying it's cold but not cold enough.
Probably why LotR translated so well into film, while Dune is very hard to capture in live action. The first book at least has some big battles and over the top villains to anchor the whole thing. Children of Dune is like 90% discussing religion and its appropriate role in government. Especially all the chosen-one tropes that are fun in a movie are pretty brutally deconstructed in Children.
Everyone gets murdered, commits suicide, transformed into crazy magic people or giant sandworms, or repeatedly dies then comes back in different forms over centuries.
LotR had them do a bunch of hero shit, then everyone either went home to hang out at the pub for a while, or took a boat out west.
Lukecool is perfect for my wife. She gets acid reflux very easily and needs to drink ice cold water always. Needing to describe an offending glass of water as "not ice cold" is clumsy and inaccurate, but saying it's lukewarm is inaccurate. Lukecool works for that range where it's definitely cool, but you could put your finger in it and reliably tell that it's well above 0°.
What comment section are you in? People here love +0 and -0!
A year ago these articles were about how destructive server farms for crypto mining were. Now those same servers have pivoted to "AI" and the articles about them are almost the same.
Perhaps we will always find a use for this computing power, as long as governments allow it to be built.
I don't see the issue in pointing out that research like this gets misrepresented and weaponized.
Which makes this a great example of the shittiest side of "AI": not as software techniques to detect patterns and relationships, but as a method for obfuscating your sources. This software really is just saying "don't price fix by talking to eachother, price fix by having it done on our platform for you."
Many have covered specific learning material, but my best advice is to find a mentor. It really is a skill that's best learned by apprenticing. I new a lot of concepts and could muddle my way through them, but it wasn't until I had experienced people to work under directly that my skills really took off.
Just like the best advice on learning to write code is to write code, the best way to learn how to optimize performance is to optimize performance.
You're saying that with the benefit of hindsight. If their dominance was broken, then retroactively they were never a monopoly.
There are so many shit ports that have been left on the ash heap of history. The Atari 2600 port of Pac-man was pretty infamous. The worst offenders all ignored the technical requirements and were clearly led by the marketing/business side.
Only us olds really appreciate how groundbreaking Commander Keen was. The NES or Game Boy, with its graphics organized into tiles and layers, could give an extremely smooth experience for a certain kind of game. PC games in the pre-gpu era were extremely limited. Especially since researching and discussing development was much slower, too. The whole history of gaming could've gone very differently if adaptive tile refresh were the standard used early by everyone.
How appropriate, you fight like a cow.
That control system example has been what 95% of software development has been over my career. It's amazing how often devs simply won't recognize or acknowledge that they're resolving ambiguities by guessing. Ultimately everything we build rests atop a mountain of assumptions.
The cynic in me is upset at how easily exploited people are, but the optimist in me is happy at how overwhelmingly good most people are. There are scores of people out there (most of us included) who have the skills to pull something like this or the gpt4-written books thing who choose not to.
Yeah no.
Teddy bear, teddy bear, turn around. Teddy bear, teddy bear, touch the ground. Teddy bear, teddy bear, push your shoe. Teddy bear, teddy bear, off to school.
So tasty and healthy.
No.
>>> x = (x for x in [1,2,3])
>>> x
<generator object <genexpr> at 0x7bebccac10>It's basically the same. A lot of people feel it's more pythonic to spread this out across multiple lines with understandable indentation, while comprehensions can smush it all together. But the list comprehension was already there, of course.
I really enjoy the comprehension syntax too, which is a bit odd at first. But it lets you think about the typical map/filter approach you'd take in JS, PHP, etc. to build a list OR an iterator in almost the same way. I started to love lazy evaluation once I got big into rust, but writing all that stuff out in vanilla typescript is hard. It's wild how much JS is in the world that builds and allocates giant datasets for what all could just be a little iterator.
Generators are great, and their comprehensions included are some of the best things about python. It's wild how many people jump straight to building a huge dataset (straight to numpy) when all they really need is a few iterators to lazy evaluate. I'd held out on properly learning python for a decade, but it turns out I actually love python I just don't love the weird subset of it most devs practice, that evaluates and allocates for EVERYTHING.
I was at IBM during peak SOAP. It was crazy how much business pushed for abstraction for abstractions sake in this domain. I'm really hoping htmx helps people get their heads on straight with REST. All these scores of devs have been writing `POST /item {"method":"replace","id":12}` or `POST /item {"method":"delete","id":12}` for decades now.
I feel like this is being rediscovered right now with htmx. Servers having their responses updated to give back html markup to include.