• 0 Posts
  • 30 Comments
Joined 1 year ago
cake
Cake day: June 9th, 2023

help-circle

  • It was Internet Explorer. But, what was probably confusing about it was that anything that required Internet access would start up the program that dialed the modem and connected to the Internet. So, clicking on the icon would eventually launch the browser, but first it would launch the dial-up program, which would take about 30s to connect.

    As an aside, it really grates to see how Microsoft called their browser “The Internet”. And that’s the least dastardly thing they did that let them use their monopoly on operating systems to destroy Netscape.



  • My favourite story about aircraft design about some of the design mistakes on the F-16 fighter.

    The F-16 was the first fly-by-wire fighter. They didn’t have much experience with it, and tried out some new things. One was that instead of having a stick between the legs of the pilot they used a side stick. And, since everything was fly-by-wire they didn’t need the stick to mechanically move. They decided they’d just use a solid stick with pressure transducers, since it was simpler and more reliable than a stick that moved.

    The trouble was that the pilots couldn’t estimate how much pressure they were using. This led to the pilots over-rotating on take-off (pulling back too hard). Even funnier was that at early airshows, when the pilots were doing a high-speed roll, you could see the control surfaces twitching with the heartbeat of the pilots as they shoved the stick as hard as they could to get maximum roll.

    That led to them adding a small amount of give to the stick, essentially giving the pilots feedback on how hard they were pushing the control surfaces.

    Another more subtle issue with the design was that originally the stick was set up for forward, back, left and right aligned with the axes of the plane itself. But, they discovered that when pilots pulled back on the stick, they were pulling slightly towards themselves, causing the plane to also roll. So, they realigned it so that “pulling back” is slightly pulling towards the pilot’s body, rather than directly along the forward / backward axis of the plane.


  • There was a listener question on a science podcast recently that asked about how the temperature changed on the moon during the recent solar eclipse.

    They almost got what a solar eclipse was, but not quite. During a solar eclipse, the moon gets between the sun and the earth, blocking the light getting to the earth and casting a shadow on the earth. The side of the moon facing the earth is completely dark because the thing that normally lights it up (the sun) is completely behind it. But, the back side of the moon is getting full sun and just as hot as normal.

    I think part of the problem with understanding all this is that the sun is just so insanely bright. Like, it’s a bit hard to believe that the full moon is so bright just because it’s reflecting sunlight. It’s also amazing that the “wandering stars” (planets) look like stars when they’re just blobs of rocks or gases that are reflecting the insanely bright light of the sun.

    It’s amazing if you think about it. Light comes out of the sun in every possible direction. A tiny fraction of it hits the surface of Mercury, and only some of that light is reflected back out. The light reflected from Mercury goes in almost every direction. A tiny fraction of it hits the earth. But, even with that indirect bounce, it’s bright enough to see with the naked eye.


  • When I first code something up, I think of it as a first draft, and I expect maybe 5ish typos / brainos per 100 lines. Only a few times in my life have I finished writing a few hundred lines of code, tried to compile / run it, and not seen at least a few errors.

    When I don’t see errors, it’s almost always because somehow I managed to not compile / run the code at all. Like, one of my typos / brainos managed to cause it to skip that entire new block of code. Only once or twice has it happened because I actually wrote error-free code the first time. And, let me tell you, that perfect code sucked up so much more time than the more typical bad code.

    With the bad code, I see the various errors, quickly fix them, and those errors convince me that the compiler / interpreter has actually seen all the new stuff and judged it. But, with perfect-from-the-start code, I now have to go in and throw in print statements, or step through a debugger to convince myself that yes, the system actually made it into that function and actually did execute those statements.






  • merc@sh.itjust.workstoProgrammer Humor@lemmy.mlC++ Moment
    link
    fedilink
    arrow-up
    6
    arrow-down
    2
    ·
    7 months ago

    but you can follow any exception down to the exact line of code (or JNI call, I guess) where the problem occurs.

    But, it’s not really where the problem occurred. How often do you get a stack trace and the bug fix is at the line referenced by the stack trace? Almost never. It’s more that it takes you down to the exact line of code where the effects of the problem are bad enough to affect the running of the program. But, the actual problem happened earlier, sometimes much earlier.

    For example, NullPointerException isn’t actually the problem, it’s a symptom of the problem. Something didn’t get initialized properly, and nobody noticed for a while, until we tried to use it, and got a null pointer. Sometimes it’s easy to go from the effect (null pointer) to the cause (uninitialized thing). But, other times that “thing” was passed in, so you have to work backwards to try to figure out where that thing comes from, and why it’s in that broken state.

    Sure, it’s better than nothing, but it’s still frustrating.





  • We need to talk about data as a physical object.

    We need to admit that it isn’t and that that’s a terrible metaphor.

    It’s still saved on disks somewhere, whether they’re a traditional HDD or a modern SSD.

    Yes, often multiple copies are saved. Sometimes it is aggregated with other data, sometimes not. Making a new copy is insanely cheap, and, under the hood, even when just moving the data from the hard drive to the computer’s memory, a copy is made automatically. There’s no way to avoid copying the data.

    But, to make it clear, “data” is basically “ideas”, and you can’t really treat ideas as objects. For thousands of years the idea that you could control ideas was ridiculous. You could control the physical object that an idea was expressed on, but if someone took their own time and copied it, that was a new object and the person who made the original had no claim on it.

    Copyright, and its evil friends, is a relatively new concept where the government grants a temporary monopoly on the expression of an idea. Stealing the physical object on which the idea is printed is one thing. But, now you can get in trouble for “stealing” the idea. That’s what you’re talking about with stealing “data”, is that what you’re supposedly “stealing” is information.

    But, of course it’s not theft. When you copy an idea without permission, the person with the original doesn’t lose it, they just lose control over a copy of that information.

    Treating ideas, data, etc. as physical objects just never works because ideas can be copied without the original person losing anything. This is different from physical objects where my taking it necessarily means that you no longer have it.

    In other words, data was always as physical as words on the page of a book.

    Not at all, because each copy of a book is its own physical object. Copying a book is difficult and requires its own printing press. Even a low-fidelity copy like a photocopy requires a photocopy machine, ink and paper. Copying data is essentially free. When copying a book required a printing press, you could sort-of pretend that ideas were objects because copying was so burdensome. But, with digital data it’s clearly ridiculous. That doesn’t mean you can’t have laws about data (i.e. information), it just means that those laws care going to have to be completely different from laws about physical objects.

    Why did we accept the change in how ownership worked simply because of a change of storage medium?

    Because copying is essentially free. It’s no longer an object, it’s information.

    But, having said that, the storage medium isn’t a major issue. The real question is when did people start accepting that you could treat ideas as objects. Stealing a book out of someone’s backpack and photocopying a book are completely different crimes. In one case, the person no longer has the object. In the second case, they still have it, but they don’t have control over the copies of it.

    Talking about data as if it’s an object or something you can own is a red herring. The real issue is privacy.

    For instance, say you use a period tracker app, that is owned by an non-profit, trying to use the data to better understand women’s hormone changes so that they can get better medical care. Great! Ok, now what happens if that non-profit goes bankrupt and as part of the bankruptcy proceedings sells its data to Meta or Google so that it can afford to make payroll. Well shit, your data is now owned by them, and you’re out of luck.

    A privacy rule handles that situation better. You can give the company access to your private data, and then revoke that access later. If your data is something they own, they can use it however they like. But, if you own your own privacy, it doesn’t matter if the period tracker app gets bought out or goes bankrupt or whatever. The data they have isn’t something they own and can sell, it’s private data that they had temporary access to.


  • They don’t have a monopoly like any of their competition that will easily sustain them.

    Erm, you think Bing is a serious competitor? Aside from search (91.54% of the global search market), Google is part of an ads duopoly that is only stalled by walled gardens like Amazon, TikTok, Wal*Mart, and the various entertainment companies. There’s also Google Maps, used by 77% of users between 16 and 64, and their biggest non-iOS competitor is Waze, which Google also owns. For email, 75% of the US email market is dominated by Gmail. As for the user-generated media market, YouTube absolutely dominates that. The closest competitor (Twitch, A.K.A. Amazon) is far behind.

    As for what Google engineers do, it’s mostly not rip-things-up-and-start-over innovation since these are all very mature markets with billions of users. Instead it’s small tweaks that generate hundreds of millions in savings or additional revenue.


  • Most people don’t remember this, or weren’t alive at the time, but the whole Colin Powell event at the UN was intended to stop the weapons inspectors.

    France (remember the Freedom Fries?) wanted to allow the weapons inspectors to keep looking until they could find true evidence of WMDs. The US freaked out because France said it wasn’t going to support an invasion of Iraq, at least not yet, because the inspectors hadn’t found anything. That meant that the security council wasn’t going to approve the resolution, which meant that it was an unauthorized action, and arguably illegal. In fact, UN Secretary General Kofi Annan said it was illegal.

    Following the passage of Resolution 1441, on 8 November 2002, weapons inspectors of the United Nations Monitoring, Verification and Inspection Commission returned to Iraq for the first time since being withdrawn by the United Nations. Whether Iraq actually had weapons of mass destruction or not was being investigated by Hans Blix, head of the commission, and Mohamed ElBaradei, head of the International Atomic Energy Agency. Inspectors remained in the country until they withdrew after being notified of the imminent invasion by the United States, Britain, and two other countries.

    https://en.wikipedia.org/wiki/United_Nations_Security_Council_and_the_Iraq_War

    On February 5, 2003, the Secretary of State of the United States Colin Powell gave a PowerPoint presentation[1][2] to the United Nations Security Council. He explained the rationale for the Iraq War which would start on March 19, 2003 with the invasion of Iraq.

    https://en.wikipedia.org/wiki/Colin_Powell's_presentation_to_the_United_Nations_Security_Council

    The whole point of Colin Powell burning all the credibility he’d built up over his entire career was to say “we don’t care that the UN weapons inspectors haven’t found anything, trust me, the WMDs are there, so we’re invading”. Whether or not he (or anybody else) truly thought there were WMDs is a bit of a non-issue. What matters was they were a useful pretext for the invasion. Initially, the US probably hoped that the weapons inspectors were going to find some, and that that would make it easy to justify the invasion. The fact that none had been found was a real problem.

    In the end, we don’t know if it was a lie that the US expected to find WMDs in Iraq. Most of the evidence suggests that they actually thought there were WMDs there. But, the evidence also suggests that they were planning to invade regardless of whether or not there were WMDs.




  • It’s really shitty that this trial is being kept secret. Even if it’s a fair trial, it sure doesn’t have the appearance of a fair trial. I guess Google would prefer the appearance of a corrupt trial if the alternative is embarrassing information getting out.

    Having said that, I really don’t get the issue with this:

    when Google executives used “history-off chats” to destroy conversations after 24 hours even after Google was on a litigation hold.

    You’re not allowed to destroy past chats / emails after you’ve been notified you’re on a litigation hold. That makes sense. You can’t shred any documents or delete any emails. But, this seems to be about current / future communications. It sounds like they started a history-off chat after the lawsuit started, and they may (or may not) have discussed things relevant to the case. AFAIK the default is history-off for chats within Google. So, they’d have had to specifically turn on history for any new chat.

    So, what does that mean. If they’re sued, any current or future communications between executives there have to be history-on communications in case in the future something they say is related to the trial? Are they allowed to chat in person? If they do, is it mandatory that those chats be recorded and transcribed?

    If some communication is allowed to be off-the-record (say a personal chat with someone), it seems weird to say ok, but if you use a text-based program to chat, you can’t have to keep transcripts of that chat and give them to us.