Fog Creek Software
g
Discussion Board




Linux and Independent Software Vendors

"it is not fun to work on backwards compatible ways, nor is it fun to work when innovation is hampered by backwards compatibility"

Combine this with "its not fun maintaining old releases" and "its not fun when 'lusers' drive the requirements" and you know why software can't be free.

How come Miguel always sounds like the lone voice of reason in a desert of ignorance?

http://primates.ximian.com/~miguel/texts/linux-developers.html

Just me (Sir to you)
Tuesday, November 4, 2003

I think this is one thing that Borland found out the hard way with their Kylix experience - there is no such thing as a "standard" Linux distro, and as such supporting something complex like a GUI RAD development tool turned out to be impossible.

Mitch & Murray (from downtown)
Tuesday, November 4, 2003

> you know why software can't be free.

I think that's too sweeping a statement, unless you mean "all software will not be free", which I agree with, at least in the short and medium term.

Plenty of software already is free, and I don't see a reason why "platform" software won't be free.

> supporting something complex like a GUI RAD development tool turned out to be impossible

I think you mean "selling a shrink-wrapped GUI RAD development tool turned out to be impossible".

There are plenty of tools available on Linux that are just as complicated as Kylix, or even more so, and are perfectly viable -- OpenOffice and Eclipse come to mind.

Portabella
Tuesday, November 4, 2003

LOL! As an ISV myself, I can only say that I should be CRAZY to write anything for the Linux platform. It's all about the market guys.

Not real numbers, but I belive that on Windows 80% of the users steal (pirate) software and 20% pay. On Linux, 5% pay and 95% expect and *demand* it to be free (and open source if possible! :-)))

Well I'll be damned. I've seen people complaining that a LGPL package was not truly free because its support was not free! Others screaming that their pet feature was still on the todo list and not implemented already.

And so on...

It's all about user education, you know?! I love Linux as a techie, but as a businessman I surely hope it starves to death.  Or truly make it into the mainstream, in which case huge amounts of money will be poured into it just to make it catch up with Windows. :-)

Zombie-Coder
Tuesday, November 4, 2003

I don't know, most reasonable people don't EXPECT linux software to be free. I work for an ISV, and we do a huge amount of development (nearly all) on linux and then just port to hpux, solaris, aix etc...

As regards a standard distro, I think you're missing the point. Take tomcat, it doesn't come (afaik) with any distro by default, so we always put it in /opt/tomcat, we always use the same tools, in the same place, same .profile's etc, on linux, solaris , hpux etc...Make a standard that suits you.

fw
Tuesday, November 4, 2003

"Not real numbers, but I belive that on Windows 80% of the users steal (pirate) software and 20% pay. On Linux, 5% pay and 95% expect and *demand* it to be free"

What a great insight. Without some real numbers the above statements are totally worthless...

BC
Tuesday, November 4, 2003

I don't understand why more Desktop software isn't written in Java.

I know Java has the reputation of being slow, but there's plenty of software out there that show how not true it is. (Adalon from Synthis.com, plenty of IDE's). (my only relation to Synthis is that I use and like their software.)

If all the software was just written to the JVM, wouldn't the ISVs not have to worry about different Linux distros? Heck, it would run on Mac and Windows too.

Is the lack of easy-as-heck to use IDEs, like Visual Studio, the only thing holding ISVs back?

Michael Sica
Tuesday, November 4, 2003

LOL! This shows that you are not a Java developer. Well, we do have a Java product (our mistake, I know, but now it's too late) so I know what I am talking about.

No, there is no lack of good IDEs. As a matter of fact, IDEA and JBuilder are at least as good as VS.

The problem is different: which JVM? You've got your 1.1, 1.2, 1.3 and 1.4. Each on Win, Mac and Lin. Each with its own set of tiny differences from the other.

Then each distro breaks previous installed JVMs. For example, just the other day, the newly released Panther broke Java (on certain machines machines only!).

It is *worse* than native apps! Much worse! Besides asking our users to download and install a 10 Megs elephant, we now have to test not only 3 platform x n distributions / OS version, but on 3 platforms x n distros x 4+ JVM versions.

And of course, Java apps... Not only are they butt ugly (they look so freaking old and out of place on any modern desktop!) but they also move like my senile grandma'!

And please don't give me that crap about only 20% of an app needing to be optimized: Java is slow in every fucking single percent!

Menus feel are lazy, dialogs have delays, saving takes fucking forever, starting your goddamn app is like swimming in honey.

Zombie-Coder
Tuesday, November 4, 2003

Thanks for laughing.

I haven't done any real Java development. I'm a Coldfusion Web Developer.

What are the little things that break between different JVM versions? If your code runs on 1.2, are you saying it breaks on 1.4?

Michael Sica
Tuesday, November 4, 2003

Funny enough, the bugfixes. Sometimes you write code that inadvertently relies on certain behavior from the underlying API. In the next release, Sun realizes that behavior is a bug and fixes it.

For example, we encountered this issue using HTTPConnection: previously it didn't have timeouts and now it has. Also, the XML parser that is returned by the parser factory from the ones present in classpath varies in the latest version if you have one included with your app.

And so on...

Zombie-Coder
Tuesday, November 4, 2003

Zombie,

Have you tried (or had any luck) including a specific JVM with your desktop software?

I'm pretty sure some of the tools that I use at work have their own JVMs (From Oracle and CA). A quick look at the PATH variable on my PC shows a few paths to what appear to be specific JVMs.

Michael Sica
Tuesday, November 4, 2003

I read the Oracle including THREE different JVM versions. Their various Java components require different, incompatible JVM versions to work correctly. Apparently, they couldn't find one JVM that worked for all their Java apps..

runtime
Tuesday, November 4, 2003

> I read the Oracle including THREE different JVM versions.

It sounds insane, but I think that is simply risk management. 

If they are sure that the applications work with these VMs, then including them is just a little extra disk space. Whereas the retesting to make sure they all work on one JVM is probably prohibitive.

That said.... the idea of Linux using all Java applications is lunacy.... and I'm a Java developer.

Portabella
Tuesday, November 4, 2003

>That said.... the idea of Linux using all Java applications is lunacy.... and I'm a Java developer.

I wouldn't say all applications. My thought process is, it seems that being able to offer your product to all platforms (with a common language, like Java) would be more profitable than tieing it to one platform. And since I've used a high-quality and descent performing piece of software that does that, it opened my eyes to Desktop Java software.

The latest version of that Adalon software (mentioned above), 2.6, doesn't officially run on OSX. But the next version (3), is said to have the support to run on it out of the box. (You can get it to run on OSX, but you have to modify something, I don't know what it is because I don't have a Mac :( . )

Michael Sica
Tuesday, November 4, 2003

So Zombie-Coder, you've used IDEA and you're complaining that "java apps are all slow". Methinks you're "Bushing" us here. First, you seem to be equating app with desktop app, secondly if you've used IDEA you'll know it's not all Java apps that are slow, instead it's the case that the apps you've written, if indeed you've written any, that are slow.  I mean, I know this is sometimes an MS fan boy site but even trolling has moved on from the 1990's Slashdot style you're using.

Alex
Tuesday, November 4, 2003

There are ways java coders get around these problems.  Have you tried bundling the java environment with your apps as someone mentioned?  It is tiny and legal.  It does not interfere or depend on the systemwide environment.

Also, there are optimized gui environments.  Eclipse and jgoodies for example.  In your case, jgoodies should be the best route, since it combines swing with platform features and speed.  In fact, I hear it respects mswindows handicapped accessibility features.

You should probably get a bonus for doing just one of these things.

Tayssir John Gabbour
Tuesday, November 4, 2003

Also, check out the MacOS world for an api that lets you specify old java versions.  Maybe you'll have to use the java mailing list.  I don't use really java but I've heard about this api.

Tayssir John Gabbour
Tuesday, November 4, 2003

"Bushing us"  -- a term I've not heard before, ...  but ever so aprapo.  Very nice, very nice.

61 year old man
Tuesday, November 4, 2003

:-) Funny to be called "MS fan boy" when our primary customer base is Mac OS X. :-)

Alex, I bet you're not a professional Java programmer, are you?

I never used IDEA, only JBuilder and while I think it is a GREAT product, it is not so because of Java, but in spite of it. Yes, the developers were quite good and they managed optimize pretty well all the common operations.

However, the IDE is still SLOW and UGLY. I am ok with that, as a developer (I used to use gdb for pete's sake). But I think that for an end-user product it would SUCK.

I am not trolling, just expressing an honest opinion. If you think that's trolling, you can go back to slashdot where it seems you came from.

I've been coding for Java since 1.0.2 days and I know how to sqeeze performance. But I can't make Swing less ugly and less slow simply because I didn't write it.

And that's the thing: when writing in C++, I don't have to waste time sqeezing performance. I can focus on creating things.

Zombie-Coder
Wednesday, November 5, 2003

> I can focus on creating things.

And fixing crashes! :)

I've heard that SWT (from IBM) removes a lot of the Swing brain damage.

Portabella
Wednesday, November 5, 2003

I just found this part of java.sun.com. While there are several very ugly products, a lot of them look damn good!

http://java.sun.com/products/jfc/tsc/sightings/S19.html

Michael Sica
Wednesday, November 5, 2003

*  Recent Topics

*  Fog Creek Home