Yikes
I'm hoping that whatever file system was in use did not employ delayed writes, or that it had been idle long enough that the local equivalent of sync() had run and completed. Those systems had orderly shutdown procedures for a reason.
21 publicly visible posts • joined 9 Dec 2015
Yes, "only" was too strong a word. But after IBM dropped support for SNA over twinax connections, I found the iSeries Toolkit for Java extremely useful. In theory I could have used TCP/IP instead, and written my own server-side interfaces (and that would have been a fun project) but my boss would have wanted to know how long that was going to take.
One reason Ada didn't catch on better, at the time, was the size of the symbol table the compiler had to keep in memory in order to do the required type checking -- this was back in the day when 256 or 512K was a lot of expensive memory for a PC. You could buy a cheap C compiler that ran in 64K or less, or the one Ada compiler for DOS that required a 286 processor and a special memory card that cost more than the original PC. Unsurprisingly, most budding programmers went for C instead. Ada95 expanded the language to make it less inflexible and of course computers are massively cheaper and more powerful now, but by then it was already too late.
re "the new Cobol", in my experience writing financial software that would be Java, or at least JVM-based languages. IBM threw its weight behind Java (at least for a while the only way to talk to an AS/400 was through a Java API), and there is just a boatload of useful Java libraries available.
Speaking as a long time Sonos user I don't understand how this ever got out of internal testing, much less into a general release. No ability to edit or manipulate the queue, volume control across multiple rooms doesn't work, no ability to search by composer, no access to TuneIn without creating yet another account, plus the previously mentioned lack of access to alarms and local libraries. This is just one in a long list of reasons why, even though my apartment is filled with Sonos speakers, I've always hesitated to recommend them to anyone else. Fortunately I still have an iPod Touch that hasn't updated, but the iPad that I bought specifically to use as a controller is now useless for that purpose. I'm looking into getting the Windows controller to run under Wine on Linux, or maybe buying an Android tablet so I can side load the controller.
Sonos has always viewed its older customers as a liability -- they produce no revenue but still need support -- but I don't think throwing them under a bus is the answer.
"Thats all very nice, but what do you think these languages runtimes do under the hood when running on a standard OS? Yes, thats right, they use threading and multi process with shared memory. Reality is what matters, not trendy names and buzzwords."
Structured control constructs like if-then-else statements and while loops are usually implemented under the hood using labels and goto statements, but I would not argue that they are not useful on that account. Restricting the use of dangerous features to a few well-understood idioms makes it easier to reason about the resulting code. Sure, in the end it all compiles down to machine code: that's not the point.
The only reliable way to find out is to experience it yourself. Here are some tips:
Don't drink a lot, especially not water. You want your pee always to be bright yellow. This lets the stones get nice and big before they begin their journey down to the bladder.
Make sure you get lots of calcium, more than your body really needs. And since calcium oxalate is the most common type of stone, go for that and eat lots of foods that are rich in oxalates: tea, chocolate, nuts, etc.
Keep your magnesium intake down, since it tends to lower calcium levels in the body. As a bonus you can enjoy worse sleep and possibly muscle cramps.
And needless to say, avoid roller coasters or even gentler things like running or walking.
Or if you decide that kidney stones are not for you after all, just reverse all the previous advice.