Practices in Programming

Open source is the way to go?

After spending considerable time - as much as one can in these chaotic and incongruous pandemic times - researching payment processors, we happened upon the little known BMT Micro. Those people are perfect. And they've been around since 1992 - before the WWW as we know it.

Today they're run by a small group with several members hailing from Finland (the Swedish-speaking part). They're very personable, and that's very important.

Their site is also a standout. After struggling for weeks with other impersonable platforms, we found BMT refreshing. Setup is a breeze. You're ready to go in no time flat.

Two Products

For now, we're going to have but two products. The Rixstep ACP and the Radsoft XPT. That's it. No more Xfile collection for now. And the XPT might come out of retirement to go 64-bit.

There's a lot of thought that's gone into this. Some of it is hopefully cogent. The market is in disarray. Everybody wants to buy and sell mobile apps. We have less than zero interest in any of that. We never put our stuff online to sell anyway. The original idea was to crush bad software. And we've kept to that paradigm all along. Heck - check our websites if you're not familiar. It started with 'Discrepancy', which led Chris Pirillo to refer to our 'Rix97' collection as 'Extreme Power Tools', which led to the moniker 'XPT'. There were so many targets back in that day. The memory optimisers as one example, as some may remember. And of course the ultimate windmill: Evidence Eliminator, which we went after by creating the 'E3 Security Kit', where 'E3' of course stands for 'Evidence Eliminator-Eliminator'.

I remember that day fondly. I was still in my first month of visiting with Sydney and her family. Our computer was under the stairs. I'd succeeded in making an exact clone of Evidence Eliminator at 1/100 the bulk, and it was ready to roll, uploaded to our server, our mailer churning out the announcement to our 5000+ subscribers...

'Wait a fucking minute', I said, rushing over to the keyboard, stopping the sendouts. 'Who wants an exact clone anyway?' All those who'd already been sent the announcement were told to hold off a bit.

The idea was to think through the design all over again. E-E catered to sheeple. E-E astutely saw how sheeple saw things. Like sheeple. That would be of zero interest to us personally, and zero interest to our readers. What we needed to do was get past the name and sheen of E-E and see if there was anything there of substance.

Was E3 any good? Ask the Pentagon. Ask the German security police. Ask the government of Western Australia. Ask Verizon. All became enterprise clients.

Things followed a similar pattern on the Apple side. The idea with the Red Hat Diaries was to build on what Mark Ward's people at Beeb and Thomas Greene at El Reg had done. It didn't help much to tell people 'hey we migrated to Linux, see ya'. We wanted to help start a BIG migration from Windows - for people's safety. So you show them how it's done, right?

The deplorable state of Wintel laptop hardware led us to Apple. Unfortunately. Soon we were hooked - but not by Apple. We despised and still to this day despise Apple and all Apple has ever stood for - today a lot more than ever.

No, we were infatuated by NeXT. And still are. To this day.

NeXT is, for lack of a more appropriate word, brilliant. The only unexpected aspect is the on-disk application layout. Why make all those separate files? It gets a bit weird. Other than that, NeXT was indeed ahead of its time. Steve Jobs claimed it was five years ahead of its time. We insisted - and still insist - it was twenty-five years ahead of its time, in many ways even today.

No one at Apple understood NeXT. They resented it. Apple's programmers were still decorating their office walls with Pascal associativity tables. Seriously. Apple's programmers were still writing source ALL IN CAPS. Oh please. Pretty pretty please.

Apple spent five very crucial years not in overtaking the Microsoft market but in dismantling the brilliant NeXT to make it more sheeple. Oh the travesties! If you only knew. NeXT's menus were detachable. That's right: you just grab a bit of a menu and it breaks loose and you can put it anywhere on the screen you like, and next time you start the program those menu bits are back there again. Who needs toolbars?

But the greybeard programmers at Apple wouldn't have it. They didn't want to learn Objective-C, because they'd have to learn C first, and after using Pascal for all their withering lives...

Some opted for Apple's Carbon. That was C too but still and all. A big mistake if ever.

Carbon can't get menu pieces to detach. And if we can't have things our way and others get things we can't have, we're going home with the ball to mommy.

There were many examples of this. The Gruber came out and insisted Carbon programs were just as good as Cocoa programs. Not just once but repeatedly. And so forth. Bare Bones kept marketing an editor no one really needed when NeXT's NSText did it better.

On the FTP side we had FILE BUDDY. Or whatever it was called. FTP on old Apples was a nightmare, other-worldly. There was Transmit which had the right design, but we hadn't seen programming that bad since Discrepancy.

Bad programming flooded the market, and we started the microsite 'The Very Ugly'.

Time after time we tried to get the real gurus to switch over, to at least try this new platform. But no. The money was in Windows. Assisting Windows shops with all the typical Windows stuff that happens to Windows users. Windows was a cash cow for more than Bill Gates.

But we kept on. There were too many good things going on. Choosing C and Unix over a career in IBM IMS COBOL was such a moment, and this was another one. C was right for its time, as software started costing more than hardware. C was cool. Unix was disruptive. Does anyone know why 'stream of bytes' was such a big deal?

The Windows programming environment was grueling. Few programmers took it on. They settled instead for kiddie-toy abstractions. Not us. And it was grueling. Borland tried to introduce what they thought was 'object oriented programming' and only came up with a Christian Dior straitjacket. Don't wiggle too much and you'll be comfy.

Objective-C respects C. C++ doesn't. C++ mangles things. Objective-C doesn't. Lazy programmers like C++ because they can borrow other people's code and pretend it's their own.

Objective-C introduces messaging. Objective-C uses dynamic binding. C++ does not. And so forth.

Goodness. The advantages are myriad. No need for menu templates. The same copy command works everywhere. And so forth. One fifth the time to final product. One fifth. And the Project Builder system was brilliant. Spits out helpful hints as it parses the code. You can't beat it. NeXT apps didn't need troubleshooting at runtime.

Did they come over? No.

Open Source

But open source is actually the way to go.

Is there anything wrong with open source? Yes. There's almost never any money behind it. (But if there is, it's good money.)

What's good about open source is that anyone can contribute. Someone can go back over an old piece of code and improve it.

How to make a living off open source is another matter. But we never got into the online software game to make money. Although money is nice.

One thing's certain: we won't need to make a file manager again.

For now, we'll market two products in an effort to make ends meet. The XPT may get a 64-bit makeover, the ACP will remain as is (for now). And we'll keep on promoting practices in programming that make professionals proud of the career path they've chosen.