Software Engineer, Linux Enthusiast, OpenRGB Developer, and Gamer

Lemmy.world Profile: https://lemmy.world/u/CalcProgrammer1

  • 0 Posts
  • 126 Comments
Joined 3 years ago
cake
Cake day: June 9th, 2021

help-circle
rss
  • I don’t use AliExpress often but for the commodities you want to stock your workshop with, it’s often cheaper per unit with cheap shipping so if you want to order a bunch of something it’s usually the way to go. Pre-COVID, clone Arduino Nanos were like $2 each on eBay but now they’re like $5 at minimum. On AliExpress you can still ocasionally get them cheaper. I needed a bunch of them for a project and had exhausted my pre-COVID stash so I got a bunch on AliExpress and they work fine. For the less common stuff I’d not waste the time and just get it from somewhere with faster shipping. eBay often has free shipping on stuff while Amazon needs a $35 minimum if you don’t have Prime, though I do make use of the free Prime trials and stock up when I get the offer.



  • Honestly, Mozilla has been peddling adware for a long time now. The writing has been on the wall. It started with putting sponsored links to Amazon on the Firefox home screen, then the shitty Pocket acquisition and the stupid featured stories/recommendations garbage, then the full screen Mozilla VPN ads…Firefox has been adware for a while. Use a fork that removes the bullshit. Switch to LibreWolf.


  • I’m not familiar with KDE’s new feature yet, but if it only supports sysfs LEDs then it won’t control 99% of keyboards. Few RGB keyboards have drivers that expose this interface. Most RGB keyboards are controlled from userspace on their official software on Windows, and that’s also what most Linux projects that control RGB devices including my OpenRGB project do. I wonder if it would be possible to write an OpenRGB plugin/script that exposes a virtual /sys/class/leds/openrgb device that KDE could talk to, then translate that into OpenRGB calls to set the color on all available devices. It doesn’t sound too difficult.




  • I like having a gaming laptop as it’s easier to grab and go to game at friends’ places. Sometimes I do like to bring my desktop and set up for a good old fashioned LAN party, but other times I want something quick. I also like having a laptop for working on projects on the go, connecting to devices for projects without having to relocate my desktop, etc. Traditional smartphones are too limited for most work and are only good for web browsing and communication tasks. Linux phones are too experimental to rely on but are getting better and better. I have done quite a bit of coding on my Linux phones but their use there is still somewhat limited. I also have a Steam Deck and it is better for gaming on the couch, on the go, or in bed, but it’s not really suitable for keyboard and mouse FPS gaming and it’s not convenient to do work (such as programming) on without external peripherals.




  • I find 1080p to be too small these days. For desktop use I like 1440p or 2160p (4K). For video, I don’t notice the difference between 1080 and 4K too much but for productivity it is a massive step up. My laptop is a 14" 1440p screen and I have an older laptop with a 13" 1440p screen. I use both with 100% scaling (no enlargement) and it’s fine. I don’t think it’s hard to see and I love having the extra screen real estate for coding and multitasking. Being able to have 2 windows side by side and still have enough room on each for a decent length line of code is great. For my desktop, I used a 28" 4K for a long time and being able to have 4 1080p windows open is amazing. 28" 4K is the same PPI as 14" 1080p, and I am already comfortable with 14" 1440p so from a reasonable distance it’s no problem. I went to a 27" 1440p for a while on my desktop after that because I upgraded to a 144Hz VRR display, but just last fall I again upgraded to a 32" 4K 144Hz VRR and it’s great. No problem with reading text at 100% scaling from a normal distance and it’s amazing for games. I do notice games being clearer at 4K but I mainly got the 4K monitor for productivity as I missed it and now that 144Hz 4K was available I wanted it back.




  • Dating apps are garbage these days but I am an indoor person. Tinder can be viable for real relationships. I met my girlfriend on there and we’re a perfect match. I had in my profile that I was a gamer and played Overwatch and within 10 minutes of chatting we were playing online and in voice chat. She messaged me first. Now we’re spending most nights and weekends together. Unfortunately what I did was pay the stupid troll toll that Tinder takes to have unlimited swipes and then just swipe right on literally everyone. Women tend to be more choosy on online dating than men, and having both parties have to choose each other is just another layer of shit to get through before having a conversation. It’s shitty but that’s how modern dating apps operate. The apps of 10 years ago were so much better than this shitty instagram picture first RNG powered gacha game bullshit we have today but you can still find truly amazing relationships with them.


  • Same. I started really using Linux with Ubuntu 6.06 and was drawn in by its “Linux for human beings” goals - the Ubuntu homepage of the era really pushed the ideals of community and openness. Canonical sat in the background paying to send you free CDs in the mail. It was such an idealistic thing back then.

    And then it all changed around 2010. The color scheme shifted to a shitty MacOS lookalike, the human elements were dropped, the logo was reworked, it got bundled with a paid music store, then Amazon ads in the search, and it’s been a roller coaster on a downward spiral ever since. I switched to Debian not long after the initial enshittification in the early 2010s and have not looked back, though I moved most of my systems to Arch a few years back because I like life in the fast rolling release lane and Debian wouldn’t support my new GPUs.



  • I would say we’re beyond the era of PC referencing the classic “x86 IBM Personal Computer compatible” definition. PC could reasonably be considered to include many ARM systems, considering there are now Windows laptops shipping with ARM processors that can run “PC” software. Besides, most new x86 PCs aren’t IBM PC compatible anyways as legacy BIOS support has been dropped by a lot of UEFI implementations. I would consider any device that runs a desktop style OS (be it Windows, Linux, or even MacOS) a PC. The distinction in my mind is specifically mobile vs. desktop. Android and iOS are not PC. They’re primarily touch driven and apps are restricted to a certain format with a centralized app store where you are expected to get all of your apps. Windows/Linux/MacOS are primarily keyboard and mouse driven and you have a lot more flexibility on acquiring new apps, with their forms of “sideloading” and “rooting/jailbreaking” being things that are just normal and accepted rather than workarounds/hacks to break out of the walled garden. I would also go as far as saying a smartphone can be a PC if you have a PC like OS on it, such as mobile Linux OSes that let you run desktop applications.


  • Squeekboard is where it’s at. By far my favorite onscreen keyboard for Linux and mainly because you can easily create your own layouts using .yaml files. I’m tired of virtual keyboards that omit keys needed for development and terminal use or shove them off to separate tabs. My custom Squeekboard layout fits my needs exactly and I’m pretty fast at typing on it (typing this on it now). I wish it were usable outside of Phosh, though tbf I haven’t tried. Between GNOME Mobile, KDE Plasma Mobile, and Phosh (Squeekboard), I choose Phosh primarily because of how much I like Squeekboard.


  • Except that in the case of VGA (and DVI, HDMI, and DisplayPort) the i2c interface is intended for use over the cable. All of those ports have a pair of i2c pins and corresponding wires in their cables. The i2c interface is used for DDC/EDID which is how the computer can identify the capabilities and specifications of the attached display. DDC even provides some rarely-used control functionality. Probably the most useful of which is being able to control the brightness of the display from software. I use the ddcci module on Linux and it lets me control my desktop monitor brightness the same way a laptop would, which is great. I have no idea why this isn’t widely used.

    Edit:

    This i2c interface is widely used to control the lighting on modern graphics cards that have RGB lighting. We’ve spent a lot of time reverse engineering these chips and their i2c protocols for OpenRGB. GPU chips usually have more i2c buses than the cards have display connectors, so the RGB chip is wired to one of the unused buses. I think AMD GPUs tend to have 8 separate i2c buses but most cards only use 4 or 5 of them for display connectors. There is also an i2c interface present on RAM slots normally used for reading the SPD chip that stores RAM module specifications, timings, etc. This interface is also used for RAM modules with controllable RGB lighting.


  • Yeah, the lack of proper discoverability on i2c truly sucks. You have to just poke random addresses and hope for the best to see if an i2c device exists on the bus. It’s a great standard but I wish it would get updated with some sort of plug and play autodetection feature. Standardized device PID/VID system like USB and PCI would be acceptable or a standardized register that returns a part string. Anything other than blindly poking registers and hoping you’re not accidentally overvolting the CPU or whatever because the register on your expected device overlaps with the overvolt the CPU register on the same address of a different device.


  • I mean, the open source driver already is out. The nouveau driver has been in the kernel for like a decade now. The userspace part has been in Mesa for just as long, though largely was unused due to nouveau not being able to use high clock speeds. That isn’t the case anymore, and since the beginning of the year you’ve been able to test drive the new NVK Vulkan driver on nouveau with GSP enabled to get actually reasonable performance in several select games. NVIDIA isn’t creating a new driver, they’re contributing to one that already exists. Since this particular patch set is so huge I don’t know it will make it into the next kernel release right away but this guy was the former nouveau maintainer, I expect he knows the necessary standards to get his code accepted.