overbyte's recent activity

  1. Comment on AMD officially confirms no more Windows 10 chipset driver and support for next gen Ryzen in ~tech

    overbyte
    Link Parent
    Citrix Workspace is officially supported on Linux and I've had jobs where we only had access to Citrix desktops that I've accessed over Fedora. The one fix I had to do is getting libunwind with...

    Citrix Workspace is officially supported on Linux and I've had jobs where we only had access to Citrix desktops that I've accessed over Fedora.

    The one fix I had to do is getting libunwind with newer versions of Workspace, because Microsoft Teams (surprise) has special treatment with Citrix.

    4 votes
  2. Comment on AMD officially confirms no more Windows 10 chipset driver and support for next gen Ryzen in ~tech

    overbyte
    Link Parent
    I don't see this as a problem because provisioning consistent systems at scale should be done by automation anyway, or setup in a platform independent way like containers. And wholesale renaming...

    Great for a personal environment, terrible for production ones because now you've got to make sure every machine you hit has those aliases.

    I don't see this as a problem because provisioning consistent systems at scale should be done by automation anyway, or setup in a platform independent way like containers.

    And wholesale renaming grep to filter I'd argue is much worse, because the change has to outweigh rendering years of existing printed documentation invalid and makes a relatively uncommon word much harder to find with of the current state of enshittified mainstream search engines. I encountered this myself when searching for discussions around Control (the game). It just becomes a "formerly known as Twitter" mess for something you can setup an alias or symlink for.

    Completely stopping all progression

    It's open source, no one's stopping anything. There's plenty of new tools like ugrep and ripgrep that build off existing grep conventions, convenience tools like zgrep, and the current iteration of egrep and fgrep are completely different from their original Unix incarnations when their functionality was provided in separate binaries. It certainly hasn't stopped anyone writing new shells or alternative tools even if bash and coreutils are de facto standard.

    FOSS lives on scratching its own itch, so if there was a very hard need for a completely verbose implementation of coreutils (or busybox at least) it essentially would've existed by now. Even then adoption will still have to match up against existing tools like say, Powershell Core which can be set as a default shell.

    3 votes
  3. Comment on AMD officially confirms no more Windows 10 chipset driver and support for next gen Ryzen in ~tech

    overbyte
    Link Parent
    That's what shell aliases are for. What people call tech debt, I call decades of muscle memory. One of the key strengths of Linux was carrying over a lot of Unix conventions. From Solaris 9 days,...

    That's what shell aliases are for.

    What people call tech debt, I call decades of muscle memory. One of the key strengths of Linux was carrying over a lot of Unix conventions.

    From Solaris 9 days, I essentially learned tools like grep and vi "once" and occasionally just need to keep updated on new syntax that might be helpful, otherwise I can still keep being stubborn and do things the old way. And I'm confident my scripts, personal and professional will still work unchanged for the next decade and do the things they need to do.

    Last major tool change I had to relearn was the deprecation of ifconfig to ip (net-tools).

    In that time, Microsoft has wholesale changed the Azure cmdlets like what, 2 times now with major provider updates (AzureRM to Az). And there's still constant breaking syntax changes between major revisions of the current cmdlet. Frankly, I have better things to do than fix up scripts because CleanupPolicy became CleanupPolicyRetentionDescription

    There's also decades of documentation that still remain relevant because of this "archaic" system. I can reference Unix man pages or mailing lists from the 90s to navigate around a modern Linux system at a reasonable level.

    14 votes
  4. Comment on Games where the campaign serves as the tutorial? in ~games

    overbyte
    Link
    Call of Duty 4 campaigns onwards serve as these giving you a taste of some mechanics you'll use in multiplayer. Some like Black Ops 2 and Infinite Warfare give you a choice of loadouts and...

    Call of Duty 4 campaigns onwards serve as these giving you a taste of some mechanics you'll use in multiplayer. Some like Black Ops 2 and Infinite Warfare give you a choice of loadouts and gradually unlock perks to take before a mission.

    Diablo II onwards have the campaign as the leveling phase before you start the endgame grind.

    Co-op shooters like Left for Dead and Warhammer Vermintide have multiple campaigns that are loosely connected by discrete chapters/missions. The endgame is essentially replaying the missions over and over trying to get better numbers and times on each.

    Unreal Tournament and Quake III Arena campaigns are essentially bot matches portrayed as a tournament taking you through various maps and game modes.

    2 votes
  5. Comment on Tildes as a bug tracker in ~tildes

    overbyte
    Link
    I've made Tildes run in a container, but that's the most recent of my tinkering with it. I like to have tools do very specific functions, so while it's not impossible to modify Tildes into a bug...

    I've made Tildes run in a container, but that's the most recent of my tinkering with it.

    I like to have tools do very specific functions, so while it's not impossible to modify Tildes into a bug tracker with enough structured fields, aggregator views and a proper compact view, it's a question of if the effort to redo these features is better spent elsewhere compared to customizing an existing bug tracker. Bugzilla and MantisBT (with a plugin) also have voting functions.

    If I want threaded discussion on bug reports then I'd tackle this by disabling comments on the bug tracker and put a link to a long-lived auto-created thread on a discussion platform instead. There it can be talked out and you get to use the strengths of both tools and the discussion doesn't clog up the bug report.

    If this was soliciting public feedback on a project (like an early access game) then I'd go further and just not let users write and see directly your bug tracker, or use an intentionally limited feature suggestion and upvote tool like Fider instead. The general public isn't trained for QA and on the dev side it will just decrease the signal to noise ratio of reported bugs and cleaning them up if you have limited manpower.

    6 votes
  6. Comment on How are you dealing with AI generated results in your searches? in ~tech

    overbyte
    Link
    For recipes where the search results are absolutely infested with them, I've pretty much given up and just lean to a handful of sites now to grab recipes from, some specific YouTube channels and...

    For recipes where the search results are absolutely infested with them, I've pretty much given up and just lean to a handful of sites now to grab recipes from, some specific YouTube channels and relatives who were professional cooks/bakers for technique.

    Back then I used site-cleaning extensions but plenty of the recipes turned out bland or mediocre even if salted to taste and require extensive adjustments. Turns out many are just recipe blogs for the sake of recipe blogs.

    Now I go with a simple rule that if I can't see the ingredients list below the fold, I'm out.

    So that becomes mainly BBC Good Food because they're in metric and have baking recipes by weight. I'll maybe occasionally spend the mental bandwidth to translate recipes to metric and country standard cup sizes for proven known quantities, like Chef John's stuff on Allrecipes.

    6 votes
  7. Comment on What games have you been playing, and what's your opinion on them? in ~games

    overbyte
    Link
    Currently "playing" Godot 4.2 (the editor itself is built on the engine). I have some light programming background in backend Python code for internal company web APIs and the occasional Go app to...

    Currently "playing" Godot 4.2 (the editor itself is built on the engine). I have some light programming background in backend Python code for internal company web APIs and the occasional Go app to bake custom sysadmin automation into a binary, but still nothing too special and someone who just came out of a CS course would likely know more than me. 2D is currently just enough challenge, so I'm a long way from dabbling in 3D yet. I don't know enough to dig into the intricacies compared to Unreal or Unity, so this impression is done in isolation.

    I have zero art skills, like many I just grab free asset packs from Kenney or OpenGameArt and string them together into a game.

    The editor is intuitive and doesn't overwhelm you with heaps of buttons and deep menus at a first glance. The UI is laid out in that you'll generally only encounter the features if you specifically work with them (ex: carving up a spritesheet, painting a level or setting up keyframes for an animation) but otherwise stays out of the way. I've hidden all the 3D stuff in the UI to make it even simpler. As a package it's surprisingly lean for having lot of integrated tools to reduce friction. It has a basic code editor (easy to hook an external one if you want), a tilemap editor, spritesheet parser, an animation editor, plus the usual like a particle effects generator.

    2D project defaults seemed to lean very slightly towards platformers like a default gravity and texture filtering is on so you'll need to disable that to keep pixel art crisp, but nothing that can't be changed in a few clicks. Overall for 2D, a lot of sensible defaults that just lets you dive in and start working.

    The scene/node system is an absolute joy to use once the concept clicks. You compose reusable building blocks of the game with nodes (say a character sprite and its hitbox make up one node each) and make a tree of them into a scene (a character). Then you put this scene (or multiple copies of it) into other scenes (say, a level scene) to build out the rest of your game. If you've used the Group/Ungroup function in Microsoft Office to keep shapes/objects together and make copies of them, you're pretty much there on how the scene/node system works.

    It works very naturally with the bottom-up approach of game development where you start out with basic features and layer them on to achieve mechanical complexity. Then you can do scene inheritance to rapidly create multiple types of things controlled by common logic. Given how modular these scenes can be made, you can test them individually or combining sets of them together which allows for very fast iteration.

    Just like cooking and gardening, there's a particular joy I've found in production instead of just consumption of content even if it's some of the most simple games ever made. It's my current go-to activity to keep my brain occupied.

    After a few days of cranking out variations of shmups, platformers and action RPGs, some of my takeaways and quick notes about gotchas and figuring things out coming from a non-game dev background:

    • Vector math and trigonometry, no way around it. There will be math. Shooty, bouncy and curvy things are slightly more math. From there, you can get fancy with Bezier curves to procedurally generate clumps of asteroids in a space sim, or linear interpolation to smooth out camera movements in an RPG.
    • Switching to the mindset of expressing angles in radians instead of degrees. There's converter functions, but working with radians makes a lot of equations simpler and more natural once you get the hang of it.
    • There's a handy and easy to use built-in A* library for pathfinding.
    • Translating the wealth of Godot 3 tutorials into Godot 4, there's a quite a bit that's changed between the two that you need to adapt. Personally I find it a good learning exercise as well, so I don't outright disregard tutorials from a previous version and try to make it reasonably work in the newer version (ex: instance vs instantiate or how the options for tweaking particle effects have been rearranged)
    • Input.get_vector is a powerful one-liner to get instant 8-way directional input with keyboard/controller/joystick movement and support circular deadzones. It replaces chunky if statements you've seen from older tutorials that manually check which input does what and having to do vector math on axes to get a normalized direction just to do basic movement. You're still free to roll your own input handling if you're building the next Elite Dangerous, since it doesn't do the Z axis.
    • Plan out how to centralize game constants like base move speed or screen size, so you only need to make them once and reference them everywhere.
    • Use clamp to handle operations on numbers like HP to a known range, so you don't get bugs like a powerup increasing HP beyond the designed value and is simpler than having to write a conditional to handle edge cases.
    • Use signals from the start to organize and decouple your scripts. When you have enough scenes and scripts, it can be a challenge to trace which script handles what logic. Ex: in the enemy script, fire off a signal to trigger player damage and only have the player script actually handle that logic. Then have your UI script also listen to that signal so it can update accordingly.
    • Only works with the built-in editor: Ctrl + drag a node or multiple nodes into the code editor to quickly setup a reference for that node in your current script. You'll use this a lot.
    • Setup the special reset track for animations. Playing an animation physically changes its live properties, so if an animation hides a sprite (ex: a muzzle flash effect) it actually hides it from the scene. The engine uses the reset track as the reference for the default pre-animation state and saves a lot of headaches when trying to animate things in the editor.
    • Also on animations, the looping buttons on the AnimationPlayer dock aren't just for previews, they're actual properties of the actual animation itself. Check this if you have bugs with animations continuing to play when they shouldn't. It's like the "One Shot" option on particle nodes physically affecting the editor preview itself.

    Some standout videos I've used as a reference:

    16 votes
  8. Comment on What could be Microsoft's larger game plan or agenda with CoPilot? in ~tech

    overbyte
    Link Parent
    Cover letters tailored to the company and the skills they need. Tweaking an initial draft generated by ChatGPT saves me around 70% of the effort. Also useful for light brainstorming if I don't...

    Cover letters tailored to the company and the skills they need. Tweaking an initial draft generated by ChatGPT saves me around 70% of the effort.

    Also useful for light brainstorming if I don't have anybody else around that share my interests in that topic. I dabble in worldbuilding, so having an LLM that can "talk" to me by generating large amounts of prose given the world parameters I've provided helps greatly when trying to fine tune aspects of that world. In this case hallucination doesn't matter and is in fact encouraged since I want it to make something up for me given the constraints.

  9. Comment on What could be Microsoft's larger game plan or agenda with CoPilot? in ~tech

    overbyte
    Link Parent
    As someone who had to wrangle fragile Kofax Capture (enterprise software that does industrial-grade bulk scanning and OCR of massive stacks of paper to digitize them) installs for an enterprise...

    As someone who had to wrangle fragile Kofax Capture (enterprise software that does industrial-grade bulk scanning and OCR of massive stacks of paper to digitize them) installs for an enterprise back then before they added all the RPA stuff, I don't know why we (the collective we) insist on having these proprietary "no-code" messes when we already have a form for terse and explicit instructions for a computer to execute, aka code.

    Short of tutorial languages like Scratch, there's no academic pipeline for proprietary no-code software about data structures and algorithms, can't use existing tools for running tests, hard to debug because there's nothing else out there, and generally goes against decades of computer science concepts that you're supposed to be able to tap from.

    It's like these companies insist that people are allergic to typing things but writing Excel formulas seem to the one great exception. I don't recall anybody trying to make drag/drop no-code versions to completely avoid typing out Excel formulas.

    6 votes
  10. Comment on Does anyone have experience or advice on cutting sugar consumption? in ~health

    overbyte
    Link
    I've tapered off sugar 5 years ago and I can't stomach soda and most pastries now since they're so sweet. I'm at the point where I have to water down most store-bought juice to be able to drink...

    I've tapered off sugar 5 years ago and I can't stomach soda and most pastries now since they're so sweet. I'm at the point where I have to water down most store-bought juice to be able to drink it.

    Funny enough it happened naturally because I was trying to maintain a high fiber diet and my original goal was not constantly feeling hungry. It stuck and cutting out snacks and drinking more water just kind of happened instead of having be consciously mindful of it which is nice. The lingering painful threat of constipation if you didn't drink enough water on a high fiber diet was enough motivation for me!

    The other realization was learning to bake and I balked at how much sugar many cake and even bread recipes have. Having to bake multiple cakes and large batches of cookies for friends and family and I'm just utterly amazed and horrified at having to go through bags of sugar with my own eyes.

    2 votes
  11. Comment on University suspends students for AI homework tool it gave them $10,000 prize to make in ~tech

    overbyte
    Link Parent
    Court Watch has it open for now. Their About page says they paywall older articles instead.

    Court Watch has it open for now. Their About page says they paywall older articles instead.

    8 votes
  12. Comment on Microsoft confirms Windows 11 Recall AI hardware requirements in ~tech

    overbyte
    Link Parent
    They already have it in some form with Viva Insights. I can see this feature being rolled up into that as an OS-wide tool in the never ending quest of business metrics, right on the employee's own...

    They already have it in some form with Viva Insights.

    I can see this feature being rolled up into that as an OS-wide tool in the never ending quest of business metrics, right on the employee's own work PCs.

  13. Comment on Assassin's Creed Shadows | Official world premiere trailer in ~games

    overbyte
    Link
    On one hand, Ubisoft is helping to keep VFX studios afloat with these cinematic trailers. Inevitable Ghost of Tsushima comparisons aside, I'm getting "we have John Blackthorne at home" vibes with...

    On one hand, Ubisoft is helping to keep VFX studios afloat with these cinematic trailers.

    Inevitable Ghost of Tsushima comparisons aside, I'm getting "we have John Blackthorne at home" vibes with Yasuke. I'm definitely not expecting much of the character writing especially when the TV show is still fresh in people's minds.

    I'm still expecting the Ubisoft AAAA Game until proven otherwise: frontloaded epic intro, transition to the infamous open world gameplay, a third act that feels like it was scrambled together at the last minute, then unsatisying or cliffhanger ending to sell the story continuation via DLC.

    8 votes
  14. Comment on Is Emacs or VIM worth learning in today's day and age? in ~comp

    overbyte
    Link Parent
    And it might be a joke, but this vimtutor speedrun shows how fast you can move with the editor once you get used to the keybindings.

    And it might be a joke, but this vimtutor speedrun shows how fast you can move with the editor once you get used to the keybindings.

    3 votes
  15. Comment on Google Cloud accidentally deletes UniSuper’s online account due to ‘unprecedented misconfiguration’ in ~tech

    overbyte
    Link Parent
    We had automated rebuilds of database instances for that reason. It's paid off hard in catching a lot of gotchas before we actually needed the backups, like sorting out the order of restoring and...

    We had automated rebuilds of database instances for that reason.

    It's paid off hard in catching a lot of gotchas before we actually needed the backups, like sorting out the order of restoring and loading encryption keys so the backups could be decrypted, or pinning down pymongo to specific versions so we can rebuild a replicaset of an ancient version of MongoDB (3.x) that we need to keep running until the data has been migrated off.

    6 votes
  16. Comment on Starfield: May update in ~games

    overbyte
    (edited )
    Link Parent
    Yeah I've done all of that like initiating jumps from the cockpit, but I still would've preferred at least even an Elite Dangerous style smoke and mirrors with how that game handled moving a ship...

    Yeah I've done all of that like initiating jumps from the cockpit, but I still would've preferred at least even an Elite Dangerous style smoke and mirrors with how that game handled moving a ship around a world at different scales, specifically the supercruise system.

    So you'd have your standard on-foot Bethesda open world scale that we have now, then transition to cells for the ship control parts that already exist like station approach, ship combat or low orbit.

    Ideally I'd like another open world "map" that's the equivalent of supercruise where instead of moving a character around in a wasteland, you move your ship around a streaming set of cells with textures of planets and stars around you. Elite Dangerous doesn't even let you land seamlessly at planets or dock at stations from interplanetary travel, you essentially have to instance into the planet or stations immediate surroundings by dropping out of supercruise. You solve the random encounter/space POI problem by things pulling you out of supercruise, then you can influence that with things already in the game like speech checks.

    3 votes
  17. Comment on Starfield: May update in ~games

    overbyte
    Link
    The land vehicle is just giving me Mass Effect 1 Mako vibes and not in a good way. Exploring a procedurally generated square area with a whole lot of nothing in between. I've long finished the...

    The land vehicle is just giving me Mass Effect 1 Mako vibes and not in a good way. Exploring a procedurally generated square area with a whole lot of nothing in between.

    I've long finished the game and put it down. My main gripe was the lack of immersion especially with ship travel in a space game. I'm not expecting Star Citizen quantum travel, but at least something that conveyed your ship is somewhat seamlessly moving between systems that hides a chunk of the loading screens. Freelancer had jump gates that hid the loading screen behind the jump effect, so you got instant jumps if you loaded the next sector quickly.

    The most minimal example is how Ratchet & Clank Rift Apart and Jedi Fallen Order handled it with a diegetic starmap and how it kept your view mostly within the ship and shifted the skybox around. Fallen Order had an additional trick to fade the skybox to white to quickly transition between takeoff and low orbit.

    And then my other minor gripe is the ship density on the ground compared to everything they show in low orbit. If you want me to work with the "one city per planet" stretch of lore that they went with (especially when the rest of the planet is physically explorable and you have a star-spanning civilization) then the capital cities needed to look way more busy with ship trade traffic at least. I loved the first area in Rift Apart (Nefarious City) after you finish the prologue for that reason. So many ships and set dressing flying around aside from NPCs walking around that it actually felt like a bustling city.

    11 votes
  18. Comment on What programming/technical projects have you been working on? in ~comp

    overbyte
    Link Parent
    Back in the day setting up a new app means rack server hardware, install OS, install app. With the transition to virtual machines, the industry has reduced the physicality of getting...

    Back in the day setting up a new app means rack server hardware, install OS, install app. With the transition to virtual machines, the industry has reduced the physicality of getting infrastructure up and running. Provision VM, install OS, install app. Benefits are better hardware utilization and reducing costs by running multiple VMs on the same hardware.

    When you reach enough VMs, you'll need a coordinated way to manage them so this is where config management tools like Ansible/Puppet/Chef come in. Instead of hand-tuning servers, you write what you want your infrastructure to be in code and you get said tool to execute it, so now you get software development benefits like tests, reviews and reusability if you say, want to provision 10 identical web servers.

    With the arrival and popularity of cloud services where running static things 24x7 leads to big bills, there's another shift from virtualizing the hardware (the VM) up one level to the OS itself (containers). So you have a VM that runs an engine like Docker to run multiple containers on it. Benefits are similar in that you can cram more things in the same space as before, as well as isolation. If you have apps that need specific versions of Python/Java/PHP/whatever, compared to installing those apps on separate VMs and or on one and dealing with dependency/package manager hell you run them in separate containers on the same box, the only prerequisite is Docker itself.

    Cloud services are designed to be elastic. Scales up and down with use, pay as you go and use only what you need. If you say, don't need to run 5 VMs in the Asia-Pacific region after 5pm, you can setup automation to delete them and spin up new ones at 8am tomorrow. If your apps are in containers and they're hosted on one VM and it gets wiped (or you need to take it down for patching), you have a problem. So now you need a way to ensure you have enough containers and their underlying VMs running to keep your services up and available.

    When you are at that scale that you have enough containers that run your business apps spread across an ever-changing dynamic pool of VMs, you'll need a coordinated way to manage them. You can probably roll your own solution to all of that, but this is where an orchestrator like Kubernetes comes in.

    The jargon is part of the ecosystem, but it's also designed to solve very real problems with application compatibility and scaling on top of ever changing dynamic pool of infrastructure. Cattle, not pets. The unfortunate case is some companies have taken into jumping on the tech trend without assessing their needs because that stack comes with a base level of complexity to solve some particular multiple hard problems when running at scale.

    2 votes
  19. Comment on What programming/technical projects have you been working on? in ~comp

    overbyte
    Link Parent
    Working with plenty of large-scale production clusters on GKE where we actually used the scale, once you get past all the ecosystem-specific jargon I'd also boil it down to essentially shiny new...

    Working with plenty of large-scale production clusters on GKE where we actually used the scale, once you get past all the ecosystem-specific jargon I'd also boil it down to essentially shiny new ways of doing old things.

    Coming from an Ansible/static VM-based traditional sysadmin background herding packaged enterprise apps with terrible vendor support websites, I (and my bank account) overwhelmingly prefer the crazy stack way in a lot of cases especially if the company develops in-house apps (SaaS company or the like).

    Like if I have a herd of apps that write to standard streams, I can route cluster-wide logging to whatever centralized log shipping system the company has that day instead of having to deal with log files strewn across hundreds of VMs or making sure I have filebeat up and running on the VM first. Or how Kubernetes DaemonSets take out a lot of complexity in the traditional way of running Ansible plays (or similar config management tool) to provision something in a new VM. I essentially just say "run X in every node labeled Y" and the cluster does it.

    2 votes
  20. Comment on I made a mistake, I started using Reddit again in ~talk

    overbyte
    Link Parent
    Reddit taking on image and video hosting instead of leaving that sole burden to Imgur was a great step in blowing out their costs

    Reddit taking on image and video hosting instead of leaving that sole burden to Imgur was a great step in blowing out their costs

    10 votes