Periscope (Mac Application)

Periscope Icon

Periscope is the next generation of Web cam software that lets you use your iSight to capture activity in front of your Mac’s camera and then save or share that image simply and automatically.

Within seconds, you can configure Periscope to monitor a room for motion, sound or on a timer. Periscope will send real-time images to your e-mail, .Mac Web page, or FTP site, and can upload to Flickr!

Put it this way, the next time your mini-fridge is raided by a roommate pleading innocence… You got the dirt.
‘scope your home when you’re out of town.
‘scope for intruders with motion detection.
‘scope the kids when you’re at the office.
‘scope a time-lapse movie of your workday.
‘scope for security.
‘scope for fun!

Motion Sense Screenshot

  • Product description: Webcam software, with motion detection and many ways to share resulting pictures.
  • Release Date: November 2009
  • Product history/genesis: The project had originally been built with contract labor, which created a product that the owners were severely unhappy with. I was brought in as part of the team to clean it up and fill in the gaps starting with the 1.5 release.
  • Team: Self, two other Coders, Producer, Artist, QA team.
  • Core Technologies: Objective C in Cocoa for Mac OS X
  • Most proud of: Remade the motion detection system to take advantage of GPU acceleration. Unfortunately most hardware was not yet supporting general GPU acceleration, so it still remained slow to most users.
  • Responsibilities: Bugfixing, new features, optimization

Promo Screenshot
Kitty Screenshot

This is one of the few “non-game” applications I’ve been part of in my career, the other being the FaxSTF 5.0 browser. While not a game, I found the experience just as rewarding as the games I had built.

The user interface made some use of Key Value Coding originally, I expanded its use to include most of the UI.

The original code was uncommented and many of variable and method names did not make sense for the tasks they were doing. During the project this was incrementally improved until the final version was fairly well documented.

This was my first experience with Core Animation and later I would recreate its block animation setup paradigm in theComplex for handling 2d UI animations.

And older (but more exciting!) portfolio page for this app.

kinda green

It’s been odd these past couple days for me to be so dang “glass half full”. Tho I think it’s related to a) forementioned great project; b) wifey and I finally reached 100% on Lego Star Wars (those who play know that isn’t easy); and c) completing an independant game called Iji.

To those who play, Iji is a classic side scrolling platformer with great writing, great music, and a main character you can believe. Tho what really got my bacon was the ending stats screen which said I killed a huge number of enemy characters I didn’t need to. This is after an entire storyline devoted to the idea of the insanity of having to kill just to get your voice heard. It really hit me how greatful I am knowing I don’t have to make decisions of that order of magnitude in my real life.

While I’d like to say my kill ratio was just because I’ve played games so long, the fact that I can look back and see many places I could have just run makes me think I should not be playing such violent games.

This week’s buzzword: Augmented Reality

Since iPhone 3gs came out with it’s compass everyone has been talking about augmented reality. So we jumped on the bandwagon. In two weeks I’ve made a full on game for augmented reality on the iPhone complete with skin animated butterflys, full UI, and fairies with fast beating wings. And it’s fun, too!

We can show as many butterflies as we want- it shares the animation results and only processes it once a frame. I really like the engine I wrote over this last couple years. It’s sad that the other projects it’s been in haven’t been very commercially sucessful. This project is different- it’s not being held back anymore. Now that it reads Interface Builder files directly it doesn’t need a secondary user interface engine.

This time around we finally have an honest to goodness technical artist. Every 3d house must have one, and we have a great guy!

Dunno when the publisher will release it but I’m excited about how fast and well we made it!

I had *no* idea.

From Slashdot (http://entertainment.slashdot.org/article.pl?sid=09/05/25/132203)…

“Today, as every May 25th, geeks all over the world celebrate Towel Day and carry a towel in honor of Douglas Adams. The popular author of The Hitchhiker’s Guide to the Galaxy died in 2001 at the age of 49, but his work lives on. According to the book, a towel is about the most massively useful thing an interstellar hitchhiker can have. Hence its symbolic role in this celebration. This year, for the first time as far as we know, Towel Day is being supported by the British publisher of Adams’ books, who organizes a photo competition.”

Why windows cross development can be a pain.

Debug image crashes app, have to compact them on mac side.

Can’t switch to window mode – no button. Compact again on mac side.

Network disconnects halfway into session. Have to reboot.

Windows UAC locks up when switching back to window mode.

Took two minutes to fix, once I could actually reach the problem. Total time: two hours.