* Posts by karlkarl

823 posts • joined 10 Apr 2015


Sir Clive Sinclair: Personal computing pioneer missed out on being Britain's Steve Jobs

karlkarl Silver badge

"That's why we have Apple now and why Sinclair is a footnote."

I don't know. At least not in this house. I own both a Z81 and a Spectrum. Yet I have never given a toss about anything Apple.

Generally the hardware lasts longer than Apple's too and is better quality in that it can be repaired easily. No glue.

Sometimes we all feel a bit like Shutting Down. So just imagine how tired Windows 7 is

karlkarl Silver badge

Its not over yet. Though the interface looks less useful, and though Microsoft call it Windows 11; it is still the same old crappy Windows 7 that we have been using for a decade. Nothing has really changed, especially the kernel.

Pretty much stagnated for a long time. Microsoft is just making one last push to monetise the platform before they retire it.

Apple's M1 MacBook screens are stunning – stunningly fragile and defective, that is, lawsuits allege

karlkarl Silver badge

Can normal people sue?

Can normal people sue those twits that buy this junk? We have to keep listening to people buying defective tat and then moaning about it. I kind of feel that we deserve compensation for this kind of repetitive mental abuse.

The age of the Service Pack is over. The time of the Modern Servicing Model has come

karlkarl Silver badge

Re: That word 'modern' does not mean what they think it means

It is a word used to entice the dimwits. I think they have used it correctly haven't they? ;)

Linux kernel minimum compiler raised to GCC 5.1, allowing potential C11 use

karlkarl Silver badge

Re: compiler masturbation

Haha. Nice.

To me this summarizes most C++ users who frequent reddit's r/cpp. They are too busy fantasizing about the very latest C++ standard rather than actually doing something productive.

Weirdly you don't seem to get this kind of "version chasing" with C or even any other language. No-one gives a sh*t if it is Java 10 or Java 11. Yes there was breaking changes from Python 2 -> 3 but you don't get some guy complaining that Python 3.7 is ancient compared to Python 3.8 or singing praises about some "modern" feature of Lua.

I wonder if it is because C++ has fairly clean defined standards or if it is something else. I think the worst offenders are C++, Javascript, Rust (possibly in that order).

karlkarl Silver badge

Re: {size_t i = 0; for(; i < len; ++i) {

Quite a strong view and I did used to think similar before I moved from C++ to C.

C is consistently at the top of the TIOBE index: https://www.tiobe.com/tiobe-index/

There must be a reason for that and what I arrived at was that C *is* the computing platform. It underlies everything, from interpreters, to graphics APIs to platform APIs. You can't get away from it, you can only layer on top.

The issue with layering on top is you need bindings. Writing these blasted things is extremely time consuming (and unsafe!). You then run into interop issues. Getting Python to call a Java library is almost impossible without going through C. Just writing everything in C (with good linters, sanitizers) is liberating from all this complexity.

I am almost convinced that C++ is only alive because it is one of the very few languages that has direct native support for C (with minor exceptions). My guess is that C++ will outlive Rust and Objective-C will ultimately outlast Swift because of this.

karlkarl Silver badge

Re: {size_t i = 0; for(; i < len; ++i) {

Haha. No it certainly isn't pretty. I do accept that.

But you don't like it at all or do you propose something instead like:

{size_t i; for(i = 0; i < len; ++i) {

The issue with this is that my (admittedly very anal) static analyser complains on unassigned variables (and I actually like it that way). The starting condition is *kinda* including the variable declaration. Including things like:

{size_t i = 0; size_t j = len; for(; i < len; ++i, --j) {

I can't think of a way how a while loop could be used which is quite as succinct and encapsulated to the loop meaning.

karlkarl Silver badge

Perhaps I just saw C as an improvement from Awk where local variables had to be declared, not just at the start of a block but actually passed in as "unused" arguments to a function!

function RecordSetId(ctx, id, _i, _j, _k) { ... }

Useful language but... this is not its finest hour :D

(I like Ada. Its difficulty is probably similar to what you experienced. Playing well with others and in particular, making all the rest of their unsafe platform libraries bind against it)

karlkarl Silver badge

Very true.

The -Wall and -pedantic flags *should* pick up on unused variables. Though sometimes we don't always get to use such capable compilers ;)

karlkarl Silver badge

"Now, one feature that _may_ be worth it is the loop counter thing: for (int i = 10; i; i--) kind of syntax actually makes sense and is a real feature (it makes 'i' local to the loop, and can actually help people avoid bugs– you can't use 'i' by mistake after the loop)."

Agreed, the all variables at start of a block really isn't a problem. Especially since for those who do like variables located near to where they are used, the start of a block can also be within if and while statements. Not just at the start of the function.

As for for loops, this is possibly the only slightly annoying thing about C89. However for those projects where we do want to support simplistic / experimental compilers, the following is possible:

{size_t i = 0; for(; i < len; ++i) {

/* Use i */


It possibly looks a little nasty but compared to the alternatives, I don't actually mind it. Though in this day and age C99 is generally the most common. I find C11 to be a little excessive. This shouldn't be like C++ where everyone chases version numbers like little fat kids wanting more, MORE, *MORE!* ;)

3 years, 17 alphas, 2 betas, and over 7,500 commits later, OpenSSL version 3 is here

karlkarl Silver badge

"3 years, 17 alphas, 2 betas, and over 7,500 commits later"

... and a number of forks ;)

IBM's first 7nm Power10 chip arrives in E1080 server system with a wealth of shiny features

karlkarl Silver badge

Annoyingly the POWER10 hardware isn't fully open.


So you are better off buying the POWER9. Actually the only guys I know who are selling this stuff properly are Raptor Computing (https://www.raptorcs.com/). The rest are just faffing about.

Open-source software starts with developers, but there are other important contributors, too. Who exactly? Good question

karlkarl Silver badge

I'm not entirely sure on this (for some projects).

Looking at many Linux distros, they have lost a bit of focus chasing the dream of being "user-friendly". Users ask for things like graphical installers, more features, more, more but ultimately much of this is very superficial. It doesn't improve how the software is maintained, it doesn't help the fact that package managers are very tied to the internet, it doesn't solve the "billions of dependencies issue" that is cropping up.

Users also don't "get" UNIX. They want a free fun OS to play their Steam DRM Service games on. They don't really care about the quality of the OS itself. It is what has lead the OpenBSD project to say "we don't like users" ;)

Another thing is just look at Windows and macOS. They have billions of users but the software is *still* unusable for so many and getting worse.

Spraying a boot error up the bathroom wall

karlkarl Silver badge

Generally for signage (actually many things involving a Pi), you want the entire OS to be read-only. No log files written, no cache, no disk maintenance. This way you can eliminate all wear on the SD and it can pretty much last forever and is 100% deterministic.

I do this for a few security systems and arcade-like public cabinets. I use OpenBSD mainly because I am more familiar with it. I blogged about it here if anyone is doing similar.


VMware shreds planned support for 'cheese grater' Mac Pro

karlkarl Silver badge

Some ratty mac Minis dotted around the office and building the occasional bit of software for the consumer app store *is* the Apple way. The sooner people understand that, the sooner that they can stop screwing up their infrastructure.

It is not a professional platform and should not be virtualized or anywhere near a server room.

Only 'natural persons' can be recognized as patent inventors, not AI systems, US judge rules

karlkarl Silver badge

To be honest, with businesses overusing the AI buzzword too often these days, I am fairly sure storing your invention ideas in a spreadsheet and using the search function is called AI.

Software piracy pushes companies to be more competitive, study claims

karlkarl Silver badge

So companies can stop adding DRM to their products leading us all to piracy now right?

Don't like the new Windows 11 Start or Taskbar? Don't worry – Microsoft's got your back

karlkarl Silver badge

Its always the same in every release. But us plebs still seem to buy it and support it anyway. With mentally challenged upper management seemingly convincing themselves that the next Windows is great!

Microsoft previews free Visual Studio Code for the Web

karlkarl Silver badge

Re: I just don't get it

Yeah, SSH latency is barely anything. Even less than a local copy of Visual Studio with intellisense and autocomplete enabled.

Children of China, your state-sanctioned hour of gaming begins … now!

karlkarl Silver badge

I do find it strange that this isn't instantly seen as a flaw in their restrictions. Has it really come down to slurping from consumer services so much that offline isn't even an option.

Some of the best games I have played are offline. It makes me start to think this isn't about games but rather weening them off central servers. Something I fully agree with (Chrome Books, AppStores, Office 365, etc) all hurt us in the long run.

They've only gone and done it – South Korea forces Apple, Google to allow alternative app store payment systems

karlkarl Silver badge

"Google and Apple made great strides in modernizing the technologies"

The central server approach is *not* modern. It is ancient 80's design crap. Google and Apple can do better than this and this new law might just get them to put in a bit more effort next time.

Tachyum's Prodigy emulator achieves first boot, runs Linux and says 'hello, world'

karlkarl Silver badge

"'Universal processor' startup still no nearer to proving bold claims of tenfold performance gain over Chipzilla, AMD"

I'm not sure it matters. If it is open and doesn't do creepy things like the others, it should win out slowly in the end (unless it gets bought by Intel or AMD of course which is unfortunately too likely).

Windows 11 will roll out from October 5 as Microsoft hypes new hardware

karlkarl Silver badge

This is good. It means hardware I use for operating systems I care about will be much cheaper (and possibly found for free in a skip round the back) once everyone else gets dragged over to Windows 11.

Hurray for (blind) progress! :)

What's the top programming language? It's not JavaScript but Python, says IEEE survey

karlkarl Silver badge

"perhaps it is time to search for a tutorial?"

Hah, no need. Python tutorials are shoved down our throat at every turn. When searching for wxWidgets and OpenCV APIs, I know to explictly include "-python" into Google to explicitly strip out the annoying noise when searching for predominantly C++ APIs.

30 years of Linux: OS was successful because of how it was licensed, says Red Hat

karlkarl Silver badge

Re: Linux is not an OS

You are correct. Linux is a kernel.

However all of those other parts making up the OS are available on Hurd (Kernel) and *BSD (operating system) too. However they still don't quite have the same popularity (though my myself am an avid BSD user). So arguably these extra components are less important to the popularity of GNU/Linux as a platform compared to a) kernel b) license.

So really the article talking about Linux specifically rather than all the userland "stuff" is relevant and makes sense in this context.

Razer ponders how to fix installer that grants admin powers if you plug in a mouse

karlkarl Silver badge

Re: WTF?

Do people really not have firewalls to prevent Microsoft from communicating outside from your Windows? Wow, that seems very careless.

That is the first thing that should be set up. Prevention of downloading broken drivers is just *one* of the benefits of not being a mug.

'Not great, but usable': GNOME desktop boots on Asahi Linux for Apple M1

karlkarl Silver badge

Gnome is just about the worst desktop environment to use on an early platform with no accelerated GPU support.

It requires acceleration so is using LLVMpipe to provide OpenGL via the CPU. This is very wasteful.

Just about any other proper window manager would yield superior (and very usable) results.

This jump to GPU reliance (and admittedly Wayland) has been unfortunate during the era of different technologies popping up (i.e WSL, RPi and M1). We would have seen much better results with the traditional display server approach.

But I suppose that is progress. Fix, break, fix, break, fix. Chuck excrement at a wall and see what sticks.

Microsoft slaps on some new Paint and previews Windows 11 on Azure

karlkarl Silver badge

Re: Looks like every other paint app

Honestly there are no more bells and whistles in Microsoft's new paint since Windows NT 4. It is all lipstick on a pig.

If anything, it has regressed because you now need to explicitly select foreground background color when choosing color rather than left/right click due to restrictions for consumer tablet users.

Cloud load balancer snafu leads to 3D printer user printing on a stranger's kit

karlkarl Silver badge

err, yeah exactly those.

Damn, I didn't imagine there were so many crooked attempts of this kind of shite :(

karlkarl Silver badge

OK, at least that "cloud" system in place is there for a reason.

I was half expecting to find out that many 3D printers have strict DRM that connect to the vendors restriction servers before they allow the machine to function. That way when the company goes out of business, they can ensure no-one can benefit from the hardware any longer.

Cautiously going to say, glad that isn't the case :)

Having trouble getting your mitts on that Raspberry Pi? You aren't alone

karlkarl Silver badge


About 44% of Pis sold are for industrial uses.

The original goal of the Pi was to get people interested in coding again. This statement was certainly targeted to the hobby market originally but I find it is relevant for industry too, before the Pi, it was such a faff to prototype new industrial applications and medical devices.

karlkarl Silver badge

One of my main reasons to use a Raspberry Pi is that it is easily sourced. They have done a really fantastic job with this. Other solutions are always so difficult to get hold of and especially things like cool hardware on Kickstarter always suffers from not enough interest for future batches (the original backers already have theirs so don't tend to buy more).

Actually most of my Raspberry Pis these days I seem to inherit for free one way or another (guys getting bored of them or just a massive surplus from anywhere I do contracting for). They are even easier to get hold of than 2012 Celerons these days.

More Boots on Moon delays: NASA stops work on SpaceX human landing system as Blue Origin lawsuit rolls on

karlkarl Silver badge

This is what happens when you get "big tech-like" companies involved. They don't win by being great, they win by just keeping everyone else back.

Mankind's exploration of space is over, now it will just be monkeys rolling around in the dirt chucking their own feces at one another.

Microsoft, flush with cash, raises cloud office suite prices for businesses

karlkarl Silver badge

Re: You get what you pay for ...

Agreed. This has been a pain in the butt. I have had to use davmail to bring the Microsoft nonsense with actual standards.

I almost need a separate server for all these bridges these days. I already have around 3 connecting my IRC to various other clown services.

Trust Facebook to find a way to make video conferencing more miserable and tedious

karlkarl Silver badge

Re: VR meetings with an EULA and TOS

IRC just happens to be the most popular fully open source chat system.

I feel that Discord and Slack have unfortunately eroded away the others to virtually non-existence.

karlkarl Silver badge

Re: VR meetings with an EULA and TOS

Hmm, "use" is quite a strong word ;).

It needed significant work back then to use directly. It didn't provide a compositor and oddly enough all the signals it was sending to turn the headset on were quite scrambled.

So I am going to go with "provided a solid foundation".

karlkarl Silver badge

Re: VR meetings with an EULA and TOS

You can barely install the drivers / runtime for the headsets without a bunch of DRM disguised as the Oculus Store (and Steam for the Vive side of the camp).

I had a medical VR project and it was all so horrible I decided to chuck all that scum away and leverage a much lower level technology called OpenHMD for a decent offline solution with a more deterministic lifespan.

The OpenXR standard is also using OpenHMD as an underlying base these days. The fact that Facebook and Valve are even allowed to be members of the OpenXR group is criminal. These basta*rds have been an absolute disservice to the VR community.

Microsoft isn't much better. The Hololens artificially over consumers the dying Windows-only UWP API making it a non-starter too for industrial / medical use. Even in sodding streaming mode. Absolutely pants! Bunch of clowns.

So ultimately, if I wanted to chat, just give me an IRC client any day. None of this broken VR crap until these arses have gone on to something else they can suck dry.

Faster .NET? Monster post by Microsoft software engineer shows serious improvements

karlkarl Silver badge

Not necessarily one OS but certainly a limited selection of architectures:


You have ARM*, s390x and x86*

Admittedly Mono has a lot more (almost catching up to Java) but many of these are in no way as well tested as the tier 1 architectures and I possibly wouldn't use them in production.

So is this a problem? Not really, .NET developers are mainly focused on x86* anyway. However I do prefer the "comfort" of the free architecture support offered by the native tools (almost always C and C++).

The .NET native stuff is closer but the GC still makes assumptions (growing / shrinking stack?) and thus is still architecture specific.

The best example I can refer to is Unity3D getting WebAssembly / ASM.js support (for Pluginless web) a full 3 years after Unreal Engine 4 did. Porting .NET (Mono) was a PITA!

Git 2.33 released with new optional merge process likely to become the default: It's 'over 9,000' times faster

karlkarl Silver badge

"The mental model for Git is needlessly complex,"

Absolutely, and for 99% of projects Git is massively overkill. However, in many ways rather than keeping up to scratch in all of them, it has been nice to just simplify and stick to Git for everything. I found it a bit of a struggle working with mainly SVN, some CVS and bits of Perforce chucked in for good measure.

A mono-culture is never good but... at least Git is pretty decent this time. Imagine if the mono-culture was Microsoft TFS! :/

Pi calculated to '62.8 trillion digits' with a pair of 32-core AMD Epyc chips, 1TB RAM, 510TB disk space

karlkarl Silver badge

Re: Sorry to disappoint

"the idea is that an infinite sum of positive values is not necessarily >= 1"

Under the assumption that infinity actually exists, I only agree with this statement if those positive values are infinitely small. However a monkey with a typewriter is only fscking small.. not infinitely small.

karlkarl Silver badge

Would all those threads provided by the AMD chip actually be beneficial for this specific task?

It isn't an easy problem to break up into parallel equations is it?

I mean, yeah its convenient that they can also surf the web and answer emails whilst their machine is crunching away but I am fairly certain they have other machines for that ;)

Internet Explorer 3.0 turns 25. One of its devs recalls how it ended marriages – and launched amazing careers

karlkarl Silver badge

The only time I tried IE was version 5.x on Solaris.

I actually quite liked it. Netscape and early Firefox were also pretty light and fast back then too so it was quite an exciting time. Browsers were improving and there was a lot of competition to do so.

Now it is just all shite. I have no idea what happened haha.

GitHub picks Friday 13th to kill off password-based Git authentication

karlkarl Silver badge

Re: I dislike GitHub anyway

Nothing wrong with git. This has everything to do with Microsoft trying to pull users into using their annoying authentication system treadmill.

Many Office 365 site installations no longer support standards (imaps, smtps). Instead it is Microsoft's "Modern" auth which means that proper email clients can't be used.

They want the same for GitHub basically.

Microsoft emits last preview of .NET 6 and C# 10, but is C# becoming as complex as C++?

karlkarl Silver badge

Embrace, Extend Extinguish

An anti-competitive strategy by Microsoft to gain marketshare and push their products. A number of internal memos were leaked which specifically use this name (though I imagine a few other companies did similar).

So in this case it was against Java. Microsoft made J++ directly in response to Sun Microsystem's Java, got told off by US legal so made J# (as a half-way point) and finally CSharp.NET.

The damaging part was mainly J++. If they were not stopped in time, they were slowly extending the API with their own incompatible "improvements".

J# was damage control and CSharp.NET is really just a standard competitor.

Some more info (including the Java one I outlined):


(It is important people remember this (or learn about it) because Microsoft never truly changes and they will be doing the same with Linux and GitHub shortly. Already Microsoft is disabling standard password functionality (for dumb oauth). I'm not sure SSH keys will be an alternative for too long. WSL2 is already starting to be used as a "Linux + drivers + DirectX" kind of product).

It is fair that you may not agree with what I have wrote (or experienced it) but this is the main reason many guys don't engage with companies like Microsoft. Its up to you to decide how scummy the company is. Just stay safe and don't let them bite you in the butt ;)

karlkarl Silver badge

Re: native targets

You are right that LLVM as one example is pretty complex. It did diverge from its "VM-like" origins a while back. Now it is really just a framework for generating the low level instructions per platform (like GIMPLE-IR/GENERIC in GCC).

So, yes I would still rather port a simpler compiler. LCC I can make much faster progress on compared to both .NET and LLVM. I still can't decide if GCC or LLVM/Clang is easier to port. But in the end, these compilers don't need to be ported. You can cross compile.

I do believe .NET is more difficult to port than LLVM. Considering companies like Unity3D were 4 years late to the party after Emscripten (C++/WASM or ASM.js) came out. The .NET framework (and to a lesser extent mono) are big complex things wrangle. Even the JIT and garbage collector has to make big assumptions about a platform.

Arguably the .NET CLR needs to run "on" the device. LLVM / GCC / etc can cross compile to the native instructions requiring barely any runtime. Even platforms that do support .NET's AOT / GAC (these are actually quite few. I think there is only Intel/ARM. No MIPS, POWER, Sparc64) still require a hefty runtime.

karlkarl Silver badge

CSharp.NET is basically as complex as Java in both language and VM infrastructure (I shudder at the thought of having to port the JVM or CLR to a different platform). This is by design because CSharp.NET is pretty much a failed attempt at EEE on Java.

C++ is a fairly complex language but since there is no VM layer of complexity to deal with, overall it is a simpler technology.

In my old age, I really do prefer C. I saw a recent video by Stroustrup discussing an "elegant" program and it really was just all templates with very little logic. I did not find it elegant at all and realized C++ was going in a very different direction to what I really want.

I "think" I just want the RAII and safety but I am not prepared for any of the other baggage that comes with it. As for CSharp.NET... no thanks. I don't like writing bindings to technology I actually use.

After 15 months in preview, GitHub releases Codespaces – probably the fanciest new shiny since Actions

karlkarl Silver badge

Re: Or….

Agreed. It is more like going from zero to 23% of a functioning development environment.

Excluding decent compilers, what about cscope, ctags, grep, (sp)lint, gdb, doxygen and all those thousands of other tools that you need if you want to attempt some decent engineering. Scripting languages need much of this stuff too.

Honestly at this point Borland Turbo C++ running in DOSBox is more productive. Perhaps the Indian education system did get that right compared to the west.

If I ever saw a new hire using this crap, I don't think they would manage to make it through the probation period.

Elementary OS 6 Odin released on a 'pay what you want' basis

karlkarl Silver badge

"Another option is to open a terminal and "type sudo apt install libreoffice", which did the trick. Still, this does seem a lot to ask of novice users."

I get the sentiment but if a user really is that novice, they will probably be using Windows anyway (or possibly just a consumer tablet).

Watching Linux distributions try to appeal to the lowest common denominator of user just seems like a bit of a wasted opportunity.

Besides, is typing that command really more difficult than navigating to the LibreOffice website and downloading / running a setup.exe? Personally I also find licensing / activating Microsoft Office much more difficult. DRM cracks solve this somewhat but that is also a little beyond what a novice wants to be doing.



Biting the hand that feeds IT © 1998–2021