• 2 Posts
  • 143 Comments
Joined 2 years ago
cake
Cake day: June 14th, 2023

help-circle
  • Reads like Intel will be using Nvidia’s stuff for integrated systems, and doesn’t say anything at all about discrete graphics cards.

    If you’re integrating a GPU, then it’s going to be either for a laptop, in which case performance-per-watt and total die size are very important, or it’s for a generic business PC, in which case ‘as cheap as they can get away with’ takes over. A B580 might be the best mid-range graphics card, but those aren’t the areas where it shines. Using someone else’s tech makes sense.


  • I got myself a remarkable after seeing a colleague use one and thinking they were cool. An astonishing price for what is essentially a kindle that you can write on, but that is essentially the entirety of its functionality right there. No web browser, no ebook integration, no keyboard, just a thing for scribbling notes with a big battery life. No distractions.

    As such, it’s completely ideal for my work diary, meeting notes, D’n’D notes, maps for games that I’ve been playing, random scribbles, all sorts. Quite a lot lighter than the thousands of sheets of paper that would be required otherwise. Also not as rude as popping open a laptop when you’re meeting someone - they can see you’re just making notes and writing to-dos.





  • I’d some plans to write my own e-pub reader, since all the existing ones are shite in their own way, but since e-pub files are secretly xhtml and css in disguise, it’s actually a hell of a job, much bigger than I’d anticipated.

    I don’t think making network requests for files nor parsing any of those formats is so difficult, and while the actual layout rules interact in a complicated way they’re not insurmountable. However, doing it securely and in a way that runs at an acceptable speed is much harder. Tokenizing JS and interpreting it isn’t so bad, but that’s not going to run a modern website with tens of thousands of lines of scripts. Displaying video with hardware acceleration? Best bust out some code.

    Moving to another protocol will either need the cooperation of everyone everywhere all at once, or since that’ll never happen, alternatively convincing all the major browser manufacturers to support both for a while so that other companies can enter the market, which will also never happen. Going to be a tough sell.



  • 4K for me as a developer means that I can have a couple of source files and a browser with the API documentation open at the same time. I reckon I could use legitimately use an 8K screen - get a terminal window or two open as well, keep an eye on builds and deployments while I’m working on a ticket.

    Now yes - gaming and watching video at 8K. That’s phenomenally niche, and very much a case of diminishing returns. But some of us have to work for a living as well, alas, and would like them pixels.




  • Was expecting it to be “vodka without beer is just waste of money”, in that case.

    Looking it up, most sources seem to have it the other way around - “beer without vodka”, as in there’s no point wasting money on drinking unless you’re going to do some hard drinking?




  • The Android dev kit includes a copy of QEMU that’s set up to emulate ARM with a selection of popular screen sizes and revisions of the OS, so that you can test your app on a variety of ‘potential phones’ before you upload it to the marketplace. Snapdragons are amazingly performant CPUs for how gently they sip at the battery, but they’re not that strong in the big scheme of things - any random x86 processor should be able to emulate them while using fifty times the power. A Steam deck ought to be able to do it; the request will then be ‘we’d like to play Android games better’, which to me is a much more reasonable ask.



  • The ability to do some basic calculations is what was missing in CSS from the start, IMHO. You don’t want paragraph text to be too narrow or too wide as it would become unreadable, so a rule like “at least 20 ems, and then whichever is smaller of 100% or 80 ems centered on the page”. But that required either really convoluted layout and rules, or just to work it out with JS after the page is loaded.

    Would have been even better if we’d got Donald Knuth involved in the early CSS efforts, with some LaTeX-like attention to the details. There’s no reason that computers can’t render beautiful text, but it’s rare for one person to be an expert typesetter and an expert programmer.


  • I’ve used “Linux for work” and “Windows for gaming” for a long time, about twenty years now. Got fed up with Windows shitting itself on a regular basis, and made myself a new year’s resolution to try Linux-only gaming for a bit, see if it would work for me, and I never went back. That was in 2021, and it’s just been getting better and better.

    Linux Mint has always been an easy install, and putting Steam on top to get Proton is pretty trivial. A few things have made an amazing difference:

    • installing the official NVidia drivers used to be a pain in the arse. Download them, stop your display manager, blacklist Nouveau, install them from the command line, restart and hope for the best. Awful. I’ve gone fully AMD, but I understand they’re pretty much a non-issue now.

    • Proton keeps getting better and better. Seriously, they fix compatibility with about 99% of the games that were broken every year, basically everything runs now. Maybe leave off buying anything with a tech-demo engine for a week, and accept that you won’t be playing stuff with certain anti-cheat, and it’s all good.

    • DXVK gets overlooked, but it’s amazing. Basically frame-for-frame with Windows on every game, and on some it’s better as it fixes intrusive stutter by precompiling. Can’t argue with that.



  • The ‘traditional’ way of storing a database is on a mainframe or supercomputer, where all the information is stored in tables with the information all uniquely stored, frequently containing id references to other tables. For instance, an ‘orders’ table would have a customer id in it, and the ‘customer’ table would have their name and address. The programming language for databases like that is SQL - PostGres and Oracle are examples. That model gives you a lot of advantages - the data is always consistent, changes are either made completely or not at all - but every query has to go through one machine, so performance can suck, and you waste a lot of time ‘joining’ tables together for certain kinds of query.

    If you’re storing eg. a blog with comments on it, that model doesn’t make sense. Each page has a varied selection of comments, comment will have a username and maybe their icon, which will rarely change, but will need to be evaluated by the database every time. It would make more sense to output the pre-rendered page as a JSON blob, and you could have a hundred machines with a few pages each to share the load. Updating people’s icons and adding new comments would need to be done by telling each machine to make a certain update if they’ve a copy of that page; you’d ‘eventually’ be consistent, but if you don’t care about that then you get a very scalable robust solution quite cheaply. Examples of such ‘NoSQL’ databases are MongoDB, Hadoop and DocumentDB.

    Linux foundation have looked at DocumentDB’s license and said ‘yes, free enough for us’, so they’ll adopt it.