Blog Archive
2020
A workflow for Swift compiler development
Notes on the workflow I use for working on the Swift compiler / January 21, 2020
Swift compiler development on a remote Linux machine
Notes on setting up a Linode for working on the Swift compiler / January 21, 2020
2017
Introducing Citron
An introduction to Citron, an LALR parser generator for Swift / December 03, 2017
TRAI’s spat with Apple over app access to messages and call logs
India's telecom regulator wants to bring its Do-Not-Disturb Android app to iOS, but a direct port of the app is not possible / August 22, 2017
Apple opens App Accelerator
Thoughts on Apple's App Accelerator that has just opened in Bangalore. / April 05, 2017
The Hide & Seek bug that led me to WebKit
While trying to debug a problem with Hide & Seek, I ended up fixing a bug in WebKit. / March 27, 2017
2016
Swifty Responder Chain
Trying to create a responder chain implementation in pure Swift / June 04, 2016
A dynamic foundation
In which I argue that Swift has a solid base on which to build dynamic features like Objective-C's. / May 25, 2016
Apple's prospects in India
In the Q2 2016 earnings call, Tim Cook fielded a question on India as a market for Apple. Here's me trying to add some context to his answer. / April 28, 2016
Thoughts on ads in App Store search
A recent report stated that Apple is considering ads in App Store search results. Here's a thought experiment on how it would work out if it came true. / April 23, 2016
Responding to TRAI on net neutrality in India
These are the comments on net neutrality that I submitted to the Telecom Regulatory Authority of India / January 07, 2016
On Overcast’s new business model
Exploring Overcast’s patronage-subscriptions-based revenue model / October 19, 2015
Brent's feeds and folders problem
Here's one way of solving a problem Brent Simmons had when adopting protocol-oriented programming with Swift 2.0 / July 21, 2015
loadView
vs viewDidLoad
What is the best override point to setup your view hierarchy programatically? / July 17, 2015
Doing it all in code
I'm one of those developers who like to specify the app's UI in code. I'd like to show you how my setup looks like. / July 13, 2015
Improvising on KVO
Key-value Observation code can get messy. Here is one way to keep it clean. / May 21, 2015
2014
Why isn't there a formal grammar for Markdown?
On the impossibility of writing a CFG for Markdown / September 05, 2014
Evaluating the CommonMark spec
A critical look at John MacFarlane's stmd spec for Markdown / September 05, 2014
The Chasm in the App Store
Applying insights from Crossing the Chasm and The Purple Cow to the iOS App Store / August 05, 2014
Arrays in Swift Beta 2
What's the problem with Arrays in Swift (Beta 2), and how do we get around it? / June 27, 2014
The need to know Objective-C
If you want to be an iOS dev, should you start with Objective-C or Swift? / June 12, 2014
Looking different
Feels nice to see Apple not only looking fresh and charged up, but also open and developer-friendly after WWDC 2014. / June 11, 2014
Imagining developing for a split-screen iPad
What all would Apple have to keep in mind if it allows third-party apps to go split-screen on the iPad? / May 28, 2014
2013
Looking back at the “burning-platform” memo
In which I try to guess the reasoning behind Nokia picking Windows Phone over MeeGo, two years ago / September 05, 2013
The Symbian Experience
As Symbian phones are about to stop shipping this summer, a look back at the last few years of the OS, and some opinions on why it couldn't make it. / June 19, 2013
iOS 7: Flat or not?
The predominant opinion after the iOS 7 announcement seems to be that iOS 7 looks flat, but really, it doesn't. / June 19, 2013