back to

Panic Blog

From the desk of
Engineering Dept.

PunchClock: Fun With iBeacons

PunchClockSometimes at Panic we build internal stuff that never sees the light of the outside world. This is one of those projects: an automatic in/out tracker for the Panic Team.

OK, sure, there’s not that many people that work here so it’s not a huge issue for our team, but it still seemed like something interesting to try. I originally hacked together an in/out tracker that used a combination of SNMP, ARP table lookups, and plain old port scanning to figure out who was theoretically “in”. It wasn’t so reliable and was eventually removed from our Status Board. What I didn’t know was that Apple would soon deliver a solution to our (not-so) mission-critical problem.

With the arrival of iBeacons in iOS 7, Apple was clearly moving into retail and public spaces in a whole new way. It was no longer enough to have an app for the store you are shopping in — the app could now react to your location within the store. iBeacons themselves typically do little more than broadcast an ID to notify your device that you’re near them. The idea is to spread these relatively cheap, dumb beacons around a space and then let iOS and a cloud service figure out what content the visitor should see.

Going further, iOS 8 adds a button to the lock screen when you’re in an area registered with Apple to provide indoor location tracking. That button launches the relevant app if you have it installed or takes you to the App Store if you don’t. Cool stuff.

With this new technology in-hand, it wasn’t too long before I put together a brand new office In/Out tracker called PunchClock. It uses a combination of a geo-fence and iBeacon tracking, plus a simple Sinatra backend hosted at Heroku. The part that took the longest to fine-tune was figuring out the right combination of polling to provide good location information without draining the battery.

Once we had reliable In/Out data, I thought it would be interesting to allow you to be notified (in a hopefully non-creepy way) the moment someone entered or left the office. The final notable feature of PunchClock is the ability to send push messages to everyone marked as “In” — mainly in case you get locked out of the office, or locked in the bathroom. Neven did some nice UI, Cabel made a couple of tiny notification sounds, and the app was complete.

While Apple’s iBeacon technology continues to be rolled out in big box stores and sports stadiums, there’s no reason you can’t put it to use in your own home or office now.

We’re making PunchClock available on Github so you can create your own In/Out tracker. The backend provides JSON data to the app as well as a DIY panel for Status Board.

To be honest, you’re going to have to be pretty technically-capable to set up your own instance of PunchClock. This isn’t a shipping retail product, and it’s not for the faint of heart. But if you’re a coder and you’re ready for a fun night of hacking, we’d love to see what you do with it. We’ll try to do our best to explain the process in the README for the app and backend.

PunchClock was fun for us, and we hope it’s fun for you.

Posted at 2:24 pm 22 Comments

From the desk of Noby
Portland, Oregon 97205

Coda 2.5とMac App Storeについて



私たちはCoda 2.5の開発を続ける中で、サンドボックス化されたアプリケーションという制限に挑戦し、良い解決策を発見し続け、興奮していました。正直言ってCodaは複雑な開発ツールであり、サンドボックスによる制限は’最悪のシナリオ’です。



Coda 2.5はほとんど完成しました。それでも尚、サンドボックス化に関するチャレンジを続けています。一方でこうも考えます… Coda 2.5を長らくお待たせしてしまっているユーザの皆様にそれを届けることができたら… まもなく…

つまり: Coda 2.5はサンドボックス化しません。よってMac App Storeでは公開されません。

これはCoda 2.5がAppleによってリジェクトされた訳ではありません。Mac App Storeで公開されるすべてのアプリケーションはサンドボックス化が義務であり、Coda 2.5はそうでないので我々のWebサイトで公開される、ということです。


  1. ライセンスの移行はスムースです。
  2. 既存の設定やワークフローはそのまま。
  3. Panic Syncを提供します。


• わたしはCodaをMac App Storeで購入しました。なにが必要になりますか?

現時点ではなんの準備も必要ありません。引き続きMac App Store版のCodaをお使いください。

Coda 2.5がリリースされましたら弊社の製品ページからダウンロードしてください。そして現在の直販版をAppStoreユーザが利用するのと同じように、シリアル番号入力ダイアログから製品版にアンロックしてください。これだけです。追加料金などは発生しません。

• iCloud同期はどうなりますか?

iCloudはMac App Storeで配布されるアプリケーションでのみ利用が許可されており、Coda2.5では利用できなくなります。ですがグレイトニュース。既存のユーザの皆様に代わりとなる機能を提供したく、Panic Syncという同期機能の開発に数ヶ月を費やしておりました。Panic Syncは私たちPanicが提供する、サイト設定等を各デバイス間で驚くほど簡単でセキュアに同期できる機能です。まずはCodaとDiet Codaで利用可能です。iCloudと同等以上の便利さを無償でご提供します。

• AppStore版の様に自動でアップデートされますか?


• 新しいMacを購入した際も簡単にインストールできますか?

Mac App Storeの最も優れた点が再セットアップの手軽さですが、直販版ではCoda 2.5を弊社の製品ページから手動でダウンロードいただく必要があります。ダウンロードはいつでも可能です。想像よりも簡単で、すばやく導入いただけると思います。

• 将来、サンドボックス化されたCodaがMac App Storeに復活する可能性はありますか?


• Coda 2.5の新機能は何ですか?いつリリースされますか?

シーー… まだ秘密ですが、私たちのTwitterアカウントでひっそりと順番に公開していきます。 そしてベータテストの終盤に差し掛かっています。



Posted at 5:34 pm No Comments

Wanted: Support Agents (2013)

As we head into 2014, a new opportunity to join the Panic team has arisen. Love Panic’s apps? Love problem solving? Love typing? And love making people feel good by helping?

We’ve been looking for you.

We are seeking front-line technical support agents to promptly answer emailed or tweeted inquiries about our entire product line.

Ideally, you’ve got:

  • Excellent problem-solving, and ability to “read between the lines” of customer emails
  • Substantial Mac OS X, iOS, and internet experience
  • Familiarity with FTP, SFTP, WebDAV and troubleshooting of computer networks
  • A professional, courteous, and personable email disposition
  • A pleasant personality, patience, and sense of humor

Bonus Points for:

  • Engineering / computer science experience
  • Familiarity with the Panic product line
  • Ability to enter zen-like state of high-speed e-mail answering

You must live in Portland, Oregon or be willing to relocate to Portland. It’s honestly a very nice place.

In addition to base salary, Panic offers:

  • Bi-annual profit-sharing bonuses
  • Annual retirement plan contributions
  • Full medical/vision/dental insurance
  • Flexible vacation policy
  • Reasonable, life-compatible hours
  • A very nice work environment, we think

Sound good? E-mail your resume to us and if we’re interested, we will send you additional details and possibly schedule an interview. UPDATE 2/2014: This position has been filled. Thanks!

While we won’t be able to write back to everyone, we really thank you for your interest!

Posted at 3:26 pm 9 Comments

From the desk of Noby
Portland, Oregon 97205

The Panic Office. 〜本社オフィスについて〜


厳密に言うとPanic IncのスタートはSteveのベッドルームでした。その後アパートのスペースを共有し始め、別のアパートに引っ越し、小さなオフィスに引っ越しました。そしてついに、数年前のことになりますが、スケルトン状態から内装工事を行った新しいオフィスをオープンさせました。これまで、この新しいオフィスについてインターネット上で紹介してきませんでした。いつまでも特別な気分でいたかったですし、写真ばかりの長い長いスクロールが大変なページも避けたく、何より訪れるゲストの皆さんを驚かせたかったのです。しかし時間も経ちましたし、すべての皆さんをランチにご招待するのも難しい。


The History. 〜歴史〜



The Planning. 〜計画〜



設計者であるChrisは見事に私たちのカギとなる3つのポイント: 厳粛過ぎないクールさ、バカバカし過ぎない楽しさ, そして貫禄ある雰囲気を実現してくれました。さらにLouis Kahnによるエール大学アートギャラリー(と、個人的にはEpcotセンターからも)インスピレーションを受け、私たちの夢はスケッチになり、レンダリングされていきました。







The Buildout. 〜締切〜






The Grand Opening. 〜オープニング〜














The Signage. 〜サイン〜



The Living Room. 〜リビング〜







The Planning of Something Interesting. 〜さらに、いくつかの計画〜








The Founders Room. 〜社長室〜






The New Carpet and The New Wall. 〜新しい壁とカーペット〜




The Rooftop Hills. 〜屋上庭園〜

屋上デッキは気分転換に新鮮な空気を吸える素晴らしい空間です。しかし天気が良い日はオフィス内に光が入り、眩し過ぎることがありました。その問題を解決するための唯一の方法: スーパーマリオ3スタイルの人工芝の丘を設置することにしました。





The Guests. 〜ゲスト〜



最後に、ボーナス: パノラマ.

工事中と完成後の 360° パノラマ写真がご覧いただけます!



Principal Architect: Chris Hodney, Holst Architecture
Interiors, Founders Room, Hills: Andee Hess, Osmose Design
General Contractor: R&H Construction
Founders Room Contractor: GRADA Inc.
Living Room Pattern: Pattern People
Ridiculous Oil Painting:
Panoramas: Matt D. Smith
Photo Credits: Chris Hodney, Buzz Andersen, Andee Hess, Instagram


Posted at 11:48 pm No Comments

Wanted: iOS / OS X Engineers (2013)

Panic Inc has a very special opportunity for nice, creative, super-talented engineers to join our amazing, award-winning-even development team.

Are you our experienced OS X / iOS engineer?

Our ideal candidate will:

  • Care deeply about both form and function
  • Debug, refine, and extend our existing apps
  • Contribute code and passion to new apps
  • Look for opportunities to improve our process
  • Play well with our existing team
  • Be excited and mostly eyeroll-free when tackling new challenges
  • Feel a strong sense of self-motivation
  • Love making things for people

We also prefer candidates who have shipped an app — no matter how small the app, or how small your part.

In addition to base salary, Panic offers:

  • Bi-annual profit sharing bonuses
  • Annual retirement plan contributions
  • Full medical/vision/dental insurance
  • Flexible vacation policy
  • Reasonable, life-compatible hours
  • A very nice work environment we think

Take note: this position is in Portland, OR. (We’ll pay for your move if you need to.)

Sound interesting? E-mail your resume to us (Update 8/5: thanks for your interest! We’ve reached our candidate limit!) and attach or link us to an app you’ve created or worked on. (Make sure to tell us what you did in that app, no matter how small.)

Also let us know if you’re more experienced with iOS or OS X development.

If we’d like to talk further, we will follow-up with additional details!

While we can’t write back to everyone, we thank you in advance for your interest.

Posted at 5:08 pm 30 Comments

From the desk of Cabel
Portland, Oregon 97205

The Panic Status Board: 2013年度版

すべてはここから始まりました: the status board we put on our Panic office wall in 2010

現在、その電子掲示板は Status Board と呼ばれる iPad アプリケーションとして生まれ変わりました。そして誰もが自身のデータをデスクで、または壁に設置された画面で美しく、クールに活用することができるようになりました。

アプリケーションのリリース後、私たちはオフィスの Status Board をリビルトしました!

Panic Status Board





Status Board - Revenueこれまで Panic では売上データについて特に意識してきませんでした。視覚化してみると売上高グラフパネルはとても魅惑的なことに気付きます。毎日、直販版の売上高を集計し、その後で App Store 版の売上高を AppFigures とそこで準備されている API を利用し集計しています。それぞれの集計データの合計をデータベースにダンプし、簡単な PHP スクリプトによって Status Board で利用可能な JSON データに変換されています。複雑に見えるかも知れませんが実装は約1日で完了しました。
Status Board - UnitsUnits(販売数)グラフパネルは我々の iOS ソフトウエアの経済状況を別の角度から明らかにし、興味深い姿を現します。我々の iOS アプリケーションの販売数は、Mac アプリケーションの販売数に匹敵しています。しかし売上グラフでは相当な開きがあります。私たちは iOS アプリケーションのシェアの改善に取り組み、新しいアイディアに挑戦します!グラフの自作方法についてはこちらの書類をご参照ください。
Status Board - Inboxこちらは Email パネルで、IMAP サーバを参照しています。セットアップはたった 3分で完了しました。日々、サポートに届くメールの状況を把握するのにとても役立っています。(サポートチームでは共通のヘルプ用アカウントがあり、それをスクリプトで個々のメンバーに分配し、集計しています。)
Status Board - Sentお客様への返信数はこのグラフパネルで表示されます。(競争や成績を争うためでなく、単に面白いので表示しています。)メールおよび Twitter での返信数を個々のメンバーごとに集計し、JSON で出力しています。
Status Board - Projectsこちらはプロジェクトリストで、サーバ上の HTML ファイルをパネルで表示しています。(表パネルの自作方法についてはこちらの書類をご参照ください)もちろんこれがすべてではなく、秘密のプロジェクトについては隠されています。プロジェクトリストは流動的で手動での更新が必要ですが、誰がどのプロジェクトに関わっているのかを知ることができ楽しいです。
Status Board - Sparkle
StatHat と連携し、使用されている OS X のバージョンをグラフで表示しています。
Status Board - Car2Goこれは car2go マップです。オフィス近くのどこに車が駐車されているかをひと目で確認できます。こちらは完全にカスタマイズされたオリジナルで、Do-It-Yourself パネルを利用しています。car2go API と Google マップを組み合わせ、加えて CSS アニメーションで実装されています。希望があれば将来、公開するかも知れません。(あなたの街では car2go が利用できますか?)
Status Board - TriMetこれも Do-It-Yourself パネルを使用したバスの時刻表です。ボードの前でミーティングに熱中しても終バスを逃す心配がありません!Logan の作成した TriMet panel も便利です。
もちろん最初から準備されている天気Twitter そして RSS パネルも使用しています。さらに、カンファレンスコールのために世界時計パネルで Portland、 Seattle そして San Francisco の時間をわざわざ表示しています。



その人や組織ごとのボードがあり、それは常に変化し続けています。実際、このブログの写真から更新されており、現在は GoSquared パネルが追加されています。みなさんの周りにあるデータをぜひ Status Board を通して見てみてください。新しい発見や議論が生まれ(それは良くもあり悪くもありますが!)時間を忘れてそのデータから様々なことを読み取ろうとしてしまうでしょう。



Posted at 3:50 pm No Comments

From the desk of Cabel
Portland, Oregon 97205

海外の Status Board マニア達!

私たちが Status Board をリリースしてから約1日が経ちました。驚くべきことに、既にたくさんの人々の手によって非常に多くのクールで役立つパネルが作成されています。



Dead Simple Greatness. クリックするだけで追加完了:

  • TubeTracker — an incredible one-click layout for people in the UK who rely on the tube (pictured above)
  • AAPL — simple module for Apple’s stock price (don’t follow too closely or you’ll go crazy)
  • LastFM — see your last-listened track
  • App Store Review Times —  a great way to see how busy Apple is
  • WWDC Alert — but really, how fast are tickets going to sell out this year
  • Bart Arrival Times — for those of you in San Francisco

New Native Sources. 情報の供給元によって Status Board の為に準備されました:

  • LeafPing — output your Envato sales data to Status Board. An example.
  • — track your podcast statistics on the big screen.
  • AppViz — this must-have app for App Store sales tracking can now output to Status Board
  • Don’t forget our amazing launch sources: StatHat (so useful!) and Hockey.

Sources/Conduits. 動作には少々のコーディングが必要となります:

  • Nest — a quick look at the temperatures on N
  • Server Statistics — keep an eye on your server loads
  • OmniFocus — a Python conduit to get your tasks up and running
  • Google Analytics — 7-day website stats
  • Jenkins — display running jenkins jobs in a table
  • TimeTiger — interestingly, a Windows app for time tracking
  • Mint Analytics  — a Pepper to create Status Board-compatible web stats
  • Mite — time tracking reports
  • Things — a way to get your Things to-do lists up and running
  • AppFigures 1 — a conduit for displaying your AppStore sales data
  • AppFigures 2 — another simple PHP conduit for AppStore sales data
  • BitBucket Issues — track open issues in Git/Mercurial hosted source

(And you can always add a new Do-It-Yourself widget and point it to always-running Mario.)

さらにファンタスティックな Web サービスが Status Board でネイティブに利用可能になるようです。詳しくは後日お知らせします!

また、オフィシャルではありませんが 以下のまとめサイトもご紹介します: Pinboard,

最後に、私たちは Status Board が実際に活躍している写真が大好きです!こちらはバイクメーカー Ducati のディーラー:


あなたのセットアップを @panic や @panicjapan を付けてツイートしたりメールでお知らせください!



Posted at 3:53 pm No Comments

From the desk of Cabel
Portland, Oregon 97205

すべてのデータを美しく。Status Board をご紹介します。

以前、私たちは自身のオフィスで使用するためのクールな 電光掲示板 – Status Board を作りました。


私たちは考えました: 美しいデータはすべての人に価値がある、と。

すぐに iPad アプリケーションの開発に取り掛かりました。ツイート数やメールの未読数をカウントしたり、ニュースフィードや天気を表示したりするための誰でも簡単に利用可能なモジュールを準備しました。業務用やプロ向けのモジュールとして、自由にデザインされたグラフや表をイメージ通りに表示するためのモジュールも準備しました。それらを信じられないほど簡単に使い始めることができます。そして常にあなたのデスクの上に置いておくことができます。一方で(有料のアドオンとして提供される)テレビ出力機能も準備しました。実際に壁に設置された大画面モニタにデータを表示することが可能です。

Status Board。それは Panic から生まれた、あなたのデータをディスプレイする為のまったく新しい iPad App です。


しかしこれはまだ第一歩: バージョン 1.0 です。どのようなモジュールやウィジェットが必要ですか?ぜひ聞かせてください!もしかすると不自然な動作に遭遇してしまうかも知れません。ぜひレポートをお願い致します!そしてどんな風にこのアプリケーションを活用するでしょうか?我々はあらゆるご意見に耳を傾け、クレイジーに開発を続けます!

(このプロジェクトでの Greg, Neven, Dave, そして Kenichi の素晴らしい働きに感謝します。)

このアプリケーションの完成を記念して、私たちのオフィスの壁に設置されている Status Board スクリーンもアップデートされました。それはまた別の機会にこのブログでお知らせします!

PS: 以前、私たちがなぜ Lightning – Digital AV アダプタによる外部出力時の不思議に気付いたのか、もうお分かりですよね?



Posted at 3:55 pm No Comments

From the desk of Cabel
Portland, Oregon 97205

Coda 2.0.8 beta 1

Coda 2.0.8 のベータテストにご協力ください!

安定性とパフォーマンスを改善し、Transmit 4.3 のお気に入りの読み込みに対応したバージョンを現在開発しています。もしお試しいただける場合は下記のリンクよりご入手ください。

Coda 2.0.8b1 (52 MB)

もし、気になる挙動が見つかりましたら私たちのバグトラッカーである Hive にログインしてレポートをお願いします!(開発担当が直接閲覧しますので、すべて英語でのご入力となります。)

Posted at 3:56 pm No Comments

Wanted: Office Manager & Non-Technical Support

Hello! Panic, Inc., a software developer for Mac, iPhone, and iPad is seeking an Office Manager at our 15-employee headquarters in Portland, OR. A rare, non-technical Panic job!

Candidate must already live in the Portland area, and be able to start immediately. Our office is located downtown, across from Powell’s Books. This is a full-time position.

Typical job duties include:

  • Being on-site weekdays from 9 AM – 6 PM to answer / screen phone calls, take messages, and receive deliveries and visitors
  • Answering general support emails, helping users get up and running, and forwarding technical questions when necessary
  • Handling voicemails and, somehow, faxes
  • Writing checks and paying bills immediately
  • Coordinating occasional social and corporate events such as company dinners, talks, conferences
  • Recording company meetings
  • @answering non-technical queries via Twitter
  • Responding to credit card disputes and refunds
  • Following up with purchase orders for payment (accounts receivable)
  • Providing price quotes for companies interested in volume purchases
  • Maintaining office calendar (who’s in/out, any upcoming special events, birthdays)
  • Scanning receipts and verifying purchase data
  • Keeping the dishwasher sane
  • Welcoming guests & making travel reservations
  • Unexpected Cabel Tasks and miscellaneous errands

Technical knowledge beyond email and word processing is a definite plus, as is a sense of humor and easy-going attitude. We’d love someone who has a fondness for our products and technology in general. But being organized and reliable is critical.

In addition to base salary, Panic offers:

  • Medical, dental, and vision coverage after 90 days
  • Bi-annual profit-sharing bonuses
  • SEP IRA retirement plan contributions after first year
  • Flexible vacation policy
  • Reasonable, life-compatible hours
  • Convenient central Downtown location
  • Free TriMet passes and bike storage
  • A very beautiful and inspiring office, we think

Candidates of every race, gender, nationality, age, and orientation are encouraged to apply.

Sound good? E-mail your resume to us, (UPDATE: This position has been filled. Thanks!) and tell us about yourself. If we’re interested, we will send you additional details and possibly schedule an interview. While we won’t be able to write back to everyone, we really thank you for your interest!

Posted at 11:37 am 5 Comments