Deep Swift integration coming to iCloud and OS X, says Apple's Craig Federighi

Posted:
in macOS
Apple is beginning to bake Swift into some of its core software, instead of simply supporting it in third-party apps, senior VP of Software Engineering Craig Federighi said in a podcast interview.




The iCloud team has been "completely champing at the bit to be able to apply it in many, many of the things they do," the executive told Daring Fireball's John Gruber. More importantly Federighi noted that the team that does Dock and window management for OS X implemented of all of its El Capitan features in Swift, and has worked on mass-converting its code.

The group said "they couldn't imagine going back and that they're more productive with it [Swift]," according to Federighi.

He admitted that one problem Apple teams have is that they're often working with Swift in a prerelease state. With Swift 2.0 finished, however, current code development is said to be more stable.

On the subject of Swift going open-source earlier this month, Federighi suggested the move was because Apple wants Swift to be the main language programmers are taught. The company sees Swift potentially being "the major language for the next 20 years of programming in our industry," in Federighi's words.

The VP also commented that Swift is already the most active language on Github and that as a result, Apple's Swift group is more involved with developers than any other team in the company.
«1

Comments

  • Reply 1 of 28
    irelandireland Posts: 17,798member
    I'm sure Swift is great and all,  but what do you expect him to say?

    The proof of the pudding is in the eating—let's see if it makes iCloud syncing more reliable and more speedy. Apple has serious work to do in this regard in my opinion.

    Will Apple rewrite iTunes in Swift? Will Apple rewrite all their apps in Swift? Will they've rewrite the OS X kernel in Swift? These are some of the more important unknowns right now.

    iTunes in particular has long needed a FCPX type rewrite, and in Swift, to completely clean up what they app has become and how people will use it in 2016 and on. I'd like to see them split the app in two: Music—jukebox, music storage + optional Apple Music functionality. iTunes—Store, device management, video. And for the love of God, remove the iOS App Store from the iTunes Store and put it into the App Store on OS X, making it the single repository for all your device app downloads when using that system.
    edited December 2015
  • Reply 2 of 28
    cnocbuicnocbui Posts: 3,613member
    How about fixing El Capitan first before you talk of doing anything else.
  • Reply 3 of 28
    cnocbui said:
    How about fixing El Capitan first before you talk of doing anything else.
    Did you actually listen to the interview? There was basically a PR interview around Swift going open source. There was very little discussion around how Apple is using it inside the company. 
  • Reply 4 of 28
    cnocbui said:
    How about fixing El Capitan first before you talk of doing anything else.
    I love these types of comments... OS X El Cap has been the best OS X that I believe Apple has ever released, especially with 11.2, and more than 100 users I support whom have upgraded to it agree with me...
    edited December 2015 tdknoxthepixeldocapplepieguy
  • Reply 5 of 28
    cnocbui said:
    How about fixing El Capitan first before you talk of doing anything else.
    I love these types of comments... OS X El Cap has been the best OS X that I believe Apple has ever released, especially with 11.2, and more than 100 users I support whom have upgraded to it agree with me...
    Me too. I used to hate these types of douchey, trollish comments, but now I love them. I mean if he truly finds using El Capitan to be torture he is getting his just reward everyday (cause apparently trolls don't know how to rollback OS X updates).

    Back in the real world, every release has some bugs and frustrations, but El Capitan is a great update that is certainly as stable as any. It's been good since the beta in fact.
    edited December 2015 thepixeldocbestkeptsecretapplepieguy
  • Reply 6 of 28
    MacProMacPro Posts: 19,727member
    ireland said:
    I'm sure Swift is great and all,  but what do you expect him to say?

    The proof of the pudding is in the eating—let's see if it makes iCloud syncing more reliable and more speedy. Apple has serious work to do in this regard in my opinion.

    Will Apple rewrite iTunes in Swift? Will Apple rewrite all their apps in Swift? Will they've rewrite the OS X kernel in Swift? These are some of the more important unknowns right now.

    iTunes in particular has long needed a FCPX type rewrite, and in Swift, to completely clean up what they app has become and how people will use it in 2016 and on. I'd like to see them split the app in two: Music—jukebox, music storage + optional Apple Music functionality. iTunes—Store, device management, video. And for the love of God, remove the iOS App Store from the iTunes Store and put it into the App Store on OS X, making it the single repository for all your device app downloads when using that system.
    How about a new Aperture in Swift too while they are at it?  
  • Reply 7 of 28

    A few things that are unclear to me:

    One major reason for Open-Sourcing Swift was to make it available for writing Server apps -- including the Server side of client-server apps.  Most servers, today, run Linux (Apple's servers too, purportedly).  

    1) Where does Mac OS X Server fit into the picture?

    Apple acquired FoundationDB earlier this year.  It is a high performance, reliable, transactional, distributed NoSQL DB at its base layer.  It also has the ability to implement other DBs as layers above the base layer -- including various other NoSQL DB types, hierarchical DBs, traditional SQL DBs, File Systems, etc.  FoundationDB (before acquisition) showed various Recipies that demonstrated how to access FoundationDB DBs with Python, Ruby, etc.  I assume that Swift support will be added, and that Apple cloud/server Services (iCloud, iTunes, Apple Online Store, iTunes Store/iOS App Store, Mac App Store ... will use FoundationDB.

    2) Will Apple make FoundationDB DBs available to developers?

    3) Will Apple make FoundationDB available as a Product or as a Service.

    The current Swift 2 implementation includes the ability to intermingle Swift code and Markdown code. Markdown is just a limited/simplified implementation of HTML Markup.  Many server-side scripting languages such as ColdFusion, PHP,  Perl, Python, etc. intermingle their code and HTML Markup to provide logic, and DB access to dynamically generate and serve web pages.  No reason Swift couldn't do this too ...

    4) Will Swift be offered as (or evolve to be) an alternative current web server programming languages.

    Circa 2010, Apple offered a very popular service called iWeb that allowed non-techie users to easily publish a web site.  When it worked, it worked quite well ...  But it was before its time ...  Later it was discontinued.  With todays capabilities (iCloud, Swift, FoundationDB, improved WiFi, AppleTV, iDevices) -- all the pieces seem to be available to do iWeb, again, right!

    5) Will Apple offer consumer-oriented web hosting similar to iWeb?

    The iPad Pro, purportedly, was designed for/with IBM mobile services in mind.  Apple says IBM has provided lots of input (influence?) to Swift development. IBM offers a web site where you can interactively develop Swift programs through a web browser -- an online Swift Playground, so to speak.  It works quite well on computers and acceptably on iDevices.  One big limitation is that it is cumbersome to get code into and out of the site because an iDevice user has limited access to its underlying file system,

    6) Will Apple offer more access to the iOS File system to facilitate programming?

    The IBM web site is fine for interactive Swift programming for non-Apple implementations of Swift.  It does not provide the underlying libraries and APIs for Apple Swift development.

    7) Will Apple provide an Apple Interactive Swift Programming web site with full support for Apple libraries and APIs?

    8) Will Apple supply Xcode for the iPad Pro?

    While iOS includes many constructs from OS X, it does not include some of the more-complex capabilities because of limitations (RAM, Storage, Power, Display Size, lack of precise touch capability, etc.) of iDevices.  The iPad Pro mitigates these limitations.  One construct that is not included in iOS is multi-column tables -- where each column is: rearrangeable, resizable, sortable, filterable, [un]hideable.  

    9) Will Apple port advanced OS X capabilities to iOS for iPad Pro class devices?









    cnocbui
  • Reply 8 of 28
    asdasdasdasd Posts: 5,686member
    cnocbui said:
    How about fixing El Capitan first before you talk of doing anything else.
    I upgraded yesterday and nothing works. The console spews lists of daemons crashing. Xcode can't add an account to its list because it can't talk to a "helper app" which means they screwed up the sandboxing somewhere. 
  • Reply 9 of 28
    knowitallknowitall Posts: 1,648member
    Mr Federighi is one of the best people working for Apple. Swift is a biggie.
  • Reply 10 of 28
    asdasdasdasd Posts: 5,686member
    Dick gets very excited about that database company. 

    The actual story here is that only one team in Apple is using swift and there's no talk about rewriting the Appkit. Want a job in Apple, keep your objective C handy. 

    Thats understanable. The language isn't even pinned down yet and won't be for another year. 

    I'm on the swift evolution list and it's quite busy but if they take every suggestion into account they will end up with a committee built language, with vastly over complicated design loved by language nerds. 
    afrodri
  • Reply 11 of 28
    cnocbui said:
    How about fixing El Capitan first before you talk of doing anything else.
    how about not confusing problems you're having with problems everyone is having?

    no problems here. great release.
    applepieguy
  • Reply 12 of 28

    asdasd said:

    I'm on the swift evolution list and it's quite busy but if they take every suggestion into account they will end up with a committee built language, with vastly over complicated design loved by language nerds. 
    why do you believe theyre going to incorporate every suggestion into Swift? i dont think that at all.
  • Reply 13 of 28
    cnocbuicnocbui Posts: 3,613member
    cnocbui said:
    How about fixing El Capitan first before you talk of doing anything else.
    Did you actually listen to the interview? There was basically a PR interview around Swift going open source. There was very little discussion around how Apple is using it inside the company. 
    No, I just read the article and saw red at the mention of integrating El Crapitan features.
    cnocbui said:
    How about fixing El Capitan first before you talk of doing anything else.
    I love these types of comments... OS X El Cap has been the best OS X that I believe Apple has ever released, especially with 11.2, and more than 100 users I support whom have upgraded to it agree with me...
    Well that's just peachy for you, but El Capitan is no Snow Leopard. It might get there eventually but it's nowhere close yet. Someone else mentioned a couple days ago that there are innumerable threads on the Apple Users forums concerning people having serious problems with many aspects of El Capitan.

    When I moved - I won't say 'upgraded' - from Mavericks, I tried to migrate from a Time Machine backup. What I ended up with was El Capitan with no Finder, with it stuck in a loop saying the Finder had quit and is attempting to restart, several times a second. I spent a lot of time and several approaches but migration was impossible. In the whole process I think I ended up downloading EC about 6 times over a fairly slow broadband connection. I eventually had to resort to a clean install and then had to manually transfer everything from the backup.

    Try this. In Finder, go to a folder with some Epubs listed sequentially. Select one and press the space bar to do a Quick View. See the cover image? Now press the down arrow on the keyboard. The text will change to reflect the next books details, as it should, but the cover image will not change from the original one displayed. That's just a minor niggle. The Finder can't even handle utterly basic tasks like managing connected devices gracefully. Just today I was doing some stuff with files on micro SD cards. I kept getting a Finder error when attempting to eject the cards with it reporting an application was still using a file. I couldn't find any culprit and so closed all apps except the Finder. Still it insisted a file was in use so I had to force eject the cards. It did the same with the next card, even though no apps were ever opened, so I rebooted the computer. That seemed to fix the file in use problem but then when I went to eject the card nothing appeared to happen - no Finder warning, nothing appearing to have changed, the card still sitting there listed in the favourites panel of the Finder window. I even tried just highlighting the drive in the panel and on the desktop and doing a command E with no apparent effect. I then launched Disk Utility and the card wasn't listed so the card had actually been ejected at some point but the Finder hadn't updated to reflect the fact.

    I have also had a couple OS crashes and there are other things, particularly with syncing devices via Bluetooth. I have Bluetooth earphones I mostly use with my Nokia phone. Turn Bluetooth on in the phone, turn the BT receiver on and and hey presto they connect and are good to go in about 3 seconds - every single time without fail and hundreds of iterations. Every single time I try to use the same earphones with my Macbook and I turn on BT, the earphones fail to show up in the BT menu as an available device and I have to then turn them off and turn then back on again and engaige pairing mode. Do they then appear in the BT menu list - oh no - you have to open the Bluetooth control panel to find them and then pair from scratch. There is another BT bug I won't go into. My original query about the Finder crash loop never received a helpful reply.

    Now, also today, I tried to use two browsers on my phone that have a file transfer functionality using WiFi and a web browser on a PC. Both Firefox and Safari now spit the dummy at the URL which is mostly a Mac address. This used to work fine in Mavericks. El Capitan has broken lots of things that used to work, including Microsoft's own Windows Phone app, which has been removed from the App store while I hope and presume they attempt to fix it. I am simply amazed at people who say they never encounter faults with El Capitan when I can encounter several in a day.
    edited December 2015
  • Reply 14 of 28
    cnocbuicnocbui Posts: 3,613member
    How does one insert a line break in this wretched new AI comment system? The Above TLDR single paragraph looks fine with proper paragraph breaks if I edit it, but when I quit the edit view the breaks disappear. Are we all supposed to learn and type implicit HTML?
    edited December 2015
  • Reply 15 of 28
    Could Swift's open-source nature be the gateway to Big Brother's backdoor?   :o
  • Reply 16 of 28
    asdasd said:
    Dick gets very excited about that database company. 

    The actual story here is that only one team in Apple is using swift and there's no talk about rewriting the Appkit. Want a job in Apple, keep your objective C handy. 

    Thats understanable. The language isn't even pinned down yet and won't be for another year. 

    I'm on the swift evolution list and it's quite busy but if they take every suggestion into account they will end up with a committee built language, with vastly over complicated design loved by language nerds. 
    Yeah, I do get excited about FoundationDB...  Too bad all the site demos, documentation and downloads are not available.

    However, there some videos available on YT -- this shore non-techie version discuses what it does:



    Other, longer YT vids discuss/demonstrate what/how/it does.


    Here's a quote from an article:
    "It wasn't too long ago that the Netflix engineering team made waves by showing Cassandra running more than 1M random writes per second in the cloud," said Dave Rosenthal, CEO of FoundationDB"We recently ran more than 14M random writes per second on a 32-machine cluster in EC2 using Key Value Store 3.0. When we started FoundationDB, many expertsthought it was impossible to build a distributed database with ACID transactions, but after years of work we proved that it could be done. Then, they said that it would never scale. Today, version 3.0 has eliminated single-machine bottlenecks and delivers a scalable, transactional database at industry-leading performance levels that the competition can't even achieve without transactional guarantees. 

    http://finance.yahoo.com/news/foundationdb-extends-performance-scalability-version-140000046.html
    It appears that FoundationDB is capable of providing the functionality of most popular NoSQL offerings as well as SQL DBs (MS SQL Server, Oracle, MySQL, SQLite, etc.) while adding scalability, performance, transactions ...

    IMO, today's Apple is poised for mondo growth in the enterprise as all the pieces are being put into place -- Swift, FoundationDB, IBM Partnership, iPad Pro ...


    I think you underestimate the number of Apple Engineers who are writing code in Swift -- new modules of existing Obj-C code, New Swift Apps, rewritten APIs/Libraries.

    I also don't think Apple will let Swift devolve into a design-by-committee bloat!
  • Reply 17 of 28
    cnocbuicnocbui Posts: 3,613member
    asdasd said:
    cnocbui said:
    How about fixing El Capitan first before you talk of doing anything else.
    I upgraded yesterday and nothing works. The console spews lists of daemons crashing. Xcode can't add an account to its list because it can't talk to a "helper app" which means they screwed up the sandboxing somewhere. 
    It's probably my fault.  No doubt you will shortly receive an effusive personal apology from Tim with the explanation that you were somehow inadvertently directed to the 'customised' EC version they reserve for a particular user in Ireland.
    edited December 2015
  • Reply 18 of 28
    knowitallknowitall Posts: 1,648member
    cnocbui said:
    How about fixing El Capitan first before you talk of doing anything else.
    how about not confusing problems you're having with problems everyone is having?

    no problems here. great release.
    Even if it is a problem for others, using swift seems to be the right solution.
  • Reply 19 of 28
    jblongz said:
    Could Swift's open-source nature be the gateway to Big Brother's backdoor?   :o
    You betch'um Red Ryder!

  • Reply 20 of 28
    jblongz said:
    Could Swift's open-source nature be the gateway to Big Brother's backdoor?   :o
    https://en.wikipedia.org/wiki/Betteridge's_law_of_headlines

    ...."no"
    afrodri
Sign In or Register to comment.