I always advocate that TODO comments include a link to a ticket tracking the TODO during code review.
It’s easy to get a team to make this 2nd nature and gets immediate debt in the backlog. It can of course still be ignored and unfinished for a long time still but no amount of automated nagging will change that in my experience
What started as a "this should be just a few namespace changes" might have cost thousands of person days in my current job. So many tests red, the whole CI/CD broken, and when all "fixed" and done, there were still some uncaught production bugs haunting us for many months... Simply horrible.
On paper, it really was just a few changes. In practice, it forced a massive transitive dependency and technical debt cleanup for many companies.
Java 4 to 5 was very rough. Sun kept trying to defer major changes, sort of how Elixir claims it is mostly done. But something changed in 5 and the floodgates opened. They made too many changes at once, and so out in the field you would bump into projects stuck on Java 4 even as 6 was in beta. And then 7, and a few past that.
Honest question. Is java whatever version today worth learning again?
Java is something I shoved of my life together with the MS stuff and never looked back, but there is still plenty of market for it anyway
I don't remember anything significantly bumpy for about 30 large-ish applications we migrated from 8 to 11, guess the mileage varied. JDK is serious stable stuff.
Deprecations, which also affects libraries, i.e. the dusty one you were chugging along on top of might need to be replaced or adopted because the original maintainer gave up years ago.
On top of that, there was the removal of built-in J2EE; you needed to add external copies of the J2EE pieces, and some of them (like CORBA) weren't available as separate packages. And later versions of these external J2EE packages changed the namespace of all their classes, which is especially painful in Java due to its common use of dynamic loading of classes by name and lazy linking (and lazy linking errors do not inherit from Exception, which allows them to escape from catch-all "catch (Exception e)" clauses). The rest of the ecosystem is starting to depend on these new versions, so staying with old versions of these J2EE packages is not an option.
The fact that Sun never removed any deprecated methods even after they were proven dangerous was a sticking point that generated friction between coworkers over new code using deprecated functionality.
Accepting an anonymous and unverifiable characterization of a spreadsheet as evidence of fascism is not justified by other equally specious claims you've accepted as evidence of fascism.
True, but the lockfile is imposed at build time. Swapping out the version of a transitive dependency might build totally fine, but also might result is broken behaviour at runtime if the behaviour of the dependency changed.
Less charitable or More cynical? How is Amazon supposed to track a 3rd party pulling their SDK and then reverse-engineering their own service side to work with the SDK? Assuming we're all okay with that premise to begin with, all sorts of other questions start popping up.
Do these 3rd parties get veto power over a feature they can't support?
Can they delay a launch if they need more time to make their reverse-engineered effort compatible again?
It seems a hard to defend position that this is at all Amazon's problem. The OP even links to the blog post announcing this change months ago. If users pay you for your service to remain S3-compatible that seems like its on you to make sure you live up to that promise, not Amazon.
Clicking through to the actual git issues, it definitely seems like the maintainers of Iceberg have the right mental model here too. This is their problem to fix. After re-reading this post this mostly feels like a click-baity way to advertise OpenDAL, which the author appears to be heavily involved in.
Requiring a header "just because you sniffed it to usually be there" is not Amazon being cynical, it's creatively-developing-overly-strict-checks. And it happens on the side of the S3-compatible service.
If your service no longer works with the AWS SDK because you crash at `headers["content-md5"]` just because "it seemed a good way to make things more correct" - it is on you to fix it, IMO.
Why does Minio mandate the presence of Content-MD5? Is it in the docs somewhere for the S3 "protocol"? No, it's not. It's someone wanting to "be extra correct with validating user input" and thus creating a subtle extra restriction on the interface they do not control.
I think you misread my response. I think assuming Amazon did this to hurt “s3 compatible” services is cynical. Amazon implemented a feature, well within their rights. Writing a blog post saying they “broke backwards compatibility” is cynical and disingenuous. Amazon never committed to supporting any random use of their SDK.
Hard agree. If AWS were offering “S3 compatibility certification” or similar I could see framing this as an AWS/S3 problem. This seems like the definition of “S3 compatible” changed, and now everyone claiming it needs to catch up again.
Traditionally, in poker variants with wild cards that enable 5 of a kind hands, it does IIRC beat a royal flush. )"Royal straight" isn't a thing; AKQJT straights are sometimes called "broadway", but they're never distinguished as a separate hand type. Whereas royal flushes do get distinguished from straight flushes, but not for any good reason.)
But all of this is moot because TFA doesn't define "suits" for the "cards" anyway. And of course the relative probabilities do change when you only have 5 ranks. (And we're also effectively "drawing" without replacement; there are an effectively unlimited number of each rank available.)
If an Uber driver caused you to miss a flight by driving around a parking lot in circles at a speed you can't exit the vehicle, you don't think it would be a reasonable request for the customer to ask Uber to make it right?
Fair enough, there is a difference. But now we are not looking at a missed flight so much as attempted kidnapping or imprisonment or some other much more serious crime. Which is interesting to think about with the Waymo example, but hard to take seriously in the context of the video since the rider declines to do what the customer service rep asks them to do (at least appears to for the sake of producing additional outrage for their video)
When you call from a cell phone, public safety answering points get your gps data from the carrier. Landline calls have their associated address data sent. This is called e911 and has been a thing for over 20 years.
The person answering the call will ask for a specific address, but does not need it to send help towards you.
Eventually, a 911 PSAP should (but does not always) eventually get decent geographical coordinates -- that's part of what the E911 system is intended to provide.
When it does work (and it usually does work): It's not always instant, it isn't always accurate (the first hit may just be the coordinates of a cell tower -- good luck!) and it doesn't always work inside of buildings. And for some callers some of the time, things like VOIP won't deliver the correct location to a PSAP because things are broken or databases are simply wrong.
And in the best case: It can only reveal the calling party's location, which is not necessarily the location where people actually need help. And it only necessarily reveals that calling party's location to the 911 operator.
It's still generally the job of a human dispatcher to relay that information to the boots-on-the-ground who will actually show up and help the people who need that help.
It's nice to think of it as some tightly-integrated system where somehow the information is, say, relayed automatically from the caller's phone, through CAD, and all the way to the dashboard satnav of an ambulance so they can just hop in and go.
But what usually happens (in my experience hanging around in 911 PSAPs) is that the location is relayed to first responders by human voice over radio.
And addresses are easy to relay by voice.
> The person answering the call will ask for a specific address, but does not need it to send help towards you.
It's important to provide an address because addresses are useful to the 911 operator. E911 is awesome, but it is not an all-knowing, all-seeing system that is somehow born from perfection.
Assuming you mean "undefined" as "unprovable", this still seems like an extreme stance to me. I also think, even if we had this the next goal-post would be "provenance of the video".
As a cost-to-entry for a casual player, this seems like a pretty hard sell. I'd rather just find something else to play personally, than deal with a webcam and some invasive recording situation to play.
for pvp competitive games where cheating is possible, you and your computer must be more public while the game is active. how else could cheating be observed?
many people already run a distinct gaming pc, either for kernel anti-cheat or other reasons.
i would prefer not to be surveilled on my iphone.
i would prefer to be surveilled while playing fortnite or tf2. along with all the other players.
It’s easy to get a team to make this 2nd nature and gets immediate debt in the backlog. It can of course still be ignored and unfinished for a long time still but no amount of automated nagging will change that in my experience
reply