Keith Smiley Profile Banner
Keith Smiley Profile
Keith Smiley

@SmileyKeith

Followers
8,393
Following
810
Media
1,179
Statuses
25,857

devx @Modular , maintainer of @bazelbuild 's iOS support, creator of @MobileNativeFdn . LLVM & Swift contributor. Previously Principal Engineer @Lyft

Joined April 2008
Don't wanna be here? Send us removal request.
Explore trending content on Musk Viewer
@SmileyKeith
Keith Smiley
6 years
Got in our @Zipcar we've been driving for 3 days. It doesn't start. Call Zipcar and get told that the car can't access the internet so it won't start. The only option is to have a tow truck come and tow it to somewhere where it has internet.
115
886
3K
@SmileyKeith
Keith Smiley
8 years
The things this laptop removes that I use: - SD reader - MagSafe - USB - Thunderbolt - Escape The things it adds: - Easier way to type 💩
33
905
1K
@SmileyKeith
Keith Smiley
3 years
Tweet media one
7
79
650
@SmileyKeith
Keith Smiley
4 years
Today I'm super excited to launch the Mobile Native Foundation! Its goal is to improve large scale mobile development. Learn more about it and how to get involved:
13
130
411
@SmileyKeith
Keith Smiley
4 years
Facebook's SDK constantly crashing on launch has really justified our position on SDKs
Tweet media one
7
35
366
@SmileyKeith
Keith Smiley
6 years
@Zipcar Update: we moved the car 4 feet and it started
Tweet media one
8
27
313
@SmileyKeith
Keith Smiley
10 years
Tweet media one
5
320
291
@SmileyKeith
Keith Smiley
5 years
To try out @_functionBuilder I reproduced the Podfile DSL
Tweet media one
6
37
276
@SmileyKeith
Keith Smiley
6 years
The App Store connect API has some very specific errors: {"status": "503", "code": "SERVICE_UNAVAILABLE_ERROR.DISABLED_FOR_WINTER_SHUTDOWN", "title": "Winter shutdown enabled.", "detail": "Winter shutdown in progress."}
4
51
247
@SmileyKeith
Keith Smiley
7 years
New as of git 2.15: git diff --color-moved=zebra To show moved lines different from adds/deletes. Set permanently with: git config --global diff.colorMoved zebra
3
69
245
@SmileyKeith
Keith Smiley
5 years
For the past few weeks all Lyft apps in the App Store have been built entirely with Bazel
13
27
235
@SmileyKeith
Keith Smiley
5 years
I found my storage space problems
Tweet media one
13
28
218
@SmileyKeith
Keith Smiley
6 years
Our new CI is very fast
Tweet media one
15
18
210
@SmileyKeith
Keith Smiley
8 years
Just discovered this glorious selector in the Xcode internals
Tweet media one
9
90
182
@SmileyKeith
Keith Smiley
5 years
Ah so the real reason Apple engineers shipped this feature was to prove to their bosses that open offices are bad
@ScottBerrevoets
Scott Berrevoets
5 years
Sitting next to the marketing folks in an open floor plan
Tweet media one
10
68
625
2
26
185
@SmileyKeith
Keith Smiley
3 years
I am happy to no longer write Objective-C, but this new warning is great
Tweet media one
4
14
181
@SmileyKeith
Keith Smiley
2 years
We just open sourced a library, primarily written by @kastiglione , for consuming Swift's index data. We're currently using it internally to discover unused code. Hopefully it lowers the barrier of entry for writing more powerful semantic analysis tools!
5
27
179
@SmileyKeith
Keith Smiley
3 years
I used to think yaml was the worst CI configuration language
Tweet media one
11
20
167
@SmileyKeith
Keith Smiley
4 years
People: TikTok is tracking you worse than any app ever! Advertising SDK vendors:
Tweet media one
4
22
156
@SmileyKeith
Keith Smiley
1 year
The new linker in Xcode 15 lives up to the hype! ~6s -> ~1.5s for our largest target.
Tweet media one
2
21
158
@SmileyKeith
Keith Smiley
5 years
Since the picture didn't show up in my slides here's a fun photo of part of our Mac Mini CI setup
Tweet media one
10
9
154
@SmileyKeith
Keith Smiley
7 months
After nearly 9 years(!) at Lyft I've decided to move on. I feel so lucky to have worked with so many great folks over the years on such a wide variety of awesome projects. I'm excited to take a few weeks off and then share what's next for me!
Tweet media one
28
2
157
@SmileyKeith
Keith Smiley
5 years
Emacs no longer being bundled with macOS Catalina confirms once and for all that Vim is the superior editor
9
29
150
@SmileyKeith
Keith Smiley
7 months
I'm delighted to announce that it's my first week at @Modular ! I'm so excited to work with such a strong team on some really hard problems! 🔥🚀
19
3
150
@SmileyKeith
Keith Smiley
8 years
Just released the Hopper plugin I wrote for demangling Swift symbols
Tweet media one
8
87
145
@SmileyKeith
Keith Smiley
7 years
Probably slack
Tweet media one
3
24
142
@SmileyKeith
Keith Smiley
3 years
Reminder: most "crazy" technical decisions you see from the outside are made by engineers just like you, making fine decisions, under different constraints
4
20
144
@SmileyKeith
Keith Smiley
9 years
As of our latest update the @Lyft app is entirely written in Swift.
11
67
135
@SmileyKeith
Keith Smiley
2 years
> Starting with Xcode 14, bitcode is no longer required for watchOS and tvOS applications, and the App Store no longer accepts bitcode submissions from Xcode 14.
8
23
141
@SmileyKeith
Keith Smiley
6 years
This is a nice new diagnostic in Swift 4.2
Tweet media one
2
26
134
@SmileyKeith
Keith Smiley
3 years
Me upvoting every post complaining about electron on @1Password ’s Reddit ama
Tweet media one
3
3
135
@SmileyKeith
Keith Smiley
5 years
I'm excited to finally give a talk about our experience with Bazel for iOS!
@baswiftable
BA: Swiftable
5 years
Announcing Keith Smiley @SmileyKeith from @lyft . He will be speaking at #BASwiftable this November 🗣‼️ 🎟 Don't forget to get your ticket ⚡️ Ask your local community for discounts!
Tweet media one
1
5
26
7
11
135
@SmileyKeith
Keith Smiley
6 years
For our company’s hackathon the last 3 days I submitted 5 Swift PRs and 2 LLVM fixes. While they were all small it still feels pretty great.
2
3
128
@SmileyKeith
Keith Smiley
4 years
I added a security.plist to Lyft's apps this week. This is a nice standard.
4
17
125
@SmileyKeith
Keith Smiley
6 years
This week marked 4 extremely exciting and rewarding years for me at Lyft. I'm looking forward to the next 4.
5
0
124
@SmileyKeith
Keith Smiley
4 years
Me on Sunday: I can't wait to get back to work tomorrow and get some stuff done! Me on Monday: *googles barista yearly salary*
8
5
120
@SmileyKeith
Keith Smiley
5 years
Here are another set of slides from a small meetup where @kastiglione and I talked in detail about Lyft's iOS infrastructure
5
16
121
@SmileyKeith
Keith Smiley
6 years
Never forget
8
27
116
@SmileyKeith
Keith Smiley
1 year
I wrote a small tool for recursively inspecting your binary's dynamic dependencies. I've found this useful trying to understand where specific library dependencies come from.
Tweet media one
2
9
116
@SmileyKeith
Keith Smiley
4 years
Wow. Mac Mini's in EC2
4
16
113
@SmileyKeith
Keith Smiley
1 year
In Xcode 15 beta 2 SwiftUI re-exports the new Observation framework which hard breaks RxSwift because it defines its own Observable protocol 🙃
9
15
110
@SmileyKeith
Keith Smiley
3 years
1. Get fed up with how complex programming languages have gotten 2. Build your own simpler language 3. Continue adding features over time 4. goto 1
3
9
110
@SmileyKeith
Keith Smiley
6 years
Xcode 10 fixed image autocompletion showing up all the time!
4
18
105
@SmileyKeith
Keith Smiley
2 years
Over the past few years @kastiglione and I have been using a stacked-diffs style workflow with GitHub. I finally split this out of my dotfiles and pushed it to its own repo, complete with a detailed explainer
12
8
104
@SmileyKeith
Keith Smiley
7 years
I'm so excited for this launch. We've been working really hard to make this happen.
17
7
103
@SmileyKeith
Keith Smiley
4 years
Just pushed to LLVM master for the first time, pretty terrifying.
6
0
100
@SmileyKeith
Keith Smiley
4 years
Exciting times for the bazel + iOS / Swift community
@realkaipi
Sergio Campamá 🇺🇦
4 years
The project I worked on for the longest time at Google (rules_apple) has officially switched to community maintenance with @SmileyKeith leading the effort. Really happy there's a concrete plan for OSS support for the rules. Lyft's investment in OSS is highly commendable!
1
9
70
9
8
97
@SmileyKeith
Keith Smiley
4 years
Periodic reminder that not everything we use has to be built by Apple. Even the things that are can have downsides like: - slow evolution - potential to be untouched for years - limited flexibility And in the meantime the community gives up on solving it ourselves
6
15
95
@SmileyKeith
Keith Smiley
8 years
I wrote a Hopper script to demangle swift names. Before and after:
Tweet media one
Tweet media two
5
14
94
@SmileyKeith
Keith Smiley
7 years
204: This class, UIBarItem, you've probably never thought about Me: I think about how it doesn't inherit from UIButton every day of my life
7
8
90
@SmileyKeith
Keith Smiley
7 years
Just another day working on Mac apps
Tweet media one
7
12
90
@SmileyKeith
Keith Smiley
7 years
Just tagged the first release of Brisk, our macOS app for Radar. If iOS 6 web UI is holding you back, check it out!
7
40
90
@SmileyKeith
Keith Smiley
5 years
About to go on at @baswiftable
Tweet media one
6
2
90
@SmileyKeith
Keith Smiley
5 years
Flying from London to San Francisco like:
Tweet media one
4
1
89
@SmileyKeith
Keith Smiley
7 years
Xcode 9.3 beta 3 has a tool for parsing code coverage output!
Tweet media one
2
19
85
@SmileyKeith
Keith Smiley
8 years
Slack is down, which means now thousands of people are getting actual work done without the constant interruption of a endless meeting.
6
49
81
@SmileyKeith
Keith Smiley
1 year
After a bit of work bazel can now build VisionOS apps
Tweet media one
0
7
85
@SmileyKeith
Keith Smiley
6 years
Fix Swift compile times with this one weird trick!
@daniel_duan
Daniel Duan
6 years
Today at Lyft
Tweet media one
5
7
62
9
9
85
@SmileyKeith
Keith Smiley
5 years
The hardest problem in computer science is making sure behavior no one knows about doesn't regress.
8
10
80
@SmileyKeith
Keith Smiley
7 years
OH: IB is a pure function that takes pain and generates XML
3
25
80
@SmileyKeith
Keith Smiley
3 years
Is there a “what’s new in Swift 5.5 if you have a realistic deployment target” article somewhere?
5
15
79
@SmileyKeith
Keith Smiley
7 years
If you're interested in Haskell style functional in Swift, you should look through the Kickstarter codebase
2
24
79
@SmileyKeith
Keith Smiley
4 years
Whether or not you "like" CocoaPods it continuing to exist is extremely important for the iOS community. Huge props to @dnkoutso for sponsoring it personally and now to @PSPDFKit
1
14
79
@SmileyKeith
Keith Smiley
6 years
Got sourcekit-lsp working in Vim with one of our SwiftPM projects. Jump to definitions and find references work amazingly well! I'm so excited to use this
4
7
76
@SmileyKeith
Keith Smiley
8 years
Got a SIM card in Singapore for $15 that came with 100GB of data. Meanwhile in the US I pay $100 a month for 4GB.
8
19
75
@SmileyKeith
Keith Smiley
2 years
Great new GitHub feature
Tweet media one
2
5
76
@SmileyKeith
Keith Smiley
6 years
Tweet media one
6
10
77
@SmileyKeith
Keith Smiley
4 years
Swift pitch: remove trailing closures 🙃
5
3
73
@SmileyKeith
Keith Smiley
7 years
Who is going to break it to the JavaScript developers that there are languages where types are first class citizens?
Tweet media one
5
15
73
@SmileyKeith
Keith Smiley
4 years
I'm excited to be hosting the Apple Development with Bazel BoF session at BazelCon this year Sign up here
1
14
73
@SmileyKeith
Keith Smiley
3 years
I wrote a quick post about how you can skip password entry for `sudo xcode-select` which can be very useful for CI machines
3
6
71
@SmileyKeith
Keith Smiley
9 years
Apple Music onboard. Eeek. http://t.co/CITjcXiPLe
8
93
68
@SmileyKeith
Keith Smiley
3 years
I wrote a quick post about how to silence some of the iOS simulator's noisiest warnings 🙃
1
12
71
@SmileyKeith
Keith Smiley
7 years
Started generating some Xcode projects using it's so nice to not have to worry about conflicts anymore
6
11
69
@SmileyKeith
Keith Smiley
8 years
`mkdir /tmp/xcode_build_timings` if you want to see some interesting and extremely specific timing info.
0
18
67
@SmileyKeith
Keith Smiley
7 years
Interesting new things in Xcode 9.3b1: - SwiftCommandLine.framework, appears to be a Commander like framework - ProvisioningProfileQLGenerator, a replacement for - usr/bin/simtest, appears to be a utility for testing the simulator itself
1
18
66
@SmileyKeith
Keith Smiley
5 years
Early takeaways as a user of the iOS 13 beta: - dark mode is great - new share sheet is awesome, it saves multiple taps and some typing for me every time - swipe keyboard is great, switching back and forth with third party keyboards was always weird - it has been stable
5
3
64
@SmileyKeith
Keith Smiley
8 years
Seems like someone accidentally shipped their testing frameworks in the Apple Store’s
Tweet media one
6
12
63
@SmileyKeith
Keith Smiley
8 years
defaults write com.apple.dt.xcodebuild CommandLineBuildTimingLogLevel -int 5 Have fun!
3
10
65
@SmileyKeith
Keith Smiley
3 years
I wrote a small CLI for those times you want to extract libraries from the dyld shared cache but don't want to build dyld itself (or want it to support beta OS versions)
4
6
63
@SmileyKeith
Keith Smiley
4 years
I'm sad to see Dave leave, but I'm exited to cc him on all my radars
@kastiglione
Dave Lee
4 years
Next week I join the debugging team at . I really really like lldb. Be prepared for more debugging tweets 😂
58
4
465
4
0
63
@SmileyKeith
Keith Smiley
6 years
Interviews: please invert a binary tree Actual work:
@artem_zin
🫨 Abstractny Mujic
6 years
So, there was a library called Javaslang, now its "Vavr" It had a class named "λ". Obviously, our build fails with this: ``` java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: javaslang/λ.class.Rule ``` just kill me already
Tweet media one
1
3
18
2
11
63
@SmileyKeith
Keith Smiley
6 years
This searching animation is great 👌
2
15
64
@SmileyKeith
Keith Smiley
7 years
Woo! Static libraries with Swift sources is now supported with XCBuild!! Thanks @daniel_dunbar and team!
Tweet media one
1
21
62
@SmileyKeith
Keith Smiley
2 years
Great feature, only install the platforms you need in Xcode!
@_saagarjha
Saagar Jha
2 years
Fast internet+M1 Pro+unxip+SIP disabled 💪 Say hello to Xcode 14!
Tweet media one
3
31
174
4
13
62
@SmileyKeith
Keith Smiley
4 years
Debugging with Swift be like
Tweet media one
8
14
58
@SmileyKeith
Keith Smiley
3 years
ಠ_ಠ
Tweet media one
1
7
60
@SmileyKeith
Keith Smiley
2 years
Interesting to see SwiftNIO and SwiftGRPC drop support for CocoaPods I wonder if other projects will follow because of this precedent, or if the community will continue to maintain the podspecs.
3
8
61