Swift: Apple's Biggest Achievement For Coders
GordonShure.com writes: Despite its publicity and hype being rather quiet by Apple standards, the Swift programming language has attracted praise since its release last year. Swift is one of the few Apple products that represent a departure from the hardware-led Steve Jobs approach to the business. If this year's survey of coders by Stack Overflow is anything to go by, it looks as if the language might have potential to really shake things up in a landscape which has been little changed since the 1990s. Might the days of Apple programmers relying upon objective C be numbered?
How's Swift's cross-platform suitability?
There are two Apple platforms, one popular Google platform, one less-popular Google platform, plus Microsoft's platform. Is Swift suitable for writing applications for all? If not, developers would be writing for a limited, albeit popular platform, but limited to a certain subset nonetheless.
Do not look into laser with remaining eye.
I haven't seen it mentioned on CNN or the BBC, but there's about a dozen stories about it per day on a former tech new website.
In fact, it's pushed 3D printers off the number one spot.
Confucius say, "Find worm in apple - bad. Find half a worm - worse."
Obj-C is on the way out. I say this as one who has used it since 1989. I'd guess that we're about a year away from the point where the majority new code at Apple is written in Swift.
-jcr
The only title of honor that a tyrant can grant is "Enemy of the State."
I keep seeing this survey and there's so much weird shit in it, I gotta think something is very wrong with the results.
Swift, if anything, is the new VB.
What is a "coder" anyway? These days it's someone adding gratuitous javascript to shoddy html and convoluted css through crappy php and many, many layers of entirely superfluous back-end magic. Because cloud, baby. The "app" scene isn't much better, reinventing the bad reinventions even worse.
If this year's survey of coders by Stack Overflow is anything to go by, it looks as if the language might have potential to really shake things up in a landscape which has been little changed since the 1990s
"Most Loved"
"Most Wanted"
Antisthenes: "Wisdom begins by examining the words/names." - excuse my English, i am (slightly...) better with my Greek!
Not exactly big unless you only care about iOS/OS X. I don't see a future for Swift outside that niche.
Swift was mentioned on CNN here
It was also mentioned on BBC here...
I've seen mentions of it all over, on a lot of non-tech web-sites. That has been kind of amazing.
Coding is starting to matter more, especially as black hats affect more and more people - so people are starting to care about it more generally, even if they don't really understand details yet.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
Swift in its first year has become the preferred language for developing on the Apple platform. Objective-C is being "improved" but only as a bridge to support interoperability with improvements that are being incorporated into Swift.
There is a lot of Objective-C code that will have to be maintained, and over time it will be replaced with Swift code... but it won't disappear overnight. In a year all new development is likely to be done in Swift, while Objective-C is just maintained.
Eventually -- in many years time as Objective-C code is revisited it will be phased out.... but it will be a very long time-frame.
If you are starting development on a new application - you would have to be very short-sighted to pick Objective-C as a starting point.
It's clear that Apple wants to replace Obj-C with Swift. So eventually it's going to happen. Since the Obj-C tools will not be maintained.
Will Swift make inroads outside the Appleverse. Some but nowhere near as much as Apple and it's fanboys are hoping.
Biggest achievement is clearly Dylan. Too bad it doesn't run on the Newton, though.
rust and swift are a powerful antidote to the dangerous DRECK from bell labs.
one can even isolate driver bugs when using a memory safe language for an os kernel.
the russians already work on this, lets see how long the americans continue to excrement on themselves with kernels done in c.
and profit's not a bad thing.
Sure, writing in Erlang and Haskell are interesting, but you're not going to have hundreds of thousands of people paying the rent with that. Apple device apps will allow you to keep body and soul together.
> Objective-C really sucks. It is old (pre-dating C++)
Objective-C doesn't pre-date C++.
Stroustrup started his work before Cox & Love, and published his language first.
In the keynote they announced Swift being open source later this year, including releasing versions for Linux...
Having done over a decade of backend work in the past, I think it would make a pretty good server language also. It's all about the libraries and frameworks that support what you are trying to do.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
The most irritating thing with Swift is its requirement that you explicitly convert numeric types. Trust me, when I assign a double to an int, I know I lose the mantissa. You really don't have to confirm that with me or make me type more to do it. Someone wrote a really nice library to fix that, and then Apple broke it by removing some features from Swift.
I don't know, most long time iOS developers I know, including myself, aren't really jumping all over themselves to adopt Swift. I mean the writing is on the wall obviously, and Apple will eventually drop Objective-C down the road, so we'll have to eventually adopt it. That's the attitude I'm seeing among people I know. Personally I don't particularly like it that much and it seems to be solving problems that don't need a solution, like fucking optionals. That said, there are features of the language I like but I wish they had just continued to develop and refine Obj-C, honestly just getting rid of the bracket syntax and adding some of the features from Swift would satisfy me. Apple characterizing Swift as "Obj-C without the C" couldn't be more wrong. It's more like "C++ without the C" or "Obj-C without the Small Talk"
Most of the talk about Swift seems to be coming from people that aren't iOS developers and don't really have any idea what they're talking about.
How much did Apple pay for this article?
heh, good one.
How's Swift's cross-platform suitability?
Well its now available for Linux and it has been open sourced.
But more importantly its compatibility is largely irrelevant. Keep the UI and core code separate. The core of an app/game should usually be written in C/C++ for compatibility. Its not all that difficult to keep core code in C/C++ compatible for iOS, Android, Mac OS X, Linux, and MS Windows. Been there done that plenty of times. And its often best to just go with the language that is native for the platform with respect to the UI code.
the ability to see if you have a single reference (a feature of reference counting) is a feature needed to optimize string and collection types
What is that? Are you referring to weak variables where the reference goes to nil when the underlying object does? Garbage Collection systems have such references also (Java for one).
"There is more worth loving than we have strength to love." - Brian Jay Stanley
lol swift. lol java. lol objective c.
Qt FTW. c/C++ all the way, windows, linux and OS X for many things.
I haven't coded in objective c or used Apple's *abysmal* cripped UI maker in years. I don't plan to start, either. No call for it at all.
I'm still waiting for the return of hypercard from Apple. There are knock offs out there.
http://hypercard.org/
Swift may "shake things up" in the Apple world, but to other platforms, it's just another language among many. The fact that Apple has focused almost exclusively on Objective-C means it's a major change for their developers, but no other platform has ever had such a single-language focus and won't be affected anywhere near as much.
I realize that to Apple fanbois, Apple and it's platforms are the world, but to the rest of us, they're just one of many fish in the IT sea.
I do not fail; I succeed at finding out what does not work.
Or use Qt for the frontend.
Honestly: it makes no sense at all to rewrite GUI code.
50% or more of the code for an app is GUI ...
No, it absolutely make sense to use the native api of a platform to create the user interface. Otherwise you app does not look or behave as expected and that has been shown to be harmful to an app's success. So if its an internal enterprise app that people will be told to use, fine, take that shortcut. However if your app's success depends on being embraced by the public absolutely beware of these one-size-fits-all solutions. Your app must look native, it must look current, it must support all the built-in shortcuts, etc.
"a landscape which has been little changed since the 1990s."
What? Did the author miss the birth and ascent of C# and subsequent waning popularity of C++? A little something called Go, which just broke into the top 20 languages in the RedMonk index. The crawl from obscurity of Objective C after the release of MacOS X, and later iOS? The evolution of Javascript from a way to make rollover buttons to an application and backend platform? The collapse of perl and the rise of Python and Perl? The emergence of functional languages like Scala, Erlang and Haskell as viable platforms? The growth of R for statistical analysis? Lua for extension? New data query languages like SPARQL, Gremlin and CQL?
As usual, Apple is not the pioneer here. They are treading a path broken by many others.
A better PL, a Swift Book for free, a working pipeline with free (beer) tools ready to roll from day one and no-bullshit support for all the things the predecessor (Obj-C) supported.
That's all it takes to bring a new PL front and center for more than 1 week. ...
Apple knows how to build user experiences and that includes developers on their machines.
Now if only every software technology would take care of things the way Apple does and not promise things their toolkit can't hold for longer than a download and a first tryout.
We suffer more in our imagination than in reality. - Seneca
A new language without support for regex literals is worthless to even consider.
Religion is what happens when nature strikes and groupthink goes wrong.
And the result is that you produce garbage on all platforms. Sorry, but the cross platform toolkits get you nothing more than a moderately broken lowest common denominator as your user experience.
Absence of children = more disposable income.
If that's a weak attempt at an "Apple == Gay" joke, just remember that over 60% of Gay men have biological children, and if you factor in adoptive kids, it's likely in the 80%+ world these days.
So stick that knobby-stick up your ass and twist.
Have you got a couple of actual shipping comparisons? not suggesting they're written by you but it should be easy for you to find some if the difference in experience is so obvious.