Category Archives: Windows 10/8/7/Vista/XP

Why Do So Few People Develop Apps for Windows?

There are a lot of reasons so few people develop for Windows anymore.

We’ll skip the obvious ones:
– There’s a whole lot more growth in mobile apps.
– Most of the apps that people could want or need on Windows have already been written.
– Many apps make more sense as websites, so every platform can access them.

For apps that make more sense on a desktop PC, such as audio/video production and 3D design, and all of the other sorts of things that are not optimal on a 5-inch screen or in a stateless system, there’s a much more painful reason:

MICROSOFT’S DEVELOPER ECOSYSTEM IS HORRIBLE.

For example, the answer to this question:

What framework should I build my app with?

It is almost impossible to answer, and the official answer changes every year or two.

Win32?
WPF?
WinForms?
.NET MAUI?
WinUI?
Xamarin?
WinRT?
MFC?
Qt?
wxWidgets?
Silverlight?
Universal Windows Platform (UWP)?
Windows App SDK?
Progressive Web App (PWA)?
MSIX, MSI, or EXE installer?
Are any of these things different names for the same thing? (yes)

Good luck. Microsoft has come out with many new technologies that were “almost finished”, and each one has had some glaring omissions and dropped some important technologies or features that will probably never be finished before the system is replaced with something else. I know this pain all too well since I’ve worked with text-to-speech and audio applications extensively.

And, of course, when one system supersedes another, they don’t put a disclaimer on the docs saying “you should use this new thing instead” and provide a migration guide, and many of the docs don’t even have a date so you at least have some idea whether it’s current.

In some of the latest nonsense: In the Windows Store, you can submit an app with an MSIX installer or an MSI/EXE installer. You can set an app with an MSI/EXE installer as paid, but you CANNOT ACTUALLY CHARGE MONEY FOR IT. I don’t know who designed a system like that, but they were probably drunk at the time. Of course, I didn’t learn this until after I went through the entire process of getting an app approved for the store.

Another aborted effort was enabling ad-based monetization of free apps distributed via the Windows store.

Why is it that every mobile operating system (even the ones with only a handful of users) has managed to get this right, and Microsoft just can’t figure out how to build a system that people actually want to build a business around?

I like building desktop apps, but Microsoft has done everything they possibly can to make it a nightmare to support Windows. Nowadays you can probably only make money writing Windows apps if you’re writing malware.

What Was downloadwindowsprograms.com?

DownloadWindowsPrograms.com was a software download site that I ran (with some interruptions) from 2013-2021.

It offered software downloads for Windows and had a few hundred listings. Listings could be added by submitting a Portable Application Description (PAD) file.

PAD files were an interesting idea that made it much easier for shareware and freeware authors to distribute software, but over time they were co-opted by spammers (especially affiliate link spam) and people who wanted to distribute viruses, so filtering out the bad/useless things was an ever-increasing chore.

My site was an interesting experiment and it got a bit of traffic, but ultimately there’s no real demand for Windows software download sites now that Windows has a proper app store. Even once-massive sites like download.com are struggling. That’s why I shut it down in August 2021.

Now that you’re here, feel free to explore the blog a bit. I have a bunch of websites and music projects I’ve created, and you might find some of them interesting (under the “My Stuff” section of the sidebar).

New Version of the Vorbital Player Music Player

There’s a Windows music app I’ve been maintaining off and on over the last 10 years or so. Today I released an update with some significant user interface improvements.

The idea behind the Vorbital Player is to have a simple and uncluttered interface that just plays music and audio files and doesn’t try to manage your music library.

You can get it here:

https://zetacentauri.com/software_vorbital.htm

Microsoft: Fuck Off With Your Security Updates

I must be old. I come from a time where a computer would NEVER restart without my permission.

I just had a computer restart on me without saving my work. I lost about four hours of time spent scanning and editing images because some “genius” thought their security update was so important that it was worth forcing an unscheduled reboot without my consent and without saving and restoring what I was working on.

That’s right, the protection from some vague threat of some future loss of time or data has caused me to lose ACTUAL time and data. Good job, you’ve made the world a better place.

The cure is worse than the disease. Fuck off with that shit, Microsoft. This is not your computer.

Zeta Centauri Windows App Revenue Postmortem

Now that I’m no longer selling the Zeta Centauri apps, I decided to add up sales of Windows desktop apps over the years and see how much it was.

2010: $261.25
2011: $160.44
2012: $69.24
2013: $0*
2014: $109.26
2015: $50.08
2016: $95.58
2017: $36.42

Total: $781.27

Overall I’d estimate that I’ve spent about 3500 hours developing apps for Zeta Centauri. This works out to about 22 cents per hour.

This does leave out 2008 and 2009 that I don’t have records for, but I think it was about $35 total each year.

This also leaves out my brief experimentation with installer-based advertising (that spamware/crapware stuff that tries to trick you into installing a useless toolbar). That made about $50, and I feel bad about even trying it.

This also leaves out selling Ubuntu versions of some of these apps, which was about $35 total.

In any case, it’s less than $1000 total.

During the 6 months or so I was building webOS apps (before the platform was murdered), I brought in about $700. That was a much better return on my time. I managed to port one of those apps to Android and made about $7 with it. I really hated working on Android and using the Eclipse tools, so after that one I was done. Never tried iOS (always had a mild dislike of Apple).

It was an interesting experiment, and I tried nearly everything I could think of to make it work. If I’m going to make it in this world, it won’t be with desktop audio software.

The only thing that I didn’t try was adding VST support, and that would have made a significant difference. I’m guessing 4x sales. I mean, I did try adding VST support, but didn’t succeed in implementing it. I could never get it quite right.


* Technically sales happened this year, but not enough to hit the $25 payout threshold, so they’re counted in 2014.

DrumPads Now Open Source

Of all the audio apps I wrote for Zeta Centauri, DrumPads was by far the most popular, with more than 300,000 lifetime downloads.

It’s a pretty simple app. It’s a set of 12 virtual drum pads, each of which plays a sample when you tap or click it, or hit the corresponding keyboard key. It also had MIDI support and included a bunch of samples from freewavesamples.com. It let you use arrow icons scroll through to samples to change the kit, which could be a fairly long process. It was notable for me in that it was the first app I had ever written as a with a touch-only interface.

It started as an app for webOS tablets back in 2011. Soon after, webOS was discontinued, abandoned, and set aflame by Leo Apotheker, one of the most incompetent CEOs in modern history. I ported it to Linux and it was in the Ubuntu app store. Then I ported it to Windows and posted it online. And I almost got it ported to OSX. It built, but it never came together well enough to make it past the App Store goons. There was a pretty capable free version and a paid version. The free version was very popular, but the paid version only sold a few dozen copies.

Now that Zeta Centauri is no longer a business, there’s no reason not to release the full version for free.

The source code to DrumPads is now available on GitHub, along with a full version Windows download. Enjoy. 🙂

 

SampliTron Now Open Source

SampliTron is one of the most popular Windows apps I’ve written. Although it’s fairly simple, it’s pretty powerful. It’s a virtual sampler that lets you load a .wav file and scale it across the entire keyboard, with that keyboard playable via either the computer keyboard or an external MIDI controller.

Before today it was a commercial app with a demo version, and the full version was $15. Over its lifetime it’s been downloaded more than 40,000 times and has sold a few dozen copies.

As of now, the full version is free, on the zetacentauri website, and the source code is available under the MIT license on GitHub.

Open Source: Sigmatizm, A Virtual Additive Synthesizer

Back in 2012 I wrote the most complex audio application I had ever written. It’s called Sigmatizm, and is a standalone additive synthesizer.

Additive synthesis works by adding together sine waves of different frequencies (harmonics) to create a more complex sound.

This particular application adds up to 128 sine waves together in real-time, while transitioning from one set of harmonics to another and while modifying the sound with an attack-decay-sustain-release (ADSR) envelope.

It also has full MIDI support and can be played with a MIDI controller, or can be used to play an external MIDI synthesizer. It also supports using any sound card or MIDI device attached to the system.

It started life as a Windows app and was also ported to Linux. Originally it was a commercial app available for $9.99 on both Windows and Linux (via the Ubuntu store). It also works on OSX, but building is a bit more involved and not for the faint of heart.

For the official download page, visit Zeta Centauri.

Or, to get the source code, visit GitHub.

There’s still a lot more that I’d like to do with this application. For example:

  • It’s nice as a standalone, but would be more useful as a VST so it could be used with multitracker software and be piped to effects, like delay, reverb, etc.
  • I’d like to be able to have an infinite number of envelope stages, so things could go quiet-loud-quiet-loud, or other evolving sound scenarios.
  • I’d like to add the ability to add noise or other inharmonic sources, since the app is completely harmonic and aliasing is the only source of inharmonic sound.

One thing that I’ve deliberately done in order to make it easier to create crazy sounds is NOT prevent aliasing, which is what happens when a sound goes past the sample rate (which in this case is 44.1KHz). When that happens, waveforms “wrap around” and start going in the other direction. I’d like to make that sort of thing optional (block or don’t block) because it’s undesirable in some situations and desirable in others.

It only has a handful of included patches, but I’d like to include more. If you download it and create some sounds, please consider contributing them back to the project.

Proxima Controller, a Virtual MIDI Controller

Back in 2008 I created an app called Proxima Controller. It’s a virtual MIDI controller that runs on Windows, OSX, and Linux.

I wanted an easy way to control external MIDI hardware (synthesizers, etc.) from my PC and there wasn’t an app that I liked available.

It started out as a Windows-only app. A few years later I ported it to Linux. And last year I ported it to OSX (but didn’t release it via the app store).

It’s been one of my more popular apps, with more than 70,000 downloads. I’m glad people have found it useful. It certainly made it easier for me to test sounds on my rackmount audio equipment without needing to shuffle full-sized MIDI keyboards around.

When I have time I’d also like to add an X-Y controller pad, something that can be used to transmit the same controller messages as the joystick on the Korg Wavestation and the Yamaha SY22/SY35/TG33.

You can get it here.

Trigram Generator for Windows and Linux

A long time ago I wrote a free Windows app called the “ZC Trigram Generator”. It was a simple app to generate plausible-sounding words based on a set of input words.

It had a steady trickle of downloads for around 8 years or so, about 1500 downloads per year.

Two years ago I open-sourced it and posted it on GitHub.

Today I updated it to be a little easier to use by adding a “load text” button to load a text file.

Trigram Generator Screenshot

It works on Linux and Windows 7 or newer (including Windows 10).

It’s available here on GitHub if you’d like to get it.

Guitar Tuner and Bass Tuner for Windows

Guitar Tuner and Bass Tuner are the first desktop Windows apps that I wrote. I don’t recall how long ago, but it was certainly more than a decade.

They’re super-simple apps that let you sound notes to tune your guitar or bass to. They only support standard tuning and use the default MIDI device for sound output, which usually means the “Windows MIDI Mapper”, a built-in sound synthesizer that’s been part of the OS for ages.

For nearly ten years I had them available for download on zecentauri.com, and they had more than 100k downloads in total. Two years ago I open-sourced them, but didn’t really mention it anywhere.

I updated them both today, adding two notes to Guitar Tuner to support 8-string guitars and making improvements to the installers.

Both the source code and the installers are available on GitHub under the MIT license.

Visit Guitar Tuner on GitHub.

Visit Bass Tuner on GitHub.

Open Sourced: RoboBlather, a Text to Speech Application for Windows

Back in 2008 I released the first version of a simple text-to-speech program for Windows called RoboBlather. Over the years it has enjoyed some popularity among a small niche of users due primarily to its uncomplicated interface.

Today I finished open-sourcing it under the MIT license. If you’re interested, it’s available here on GitHub.

You don’t have to be a programmer to enjoy it — there’s an installer that lets you use it right away without needing to worry about the programmer-y aspects.

Win32 Visual Styles

Nothing to do with Basternae, this is just a reminder to myself how to enable the visual styles for controls available in Windows XP and newer in a WIN32 project in Visual Studio 2010.  Had to do this at work and it’s a little tough to look up.

1. Edit Project settings.
2. Under Linker->Manifest File edit “Additional Manifest Dependencies” and add:

type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*';%(AdditionalManifestDependencies)

Suddenly Win32 controls will stop looking like they’re from Windows 3.1.  The modern control styles were introduced in ComCtl32.dll version 6, and Windows apps use version 5 by default unless you tell them not to.

Running At Full Power Again

I like Linux and know it pretty well.  I also like Windows and I know it extremely well.  I can use either as my desktop pretty effectively, but I’m better with Windows and best when I have both available.

That’s why I’m very happy that I can finally run Windows again on my main desktop.  I tried Windows 7 for a week and it almost worked, but only supported 2 of my 3 monitors at best thanks to the drivers for the two different Nvidia cards in my system not wanting to play nice together.

Well, now that Windows 7 has been installed, the Vista install was actually able to see and use one of my drive partitions.  I’ve installed it and spent half a day loading up all of the essentials I can’t live without.  Visual Studio, Dreamweaver, WinSCP, CDBurnerXP, OneNote, CoolEdit 2000, WinMege, VLC, Word, Excel, Winamp, and Audiograbber are the “killer apps” for me on Windows.  Say what you will about Vista, for me it’s the most functional and stable OS available.  Windows 7 won’t be ready to take its place for another year or so (probably at SP1).

As much fun as it is to be able to run Windows in VirtualBox, writing code is a *LOT* better when I have three monitors to do it on.

I Must Be Cursed

It’s bad enough that I can’t run Windows natively on either of my computers. Well, now the Vista virtual machine on my laptop is hosed up and bluescreens on boot up. This wouldn’t be such a big deal, but that VM has the most recent version of the Basternae codebase. If I can’t get it working, I lose 2-3 days of work, including all of the changes/fixes for the test that I posted about a few days ago.

Does this mean that my WinXP laptop at work is next?

I Can’t Run Windows

I have two computers at home — a cheapie $400 Gateway T-8635u laptop I bought on sale at Newegg a couple months ago and a homebuilt desktop based on a Gigabyte P43-ES3G motherboard, E8200 CPU, 4GB of RAM, Nvidia 7600GT and FX5500 GTS video cards, 2 Envy24-based sound cards, two Samsung DVD-RW drives, and 320, 500, and 640 GB SATA drives.  Pretty standard, mainstream hardware.

Well, strangely enough I’m completely incapable of running Windows natively on either one.

The laptop has a “restore partition” that you have to use to install Windows.  When I first got the thing, I set it up as a dual-boot Ubuntu and Vista machine.  Well, the Vista partition somehow got corrupted and attempts to restore from the “restore partition” always fail.

No problem, I can just boot to a “real” Windows OS disk.  No luck.  If I boot to WinXP, the machine bluescreens and reboots after I hit the “F8 – I Agree” after the license.

Instead I have Ubuntu with VirtualBox loaded on the laptop and Vista installed in that, which runs perfectly fine.  It just won’t run on the hardware without Linux in-between.

OK, now on to the desktop.  If I try to boot to Vista, it bluescreens before the splashscreen and instantly reboots.  If I try to boot to the install CD, I get as far as selecting the drive to install to before being told that there are no valid drives installed.  I can run Ubuntu fine, and have WinXP installed in a VirtualBox so I can run the essentials — Visual Studio, Netflix player, DVD player (still haven’t gotten DVD playback working in Linux.  How lame.)  The bad thing is that I can’t access my Mustek A3 scanner (but the Canon LiDE works great).

It’s a little sad that I *have* to run Windows to accomplish the things I want to do, but the market share of Linux sucks so bad that I couldn’t *buy* software if I wanted to.  And I do.  I’m not above paying for things that are useful.  I’d gladly shell out $3-600 for a native copy of Photoshop or VS2008 on Ubuntu.  After all, I make more than enough money from doing work on those apps to justify buying them.

It just sucks that I can’t run Windows natively on any of my systems.  If only they had decent hardware support, but Microsoft is trying really hard to fail at OSes.  Everyone says that Windows 7 will be the be-all-end-all operating system, but I’ve used it and just don’t see it.  It’s just Vista for people with touchscreens.