Fog Creek Software
Discussion Board




XAML, Mozilla XUL rip off...

I was just reading up on longhorn, and I realized that Microsoft is doing it again.  They are ripping other folks ideas and passing it off as innovation. 

In my opinion Microsoft often brings little to the table outside of their monopoly on the desktop.  What frustrates me is it is nearly impossible to succeed w/ out getting Microsoft behind you.  No matter how innovative you are, the Microsoft monopoly just crushes you in the end.  That is the reason I don't understand why so many developers support them. 

If you develop something that is profitable enough for their platform, they eventually will take away your business.  This isn't much of a partnership.  For instance, Borland certainly could have considered Microsoft a partner, but we all know what happened there.

As a developer at an ISV, I have a difficult time respecting the company, and see them as a predator and not someone I would feel comfortable partnering with.

christopher baus (www.summitsage.com)
Tuesday, October 28, 2003

I think this link says it all...

http://tinyurl.com/sn90

I think XAML is Microsoft's attempt to control the internet once and for all.  They killed off Netscape.  Who's left to stop them? 

christopher baus (www.summitsage.com)
Tuesday, October 28, 2003

That URL wasn't that huge URL ( http://www.meyerweb.com/eric/thoughts/200310.html#t200310024 ) and I like to know what domain I'm being shuttled off to when I click on a link.

Interesting article... Microsoft loses it's anti-trust case, and goes ahead and announces the death of standalone IE. In the long view, Windows is a subscription service. Stop paying the monthly fee, and you're stuck with a shell of word processor, mp3 player, which doesn't work because of the Digital Rights Management, and spreadsheet.

www.MarkTAW.com
Tuesday, October 28, 2003

Since linking doesn't work anymore, I thought tinyurl provided a decent alternative.

I thought of one company that is still standing and is proving feisty: Apple.  Now supporting some XUL functionality in Safari 1.1. 

christopher baus (www.summitsage.com)
Tuesday, October 28, 2003

Depending on your screen resolution and font size the URL can be too long, so it is truncated (as it appeared to me). The URL is still visible in the source of the page (View-> Source in IE), but that is a bit too much work just to follow a link. I welcome tiny URL for long(ish) URLs.

uncronopio
Tuesday, October 28, 2003

I don't mind tinyurl either, especially in cases, like email where sometimes the link wraps and the recipient doesn't get the right page.

But I'd still like some indication of where I'm being sent.

Tinyurl.com/blah ( slashdot ).

www.MarkTAW.com
Tuesday, October 28, 2003

> That is the reason I don't understand
> why so many developers support them.

It's simple: if you write programs under the Windows OS, you can make money with it.

If you write it for the Linux operating system, with the exception of very few special cases, the users will want it for free as in beer, and may start working on an open-source program similar to yours.

So:

1. program for Windows, and you'll make good money

2. program for the competition, and you'll most likely starve

I know there are exceptions to both of the above points, but in general they are true.

Joy
Tuesday, October 28, 2003

Maybe true in the case of the "shrinkwrap" segment of the market.

However, that's an area where less than 10% of programmers are employed. The vast majority write custom software for companies, or web sites, or whatever.

In that area, Linux is certainly used and the people writing for it certainly get paid.

Sum Dum Gai
Tuesday, October 28, 2003

Oh, my god, they stole the idea of specifying user interface with XML... Something so groundbreaking, so original, nobody except the geniuses at Mozilla would invent, and the lame bastards at Microsoft would never think of (despite the fact that they're moving everything towards XML representation).

Phoenix
Tuesday, October 28, 2003

There's a bunch of other implementations of UI in XML, one of those Linux shell thingies which I'm too sleepy to remember.

Now if someone would just enable XUL and XBL as a COM object and name space.

Simon Lucy
Tuesday, October 28, 2003

Isn't XUL limited to web apps? However, from what I can gather, XAML is extended to any application (web or desktop).

kawai
Tuesday, October 28, 2003

"In my opinion Microsoft often brings little to the table outside of their monopoly on the desktop"

Glad you specified where you're coming from. ;-)

Philo

Philo
Tuesday, October 28, 2003

As mozilla/phoenix and such are written in XUL then no, it isn't restricted to web apps.  You could write any application UI in XUL so long as you lived in the Mozilla box (which isn't a browser but a development environment).

Simon Lucy
Tuesday, October 28, 2003

It seems to me the *proper* way to approach this is a critical comparison of XUL to XAML - what does XAML offer that XUL doesn't? What restrictions will XAML introduce to justify the accusations of lock-in?

For example, in the IE4 vs NS4 days, my first point would've been that when you resize an IE window, it reflows text dynamically while NS had to reload the page. The lock-in issue might have been ActiveX components.

We're supposed to be logic masters. How about some logical analysis?

Philo

Philo
Tuesday, October 28, 2003

Its interesting to see that XUL is really XUL + XBL + JS + CSS whereas XAML appears to be XAML + (some scripting language) + CSS.

XBL is a relatively complicated XML construct.  I've been following it for off and on for about a year and all I know is that it lets me walk an XML tree (the XUL document) and set CSS and JS hooks onto different nodes.  Merging that into the document description doesn't seem to be a bad idea.

And Apple's implementation of XUL within the WebKit is for environments within the Browser to add additional widgets, not to build an interface.

Is it innovation, not really, is it something to be all that concerned about, I don't think so, not yet at least.

Who knows, we might end up being able to use an XSLT document to transform XAML into XUL + XBL.  That would be just fine by me.

Lou
Tuesday, October 28, 2003

XAML appears to be XAML + (some scripting language) + CSS.

Hmm that seems to be a recursive definition. 

christopher baus (www.summitsage.com)
Tuesday, October 28, 2003

The biggest difference is that xul is available now.  You'll have to wait a few more years if you want xaml.


Tuesday, October 28, 2003

If "some scripting language" means "any scripting language" then: bring 'em on! I'd like to code in C# instead of ECMAScrip/JavaScript.

Johnny Bravo
Tuesday, October 28, 2003

Some how I don't think python is in their list of "any"  Oh wait.  Maybe python.net.  Which is will probably look like C# except you'll indent rather than use {}.

christopher baus (www.summitsage.com)
Tuesday, October 28, 2003

The problem as I see it, is Microsoft has even gone as far as redefining even standard components like vector graphics.  XAML throws out SVG for a whole other standard.  And unlike SOAP, it is doing so w/out public review, or the option for competing implementations.  This makes it difficult, if not impossible, for other implementations to catch up.

I am going to use Joel's writing to make a point.

First read this:

http://www.joelonsoftware.com/articles/StrategyLetterV.html

As a developer at an ISV (which I am), if I believe this then the first then it becomes obvious is that I should try to make my software operating system agnostic. 

Ok now read this...

http://www.joelonsoftware.com/items/2003/10/17.html

Joel realizes he's in a position where Microsoft is not only a partner, but a possible competitor.  Hmm, maybe giving away all my secrets to Microsoft is a bad idea.

Mozilla + XUL has the advantage of making the OS not matter as much.  Having something installed that can interpret XUL is more important. 

This scares Microsoft.  They want (must?) remain a requirement on the desktop.  Netscape/Mozilla has tried again and again to make them irrelevant, but Microsoft keeps flexing its OEM muscle to make sure no one else matters.

Mozilla is not controlled by any one company.  It can be taken in a multitude of directions.  I for one am working on a custom built stripped down Mozillla component to embed in a wxWindows application.  I can not do this with IE as the code isn't available. 

One company I am following closely is Eric Sink's SourceGear.  I respect Eric's straight forward publications on the topic of running ISVs.  As a former SpyGlass employee he fully understands what Microsoft can do if they point their gun in your direction.  SourceGear Vault is a solid product that I have been reviewing.  It is strong enough that we plan to move our code base to it.  It IS "a compelling replacement for SourceSafe" which has the most cruft of any of the widely used Microsoft tools. 

Problem is Microsoft is eventually going to have to address SourceSafe as it is an embarrassment.  Where does that leave Vault?  I think there are only a few scenarios.

1) SourceGear is built to sell.  Ie they are close with Microsoft because they intend to sell to Microsoft.

2) The are playing Russian Roulette hoping that the Microsoft gun doesn't go off in their direction.

3) By working with Microsoft they are hoping Microsoft will make an example of them as how "nice" Microsoft can play with ISVs. 

4) They are hoping even though Microsoft owns the platform and development tools, that their product will be significantly better than Microsoft's and they will maintain their market advantage.

While 4 is certainly is the most noble goal, history does not make a good case for this.  Microsoft wants to control the developer mindshare and having other vendors in the way is generally not in their best interest.

To be honest the SourceSafe thing is a mystery to me.  It is obviously one of Microsoft's weakest products, and they know it.  It has been documented that they use custom source control systems in house.  If you've used Source Safe for anything other than trivial projects, then you know that is true.  Source Safe doesn't come close to being able to scale.

Call me paranoid, but I believe number 3 is most likely scenario.  Eric is now publishing on the MSDN website, about that very topic.  Microsoft has made it difficult for me to believe that they would work in the best interest of a competitor without some other motivation.

I personally think Joel is smart in not really trusting them, as he described in his empower article.  Microsoft just DOES NOT have a history of playing fair....

Sorry to make an example of SourceGear, but it is easy with Sink's open management style. 

I've personally developed for the Microsoft platform for a long time.  It has paid my bills and then some.  At the same time I've worked at companies that have been completely wiped out by Microsoft.  It is difficult to trust them now. 

Sorry for the long post, but this topic just ruffles my feathers...

christopher baus (www.summitsage.com)
Tuesday, October 28, 2003

yes, microsoft has a long history of "embrace and extend". your long post is a good one to read.

but some things they do right. for example, if XAML (which I know nothing about) supports the ActiveX Scripting model, it will support JScript, VBScript, and Python. Just install ActiveState Python. Or perl if that's what you prefer. Or write your own.

mb
Tuesday, October 28, 2003

I wouldn't be so against XAML if they'd bring it to the standards committees.  Don't give me 1/2 baked example code.  Give me a standard... 

The last thing we need is yet another vector graphics format.  I'd been considering SVG for a web app.  Now what am I supposed to do?  This stuff fries me.

I had hope when Microsoft starting working on SOAP that they would play in a more open environment.  With the XAML announcement I feel just as cynical as ever. 

christopher baus (www.summitsage.com)
Tuesday, October 28, 2003

Christopher,
please stop talking BS. All of Microsoft's latest efforts are heading towards getting their technologies (or technologies which root in Microsoft's laboratories) approved by standardization committees (CLI, C#, SOAP, Web Services, to name a few).

While your previous posts may be somewhat coherent they fail to consider what some people call "real world". So once again here's my multi-billion-dollar questions: which independent authority approved the Java language as a standard?

Johnny Bravo
Tuesday, October 28, 2003

Did I mention Java? Give me the XAML spec...  Where is it?

christopher baus (www.summitsage.com)
Tuesday, October 28, 2003

According to Sun millions and millions of people all around the world develop Java software. Obviously no one seems to care whether Java is standardized. Why should they care if XAML is a standard?

But I know where you're heading to: Sun is OK, Microsoft is EVIL. You can trust Sun that they won't abuse their monopoly, is that the message? And that Microsoft can' be trusted because ... it's Microsoft.

Stupid little troll.

Johnny Bravo
Tuesday, October 28, 2003

"While 4 is certainly is the most noble goal, history does not make a good case for this."

Are you talking about Crystal? Or the FlexGrid? Or maybe CodeHound?

There's a long list of areas where MS provided a "survival mode" tool but more robust tools were available on the market. In the first two above, the stripped down tools were provided by the vendors of the robust versions.

Choice #5 for SourceGear: MS provides SourceGear Lite with Visual Studio. You can upgrade to SourceGear Pro (or use CVS once you're in a true SCM world) for enterprise use.

And I'll wager that not only is SourceGear trying to position themselves for this, but that they're actively lobbying MS to do it.

Philo

Philo
Tuesday, October 28, 2003

> which independent authority approved the Java language as a standard?

Oracle, IBM, every other database vendor except Microsoft, Novell, HP, Netscape (when they still mattered) and literally thousands of smaller vendors.

I'm being facetious, of course, but I think you get the point: Microsoft's solutions are single vendor, regardless of standardization. (And don't tell me about Mono: they could be sued or FUD-ed right off the map whenever it's convenient).

Portabella
Tuesday, October 28, 2003

So you'd say Oracle and IBM were independent authorities? Interesting.

Johnny Bravo
Tuesday, October 28, 2003

> You can trust Sun that they won't abuse their monopoly

Sun probably would abuse their monopoly if they could, but they can't and everyone knows it, so the two situations are not the same.

Portabella
Tuesday, October 28, 2003

How about a word on the problem that XUL and XAML are purportedly meant to solve?

GUI builders that generate source code are evil.  Evil evil evil.  GUIs need to be represented and serialized in a way that allows them to be bound to data, actions, etc. at runtime.  It should be possible to create and save the windows, text fields, buttons, menus and other widgets without a single line of programming code, generated or otherwise.

On the Mac, this is what Interface Builder does.  The GUI files are called nib files, and GUI elements are dynamically bound to data and actions at runtime.

XUL and XAML seem to be GUI specifications that can then be bound to data and actions at runtime, like nib files.  So, given that as a purpose, which technology achieves that purpose better?  How can this problem be solved in a way that's better than either?

Just trying to inject some content into the discussion...

Jim Rankin
Tuesday, October 28, 2003

Oh really? I happen to have some stories about broken interfaces inbetween different JDKs in some dark corner of my mental repository.

Johnny Bravo
Tuesday, October 28, 2003

(the latter was meant to be a response to Portabella)

Johnny Bravo
Tuesday, October 28, 2003

"You can trust Sun that they won't abuse their monopoly"

Sun doesn't have a monopoly, much as they'd like one.

Jim Rankin
Tuesday, October 28, 2003

"So you'd say Oracle and IBM were independent authorities?"

Conveniently ignoring the "and thousands of smaller vendors" in the original post.

Jim Rankin
Tuesday, October 28, 2003

Excellent post, Christopher.  One other SourceGear possibility:  MS doesn't consider the source control market big enough to target, so they want to exploit the SourceGear relationship in the ways previously mentioned. 

Johnny Simmson
Tuesday, October 28, 2003

Mr Bravo,

You call me a troll, but you're the one that brought Java and Sun into this discussion.  If you want my opinion I think Sun screwed up and they are getting what the deserve. 

They should have standardized Java, and wrote top notch Java tools.  They didn't do that.  They lost fair and square.  In their defense, they have opened up servlet SDK, etc., to third party implementation.  Hence support from IBM, Bea, etc. 

SOAP is only example I can think of that uSoft has done this.

But this discussion isn't about Java.  It is about XAML vs XUL. 

christopher baus (www.summitsage.com)
Tuesday, October 28, 2003

Jeez...  I need to find an editor.  Anyone know one ; )

christopher baus (www.summitsage.com)
Tuesday, October 28, 2003

I guess I still don't understand the point of XAML.  What's wrong with the ASP .net way of writing applications with a web style interface again?  Why would I want to write a web style application without a web based front end?

Can anyone fill me in?  Is XAML just fat client app with a web style front end?

chris
Tuesday, October 28, 2003

It is a thin client architecture.  The application is sucked off the server like a web app, but the desktop itself is the browser.  It reminds me a lot Gosling's work on the NeWS system. 

Here' some info about NeWS:

http://www.art.net/~hopkins/Don/lang/NeWS.html

It is richer environment than XHTML where controls, vector graphics, etc. can be created and manipulated.  For an example of XUL consider the Mozilla Firebird browser which is created in XUL.  The bookmark manager is written in XUL, as is the main menu, etc.

I don't think it is a bad idea, but with tight integration of .NET and a controlled spec, Microsoft is trying to get platform lock in, where XUL attempts to make the platform irrelevant.

christopher baus (www.summitsage.com)
Tuesday, October 28, 2003

The more I think about it, XAML and XUL ARE basically NeWS...

The PostScript vector graphics engine has been replaced by SVG or Microsoft's WVG. 

The PostScript programming language (a strange stack based language) has been replaced by javaScript or some .NET language. 

Gosling's influence on the industry has been HUGE!  Emacs, NeWS, Java.  It seems Microsoft's entire strategy is really an evolution of what Gosling proposed years ago.  But I digress.

christopher baus (www.summitsage.com)
Tuesday, October 28, 2003

When an independant intelligent person takes an existing software idea and remakes it, he's "Taking Part In The Noble Intellectual Orgy That Is The Free Software Movement (Software Patents Are Evil!!!)."  When somebody with money pays intelligent people to do it, they're "stealing".  How can one steal an idea from a man who would likely claim that software-ideas don't deserve patent protection?

.Newbie
Tuesday, October 28, 2003

I'm curious about something.

Once a new technology has been through an appropriate standards body and everyone has all the documentation, don't you still have to pay to use the patented parts of that standard? And if that little detail is a critical feature required to make the rest work, doesn't that give just a little bit of control to whoever owns that patent?

And doesn't that kind of defeat the purpose of having a standard anyway? If noone can work on my thing without my permission, what does the standards organisation's rubber stamp actually do for anyone?

I've got no complaint with Microsoft protecting the copyright on the entire .NET platform. I'm just not sure how making it an 'open standard that only Microsoft is allowed to actually implement' is any better than a Microsoft product where they provide the documentation and sell licenses to use it.' I'm sure the latter option is legal, moral and sensible. I'm just not sure what benefits the former option gives to anyone. Lots of people write Windows apps without windows being an official standard in any sense other than being Microsoft's product, so why can't .NET apps be written without the rubber stamp?

I'm not entirely sure what will happen to the Mono project when they run up against a patent that they wern't aware of, either. That should be lots of fun, and I'm sure they've got the resources to defeat Microsoft's army of lawyers.

andrew m
Tuesday, October 28, 2003

"They are ripping other folks ideas and passing it off as innovation.  "

You are confusing innovation with invention. Innovation is about ripping off old ideas and making them mainstream. This is why microsoft always wins. They let someone else invent something , then they bring it to the marketplace.

rz
Tuesday, October 28, 2003

http://dictionary.reference.com/search?q=innovation


Tuesday, October 28, 2003

With regards to Vault, I think the questions one should ask are:
A> Is asset management/source control an optional feature of an IDE, or is it something every modern development system is expected to have out of the box?
B> What is the state of VSS development?

If the answer to A is yes, and the aswer to B is "It's dead Jim", then obviously MS is going to move.

If the answer to A is No, then the next question becomes "Is there a broad need in the Windows software world for a source management system that is not met reasonably by current third party offerings". If the answer here is yes, again expect a move if VSS is a gonner.

Now what would they look for in a buy? If the past is a way to go by:
- something that plays nice with the MS tech vision: I guess that means  .NET in this day and age?
- something that can be made into a building block, a platform for developers to build on
- if their is a market dominant player: is there a nice number two with reasonable tech that looks like it is going to loose on marketing, and so will be on sale for far less than the pretty boy number one.

Another option would be a bundle: e.g. Vault Light included in Visual Studio, with Vault Pro still at Sourcegear.

Just me (Sir to you)
Wednesday, October 29, 2003

"I'm being facetious, of course, but I think you get the point: Microsoft's solutions are single vendor, regardless of standardization. (And don't tell me about Mono: they could be sued or FUD-ed right off the map whenever it's convenient)."

Ever hear of Borland?

John Topley (www.johntopley.com)
Wednesday, October 29, 2003

> Ever hear of Borland?

I think so... they're kind of like Novell: they were a powerful company, once. Now they pick up crumbs from Microsoft's table.

Borland is also a great example of a company that was *delighted* by Java, and the opportunity to compete without an immense shadow looming over them.

Portabella
Wednesday, October 29, 2003

So they have the opportunity to compete without an immense shadow looming over them but they also pick up the crumbs from Microsoft's table.

So which is it?!

John Topley (www.johntopley.com)
Thursday, October 30, 2003

> So which is it?!

Both.

In the Java world, you can do a huge project with absolutely no technology from Sun beyond the language definition: you get the JDK from another vendor (eg, IBM, BEA), you run it on Linux or Windows, you use SQL Server as the database, Borland's JBuilder as the IDE, etc.

Aside from Mono, which, aside from potential legal issues, isn't either complete or enterprise-ready, that's basically unthinkable in the .NET world: you're running on Windows and the bulk of the infrastructure comes from Microsoft. If you edit the code with Borland's IDE, that really doesn't change much, now does it?

Of course, having said all this, single vendor is not the determining factor in software development: you can certainly deliver good code, make money, support your family, etc.

Portabella
Thursday, October 30, 2003

Are you being serious?  You consider the idea of defining window layouts in an XML file using tags like <Window> and <Button> to qualify as "innovative"?  Have you ever seen a Windows RC file? 

SomeBody
Thursday, October 30, 2003

Some XUL/XAML analysis here:
http://www.xulplanet.com/ndeakin/

And Don XML on XAML/SVG-RCC:
http://weblogs.asp.net/donxml/posts/32121.aspx

fool for python
Friday, October 31, 2003

And more informed analysis:
http://www.joehewitt.com/

http://weblog.infoworld.com/udell/

fool for python
Friday, October 31, 2003

*  Recent Topics

*  Fog Creek Home