Off-and-on trying out an account over at @[email protected] due to scraping bots bogging down lemmy.today to the point of near-unusability.

  • 11 Posts
  • 477 Comments
Joined 2 years ago
cake
Cake day: October 4th, 2023

help-circle



  • The thing is mostly that, while unpopularity does have an impact, that impact is probably going to be somewhat bounded regarding the Trump administration.

    Trump cannot be voted out in the midterms, and the US does not have snap elections the way parliamentary systems do, so absent him dying in office or otherwise becoming incapacitated, he will probably be around for the rest of his term.

    In general, the popularity (or lack thereof) of the President affects turnout and how people vote for legislative representatives in the midterm elections.

    For the Trump administration, there are a couple of major inflection points that I’m aware of.

    • Democrats take control of the House in the midterm elections. I would guess that at this point, this is most-likely going to happen, and most of what I’ve read — including from the Republican side of the aisle — agrees with this. The major impact of this will be that Democrats will be able to initiate Congressional inquiries and demand that the Executive turn over a lot of information about its activities. As I recall reading, the Trump administration specifically directed its the Executive not to respond to requests for information from Congressional representatives in anything other than situations where they were legally bound to do so, which I understand breaks with convention. Basically, the way this works is that a simple majority has to start an inquiry, and put people in front of the House, and then representatives from both sides of the aisle are allowed to require them to testify. Lisa Murkowski, a moderate Republican senator who has been critical of Trump, had some comment a while back about how the only way she found out about things was in the news, so I expect that Republican legislators probably aren’t getting much information either. I’d assume that the Democrats will use this both the present the administration in a negative light, and to turn up information damaging to the administration. It will let the Democrats block legislation that they don’t like, though I’d assume that there will be an effort to pass any legislation that they might block and that the administration wants in the first half of the term. If they find that Trump has broken the law, they can impeach Trump, but this has limited impact (other than acting as condemnation of Trump) unless they can get a two-thirds supermajority in the Senate to convict and remove him from office; this would require a number of Republican senators to agree that he needs to be out of office, and I’m skeptical that this will happen unless there is material that comes out that is considerably more damning than anything thus far.

    • Democrats take control of the Senate in the midterm elections. What I’ve read is that this is possible, but unlikely. Nate Silver had an article some time back talking about how is was more-likely than one might expect (generally, the Republicans have an advantage in the Senate, as they dominate in more low-population states), and I’ve seen several other articles saying that while odds are they will not, it is a real possibility, not to be dismissed. I don’t know, off the cuff, what impact this will have. It would permit Democrats to block Trump’s nominations for people if he dismisses them, which might give cabinet members considerably more ability to disagree with him, if they want to do so. I don’t know of anything that a simple majority in both House and Senate buys the Democrats. It’d let them pass legislation that Trump disagrees with in Congress, but Trump can veto it; overriding a veto would require a two-thirds supermajority in both houses.

    The US has weak party discipline; legislators are less-accountable to the party as a whole than in many countries. It’s possible that some close votes could be flipped by legislators not voting strictly along party lines. For example, some Republican legislators voted to release Epstein information.

    I don’t know what, if any, impact there will be from control shift regarding the administration asserting emergency powers to impose tariffs. My understanding is that there are currently lawsuits underway, which the Trump administration is most-likely expected to lose, with a major ruling expected in the next week, but that there may be other legal routes for the administration to effectively impose tariffs. I am not sure that Trump’s approval ratings will have an impact here.

    Trump’s approval probably will have an impact on his influence on Republican politicians. Trump has, in the past, threatened to and endorsed primary election opponents of those Republican politicians who disagree with him. The value of a Trump endorsement is predicated on Trump’s popularity, so Trump will generally lose sway over Republican politicians if he becomes less popular.

    EDIT: The Executive mostly gets to run foreign policy, so I think that regardless of what happens in Congress, aside from tariffs (which are important and are normally a Congressional power) and extended troop deployments, US foreign policy will probably continue to be largely directed by the Trump administration.

    EDIT2: Oh, winning the House will give the Democrats ability to block and thus horse-trade on the federal budget. They did so before, but that was relying on the fillibuster. The Senate can always eliminate the power; it’s simply a convention built on internal rules set by a simple majority in the Senate itself, which is presently controlled by the Republicans. While adverse to breaking with convention, in a serious enough case, a majority in the Senate could choose to simply remove that power from the minority. In contrast, there is no recourse if the House doesn’t want to pass a budget. Pretty much all of what the President does depends on having funds to do it, and he doesn’t get money unless Congress chooses to give it to him, so while it’s not a very flexible tool, it is a powerful one.


  • The point I’m making is that bash is optimized for quickly writing throwaway code. It doesn’t matter if the code written blows up in some case other than the one you’re using. You don’t need to handle edge cases that don’t apply to the one time that you will run the code. I write lots of bash code that doesn’t handle a bunch of edge cases, because for my one-off use, that edge case doesn’t arise. Similarly, if an LLMs is generating code that misses some edge case, if it’s a situation that will never arise, and that may not be a problem.

    EDIT: I think maybe that you’re misunderstanding me as saying “all bash code is throwaway”, which isn’t true. I’m just using it as an example where throwaway code is a very common, substantial use case.


  • I don’t know: it’s not just the outputs posing a risk, but also the tools themselves

    Yeah, that’s true. Poisoning the training corpus of models is at least a potential risk. There’s a whole field of AI security stuff out there now aimed at LLM security.

    it shouldn’t require additional tools, checking for such common flaws.

    Well, we are using them today for human programmers, so… :-)



  • Security is where the gap shows most clearly

    So, this is an area where I’m also pretty skeptical. It might be possible to address some of the security issues by making minor shifts away from a pure-LLM system. There are (conventional) security code-analysis tools out there, stuff like Coverity. Like, maybe if one says “all of the code coming out of this LLM gets rammed through a series of security-analysis tools”, you catch enough to bring the security flaws down to a tolerable level.

    One item that they highlight is the problem of API keys being committed. I’d bet that there’s already software that will run on git-commit hooks that will try to red-flag those, for example. Yes, in theory an LLM could embed them into code in some sort of obfuscated form that slips through, but I bet that it’s reasonable to have heuristics that can catch most of that, that will be good-enough, and that such software isn’t terribly difficult to write.

    But in general, I think that LLMs and image diffusion models are, in their present form, more useful for generating output that a human will consume than that a CPU will consume. CPUs are not tolerant of errors in programming languages. Humans often just need an approximately-right answer, to cue our brains, which itself has the right information to construct the desired mental state. An oil painting isn’t a perfect rendition of the real world, but it’s good enough, as it can hint to us what the artist wanted to convey by cuing up the appropriate information about the world that we have in our brains.

    This Monet isn’t a perfect rendition of the world. But because we have knowledge in our brain about what the real world looks like, there’s enough information in the painting to cue up the right things in our head to let us construct a mental image.

    Ditto for rough concept art. Similarly, a diffusion model can get an image approximately right — some errors often just aren’t all that big a deal.

    But a lot of what one is producing when programming is going to be consumed by a CPU that doesn’t work the way that a human brain does. A significant error rate isn’t good enough; the CPU isn’t going to patch over flaws and errors itself using its knowledge of what the program should do.

    EDIT:

    I’d bet that there’s already software that will run on git-commit hooks that will try to red-flag those, for example.

    Yes. Here are instructions for setting up trufflehog to run on git pre-commit hooks to do just that.

    EDIT2: Though you’d need to disable this trufflehog functionality and have some out-of-band method for flagging false positives, or an LLM could learn to bypass the security-auditing code by being trained on code that overrides false positives:

    Add trufflehog:ignore comments on lines with known false positives or risk-accepted findings


  • I keep seeing the “it’s good for prototyping” argument they post here, in real life.

    There are real cases where bugs aren’t a huge deal.

    Take shell scripts. Bash is designed to make it really fast to write throwaway, often one-line software that can accomplish a lot with minimal time.

    Bash is not, as a programming language, very optimized for catching corner cases, or writing highly-secure code, or highly-maintainable code. The great majority of bash code that I have written is throwaway code, stuff that I will use once and not even bother to save. It doesn’t have to handle all situations or be hardened. It just has to fill that niche of code that can be written really quickly. But that doesn’t mean that it’s not valuable. I can imagine generated code with some bugs not being such a huge problem there. If it runs once and appears to work for the inputs in that particular scenario, that may be totally fine.

    Or, take test code. I’m not going to spend a lot of time making test code perfect. If it fails, it’s probably not the end of the world. There are invariably cases that I won’t have written test code for. “Good enough” is often just fine there.

    And it might be possible to, instead of (or in addition to) having human-written commit messages, generate descriptions of commits or something down the line for someone browsing code.

    I still feel like I’m stretching, though. Like…I feel like what people are envisioning is some kind of self-improving AI software package, or just letting an LLM go and having it pump out a new version of Microsoft Office. And I’m deeply skeptical that we’re going to get there just on the back of LLMs. I think that we’re going to need more-sophisticated AI systems.

    I remember working on one large, multithreaded codebase where a developer who isn’t familiar with or isn’t following the thread-safety constraints would create an absolute maintenance nightmare for others, where you’re going to spend way more time tracking down and fixing breakages induced than you saved by them not spending time coming up to speed on the constraints that their code needs to conform to. And the existing code-generation systems just aren’t really in a great position to come up to speed on those constraints. Part of what a programmer does is, when writing code, is to look at the human-language requirements, and identify that there are undefined cases and go back and clarify the requirement with the user, or use real-world knowledge to make reasonable calls. Training an LLM to map from an English-language description to code is creating a system that just doesn’t have the capability to do that sort of thing.

    But, hey, we’ll see.



  • There was a famous bug that made it into 95 and 98, a tick counter that caused the system to crash after about a month. It was in there so long because there were so many other bugs causing stability problems that it wasn’t obvious.

    I will say that classic MacOS, which is what Apple was doing at the time, was also pretty unstable. Personal computer stability really improved in the early 2000s a lot. Mac OS X came out and Microsoft shifted consumers onto a Windows-NT-based OS.

    EDIT:

    https://www.cnet.com/culture/windows-may-crash-after-49-7-days/

    A bizarre and probably obscure bug will crash some Windows computers after about a month and a half of use.

    The problem, which affects both Microsoft Windows 95 and 98 operating systems, was confirmed by the company in an alert to its users last week.

    “After exactly 49.7 days of continuous operation, your Windows 95-based computer may stop responding,” Microsoft warned its users, without much further explanation. The problem is apparently caused by a timing algorithm, according to the company.




  • tal@lemmy.todaytoSelfhosted@lemmy.worldWhere to start with backups?
    link
    fedilink
    English
    arrow-up
    6
    ·
    edit-2
    21 hours ago

    If databases are involved they usually offer some method of dumping all data to some kind of text file. Usually relying on their binary data is not recommended.

    It’s not so much text or binary. It’s because a normal backup program that just treats a live database file as a file to back up is liable to have the DBMS software write to the database while it’s being backed up, resulting in a backed-up file that’s a mix of old and new versions, and may be corrupt.

    Either:

    1. The DBMS needs to have a way to create a dump — possibly triggered by the backup software, if it’s aware of the DBMS — that won’t change during the backup

    or:

    1. One needs to have filesystem-level support to grab an atomic snapshot (e.g. one takes an atomic snapshot using something like btrfs and then backs up the snapshot rather than the live filesystem). This avoids the issue of the database file changing while the backup runs.

    In general, if this is a concern, I’d tend to favor #2 as an option, because it’s an all-in-one solution that deals with all of the problems of files changing while being backed up: DBMSes are just a particularly thorny example of that.

    Full disclosure: I mostly use ext4 myself, rather than btrfs. But I also don’t run live DBMSes.

    EDIT: Plus, #2 also provides consistency across different files on the filesystem, though that’s usually less-critical. Like, you won’t run into a situation where you have software on your computer update File A, then does a sync(), then updates File B, but your backup program grabs the new version of File B but then the old version of File A. Absent help from the filesystem, your backup program won’t know where write barriers spanning different files are happening.

    In practice, that’s not usually a huge issue, since fewer software packages are gonna be impacted by this than write ordering internal to a single file, but it is permissible for a program, under Unix filesystem semantics, to expect that the write order persists there and kerplode if it doesn’t…and a traditional backup won’t preserve it the way that a backup with help from the filesystem can.



  • Aside from the issues that the article notes, I am skeptical that this is gonna work from a business protection standpoint, if protectionism is the state’s goal.

    Say the issue is that VW cannot make EVs in Europe competitive with BYD in China. Labor or environmental regulation costs drive their costs up. Say BYD can make a car for 75% of what VW can.

    The EU says “okay” and sticks a price floor in the EU Customs Union at whatever VW is selling at.

    Ah, now the playing field is level! Or…is it?

    Yes, BYD can’t undercut VW on prices now. But it still has that cost advantage. What BYD is going to do is to spend that extra money on adding more desirable features to their car. So now, at the price floor, you’re going to have a lackluster VW model and a really spiffy BYD model. Okay, maybe VW can ride on their reputation for a bit, but at some point, if BYD is consistently putting out better cars at a given price point, that’s gonna affect consumer views.

    What I expect it will do is reduce the number of people buying EVs at the lower end of the market, where VW wasn’t making an entrant, so now those consumers will probably be getting a conventional vehicle instead of an EV.


  • However, investing in U.S. farmland has become popular among the ultra wealthy as a hedge against inflation and stock market volatility.

    There are lots of inflation hedges, and stock market volatility doesn’t matter much to someone who can ride it out.

    There are tax strategies around real estate, and I’d guess that one goal may be leveraging that. Like, IIRC historically farms got certain tax-advantaged status as regards estate taxes, because there were lots of small farmers and farmers thus had a lot of votes. Some of that law is, no doubt, still on the books, and the wealthy will have tax and estate planners who can exploit that. I can’t name specifics off-the-cuff, but I bet you that they’re there.

    searches

    https://www.mossadams.com/articles/2024/12/estate-tax-exemption-for-farmers-and-ranchers

    The primary reason heirs don’t need to sell the farm is that the federal government allows heirs to pay farm-related estate tax over time at a very low interest rate. Given the first $7 or $14 million of net value escapes all federal estate taxes, it’s only the excess that’s subject to the 40% estate tax.

    The executor of a qualifying estate elects under Section 6166 to defer paying a portion of the estate taxes. Normally, the estate tax is due in full nine months after the date of death. However, the portion of the estate tax related to active assets, such as a farm, can be deferred. The active farm assets must be at least 35% of the adjusted taxable estate.

    Yeah.

    So, let’s say you have, oh, $500 million in assets sitting around. You’re getting old and gonna die. Theoretically, when you die, estate tax kicks in. You can hand down maybe $14 million without smacking into estate tax, the lifetime gift tax exemption. But then you’re gonna pay 40% tax on the rest. That’s not the end of the world — if you put the stuff in an S&P 500 index fund, that’d be made up in about 8 years of market-rate returns, on average. But it’ll definitely slow things down. You gotta pay that each generation, and a generation averages a bit over 30 years.

    So what I bet the estate planners these guys have are doing is making them legally farmers, and defer their estate taxes. They gotta pay the IRS something, according to this page, but it’s effectively getting to borrow from the IRS at a really low rate. Then their heirs can use those assets that would have gone to the government in tax to make money in the meantime.

    Plus, there are other tax games that you can play with real estate. Instead of selling it, borrow against it, and no capital gains tax.

    Have income from some source and don’t want to pay income tax? Use depreciation on the farm as a deduction to offset that income, make it non-taxable.

    How much is that real estate worth? Well, now, that’s a complicated question. If you can get the tax authorities to buy an argument that it’s worth a lot less than fair market value, then you’re only paying estate tax on whatever the government will agree the value of the real estate is.

    According to the link I posted above, in Washington state, farms are completely exempt from state-level estate tax.

    Washington

    Farmers in Washington state are eligible for an unlimited farm deduction equal to 100% of the farm value under the state’s estate tax law, which has the highest rate in the country at 20% on taxable estates over $9 million.

    If certain conditions are met, the estate may deduct the total value of the farm from the estate tax return, potentially saving significant amounts in estate tax. Unlike federal rules, Washington state doesn’t require heirs to own the property for at least 10 years after death. After the decedent’s death, the heirs are free to do as they wish with the assets.

    So, say someone buys a lot of farmland before they die on the guidance of their estate planner. Now Washington state gets no estate tax from them. They can pass hundreds of millions or whatever in assets to their heirs, whereas someone else would have Washington state take a 20% cut.

    I’ve got no experience with buying farmland. But I strongly suspect that the reason that specifically very wealthy, elderly people would buy farmland is for tax purposes. Aiming to avoid taxes, especially estate tax. It’s not because farms are some sort of remarkable, amazing investment absent that.


  • I think that the problem will be if software comes out that’s doesn’t target home PCs. That’s not impossible. I mean, that happens today with Web services. Closed-weight AI models aren’t going to be released to run on your home computer. I don’t use Office 365, but I understand that at least some of that is a cloud service.

    Like, say the developer of Video Game X says “I don’t want to target a ton of different pieces of hardware. I want to tune for a single one. I don’t want to target multiple OSes. I’m tired of people pirating my software. I can reduce cheating. I’m just going to release for a single cloud platform.”

    Nobody is going to take your hardware away. And you can probably keep running Linux or whatever. But…not all the new software you want to use may be something that you can run locally, if it isn’t released for your platform. Maybe you’ll use some kind of thin-client software — think telnet, ssh, RDP, VNC, etc for past iterations of this — to use that software remotely on your Thinkpad. But…can’t run it yourself.

    If it happens, I think that that’s what you’d see. More and more software would just be available only to run remotely. Phones and PCs would still exist, but they’d increasingly run a thin client, not run software locally. Same way a lot of software migrated to web services that we use with a Web browser, but with a protocol and software more aimed at low-latency, high-bandwidth use. Nobody would ban existing local software, but a lot of it would stagnate. A lot of new and exciting stuff would only be available as an online service. More and more people would buy computers that are only really suitable for use as a thin client — fewer resources, closer to a smartphone than what we conventionally think of as a computer.

    EDIT: I’d add that this is basically the scenario that the AGPL is aimed at dealing with. The concern was that people would just run open-source software as a service. They could build on that base, make their own improvements. They’d never release binaries to end users, so they wouldn’t hit the traditional GPL’s obligation to release source to anyone who gets the binary. The AGPL requires source distribution to people who even just use the software.


  • I will say that, realistically, in terms purely of physical distance, a lot of the world’s population is in a city and probably isn’t too far from a datacenter.

    https://calculatorshub.net/computing/fiber-latency-calculator/

    It’s about five microseconds of latency per kilometer down fiber optics. Ten microseconds for a round-trip.

    I think a larger issue might be bandwidth for some applications. Like, if you want to unicast uncompressed video to every computer user, say, you’re going to need an ungodly amount of bandwidth.

    DisplayPort looks like it’s currently up to 80Gb/sec. Okay, not everyone is currently saturating that, but if you want comparable capability, that’s what you’re going to have to be moving from a datacenter to every user. For video alone. And that’s assuming that they don’t have multiple monitors or something.

    I can believe that it is cheaper to have many computers in a datacenter. I am not sold that any gains will more than offset the cost of the staggering fiber rollout that this would require.

    EDIT: There are situations where it is completely reasonable to use (relatively) thin clients. That’s, well, what a lot of the Web is — browser thin clients accessing software running on remote computers. I’m typing this comment into Eternity before it gets sent to a Lemmy instance on a server in Oregon, much further away than the closest datacenter to me. That works fine.

    But “do a lot of stuff in a browser” isn’t the same thing as “eliminate the PC entirely”.


  • You could also just only use Macs.

    I actually don’t know what the current requirement is. Back in the day, Apple used to build some of the OS — like QuickDraw — into the ROMs, so unless you had a physical Mac, not just a purchased copy of MacOS, you couldn’t legally run MacOS, since the ROM contents were copyrighted, and doing so would require infringing on the ROM copyright. Apple obviously doesn’t care about this most of the time, but I imagine that if it becomes institutionalized at places that make real money, they might.

    But I don’t know if that’s still the case today. I’m vaguely recalling that there was some period where part of Apple’s EULA for MacOS prohibited running MacOS on non-Apple hardware, which would have been a different method of trying to tie it to the hardware.

    searches

    This is from 2019, and it sounds like at that point, Apple was leveraging the EULAs.

    https://discussions.apple.com/thread/250646417?sortBy=rank

    Posted on Sep 20, 2019 5:05 AM

    The widely held consensus is that it is only legal to run virtual copies of macOS on a genuine Apple made Apple Mac computer.

    There are numerous packages to do this but as above they all have to be done on a genuine Apple Mac.

    • VMware Fusion - this allows creating VMs that run as windows within a normal Mac environment. You can therefore have a virtual Mac running inside a Mac. This is useful to either run simultaneously different versions of macOS or to run a test environment inside your production environment. A lot of people are going to use this approach to run an older version of macOS which supports 32bit apps as macOS Catalina will not support old 32bit apps.
    • VMware ESXi aka vSphere - this is a different approach known as a ‘bare metal’ approach. With this you use a special VMware environment and then inside that create and run virtual machines. So on a Mac you could create one or more virtual Mac but these would run inside ESXi and not inside a Mac environment. It is more commonly used in enterprise situations and hence less applicable to Mac users.
    • Parallels Desktop - this works in the same way as VMware Fusion but is written by Parallels instead.
    • VirtualBox - this works in the same way as VMware Fusion and Parallels Desktop. Unlike those it is free of charge. Ostensible it is ‘owned’ by Oracle. It works but at least with regards to running virtual copies of macOS is still vastly inferior to VMware Fusion and Parallels Desktop. (You get what you pay for.)

    Last time I checked Apple’s terms you could do the following.

    • Run a virtualised copy of macOS on a genuine Apple made Mac for the purposes of doing software development
    • Run a virtualised copy of macOS on a genuine Apple made Mac for the purposes of testing
    • Run a virtualised copy of macOS on a genuine Apple made Mac for the purposes of being a server
    • Run a virtualised copy of macOS on a genuine Apple made Mac for personal non-commercial use

    No. Apple spells this out very clearly in the License Agreement for macOS. Must be installed on Apple branded hardware.

    They switched to ARM in 2020, so unless their legal position changed around ARM, I’d guess that they’re probably still relying on the EULA restrictions. That being said, EULAs have also been thrown out for various reasons, so…shrugs

    goes looking for the actual license text.

    Yeah, this is Tahoe’s EULA, the most-recent release:

    https://www.apple.com/legal/sla/docs/macOSTahoe.pdf

    Page 2 (of 895 pages):

    They allow only on Apple-branded hardware for individual purchases unless you buy from the Mac Store. For Mac Store purchases, they allow up to two virtual instances of MacOS to be executed on Apple-branded hardware that is also running the OS, and only under certain conditions (like for software development). And for volume purchase contracts, they say that the terms are whatever the purchaser negotiated. I’m assuming that there’s no chance that Apple is going to grant some “go use it as much as you want whenever you want to do CI tests or builds for open-source projects targeting MacOS” license.

    So for the general case, the EULA prohibits you from running MacOS wherever on non-Apple hardware.