Close Menu
Best in TechnologyBest in Technology
  • News
  • Phones
  • Laptops
  • Gadgets
  • Gaming
  • AI
  • Tips
  • More
    • Web Stories
    • Global
    • Press Release

Subscribe to Updates

Get the latest tech news and updates directly to your inbox.

What's On

Is It Ever Legal—or Ethical—to Remove DRM?

24 August 2025

What Is the Magnetic Constant and Why Does It Matter?

24 August 2025

The Best White Noise Machines for a Blissful Night’s Sleep

24 August 2025
Facebook X (Twitter) Instagram
Just In
  • Is It Ever Legal—or Ethical—to Remove DRM?
  • What Is the Magnetic Constant and Why Does It Matter?
  • The Best White Noise Machines for a Blissful Night’s Sleep
  • Review: 8BitDo 64 Bluetooth Controller
  • The Hidden Ingredients Behind AI’s Creativity
  • Scientists Have Identified the Origin of an Extraordinarily Powerful Outer Space Radio Wave
  • Gear News of the Week: Always-Recording Smart Glasses, and Google Teases a New Nest Speaker
  • Security News This Week: US Government Seeks Medical Records of Trans Youth
Facebook X (Twitter) Instagram Pinterest Vimeo
Best in TechnologyBest in Technology
  • News
  • Phones
  • Laptops
  • Gadgets
  • Gaming
  • AI
  • Tips
  • More
    • Web Stories
    • Global
    • Press Release
Subscribe
Best in TechnologyBest in Technology
Home » The Subjective Charms of Objective-C
News

The Subjective Charms of Objective-C

News RoomBy News Room14 April 20254 Mins Read
Share Facebook Twitter Pinterest LinkedIn Tumblr Reddit Telegram Email
Share
Facebook Twitter LinkedIn Pinterest Email

Objective-C’s objects, meanwhile, were adorned with all caps prefixes that proudly identified their creator. Some bore household names, like the button to log into another service with yourTwitter account (TWTRLogInButton), or the add friends from Facebook popup (FBFriendPickerViewController). By the time I learned Objective-C, NeXT hadn’t existed for over 15 years, but code from their NeXTSTEP operating system was so ingrained in Apple’s products that its prefix appeared in dozens of objects and functions I used everyday—NSDictionary, NSArray, NSString, NSLog.

Objective-C is wordy—arguably excessively so—and this proclivity soon crept into my own outlook. How could an engineer tell a computer exactly what to do without using lots of words? How could a language be universally expressive without being maximally specific? Objective-C’s loquaciousness was not outdated—it was an ethos worth striving for, no matter how much it hurt my wrists.

The Aging Giant

The first and only software engineering job I had (before eventually leaving to the squishier world of technology policy) was developing iPhone apps for an Aging Giant of Silicon Valley. The company had been white-hot shortly after the dial-up internet era, but missed several tech booms since then, and in 2013, was determined not to miss the latest craze: mobile apps.

The app I worked on was only a few years old, but already, its codebase told the company’s whole history with unflinching honesty in rambling lines of Objective-C prose. Distinct prefixes gave away which code had been inherited from acquired startups, and revealed a bitter conflict over switching analytics platforms. Ornate function names told of product pivots and the defunct popup screens they left behind.

But the longer I spent writing Objective-C, the more I felt it hid rather than revealed. Long, sentence-like function names buried the most pertinent information under a fog of dependent clauses. Small features required long-winded pull requests, making it easy for engineers to get distracted during reviews and miss bugs. Objective-C’s excess words, multiplied across thousands of files and millions of lines of code, made for an exhausting codebase.

Soon enough, my affection for Objective-C’s “more is more” theory of self-expression disappeared completely. As the codebase expanded, its web of objects grew into a tangled thicket of convoluted relationships that bred mysterious, untraceable superbugs. The buzz of messages between objects rose to a cacophony, and the bulk of my job became figuring out what object sending what message to whom made the app crash or the goddamn settings screen look so ugly.

Barely a year and a half into writing Objective-C professionally, I was already having a crisis of faith. I became a software engineer to chase the exhilarating power of turning words into images on a screen, but those words had gone from empowering to burdensome. Even Objective-C’s prefixes, which I once felt told an enchanting story, felt decadent—why did I have to type “NS” hundreds of times a day to pay homage to Steve Job’s long-defunct startup? I was not alone: Mac and iPhone developers everywhere were frustrated with being forced to use this ancient, prattling language. Apple, as it turns out, was ready for change, too. I, however, was not.

Death and Rebirth

Leibniz first wrote about characteristica universalis in his doctorate thesis when he was 19 and worked on it for nearly 50 years until shortly before his death at 68. He reimagined the idea of an “alphabet of human thought” countless times, taking inspiration from mathematics, symbolic logic, hieroglyphics, musical notes, astronomical signs, and the four elements (earth, air, fire, and water). As his knowledge of the physical and metaphysical worlds grew, Leibniz had to continually reconceptualize what it meant to build a system that perfectly reflected the universe.

Programmers, in their pursuit of ever more expressive and efficient code, undergo similar rebirths. When the shortcomings of a particular coding language become clear, a new reactionary language hyper-fixated on solving those problems rises, until it too becomes hegemonic, and the cycle continues. The accepted tenets of what make for expressive code evolve and change alongside technological advancements, leading programmers to become linguistic nomads.

Share. Facebook Twitter Pinterest LinkedIn Tumblr Email
Previous ArticleRealme 14T Price in India Leaked; Said to Offer 6,000mAh Battery, IP69-Certified Build
Next Article The best Apple 3-in-1 charging stations: 7 that will keep your devices going

Related Articles

News

Is It Ever Legal—or Ethical—to Remove DRM?

24 August 2025
News

What Is the Magnetic Constant and Why Does It Matter?

24 August 2025
News

The Best White Noise Machines for a Blissful Night’s Sleep

24 August 2025
News

Review: 8BitDo 64 Bluetooth Controller

24 August 2025
News

The Hidden Ingredients Behind AI’s Creativity

24 August 2025
News

Scientists Have Identified the Origin of an Extraordinarily Powerful Outer Space Radio Wave

24 August 2025
Demo
Top Articles

ChatGPT o1 vs. o1-mini vs. 4o: Which should you use?

15 December 2024105 Views

Costco partners with Electric Era to bring back EV charging in the U.S.

28 October 202495 Views

5 laptops to buy instead of the M4 MacBook Pro

17 November 202488 Views

Subscribe to Updates

Get the latest tech news and updates directly to your inbox.

Latest News
News

Scientists Have Identified the Origin of an Extraordinarily Powerful Outer Space Radio Wave

News Room24 August 2025
News

Gear News of the Week: Always-Recording Smart Glasses, and Google Teases a New Nest Speaker

News Room23 August 2025
News

Security News This Week: US Government Seeks Medical Records of Trans Youth

News Room23 August 2025
Most Popular

The Spectacular Burnout of a Solar Panel Salesman

13 January 2025129 Views

ChatGPT o1 vs. o1-mini vs. 4o: Which should you use?

15 December 2024105 Views

Costco partners with Electric Era to bring back EV charging in the U.S.

28 October 202495 Views
Our Picks

Review: 8BitDo 64 Bluetooth Controller

24 August 2025

The Hidden Ingredients Behind AI’s Creativity

24 August 2025

Scientists Have Identified the Origin of an Extraordinarily Powerful Outer Space Radio Wave

24 August 2025

Subscribe to Updates

Get the latest tech news and updates directly to your inbox.

Facebook X (Twitter) Instagram Pinterest
  • Privacy Policy
  • Terms of use
  • Advertise
  • Contact Us
© 2025 Best in Technology. All Rights Reserved.

Type above and press Enter to search. Press Esc to cancel.