Thursday, December 17, 2009

On The Mark 1.1 for the holidays

Knowing good and well that all our holiday video and images will fast out-pace out ability to track them, I've posted a small update to On The Mark. Version 1.1 sports a few new goodies aimed at making score tracking and uploading faster. Video and images can be fast-forwarded/rewound in 10 second or 10 image increments, respectively, for quicker navigation. This is key if you're, say, scoring every 10th image, or have carpel tunnel from mouse clicking. Video viewing performance has also been improved on machines with lower-powered graphics by cutting down on user-interface updates.

For the impatient, I have good news: the new double-headed arrows are for faster-forward/rewind than the single-headed arrows.

If you're wondering where the timer went, fear not. It turns out that timer updates—both the slider and even the number label—were causing playback to stutter on slower machines (e.g. my laptop) playing heavy-duty videos (e.g. the Windows 7 sample nature scene). Now the timer updates are postponed until you hover your mouse over them, at which point they'll magically appear and become mobile.

One interface behavior that's been plaguing me is how the program becomes completely unresponsive during login and data import/export. What's happening is that On The Mark is waiting for web transactions to complete, sometimes taking on the order of minutes while uploading many score marks, and all status updates are deferred until the transaction is done. Fortunately, there's a way around this in the form of asynchronous operations via JavaTaskBase for JavaFX. It involves no fewer than three separate classes for each operation, but at least it gets the job done. Now once you've marked your media, you can upload them through a much more responsive data import/export interface—no more lock-down during long operations over the web.

It took awhile to figure out how to get it to show you that it would take awhile, but now at least we're not left hanging.

So fill your free download stockings and mark your holiday videos with On The Mark. Merry Christmas!

Sunday, November 29, 2009

Game prediction

The tXtFL prediction for this week's Niners game was way off target:

I don't mind that at all.

Friday, October 30, 2009


He was not that Light, but he came to testify about the Light. (John 1:8)

I've been reading an allegorical recreation of Dietrich Bonhoeffer in The River and the Road, where Dietrich encourages and exhorts an Ernest before he embarks on a dark journey. What was that journey, and why did he have to go through it? Why did God send Ernest through that journey of darkness and dampness?

I know, Ernest is a fictional character, but Dietrich was not. Sometimes I wonder what motivated such a man to go back to Nazi Germany to keep preaching when he could have stayed in England, or to write on every scrap of paper his thoughts only to be scrapped himself in a concentration camp moments before the war's end.

I do not claim to know God's purpose or reasoning, but Dietrich knew in himself something that I only hope to know, saw something so clearly that I must strain to see. He saw the Light peering through the tunnel, he saw past the dark journey and into the hidden hope beyond. And he saw this Light precisely because he knew that he is not the Light, but that there is another Light that came to fetch him, and now through him to fetch all those around him to that Light. In his writings and his testimony we see the embers of that Light still glowing strong, still burning bright.

Tuesday, September 15, 2009

Snow Leopard!

Installation is a challenging 2 steps. At $25, that's $12.50 per step, or not much more than a bowl of champon at Sakura.

1) Insert disc.
2) Customize.

I hope that's not 2 much!

Wednesday, September 09, 2009

World's Worst Elevators

The world's worst elevators received accolades in the form of Occupation Safety and Health Standards Board meetings. This was to honor the elevators for refusing input upon button press, breaking down as a regularity, and making elevator rides the adventure they weren't supposed to be. Notices were posted informing all affected employees that they have the right to party hearing regarding the permanent variances inflicted by the elevators.

Evidently affected employees had another idea in mind. And when these elevators get their just desert, who wouldn't want their just dessert?

Thursday, September 03, 2009

Another reason to get the iPhone

KatamariPhone! But I'm just getting Snow Leopard for now...

JavaFX buys me Snow Leopard?

I was very happy to learn that the JavaFX Coding Challenge awarded On The Mark an honorable mention. At $25, it's not quite the $25,000 first prize, but it does have its perks. Namely, that $25 is none other than the price of the latest incarnation of Mac OS X: Snow Leopard.

"But wait," you say, "isn't it $29?" Ahh, yes, but at Amazon, it can be had for the same price as the JavaFX honorable mention! Sun and Amazon must have teamed up on that one, right??

Monday, August 24, 2009

Updating Dell BIOS when running Linux

Updating the system BIOS is always a nervous task, but updating when running Linux can be even more daunting. Not to fear. Linux has come a long way, Dell has come a long way, and when the BIOS has come a long way in revision updates, it's time to flash that BIOS.

Updating the BIOS from Windows has been as easy as downloading the latest BIOS revision, double-clicking the executable, and letting the installer do its work. In Linux, the task requires booting from a USB key and then running the BIOS executable from a DOS environment. It sounds simple enough, but there are a few tricks involved, documented here before I forget what I've just learned.

Download the latest BIOS

Dell has all the drivers and downloads posted in the Support section of its website, accessible by computer service tag or model number.

Create a bootable USB stick

I've never booted from a USB stick, so here was my chance. A quick search brought me to this Bay Wolf article, which gives a concise overview with links on which files to use to create such a bootable USB drive. Note that while it might be tempting to add the additional Win98 drivers to get CD-ROM access, etc, this temptation must be mitigated. Otherwise, the BIOS installer will conk out with the error, "Can not run in protected environment." Deleting these files while leaving the hidden system files on the USB stick intact creates the proper environment for flash updating. Remember to also copy the BIOS executable onto this drive.

Boot from a USB stick

When I reached to plug in my bootable USB stick, I realized that I had 8+ options for where to plug in the drive. Which one should I choose? I tried a port but got an error saying that no valid drive could be found. At first I thought that there might be some special "USB boot port," but from forum browsing I realized that what I needed to do was to remove any other USB drives, included USB hard disks. Once I had them out of their sockets, the little USB drive took the helm.

Launch the BIOS update utility

Launching the update utility is as simple as typing the name at the DOS prompt. Reminds me of using the one type of DOS command I knew as a kid--"falcon.exe" to launch the DOS-based flight simulator. If you get a "protected environment" error, see above about creating the simplest of simple DOS environments.

Flashing the BIOS can always be a bit nerve-racking, especially when the utility sits there with still text and a blinking cursor for minutes without movement. But at least the cursor was blinking, and soon I had revision A14 sitting on my machine.

Friday, August 14, 2009

The Science of Life

As true in science as it is in life:
The first to plead his case seems right,
Until another comes and examines him. (Proverbs 18:17)

Monday, July 20, 2009


When the David Young(s) of the world united, we believed we would be a force unstoppable. But as enthusiasm petered out (to the Peter(s) of the world, naturally), hope withered, and hearts fainted.

Well, actually, there's nothing special about being a David Young. Not at all, really. But there is something special about being a David Matthew, if only because there's someone out there named David Matthew who actually is special (or perhaps celebrated is the word), the Dave Matthew of the Dave Matthew's Band.

But you already knew that. What you didn't know is that there's another David Matthew lurking about, so stealthily and so sly that he doesn't even go by the name David Matthew. He goes by the name Matthew David, and just for tricks, he cloaks himself in his last name as Matthew Lewis. But he's there, and he's been there for 3 generations. He's there on your very screens. Yes, he is none other than Neville Longbottom, hero of the Harry, our beloved David/Matthew in disguise. Let us celebrate not once, not twice, but III for Matthew David Lewis III!

Wednesday, June 03, 2009

On The Mark running on JavaFX 1.2--on Linux!

Hello from JavaOne! I'm sitting here at the AMD "Hang Space" debugging On The Mark while folk play video games in the space in front of me and The Office themesong resonates behind me.

The best part of JavaOne for me has been...JavaFX 1.2, now on Linux! Yes, the picture you see above is an official screenshot of OTM running on Fedora 11pre, complete with video. Best of all, the video rate controls--critical for marking up videos playing rapid events--work on Linux, however haltingly, even when they don't work yet on Windows.

Now, how do we get OTM to run on Linux? JavaFX 1.2 on Linux needs Sun Java 6u13+ to run. NetBeans ran OTM on the default Java installed--OpenJDK 1.6.0--but that didn't cut it for OTM. Video playback worked for me once I switched to Sun Java 6u14.

Interestingly, I've also displayed media successfully only on Fedora 10/11pre. Video doesn't display on Ubuntu 8.04 or 9.04 even though JavaFX 1.2 on Linux only explicitly supports Ubuntu 8.04. But thanks to Sun, I can run Fedora 11 simultaneously with Ubuntu 8.04 and 9.04 via VirtualBox, all on the same computer!

Sunday, April 26, 2009

Pixelated bull?

This bull looks like it stepped out of a Commodore 64, or a .5 megapixel camera at best. But alas, it's not...welcome to Legoland!

Friday, April 03, 2009

Come out to Veritas at UCSF!

We're hosting a Veritas Forum at UCSF (our first ever!), and we're honored to have Bill Newsome as our speaker. Newsome is chair of neurobiology at Stanford and renowned for both his work on the intersection of monkeys and ethics and the intersection of science and faith. At our forum, he'll be talking on the latter:

Science and faith: the vantage point of one neuroscientist

I am a practicing scientist and a practicing Christian—commitments that are inconsistent in the minds of many. While I encounter tension at times between my science and my faith, my overwhelming belief is that both science and faith contribute critically to a meaningful, fully-experienced human life. Giving up either would result in a regrettable loss of understanding, depth of experience, and simple joy in my life. I believe that much of the perceived incompatibility between science and religion is specious, although real tensions do exist. In this talk I will lay out the central issues from my point of view, hoping to dispel some of the false conflicts between science and faith while bringing into focus real choices that need to be made.

The event's on May 5th (that's right, ¡Cinco de mayo!) at 6pm, in Cole Hall at UCSF (513 Parnassus Ave, San Francisco). Drop by if you're in the area! And feel free to peruse our planning and Veritas pages for more information.

Sunday, March 15, 2009

On The Mark video scoring system

One of the challenges of behavioral research is getting "high n," or enough subjects for a statistically relevant result. "Low n" is a chief thief because it can raise false hopes with statistically significant results between two or more groups, only to undergo a "zipper effect," where all the groups zip up into essentially one population, and statistical significance is stolen.

Once high n is achieved, another challenge is how to score them. Typically behaviors are recording through surveys, audio devices, or video acquisition. Videos are valuable because they allow one to record, view, and re-view data again and again. They're also a bit of a curse because it can be difficult to juggle all the video controls while writing or typing behavioral events--each time they occur, when they start, when they end, as well as other events in-between. Viewing quickly becomes re-viewing, and re-viewing, and re-vewing again and again for the most accurate records.

It's enough of a deterrent that I've left a ton of my own videos sitting on my computer, waiting to be analyzed. That's when I decided that I needed a simple video annotation system to score behaviors. That's when On The Mark got started!

From scoring videos by hand, I found that just a few key features are almost universally necessary for accurate video scoring. One is a mark function, both for the start and end of an event. Another is a back function, where the video can be shifted back in small increments in case a behavioral moment was missed. A third is simple video resizing to get the best image for the monitor size. Quick export to Excel or other spreadsheets also helps. And ideally, all of this needs to be done with as few keystrokes or mouse clicks as possible.

These are the goals and features that have inspired On The Mark. To mark events, a control unit has a simple mark on/mark off button. Each event type gets its own dedicated control unit (which can be added or deleted depending on number of event types), and all control units are visible simultaneously to allow marking of multiple events back-to-back or even concurrently. Events get fed to a table for ease of display and copy and pasting to spreadsheets. The video itself can be displayed either "inline," so that the entire window takes up just one column of one's monitor, or "side-by-side," where the video can be widened to maximize viewing of subtle behaviors and events, all by dragging the window wider. Playback has the oft-used slider and a one-second rewind button to catch that just-missed event.

What makes writing this so simple is the advent of JavaFX. I've written a fair number of Java programs with GUIs, and while the Java Swing GUI is very powerful, it can be complex and cumbersome to get started and add elements. Hard enough, that is, that I even switched to the Eclipse SWT toolkit for one project, which brought new features but additional complexity as well. Apprently one of the goals of JavaFX has been to resolve the complexity of Java Swing. So how does JavaFX actually do that? From this first forray into JavaFX, it simplifies a lot of the programming into script-like events and makes Web 2.0 features such as animations and shadow effects straightforward to implement.

If you want to give On The Mark a run for the money (it's free though), you can launch it through Java Web Start on the homepage. It's hosted by, so all the details and source are available there as well. As usual, comments/feedback are more than welcome.

Sunday, February 15, 2009

tXtFL 1.0

I can't believe it! tXtFL 1.0 is here! I can't believe it!

Weather on Vacation

It's almost the President's Day holiday on the 16th !

And evidently the weather gets a day off too.

Monday, January 19, 2009

Windows 7: First Experiences

One of the best parts of running a Mac is that now I can install Windows 7 on it via VirtualBox for MacOS.

Of course, it would be better if MacOS allowed itself to be run on other computers...