64 comments

[ 2.8 ms ] story [ 119 ms ] thread
Good. I do not want open source to prevail. I want free software.

On a less provocative note, I don't understand the argument about web apps. There's tons of FOSS web application frameworks and widget toolkits, and the web is slowly conquering the desktop, for better or for worse. Has it not dominated?

No, it has not.

The future of computing is on apps coded against one of two proprietary platforms: Apple's or Google's.

The future of computing is on apps coded against one of two proprietary platforms: Apple's or Google's

That's an overly narrow view that seems to equate all of "computing" with "smart phones / tablets". I don't think that's a very accurate view. A lot of what happens on computers has nothing to with either.

It's quite accurate for consumer computing though. I just don't see that Android is closed source in that way; the implementation you program against to make the software people use on their tablets/phones is Open Source. Same with ChromeOS. Not so with Windows or iOS or OS X.
You do get a lot of the standard opensource tools with OS X, though. Since Apple uses Obj-C they own the frameworks but if you follow their development models, everything is cake.

It's not like Google isn't providing closed source api's too, though.

Since you can't use that open source implementation to make Android devices, it's effectively just an SDK. Android itself is closed.
Similar to bitwize, I think the desktop is, for better or worse, for the largest population of users, dead. The cohort of 'casual' or 'everyday' users interaction model/experience is mobile and/or Tablet. And in those eco-systems favor closed source Apps. There are a number of factors that make that true at the moment, from the UX of owning the whole screen, to App store policies that forbid 'simply visits a webpage' type app submissions, and everywhere in between.
> Has it not dominated?

Yes in term of lob/100 page "fairly large" form apps, No in term of native apps that actually do something.

When people show me a Photoshop,Indesign,Final Cut or a 3ds Max (fully featured,not just 3 edit tools hanging around) built in HTML,that work OFFLINE,that can open gigabytes of datas, with great performances on low end hardware, i will agree ( Which my old macbook does with no problem with these native apps).

Let's just take the many text editors built in HTML/JS , try to open a 10/15 mb text file(an apache log file for instance),execute a search/replace with it and see how it performs.

HTML everything is a promise, an idea that can be only fulfilled if the browser engines(not just the javascript engines,the DOM is not javascript) are as fast as native os(and hardware becomes faster too). That's not the case today. So people can say javascript 'is fast' all they want,that's not the bottleneck anymore.

Mobile: dominated by Apple and the faux-open Android.

I have a 3.5 year old phone running Cyanogen Mod 10.1 (Android 4.2.2) and all the sources for it. How is it "faux-open"? It passes the ultimate test: it builds.

For all the reasons everyone keeps mentioning here: the top apps people want for Android are not open source.
(comment deleted)
It's not so much that, it's that a rather large percentage of the apps people want for Android won't run on AOSP. They require Android + Google Services, which are all closed.
I think that's what I meant or maybe you mean something else; what kind of thing are you talking about? People want the Google services apps but which apps people want which are not Google apps require Google services?
A large number of apps require Google Services be installed and won't work with bare AOSP anymore. Location services is part of Google Services now, so apps that require it need GS. Every app with in-app purchasing won't work without Google services, so you can forget about most games working on AOSP.

There isn't one Android anymore. There's the base pure open source Android, aka AOSP. There's Android with Google services, which supports things like the Play Store, in-app purchases, location services, etc. There's Amazon's Android fork which has some of their own APIs inserted for in-app purchases and location, but Play Store, Google Chrome, Firefox, etc are unavailable for it. Now there's Nokia's new Android fork which will have its own set of APIs for location, in-app purchases, etc.

If this is an important issue then are there not people working on open source implementations of some of the apps? Maybe we can see a "distribution" of android that comes with f-droid and a host of other open source software preinstalled.
What application did you use to post that comment? Is it Open Source?
I posted from my laptop and used Aurora (Firefox) running on Ubuntu so... technically, yes but in a rather unsatisfying way.
Why is that unsatisfying? And why is it just "technically" open source, is it not open source in spirit as well?
Oh, yeah. Ubuntu and Firefox are completely and satisfyingly opensource but the answer isn't because I didn't use the very phone I was praising. Technically, I used an opensource app but not in a way that would support my point.
It's faux-open because it's not developed in the open. Google just code-dumps Android after every major release, only OEMs have access to development builds. If you don't get a Google paycheck it's thus very hard to contribute to it as an open project.

It's faux-open because almost every single Android device needs proprietary kernel blobs & firmware to operate almost any non-trivial hardware feature on the device. In practice this pins you to specific kernel versions/APIs, and you're running code you can't change or even audit.

I have a $10 bet with a co-worker that Android 5.0 will remove the ASOP application from standard distribution to force people into the closed source Google+ integrated replacements.

I also have a double down that by Android 6.0, open source Android will effectively be reduced to a boot loader that boots the closed source Google+ Play blob that contains all the system services.

CM is not Android, it's AOSP-based. Android is closed source but it's very similar to AOSP. Same goes for Chrome/ium and Chrome/ium OS.

You can indeed say that most mobile users are on a proprietary OS and most desktop users are on a proprietary browser.

Wordpress, Joomla and Drupal? No thanks.
No comment on Joomla or Drupal, but I am currently building out a large marketing and documentation site for a client, and Wordpress is extremely well-suited for the job.

I do laugh at its hacked together nature, inconsistent naming conventions and multiple functions that do almost the same thing. Still, at the end of the day, I'm able to crank out pages very fast, and the writers are able to easily customize and populate them with content.

I went through a WP-hating phase for a while too, but at this point, I've realized that it is THE tool for your standard, somewhat-dynamic, large to medium sized website.

Who made that chart? It doesn't even mention Rails so I'm assuming it's pretty much made up.
It only mentions the very biggest players. While Rails is popular on HN, it doesn't surprise me that compared to PHP, ASP, and Java, it doesn't have much market share.
Keep in mind that the level of hype often doesn't correspond to the actual amount of usage a technology experiences.

Yes, Ruby on Rails has been widely and frequently publicized. Yes, there are some people who have a semi-religious devotion to Ruby on Rails, and are quite vocal about it. Yes, a number of books have been written about it. Yes, training is available for it.

But in reality, we really don't see it used all that much, at least compared to PHP, Java, and ASP.NET. The numbers given in that graphic may not be exact, but I wouldn't be so quick to rule them out, either.

Out of every professional programmer I know, probably 1% use PHP and 90% use Rails. (The other 9% use either Python or Clojure or something more exotic.)
Who made that chart? Where's Node.js? Just kidding, Node fan here ;)
Android is such a miserable experience that it has made me turn in my phone for the first closed-source computing device I have owned in 9 years. The latency on everything is at least 200-300ms, which makes typing consistently difficult (as if the moronic autocorrect didn't make it impossible anyways). The battery consumption is terrible (I have never been able to go more than 12 hours without a charge, and after a year, it is more like 3-4 hours). The apps are buggy as hell, and crash all the time. And they are always riddled with bloatware and carrier apps that are not removable. If you don't like giving away ever-expanding permissions to random apps, you either get pinged about it daily as everything tries to auto-upgrade, or you have to delete the app (which, like I said before, isn't always possible).

I hate apple, and I hate that I'm giving them my money, but just the latency issue alone is enough for me to give up on Android.

Help me Mozilla, you are my only hope.

Seriously? Are you implying that there's one and only one type of Android device?

My Galaxy S4 is rooted and flashed to semi-vanilla Android with no extra application bundled. I charge my phone every 3 days. Using my preference of keyboard software makes typing much faster and easier and my keyboard is more efficient than keyboard on iOS 7.

Regarding your latency issue, this is probably the hardware fault. It's not a "known" issue with Android.

However what you were saying might make sense if the last time you tried Android device was 4+ years ago, in this case, Android has really improved greatly lately.

Not sure what android phone you were using, but my Nexus 4 has definitely provided an amazing android experience. Your phone must of been $50 because my latency close to none. Be smart and download apps that are trusted, not one of the thousand "flappy bird" clones that just give you ads. Also bloatware only gets on your phone if you put it there. I've removed all the carrier apps on my family's T-Mobile phones(all android). Giving permissions up? I believe I can tell apps what to use from me, just edit their permissions in the settings. Pick a phone that's reliable and then complain.
I have a Nexus 4 and the experience isn't as nice as it should be. Though he's full of the hyperbole he has a point.

On my Nexus 4 (without carrier apps) I can't remove Chrome, Drive, Currents, Email, Gmail, Keep, Hangouts, Maps, Photos, Play Games, Play Movies and TV, Play Music, Play Newstand, News and Weather ... the list goes on and on. That adds up to a ton of space and clutters my menu. I want some of them, but I don't want some of the others, either way I'm stuck with them, which means I by default always need to get the more expensive phone with more storage because more and more things come with the phone, that's even _before_ a carrier touches it.

And both the UI performance and battery performance woes on Android phones has been well documented. I've had every flagship Nexus/Google phone since the G1 and battery life and performance are not getting better overall.

Every time they make an improvement in Android that improves battery life they just ship a thinner phone with a faster CPU. My G1, Nexus One, Nexus S, Nexus 4, always have lasted about a day. I don't own a Nexus 5 yet but have friends that do and they do the same thing I do - a house/car full of chargers and a battery pack for travel.

Don't get me wrong I still like my Android phone, I just don't love it.

You can fully disable these apps in Settings and you won;t see them again anywhere. As for the space, unlike iOS, you can install another OS with Gapps at all.

UI performance woes? Coming from an iPhone 3GS, it's flawless to me. As for battery, it fits my bill and it's the price to pay for the huge screen.

What kind of Android device did you have? What version of Android was it running?
Indeed... everything you posted is the exact opposite of my experience with stock Nexus 5 and my non-techie friends with their S5's and Galaxy Notes.
Anecdotal, but I've got a Nexus 5 and its substantially less stable than the Windows Phone I had before it, or the iPhone before that. Not full phone crashes, but a "Unfortunately, X app stopped" messages. I'm not a power user by any means, and I don't run anything more exotic than Yelp. So when I run into a bug with basic functionality, like cropping profile photos, its irritating. Also, battery life is shit, won't get through 24 hours with 4-5 hours of screen use, which my iPhone could (see Anandtech's benchmark where he measures LTE web browsing time, in which iPhone dominates despite its tiny battery). Its a good phone with a great screen, but the software stack just isn't as solid as WP which is itself less solid than iOS.
Most of the "Unfortunately, X app stopped" messages are not a result of Android itself, but of bad developers who don't thoroughly debug their apps. That's not really an operating system problem. If an applications crashes with an exception or some kind of issue do to a developer, it's not reasonable or fair to blame the operating system. I don't blame iOS when a buggy app crashes.

Also, I easily get about 24+ hours of battery life on my Nexus 5 with 4-5 hours of screen use. If you look on the Nexus 5 subreddit, some people have difficult getting more than 3-4 hours of screen time while others (like me) have no problem getting 4-5 hours.

The iPhone has a screen size of 4" and the Nexus 5 is 5" - does your iPhone battery last proportionately much longer?
The Nexus 5 has 56% more screen area, but also a 56% larger battery. The Nexus 5's screen is bright, but the iPhone's is even brighter. Anandtech found the iPhone 5s got 8.57 hours of LTE web browsing, versus the Nexus 5's 6.9 hours: http://www.anandtech.com/show/7517/google-nexus-5-review/3 (all displays at 200 nits).

The iPhone/iOS just seems to have a better-optimized LTE stack. If you look at Anand's data, the iPhone drops less than 5% from WiFi to LTE, while the Nexus 5 drops 23%. iOS seems to also be much more aggressive about powering down the radio to avoid burning a bunch of battery life in bad signal conditions.

I have an old Galaxy S2 banger running the Samsung official Android 4.1.2 and I hardly ever notice UI latency issues.
Apart from the bit about the nonremovable carrier apps, the rest of what you said is FUD. I've got a Galaxy S3 and there's no latency like you talk of; typing with Swype (not available on iOS) is amazingly easy, and is actually the only app I've ever used which has left someone slack-jawed with amazement; the battery will last a weekend on standby, but only 3-4 hours of constant screen-lit use; most of the apps aren't buggy; you can tune what alerts you; so on and so forth.

Did you pay a premium price for your low-battery-life, high-latency phone? Or was it at the cheap end of the spectrum?

Huh. I'm quite fond of my Galaxy S3, but I've got to admit that latency is often an issue for me. Perhaps it depends on what apps you've got going in the background?
Galaxy S3, and before that, HTC Thunderbolt
To me the issue is that you have a smartphone that runs a virtual machine instead of native software. What you describe is what I have hated from Java the last 10 years.

Mozilla would be more of the same right now, as Javascript is also not native.

My best bet is Ubuntu Phone, whenever it's ready.

Just remembered, read it somewhere: "Open source, as rock'n'roll, will never die."

Truism. I believe in it.

There was no battle and there is no war. Different methodologies and philosophies surrounding software development have different pros and cons, which themselves change over time as the tech industry changes.

If people want to choose to view the tech world through a filter that projects everything into some open source vs. proprietary software conflict, fine. There are many such filters though.

Someone could have a similar filter that only cares about vertical vs. horizontal integration. It might even be instructive! Microsoft was on top of their game in the '80s and '90s because they had the right business model (horizontal integration- sell the OS and have everyone else make the hardware it runs on and the apps that run on top of it). Other companies have more recently had more success with a more vertically integrated approach, where the hardware and the software are explicitly designed with each other in mind to maximize things like performance, power management, size, shape, and UX of the resultant products.

As things like the mobile industry continue to evolve, we may be moving back into an era where horizontal integration becomes dominant again. And maybe that will lead to another era where it goes back to being dominated by vertical. Who knows. But at no point did vertical or horizontal ever "win" (although plenty of pundits said it did in the '90s), and there is no endgame where one does. It's just a pendulum that swings back and forth. If it ever stops, that means that the entire industry has ground to a halt.

The exact same things can be said about open source vs. proprietary, including the fact that the two are not mutually exclusive. Plenty of things have open source as well as proprietary components, and plenty of companies have some mix of vertical and horizontal integration. I'm not saying these perceived dualities in our industry are comparable, as they describe very different things, only that describing it as a war with an ultimate winner or loser is futile for the exact same reasons.

People should absolutely love open source and be inspired to be proponents of it wherever possible, but I always take great exception to philosophies like RMS', which seem less about emphasizing a particular set of virtues (freedom, openness, sharing, etc.) and much more about demonizing something else. RMS' life goal is not to promote free software, it's to destroy proprietary software. Do what you do because you love something, not because you hate the opposite of that thing. That always leads down very unfruitful paths, including casting everything in binary terms and thinking about things like imaginary battles and wars instead of simply doing great things in the manner that most inspires you and encourages others.

To backtrack a little on the last point, there are plenty of things in the world where the right thing to do is to fight against it- racism, ethnic cleansing, etc. But I just fundamentally, axiomatically do not see anything related to how software is written and distributed as being one of those things. Part of the reason this topic always leads to flamewars is that the core, fundamental disagreement ("is using and/or distributing proprietary software unethical or immoral?") always comes down to the debaters having different gut feelings about the issue that cannot be logically determined. It's similar to the abortion debate in that respect- someone who is convinced that all abortion is murder is not ever going to be convinced otherwise, because the topic descends into different people's axioms about morality that cannot be further decomposed into statements that can be logically debated.
But I just fundamentally, axiomatically do not see anything related to how software is written and distributed as being one of those things.

It's simple. I don't know about a "fundamental, axiomatic" proof, but the situation is that proprietary software is obscurantist in its nature and is in direct conflict with information dissemination and the openness that we herald our computing and the Internet as being so important for.

Our society is destined to be dominated by digital technology and computers. All facets of our lives will become digitized and as a result, the ones who control our computing control the way we live. Proprietary software is tantamount to slavery, where the users are helpless and unable to exert control over the technology that governs them.

Linux is younger than I am. GNU is two years older than I am. Anyone making smart statements about the long-term prospects of a spontaneously organizing tidal wave erupting from a vacuum needs to take a step back, stop talking, and find something worth working on to them personally.

Web is mostly a distraction for proponents of FOSS. Web developers consume the foundation of FOSS and, without moving past web development, cannot contribute to that foundation. I don't honestly look to domination of web software components as a source of open source growth or an indicator of open source health. Web developers are users and FOSS is powered by developers.

Put more stock in Valve and Crytek's long-term influence on developers using Linux to game on. They subsequently can learn to program Linux, and that's way more influential than 99% of the garbage out there about web being some egalitarian magic kingdom where open source and individuals can thrive, so there. Gaming is one of the last great bastions of totally proprietary software platforms where users with the natural propensity to do so do not eventually become developers.

Most web developers are not writing servers or browsers in C, but within the web ecosystem open source is really the only choice (to build with). There could be more people open sourcing their whole startups, but in terms of building blocks, open source reigns supreme in the world of web.

I mean, look at the HN frontpage on any given day. A good half of the posts will be about some new open source module or framework that someone has put hundreds of hours into. Closed frameworks are regularly scoffed at and treated with great suspicion. In the Node community, it is a common practice to open-source modules without giving it a second thought, just part of a day's work.

I'm not sure I really understand your point, could you explain?

The behavior in the node community as you have described can be taken as an example of just how community-minded FOSS developers naturally become, and not necessarily even slightly out of some sense of geek-altruism. The choice to support the FOSS community or more closed-source development is as clear-cut to developers as choosing between a lush rain forest or bio-domes scattered throughout the desert.

Imagine a world where every developer learns to program using open source tools and has participated in one open source community prior to college or on-the-job training. Does any individual developer choose to use closed source and become embedded in a bio-dome where their capability to survive is permanently bound to the decisions of the bubble around them? Does any manager of developers expect to be able to direct developers to do this? Does any executive expect to retain even part of their personnel by telling them to willfully extract themselves from the rich ecosystem in which such demands cannot be made of them?

Let's take OpenGL vs Direct X for example. MS says, "Learn Direct X or else your games are doomed to only use 50% of the display's luminosity range!" This is obviously crap, and MS will make tons of moves specifically to implement their software as a yoke upon developers captured by their tool-chain treadmill. You like Active X. You really do, and because you've learned to use it, now you will have a little sign on your website that tells people that IE is required to use your government service. You will specify it in job ads. You will recommend it as a developer, a manager, an executive, a South Korean politician. Your investment will chain you, your users, perhaps your entire country to tribute payments.

Oh, the company can make money. So can the developers, and there is no union necessary because there are no scabs, no hard manufacturing assets, or any other reason other than entrenched, slowly eroding fiefdoms that can convince developers to choose the bio-dome over the rain forest. Corporate, closed-source software development is in a quite precarious arrangement compared to manufacturing and amorphous labor. This is true, even withstanding the still-entrenched gorillas like Apple, MS, Oracle, Google, etc etc etc.

The point of this is that if everyone develops with FOSS first, get ready to see major hemorrhaging of anachronistic bio-domes until their glass is shattered and the ecosystem thrives straight through them. This is bigger than web. Imagine how many wasted resources will be recovered and how productive new companies can be.

This is a quite attractive future depending on who you are. Web can't take us there. Web is not the thing that breaks down all walls. Mozilla can try and try and try. Web is always going to be waiting on standards while other programmers just do, no call for comments required.

The other thing I'm getting at is that web is not a primary indicator of the growth of FOSS because not everyone who uses web has access to the tools that can be used to create web. Web is more Gutenberg Bible than printing press. You need access to the press to become more than just a consumer of the fruit.

In the sense that drawing nascent developers, before they even think of programming, into the FOSS community, forever freeing them from the illusion that rowing the monopolist corporate bireme is a necessary part of life, what Valve and Crytek are doing by improving their strategic relationship with FOSS might as well be the invention of artillery in a land of castles. Linux as a gaming platform fuels a new wave of Linux users with a strong propensity to find joy in programming, the users most likely to become developers. What's going on in gaming on Linux is what leads humanity to a FOSSier world. Valve is one of the rare companies that is in position to push this change and benefit if this change becomes reality.

(comment deleted)
Yea, I haven't played a game for like more than 30 minutes in the past 15 years (since I was 12 or so), but I am very excited about what Valve is doing.
Zoroastrianism is about 2500 older than me, it surely should be thriving!

Honestly I don't see what your first paragraph adds to the discussion besides being an argument of authority of your own opinion being more valid than of anyone younger than you.

About the rest, I can not see how having an end-to-end full open source ecosystem is a worthwhile goal. Open source developers have shown a great propensity towards politics and petty conflicts of personality.

I believe the basic stack of our computing lives should be open source, to have a level playing field where all competitors and collaborators can gain users based on merit. But software applications should be able to be closed source if the users wants them.

Gaming can stay closed source if that creates better games, as a game is almost never a library or an API that can influence other software. And specially: because experience and practicality have shown that closed source games are better.

I want to enjoy the best software possible. In the case of games, I want the best games possible. I don't care if they are closed source. In fact, it's better if they are not, as this will help prevent multiplayer cheating.

I want Valve doing Linux games because that will motivate someone in the future to create some kernel innovation, but I want Valve doing Linux games also because I want good games in my favourite open platform, instead of the crap tux games showcased as better in some way just because they are open source.

(comment deleted)
That's a screaming headline, but not a lot of meaning within. Actually, I understand what author is trying to say, but it's pretty pointless. Yeah, I also see a problem out there, but it's a little deeper than "only Mozilla understands".

Open Source Software is there because somebody is writing it, software isn't going to write itself. And mostly it's alive not (at least "not only") because somebody is financing it, but because there are people that both can and want to write it. And, oh, I should've said "make", not "write", because making it is so much more than just writing it. Especially when we talk about general purpose client-side apps author cares about so much.

And here we have problems with both "can" and "want". Generally, people that are actually able to write software prefer slightly different stuff from your "typical end user". Actually I don't know a single browser that I would still like and it's pretty obvious that your "typical user" won't be so much delighted by my beloved CLI apps.

But what really makes me sad is that "can" problem. There might be enough of those who can do some simple coding in community, but it still takes large company to hire somebody who will cooperate with programmers to make beautiful design for their app or some folks that can do some serious math/programming. FOSS apps still generally suck in terms of UX and visual design (at least for that typical end-user). There's no FOSS that could compete against Photoshop or Cubase or be even close to quality of Google's text-to-speech services.

Of course there's no one to blame except ourselves, but if you want to see the problem — here it is. It's about us improving our skills to be able to build something outstanding, to build it for free and make it open source.

What's interesting is that the 4 markets that the article listed have reached commodity status so we can infer that open source dominates once the market reaches the point that there is insufficient profit in the mass market for proprietary solutions to dominate. See the Java IDE market as another example.

(If you are playing in the high end of the market and can bring something other than technology to the fight, quality, user experience, ease of use for example then proprietary can keep a foothold).

So the question then becomes can the other layers become commoditized to the point that Open source wins out in those ?

Why does it have be a war? Why is open source only considered a success if it drives proprietary software out of business?

Don't get me wrong. I love open-source. I've been using and contributing to it for 15 years. But to me, success is having a high-quality product, a vibrant ecosystem surrounding it and an active, engaged community using and contributing to it.

As long as all those things are true, who cares what everybody else does?

We will NEVER win the FREE software war, no matter how many battles we have won or will win. It will all be irrelevant, as long as the current economic, Geo-political paradigms (central banking model) are in place, then Free/Open Software will never grew to its' maximum effectiveness.

In smaller countries like Scandinavia centralization works VERY well. That is due to their homogeneous nature. In US, we may require something decentralized and more resilient model to have the Free/Open Source software movement. Something where people have incentive to work on good software without wanting to get bought out by the next google or facebook.

Why does FLOSS need to be centralized?
Sorry, maybe I miscommunicated something. They don't need to be centralized. Although I do think TRANSPARENT centralization can play a benefit part of the ecosystem.

I just meant in other aspects of government, everything is very centralized in Scandinavia, and it seems to be work very well there. However, that should not be translated to US, where we have much larger and diverse population.

I hope that make sense?