Linked by Thom Holwerda on Fri 13th Jul 2012 23:39 UTC
Windows Ars Technica is running an interesting article about the Mail application on Windows 8. It's one of the first party Metro applications, and Ars' conclusion is that it's really, really not up to snuff - it can't even compare favourably to the mail application on Windows Phone. The sad thing is, however - this applies to virtually all Metro applications.
Thread beginning with comment 526841
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE[3]: Too many platforms
by malxau on Sat 14th Jul 2012 23:34 UTC in reply to "RE[2]: Too many platforms"
malxau
Member since:
2005-12-04

"Yeah, like it does not happen in other operating systems as well.


It doesn't.
"

Try this experiment. Get a cross-platform piece of code from the late 90s - say, Netscape 4 - and try to run it on Windows, Linux, and Mac OS. It will run on one of them, guess which...

You can see how powerful APIs like POSIX, SDL and Qt are by looking at how applications are released on POSIX systems.


It's not about the power - it's about having four incompatible versions of Qt in the last 15 years.

"What Mac OS X from the early days are now deprecated?


None. MacOS X still has the same native API it got when it was introduced, namely Cocoa which is based on NeXTStep which has been around since the 80ies.
"

It has the same design, but many APIs have been deprecated - or just plain broken - in the meantime.

The speed at which this can happen on OS X is breathtaking...
https://developer.apple.com/library/mac/#documentation/Carbon/Refere...

Edited 2012-07-14 23:38 UTC

Reply Parent Score: 2

RE[4]: Too many platforms
by toast88 on Sun 15th Jul 2012 08:48 in reply to "RE[3]: Too many platforms"
toast88 Member since:
2009-09-23

"[q]Yeah, like it does not happen in other operating systems as well.


It doesn't.
"

Try this experiment. Get a cross-platform piece of code from the late 90s - say, Netscape 4 - and try to run it on Windows, Linux, and Mac OS. It will run on one of them, guess which... [/q]

I tried Netscape 4 on a Linux 2.6.32, works without problems. Just have to install some older libraries through my package manager.

As I already said, the 18-year-old image viewer "xv" still runs fine on current Linux distributions. One of my friends is still using it.


xxxxxxxx@yyyy:~> which xv
/usr/bin/xv
xxxxxxxx@yyyy:~> uname -a
Linux zlogin 3.2.0-0.bpo.1-amd64 #1 SMP Wed Jan 25 00:15:47 UTC 2012 x86_64 GNU/Linux
xxxxxxxx@yyyy:~> xv


I just ran it.

"You can see how powerful APIs like POSIX, SDL and Qt are by looking at how applications are released on POSIX systems.


It's not about the power - it's about having four incompatible versions of Qt in the last 15 years.
"

Doesn't matter at all. If you have applications compiled against Qt3, you just download and install Qt3 libraries and you're done.

You have the same problems on Windows in this regard. If an application was compiled against MFC4.2, you have to have MFC42.DLL on your system, otherwise it won't work.

"What Mac OS X from the early days are now deprecated?


None. MacOS X still has the same native API it got when it was introduced, namely Cocoa which is based on NeXTStep which has been around since the 80ies.
"

It has the same design, but many APIs have been deprecated - or just plain broken - in the meantime. [/q]

Don't just reflect the things I said about Win32 on Cocoa, this is stupid.

The speed at which this can happen on OS X is breathtaking...
https://developer.apple.com/library/mac/#documentation/Carbon/Refere...


Why on earth do you reference "Carbon" here? Carbon was also deprecated when MacOS X was introduced in 2001. Developers were NEVER supposed to write Carbon applications when targeting MacOS X. Cocoa is and has always been the native API of MacOS X and it is STABLE.

The only API which is constantly broken is Win32 and other stuff from Microsoft. Ask any wine developer or developers at Steam.

For example: http://www.rockpapershotgun.com/2011/08/03/why-steam-makes-you-inst...

Adrian

Reply Parent Score: 1

RE[5]: Too many platforms
by malxau on Sun 15th Jul 2012 22:28 in reply to "RE[4]: Too many platforms"
malxau Member since:
2005-12-04

I tried Netscape 4 on a Linux 2.6.32, works without problems. Just have to install some older libraries through my package manager.


Interesting. I have incompatibilities in libstdc++, where the ABI has changed so I can't simultaneously support NS4 and anything else...

"What Mac OS X from the early days are now deprecated?

...
Don't just reflect the things I said about Win32 on Cocoa, this is stupid.
"

I didn't, this point was purely OS X from the outset. Note the original poster was talking OS X, not Cocoa.

Why on earth do you reference "Carbon" here?


Well, it's still OS X, which is what the original poster was referring to.

But you see the same with Cocoa too, just with simple googling...

https://developer.apple.com/library/mac/#documentation/Cocoa/Referen...

Reply Parent Score: 3

RE[5]: Too many platforms
by ulricr on Mon 16th Jul 2012 13:48 in reply to "RE[4]: Too many platforms"
ulricr Member since:
2012-01-14

Why on earth do you reference "Carbon" here? Carbon was also deprecated when MacOS X was introduced in 2001. Developers were NEVER supposed to write Carbon applications when targeting MacOS X. Cocoa is and has always been the native API of MacOS X and it is STABLE.

not true. I was there at the OS X launch and Carbon and Cocoa were presented at equals. Java was as well.. Stuff changes. Cocoa was also the only way to access the full quicktime API (quicktime is not just a file format, it's a full multimedia API). Apple's own apps, like Final Cut Pro, were all written in Carbon. It's only at the switch for 64-bit that Apple decided to drop carbon, and that surprised everyone -- even some internal groups.

It makes no sense to talk about 30 years of Windows API, but only start in 2001 for Apple, btw.

Btw from year's WWDC, objective C garbage collection will be deprecated now.

Reply Parent Score: 4

RE[4]: Too many platforms
by iswrong on Sun 15th Jul 2012 09:40 in reply to "RE[3]: Too many platforms"
iswrong Member since:
2012-07-15

It's not about the power - it's about having four incompatible versions of Qt in the last 15 years.


You are now mixing ABI compatibility, API compatibility, and familiarity in the same argument. Qt 4 is very similar to previous Qt versions. I have been programming in Qt since the early Qt 3 versions, and the switch from Qt 3 to Qt 4 was simple for programmers in terms of familiarity. The leap from an older Qt version to Qt 4 will be very small compared to e.g. the Win32 API to WPF.

API compatibility between Qt3 and Qt4 is not perfect, but acceptable. For many classes that were deprecated, there are (Q3*) classes, so that the old functionality is still available.

The ABI compatibility between Qt versions is not so good, e.g. 4.8 is guaranteed to be binary compatible with 4.7, but that is all you get. Of course, you can still run older precompiled applications using older Qt libraries.

In the preceding discussion the argument was around familiarity. People say that Microsoft asks developers to learn a new API every few years or so. The transition between Qt versions was non-disruptive, evolutionary, and simple. So, I don't think that the argument that Qt released 4 major versions in the last 15 years really applies. It's not as if Qt programmer had to learn a completely new framework.

The more serious problem on Linux is fragmentation. People do not just use Qt, they use Qt, GTK+, wxWidgets, or even Tk and many permutations of other libraries. As a result, the experience is rarely consistent.

The APIs of Windows are more clouded in this respect. Some people will argue that WinRT and WPF both use XAML, and consequently are very similar. Others will argue that they are completely different APIs. For companies making a new product, it is a difficult choice, Metro could be the future, so developing an application using WPF could be deprecated soon. On the other hand, if Metro flops, having developed a WinRT application would've been a waste of time.

On the other hand, although I am not a Windows developer, I think such arguments tend to be overstated. In a serious application, UI code will only be a fraction of an application. If the underlying application is written in a .NET language, it's probably not too hard to target WPF or WinRT at will.

It has the same design, but many APIs have been deprecated - or just plain broken - in the meantime.


Right. People often forget Carbon, or how Apple pushed Cocoa on Java, to deprecate it just a few years later. Or how Objective-C garbage collection was the next great thing, to deprecate it in no-time for ARC. The gcc -> llvm-gcc -> clang switch in a short amount of time was also not pretty, with everything from small codebases or Haskell compilers breaking every few months.

Reply Parent Score: 7

RE[5]: Too many platforms
by PieterGen on Sun 15th Jul 2012 14:38 in reply to "RE[4]: Too many platforms"
PieterGen Member since:
2012-01-13

"The more serious problem on Linux is fragmentation........As a result, the experience is rarely consistent"


I am not a coder. I am a power user, and I do some sys admin and user interface work. So excuse me if I am wrong - here we go - Actually I find Windows more fragmented then Linux. Windows has xp, vista, 7, 8; various servers; WinPhone 7; winphone8; now we have a seperate ARM version (was there a lack of Windows-versions??); home/student/enterprise/professional/media/ etc versions; English/French/Spanish (Windows has seperate programs for every language - the concept of language packs was too simple I suppose?); a jungle of licenses and activations; and a general tendency to make simple things very complicated.

The linux landscape is for me (as a non-expert) much simpler. Yes, some applications requiere certain frameworks, but I never had problems with that..... might be different if you code though.

Edited 2012-07-15 14:42 UTC

Reply Parent Score: 1