Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Contributing to Swift

Contributing to Swift

Before Swift was open sourced, our only way to communicate with Apple was through Radar. Filing Radars is an arcane, opaque, and frequently frustrating process. But now we have a whole host of ways to chat directly to Apple engineers, all the way from mailing lists to Twitter messages. Even better than that we can actually dig through large bits of the code we use every day, and see how it works. And then when we find something we think could be better we can fix it! Thats exactly what I did, and last summer a small piece of my code shipped with Xcode 8, and most of you have probably used it. In this talk I’ll tell the story of exactly how that came to be, and explore ways that you can get involved too.

Neil Kimmett

August 16, 2017
Tweet

More Decks by Neil Kimmett

Other Decks in Programming

Transcript

  1. Contributing to Swift - a little revision - story of

    my contribution - ways you can contribute - gnarly details
  2. struct CGPoint { var x: CGFloat var y: CGFloat }

    struct CGSize { var width: CGFloat var height: CGFloat } struct CGRect { var origin: CGPoint var size: CGSize }
  3. struct CGPoint { static var zero: CGPoint } struct CGSize

    { static var zero: CGSize } struct CGRect { static var zero: CGRect } x: 0 y: 0 width: 0 height: 0 origin: {0, 0} size: {0, 0}
  4. “To be a truly great community, Swift.org needs to welcome

    developers from all walks of life, with different backgrounds, and with a wide range of experience. A diverse and friendly community will have more great ideas, more unique perspectives, and produce more great code. We will work diligently to make the Swift community welcoming to everyone.”
  5. @jckarter Joe Groff @UINT_MIN Jordan Rose @dgregor79 Doug Gregor @tkremenek

    Ted Kremenek @ericasadun Erica Sadun @modocache Brian Gesiak
  6. - ABI stability required - Generics and String features for

    stdlib - Memory ownership model - Source breaking changes have even higher bar than Swift 4 - Every evolution proposal requires working implementation with test cases Swift 5