Live data from Hacker News

IBM says Swift is ready for the enterprise

computerworld.com

111–120 of 235 posts

Re: IBM says Swift is ready for the enterprise

#111
post #89

Earlier quoted context omitted.

"Swift is intended as a replacement for C-based languages (C, C++, and Objective-C). " Taken from https://swift.org/about/ "Swift is a successor to both the C and Objective-C languages." Taken from https://developer.apple.com/swift/

Swift can't do realtime. It has automatic memory management. How do you replace C or C++ with Swift for that? What they mean is that Swift replaces Objective-C on user facing apps(on Apple devices) but I doubt you will see the critical parts of the OS (kernel, drivers, etc) written in Swift. It's almost like saying javascript will replace C/C++. I want a nice language like Swift (or Go) to replace C but there is none…

You can essentially write C in Swift by using UnsafePointer and such. If you avoid using reference types then you won't get any automatic memory management. I don't think it's quite ready to replace C as a kernel or driver language, but it's not that far off.

Re: IBM says Swift is ready for the enterprise

#112

When I recently interviewed at Apple I was told my position would primarily be coding in Java, but the team would be open to other languages as the project progressed and needs changed. I asked if they would consider Swift. Then was told that Swift wasn't production ready in their eyes. (I didn't get the job) I guess every team is different, but this attitude to dog fooding isn't great.

[deleted]

Re: IBM says Swift is ready for the enterprise

#113

When I recently interviewed at Apple I was told my position would primarily be coding in Java, but the team would be open to other languages as the project progressed and needs changed. I asked if they would consider Swift. Then was told that Swift wasn't production ready in their eyes. (I didn't get the job) I guess every team is different, but this attitude to dog fooding isn't great.

Swift 3 was just released, like 2 weeks ago. Unless you interviewed very recently then I don't see the problem with that statement. If they had said swift 2 wasn't production ready, then I'd be concerned.

It's more they are aware that there is still no stable abi and they know of breaking changes coming down the pipeline internally already.

Re: IBM says Swift is ready for the enterprise

#114
post #84

I have access to books for Swift 1.0/2.0 as some has given them to me for free. How much of it is useful when it comes to breaking changes that came with 3.0 ?

If you don't already know Swift you'll be wasting your time. Swift 3 looks and behaves very differently from Swift 1. Fortunately, the Apple Swift book is free, up to date, and written well.

Re: IBM says Swift is ready for the enterprise

#115

Earlier quoted context omitted.

To be ready for the enterprise ecosystem basically means that you can sue someone if things go wrong, and you can buy support packages for enormous sums of money. IBM is saying that you can 1) buy bluemix swift from them, and 2) sue them if anything goes wrong - but since they have a great legal team, they probably got ironclad agreements ready to go.

It's not about having someone to sue it's about attracting blame. Blame assignment isn't really about who made good decisions, or who worked hard, or any of that, it's a combination of how bad it went and who made uncommon choices: common choice + failure = external blame (who could have seen it coming?) uncommon choice + failure = it's your fault for doing it weird common choice + success = great job! uncommon choic…

> common choice + failure = external blame (who could have seen it coming?)

"Nobody ever got fired for buying IBM"

Re: IBM says Swift is ready for the enterprise

#116
post #89

Earlier quoted context omitted.

"Swift is intended as a replacement for C-based languages (C, C++, and Objective-C). " Taken from https://swift.org/about/ "Swift is a successor to both the C and Objective-C languages." Taken from https://developer.apple.com/swift/

Those are the claims. The reality does not match those claims.

Not, yet.

That is how systems programming languages get adopted, when OS vendors do "my way or the highway".

Re: IBM says Swift is ready for the enterprise

#118

Overall I like Swift and it's certainly a massive quality of life improvement for Mac/iOS devs. But I don't see as much upside for enterprise development. Server side tooling and deployment is still TBD, reference counting adds non-negligible cognitive overhead vs GC in an environment where the downsides of GC matter much less. They will have to build a complete ecosystem of server-side libraries from scratch. And un…

I wouldn't use Swift anywhere that I didn't have to until the terribly klunky and overly verbose Strings API is fixed - https://news.ycombinator.com/item?id=10519711

This is a typical Apple product to me - they obsessed over their idea of correctness and ended up with something that is difficult to use and completely alien. Meanwhile every other language offers convenience without even stopping you from doing anything else that you might need to do with Unicode...

Re: IBM says Swift is ready for the enterprise

#119
post #20

So... what's the "elevator pitch" for Swift? It has anything interesting over Elixir or Go (well, go's feature is "lack of feature" but you know what I mean) or Scala or Kotlin? I know that iOS and MacOS desperately needed a modern language, and great for them that they have it now, but does the rest of the world need it?

It allows enterprises to use their current iOS and macOS developers to do Web Application and server side applications. For developers it gives them additional ecosystems to use their skills on without having to learn a new language from scratch.

>It allows enterprises to use their current iOS and macOS developers to do Web Application and server side applications.

That's what they said about front-end web developers and now we have nodeJS.

Re: IBM says Swift is ready for the enterprise

#120

Earlier quoted context omitted.

Swift can't do realtime. It has automatic memory management. How do you replace C or C++ with Swift for that? What they mean is that Swift replaces Objective-C on user facing apps(on Apple devices) but I doubt you will see the critical parts of the OS (kernel, drivers, etc) written in Swift. It's almost like saying javascript will replace C/C++. I want a nice language like Swift (or Go) to replace C but there is none…

You can essentially write C in Swift by using UnsafePointer and such. If you avoid using reference types then you won't get any automatic memory management. I don't think it's quite ready to replace C as a kernel or driver language, but it's not that far off.

This is especially true in Swift 3, which has many improvements around this type of programming.
Post reply on HN