This is a naïve view of the situation.
You claim these people are working "for free." In reality, many of these people derive income directly from Apple's software ecosystem. Their efforts to improve this ecosystem will in turn improve their ability to make and sell software, so it's not necessarily purely altruistic.
Second, Swift/XCode is a means to an end: developing software to run on iOS, OS X, etc. If someone begins with the destination in mind (e.g. is letting the product determine the tools, rather than the tools determine the product), then the choice of tools is secondary. You imply that bettering your tools is fruitless if you're not the one making and selling the tools. This seems very shortsighted.
Also, while open source is great, I don't understand this hardline value judgement that open source is good, and commercial is bad. That's your prerogative, but it's a personal preference.
That's an alternative interpretation.
Sure, open source is ideal but there are benefits to helping Apple or Microsoft, for example, improve their software.
Especially considering that their old competitor, Microsoft, and their new-ish one, Google, both open-sourced their language implementations (Go, TypeScript, V8, Dart, even C#…), and were seen as (and, I believe, were in fact) technically superior thanks to that.
Apple wants to be seen as having the very best product. It also wants to ensure its developers don't feel forced to publish something they're not proud of. The way I read this, Apple wants to open-source it, Chris Lattner is being very careful about it.
Tl;dr: beg Chris if you want Swift open-sourced.
I doubt that case is based on any whizbang technology that gives Apple a competitive advantage. I expect that the decision is based on opinions from the legal department and a risk assesment of the potential for being smacked with someone's patent portfolio. Unlike a from the ground up open source project, Apple has a lot of cash on hand and makes an attractive target for lawsuits.
Also unlike a from the ground up open source project, pull requests are a hassle because of licensing and patent issues...again all that cash makes Apple a target for lawsuits.
Finally, the fact that there is a user manual rather than a language specification suggests the possibility [but does not prove the existence] of kludgey implementation compromises for performance/compatibility/expediency reasons. Because Apple is a products company, this sort of code could be construed in a legal argument as Apple having knowledge of latent product defects.
Against all this, what is the upside for Apple? Love from the general development community maybe. But from their business practices in recent years it does not appear to be something upon which the corporation places a high value.
Apple is closed in many ways. But when it comes to compiler toolchains and similar technology, they're quite open. Their LLVM work remains open source. clang is open source. Lots of other tools are open source. I see no reason to think that Swift won't follow that pattern.
That's actually what you just said. Keeping is closed source, and reporting bugs doesn't benefit the developer at all. It benefits Apple.
They may get the secondary effect of this becoming an employable skill, someday, hopefully. But currently isn't, it almost is, but isn't (Judging from the 4-5 swift posts I've seen on HN compared to dozens of js/java/ruby/etc.).
https://itunes.apple.com/us/app/h4-spanish-lite/id388918463?...
Personally, I'm trying to contribute to the Swift transition by aggregating the Swift tutorials on the Internet.
http://h4labs.com/dev/ios/swift.html
At some point, if Apple doesn't open source Swift, I'd gladly help in an open source compiler.
If Apple fixes the bugs how does it NOT benefit me, the developer? The fewer bugs there are the easier development is. Reporting a bug may be helping Apple but that is secondary to helping myself.
Does the benefit from the view of pure self-interest help you understand better why someone might do something that has direct benefit to themselves?
The summary of your attitude is contained in the old phrase "Cutting off the nose to spite the face".
Also, as far as not being an employable skill - I make my whole living from it currently (currently using Swift only), generally iOS has been an employable skill since the release of the App Store so again, you seem to be waving that knife way too close to your nostrils.
For certain aspects of my digital life, this does in fact sound wonderful. I've not found 'open' and 'free' to exist much at all in the mobile world, and where it does it's clunky, frustrating, and insecure. A walled garden sounds good when one is surrounded by barbarians...
A curious attitude!
Now this is an ideal. You can't live like this unless you're RMS. But it is true nonetheless.
If my car breaks I don't submit a 25 page engineering report to Ford. I replace the car, or fix the problem personally and move on. My job isn't to do somebody else's job, especially when that person is paid more then me.
Except this is, of course, false, since you already said he would live in a nicer walled garden. Making the walled garden nicer for him is a benefit for him, regardless of whether it's a walled garden or not.
"If my car breaks I don't submit a 25 page engineering report to Ford. I replace the car, or fix the problem personally and move on. My job isn't to do somebody else's job, especially when that person is paid more then me."
IMHO, this is a very sad attitude to have towards life.
(and what does being paid more or less than you have anything to do with anything?)
> Because it has no benefit for you, only for the company.
Really?! Making a tool you use every day better has no benefit for you? Sure, I can build my own text editor if I really wanted to, but I'd rather send a bug report to BBEdit to fix a problem in an otherwise good product.
Even if you don't bother to report usability issues or suggest improvements or what have you, if you encounter a bug that's blocking progress, sitting on your hands isn't going to help anybody.
(Of course, reporting it might not do much either ;) - but that's something you need to find out on a vendor-by-vendor basis. Some are responsive.)
You don't approve, fine. But if someone does accept the walled garden, what's wrong with making it nicer?
Would you prefer "philosophy"?
Open source is not free. It's charitable work, which might be purely altruistic or might be largely self-interested, or anywhere in between.
For what it's worth, I do believe that the Swift frontend "should" be open sourced. I believe that I would benefit from that happening. I also believe that Apple would benefit, but I won't pretend that it wouldn't come with costs to Apple.
Apple has decided, at the present time, that the costs outweigh the benefits. Their philosophical stance on open source does not persuade them to incur the costs, at this time -- and possibly never will, though we both hope otherwise.
The amount of time required to meaningfully learn from or contribute to something as hairy as a web browser or compiler is large enough that you can only engage with a few. Personally, I never want to have to look at my web browser's source code.
Personally I don't think only open source projects are superior. In some domains like say design tools, paid for tools have much more choice and polish.
1) Steve Jobs' story 2) "Apple as a status symbol"
#1 will probably make them strong for a long time in the consumer's eye, but #2 will fade with time, as I think it's safe to say open-source is a provably stronger model than closed-source. As long as they embrace closed-source, innovation on their platforms will suffer in the long run, and as a result they will (over time) be incapable of producing a better product than their competition.
EDIT: make that more than 1 billion iOS devices: http://www.macrumors.com/2015/01/27/apple-one-billion-ios-de...
I'm thinking more along the lines of: Human, at one point or another, before ever purchasing their first iWhatever, learns or hears about the Steve Jobs' story, which symbolizes something bigger than themselves. An idea they want to, in some small way, be a part of.
Also, I wouldn't say the story necessarily captivates people in the US as much because we are "living the dream" so to speak being here. But for most of the world it is only an idea that is at least an ocean away.
I don't think it's correct to say that just because alot of a certain product has been purchased that means it can't be a status symbol. Regardless, 500M is still only about 15% of the world population, and I think it would be an oversight to think that 500M number represents completely unique individuals.
Just a couple I thought of right quick like.
PracticalSwift tweeted this : https://twitter.com/practicalswift/status/564919949995802624
"5043 crashes before Xcode 6.3 - 1314 crashes fixed (26 %) - 2896 crashes now marked as dupes (57 %) + 10 regressions (0 %) = 843 left (17 %)"
Cool project though. I hope Apple takes notice.
I'd rather have a team of people paid to work on the issues full time handle the problems and build solutions, but maybe that's just me.
I'm not saying there is anything wrong with that. I am only extending the line of reasoning in the comment up an abstraction layer.
Most open source gets written by professionals employed to build something, and the open source work is part and parcel to their day job. I send patches upstream to the open source libraries and tools I use all the time. This is all happening while my employer is paying me to be on the job, and in fact is heavily supported by my employer.
http://appleinsider.com/articles/15/02/07/apples-new-swift-p...