TweetFollow Us on Twitter

Thought Policeman
Volume Number:11
Issue Number:4
Column Tag:Inside Info

I Was a Teenage Thought Policeman

It’s a dirty job, but somebody’s gotta do it!

By Chris Espinosa, Apple Computer, MacTech Magazine Regular Contributor

Two months ago, MacTech published a letter from a reader talking about “good” and “bad” programming practices, calling the editors of this magazine the “Thought Police.” The editors replied with something to the effect that somebody has to do it.

This issue crops up every few years, and people get really emotional about it. A lot of programmers naturally rebel at the thought of having Somebody Else tell them how they should write their code. The favorite historical Thought Police issue centers around the user interface, but error handling, C coding style, object design methodology have all seen conflict between some who would seek to impose standards and others who resist them.

I’m one of the people occasionally accused of starting all this in the Macintosh community. I wrote several of the early versions of the Macintosh Human Interface Guidelines, which got credited for creating the consistency among applications in the Mac system, but also roundly blamed for being the original Thought Police dictum of Macintosh political correctness.

The personal computer application software industry was really in its infancy when Mac development started in 1982, and developers really didn’t know what elements made a software product a hit. Many apps were still “turn-key,” meaning you started the computer directly into the app. Applications were free to take over the machine. Hard disks were rare, and floppies usually didn’t hold more than two or three applications. So developers valued the individuality of their application, and in many cases considered a unique menu structure to be a major competitive advantage.

Apple proposed, pretty audaciously, that all applications should use a consistent menu command structure, and even more audaciously, use one that Apple designed. Even better, Apple built the interface software right into the ROM of the machine - it was in fact more difficult to use your own, familiar, already coded interface software than it was to knuckle under and do things Apple’s way.

Reactions to this ranged from delight to umbrage. Some people conceptually bought the idea of consistency from application to application, and were enthralled by the amount of graphics, interface, and utility code already written for them, but others worried how they’d differentiate their products if all applications worked the same.

There was a pretty deep division of opinion over this. Many praised Apple for being daring and doing the Right Thing, and defended the guidelines. Others resented the fact that it was so hard to not do things the Macintosh way, and condemned the platform for being proscriptive. There was a little bit of a war between these forces, and most people assumed that Apple was on the side of the consistency zealots.

And I’m certain there were influential people at Apple who did some righteous bashing of inconsistent applications. I remember an early database, MacLion, which was a bad port of a DOS application, right down to the 24-by-80 monospaced scrolling text window. Boy, it was ugly. It eventually lost in the marketplace. Apple also spent a lot of time working with major DOS application vendors to get them to “get it” about the graphic user interface. Lotus received a lot of personal attention from Apple for their Jazz product, and later 1-2-3 for Mac.

But the folklore that has come down through the years is that Apple defended the purity of the interface by punishing the developers who built applications that broke the rules. And that’s just not true. The rules were vague; they were revised several times over the first five years; we broke the rules ourselves (starting early, with MacPaint); and to tell you the truth, we were so desperate for software that we even put that ugly, DOSish MacLion on our poster of the first 100 apps.

The truth is that the punishment for inconsistency came from the Mac community itself. Magazine reviewers and pundits were the first to appreciate the consistency and simplicity of Mac applications, especially in contrast with the growing mess in the DOS world. Influential users and purchasers followed suit. Programs with inconsistent interfaces did suffer; but they suffered at the hands of the marketplace, not of a dictatorial Apple.

By 1991, Apple’s efforts around human interface were pretty much limited to advice, pronouncements, and leading by example (such as in System 7’s outline-expansion arrows and Drag and Drop). Users and editors still screamed at developers, and developers at each other, oddly turning the original fear on its head: developers claimed their application was superior because it was more conformant to the standard, not unique and different. The interface grew and changed, with some styles becoming popular (like windoids) and others just not making it (such as the use of Microsoft-style boxes to group elements in a dialog box). The idea that there were Thought Police, though, was so thoroughly ingrained in the Mac community that the thought police didn’t need to exist anymore: developers just did the right thing the majority of the time, but still took risks once in a while to push the interface forward.

There’s always a balance between freedom and responsibility. Programmers want to be free, but in order for the whole community to be successful, programmers have to be responsible, and hold up their end. Keeping the interface consistent, reducing bugs by doing correct error handling, avoiding inappropriate system hacks, and not being predatory of competitive applications are some pretty important responsibilities. Doing these well improves the quality of life for all Mac users, and supports the platform sales, creating a larger opportunity for software authors.

Scott Boyd is perfectly right: somebody has to be the thought police. The beauty of the last ten years of Macintosh development is that everybody is the Thought Police. You’ve got a lot of people looking over your shoulder to keep you straight, but there’s no actual bogeyman there to beat you up if you get creative.


Community Search:
MacTech Search:

Software Updates via MacUpdate

World of Tanks Generals guide - Tips and...
World of Tanks Generals is a brand new card game by the developer behind the World of Tanks shooter franchise. It plays like a cross between chess and your typical card game. You have to keep in consideration where you place your tanks on the board... | Read more »
TruckSimulation 16 guide: How to succeed...
Remember those strangely enjoyable truck missions in Grand Theft Auto V whereit was a disturbing amount of fun to deliver cargo? TruckSimulation 16 is reminiscent of that, and has you play the role of a truck driver who has to deliver various... | Read more »
The best GIF making apps
Animated GIFs have exploded in popularity recently which is likely thanks to a combination of Tumblr, our shorter attention spans, and the simple fact they’re a lot of fun. [Read more] | Read more »
The best remote desktop apps for iOS
We've been sifting through the App Store to find the best ways to do computer tasks on a tablet. That gave us a thought - what if we could just do computer tasks from our tablets? Here's a list of the best remote desktop apps to help you use your... | Read more »
Warhammer 40,000: Freeblade guide - How...
Warhammer 40,000: Freebladejust launched in the App Store and it lets you live your childhood dream of blowing up and slashing a bunch of enemies as a massive, hulking Space Marine. It's not easy being a Space Marine though - and particularly if... | Read more »
Gopogo guide - How to bounce like the be...
Nitrome just launched a new game and, as to be expected, it's a lot of addictive fun. It's called Gopogo, and it challenges you to hoparound a bunch of platforms, avoiding enemies and picking up shiny stuff. It's not easy though - just like the... | Read more »
Sago Mini Superhero (Education)
Sago Mini Superhero 1.0 Device: iOS Universal Category: Education Price: $2.99, Version: 1.0 (iTunes) Description: KAPOW! Jack the rabbit bursts into the sky as the Sago Mini Superhero! Fly with Jack as he lifts impossible weights,... | Read more »
Star Wars: Galaxy of Heroes guide - How...
Star Wars: Galaxy of Heroes is all about collecting heroes, powering them up, and using them together to defeat your foes. It's pretty straightforward stuff for the most part, but increasing your characters' stats can be a bit confusing because it... | Read more »
The best cooking apps (just in time for...
It’s that time of year again, where you’ll be gathering around the dinner table with your family and a huge feast in front of you. [Read more] | Read more »
Square Rave guide - How to grab those te...
Square Rave is an awesome little music-oriented puzzle game that smacks of games like Lumines, but with its own unique sense of gameplay. To help wrap your head around the game, keep the following tips and tricks in mind. [Read more] | Read more »

Price Scanner via

13-inch 128GB MacBook Air now on sale for $79...
Best Buy has just lowered their price on the 2015 13″ 1.6GHz/128GB MacBook Air to $799.99 on their online store for Cyber Monday. Choose free shipping or free local store pickup (if available). Sale... Read more
Best Buy lowers 13-inch MacBook Pro prices, n...
Best Buy has lowered prices on select 13″ MacBook Pros this afternoon. Now save up to $200 off MSRP for Cyber Monday on the following models. Choose free shipping or free local store pickup (if... Read more
Cyber Monday: Apple MacBooks on sale for up t...
Apple resellers have MacBook Pros, MacBook Airs, and MacBooks on sale for up to $250 off MSRP for Cyber Monday 2015. The following is a roundup of the lowest prices available for new models from any... Read more
Cyber Monday: Apple Watch on sale for up to $...
B&H Photo has the Apple Watch on sale for Cyber Monday for $50-$100 off MSRP. Shipping is free, and B&H charges NY sales tax only: - Apple Watch Sport: $50 off - Apple Watch: $50-$100 off B... Read more
Cyber Monday: 15% off Apple products, and sto...
Use code CYBER15 on Cyber Monday only to take 15% on Apple products at Target, and store-wide. Choose free shipping or free local store pickup (if available). Sale prices for online orders only, in-... Read more
iPad Air 2 And iPad mini Among Top Five Black...
Adobe has released its 2015 online shopping data for Black Friday and Thanksgiving Day. The five best selling electronic products on Black Friday were Samsung 4K TVs, Apple iPad Air 2, Microsoft Xbox... Read more
All-in-one PC Shipments Projected To Drop Ove...
Digitimes’ Aaron Lee and Joseph Tsai report that all-in-one (AIO) PC shipments may drop a double-digit percentage on-year in 2015 due to weaker-than-expected demand, although second-largest AIO make... Read more
Sprint Offers iPad Pro
Sprint now offers Apple’s new iPad Pro with Wi-Fi + Cellular, featuring a 12.9-inch Retina display with 5.6 million pixels. Customers can pick up iPad Pro at select Sprint retail locations. It can... Read more
Cyber Monday: Target offers 15% discount on A...
Target has discounted Apple Watches by 15% for Cyber Monday. Choose free shipping or free local store pickup (if available). Sale prices for online orders only, in-store prices may vary: - Apple... Read more
Sunday roundup of Holiday weekend Mac sales:...
Take up to $500 off MSRP on the price of a new Mac at B&H Photo today as part of their Black Friday/Holiday weekend sale. Shipping is free, and B&H charges NY tax only. These prices are... Read more

Jobs Board

Software Engineer, *Apple* Watch - Apple (U...
# Software Engineer, Apple Watch Job Number: 33362459 Santa Clara Valley, Califo ia, United States Posted: Jul. 28, 2015 Weekly Hours: 40.00 **Job Summary** Join the Read more
SW Engineer - *Apple* Music - Apple (United...
# SW Engineer - Apple Music Job Number: 40899104 San Francisco, Califo ia, United States Posted: Aug. 18, 2015 Weekly Hours: 40.00 **Job Summary** Join the Android Read more
Sr Software Engineer *Apple* Pay - Apple (U...
# Sr Software Engineer Apple Pay Job Number: 44003019 Santa Clara Valley, Califo ia, United States Posted: Nov. 13, 2015 Weekly Hours: 40.00 **Job Summary** Apple Read more
*Apple* Site Security Manager - Apple (Unite...
# Apple Site Security Manager Job Number: 42975010 Culver City, Califo ia, United States Posted: Oct. 2, 2015 Weekly Hours: 40.00 **Job Summary** The Apple Site Read more
iOS Wallet & *Apple* Pay Engineer - App...
# iOS Wallet & Apple Pay Engineer Job Number: 40586801 Santa Clara Valley, Califo ia, United States Posted: Nov. 16, 2015 Weekly Hours: 40.00 **Job Summary** The iOS Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.