• 0 Posts
  • 210 Comments
Joined 2 years ago
cake
Cake day: December 26th, 2023

help-circle




  • Most of October 7 was a crime, even without the hostages. Taking the hostages was itself a crime, and continuing to hold them continues to be a crime.

    The question of what Hamas “should” do is more complicated. Clearly following international law is not a priority for them, so that justification goes out the window.

    In terms of actually advancing their interests, I don’t see much benefit to them. Their biggest asset in Israeli domestic politics are the hostages. The political pressure in Israel to free them is real, and the decision makers all know that a deal is the only way to meet that. Further, a not insignificant portion of the population oppose the war in it’s current form specifically because of the hostages. The only wins Hamas has gotten has been through hostage negotiations.

    In exchange for giving all of that up, Hamas gets a slight benefit in the PR war. It is a very hard sell to say that is a good trade.

    If you want Hamas to free the hostages, you need to get to a point where “Hamas should free the hostages” is true from the perspective of Hamas. Then, you can work on convincing them it is true. The good news is that Hamas is very amenable to the idea that releasing hostages is in their interest. That is the entire reason you take hostages: to get some benefit by releasing them.


  • It’s hard to say. With or without hostages, October 7 was extremely traumatic; and came in the context of a population already primed to be suspicious of Palestinians. In particular, the West Bank ethnic cleansing was already well underway with the tacit support of the general population; as although for most people that support was more about apathy than proactive support. Looking at how the US lost its shit for decades after 9/11, it is clear that hostages are not necessary for that to happen. Israel has also to deal with follow up attacks, which has a way of keeping trauma fresh.

    Regarding the role of the hostages in this case, the first thing to acknowledge is that the actual response by Israel has not prioritized the hostages. Critical members of Israel’s current governing coalition have threatened to leave over prior attempts at a hostage deal. This has lead a serious rift developing between the current government and many of the hostage families.

    However, from a propaganda side, the hostages have been a major assesset to the current government (both internationally and domestically). Most people are simply not that engaged in politics. We have heard repeatedly from Israeli military leadership that there are no achievat military goals left in Gaza. However, it is hard for that message to break through when the other side can point to the hostages and say “freeing those people is our goal”. Nevermind the fact that everyone paying attention knows that military action is not an effective tool of hostage release [0] and almost all of the freed hostages have been freed as a result of diplomacy.

    [0] It can be useful for leverage in negotiations; but Israel is well past the point needed for that.


  • Must be nice to work work in such an agile company. Around here, we need to produce an updated requirements specification. Review that specification internally. Send the updated specification out to stakeholders for review. Put a bug in the backlog. Wait until someone important files a new bug report (which is now an actual bug report). Actually produce a fix. Hold a change review meeting. Merge the fix. Test the fix. Fail during testing because the tester is new to the project and flags 100 critical bugs that have been sitting in the backlog for years. Ship a release. Receive a bug report that we no longer produce screenshots. Fly an engineer to location to investigate. Advice the customer to update a 5 line script to point to the new location. “We don’t have bandwidth to update that system.”. Hide the fix behind an obscure undocumented option that defaults to off. Ship an emergency bug fix. Wait for the next bug report. Close bug report as "user error. User forgot to set enable ‘screenshots are not videos’ flag in tweaks>advanced>video menu ".


  • I’ve used it a fair amount for memory mapped IO where the hardware defined bitfields. It is also useful when you have a data format with bitfields. I’d say it is also useful when your data does not respect byte boundaries, but the only time I’ve run into that involved the bit order being “backwards”, which means that I still had to bittwidle things back together.

    From a performance perspective, a cache line is only 64 bytes. Space in registers, low level memory caches, and memory throughout are all limited as well.



  • I’ve had a couple of issues like this:

    • Wireless mouse has a flaky connection. Turns out the issue was the USB port it was plugged into (probably RF interference as other devices worked fine on that port)

    • We had a couple of radio receivers in a server rack. The scale of the project had shrunk over the years, so what used to fill up 2 racks now only half filled them (mostly because of upgraded components becoming faster and smaller over the years). Another project needed needed some rackspace, so we reracked everything into a single rack. When we were done, we found that one of our receivers couldn’t get a signal, and another would lose it regularly. Checked over all of our connections and the antennas, but everything seemed normal. Turns out something in the other project was blasting out RF interference.

    • We would occasionally need to manually move data on/off a server using a USB2.0 hard drive. This worked fine for years, until one day we had a server that would randomly disconnect from the drive a few seconds into the transfer. Tried different ports, same issue. The drive itself worked with all the others, so we decided the issue must be with the server. We swapped it out for a brand new one with plans to send the old one back for warranty repairs. Except the new one has the exact same issue. Both servers came from a newish batch from the OEM. Turns out that the earlier versions had a hardware “bug” where the USB ports would source more than the 500ma allowed by the spec. Since they fixed that, our drive would trigger the current limit during sustained use and temporarily depower the port. Solution: get a USB Y cable and power provider power from a wall block

    • I had a mouse that would double click (or more) when you pushed the button. This was pretty obviously a hardware issue, but I figured I could just tell the computer to ignore double clicks that happened “too fast” and avoid needing a new mouse. In theory that should have worked, but the input stack on Linux turned out to be a giant web that I couldn’t figure out, so I ended up opening the mouse and soldering on a random capacitor I had lieing around.

    • We had a laptop with a dead monitor that would mysteriously work at times. It turns out that most of the time, it was sitting on another laptop (of the same type). Those laptops had a magnet latch to hold them shut. It turns out that said magnet also was used as part of a “laptop closed” sensor that would disable the monitor, and the bottom laptop would trigger the sensor in the top one.



  • And put some guidelines in the road to assist with self driving. Maybe make them out of metal for improved durability. Then swap out the rubber-wheeled tires for some more efficient and less poluting conical metal wheels since we don’t need to worry about them running on asphalt anymore.

    Oooh. And as long as we have multiple carriages connected, we can add a walkway between them. Then instead of all of them being for passengers, they can subsidize the cost by having a car dedicated to selling snacks, or other items. You can literally buy your morning coffee from the road!



  • Interested to see how this plays out.

    Prohibiting Holocaust denial is relatively easy, because we have the benefit of it being history, and we have an ample historical record and a clear consensus among historians. Plus, no one can credibly claim that the legislatures were not thinking of the Holocaust when they wrote the law.

    However, how are they planning on applying the law to contemporary international crimes? People make accusations of them all the time. And the other side always denied them. And the actual facts are generally obscured by a massive fog of war that can take years to see through, if ever.

    There is also plenty of history where the answer is less clear. Do we really want courts involved in determining if the 15th century conquest of the Canary Islands counts as a genocide. Or if some unnamed mass grave an archeologists unearths was caused by an invading army killing all of a city’s adult males, or simply a burial site for fallen soldiers?

    What about the book of Esther. Taken literally, it ends with what is arguably a genocide committed by the Jews against the Persians. However, outside of some Israeli hardliners reinterpreting that ending for contemporary political purposes, it is widely understood that that ending is a literary device, not a literal telling of events. Did my Hebrew school teachers violate this law when they told me we didn’t actually kill 75,000 Persians? [0].

    What about the ongoing genocide against white Afrikaners going on in South Africa today? Am I violating the law when I say that genocide is not real, and just something the rightwing in the US invented for domestic political purposes. If the US has such a law, could Trump use it to jail his political opponents who criticized his recent stunt of accepting 60 Afrikaner refugees?

    Do we defer to an international body like the ICC or ICJ? In that case, you have just outlawed disagreeing with those bodies.

    The UN has repeatedly found it to be a massive human rights violation. Does disagreeing with those findings violate this new law?

    [0] As an aside, secular historians generally consider all of Esther to be fiction.





  • I think the image assumes that the viewer is familiar with merge sort, which is something you will learn in basically every undegraduate CS program, then never use.

    To answer your first question, it helps to have something to compare it against. I think the most obvious way of sorting a list would be “insertion sort”, where you look through the unsorted list, find the smallest element, put that in the sorted list, then repeat for the second smallest element. If the list has N elements, this requires you to loop through it N times. Since every loop involves looking at N elements, this means you end up taking N * N time to sort the list.

    With merge sort, the critical observation is that if you have 2 sublists that are sorted you know the smallest element is at the start of one of the two input lists, so you can skip the inner loop where you would search for the smallest element. The means that each layer in merge sort takes only about N operations. However, each layer halves the number of lists, so you only need about log_2(N) layers, so the entire sort can be done in around N * log(N) time.

    Since NlogN is smaller then N^2, this makes merge sort theoretically better.