The recent question on whether or not to switch from ANSI to Unicode in the next Notepad++ Portable is actually part of a larger discussion on whether it is worth it to continue supporting Windows 95/98/Me and ANSI.
For the unfamiliar, Windows 95/98/Me use ANSI for character encoding at the system level. This means that non-ASCII characters have to be encoded using the proper code page to be able to appear on-screen or be used by most system functions. Modern operating systems including Windows 2000 and up all use Unicode encoding which allows all characters to use the same set and encoding.
We currently use Delphi 2006 for the Menu/Platform and NSIS for the installers and launchers. These both support ANSI only (no Unicode support in either), so it hasn't been much of an issue up until now. It's also been nice that all of our major apps like Thunderbird, Firefox, Sunbird, OpenOffice.org, Pidgin, AbiWord, etc all supported Windows 98/Me/2000/XP/Vista up until now. But that's all changed in recent months.
This year, nearly all major applications across the board have dropped all Windows 9x support. Firefox 3.0 dropped Win9x support and Firefox 2 has just been officially retired with no further support from Mozilla or from PortableApps.com. Sunbird dropped support months ago. OpenOffice.org 3.0 dropped Win9x support. Pidgin dropped support months ago. AbiWord has dropped Win9x support. And Thunderbird will drop Win9x support with the 3.0 release next quarter.
So, where does that leave us? Well, it makes little sense to say we support Windows 95/98/Me now that nearly all of our base applications are unable to run on those aging operating systems. Does it make much sense to bill ourselves as running on Windows 9x when the only elements of the PortableApps.com Suite that will work on it is the antivirus scanner, music player, password manager and games? I'm thinking the answer is no.
So what are our options? Well, we could continue to package our apps using NSIS and base the platform on Delphi 2006. This would allow us to continue working on Windows 9x but remain unable to support Unicode-only languages and cause issues with certain languages in the installer, launcher and menu displaying on some systems.
We could switch to Unicode NSIS which would allow our launchers and installers to display in any language on any system but no longer work on Windows 95/98/Me.
We could also switch to Delphi 2008. This would give us full Unicode support across the board in the platform. And built-in PNG support (possibly with alpha to outside windows and the desktop). And a bunch of great advancements in Delphi and supporting better XP and Vista stuff. This would cost about ~$800 per license, though. And I can probably swing handling it for the other platform devs once we finally get rolling on team development so they're not stuck with the bill.
One final note... having Windows 9x support has been a bit distinguishing for us in talking with hardware vendors in some markets as no one else supports it. And there are approx 4.4 million people online using Windows 98 (assuming the stats are right and 1.3 billion people are online)... so there is still some use out there. But the numbers are falling fast. The % of users online using Windows 9x fell by 60% in the last 12 months.
So, there we have it. Thoughts?
Why support the ANSI system on applications that dont support it anymore? It's completely pointless. So i say drop it. And i doubt most of the world uses those systems anymore anyways... And if you are going to take that path you are going to have to update Delphi.
Na na na, come on!
personally I vote for a switch to Unicode wholeheartedly. With the major suite apps not supporting it anymore I really don't see the point of only supporting it with only a small subset of the apps, nor do I think it is worth creating a new version of the suite for the minority of people who used pre-NT systems. I also think we stand to gain a greater market share by ensuring maximum language ease of use (Unicode allows language names displayed in their native language in NSIS for example) rather then maintaining backwards compatibility for operating systems that haven't been supported by their own creator for well over 2 years now.
From a development standpoint I also think it makes sense, less operating systems to support means more time on new features and less time bug fixing for minority issues (I have this issue in Toucan for example at the moment, I would rather spend my time on improving the code and new features rather than fixing bugs for a small minority).
Theses OS's are 10+ years old. At this point, I see no reason to continue supporting them. Steve makes some good points, and I agree with him.
And as for upgrading everything to Unicode, I don't see a reason not to, except for the fact that you'll have to shell out $800 for the new Delphi 2008, John. If we're going to drop support for Windows 9x, we might as well make the code and the user experience more optimized for 2000/XP/Vista.
Essentially, I guess it's all up to our ability to take a hit for making the experience better for most of our users.
"Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning." - Rick Cook
I understand this is a complex issue. That major applications have abandoned Windows 8x support is understandable due to the problems maintaining compatibility for multiple platforms is costly (in development time and support). This is the big reason for software to abandon older platforms. Especially when the Win 9x user base is marginal. But it's important to understand that many of the win 9x users do use Win 9x for a reason, maybe they don't own a fast machine or perhaps they don't have access to a computer of their own and are dependent on public computers in remote areas. Whatever the reasons may be, they could be stuck with it for some time to come. Having an older OS means several options: upgrade OS (and that possibly means upgrading the PC as well; Use older versions of applications or switch to a light Linux variant to keep the PC usable. In the case of not owning a PC yourself, PortableApps.com might be very useful, but only if the PC they use it on actually can work with the software provided. Realizing this might give you an idea that Windows 9x support might be useful to some extend.
About Delphi, and the $800 license.. Well I would like to play with Delphi but I cannot afford the license, not even for the current version PortableApps.com uses. I understand the latest and greatest release has many advantages and I'm a bit sad I cannot compile the platform myself, let alone play with the source a little without resorting to finding a solution myself. (My last version is Delphi 4). While I understand that switching to some other development platform is undesirable due to the work involved re-creating the complete menu in another language, I still have faint hope that PortableApps.com would be ported to a publicly available free language. To be honest, I don't think that would happen.
So my point is that although supporting both ANSI and Unicode versions is increasing the workload and file size, I think that there is a market for it. Whether or not we want to officially support it (or just say the platform is Windows NT and up, but have individual apps also work on Win 9x) is only valid when you want to actively support the Win9x users up to some point or not.
Besides these difficult questions it's important that PortableApps.com moves forward. I hope that more and more people will start using the platform, professional developers decide to support it (regardless whether PortableApps.com is ready to support them) and we see more regular updates to the menu to address the much needed functions the menu mod's had to offer.
On a final note, many of us dream of a multiplatform supported PAM, Windows, Mac, Linux and that dream might as well include different versions of a certain OS. While a multiplatform support would be very very hard to achieve and maintain, it would be great to have the ability to take your apps anywhere to any computer and be able (up to a point) to share your user data between OS-es. (Wine comes to mind... as well as interpeted languages like Python.) Truly "your digital life - ANYWHERE (TM)".
I agree with your thoughts in not abandoning those "stuck" with Win 9x, but if the applications don't work anymore, it doesn't make much sense in having the menu or platform still work.
I think the best solution may be to create a legacy package - one that works with Win 9x. Keep the applications updated that are OK on Win 9x, and freeze the others at versions that still work on Win 9x. Give that group of people the best that is available.
Once that's done, the rest of the distribution packages can advance to the 21st century without having to worry about Win 9x compatibility.
Jim
neutron1132 (at) usa (dot) com
I love Windows 98, and for the past few years, I have been archiving final releases of various software packages that still run on it. I like the idea of creating a "Legacy PAM Suite" for those users who still need Win9x support and then switching mainstream support to 2000/XP/Vista. It seems to make perfect sense to drop Win9x support for mainstream releases when the software being made portable no longer supports 9x anyway. Better to optimize for the OSes still supported by the software developers and provide users with the best experience possible.
Windows 98 has had a great run, and though I am sad to see it go, it will be fondly remembered. Besides, I plan on keeping that one computer that I have with 98SE running it as long as possible, just because I can ;).
>I think the best solution may be to create a legacy package - one that works with Win 9x. Keep the applications updated that are OK on Win 9x, and freeze the others at versions that still work on Win 9x. Give that group of people the best that is available.
Otto Sykora
Basel, Switzerland
I do agree at some extend.
But I'd like to add something:
And these are my 2cents.
Blue is everything.
Honestly, I think splitting up development and having an ANSI and a Unicode installer would be too much work and there wouldn't be enough interest. We want to have a single PortableApps.com Launcher and a single PortableApps.com Installer going forward. We don't want to be maintaining legacy versions anymore or supporting them in the forums once we stop supporting Windows 9x.
The percentage of users online using Windows 9x systems has been in freefall for the last year. In December 2007, 1.12% of online users were using Windows 9x (.7% Win98, .4% WinMe, .02% Win95). As of the end of November 20008, that number has fallen to 0.47% of online users (.29% Win98, .17% WinMe, .01% Win95). It's been falling significantly month over month the whole year. So, we'd be working to support a shrinking set of users.
The biggest issue is that none of the important apps support Windows 95, 98 or Me at all anymore. They just don't run. From our lineup, the following apps do not run at all on Windows 95/98/Me: On Screen Keyboard, XAMPP, BPBible, Frets on Fire, Jooleem, PokerTH, Cornice, GIMP, aMSN, FileZilla, Firefox, Pidgin, BonkEnc, VLC Media Player, AbiWord, Sunbird, OpenOffice.org, PNotes, SumatraPDF, Task Coach, InfraRecorder, JkDefrag, Toucan, winMd5Sum. And Thunderbird is dropping support in the 3.0 release (currently in alpha, scheduled for release Q1).
So, every single one of our major apps has dropped Win9x support. All of them. So, we'd be trying to maintain support for the few apps that still support it.
Now, the other issue is that if we have an ANSI installer and launcher for the apps that still support it, they may not run from the desktop for users with Unicode characters in their usernames on Windows. So, those users would be able to download and run the Firefox Portable installer from their desktop, but if they downloaded and ran the KeePass Portable installer (which would still be ANSI), it wouldn't work. I think that complicates things a bit from a support perspective.
The more I think about it, the more the suggestion of launching a final "Legacy" suite makes more sense. We would bundle in OO 2 and FF 2 final versions and just release it and leave it unupdated. That way the few users using Windows 9x would have something they could still download and use if they wanted to but we could move forward without needing to support them. We could even package a Lite, Standard and Ultimate edition for Windows 9x that includes all the apps that still work on Windows 9x just so it's out there for them.
Sometimes, the impossible can become possible, if you're awesome!
I agree with the idea for a Legacy suite. That would satisfy the needs of any people still using Windows 9x, and it would allow us to move forward as Unicode only. That's probably the best solution.
"Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning." - Rick Cook
I agree. If it's too much work to maintain ANSI and Unicode versions, it's better to look toward the future. The Legacy suite should keep most 9x users happy (although everyone knows change brings a lot of complaints) and the Menu can move forward with Unicode.
legacy system yes but just an idea could you create a sub domain called "legacy.portableapps.com" for all legacy projects and thus a separate mini community for those interested this site i propose would house ALL legacy projects with reasons for the shelving of the project in the bottom description thing u have for example
Legacy due to: updated version released
Legacy due to: crashed on most systems, never fixed, project abandoned, launcher only, pre PAM 2.0.
or any description u would like to use this could become a useful tool for troubleshooting as when a new version is released the older ones would still be avail via the legacy site (meaning a rollback of the app just requires a download of the old file very good if the release has a critical error in it(only happened once(due to failure of the connection not the site))) and each app could then spawn a subgroup of versions infarct a forum like setup would do the job when a file becomes legacy it just stickied at the top of a new forum topic.
let me know what you think this would make a useful tool not just an outdated site but an actual legacy for portable apps to leave behind
and as for no longer using older systems i still have win 3.11 here somewhere runs nice and potabley and cant touch the newer systems ntfs hard drives to boot
EDIT: ive been thinking and i could spare some time if u guys want a lil help on something anything on the portable apps site/suite/?? (not sure what to call the group of people community? company?) just thought this might be the place to say so since i would be very sad to see the older software around the place vanish due to it not being considered valuable or no1 volunteering there time (not blaming the big people u are very busy working on the new stuff which i love ).
i know u all do your best and i thank you for your patience
I agree with Mr. Haller on freezing the latest compatible versions as a "legacy" suite, thus preserving support for old OS's and allowing us to move forward. There is no issue for download space that I know of - nearly every release of the suite has been retained on the Source Forge servers. This could be very good PR for the project as well.
(BTW, PNG support would be kick awesome for those of us who do theming!)
It is under these considerations that I concur with Mr. Haller and this new direction for the PortableApps.com project.
Master Imrahil
"I am not what I ought to be. I am not what I wish to be. I am not even what I hope to be.
But by the cross of Christ, I am not what I was. "
– John Newton
This is a difficult decision, as there are pros and there are cons.
As John said, having the ability to support windows9x makes us stand out when we market ourselves to outside companies. It also allows us to meet a larger base as we can say that we support win9x.
However we are not making any of these apps, and if they choose to drop support, we cannot do anything to change that. So I think we should take the last version that supported it, leave it ask it is and market it as a "Legacy Version", that will work on win9x.
Just my $0.02.
Regards
~powerjuce
Please search before posting. ~Thanks
In my opinion, I think it's probably reached the point where windows 9x/me support should be dropped.
I work as an Internet support technician I've noticed a significant decrease in the number of Windows 9x/Me customers requesting assistance. Although my employer offers service to a relatively small market (approx 425,000 business/residential customers), from what I have experienced people are reaching the stage where they want/need to upgrade their equipment to have access to the programs/services they need and getting windows 2000/xp/vista pre-installed on their new (or used) computer in the process.
Even though there is a risk of alienating some legacy windows users, I think that focus should be made toward Unicode so that PAM software/menu can take advantage of currently supported (and hopefully future) versions of Windows
The apps themselves have dropped support (and being open-source projects that says a lot), and users of 9x know they've been getting shut out for a long time now. I really think this discussion would've been a lot more meaningful 3-4 years ago, but now it means little since such users are a drop-in-the-bucket minority.
Vintage!
... drop it.
Paid for Software more or less?
What You need is OSS!
Agreed.
Windows 98 is 10~ years old, there's time to drop its support.
and people still use them.
I work as electronics technician for a company selling security systems. Still operating lantastic servers with dos on them. Have to run them other 4 years to fulfill the contract condition. And this is in central europe!
There are more w98 and even w3.1 computers in real service then many people seem to realize. OK, they are not that much in Internet, so they are not seen from there. They use dial up just for short connections.
Fair would be, to keep clearly accessible repository of the software versions that are compatible with the older standard for those who have simply to use it.
In large parts of the world, a 10 year old computer is something like a brand new car in us or eur.
Only minority of people can afford the latest toys with vista etc, when worldwide accounted for.
Otto Sykora
Basel, Switzerland
don't only drop it, throw it out a window
Lead, Follow, or get out of the way.
A Legacy Suite seems the way to go. It's more than any can ask for so yeah sounds good
PortableApps.com Advocate