Anyone starting iOS development has wondered at least once: “Why did Apple create Swift from scratch instead of sticking with the Objective-C it was already using?”
I also thought the syntax was wonderfully clean when I built my first app in Swift, but digging into the story behind it revealed a surprisingly fascinating history.
The short answer is that Swift is a language that an engineer named Chris Lattner began developing almost single-handedly and in secret in 2010. He wanted to fundamentally fix the safety problems of Objective-C, which had remained almost unchanged for more than 30 years.
Today, let’s take a relaxed look at how Swift came into the world.
When and by whom was Swift created?
Swift development began in July 2010.
The key figure was Chris Lattner. His name may be unfamiliar, but if you are a developer, you probably use his work every day.
He created the LLVM and Clang compilers. They are core technologies underpinning Apple’s development tools.
In the beginning, it was apparently a project belonging entirely to Lattner. His story of quietly refining the design in his spare time after work and on weekends is well known.
Around 2011, other Apple engineers joined, and it grew into a full-fledged team project.
Finally, it was unveiled to the world at WWDC in June 2014. Developers who were there still talk about how surprised they were. Nobody had expected the announcement.
That September, it was officially distributed with Xcode 6, making it available to everyone.
Why did Chris Lattner replace Objective-C?
There was one main reason.
Objective-C was designed in the early 1980s, so it lacked modern safety mechanisms.
Put simply, Objective-C is structured as “C with message passing added.” It inherited C’s flexibility, but that flexibility could also be dangerous.
A representative example is the problem of handling nil (an empty value).
In Objective-C, sending a message to a nil object does not crash the app. Nothing happens.
That may seem convenient, but it is a trap. Bugs caused by missing values can disappear silently, only to surface later somewhere unrelated.
While building LLVM and Clang, Lattner had already wrestled with Objective-C’s memory safety for years. Eventually, he is said to have reached this conclusion.
“Instead of continuing to patch the existing language, let’s create a new one that prevents mistakes in the first place.”
The idea was not merely to catch mistakes, but to make the mistakes themselves impossible.
What changed in Swift?
The most symbolic change Swift introduced was the concept of optionals.
It forces “this value may be empty” to be expressed at the syntax level, so developers must handle situations where a value is missing.
The difference in the two languages’ philosophies becomes obvious in the code below.
Objective-C simply moves on even when the value is nil.
// nameIf this is nil? Nothing happens; execution continues silently
NSString *name = [user fetchName];
NSUInteger len = [name length]; // The result is 0, easy to miss bugs
Swift, on the other hand, directly asks developers to consider the possibility that a value is missing.
// nameis String? a type — the type explicitly states that the value may be absent
let name: String? = user.fetchName()
if let name = name { // Use it safely only when a value exists
print(name.count)
}
It is short code, but the difference between “letting mistakes remain” and “preventing mistakes” is unmistakable.
Swift also gained popularity by offering type inference, concise syntax, and fast execution. For reference, Swift was designed by drawing on strengths from languages including Rust, Haskell, Python, and Ruby, as well as Objective-C.
What happened to Swift afterward?
Swift quickly established itself after its announcement.
Here is a brief summary of its major milestones.
| Period | Event |
|---|---|
| July 2010 | Chris Lattner begins development |
| June 2014 | Officially announced at WWDC |
| September 2014 | Officially distributed with Xcode 6 |
| December 2015 | Released as open source (Apache 2.0) |
| January 2017 | Lattner leaves Apple and joins Tesla |
Interestingly, Lattner, the language’s father, left Apple in 2017. Ted Kremenek then took over as project lead for Swift.
Even so, Swift remains firmly established as the central language of Apple’s ecosystem. After becoming open source, it also expanded into Linux and server-side development.
I found it deeply impressive that a project one engineer quietly started on weekends became a language used by developers around the world for more than a decade.
Because the language began with a single question—“Why?”—its syntax looks different once you know the story behind it.
If you are just starting with Swift, understanding optionals properly is enough to give you a sense of why the language was designed this way. I hope today’s article serves as your first step.
References
- Swift (programming language) - Wikipedia
- Chris Lattner - Wikipedia
- Apple’s top secret Swift language grew from work to sustain Objective C - AppleInsider

