AboutSpax ma fest die Scheiße!
SkillsC, assembly, embedded, electronics
Joined devRant on 5/26/2018
Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple APILearn More
Same procedure as last year? Same procedure as every year for the last truly static website holdouts: change the year in the template, re-compile, upload.2
C has too much undefined behaviour because the standards comittee was being lazy and slapped that on a lot of issues that ought to have been implementation defined instead.
The most ridiculous example for UB: An unmatched ' or " character is encountered on a logical source line during tokenization.
Like WTF, that should be a compile time error, and it's easy to detect.21
IBM decided to change the EOL of CentOS 8 from 2029 to 2021, then continue CentOS as useless RR testbed. What a nice attempt at forcing users into the paid RedHat version.
That's a risky move because Rocky Linux is already gearing up to replace CentOS, and the whole RedHat ecosystem could bleed out to Ubuntu, Suse, and Debian LTS. Well done, suits.16
A coworker asked me about a specific tool because he "had heard" that I had some experience with it, whether that tool would allow a certain use case, and whether there was some documentation.
Wait, in which project was that? None of mine anyway, hmmm... ah that one, from a few years ago. Who wrote the reports back then? Can you guess?
When I learnt programming, sugar was still made out of salt and hence not used in coffee.
Also, we didn't have source level debuggers, only the "print" method. However, compiling was also slow. It was faster and more convenient to go through the program and execute the statements in one's head. This helped understanding what code is doing just by reading it. It also kept people from trial and error programming, something that some people fall for when they resort to single step debugging in order to understand what their own code is even doing.
Compiling was slow because computers in general were slow, like single digit MHz. That enforced programming efficient code. It's also why we learnt about big Oh notation already at school. Starting with manual resource management helped to get a feeling for what's going on under the hood.20
For decades, the computer industry has been talking about replacing silicon in future chips.
AMD finally did it - all of their more recent chips are made of military grade unobtanium!8
For fucks sake, corporate IT has locked a database application for new entries because it will be phased out by the end of the year. However, the new application is not yet working.
The interim solution? An excel sheet on a shared network drive. In fucking 2020! Unbe-fucking-lievable!13
Continuation of the story with Linux Mint 20 Cinnamon on the old Core2 Duo with 2 GB RAM and HDD. The guy has had that PC under Linux for 1.5 months now, had never had Linux before, has no IT background, and is over 70.
Upon visit, I checked how the machine was doing. OK, he had forgotten to apply the updates, so I highlighted paying attention to the red icon in the tray. Launched the updates, all ran through.
Otherwise, he had managed to install Skype all by himself (network effect because of his family...) and had bought a webcam plus a microphone. Linux had just recognised everything without any fuzz. Even his Skype buddies were impressed, he said.
On top of that, he likes how much faster that PC is compared to his much more current Win 10 laptop and actually uses the old Linux PC more than the laptop.
He also enjoys that Linux doesn't do weird things all by itself all the time. That's not his experience with Win 10.13
Amdy didn't have it easy. He's just a little APU and was already outdated when he was manufactured. But it got even worse! He didn't do anything wrong, but upon assembly, they lasered a different part number on him.
He didn't think much about it, but then they denied him all the goodies his brothers got: a nice printed box, a cooler, a leaflet, and a sticker.
Amdy didn't get any of that and wasn't welcome in the boxed camp. Instead, they stuffed him into a shoddy tray cardboard box with just some ESD foam for the pins.
Amdy was disappointed. That was just not fair! He was capable like his brothers. To add insult to injury, not even the manufacturer wanted to give warranty on the poor ugly duckling. They didn't listen to his complaints and shipped him to an unknown fate.
Then our roads crossed because Amdy was 10 EUR cheaper than the boxed ones at that point. Little Amdy breathed heavily when he finally got out of the mini box and seemed a bit disoriented. Poor little sod, what did they do to you?
Then he spotted the cooler. He had never seen anything like this before, so much better than the coolers his boxed brothers had received! And even top of the line thermal paste!
Amdy decided to be as good and fast a processor as a small Zen+ APU could possibly be. What was that software stuff? Didn't look like Windows. Ooohhh - Amdy rejoiced when he figured out that he was supposed to run Linux!
And that's how a despaired and unhappy APU finally found a life full of goodness.6
I need new mobile hardware because my old netbook from 2010 just doesn't cut it anymore.
I've ordered this fellow here: https://tuxedocomputers.com/en/...
AMD 4700U (TDP 15 W), iGPU only, 2x16 GB 3200 RAM, 2 TB Evo 860. Delivery in November because APU-only laptops are totally hot RN.
Maybe I can install Mint on that if I go for a 5.8 mainline kernel. At least it has Intel wifi, not Broadcom.12
And just when you like Linux a little too much, it bites you in the ass to remind you why the year of the Linux desktop never happened.
Wifi printer is installed, CUPS test page works, even scanning works. But printing anything else results in the printer spitting out raw postscript with a few random lines per page.
Great. Looks like I'll have to print to PDF, then go to a copy shop and print because printing under Linux is still an unsolved issue.
And yes, that would have worked even with Windows 10. Fuck.26
So you're sitting on your crappy Win 10 and whine about that piece of shit, huh? You had five fucking years to come up with a plan, but noooo. Instead, you put your thumb up your asshole and hoped MS would change ways. Only that they didn't, and that's because they bet on people like YOU, and now you have to suck your dirty thumb.30
I love GDB on CLI!
I'm using an OSS tool for multi-threaded testing stuff, and it's nice but segfaulted after 30 minutes.
I was too lazy to set up an IDE project and click through tons of stupid shit, so I just compiled the tool with debug symbols, fired up GDB on CLI, let it run until a crash, got a strack trace and quickly found the problem.
I sent a bug analysis to the author, plus a patch which got accepted, done.6
I wanted to play Pirates under DOS back then, but it didn't have the left-handed mouse button switch like Windows.
So I opened the mouse, scratched the PCB button lines away, soldered wires cross-over, and had a left-handed mouse also under DOS.6
I'm astonished again. Linux isn't designed as GUI OS - where Windows has dynamic thread priorities for freshly woken up threads as to increase GUI snappiness.
Now, my CPU has four physical and eight logical cores for SMT. I'm running eight worker threads of some parallel testing stuff, and I'm glad that I chose the AMD 3400G over the 3200G. The CPU load is 100%. On top of that, MP3 audio, the browser, and I'm dd'ing an external USB3 HDD.
Holy shit, the browser is just as smooth as if the CPU were idle. No perceivable lag. I hadn't expected desktop Linux to be that great.
I'm also surprised that the CPU temperature doesn't exceed 44°C despite full load at 21°C ambient, and the cooling is inaudible. Sure, my cooler is massively over-dimensioned to achieve exactly that, but it's still amazing.
It's what I would have wanted ten years ago and only could approach somewhat, but now the tech is actually there.20
So, today for my SO's father who is already over 70 and wants to try Linux. However, he doesn't want Linux on his main PC for now, rather on the old one so that he can take his time to get familiar, which is a reasonable plan.
But holy crap, what a machine! Intel Core2 Duo 4400, 2 GB DDR2(!) RAM, 250 GB IDE(!) HDD, DVD RW drive. Graphics, sound and LAN integrated on the mobo chipset. It's half a miracle that it doesn't run on steam. The machine had been delivered with Vista and has always been painfully slow.
It doesn't even support booting from USB, but I had prepared a DVD just in case. Surprise: it booted from DVD without issues and with full HW support!
Partitioned and installed, deleted Vista in the process (felt good). I went with the full blown Mint 20 Cinnamon edition because XFCE isn't as beautiful. Also, having XFCE now and then Cinnamon looking different on the other PC would be confusing.
Installation took some time, but worked. Cinnamon's RAM usage is at 750 MB idle, and at 1.1 GB with Firefox started. Once the PC is booted, it runs pretty OK with reduced swappiness and noatime on all file systems, plus unnecessary startup applications disabled. Updates took long, but ran through successfully. Installed LibreOffice and some small games, Firefox got uBlock Origin, Youtube worked OOTB.
That PC somehow had escaped disposal several times - and now has a proper OS for the first time in its miserable existence. It runs so much better than it ever has. Just wow, a "big" Linux desktop from 2020 blows a contemporary Vista out of the water on such an old machine!33
I did it: I built up another PC identical to my machine (https://devrant.com/rants/2923002/...) for my SO and installed Linux Mint for her, too. That had been my primary motive for an easy and stable distro in the first place.
Now that didn't come out of the blue. We were discussing the end of Win 7 already two years ago where I brought up my concerns with Win 10 - mainly the forced, lousy updates and the integrated spyware, and that I was considering Linux as way out.
I had expected quite some pushback because she had been exclusively on Windows since the 90s. However, I didn't sell Linux as upgrade. It's just that Win 7 is over, progress under Windows as well, and we're in damage control mode. Went down pretty well.
Fast forward three weeks - remember, first time Linux user and no IT-geek:
- it just works, including web, videos, and music.
- she likes Cinnamon.
- nice desktop themes.
- Redshift is as good as f.lux.
- software installation is just like an app store.
- updates work via an easy tray icon.
- quote: "Linux is great!"
- given this alternative, she doesn't understand why people willingly put up with Win 10.
- no drive letters: already forgotten.
- popcorn for upcoming Win 10 disaster stories.
- why do Windows updates take that long?
- why does Windows need to reboot for every update?
- why does Windows hang in that update boot screen for so long?
I'm impressed that Linux has come so far that it's suitable for end users. Next in line is her father who wants to try Linux, but that will be a story for tomorrow.35
Downloaded Manjaro ISO to have a look and check hardware compatibility.
Rebooted and selected USB stick to start.
Piece of shit didn't boot.
Booted back into Mint.
Opened USB stick in Nemo - empty.
Ooops. I had forgotten to write the ISO to the USB stick.
Did that, worked wonders, Manjaro booted successfully.6
I noped out of the coffee communism in my company. It's always the same assholes who just take the last cup out of the thermos jug and don't set up a new one. I'm fed up with this shit, and the company coffee itself is also cheap. I'm with my French Press and custom coffee now.8
Had a customer call - the guy's name was "Kevin", which in Germany isn't even a name, but rather a diagnosis for stupidity. However, he was really competent and into the stuff. So what now, readjust my prejudice? Nah, he had an Asian family name, so I instead learnt that being of Asian ancestry trumps "Kevin" as given name.3
Got my new PC up and running!
CPU: AMD Ryzen 5 3400G (APU)
Cooler: Scythe Mugen 5
Mobo: Asus B450-F Gaming ROG Strix
RAM: Crucial Ballistix 2x16GB
SSD: Samsung 2TB M2 Evo 860
DVD: Plextor PX-891SAF
PSU: Bequiet Straight Power 11 550W
Case: Lancool PC-K58 (10 years old)
Case fans: Bequiet Silentwings 3 140mm (front), Silentwings 2 120mm (back)
The cooler is massively oversized for the CPU, but perfect for a silent PC.
OS: Linux Mint 20 Cinnamon
As much as I loved Win 7, but it's over, and Win 10 just isn't acceptable.24
Win 10 on ARM will not make it. Here's why:
- The devices are ridiculously overpriced.
- Performance is abysmal with emulation.
- Native ports are rare because nobody buys the devices.
- MS doesn't get it.
Instead of addressing the chicken and egg problem, MS even fucks up more: Win 10 S, which is usually pre-installed, can only run shit from the app store. Yeah MS, you think just because Apple gets away with this crap, so can you? Newsflash, Windows isn't iOS, and you aren't Apple.
Even VS 2019 doesn't install the ARM toolchains by default. Because, why would MS entice devs to address ARM64 as conveniently as possible?
MS will just keep gawking at Apple like a pig at a clockwork, and Win 10 on ARM will go down like Windows Phone.31
Fuck, the gas spring in my ergo knee stool at home has given up. Now it's in the lowest position, not that ergo anymore, which also tore the rubber gaiter on the spring piston. On top of that, the seat cover is so worn out that I had to duct tape it so that the filling doesn't crumble out too much.
That thing is 20 years old, and the manufacturer discontinued the product years ago. Buy a new one? Noooo. Modern quality would be worse. So I ordered a generic gas spring, let's see whether I can install it, plus a moped fork gaiter. And then hire some professional upholsterer to finally get a luxury leather cover.
That will likely still be cheaper than buying the closest modern product that is even in a similar class.6
I made a bash script for my website that anonymises the visitor IPs in the Awstats logs by replacing the last octet with 0. It can either process all logfiles except the one of the current month, or only the one of the previous month. The latter mode is how I put it in a cron job to be called on the first day of each month.
Everything worked flawlessly with test data, but on the server, some visitor IPs were not anonymised. I noticed that all of them were from the last day of the previous month. Looking at the time stamp of the logfile, it was indeed from the first of the current month, but not from 00:21 where my cron job runs - instead, it was modified around 14:30.
Then I realised that the Awstats engine seems to be configured to batch add the log entries once per day at 14:30 so that when my cron job ran, the visitor data from between 14:30 and 00:00 were not yet in the file!
Solution: batch process all previous logfiles once to clean them up, and schedule the cron job on the 2nd of each month at 00:21.2