Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Apple's botched introduction of Swift is easily responsible for billions of dollars in lost productivity across the industry since 2014.


"Botched introduction, really? Perhaps Apple could have been a bit more upfront about the state of the tooling (which, of course, they never will be) but I think they did a rather good job considering that they moved development out from "total secrecy" to "community-involved" within two years, all the while shipping new features and improvements to the experience at a fairly decent pace.


> “which, of course, they never will be”

That’s the problem. Apple knows by now that their developer community laps up absolutely everything they put out and regularly gets burned. (I’m old enough to have rewritten code for Cocoa Bindings in 2004. It’s the next big thing! And garbage collection in 2008. It will fix everything! And GCD... and...)

For such an enormous change as Swift, they should have switched off the reality distortion field, and gone with a more sober, more academic approach.


Aside from ObjC garbage collection, those things are all still good. Bindings enabled you to create things like complex editable tabular UI without writing any code. And the recommendations about how to use GCD efficiently have changed over the years, but it's still the foundational solution to concurrency on Darwin platforms (including being the basis for the new async/await runtime for Swift).


What's wrong with GCD?


It's a great library for a lot of things. When originally introduced it was also heavily oversold by Apple as a magic bullet for concurrency.

Here's one account: https://tclementdev.com/posts/what_went_wrong_with_the_libdi...


This page overstates the issues. Almost all the initial GCD design is still good, we just ended up with a lot more smaller low-core and non-SMP processors than expected.

Also most of the performance issues are with excess parallelism (runnable threads), not concurrency (hiding IO latencies).


Yes totally botched. We know because have can compare to Kotlin, a project which started around the same time. Google's migration to Kotlin has been progressing very well with no disaster stories like this one. Kotlin was engineered very carefully, developers love it, it scales well and importantly it can be incrementally added to existing codebases because interop is nearly perfect. So the risk to adopt it is far lower. Sounds like Uber got burned with Swift and now aren't really adopting Kotlin which is understandable but IMO a mistake.


I’m afraid it could easily be the biggest mistake made by Apple over the last decade. The bloatedness and slow build time just aren't justified by the shiny, convenient language features.


This assumes a major counter factual where all of the same work was somehow more productive otherwise. Seems dubious.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: