Why are WinFX, JavaFX, and Adobe Flex all named the same?

So as the forgotten framework war of the '00s rages on, a question dawned on me. Why do all these things end in FX? Is there a reason buried in the history of the conflict? An homage to some vision or embodiment lost in time? Oh, and on an unrelated note, why do developers have their heads stuck so far up HTML’s ass that all these far superior technologies get the shaft, especially in terms of hype and mindshare?

Can’t answer the former question, but the latter reflects an incomplete understanding of market forces that lead to adoption of emerging technologies. It is a marketing and adoption issue, not a technical one, as always.

As a technical person turned marketer, I was thinking just the other day that the age of 1,2, or 3 competing dominant platforms may be over for good, and marketers will have to adopt business models to that.


Let’s not forget the Geforce FX and the AMD64 FX.

The short answer is that stupid marketing naming gimmicks are contagious. Do you remember when Windows software products used to be named according to their version number? Now everything is named for the year, thanks mostly to Micrsoft’s influence (Windows 95/98/2000/2003, Office 2000/2003, …).

This particular trend turns out to be a really bad thing for the consumer. When you have Super Mega Edit Pro 7.0 while your competition has Ultra Awesome Edit Expert 5.8, no one really gives a crap. But if you have Mega Edit Pro 2009 and your competitor has released Ultra Awesome Edit Expert 2010, OH DEAR OG HELP US! We must release a new version RIGHT AWAY! Consequence: software developers are pressured into annual release cycles, which is manages to be more expensive for the consumer, while simultaneously reducing the quality of the software thanks to short development cycles with inadequate testing and debugging.

The same thing happened with the “FX” suffix, and before that, the “XP” suffix. You can even see it in Pentium vs. Athlon (both vaguely Greek sounding). Basically, marketing guys like to copycat other successful products’ names.

Edit: I just thought of another good example: The “My” craze. This one also traces back to Microsofot with their “My Computer”, “My Desktop”, “My Pictures”, “My Network Places” (<-- this one grates on my nerves to this day), etc. Suddenly everything was “My <this>” and “My <that>”.

Are you seriously saying that any of those technologies has more “mindshare” than HTML? How many people do you know who can throw together a basic web page vs people who can build a flash file - or a JavaFX program? Also, if you’re looking at pure installed base, the only one that you even have to consider aside from HTML is Flash. And flash has plenty of issues on its own, and you really do not want to use flash for the kind of stuff HTML is perfect for. Flash is damn good at what it’s aimed at - animation and controlled interactive audio/video. It completely sucks at free-flow formatting of text and images, though.

Not to mention this stuff is closed and controlled by one company, not a consortium like HTML and other standards. We shouldnt be adding more proprietary crap, look at how bad flash video has gotten. Massive CPU usage, lack of hardware accel 99% of the time, etc. HTML5 will hopefully fix this with a video tag and a standardized codec.

Software companies with that sort of release cycle are generally working 2 or even 3 releases out at any given time. They don’t start planning for their next product when a cpompetitor releases a new version.

Way back when, I worked for a small company headed by the brother of one of the principles who created Visicalc, the first commercially successful application for microcomputers - remember when everything was “micro” this or that?

Anyway at a party one night, he told the story of how, once revenue and distribution patterns started to become clear, and as software development marched on, they realized they were not selling commodity products, as they planned at the beginning. In fact, they were selling subscriptions, renewable on a certain period.

That remains the core of much software marketing.

And I have to tell you, the annual release cycle is looking increasingly less sustainable for most types of software. But that has nothing to do one way or the other with quality - there are ways to build quality software now that is in continuous release.

No. But even so, what, you think a company wants to invest its limited resources in years and years of development without the chance for any revenue at all? What other kinds of companies do you demand that sort of business model from?

If you are happy with your version, don’t upgrade. No big deal.

Not true. The software you have now is cheaper, better quality, had more features, is easier to buy or acquire if free, and meets your current needs better than at any time in the past. You may be a special case still running wordstar 5.0 on 5.25 inch floppies (remember when everything was “word” this or that?) but that doesn’t make your point valid.

Maybe time for you to try a different OS vendor, one with a more flexible user interface so you can change the names of things to what you want them to be :slight_smile:

Well, yes. But it just seems odd that the trio of next-generation programming frameworks all have the FX in them. Did the developers at Sun and Adobe have an “oh shit” moment when Microsoft first announced its plans? The name “WinFX” was never terribly marketed, except as a beta. Now everyone is seemingly paying it homage.

Now, to indulge the OT discussions:

I’m suspicious of short development cycles, as well. It is the developers throwing their hands in the air and saying, “come on guys, we don’t have the discipline to do anything ambitious, so let’s just take this one step at a time.” Yes, it is very successful strategy when your development team is in the shitter and cashflow is shot, but it’s an attitude that holds back innovation. That, and “software as a subscription.”

Funny how the “proprietary crap” grows and evolves at a rapid pace, while the “consortium and standards” has barely changed the state of the art in a decade. Oh, and the irony is that the stuff that underpins modern HTML/AJAX started out as proprietary extensions. Lastly, great job pointing at “massive CPU usage.” Because the best-performing programming technology is obviously HTML/AJAX.

This all just sounds like someone that has never had responsibility for the marketing or business side a software organization. Me, I have had that role at both a wildly successful open source company, an equally successful closed source company, been an engineer from the earliest days of planning what is probably one of the most successful (in the public’s eyes) public sector software efforts ever, participated in the development of a now-all-but-universally implemented standard, and much more.

I feel safe in saying that it takes a lot of different roles and skillsets besides engineering to have success in the marketplace. Didn’t always think that way though. But it is true. Let’s check back with Alex_Dubinsky in 20 years or so :slight_smile:

To answer the first question, the “FX” is standard movie/television shorthand for “Effects”, as in “Visual FX” or “Special FX,” and predates these products by some decades. All of the products listed have graphical, UI, and visual improvements as their primary selling point.

Except for Adobe Flex, which I presume is meant to imply flexibility (you can take web-API-based apps and use them in multiple environments: mobile/desktop/web).

FX stands for “frameworks,” it seems. You have the Windows Frameworks, the Java Frameworks, and the Adobe Frameworks.

The usage goes back to at least “AFX” (‘Application Frameworks’). AFX, like WinFX, was the internal name of Microsoft’s first fully Object-Oriented framework that wrapped the Windows API. When it was released in 1992, it was called MFC.

17 years on, it seems we push the same rocks.