I've always wondered why the majority of commercial software, including almost all the worthwhile games, get Mac ports, but very little is ported to Linux.
In the last decade, excluding the CS department when I was at university, I've seen a grand total of *one* Apple laptop, and *zero* apple desktops. Compare that to one Linux laptop and three or four Linux desktops. Plus probably a couple of hundred Windows machines.
If we include the CS students, the Apple count goes up by one laptop, and the Linux count by one or maybe two.
Everyone seems to know of Macs, and think they have some idea about them, but so few people have ever actually *used* one that I don't understand why they're so well-known.
Perhaps there are more of them in the US, whence we import all our technical news and opinions?
Posted Nov 18, 2009 11:24 UTC (Wed) by tialaramex (subscriber, #21167)
[Link]
Every meeting I've been in, for several years, has been dominated by Mac laptops. Some of these people are hackers, some are decision makers, some journalists, they all buy Apple laptops. They work for the government, for private businesses, for pseudo-state entities like the broadcaster or railways. Macs are everywhere.
At work, we write software which runs on Linux (some of it is Free Software) and Java web applications which run on servers that in turn run Linux. Our 6-7 person technical team consists of one person with a Linux laptop (me), five with Macs including the CTO (who is also a perl hacker when he's not busy in meetings with suits) and one guy with a Windows laptop.
I'm the only one who can run our most important new software natively on the machine he uses to read mail and the web, but today that doesn't matter, everyone can have a VM, or just connect to a development server over the Internet, and they're more comfortable in OS X.
who has a Mac? everyone!
Posted Nov 18, 2009 14:18 UTC (Wed) by nye (guest, #51576)
[Link]
Your experience is so vastly different from mine that I can only assume it is either regional, or because you mostly work with/know people in the technology sector, where I would expect Macs to have a higher market penetration. My (unfounded) perception is that Mac users are more likely to be technology enthusiasts who have made a deliberate choice.
Or possibly, given the cost, they're mostly owned by people who are rather outside my social class.
It would be interesting to see how Apple rate their market share across different countries and demographics, but I'd be surprised if they published such information - it would similarly be lovely if Google's zeitgeist still included data on OS market share. I guess the data-mining opportunities are to great for them to want to share that.
(One final point which may or may not be useful depending on what you think his opinions are worth: even Steve Ballmer thinks that Linux is more popular and a bigger threat to Microsoft)
who has a Mac? everyone!
Posted Nov 18, 2009 18:18 UTC (Wed) by mikov (subscriber, #33179)
[Link]
My experience is exactly the same. All our products (server and embedded) are Linux and Java based based, but I am the only one who actually uses Linux on all his desktops and laptops and can run them natively on my machines. (Even though the software is Java, it is still OS-specific to a large extent with JNI, native system tools, etc).
Most technical consultants and businesses I have dealt with have Mac laptops (with a copy of Windows running in a VM).
We _tried_ to convert to Linux a couple of years ago because in theory it sounded good - after all our products are Linux based, it would be cheaper, no viruses, etc. The experiment failed miserably and it gave me a lot of insight in the subject.
I believe these are the actual objective reasons of why Linux cannot grow its market share despite being free and technically better. It is not only because Windows comes pre-installed on PCs:
- It is practically impossible to develop closed source commercial desktop software for Linux. (Which distribution? Which package manager? Which desktop environment? Which version of all the before?)
- It is extremely difficult from a business perspective to develop Linux drivers for hardware devices. Which kernel version do you target (or which distribution specific version)? How do you distribute bug fixes and updates?
Since the above two are very difficult, businesses are not doing them and are not likely to start doing them.
who has a Mac? everyone!
Posted Nov 18, 2009 19:18 UTC (Wed) by dlang (✭ supporter ✭, #313)
[Link]
answering your objections in reverse order
for hardware support you target getting your driver in the kernel.org kernel. all the distros pull from that (and most of the backport drivers)
as far as developing closed source apps for linux, this is not as hard as you make it out to be.
you don't need to target a specific desktop environment during development unless you _really_ are worried about making the look-and-feel match the desktop (and if you are doing that you need to support skins/themes anyway) look at freedesktop.org for how to do things in a desktop agnostic way.
I agree that when it gets to final compiling and testing of the application it's more work to test with the different distros. but in most of the time the problem is more in packaging dependancies than actually needing different binaries (you can get unlucky with one distro updating a library in a way that's not backwards compatible, but this is uncommon)
if your entire QA effort is manual then this can be backbreaking, but if you have automated testing of your application (which is becoming more and more a requirement anyway), then adding additional platforms to test on is relativly cheap.
it is different than latest-version-of-windows-only development, but nowdays even windows development requires testing on multiple platforms (XP Vista, 7 at minimum)
who has a Mac? everyone!
Posted Nov 18, 2009 19:28 UTC (Wed) by dlang (✭ supporter ✭, #313)
[Link]
also on the windows platforms you need to test, don't forget that you need to test with every service pack
so in windows you have three 'distros'. XP, Vista, Windows 7, possibly 98
each of these have several releases (plain, SP1, SP2, etc)
in Linux you have a few families of distros to support RPM distros (RHEL, Fedora, Suse) and deb distros (Ubuntu and Debian) not much worse than the windows
each of these will have more than one release version out at one time (2 for Debian, 2 for Fedora, 3 for Ubuntu + LTS versions, etc), again, not much worse than windows
who has a Mac? everyone!
Posted Nov 18, 2009 19:45 UTC (Wed) by boudewijn (subscriber, #14185)
[Link]
At the company I work for, we develop an application that has binaries
available for Windows, OSX and Linux. It's partly open source, but there
are closed source plugins, and in any case, given our development model,
nearly everyone uses the binary installer anyway. I'm not sure whether the
app is within the definition of commercial software -- but there is no
volunteer work done on it.
We use Qt, of course, otherwise we wouldn't be able to develop the
software with 3 to 5 developers. And on Windows and Linux we use bitrock
to create an installer. We only target 32-bits linux, though some people
have compiled the open source parts on 65 bits linux, mostly gentoo. It
works perfectly fine on my OpenSUSE and Kubuntu systems. We have about
60,000 Windows users, about 5000 OSX users and about 300 Linux users.
Despite having a lot of automatic tests, all operating systems give us
pain: on OSX it's hard to support 10.4, 10.5 and 10.6 with one binary, and
besides, we've only ever got access to the latest Apple hard and software,
For Windows, side-by-side errors are bad. One version of Visual C++
actually creates corrupt manifests, The differences between XP, Vista and
Windows 7 are particularly time-consuming. For Linux, the biggest problem
is running the autotests: our test machine doesn't have X11... And we had
a lot of problems with different versions of gstreamer.
All in all, if you develop your commercial desktop software using Qt,
use the Bitrock installer and have decent automated tests, providing your
application for 32 bit linux as well doesn't cost a lot of extra effort.
who has a Mac? everyone!
Posted Nov 18, 2009 20:06 UTC (Wed) by mikov (subscriber, #33179)
[Link]
How does Bitrock handle .so dependencies (even Qt itself) in different distributions?
The (only?) positive thing about Windows is that binary compatibility between OS versions is an explicit goal. While I still was a Windows developer we had no problems moving software (including our kernel drivers) between NT4, W2K and later to XP. Of course I don't claim this is universal, because our packages were pretty self contained. Also, i realize that Vista introduced more significant changes and breakages compared to, say, XP.
who has a Mac? everyone!
Posted Nov 18, 2009 20:25 UTC (Wed) by dlang (✭ supporter ✭, #313)
[Link]
window's binary compatibility is like Java's source compatibility. it works all the time, except when it doesn't
yes it's a goal, and yes it works a lot of the time. but it doesn't always work.
for linux systems, you can take just about any binary from one distro and run it on another distro. the .so files are all named the same way so if they are there everything works.
the cross-linux-distro problem is more a matter of how to make sure that all the right packages are there, and where are all the config files than anything else.
there are a lot of companies selling software for linux, many of them charging lots of money for their software. some of them take a hard line attitude like 'we only certify RHEL 5.0, if you upgrade to RHEL 5.1 you are on your own', but many of the recognise that the distros are all more the same than they are different and instead say 'we have tested this on RHEL 5.0, it should work on anything else, contact us if you have problems'
the companies that take the first attitude are very slow to support any new distros or releases, frequently when a customer says 'I will buy your product if you support distro X' (I've done this to a few products).
companies that take the second attitude tend to be much faster to add 'supported' distros to their list.
who has a Mac? everyone!
Posted Nov 18, 2009 21:30 UTC (Wed) by boudewijn (subscriber, #14185)
[Link]
Basically, you package everything you need, Certainly all the Qt
libraries
you use, but also other libraries, we're not using the system Qt. It
doesn't solve everything: the gstreamer problem I mentioned above was
because we didn't want to package gstreamer as well, and the gstreamer on
ubuntu and gstreamer on OpenSUSE weren't binary compatible, so when we
packaged the Qt Phonon library, which uses gstreamer, we had problems. (Of
course, Phonon couldn't play mp3's on XP, but could play wav's while it
was the other way around on Vista.)
The set of libraries we package is almost the same on Windows, OSX and
Linux, by the way. On Windows we have to package the c runtime, as well,
that is the main difference.
who has a Mac? everyone!
Posted Nov 18, 2009 21:18 UTC (Wed) by dbruce (subscriber, #57948)
[Link]
Two observations regarding laptops:
1. In my "real job" (surgery) - at least 95% of folks use Windows laptops, with the rest using Mac. I've never met another MD in real life who uses Linux, and perhaps 5% have even heard of it.
2. At this year's Google Summer of Code Mentor Summit, I would guess about 70% of laptops ran Linux, 25% Mac, and 5% Windows.
The Future of Linux is Google (PCWorld)
Posted Nov 18, 2009 11:32 UTC (Wed) by fb (subscriber, #53265)
[Link]
I meant to talk about academic research staff (not the students). As I said, right now most in this group use Macs or Windows.
The Future of Linux is Google (PCWorld)
Posted Nov 18, 2009 16:27 UTC (Wed) by shmget (subscriber, #58347)
[Link]
Yes it is US-centric. Mac is making much less in-road on the other side of the Atlantic for instance...
The Future of Linux is Google (PCWorld)
Posted Nov 18, 2009 17:43 UTC (Wed) by drag (subscriber, #31333)
[Link]
It's very regional.
I have yet to see a _SINGLE_ Mac OS laptop in any meetings or with anybody
that I've run into in any part of the company in a professional basis.
A few people developers have Linux laptops, but by and far the vast majority
of people use Windows.
I know that there is a single Mac floating around somewhere, due to me
paying attention to traffic on the network, but I have no idea were it is at
or who is using it.
Mac users
Posted Nov 19, 2009 15:22 UTC (Thu) by sumanah (guest, #59891)
[Link]
Yes, I imagine the extra cost of shipping Apple hardware to Europe and Australia is high enough that it affects what proportion of users choose a Mac.
Posted Nov 19, 2009 15:57 UTC (Thu) by boudewijn (subscriber, #14185)
[Link]
Macs cost in euros what they cost in US dollars in Europe generally
speaking -- even though the the US dollar is worth less than a sesterce
after Obelix is done producing menhirs for the Roman market. But I doubt
the reason for that is transport.
Mac users
Posted Nov 19, 2009 16:18 UTC (Thu) by nye (guest, #51576)
[Link]
Wow. Regardless of the type of machine, I'm amazed at how many there are. Is that typical? I graduated with a CS degree from a fairly highly-rated UK university in 2007, and there were never more than a handful of laptops taken into lectures. I wonder if things have changed so much already...