That is an advanced question best asked of the folks in charge of the plant. At the time I was just trying to figure out how to explain to the IT auditors why there was no antivirus software on this piece of crap.
Could you skirt around it and just remark "there are no viruses for AmigaOS"
(Probably not literally true. But functionally true in the sense that they were likely transmitted via infected floppy disks, of which there'd be virtually none left in the wild in 2007)
Wow I haven’t heard of the SAVE database at all before today, despite knowing about e-verify and SEVIS and similar programs. Reading Wikipedia there’s also VIS and PCQS, two more systems I haven’t heard of. It seems that the country’s distaste for a national ID not only forces each state to issue IDs but also the federal government to create a patchwork of slightly different ID programs.
The main issue is not distaste per se, though there are bi-partisan factions that oppose a national ID.
The Supreme Court has consistently asserted that a mandatory Federal ID is unconstitutional because that is a power reserved for the individual States. It is the same reason everyone has a Social Security card but they are explicitly not to be used as an ID. Every time Congress has tried to constructively invent a loophole to work around this prohibition the Supreme Court disallowed it.
The US government can issue IDs. Many people have multiple Federal IDs. The US government just can't make everyone have one or use them. It is what it is.
I completely agree. Even in classic Python with GIL, the programmer would still have to understand concepts from concurrent programming. The asyncio package has to provide types such as Lock, Condition, Semaphore, even when it uses just one thread. The threading package on the other hand uses OS threads, and yet it provides its own version of types such as Lock, Condition, Semaphore, even if it is protected by the Python GIL. The GIL is preventing meaningful parallelism in Python, but it remains the programmer’s responsibility to use concurrency tools correctly.
California, more so than other places, have a lot of paper billionaires living a middle-class lifestyle because these billionaires are tech founders that hold illiquid ownership in their own startups.
The phrase “tends to” is doing a lot of work here. Inexperienced Haskellers tend to use the singly linked list for everything and that data structure just doesn’t perform in any language.
What kind of tooling were you using? IMO, deadlocks are some of the easiest concurrency bugs to diagnose. If you can see the thread stacks, it is easy to see threads are blocked from acquiring a lock. If you can attach a debugger, it is easy to see which locks are involved. Then you can pretty much figure things out using the straightforward guideline that if multiple locks are involved, they must be acquired in the same order in all code paths.
I don't want to devalue your experience, but I am surprised to hear that. Livelock is harder to debug. Silent data corruption caused by missing or wrong synchronization is way harder to debug.
Agree completely. But they become harder when you eschew standard constructs like threads and mutexes and bring-your-own losing nice things like debugger supports and stack traces. Now your logical tasks might be deadlocked, while your threads appear to be running correctly. This is surprisingly common this day with async runtimes and less than stellar debugging support.
> Silent data corruption caused by missing or wrong synchronization is way harder to debug.
Reminds me of being a young and ambitious C++ programmer 25 years ago, discovering that when you have a map and do “return m[k]”, it is not, in fact, a read-only operation when k does not exist. After which I learned that const-correctness is not just a nice-to-have, especially in multithreaded applications.
But yeah deadlocks are hardly ever a difficult issue to diagnose. They may potentially be difficult to resolve, but at that point, it very much suggests that there’s an architecture / design issue.
Just drain the traffic (make the load balancer temporarily not send traffic to it) and attach a debugger. I hope your load balancer has that feature because health checking also needs it.
ah, that's probably a missed wakeup problem! Much nastier. Still seeing where your thread is blocked might hint you to where the missing signal should have been.
So I actually had this exact issue where we suspected a deadlock, but the application was limping along and we couldn't justify attaching a debugger. I managed to confirm my suspicions with judicious use of perf and /proc/<pid>/task/<tid>/wchan .
Funny how you mention it is a functional programming torture course, but the Parquet writer introduced in this article is written in a highly imperative style. I have not seen this much IORefs and MutableByteArrays in recent memory.
At one point my car had a firmware update that made the Eco mode sluggish in acceleration. I thought it made perfect sense; being economical in battery use means limiting acceleration. It received so much backlash that the manufacturer had to issue a subsequent update to increase the acceleration cap.
Why don't the idjits just offer two levels of "Eco"?
Maybe people like the regular Eco mode for reasons other than economy; like they use it as a kind of one-pedal driving, since it offers regenerative braking when you back off the accelerator.
There needs to be a mode for those drivers, and a mode for those who are serious about maximizing battery run times.
Fighting and backlashing over mere software configurations of one thing is so senseless.
I don’t have experience elsewhere but in Santa Clara county, the county assessor calculates a very much incorrect split between land value and value of the improvements (buildings) when they assess the property tax. Sometimes they just divide the total value by two and call it value of the land; in other cases the value seems to match reality more, and the value of improvements match the actual cash value (but not replacement cost) from insurance companies.
How would a land value tax accurately compute the land value?
Not all assessors do this accurately, especially in California, but there are many that do. This article includes a section on land valuation which summarizes and links out to various other articles about various approaches
> In its ideal form, this tax would capture and redistribute the annual rental value of land; that is, the recurring value of the land excluding the value of any buildings or other improvements on top of it.
> but you see the same basic patterns everywhere. Land in the city center is worth much, much more than outlying areas.
The calculation of the "unimproved value" always perplexed me.. it seems like you're not taxed for the things you build on your land, but instead for the things other people built around your land. After all, why would property in a city be valuable if not for all the high rises, subways, and office buildings?
this is the idea - if theres a lot of value around you, you should build to make sure you are meeting the bar of whats around you in terms of economic activity.
if you build even more and get more out of the land than whats around you, you essentially get a lower tax rate until your neighbors catch up.
if you lag behind, you pay a premium in taxes to not develop
It, in effect, turns out not really to be a land value tax at all. It turns out to be a tax on the most valuable thing that _could_ be built there because that's what gives land it's value.
So you're completely correct, the value of the land changes with what's around it because it opens up new options for what someone might build there.
There is a very weird but real phenomenon where it costs more to build/remodel in an upscale part of town. Roof repair: same roof, same company, two jobs 10 miles apart with wildly different invoices.
It is quite disingenuous to attribute the South Bronx fires as a result of landlords unable to raise rental prices. I mean that is technically true, but your comment makes it sound like it was a result of a particular legal proposal. It was not. It was a period of urban decay in NYC and many cities in the United States. It was the continuation of white flight into suburbs that started in earlier decades. It was a large demographic change with complex causes.
reply