Friday, May 16, 2008
Friday, May 16, 2008  0 Comments     

Have you ever tried taking a screenshot of a DVD using Apple's built-in screenshot software? You'll get this dialog:


That's not very helpful, is it? Well, take this MPAA. In Leopard, you'll need to turn your Scripts menu on. To do this launch the AppleScript Utility, and choose to show the menu in the Menubar. Cool. Now you just need the scripts to take screenshots.

Navigate to ~/Library/Scripts

You'll see a bunch of folder there already containing scripts, ready for your use. Cool. Now just add one and call it something like "~Screenshots" or something like that (the tilde is so that it will appear at the top of your Scripts Menu list). We'll make four files in this folder:
  1. Mouse Capture Clipboard
  2. Mouse Capture Desktop
  3. Full Capture Clipboard
  4. Full Capture Desktop
Why four files? Well, I personally enjoy some control while taking screen shots. Sometimes I like to crop right away before taking the shot, sometimes I want the whole screen at once. And you can see sometimes I don't care about an actual file... preferring to paste right into Photoshop for use there.

Now comes the easy part... coding the files. 

There are three parameters you can use in the Unix terminal for screenshots...
-i (interactive mode)
-o (in Window capture mode, ignore drop shadows)
-c (send to Clipboard)

Now, lets' write the first script ("Mouse Capture Clipboard.scpt"):

Open up Script Editor.app (Applications/AppleScript/Script Editor) and all you need is this line:

do shell script "screencapture -ioc"

Save that in the "~Screenshots" folder you made earlier. All this does is call screencapture with the arguments of interactive, no shadows, and send to the clipboard. 

Note that when you're in interactive mode (mouse cursor), you can press the SPACEBAR to invoke window capture mode. The "o" in the above line tells the capture application to ignore window shadowing. You can remove this if you actually like the shadows being part of the capture.

See how easy that was? AND it allows screenshots of the DVD Player. 

Now lets create the file "Mouse Capture Desktop.scpt" to instead save the capture to the desktop. 

do shell script "screencapture -io ~/Desktop/screenshot.png"

Notice that this is missing the "c" in the arguments because if the utility encounters that, it will only send to the Clipboard and ignore the file. So the above script sends the capture to the desktop, named "screenshot.png" - note that if there is a file by that name already, it will be over-written.

Easy. Now you can see what to do for the last two files... you merely don't use the "i" in the arguments so that by default you're taking the entire screen.

So with the above, I was able to grab this ;)

  0 Comments     

The Apple Store on Boylston Street looks pretty freaking amazing. Three stories of Kubrick goodness.

I was unable to attend the opening as I figured there was simply no way of getting a free t-shirt because the line must have been enormous. Since it's located across from the Prudential Center (loaded with tons of people), it's proximity to Newbury Street, etc. my hunch was right. 

Here are two images of the store. I'll go sometime this summer, being that I have the Natick Collection store about 4 miles from my house ;)



Wednesday, May 14, 2008
Wednesday, May 14, 2008  0 Comments     

I have given up trying to get root access to my (gs) media temple account. I ssh'd in, and when I used my username and password for my account, I kept being asked to enter a password.

Well... seems like it didn't like my account password (unless I was using my FTP one (remembering this as I type this) and not my main account pw... I need to check that).

Anyway, for now it seems like I can use Google Code for stuff I don't mind sharing, Beanstalk and Assembla for my private projects. Assembla has something like 200MB of free storage, which is plenty enough for me. Beanstalk doesn't have very much for the free account.

Maybe I'll get media temple rolling properly... working on my own hosted grid server (even though shared) seems like better voodoo to me in the end. For the short term, I'll take my stuff on a local server and just slap it on the internets someplace.
  0 Comments     

I am happy to report that the Pittsburgh Penguins were listening to some Megadeth in their locker room before Game 3 in Philadelphia -- which is very cool in my book. And it wasn't just one song but several of them. Nice work boys.
Tuesday, May 13, 2008
Tuesday, May 13, 2008  0 Comments     

I was welcomed by a news snippet about Apple and Emmis Interactive. Here is the first paragraph of the post at iLounge:

Apple and Emmis Interactive have announced a licensing agreement allowing Emmis to market its custom Storefront technology to other radio stations and media companies. Used exclusively to date by Emmis radio stations, the Storefront technology allows stations to build storefronts with a look and feel consistent with their product, while enabling listeners to easily find and purchase songs they hear on the air through the iTunes Store. Since its launch on Emmis Radio sites in 2006, the Storefront has been among the top five affiliates directing traffic to the iTunes Store. For examples, see the Storefronts of Power 106, Loop 97.9, and 105.7 The Point.

If you visit any of those storefronts, guess what? That's right. It's Flash... and it looks like its the same front-end for each station (makes sense since Emmis is serving it all up).

Now I suppose there are APIs on the back-end that will become available to other media companies and stations. That's a pretty nice idea all around. Or perhaps they will limit developer access to the back-end but offer mainly branding choices.

When making their choice, Emmis deployed their application using Flash as the RIA mechanism. Well done chaps.
Saturday, May 10, 2008
Saturday, May 10, 2008  1 Comments     

The message, I just had an hour long message and now I feel like I can code up a storm that I think I'm just gonna relax and enjoy ____. listen

Powered by Jott
  3 Comments     

I found some pretty old video footage (original 320x240 @12fps -- 295.3MB) that I shot while attending FlashForward 2001 in New York City. It weighs in at over 2 hours! I just hope this streams okay without having to download the whole thing first. If you have to download the whole thing, then you're a die-hard Flash fan with some deep roots :)

Looking back at the video I see that there were a lot of things that still hold up remarkably well in this day and age. A lot of really good work... most of the video is of the film festival and award presentations.

There is some good stuff in there. I could have presented this using Flash video, but I had an old bit of deConcept code at the ready, so I'm riding the QuickTime bull at the moment. Enjoy the good old days.

[Since I am posting this pretty late, I hope that this isn't pushed too deep into aggregator reports... lest I have to rely solely on casual visits]


Friday, May 9, 2008
Friday, May 9, 2008  0 Comments     

Hi,
I'm just testing Jott right now as I walk across the parking lot to my car hoping that this is fairly accurate. listen

Powered by Jott
  0 Comments     

Rediscovering some lost youth today. Found an album I forgot that I had, listening to it now and I am smiling.

While I attended prep school, I used to enjoy a lot of night ski listening to this album on one of those Walkman things (anyone even remember those?) I forgot how great an album this is. Sublime might be a decent term to describe it.

There is so much ambient atmosphere on these tracks, the recording is nearly perfect, and each track is played magnificently. I think it's the subtle ambience on this release that makes it outstanding for me. 

I used to ski with a flask of Jack Daniel's tucked away in my jacket -- I am sure that didn't hurt either.

Since my prep school is all male (think Dead Poet's Society), our nights to ski meant the all-girl prep school skied the same nights. Most of them were partly digging Simple Minds back then too, so it was a nice ice-breaker when needed. And the fact that they didn't see males for most of the week was an added bonus.

Excellent album ;)
Thursday, May 8, 2008
Thursday, May 8, 2008  0 Comments     

[via the gaping chasm that is my stockpile of mostly un-read emails]:

O'Reilly is hosting another fun, free Ignite Boston event!

Ignite Boston is happening on Thursday, May 29, from 6 to 10pm at Tommy Doyle's in Harvard Square, Cambridge (www.tommydoyles.com). We're heading back to the venue of our first Ignite, but we're using two floors so we can accommodate more folks.

The evening's keynote speakers are:
  • Jonathan Zdziarski, iPhone maven and author of "iPhone Open Application Development" (This has me more excited than anything else right now)
  • John Viega, security guru and author of many O'Reilly titles, including the upcoming "Beautiful Security"
We're now accepting proposals for lightning talks, so if you want to speak for five minutes about a cool, new, or exciting topic, submit your idea here:

http://ignitenight.thirdeye.railsplayground.net/events/form/ignite_boston_3

Presentation Guidelines:
  • Be no longer than 5 minutes.
  • Be on an innovative topic (no sales pitches or launches, please!).
  • Be viewable on a PC with standard AV equipment.
Want to come to the event? RSVP at IgniteBoston at oreilly dot com for the chance to win $300 worth of O'Reilly books of your choosing. You must be present to win.

Stay in the loop by visiting our blog for updates, speaker lists, and other info:

http://www.oreillynet.com/ignite/blog/

See you there!

And while you're waiting for Ignite...our friends at BarCampBoston are running another BarCamp on May 17th and 18th. BarCamp is a free unConference where you can participate in discussions, demo your projects, or join into another cooperative event.

Find out more and register at http://www.barcampboston.org/

Labels: , , ,

  0 Comments     

While I normally plug Apple tech pretty hard and consistently here, I was just introduced to the Belkin N1 Vision wireless router. And it's a beauty.

The N1 Vision wireless router offers an easy way for you to view your network's broadband speed, computer bandwidth usage, and the status of your connected devices - all from an easy-to-read display.

"Packaged in a new sleek and sophisticated design, N1 Vision offers the best in networking performance with its wireless 802.11n* 3x3 radio design and wired gigabit ports. 

The N1 Vision wireless router continues Belkin's commitment in providing the best user experience in the home market through its Plug-and-Play "CD-less" installation and simple network security setup."

This this is pretty much a geek's dream with the display, showing connected devices, bandwidth, bandwidth history, etc. It's so nice they put a clock on it in the hopes you'd place it out in the open.

I don't know about you, but even with my Airport Extremes and Airport Expresses, I have them basically hidden away. I mean, who wants to look at a router, right? With this Belkin one, you may just change your thinking on that one.

Although antennas are really never very sexy™. That is one thing Apple technology will always have over this approach... even when you attach a third-party antenna to an Airport Extreme, it's still looks pretty decent (I forget the brand I am using, but it's basically an elegant white spire, right angle on one side and a steep slope on the other). 
  7 Comments     

I've been hearing a lot of buzz lately around the Mac OS X editor TextMate. On the PC, I'm in love with FlashDevelop and I've really gotten used to the way that it works.

So I now have a Mac and PC box at my desk. So I thought I would give TextMate a go instead of the usual FlexBuilder 3 route, just to see if I'd like it enough to go with while coding on the Mac. Because unless FlashDevelop is ported, I'm going to sorely miss it while doing any coding on the Mac.

Well, if you're in Project mode, TextMate rocks pretty good (like using Projects in FlashDevelop... although FD has way more features than TM does so far as I can tell). With a little hacking about you can get CTRL-ENTER to compile. 

If you have the standard ActionScript bundle AND the AS3 bundle, I've found the shortcut for Run and Build don't do a whole lot. I should read up some more about that I think.

Three things that makes me pause though when considering using TM instead of FB compared to FD:
  • No code completion. When I'm typing up my import statements, I don't get hinting anywhere. If I define classes, etc. I don't have access to the methods within them. This is where FlashDevelop really shines. It makes my coding take a lot less time, because I don't need to flip between classes or revert to my own documentation to remember methods and argument types. It just feels a lot more natural. You're not fighting the code, the editor is serving up a lot of help in weeding through it all.
  • When I define my private vars in my class, FD automatically creates the import statements for me. That's a freaking Godsend to me. Again, it just speeds up the mundane crap and lets me worry about getting to the meat of the code.
  • Find in TM sucks. It's the standard way of doing things, but the Find in FD (a port of the QuickFind that Alessandro Crugnola authored for us in SE|PY) rocks. It's like the FireFox find... just type into the field and it can either highlight all instances, or simply take you to the first match down from your caret position. You can then just F2 through them all. SUPER handy. In TM I have to open that stupid dialog box, find once, and THEN I can F2 through the matches. Every time I do this, the dialog remains open because I didn't want to click it closed. It's annoying, and I use Find all the time while coding.
I could possibly be missing out on some information that's gleaned from some open source thing, or I am unaware of some types of bundles or something else, but I'd love to see TM get as close to  FD as possible. FlexBuilder is sweet on the Mac, no question. I just feel like it's a bit heavy for straight coding.

I like TextMate a lot so far. I used to use TextWrangler, SubEthaEdit, etc. on the Mac but I think I'll stick with TextMate for a while and see if I can find out some more shortcuts, tricks, etc. to really get rolling with it. It took me a little while using FlashDevelop on the PC before I was completely smitten with it.

Maybe I just need a few more dates with TextMate before making a decision between it and FlexBuilder.

Or I hear FlashDevelop has been ported to a Universal Binary ;)
Wednesday, May 7, 2008
Wednesday, May 7, 2008  0 Comments     



Call me a little crazy, but I have a 9.27 GB AVI file that was rendered out in AfterEffects at 2x 720p resolution. In the hopes of bringing the size down by 0.5 and getting some of the banding issues to go away (it's all really subtle smooth animated stuff).



Firing up QuickTime Pro, exporting to H.264 for some playback in Flash I hope... the resizing is being done in QT (not by sizing the player window but via Export controls). Crossing my fingers... this is actually encoding pretty freaking quickly.

  0 Comments     

Everyone uses Flickr for various things, but I decided to whip up a little AS3 image gallery application myself. I have total control over it, and I get to work a little more in AS3 -- so that's good. Right now it's just a basic gallery system... nothing too spectacular.

While the system is nowhere near feature complete, it is running and working.

The default gallery is from Erik Natzke's work which I found at jot.eriknatzke.com by mistake. Stunning work. I guess Erik takes photographic images and deforms them in various ways with ActionScript to achieve some pretty amazing stuff. 

Anyway, you can take a peek at what's going on in the Gallery section if you so feel inclined. 
  0 Comments     

This wasn't very obvious to me at first, so I report my working findings here for the benefit of perhaps someone out there. 

I have a gallery application that uses two instances of a Loader. Instead of creating/destroying the instances, I re-use the instances... but for me to make swapping galleries (full swap), I needed a way to clear out the images in the Loader instances... essentially creating a reset method in my gallery class. 

Well... there isn't an obvious clear() anywhere, and when you inspect the contents of a Loader instance (that has been loaded successfully), you'll notice it's BitmapData. Okay... so we need a way of throwing out that type of data. We have the dispose() method.

However, depending on where one might be in the cycling of images (fading), you might have a Loader that doesn't presently contain BitmapData. This might be when you're only one image into the whole cycle of images... trying to clear out both at once in the reset would throw an error.

The code below reflects usage that works for me right now. 


var li = child2.loader.contentLoaderInfo;
if( child2.loader.content != null )
{
    if(li.childAllowsParent && li.content is Bitmap)
    {
        (li.content as Bitmap).bitmapData.dispose();
    }
}

var li2 = child1.loader.contentLoaderInfo;
if( child1.loader.content != null )
{
    if(li2.childAllowsParent && li2.content is Bitmap)
    {
        (li2.content as Bitmap).bitmapData.dispose(); 
    }
}



So this checks the contents of each of the loaders and then clears the contents out... then I am free to load up the new XML and start my timer, etc. It works... before I was getting mucked up cycling after a gallery switch.

Labels: ,

Monday, May 5, 2008
Monday, May 5, 2008  0 Comments     

The Adobe XML News Aggregator had been down for some time, and we were informed about the backend upgrades, etc. to better serve it. She's live now at a new url (enjoy the old url redirect for how long I don't know)... http://feeds.adobe.com/
Sunday, May 4, 2008
Sunday, May 4, 2008  1 Comments     

Let's say someone is playing some piece of music (say a really long track), and as a developer you want to convey the present time of total time to them. Which is better:

0:09:36 / 1:30:11

or

9:36 / 1:30:11

And change the present time marker to add a digit when needed? You see, then the time display actually shifts in position because of an added digit, but maybe that's the most inviting way of displaying it?
Friday, May 2, 2008
Friday, May 2, 2008  1 Comments     

Today I was working on specifications for UI elements which requires me to use Illustrator. No worries. As I am working on a new file, all of the sudden my ability to see what text I had selected went away.

You know, when you select text and it turns white and the selection background goes black? Yes, that... well suddenly I had no way of seeing which parts of various texts I had selected. I wondered if I mistakenly did something to change some bizarre preference or not. Nope.

I restarted Illustrator, opened up my file, same problem. OS-level text selection was fine, other CS3 applications showed text selections... hmmm. I restarted OS X. Same problem.

Just before I was going to re-install Illustrator I decided to try a new document. Text selection worked! I copied the elements from my damaged (somehow) file into the new document... and selection worked still. I don't know what happened but something in that one file prevented text selection to be visible.

So that was my adventure in Illustrator for the day.
  3 Comments     

Saffron UML continues to elude the general public's news gathering radar, but there seems to be another AIR UML project that is currently in the works.

It's currently titled AIR UML tool, and you can read up on the project at the host site.
Thursday, May 1, 2008
Thursday, May 1, 2008  0 Comments     

Interesting development tonight. Came home, turned the car off & the panel for the radio and lights around it won't go out. The radio isn't on, there is no display, but that red glow is there.

Hmm. I've heard the radio has a fuse behind it that can be pulled and placed back in to reset the unit (there is power there so it's not a blown fuse). But I'm not spending the time to do that -- way too much work for something that may or may not work.

I just disconnected the battery and am waiting for about 5 minutes to pass before I hook it back up. Supposedly this is supposed to help. I may need to reset a few things, I'm not sure yet.

I just don't want to wake up in the morning to a car with a depleted battery because those lights were on all evening. If I have to, I suppose I could just disconnect the battery until I get this hunk of junk serviced.

Update
Well that worked.
  1 Comments     

I finally came around and have been using Quicksilver for a while now. Wow. It completely changes the way I use my Mac, it's so freaking great. It's way faster than Spotlight for many things, and I've only scratched the surface in regards to performing actions on QS results. Wow. 
  0 Comments     

I received an announcement about (Craig Jamieson) digiguru's latest website, version 8.

I checked it out, and while it's clean and pretty easy to use, I wanted to see how she resized and I was pleasantly surprised. And then wondered to myself beyond sizing to larger sizes (my monitor is a monster), was the reverse a good idea?

Here are two images of the site I'll reference:

digi1
digi2

You'll notice that the site lets the viewer know when they have resized their browser to a size that is out of range for what the author has in mind. Now that's quite useful information, but I'm not sure that I see a whole lot in the site that shouldn't work when sized down to a reasonable (but out of range) size. 

Is this some needless technology to make the user say to themselves, "Wow, this site knows how large it is, that's cool." I don't want to pick on this site, because I think it's very well done, and I might not see the ramifications of sizing things too small (yet). 

I do like interfaces that are liquid and are smart enough to re-layout the contents in response to changes in their environment. I think it's a very nice touch, way beyond providing scrollbars and forcing a user to work for your content. It means as a designer/developer you care about their experience beyond the normal.

It's always something to consider. I'm not quite sure I'd warn a viewer in a possible needless situation here.
  0 Comments     

Okay, this is excellent news, but how deep do the changes in access to the technology run?

I don’t know if this porting layer API will offer a deep enough access point to allow hardware acceleration of the rendering of Flash visual elements... which I believe is truly key in embedded situations. When you're talking devices, you're talking about limited processing power.

Allowing for HW acceleration will allow devices more successfully use the SWF format in rendering. Less CPU usage, visuals powered sep. from the code, etc.



gotoAndStop( topOfPage );