• 3 Posts
  • 80 Comments
Joined 2 years ago
cake
Cake day: May 8th, 2023

help-circle
  • In Australia, there is a strong presumption towards keeping left as a pedestrian (and overtaking on the right - e.g. etiquette on escalators is to keep left, but if you are walking up the escalator, overtake to the right).

    In some particularly busy places (especially on shared footpath / bike lane zones) there are even arrows on the pavement to ensure tourists know what side to keep to.

    There are always a few people (probably tourists) who don’t follow the local etiquette.


  • to lose 100% of the court cases where they try this defense

    I don’t think the litigants actually know this. The shady characters they are paying for the information probably know that, but represent that it will just work if they do it right.

    Imagine you have some kind of legal problem, and you go to your lawyer, and your lawyer tells you they know what to do that will let you win. You’ll probably do it. Now for the litigants, it is the same thing, except instead of a lawyer, it is some person with an Internet and/or in real life following, who dazzles you with lots of fake formality that aligns to your preconceptions of the legal system based on TV. Of course, it is all just pseudolegal and a scam, but you don’t know that.

    Now you might except that some critical thinking and/or research of authoritative sources like case law, or consulting a real lawyer might let the litigant see that it is a scam, but critical thinking skills are not as common as you might hope, and secondary education in many places doesn’t cover much about the law or how to do legal research.

    Consider that 49.8% of voters in the 2024 US Presidential election voted for Trump, even after seeing the first term. Many people are easily hoodwinked into acting against their own best interests, especially if they are convinced there is a community of other people like them acting the same way (SovCit like groups do have some numbers), that people who endorse those theories get a lot of recognition / are influential (the leaders of the groups can create that impression), and that their theories have a long traditional backing (usually they make up a historical backstory).


  • It is possible for all of the following to be simultaneously true:

    • The Israeli War Cabinet are war criminals and terrible people for slaughtering civilians in Palestine and Lebanon.
    • The Houthis are war criminals and terrible people for targeting civilians in Israel.
    • The US Trump Administration are war criminals and terrible people for killing civilians in Houthi-controlled areas.
    • Hamas are war criminals and terrible people for targeting civilians.

    While all of the above crimes are of roughly the same type (albeit for different reasons), they do differ in extent - the Israeli War Cabinet is responsible for the most suffering by a wide margin.

    I think it is a morally consistent position to condemn all of the war crimes above, although perhaps to prioritise efforts condemning the bigger ones.



  • As an experiment / as a bit of a gag, I tried using Claude 3.7 Sonnet with Cline to write some simple cryptography code in Rust - use ECDHE to establish an ephemeral symmetric key, and then use AES256-GCM (with a counter in the nonce) to encrypt packets from client->server and server->client, using off-the-shelf RustCrypto libraries.

    It got the interface right, but it got some details really wrong:

    • It stored way more information than it needed in the structure tracking state, some of it very sensitive.
    • It repeatedly converted back and forth between byte arrays and the proper types unnecessarily - reducing type safety and making things slower.
    • Instead of using type safe enums it defined integer constants for no good reason.
    • It logged information about failures as variable length strings, creating a possible timing side channel attack.
    • Despite having a 96 bit nonce to work with (-1 bit to identify client->server and server->client), it used a 32 bit integer to represent the sequence number.
    • And it “helpfully” used wrapping_add to increment the 32 sequence number! For those who don’t know much Rust and/or much cryptography: the golden rule of using ciphers like GCM is that you must never ever re-use the same nonce for the same key (otherwise you leak the XOR of the two messages). wrapping_add explicitly means when you get up to the maximum number (and remember, it’s only 32 bits, so there’s only about 4.3 billion numbers) it silently wraps back to 0. The secure implementation would be to explicitly fail if you go past the maximum size for the integer before attempting to encrypt / decrypt - and the smart choice would be to use at least 64 bits.
    • It also rolled its own bespoke hash-based key extension function instead of using HKDF (which was available right there in the library, and callable with far less code than it generated).

    To be fair, I didn’t really expect it to work well. Some kind of security auditor agent that does a pass over all the output might be able to find some of the issues, and pass it back to another agent to correct - which could make vibe coding more secure (to be proven).

    But right now, I’d not put “vibe coded” output into production without someone going over it manually with a fine-toothed comb looking for security and stability issues.







  • This slowly degrades the power of the union and ultimately reduces wages and benefits of the workers

    I’m not sure I buy into that - but that said I live in a country where unions are popular, but unions are not allowed to force people to join (but unions do have a right of access to workplaces to ask people to join / hold meetings).

    Firstly, it doesn’t take that big a percentage of an employer’s workforce to strike before a strike is effective… companies don’t have a lot of surplus staff capacity just sitting around doing nothing. And they can’t fire striking union workers for striking.

    Secondly, if all employees have to belong to one particular union, that also means the employees have no choice of which union, and hence no leverage over the union. Bad unions who just agree to whatever the employer asks and don’t look after their members then become entrenched and the employees can’t do much. If there are several unions representing employees, they can still unite and work together if they agree on an issue - but there is much more incentive for unions to act in the interests of their members, instead of just their leadership.

    A lack of guaranteed employee protections, on the other hand, is inexcusable - it’s just wealthy politicians looking out for the interests of their donors in big business.






  • I think any prediction based on a ‘singularity’ neglects to consider the physical limitations, and just how long the journey towards significant amounts of AGI would be.

    The human brain has an estimated 100 trillion neuronal connections - so probably a good order of magnitude estimation for the parameter count of an AGI model.

    If we consider a current GPU, e.g. the 12 GB GFX 3060, it can hold about 24 billion parameters at 4 bit quantisation (in reality a fair few less), and uses 180 W of power. So that means an AGI might use 750 kW of power to operate. A super-intelligent machine might use more. That is a farm of 2500 300W solar panels, while the sun is shining, just for the equivalent of one person.

    Now to pose a real threat against the billions of humans, you’d need more than one person’s worth of intelligence. Maybe an army equivalent to 1,000 people, powered by 8,333,333 GPUs and 2,500,000 solar panels.

    That is not going to materialise out of the air too quickly.

    In practice, as we get closer to an AGI or ASI, there will be multiple separate deployments of similar sizes (within an order of magnitude), and they won’t be aligned to each other - some systems will be adversaries of any system executing a plan to destroy humanity, and will be aligned to protect against harm (AI technologies are already widely used for threat analysis). So you’d have a bunch of malicious systems, and a bunch of defender systems, going head to head.

    The real AI risks, which I think many of the people ranting about singularities want to obscure, are:

    • An oligopoly of companies get dominance over the AI space, and perpetuates a ‘rich get richer’ cycle, accumulating wealth and power to the detriment of society. OpenAI, Microsoft, Google and AWS are probably all battling for that. Open models is the way to battle that.
    • People can no longer trust their eyes when it comes to media; existing problems of fake news, deepfakes, and so on become so severe that they undermine any sense of truth. That might fundamentally shift society, but I think we’ll adjust.
    • Doing bad stuff becomes easier. That might be scamming, but at the more extreme end it might be designing weapons of mass destruction. On the positive side, AI can help defenders too.
    • Poor quality AI might be relied on to make decisions that affect people’s lives. Best handled through the same regulatory approaches that prevent companies and governments doing the same with simple flow charts / scripts.

  • I looked into this previously, and found that there is a major problem for most users in the Terms of Service at https://codeium.com/terms-of-service-individual.

    Their agreement talks about “Autocomplete User Content” as meaning the context (i.e. the code you write, when you are using it to auto-complete, that the client sends to them) - so it is implied that this counts as “User Content”.

    Then they have terms saying you licence them all your user content:

    “By Posting User Content to or via the Service, you grant Exafunction a worldwide, non-exclusive, irrevocable, royalty-free, fully paid right and license (with the right to sublicense through multiple tiers) to host, store, reproduce, modify for the purpose of formatting for display and transfer User Content, as authorized in these Terms, in each instance whether now known or hereafter developed. You agree to pay all monies owing to any person or entity resulting from Posting your User Content and from Exafunction’s exercise of the license set forth in this Section.”

    So in other words, let’s say you write a 1000 line piece of software, and release it under the GPL. Then you decide to trial Codeium, and autocomplete a few tiny things, sending your 1000 lines of code as context.

    Then next week, a big corp wants to use your software in their closed source product, and don’t want to comply with the GPL. Exafunction can sell them a licence (“sublicence through multiple tiers”) to allow them to use the software you wrote without complying with the GPL. If it turns out that you used some GPLd code in your codebase (as the GPL allows), and the other developer sues Exafunction for violating the GPL, you have to pay any money owing.

    I emailed them about this back in December, and they didn’t respond or change their terms - so they are aware that their terms allow this interpretation.


  • I think the most striking thing is that for outsiders (i.e. non repo members) the acceptance rates for gendered are lower by a large and significant amount compared to non-gendered, regardless of the gender on Google+.

    The definition of gendered basically means including the name or photo. In other words, putting your name and/or photo as your GitHub username is significantly correlated with decreased chances of a PR being merged as an outsider.

    I suspect this definition of gendered also correlates heavily with other forms of discrimination. For example, name or photo likely also reveals ethnicity or skin colour in many cases. So an alternative hypothesis is that there is racism at play in deciding which PRs people, on average, accept. This would be a significant confounding factor with gender if the gender split of Open Source contributors is different by skin colour or ethnicity (which is plausible if there are different gender roles in different nations, and obviously different percentages of skin colour / ethnicity in different nations).

    To really prove this is a gender effect they could do an experiment: assign participants to submit PRs either as a gendered or non-gendered profile, and measure the results. If that is too hard, an alternative for future research might be to at least try harder to compensate for confounding effects.




  • True, except the difference Israel is still taking occupied land and building settlements, and excluding the people born there from them.

    The government at least needs to pick one of the two options to move forward (as well as acknowledging and making reparations for those with traditional connections to the land who were affected by past injustices):

    1. The two state solution: Palestine is a genuinely separate sovereign state, with a right to self determination, airspace, control of their territorial waters and so on. Israeli government representatives only enter Palestine on invitation from the government. Anyone born on Palestinian land, even on a former settlement, is a Palestinian unless they find another state to accept them and renounce their citizenship. Palestinians have equal protection of the law, and are expected to follow Palestinian laws on Palestinian land, or face the Palestinian justice system. If they renounce their citizenship, they are subject to Palestinian immigration law and might have to leave Palestine.
    2. The one state solution: The entire Israeli occupied ‘river to sea’ area is one state, and everyone born there is an Israeli citizen, with equal rights under the law, power to vote, etc…

    The problem is the current right-wing extremists in power in Israel do not want either solution; they want to have it both ways - when it comes to ownership and control, they want to deny the existence of a Palestinian state. But when it comes to citizenship, they want to claim everyone born on the land they occupy is not Israeli so they can deny them rights and exploit them. Their life is substantially controlled by the Israeli state, but they get no say in the leadership of the state - undermining claims it is a democracy. They don’t have equal protection under the law - Israeli authorities protect settlers taking land against people with generational connections to the land.

    None of this is new in history, as you point out. Most of the Roman Empire, most of the former British Commonwealth, etc… had similar things in the past, with massacres of the native people, lands confiscated, native people been treated as having fewer rights than the colonialists, etc…

    What is different is that those are all past atrocities (although fair reparations have still not been paid in many cases, at least further atrocities are generally not continuing to anything like the same extent), while Israel continues to commit the same atrocities to this very day.