Ever have a day where you feel like computers have turned against you? If they’re not spattering the screen with cryptic error dialogs, they’re refusing to Undo, replacing your hours of work with a
, or just giving up and rebooting.
When I have a day like that, I feel productive. See, one of my jobs here is to test our software. Like a Test Pilot, I take things out for a flight to find out if they’re safe before the general public does. Of course, I’m steering apps, not planes. And if I crash one, it’s a lot less painful and doesn’t make the news headlines.
Sometimes testing looks a lot like anyone else using the application. I add actions to my OmniFocus database, compose a blog post in OmniOutliner, or rearrange my living room in OmniGraffle. But then something funny happens. Instead of underlining the one misspelled word in my blog post, it puts angry red squiggles under the word after it. “Hmm…why would that happen?” Hopefully I’ve saved a copy of my blog post, because now I’m more interested in solving this puzzle. I might add more misspelled words, or rearrange words, to look for a pattern. By the time I’ve tracked down the issue, the blog post is probably illegible.
Fortunately, I’ve got two different backup systems in place, so I can boldly mangle my blog post, delete valuable system files, or run that one version of an app that deleted all the files on my desktop. (Oops!)
Testing can also look a little ridiculous sometimes. Maybe the latest internal build of OmniGraffle works fine with the 7 pieces of furniture I’m rearranging in my living room. But what does it do with 7000 pieces of furniture? And what if each coffee table has a huge jpeg placed inside its texture? And what if the label on every couch is the word ‘couch’ written in 20 different languages? I don’t really expect a user to need OmniGraffle to handle this exact situation, but they’re probably going to try to do (or accidentally do) something similarly complex. What goes wrong first? Is it the mix of left-to-right and right-to-left text? Or the thousands of shapes? And how does it go wrong? It might bonk, display a polite alert, get horribly slow, corrupt your file, or crash. Maybe we can’t keep it from failing, but we might be able to replace that crash with a polite alert and hang onto the contents of your file.
You probably know software issues are called bugs. There’s some disagreement about why they’re called that, but I think we can all agree that, like cockroaches, fleas, and mosquitos, they are really unpleasant and should be removed from our homes.
When I find a bug, I add a new entry to our bug database. I’m pointing out a problem, maybe a mistake one of our engineers made. I try to be polite, so they don’t feel attacked. They keep in mind that we all want our software to have fewer bugs and finding the problems is my part of that goal. I give them as much information as I can, so that hopefully they can see the bug happen for themselves, figure out why, and fix it.
Software is immensely complex. While no software can be proven completely free of bugs1, if we can find and fix the most common and troublesome ones before you ever see them, it’s a good day.
The OmniFocus 2 Debut is now available to watch!
Many thanks to everyone who was able to show up on January 31st — we all enjoyed talking to you.
Don’t forget to sign up for the private test to participate in the OmniFocus 2 process. We won’t send a lot of mail, but we should have more information soon.
Enjoy!
As we approach the end of 2012 (or the world, according to some), I’ve been reflecting on just how much we’ve accomplished this year here at Omni.

We celebrated 20 years of omnigroup.com, of course, and we moved to new offices. But, more importantly, we finished our two-and-a-half-year “iPad or Bust!” initiative by shipping the last of those five apps, OmniPlan for iPad! Version 1.0 doesn’t mark the end of all our work, of course—but it’s a great milestone and I’m incredibly proud of all our team has accomplished.
Finishing up our “iPad or Bust!” initiative has given us the opportunity to start working through a number of other projects on our “to do” lists, so there’s been a lot of news in 2012…
We rolled out our own Omni Sync Server, so you don’t have to become a sysadmin and run your own web server just to sync your devices. (But you can still run your own server if you like: our syncing engine is based on open web protocols.)
OmniFocus has been on speaking terms with Siri since late 2011, of course, but in 2012 we’ve made it more robust and brought support for Siri to the iPad app as well. We also added support for flexible weekly repeats and TextExpander—and just this month we’ve started beta testing our new Mail Drop which lets you email tasks directly to your OmniFocus database.
This year Apple introduced iPads with Retina displays, and we immediately shipped Retina updates for all of our iPad apps. Apple also introduced Retina displays to the Mac with the new MacBook Pro, and we’ve already shipped Retina updates for OmniGraffle and OmniPlan (and are busy working on Retina updates for the rest of our Mac apps).
Behind the scenes, we’ve also been updating all our Mac apps to leverage the latest fundamental advances in OS X: this year we shipped Developer ID-signed updates for all our apps, 64-bit updates for OmniGraffle, OmniDiskSweeper, and OmniDazzle—and we expect to ship 64-bit updates for the rest of our apps soon. We’ve also been hard at work adopting OS X’s new App Sandbox.
Even before we finished “iPad or Bust!” one of our top priorities has been to build automatic document syncing into OmniGraffle, OmniOutliner, and OmniGraphSketcher—we want it to be as easy to sync all our apps as it is to sync OmniFocus and OmniPlan. We’ve been working on this for over a year and a half now, and at the start we had very promising results: it felt like magic when it worked, and we thought we’d be ready to ship last year. But though our code was finished, we found the back end service we were trying to use wasn’t working reliably, and we felt it would be irresponsible to ship something so critical until we knew the full solution was solid. After a year of trying to help get that solution working, we went back to the drawing board and designed a new syncing solution based on open web protocols. Nobody was more disappointed about the delay this caused than we were—but we knew we needed to find some way to move forward, and I’m pleased to report that the redesign has gone very well (and our new syncing solution is now in internal testing).
Which, of course, leads right into the subject of my next blog post: what’s coming next from Omni? (Stay tuned!)
20 years ago today, omnigroup.com was born.
At that time, the five of us—Wil Shipley, Tim Wood, Len Case, Mose Wingert, and myself—were still working out of our homes (or sometimes in NeXT’s local sales office, before they exited the hardware business and closed its doors). We were collaborating together on several projects, but we were paid independently—and when those projects ended it seemed somewhat likely that we might scatter to the four winds, possibly joining NeXT’s DBKit team or Lighthouse Design when our current contracts were up.
Fortunately, Tim kept reminding us that we should really form a company. (He said later that he partly did this because he thought it was an excellent idea, and partly because he didn’t know the Lighthouse/NeXT people and didn’t want to get left behind while we worked for them.)
So on Wednesday, September 9, 1992—the day after NeXTSTEP 3.0 shipped—our omnigroup.com registration came back and I set up uucp and SLIP over 14.4Kbps modems to link our home workstations together. (They were all NeXTs, of course.) We started giving everyone our omnigroup.com email addresses, gave the “NeXT Programmers” mailing list (“next-prog”) a permanent home, and started establishing a common reputation and identity.
We’ve seen a lot of changes over the last 20 years, as we transitioned from working on consulting projects to shipping commercial products, from a team of 5 to one of 52—and trying our best to contribute to the platform as it evolved from its humble (but ambitious!) NeXT roots to the wildly successful platform that is now Mac OS X and iOS.
But in some ways, that first change was the biggest: the day we decided to stop investing in our individual identities and start building our collective identity. And after 20 years, I’m still privileged to be able to work each day with smart and talented people who are passionate about creating great software—while treating customers with respect, making a living, and having fun!
Last week, our friend Lotus came to the office one last time.
She was a cat, with a single-digit employee number, who neared 19 [years old] — that’s just shy of 100 in equivalent “human” years, according to the Cat Calculator.
She came to us via a friend of the company, Sonja, who relayed the “Origins” story:
Nearly 19 years ago I was walking home from the grocery store and this little black fluffy cat started walking with me and whining oh so pitifully. I petted her and gave her attention and she wandered off but in the next few days I saw her again and she followed me all the way home. She knew a sucker when she saw one. I took her upstairs and gave Sean plaintive eyes and so we made up some Found Cat posters. We already had two cats, so an online friend agreed to foster her for a while.
Lo and behold someone called saying this was her cat, her apartment had been broken into and some of her cats had gotten out. Hooray, she arranged with the foster person to get her cat back. Yet, within two weeks this same cat was out again and following me around again. I carried her upstairs and called the owner. She said something to the effect “oh she was acting differently so I didn’t think she was my cat so I let her out.” I was livid. She said something, I think, about how she could take her back if I wanted but there was no way I was going to let that happen.
While trying to find a permanent home for her we realized, oops, our youngest cat, Fnert, was an unfixed male and we better do something about that pronto. But that fluffy black kitty was on to us and, I kid you not, the night before his appointment she went into heat and I was woken up by screeching and howling and walked into my living room to find the deed being done.
Shortly after, the peeps at Omni agreed to take her in, knowing she was probably pregnant. Five adorable kittens arrived.
The rest of her history is with Omni but I have always been proud that this stray I rescued ended up having such a sweet deal. My thanks to all the Omni peeps who gave her such a great and long life.
A few months ago she went into a wonderful retirement home (courtesy of Andrew’s house—thanks Andrew!) and did some sunbathing, meowing, pétanque-playing, day-trading, and White-Russian-drinking. She was never really close to her offspring, so there weren’t grandkittens to spoil.
She had kittens during the 1994 Olympics, each named after a figure skater: Elvis, Surya, Bonaly, Viktor. She’s survived by Viktor, her firstborn, who lives with Ken.
A bit more about Lotus (and loss) at the personal space of Bill, our UX lead.
Thanks for helping with some of our company’s culture, Lotus, and for welcoming us to the office every morning for over 18 years.

Software design is pretty much dead-center between being an art and a science. Or as Jobs said, at the “intersection of technology and liberal arts”. This means that while some decisions we have to make are logical and can be satisfyingly backed up with evidence, other decisions are thrillingly, maddeningly subjective matters of taste.
So… App icons! They’re way over on the subjective side, and are at least as much marketing as they are user interface. Over the years, we have taken a few different stabs at developing a distinctive style for our app icons, but the realities of shipping software made it so that we were never really poised to release a major upgrade to everything all at once. So instead we made staggered incremental changes across our suite of apps, making for this diverse crowd.

But during the course of pursuing our iPad or Bust initiative, we decided that we would never have a better time to make our app icons more consistent. Better to change all the icons at once than to wait for each of our five huge productivity apps (spread across three platforms) to reach major versions, updating the icons one by one. So we got to work on coming up with a consistent style. Here’s the final result:

This new suite of icons emerged from an extensive list of demands:
Each product should have a distinctive emblem with a strong contour. The emblems are simple figure/ground shapes. They don’t depend on colors, gradients, shadows, or other effects, so we can use them in a variety of treatments: flat logos, outlines, cut-outs, and so on. Joel forged these emblems in OmniGraffle as purely positive/negative-space shapes.
Each product should have a consistent look across platforms. The emblems and theme colors identify the products from Mac to iPad to iPhone. (Relying primarily on color would cause problems for folks who perceive color differently!)
Each platform should have a consistent look across products. iOS apps get a colored slab with the emblem cut out, showing the black slab beneath (or white, for our iPhone app). The Mac variants are the same, but with the slabs rotated and tilted slightly away from the viewer. We go way back on Mac OS; that composition is a bit of a callback to the classic angled-document app icon style.
The icons should have a sense of being part of a unified set. This was a big one, and it took a while to get right. We didn’t just want them to look unified, we wanted them to look unquestionably Omni — we don’t have it as bad as Panic, but our icons have been stolen from time to time. It was hard to think of how to do this other than slapping a huge Omni logo on each icon. So instead, Joel had the idea of slapping hundreds of tiny Omni logos on each one. In doing so, we were even able to evoke our old brushed-metal motif.
The colored front slabs bear a carbon-fiberesque pattern of Omni logos, and the back slabs bear a prime-number-based marble pattern of Omni logos:

Lots of people here at Omni put a ton of work into this project, but Joel was the main dude. Many cheers for Joel! I did the final art for the iOS variants in Photoshop, and for the Mac variants in Modo. I’ll leave you with a shot of the OmniGraphSketcher icon from when I was zoomed in to scrutinize some tiny detail; Joel looked over my shoulder and immediately declared, “Oooh, I wanna play an FPS in there!”

Bill, our User Experience Lead, traveled to Malmö, Sweden, in November of last year to give a couple of talks at Øredev, a conference focused on “the whole software development process.”
There are a few talks from Øredev that we’d especially like to pass along:
The first talk from Bill explores development lessons learned going from the Mac, to the iPhone, to the iPad, and back. Watch it here!
His second talk, Designing Graceful, Gracious Interfaces for iPad, has been given a few different times at the Voices That Matter conferences. You can find it over at Vimeo.
And Robby Ingebretsen, another Seattleite and Pixel Lab person, gave two awesome talks on Fonts, Form, and Function and an introduction to Design Composition.
They’re all insightful and worth throwing on to your ?tv when you have a spare hour or four.
Add all four videos to OmniFocus by tapping here.
Macworld is almost here!
Join us, if you would, on January 26th, 27th, and 28th at booth 802. (There’s no need for a map; it’s extremely close to the Exhibit Hall entrance.)
We won’t beg, but we’d love to see long-time users, show our stuff to some new users, and give away some Pretty Cool Things we had made up.
This is actually our 12th straight attendance, but I’m calling this Number One, because Frakes. And Ihnatko! No big deal.
There’s always something worth checking out at Macworld — at the very least, follow along with our Instagram (omnigroup) feed or our posts on Twitter: @omnigroup. We’ll be posting awesome things throughout our stay which will all be newsworthy, I’m sure.
Also: OmniPlan for iPad previews and a quick presentation on Friday at noon!
Take a gander at our presentation lineup by heading over to our permanent Macworld page, or read ahead.
Lastly, if you know of a fantastical ramen or dumpling place we should check out while we’re in San Francisco, comment or email!
| Thursday |
| 11:15 | OmniGraffle: Space Planning |
| 12:00 | OmniOutliner: Building a Budget |
| 1:15 | OmniGraphSketcher: Data Visualization |
| 2:00 | OmniFocus: Weekly Review |
| 2:45 | OmniOutliner: Crafting Classy Documents |
| 3:15 | OmniGraffle: Basic Wireframing |
| 4:00 | OmniFocus: Daily To Do List |
| Friday |
| 10:30 | OmniOutliner: Crafting Classy Documents |
| 11:00 | Ken Case Q&A |
| 12:00 | OmniPlan for iPad: First Look! |
| 1:15 | OmniGraffle: Basic Wireframing |
| 2:00 | OmniOutliner: Building a Budget |
| 2:45 | OmniFocus: The Basics |
| 3:15 | OmniGraffle: Space Planning |
| 4:00 | OmniFocus: Review |
| Saturday |
| 10:30 | OmniGraphSketcher: Data Visualization |
| 11:00 | David Sparks |
| 12:00 | OmniGraffle: Space Planning |
| 1:15 | OmniFocus: The Basics |
| 2:00 | OmniOutliner: Building a Budget |
| 2:45 | OmniGraffle: Basic Wireframing |
| 3:15 | OmniFocus: Review |
| 4:00 | OmniOutliner: Crafting Classy Documents |
Hello World!
Allow me to introduce myself. I'm Aaron Bendickson and I'm Omni's Friendly Neighborhood Systems Administrator. Most of the time you never hear from me, which is probably an indication that I'm doing my job well. However, I wanted to let y'all know about some upcoming scheduled network downtime. This Saturday night, March 26th, starting at around 10pm PDT I'll be performing a migration on all of our production servers. Typically in sys-admin parlance the term "migration" means copying a bunch of files from one place to another and changing some configs but in this case it means *actually physically moving* all of our servers!
I'm hoping to have things back up and running within a couple hours. If you do happen to surf on over to our little corner of the web during the maintenance window you'll be greeted by a friendly little "We'll be right back" page. Consider this a perfect opportunity to chill out and spend a little time catching up on your Netflix Instant queue (something I know I'm always WAAAAY behind on).
Anyway, back to the dungeon... er, I mean data center. If you have any questions just drop us a line at support@omnigroup.com.
Thanks!
As you may have heard, we were once again bit by the Macworld bug. It was great to see those who could make it in the flesh and hear what's going on inside those those big brains of yours! If you missed any of our talks, or you'd like a refresher, you can find them here.
Chalk it up to sleep deprivation, dehydration, or blood pooling in our lower extremities (thus starving our thinking-meat of oxygen), but somewhere on day two (or 28) of the conference, something happened. It was something so... so... terribawesome that not sharing the results of our pre-show time-wasting Idle Hands experience would be a great disservice to the not-yet-undead segment of humanity.
Okay. You get it. We're zombies. (Subtlety? Not my forte.) And—fair warning—we make quite frightening zombies. Especially Brain. I mean Brian! And Lotus the cat.
Drag your feet if they're still attached cursor here to watch a thing that is scary and silly (but more scary than silly).