Follow us on Twitter!
back to panic.com

Panic Blog

From the desk of
Steven
Engineering Dept.

About Gatekeeper

Today’s Mountain Lion announcement introduces an important new security feature, called Gatekeeper, in addition to the “sandboxing” feature that premiered in Lion. I’d like to talk a little bit about it, and why it’s important to all Mac users.

Malware is out of control. Almost every day I read a new article about a major security breach in a well-known organization. There is big money to be made from stolen credit card numbers and identities. End-user applications on individual computers are a prime attack vector because, even with the best tools and the best programmers, vulnerabilities sneak their way in. Trying to make applications free of vulnerabilities (while still an important goal) is to lose the overall cat-and-mouse race.

As Mac users, we’ve mostly enjoyed a life free of the worry that has followed Windows users for years. Mac OS X is pretty damn secure. But it could be more secure. As Macs enjoy increased popularity, they become a more attractive target to identity thieves and other criminals. Sooner or later, bad people ruin every nice thing. It’s an immutable law of humanity.

So, what to do about this? Code-signing, although it can’t single-handedly fix the problem forever, is a vital weapon in the fight against malware. But many folks are unclear on how it works, or how it helps. Let me try to explain in as close to plain English as I can.

An explanation of code-signing for humans

What is code-signing? Let’s start with a slightly higher-level question: what is signing? Signing is based on technology similar to encryption, so let’s discuss them both broadly.

One of the most prevalent and secure methods of encrypting or signing data is to use what’s called a “key-pair”. As the word “pair” suggests, this means there are two keys which can “unlock” the encrypted data in certain ways.

A “key” is literally just a number. But it’s a very big number, and this is important. If I asked you to guess a number between 1 and 100, you’d have a 1% chance of guessing it on your first try, and you’d be guaranteed to guess it correctly if I gave you 100 tries. But what if I asked you to guess a number between 1 and 3 trillion? That’s a bit more of a challenge.

You’ve probably heard at least in passing about encryption keys and that they have different sizes or lengths (such as 40-bit, 128-bit, or 256-bit). Just like in my number guessing example above, longer keys are harder to guess. Each additional bit that is added to a key makes it exponentially harder to guess or figure out by brute-force attempting to decrypt the data with every possible numerical key. (Is 1 the key? No. Is 2 the key? No. Is 3 the key? Is 3,426,989,662 the key? No.)

We want encryption keys to be very long so that brute-force guessing attempts would take literally thousands of years. They become an unreasonable attack vector given the current average human lifespan.

So, why two keys? In key-pair encryption, one key is called the “private key” and the other is called the “public key”.

The keeper of the private key is able to “sign” data; a process which both identifies its origin and provides reasonable proof that it has not been altered. Private keys must be guarded very carefully, so that signatures cannot be forged.

The public key, as its name suggests, may be distributed freely. In encryption, the public key can be used to encrypt data which can only be read by the owner of the corresponding private key. In other words, with my public key, you could send me a secret message that only I could read.

In signing, the public key can be used for another purpose: to verify (with an extremely high degree of mathematical probability) that a “signed” piece of data came from me. Or, to be more specific, could only have come from someone with access to my private key. Which, hopefully, is just me.

In a nutshell, that’s what signing is. Even without actually encrypting it, I can take a chunk of data, run it through a very complex mathematical process to “sign” it with my unique private key, thus generating a second chunk of data called a “signature” that could (statistically speaking) only have come from that specific combination of data chunk and my private key.

Anyone with that signature and my public key can then be almost 100% sure that data came from me, and that it was not modified by any third-party along the way. The data could’t have any virus or vulnerability injected into it, because then the signature would no longer match the data.

So, signing allows us to, with very high confidence, ensure that we are who we say we are, and that the data we produce really came from us. Code-signing, then, is simply applying that signing process to executable code like a Mac app. If I try to start up an app, the operating system can validate that the app’s signature is valid, and perhaps also that it is the signature of a known, trusted developer. If it doesn’t pass muster, the OS can refuse to run the application.

Which brings me to Gatekeeper.

The role of Gatekeeper

The iOS devices (iPhone and iPad) effectively have had a Gatekeeper built into them since their very first release. When we write an iOS app, we sign it, then send it to Apple to review. Apple can validate the signature to ensure that it hasn’t been tampered with — that it really came from us — and then it goes into the app review process.

If the app passes review, it is then signed again by Apple, and posted to the App Store. Since Apple is the only entity able to sign App Store applications, iOS will simply refuse to run any app that doesn’t have Apple’s signature — it obviously didn’t come from the App Store. (If you “jailbreak” an iOS device, this is the security check you are bypassing. You are lobotomizing iOS so that it will merrily run “unsigned” code from any source. As you can hopefully tell by now, this has both benefits in terms of flexibility and very significant risks in terms of security.)

But how to bring this level of security to Mac OS, which has always allowed unsigned code from any source to run more-or-less without restriction?

The simplest thing Apple could have done would have been to make the Mac App Store the sole source for Mac apps, in the same way the App Store is the sole source for iOS apps, shutting off every other app distribution venue in the process. While this would have immediately solved the problem, you would have seen developers’ heads bursting into flame and flying across the room in rage. Why?

Although security is a vital feature for Apple, developers, and users alike, being unable to run unsigned code cuts a lot of really great things off at the knees. You wouldn’t, for example, be able to just download and run an open source project unless it had been submitted to and reviewed by the App Store. Highly disruptive software (think Napster or BitTorrent) may have not been able to exist on the Mac platform since it would have been likely to run afoul of Apple’s App Store guidelines. Major vendors such as Adobe and Microsoft might have withdrawn their support for the platform, being unwilling to cede 30% of their revenue to App Store distribution.

So, for a while, there was a great deal of consternation among Mac developers, including this author, that this might be the route Apple would take. In recent years, Apple has shown a trend of following the most hardline possible stance that will benefit users and Apple, often at the expense of developer freedom, and gradually backing in certain affordances (push notifications, for example) as user-impacting problems became evident. So it seemed feasible that we’d wake up one day and Apple would decree that all Mac apps must be sold through the App Store.

But instead, Apple went to considerable effort and expense to find a middle ground.

Controlling Gatekeeper in Mountain Lion

In Mountain Lion, you, the user, have three options:

1. You can let anything run on your system, whether or not it is signed. This is the Mac OS of today. It’s like having a jailbroken iPhone.

2. You can allow only Mac App Store apps to run on your system. This is the most secure option, but you lose the ability to run non-App Store software, which currently includes such products as Microsoft Office and Adobe CS.

3. You can allow only Mac App Store apps or apps signed by a developer. This is the new default.

It’s this third option that is critical. As a developer, I can register for a unique ID which allows me to sign my app but does not require it be sold through the App Store. Users get the benefit of knowing the app came from a trusted source. But I retain the ability to sell my app directly to end users.

If my app were to do something nefarious, my developer ID would get revoked and that would be the end of that. My app would no longer be allowed to run (unless you specifically allowed unsigned apps). As a matter of fact, if you try to launch an unsigned or unvalidatable app on a Mac with Gatekeeper enabled, the default button is “Move To Trash”. Pretty hardcore. Kind of awesome.

It is really quite a nice compromise.

I have a personal flaw in the form of a small conspiracy theorist who lives in my head. He worried that this may have been created as just a temporary stepping stone — like Rosetta for the Intel transition, or Carbon for the OS 9 to OS X transition — and that one day, the Mac App Store-only option might still be enforced.

But I can’t find it in me to disparage this goodwill effort that Apple has undertaken to not turn every third-party developer upside-down with regard to app distribution. To me it’s a great sign that they’re aware and at some level sympathetic to our concerns, while remaining committed to a high-security experience for users.

Further cementing this feeling is the fact that we were invited to a private briefing at Apple about Gatekeeper a week before today’s announcement. Cabel was told point-blank that Apple has great respect for the third-party app community, and wants to see it continue to grow — they do not want to poison the well. I think their actions here speak even louder than their words, though.

One worrisome rift

There remains one thing that is of concern to me. Despite these great strides forward, Apple is walking a dangerous line with regard to features that are only available to App Store distributed apps. The two most prominent examples are iCloud and Notification Center. Cabel asked Apple if, thanks to Gatekeeper and Developer ID, App Store-only features would be eventually be available to signed apps that were not distributed through the App Store. There was some shuffling of feet and a “we have nothing to announce at this time”. It didn’t sound particularly optimistic.

It would be a shame if this trend continues, as it creates an artificial gulf between App Store and non-App Store apps. For example, as things stand today, we won’t be able to offer iCloud syncing in, say, Coda 2, when you purchase it directly from us. Only App Store purchasers would get that feature. Making matters worse is Apple offers us no real facility to “cross-grade” you from a direct purchase to an App Store purchase, should you change your mind.

There’s no real engineering reason that I can think of for this. It seems marketing or money-driven, and I think it’s un-Apple-like to chase the money at the expense of user experience in that manner. We hope they change their minds about that particular facet.

Moving forward

Other than that though, we think Gatekeeper is a bold new feature that should do wonders for the security of your Mac for years to come. Even though their rapid pace of development is at times difficult for us to keep up with, we are excited that Apple continues to aggressively push the envelope when it comes to keeping Mac OS X safe and secure.

Posted at 2:34 pm 77 Comments

From the desk of
Cabel
Engineering Dept.

Check App Store Updates With a URL

When something new goes live at Panic, the first to know about it are the dedicated followers of our Twitter account.

And when we tell people there’s something new, like a software update, we really like to provide a specially crafted URL that will allow that person to get said update with one click. We built this functionality into Transmit and Unison, and it makes for a great Twitter experience: here’s a new thing, click here to get it, boom, done.

When the Mac App Store was in beta, I was really hoping for something similar — a simple way to notify a user of an App Store update, with a link to take them to the update in one click.

This is where I tell you something amazing: I filed a bug with Apple and made this specific feature request, even proposing the URL format, and Apple added it to the App Store a couple versions later. The system worked!

So now I’ll reveal the secret to you. To send your users to Mac App Store updates, use this URL:

  1. macappstore://showUpdatesPage

That’s it. You can see it at work here:
 

(We built a redirector since URL shorteners don’t like funky URL types.) And that’s all there is to it.

Posted at 3:26 pm 18 Comments

Copywriter: Cabel.

The Transmit Model

I got an e-mail from Kenichi, our 3D icon master in Japan, the other day:

“I’m learning and trying a new lightings. HDRI map + system light sources. It’s great, but sometimes does not work for icon design.”

He sent along three images that I thought you’d enjoy seeing. You’ve probably never seen the Transmit truck from these angles!

Man, it really makes me want a Transmit truck toy…


Posted at 4:13 pm 32 Comments

From the desk of Cabel
Portland, Oregon 97205

Panic State of the Union ’11

So, what’s going on at Panic lately? Allow me to explain!

Let’s start with Coda 1. We’ve recently done a series of Lion updates, ending with Coda 1.7.4, which significantly improved the stability of our all-in-one web editor. That said, there’s still one annoying bug on our list that can prevent Preview from fully refreshing linked files such as CSS stylesheet changes. We think we’ve got this one licked, so look for a Coda 1.7.5 release in the coming weeks to fix it. One more important note about Coda 1 — at some point, our automatic update notifications broke! Ugh. The worst. We’ll fix it in 1.7.5, but you might be running an older version and suffering dumb bugs. Please, if you use Coda, choose “Check for Updates…” from the Coda menu and make sure you’re up-to-date.

We’ve been spending Transmit’s year gathering feature requests, planning for the future, and issuing important bug fixes to our world-class file transfer client — including two recent releases to improve Lion compatibility. Now at a nice place with version 4.1.7, we’ll continue to monitor bugs, and hope to spend some quality time with Transmit soon.

Prompt, our nice SSH client for iOS, just had an update to seriously improve the handling of private keys. We’re also finishing up a bug fix release right now — expect it in the next few weeks. We love this app, and we love hearing how it’s saved your bacon, letting you reboot your server while fire-eating at Burning Man, etc. While we’re insistent on not kitchen-sinking it, if you have feature suggestions, let us know. (SSH tunneling is the #1 request by my count.)

We’ve just found an issue with CandyBar where it doesn’t properly import icons that have 1024 ⨉ 1024 representations (the 256 and 512 go missing), so you can expect a 3.3.3 release in the near future. As a side note, people sometimes ask if we can add Lion’s new sidebar icons to CandyBar, and we can, but there’s a sad catch — the system automatically applies monochromatic shading to those icons. We get the feeling people want to bring back color, not have a blob of gray, but that’s not currently possible.

(As for the rest: Unison is in a solid place and we’ll continue to monitor and fix bugs. We’re still working out our plans for the weird little guys: Stattoo actually has a nice update ready to go (!), and Desktastic has a years-old and pretty cool complete rewrite in the can (!!) save for some testing, but internally we’re struggling with overall strategy — it’s hard to find time to support and maintain these tiny little apps. Lesson learned, but thanks for your patience (all four of you) while we figure this out. Also, we continue to develop internal special projects. Who knows what we’re up to!)

Finally, the only part you care about: Coda 2.

Coda 2 has now been in development for about a year and a half. All of us have been working incredibly hard on this forthcoming release. We’re finishing up new features, boosting up the editor, dramatically cleaning up the UI, and improving what Coda already does well today, all while, hopefully, keeping things extremely light and lean. By the time you see it, Coda might look a little different than you’re used to, but we think it’s for good reason. We’ll see how it shakes out, but we’re very excited.

Yes, we can at last see the light at the end of the tunnel. That means I have to make good on the promise I made in last year’s State of the Union, and tell you: we’re almost ready to start private beta testing.

That’s your cue: click here to apply for the Coda 2 private beta! The signup form is now closed. Thanks for your interest!

We only need a limited number of users, and we’re especially interested in Coda contributors — folks who wrote plugins, syntax modes, etc. If you don’t make it in, please note that we still truly appreciate your interest.

So, when will it ship? Coda 2 is an extremely complex and multi-layered app, and it will take significant time to test, debug, and improve. That means there are many, many more months ahead of us — this release is important and needs to be as close to perfect as possible. So, to those of you currently camped out on the street in front of our office: you’ll need to hang in there for a quite a while still. Thanks for your understanding while we test!

Regardless, this is a major milestone in our development, and we thought you’d be excited as well.

That’s the scoop around here. Onward!

Posted at 1:17 pm 105 Comments

Summer in the Panic Kitchen

From the Panic kitchen, Chef Neven

It’s been a super-busy summer at Panic, so we’ve made sure to fuel our software-development efforts with a steady regimen of freshly prepared office meals. We hope to do one of these every month, and we’d love to inspire your own office cooking adventures. Any questions? Ask away!  And now, our tasty tetraptych:

Ramen.

No one doesn’t like ramen, right? Propelled by a mild case of bummed-outness at Portland’s general lack of awesome ramen houses* and the publication of the first, ramen-centric issue of David Chang’s Lucky Peach magazine, we figured we’d take matters into our own hands and cook up a big batch for the office.

We stuck to the Momofuku recipe from Lucky Peach as much as possible, skipping the noodle-making itself. (Yeah, we know it’s kind of important, but we wanted to have a bit of breathing room. And, Uwajimaya sells totally nice fresh noodles.) Armed with a big bag of chicken necks and backs, we gathered around the office stove for a whole day as the ramen broth reduced, all five gallons of it. Les made shredded pork on Sunday while I slow-poached eggs in their shells; this is a super-handy method for when you need fifteen poached eggs at the same time.

This was an extremely porky dish, so we served up vegan and pescatarian alternatives for Garrett & Mike: cold sesame noodles with black radish, and the same topped with an egg and dried anchovies (my favorite).

Nobody didn’t like it! A very fun – if exhausting – kitchen adventure.

* Since then, the brand-new Southeast joint Wafu has blown our noodle-socks off. On the West side, Shigezo is pretty good.

Miso Corn.

Continuing our Momofuku run, we noticed how darn sweet and tasty the corn was this August. I had previously postulated that the Roasted Sweet Summer Corn from the Momofuku cookbook was their most bang-to-bucky recipe. Simple: cut a bunch of fresh corn, roast it in bacon fat, add miso and butter, then top in a South-meets-East fashion.

Les handled the corn, pre-grilling it briefly to add some char. We then split it between our two largest dutch ovens. (Did we mention it’s tricky to cook for fifteen?) For toppings, we went with the shrimp from Momofuku’s Shrimp’n'Grits, more poached eggs, a bit of green onion, and a few slices of my dad’s homemade, home-smoked sausage. That stuff is my own personal bacon.

Garrett and Mike enjoyed a butter-free, tempeh-topped version. Everyone went nom nom nom. The best part? We ended up with an enormous quantity of corn husk and silk. You do not want to throw this stuff away; instead, make a stock of it. It’ll taste of sweet, sweet summer. To make ours portable, we reduced it for three days until five gallons turned to one dark, rich, syrupy quart. This can be diluted to use as stock or you can add use it to make corn ice cream, America’s best-kept ice cream secret.

Bao.

Momofuku, take three: pork buns. We were looking for things that could be assembled and served fairly quickly once we’re at the office Monday morning (the usual setting for Panic Kitchen events). The buns themselves took a bit of work, but as predicted, our Monday prep was fairly mellow.

Dave joined Les and yours truly for a marathon Saturday of kneading, waiting, and rolling – lots of it, hoo boy. We ended up with exactly one hundred buns, covering every flat surfaces in our office kitchen. If you go bun-making yourself, clean out every table, desk, counter, and shelf you’ve got – you’ll need them all. Les was on pork duty once again, bringing in a simple pork-belly roast, and a version glazed in Cherry Coke. The former was served with hoisin sauce, Dave’s garden-grown cucumbers, and green onions; the latter, with pickled mustard greens, ground peanuts, and cilantro. Beer went well with both.

The buns contain milk, and it’s pretty much impossible to make fewer than thirty. Thus, the vegan option this time was coconut-rice cakes with Chinese-spiced roasted eggplant and shiitakes, and a papaya salad.

Would we do this again? Probably, and probably only on this scale.

Bánh Mì.

We’re big fans of Portland’s beat and cheapest Vietnamese-French-sandwich spot, Best Baguette. For this lunch, we wanted to see if we could best them at what they do best.

Les is still probably bummed that we didn’t attempt our own baguettes; my feeling was that we could never match – let alone beat – a professional bakery at this. We capitulated and bought our bread from Best Baguette, at approximately $0 or so per person. Our starting point for the recipes needed here was Viet World Kitchen. I took the weekend to pickle the daikon and carrots – more than twice the amount we ended up using, it turned out – and make the mayo. Les porked it up again, steaming a big batch of Vietnamese meatballs. Think about how crazy bánh mì really is – French bread topped with french mayonnaise, jazzed-up, chopped-up Italian meatballs, and Asian pickles. Did we mention it’s all served with iced coffee? We got a few cans of Vietnam’s favorite brand, Trung Nguyen, and Vietnamese-Nestlé sweetened condensed milk.

Pescatarian option: the classic sardine bánh mì (my favorite). Vegan: lemongrass tofu, miso mayo.

In the end, Greg declared Les’ meatballs better than Best Baguette’s. Sweet, sweet victory!

Posted at 1:13 pm 10 Comments

From the desk of Cabel
Portland, Oregon 97205

Thanks, Ian!

The story of how we hired Ian, one of our Cocoa engineers, is a nice piece of life.

When Panic’s headcount was two — me and Steve — the first thing we needed help with was tech support, but the idea of finding and hiring an employee was overwhelming. (It still is, really.) Riding my bike through downtown Portland late one night, a girl flagged me down to ask which bus might take her to her friend’s house. My knowledge of Tri-Met is limited to the one line I use and which seats have the least crust, so I — stay with me here — instead suggested we could walk to my car and drive. On the way, she asked me what I did, and when I mentioned computers, she said “Oh, I have a friend at PSU who does computer stuff! He’s looking for a job!” I quickly lost touch with Cassie, but Ian has worked for Panic ever since.

After first proving his worth at the often thankless task of tech support while simultaneously taking CS classes at Portland State University, Ian’s programming skills gradually grew. Eventually he seemed ready to jump to the next level, so Stattoo was concocted as Ian’s first-ever Cocoa app, a chance to cut his teeth without jumping into the frigid waters of a Transmit. Today, Ian is a part of everything, including major pieces of Coda and Transmit. We guarantee you’ve used his code.

Today is Ian’s last day at Panic, after over 10 years of service. What’s next for him? Medical school!

I’m sad to see Ian go, but I’m happy to see him follow his heart — how many of us could make such a drastic life change? — and while I love Ian as a Cocoa programmer, I really love the idea of him as a fantastic doctor.

So, here’s to your future, Ian! We’ll miss you, and we’ll be rooting for you always.

Posted at 1:15 pm 30 Comments

Copywriter: Cabel.

The World’s First Emoji Domain

Ladies and gentlemen, are you comfortably running Mac OS X Lion?

Because this is our moment.

Years of technological progression, a steady flowing river of genius and fortitude, breakthrough and discovery, have sent us ever-forward, hurtling towards this. From the humble beginnings of the first wire-wrapped computer, to the rolled-up-sleeves of the hard-working women and men of The Unicode Consortium, to the dedicated Apple engineer staying late in the office to ship a major operating system update while his family sits without him at the dinner table. “Will I see Daddy tomorrow?”, his son asks, picking at his plate. “I don’t know”, is the sad, quiet reply. You see, today is built on the hard working backs of those from yesterday. And on the shoulders of those backs, we will stand tall, reaching towards tomorrow.

The release of Mac OS X Lion added an important new feature: system-wide pictograms, or, as you might call them, “Emoji”. And for the first time, these pictograms are not based on a mobile-carrier ever-shifting method of encoding via the “private” Unicode character space, but are using the officially accepted Unicode 6.0 Emoji / ISO 10646 standard.

So yes, everything we’ve worked for has led us here.

Friends, family, well-wishers: today, history is rewritten.

I give you:

The world’s first emoji domain.

http://💩.la

Now that you’ve had a moment to recover, I’d like to give particular thanks to the country of Laos, who run the last remaining domain registrar I’m aware of that still allows international domain names that use any Unicode character. Our sincere thanks must be given to Thongsing Thammavong, the Prime Minister of Laos, for his valuable assistance in making all of this possible.

Update: I’ve just got word that, due to intense political unrest in Laos (untrue), they no longer allow Emoji domains! Yes, .la is no more. Fortunately, the territory of Tokelau (!) has stepped in to meet this intense international need! Emoji .tk domains are now available.

(Why are they so hard to register? Due to fears of IDN homograph attacks, most registrars, like .com, now only allow specific language sets to be used for Unicode domain names. The days of registering ☃.net — a previous Cabel effort in this series — are long gone. In fact, back in 2007 ICANN expressly recommended that “symbols and icons [...] such as typographic and pictographic dingbats” should not be allowable code points for domain names. Fortunately, Laos didn’t get the memo.)

Now some of you might be asking, “What’s the point? How is this useful? It requires Lion, it only works in Safari, let alone on Windows. They’re impossible to type. How is this at all useful?” I understand, but you’re not really asking the right questions.

Now, I’m sure those of you who are members of the press will be eager to leave and phone your bureau as soon as possible with this discovery. Thus, I’ll bring my presentation to an end.

My friends, I’m glad you could join me on this trip into the unknown, now made known.

The internet will never be the same.

Oh, and one more thing: if you ever want to tell your friends about Transmit or Coda, just have them visit:

http://🚚.la   http://🍃.la

PS: Thanks to iwantmyname.com for doing emoji domain registration, and domai.nr for valuable assistance!

PPS: Curious how to access Emoji in Lion? Choose Edit ▸ Special Characters…, then select Emoji in the sidebar of the character palette. Double click an Emoji to insert it into the active text field.

Posted at 11:05 am 49 Comments

From the desk of Cabel
Portland, Oregon 97205

Panic is Ready for Lion

Not long from now, Mac OS X 10.7 Lion will be ready to download for eager Mac users across the globe.

Well, we’re ready. Today we posted four (!) software updates, mainly to improve Lion compatibility and be ready for the future.

We haven’t yet dug into Lion-specific features, such as fullscreen, but these minor updates will at least keep you rolling with your favorite Panic apps well into 10.7.

Better still? All of these updates are 100% free for current owners.

Here’s what’s new:

  • Coda 1.7.1. This important release fixes some annoying possible crashes in Lion. Not much else changed, but that’s because we’re very busy working on the big guy.
  • CandyBar 3.3. Not only are we up to date with Lion’s icons, but we also tweaked our user interface to better match 10.7, fixed the Export size slider to snap to common sizes, and more.
  • Unison 2.1.5. No known Lion issues to speak of, but we did fix a frequent crash with playing audio, squashed a rare situation where preferences would get reset, and more.
  • Transmit 4.1.6. Our amazing Transmit Disk feature (try it!) now fully supports Lion (a “non-trivial” change, I’m told). We also snuck in support for the AWS Tokyo region, Cyberduck 4 favorites importing, and more.

(As always, you can get full release notes by hovering over the ‘Download’ button on each app’s web page.)

These updates are available immediately direct from us. Just launch and use the apps — they’ll update for you. (CandyBar users will need to manually download and replace their current app.)

If you bought via the Mac App Store, hang tight — these updates (save for CandyBar) are currently in the review process, and should be available very soon.

We hope you enjoy Lion!

Posted at 5:23 pm 33 Comments

Copywriter: Cabel.

Yay! 4th of July Fireworks 2011!

(Note: last year, Blogger turned off ‘FTP Publishing’, sadly disabling my personal blog. The good news? I’ve officially scheduled a migration to WordPress in 2017. The bad news? This blog post, which has nothing to do with Panic, will have to live here for now. Enjoy the distraction! —Cabel)

“Hey, Gabe! Nice to see you. You gonna take more photos this year?”, asked the friendly Blackjack Fireworks owner with the large, silver handgun strapped to his waist.

I guess that makes this a tradition, then!

Welcome to my 5th annual look at funny fireworks. (You can get up to speed with 200720082009, and 2010.) These Chinese-designed and American-targeted fireworks from Brothers, Alien, Boomer, and more, hold a very special place in my design, marketing, and explosive heart. I hope you enjoy them also.

Stunning Stock Photography

The lady in the bottom right can’t help but smile every time she hears “You’ve Got Mail!”.

 

Most accurate “baby boomer” photo ever. Also, please read the “Performance Description”.

 

Sports dudes: do these guys say “Americana” to you? (I honestly don’t know.)

 

Surprising Graphic Design

Time from File > New to Save as PDF: 7 minutes.


Exactly how I imagine Oracle’s acquisition of PeopleSoft went down.

 

Shotgun shells? Pool cue? Or is this baby chicken a suicide bomber? What is going on?


Questionable Concepts

PERFORMANCE: An eerily accurate simulation of what happens to me when I drink a grande latte.

 

That seems like an exceptionally bad idea.

 

Who can forget the classic Biblical passage where all God’s creatures die in a fire?

 

It just seems like a really specific thing to be blowing up is all.

 

Hot eats, cool copyright infringements.

 

So, so close.

 

“And this is my brother, Breaker.”

 

Classic! Another digital fantasy interrupted by a pop-up window that says “500 GRAM”.

 

The Grand Finale

Tucked in the corner of the shop, I see this. It’s like they knew I was coming.

Computer? Yes please. What could this possibly be? Stumped, I drew in closer, and discovered the secret…

This firework “laptop” actually hinges open.

Yes. The Windows key! The cursor nub! And this amazing desktop picture:

Ladies and gentlemen, it’s over — there’s no need to design any more fireworks. “Computer” has been made.

Bonus Movie

Here’s what happens when you light “Computer” on fire. Happy 4th of July, people!

Posted at 12:36 am 57 Comments

From the desk of Cabel
Portland, Oregon 97205

Panic at WWDC 2011

Dear Internet,

This week, the Panic crew — all 15 of us, with the exception of Kenichi, who is expecting a baby soon, our fifth this year — will be attending Apple’s always-enjoyable WWDC conference.

We can’t wait to see what’s new in Lion and iOS 5. We can’t wait to meet up with our favorite developers, old friends, and brand-new acquaintances, to swap stories. And we’re beyond curious to know what’s up with iCloud, particularly since lots of people want Dropbox syncing in our apps but we’ve been secretly banking on Apple providing a free way for our users to sync their preferences instead. Oh please, please let that be a part of it.

Now, while we’re at WWDC, our support turnaround time might be a little higher than normal. That said, our support team endeavors to bring the show on the road, all guns blazing. (“They work in a hotel room!”)

Most important, if you see any of us at WWDC — let our Twitter avatars be your guide — please say hello!

We’d love to meet you.

Catch you next week!

Posted at 6:17 pm 10 Comments