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

help-circle
  • Not sure about jellyfin, but I assume it uses ffmpeg? The M1 is fast enough that ffmpeg can re-encode raw video footage from a high end camera (talking file sizes in the 10s of gigabyte range) an order of magnitude faster than realtime.

    That would be about 20W. Apparently it uses 5W while idle — which is low compared to an Intel CPU but actually surprisingly high.

    Power consumption on my M1 laptop averages at about 2.5 watts with active use based on the battery size and how long it lasts on a charge and that includes the screen. Apple hasn’t optimised the Mac Mini for energy efficiency (though it is naturally pretty efficient).

    TLDR if you really want the most energy efficient Mac, get a secondhand M1 MacBook Air. Or even better, consider an iPhone with Linux in a virtual machine - https://getutm.app/ - though I’m not sure how optimsied ffmpeg will be in that environment… the processor is certainly capable of encoding video quickly, it’s a camera so it has to be able to encode video well.


  • This. My Mac has 16GB but I use half of it with a Linux virtual machine, since I use my Mac to write Linux (server) software.

    I don’t need to do that - I could totally run that software directly on my Mac, but I like having a dev environment where I can just delete it all and start over without affecting my main OS. I could totally work effectively with 8GB. Also I don’t need to give the Linux VM less memory, all my production servers have way less than that. But I don’t need to - because 8GB for the host is more than enough.

    Obviously it depends what software you’re running, but editing text, compiling code, and browsing the web… it doesn’t use that much. And the AI code completion system I use needs terabytes of RAM. Hard to believe Apple’s one that runs locally will be anywhere near as good.


  • You don’t need metaphors. It’s pretty simple.

    The Spotify app should have a button that takes you to their website, where you can sign up for a premium subscription.

    It doesn’t have one because Apple would kick Spotify out of the App Store.

    Also - all other links to the Spotify website (support, terms of service, privacy policy, etc) take you to pages where the main navigation of the website has been removed so that you can’t find the signup page. Because again, Apple bans that. For the longest time apps have not allowed to have any way for users to find a signup form on a website.

    That policy is now illegal in the EU (and a growing list of other countries) and Apple’s attempt at compliance is a new API - only available in Europe - that informs the user that they might be a victim of theft, fraud, etc before they get taken to a website that is deliberately sandboxed… supposedly to prevent theft/fraud/etc but more likely because it makes it really difficult for Spotify to link that signup with an existing free account.

    Oh and if Spotify opts to expose users to see that horror show… they’d have to pay tens of millions of dollars per year to Apple. They have so far refused to do so, meaning the new regulations have failed (well, they were failing, until the EU declared Apple’s compliance efforts insufficient).





  • what else do I get with something like CARROT that the default doesn’t offer

    More control over what data is highlighted as the primary metrics at the top of the report (or on widgets).

    Where I live the actual temperature and “feels like” temperature are often really far apart. Apps like Carrot can be configured to show “feels like” as the main temperature, but Apple only shows it if you scroll down all the way down past a bunch nearly useless stats like the sunset time (spoiler, it will be the same as yesterday) and how the current temperature compares to the historical average.

    Also, I live near the beach and want to know the tides. That’s almost more important than the temperature.




  • Apple has the target disk mode, but doesn’t the laptop need to be shut down for it to work?

    Modern Macs can’t do Target Disk Mode. If you had the right cables (thunderbolt or firewire) it was really fast, just as quick as a high end internal PCIe SSD.

    And yes, you did need to reboot - because the other computer had full arbitrary read/write access to the raw sectors on the drive with no safety checks or security. If you did that while the computer was running normally, you’d corrupt the data on the disk as soon as they both tried to do a write operation at the same time — and also TDM needed to be used with caution - the other computer could easily install a rootkit or steal all your saved passwords.

    It’s been replaced with “Mac Sharing Mode” which operates while the Mac is running normally, does have all the necessary algorithms in place to avoid corrupting the disk, full security to authenticate each read/write operation and block attempts to mess with system files, and therefore is orders of magnitude slower than TDM.



  • Some of us don’t like watching beloved musical instruments destroyed. We also don’t like how so many people think watching TikTok on an iPad is “music”.

    When my father died, my sister didn’t give a shit about the house. She just wanted the guitar - which our father (a drummer) inherited when the lead guitarist in his band died. The guitarist had two dozen guitars but was his favourite.

    It’s close to a century old, nobody knows what trade secrets the luthier who created it used to get that sound, and no other instrument sounds the same. It’s been used on stage in countless live performances on every continent in the world and has been used to record over a hundred songs in professional recording studios. It was used to play music at the funeral of both the previous owners and it’s literally impossible to replace.

    I get it, not every instrument is that special… but this instrument wasn’t that special either when the first guitarist ever picked it up. Nearly all instruments have the potential to become that special… and Apple created a video dedicated to destroying a bunch of them while also implying that listening to an MP3 is as good as an actual instrument. No way.


  • It was great, in 2017

    It hasn’t stopped being great. In fact it’s better than it ever was.

    We need better safe guards and checks so that some person can’t just delete France.

    The map is updated millions of times per day. There are checks in place, but minor edits don’t get much review especially if it’s something simple like “this street has a bus stop”. Deleting France, yeah someone would notice that change and block it. Most software doesn’t use the realtime map state - they use a slightly older version of the map in part to avoid using a version of the map that has been compromised.

    You really only see the current map state if you are editing the map.


  • Everything-but-Windows?

    No. Any device that implements a certain DHCP feature is vulnerable. Linux doesn’t support it, because most Linux systems don’t even use DHCP at all let alone this edge case feature. And Android doesn’t support it because it inherited the Linux network stack.

    I would bet some Linux systems are vulnerable, just not with the standard network packages installed. If you’re issued a Linux laptop for work, wouldn’t be surprised if it has a package that enables this feature. It essentially gives sysadmins more control over how packets are routed for every computer on the LAN.


  • That knowledge is mostly trivial. 7/10 repairs a regular Joe could do. Or worse comes to worse you can take it to a mechanic of your choosing.

    That’s not true anymore. Modern cars have really complex problems that even mechanics struggle to fix. Especially when it’s a software problem… usually those problems just never get fixed.

    As a software developer (not an automotive one) my take is the fix is to have everyone be running the same software, so that fifty thousand dollars diagnosing and fixing a problem for one car will result in it being fixed for all cars. Spread the cost out like that and it’s affordable. Otherwise it just won’t get fixed at all.

    Should we go back to basic cars? I think so yes… but then I ride a motorcycle that doesn’t even have water cooling or a battery. But most people aren’t like me. They want lane keeping cruise control/etc.


  • Sure - for example we migrated all our stuff from MySQL to MariaDB.

    It was completely painless, because all of the source code and many of the people who wrote that code migrated to MariaDB at the same time. They made sure the transition was effortless. We spent a months second guessing ourselves, weighing all of our options, checking and triple checking our backups, verifying everything worked smoothly afterwards… but the actual transition itself was a very short shell script that ran in a few seconds.

    I will never use a proprietary database unless it’s one I wrote myself and I’d be extremely reluctant to do that. You’d need a damned good reason to convince me not to pick a good open source option.

    My one exception to that rule is Backblaze B2. I do use their proprietary backup system, because it’s so cheap. But it’s only a backup and it’s not my only backup, so I could easily switch.

    I’m currently mid transition from MariaDB to SQLite. That one is more complex, but not because we did anything MariaDB specific. It’s more that SQLite is so different we have a completely different database design (for one thing, we have hundreds of databases instead of just one database… some of those databases are less than 100KB - the server just reads the whole thing into RAM and slow queries on our old monolithic database are less than 1 millisecond with this new system).

    never use anything vendor specific like stored procedures, vendor specific datatypes or meta queries

    Yeah we don’t do anything like that. All the data in our database is in a JSON type (string, number, boolean, null) with the exception of binary data (primarily images). It doesn’t even distinguish between float/int - though our code obviously does. All of the queries we run are simple “get this row by primary key” or "find all rows matching these simple where clauses. I don’t even use joins.

    Stored procedures/etc are done in the application layer. For example we don’t do an insert query anywhere. We have a “storage” object with simple read/write functions, and on top of that there’s an object for each model. That model does all kinds of things, such as writing the same data in different places (with different indexes) and catching “row not found” failures with an “ok, lets check if it’s in this other place”. That’s also the layer we do constraints which includes complex business rules, such as “even if this data is invalid — we will record it anyway, and flag it for a human to follow up on”.