Archive for the ‘Engineering’ Category

Developer Color Picker 1.5

Tuesday, August 31st, 2010

Picker ScreenshotWade here, which means it’s time to get all Cocoa-programmer-y.

If you follow me on Twitter, you may have noticed I released Developer Color Picker 1.5 a few weeks back. I thought I’d take a moment to make an official blog post to mark its release.

The big new feature in this version is the ability to modify colors within the color picker itself, instead of having to switch to a different mode first. I also added hsl(a) mode for CSS-style declarations.

Hopefully these improvements will make the Developer Color Picker even more useful in your development process.

1.5.4 – Fixed namespace issue with Panic applications
1.5.3 – HSB modes no longer copy RGB values.
1.5.3 – Fixed color mismatch when working in Photoshop. Tweaks and fixes for OS X 10.7.
1.5.2 – Color values now match the Apple color pickers. Can now tab between value fields.
1.5.1 – Changed generic HSB support to HSL since that’s what CSS actually uses. Doh.


Coda Notes: a Safari Extension

Monday, June 7th, 2010

So, just a few moments ago, Apple introduced Safari 5, the next major version of our favorite web browser. And with Safari 5? Safari Extensions, a new way for developers to add new functionality to Safari.

And, also a few moments ago, we have our very first crack at a Safari extension! What is it?

Well, the pitch goes something like this: we do a pretty good job making life easier for people who hand-code websites using Coda, our all-in-one web development environment. But is there anything we can do to make life better for the client? The person who’s paying the bills, or the marketing person, or the guy or girl who’s likely to call you and say, “Hey, can you make that one thing bigger, move that one thing and do that thing? By tomorrow?” Nobody knows what that means. And that’s something we thought we could improve.

Introducing Coda Notes, our Safari Extension for website annotation, and a fun little project.

Coda Notes

When you install Coda Notes, you’ll get a new button in your toolbar. Click it to see all our annotation tools, built right into Safari. Draw some notes on your favorite website. Communicate changes, ideas, concepts, or problems. Then, when you’re done, hit the Send Notes button and the whole page flips over as a postcard.

Enter your comments, e-mail addresses, hit the nice looking “Send Notes” button, and that’s it! The developer gets an e-mail with your screenshot and notes, instantly. In short, with Coda Notes, you can communicate in seconds what would have been much harder to communicate before, all without ever leaving Safari.

And let’s not forget cool thing #2: we literally added a new feature to Safari. In a standards-based, clean way. This, my friends, is awesome.

(Tech Note: The Coda Notes extension is built entirely in JavaScript, HTML, and CSS; the extension bar is basically an HTML file, and the page-flip effect is accomplished using a CSS transform. We draw on a transparent canvas element injected over the target page. Live text editing is done by setting the contentEditable attribute on the body of the page, thus turning Safari into an editor, similar to how Apple Mail works!)

When will this be available?

Update: Coda Notes is now available for download!

We’re feeling it out. It’s certainly “quick and dirty” in its current form, and Coda Notes was a bit of an experiment for us — made in only 4 days! But when Safari Extensions are more available to the public, it’s likely you’ll see Coda Notes too. Keep an eye on this blog and/or follow us on Twitter!

Thanks to Apple for letting us play with Safari Extensions, and thanks to Neven and Garrett for such great quick work on this project. If you have ideas for Coda Notes, let us know!

An Apple //e, an iPad, and Jed

Wednesday, May 12th, 2010

We get e-mails:

From: Stewart Smith / Stewdio <stewart@xxx.org>
Subject: panic office photos
Date: April 30, 2010 7:44:43 AM PDT

I just saw some photos of your office and couldn’t help but notice an Apple //e. I have an odd request. Back in 2005 I created a music video for the band Grandaddy by programming a text animation on an old Apple ][+. You can see the video here.

So for my request: would you do me the honor of running the source code on your old Apple //e and sending a few pictures? (Or even posting them to your Flickr?)

I imagine you could load the code onto the old machine by using my “cassette tape” source code file. The source code package is here.

Sounded like fun to us. Just one problem, though: we knew we had to load Stewart’s “cassette tape” source into the Apple //e’s audio input. But we didn’t exactly have a cassette deck lying around.

What did we have? An iPad.

It’s an obvious solution in retrospect, but there is something very unreal and amazing about tapping a button on a multi-touch screen and watching an Apple //e fill up with data — to quote Andy Baio, “that’s like WALL-E connecting to EVE.”

ShrinkIt 1.1

Tuesday, February 16th, 2010

Update: ShrinkIt 1.3 is now available over here.

Is your application larger than necessary because of needless data stored in image resources? What is making your PDFs four times the size they ought to be? More on this shocking discovery at 11!

(It’s 11.) Being a responsible and forward-thinking developer, you’re probably good and ready for the day Mac OS X supports resolution independence – lol – so you use multilayer TIFFs and PDFs instead of flat bitmap images whenever possible.

Try this: get the file size of one of those Adobe Illustrator®-produced PDFs. Now open it in Preview and resave it. Notice anything? Once a PDF has gone though Apple’s PDF processing, it’s way, way smaller.

We sure noticed this, and it bugged us. A lot. What was all this extra crud? Will started digging into the files and brother, you won’t believe what he found. Swatches, patterns, preview bitmaps, all sort of metadata; even though we’d specifically turned off all the extra options when saving from Illustrator: Preserve Illustrator Editing Capabilities, Embed Page Thumbnails, etc.

We could have re-saved all our PDFs in Preview, but why not make it totally batch-y? Thanks to Will, we present:

ShrinkIt

ShrinkIt

Update: ShrinkIt 1.3 is now available over here.

ShrinkIt is a simple, small, Panic-internal tool (for Mac OS X Snow Leopard) that will automate the process of stripping needless metadata from PDFs by re-saving them using Apple’s PDF processor. For app resources and icons that aren’t using high-end Illustrator features, this should be lossless — Apple’s PDF code is not compressing anything, just removing cruft. Simply drop a bunch of files (not folders) onto it — such as the contents of your app’s Resources folder — to have it find the PDFs and do its magic. The original files will be renamed with the prefix “_org_” for backup safety. That’s it!

We’ve seen it shave 4 megabytes off an app bundle. Hopefully it’ll shave you as well. Oo-er.

Update: ShrinkIt is intended for simple vector resource PDF’s that have more Illustrator cruft than vector data. It may not work well for complex bitmap-heavy or press-ready PDF’s.

Mac OS X Stats: 12/2009

Wednesday, December 23rd, 2009

When some of our apps check for updates, they send along the Mac OS X version number, helpful in case we need to send a message to a specific set of OS users. The additional bonus of this (fully anonymous) data is that is gives us a very good look at where our users are, and lets us plan accordingly.

I took the last week’s worth of data — including repeat launches, of course, but mathematically I think it all evens out, which is to say I’m terrible at math and have no idea if that’s true — and made two charts.

Coda

Coda users are famously cutting-edge, and this chart reflects it.

The Leopard/Snow Leopard dominance is strong, and it seems like Coda users are pretty adamant about running the latest and greatest. This makes sense for web developers, who, for the most part, really should be using the latest Safari.

But one chart, and one app, doesn’t tell the full story…


Transmit

With a higher install base than Coda, and a much broader set of users — from web developers, to printing presses, to press photographers, to who knows what — the Transmit results are a bit different.

Hello, legacy!

17% still on 10.4. As most of our future software development is focused on Leopard or above, this means we’ll have to keep our legacy apps around…

As Tim reminds me, 10.4 is the last OS that Classic still runs under, so is it possible that these 10.4 users are dependent on some extremely old piece of software?

If you’re still using 10.4 or 10.5, what is your primary reason for holding back on an upgrade?

(It’s also interesting to compare these numbers with The Omni Group. So similar!)