• Home
  • About

Saved searches

  • Remove
  • Verified account @
Suggested users
  • Verified account @
  • Verified account @
  • Language: English
    • Bahasa Indonesia
    • Bahasa Melayu
    • Català
    • Čeština
    • Dansk
    • Deutsch
    • English UK
    • Español
    • Filipino
    • Français
    • Hrvatski
    • Italiano
    • Magyar
    • Nederlands
    • Norsk
    • Polski
    • Português
    • Română
    • Slovenčina
    • Suomi
    • Svenska
    • Tiếng Việt
    • Türkçe
    • Ελληνικά
    • Български език
    • Русский
    • Српски
    • Українська мова
    • עִבְרִית
    • العربية
    • فارسی
    • मराठी
    • हिन्दी
    • বাংলা
    • ગુજરાતી
    • தமிழ்
    • ಕನ್ನಡ
    • ภาษาไทย
    • 한국어
    • 日本語
    • 简体中文
    • 繁體中文
  • Have an account? Log in
    Have an account?
    · Forgot password?

    New to Twitter?
    Sign up
By using Twitter’s services you agree to our Cookie Use and Data Transfer outside the EU. We and our partners operate globally and use cookies, including for analytics, personalisation, and ads.
ayanonagon's profile
Ayaka Nonaka
Ayaka Nonaka
Ayaka Nonaka
Verified account
@ayanonagon

Ayaka NonakaVerified account

@ayanonagon

[ios brewer, tea engineer] @WorkflowHQ ↯ 日本語: @ayanonagon_jp

Joined February 2009
  • © 2016 Twitter
  • About
  • Help
  • Terms
  • Privacy
  • Cookies
  • Ads info
Dismiss
Previous
Next

Go to a person's profile

Saved searches

  • Remove
  • Verified account @
Suggested users
  • Verified account @
  • Verified account @

Retweet this to your followers?

Optional comment for Retweet
 
 

Saved searches

  • Remove
  • Verified account @
Suggested users
  • Verified account @
  • Verified account @
140

Are you sure you want to delete this Tweet?

Promote this Tweet

Block

  • Add a location to your Tweets

    When you tweet with a location, Twitter stores that location. You can switch location on/off before each Tweet and always have the option to delete your location history. Learn more

    Profile summary

    Your lists

    Create a new list


    Under 100 characters, optional

    Privacy

    Copy link to Tweet

    Embed this Tweet

    Embed this Video

    Add this Tweet to your website by copying the code below. Learn more

    Add this video to your website by copying the code below. Learn more

    Hmm, there was a problem reaching the server.

    Preview

    Log in to Twitter

    · Forgot password?
    Don't have an account? Sign up »

    Sign up for Twitter

    Not on Twitter? Sign up, tune into the things you care about, and get updates as they happen.

    Sign up
    Have an account? Log in »

    Two-way (sending and receiving) short codes:

    Country Code For customers of
    United States 40404 (any)
    Canada 21212 (any)
    United Kingdom 86444 Vodafone, Orange, 3, O2
    Brazil 40404 Nextel, TIM
    Haiti 40404 Digicel, Voila
    Ireland 51210 Vodafone, O2
    India 53000 Bharti Airtel, Videocon, Reliance
    Indonesia 89887 AXIS, 3, Telkomsel, Indosat, XL Axiata
    Italy 4880804 Wind
    3424486444 Vodafone
    » See SMS short codes for other countries

    Confirmation

     

    Buy Now

    Hmm... Something went wrong. Please try again.

    Welcome home!

    This timeline is where you’ll spend most of your time, getting instant updates about what matters to you.

    Tweets not working for you?

    Hover over the profile pic and click the Following button to unfollow any account.

    Say a lot with a little

    When you see a Tweet you love, tap the heart — it lets the person who wrote it know you shared the love.

    Spread the word

    The fastest way to share someone else’s Tweet with your followers is with a Retweet. Tap the icon to send it instantly.

    Join the conversation

    Add your thoughts about any Tweet with a Reply. Find a topic you’re passionate about, and jump right in.

    Learn the latest

    Get instant insight into what people are talking about now.

    Get more of what you love

    Follow more accounts to get instant updates about topics you care about.

    Find what's happening

    See the latest conversations about any topic instantly.

    Never miss a Moment

    Catch up instantly on the best stories happening as they unfold.

    Previous Tweet Next Tweet
    Ayaka Nonaka Verified account ‏@ayanonagon Oct 4

    Spent the morning cutting our Swift compile time by ~3 min. Thanks @irace for the helpful blogpost! http://irace.me/swift-profiling 

    • Retweets 43
    • Likes 112
    • Greg Price Ryabov Andrey Lukas Lipka Pim Coumans Vetle Økland Oliver Letterer Renato Rodrigues Juani Doste Jennifer LIM
    11:49 AM - 4 Oct 2016
    South of Market, San Francisco
    0 replies 43 retweets 112 likes
      1. Kostiantyn Koval ‏@KostiaKoval Oct 4

        @ayanonagon @irace 3 mins that's a lot, and all is syntax changes?

        0 replies 0 retweets 0 likes
      2. Ayaka Nonaka ‏@ayanonagon Oct 4

        @KostiaKoval Yeeeep. Unfortunate thing is that isActive = true is slower at runtime, so we’re trading off compile time with run time :/

        0 replies 0 retweets 2 likes
      3. View other replies
      4. Abizer Nasir ‏@abizern Oct 4 Stockholm, Sweden

        @ayanonagon @KostiaKoval isn't it more important to make the user's experience better than the developer's?

        0 replies 0 retweets 1 like
      5. View other replies
      6. Ayaka Nonaka ‏@ayanonagon Oct 4 San Francisco, CA

        @abizern @KostiaKoval It is, so I’m writing ugly code. 😳

        0 replies 0 retweets 1 like
      7. Kostiantyn Koval ‏@KostiaKoval Oct 4

        @ayanonagon btw, docs:"Typically, using this method is more efficient than activating each constraint individually." https://developer.apple.com/reference/uikit/nslayoutconstraint/1526955-activateconstraints …

        0 replies 0 retweets 1 like
      8. View other replies
      9. Ayaka Nonaka ‏@ayanonagon Oct 5 Berkeley, CA

        @KostiaKoval Yeahhhh that’s right. We ended up rewriting as var constraints = [NSLayoutConstraint]() then constraints.append

        0 replies 0 retweets 1 like
      1. Ayaka Nonaka ‏@ayanonagon Oct 4 South of Market, San Francisco

        Basically had to go back & change most of our NSLayoutConstraint.activate to isActive = true. Uglier, but it really added up over time… ☹️

        0 replies 1 retweet 10 likes
      2. View other replies
      3. Kostiantyn Koval ‏@KostiaKoval Oct 4

        @ayanonagon with a map it shouldn't be so ugly, or is it?

        0 replies 0 retweets 0 likes
      4. Ayaka Nonaka ‏@ayanonagon Oct 4 South of Market, San Francisco

        @KostiaKoval Map on what? Making the array itself is the slow part. 😓

        0 replies 0 retweets 0 likes
      5. Kostiantyn Koval ‏@KostiaKoval Oct 4

        Kostiantyn Koval Retweeted Kent Beck

        @ayanonagon ohh, I see :( tradeoffs Speed vs Readability 🙅https://twitter.com/KentBeck/status/702662471547355137 …

        Kostiantyn Koval added,

        Kent Beck @KentBeck
        Okay, here's the official tradeoff gang sign gif pic.twitter.com/3Jj7wwsur4
        0 replies 0 retweets 1 like
      1. Nick Lockwood ‏@nicklockwood Oct 6

        .@ayanonagon @irace I just tried it. Turns out { $0 == "e" || $0== "E" } takes 100ms more than { (c: Character) in c == "e" || c == "E" }

        0 replies 4 retweets 15 likes
      2. View other replies
      3. Nick Lockwood ‏@nicklockwood Oct 6

        @ayanonagon @irace to be clear, that's for *every* instance. I had a function in SwiftFormat that has four of those; went from 400ms to 10ms

        0 replies 0 retweets 2 likes
      4. View other replies
      5. Nick Lockwood ‏@nicklockwood Oct 6

        @ayanonagon @irace also, it's not a general problem using $0, it's the ||. This is an equally fast option: { "eE".characters.contains($0) }

        0 replies 1 retweet 5 likes
      6. Harlan Haskins ‏@harlanhaskins Oct 6

        @nicklockwood @ayanonagon @irace Hmm, I'm thinking it may have more to do with the Character literals combined with the ||.

        0 replies 0 retweets 2 likes
      7. Nick Lockwood ‏@nicklockwood Oct 6

        @harlanhaskins @ayanonagon @irace yes, I think the root issue is that too many things are stringLiteralConvertible, so many possible matches

        0 replies 0 retweets 3 likes
    1. Lluis Gerard ‏@lluisgerard Oct 4

      @ayanonagon @irace in my case the biggest time consumer was nil-coalescing with optionals. Like (self.param?.param ?? “”)

      0 replies 0 retweets 1 like
    2. Paul Taykalo ‏@TT_Kilew Oct 4

      @ayanonagon @irace @vixentael And there's a https://github.com/RobertGummesson/BuildTimeAnalyzer-for-Xcode … tool for that too.

      0 replies 0 retweets 1 like
    3. Marcel Weiher ‏@mpweiher Oct 6

      @ayanonagon @nicklockwood @irace Can you tell me what the before/after times were? Roughly what size proj.? Thanks!

      0 replies 0 retweets 0 likes
    4. Bryan Irace ‏@irace Oct 4 SoHo, Manhattan

      @ayanonagon Nice!

      0 replies 0 retweets 0 likes
    5. Shagun Madhikarmi ‏@madhikarma Oct 4

      @ayanonagon some things we did: final, declaring extensions in a single file, remove lazy vars, not using type inference (dictionaries) 😪

      0 replies 0 retweets 0 likes

    Loading seems to be taking a while.

    Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.

      Promoted Tweet

      false

      • © 2016 Twitter
      • About
      • Help
      • Terms
      • Privacy
      • Cookies
      • Ads info