Aug 31 2010

Wufoo API Contest Entry: YQL Tables

[GEEK ALERT: I'm hijacking my old personal blog as a place to drop some info about a web coding contest I entered]

This one falls under the category of “wrapper.” I’ll keep it short. If you’re not familiar with YQL, go read all about it. But the Wufoo API is fantastic; RESTful, well-documented, and fairly flexible. So why bother going through YQL? A few reasons, all of which have to do with efficiency:

Speedy Server

If you’re making one single simple call to the Wufoo API, it’s going to be tough to beat just hitting it directly. But if you need to make multiple calls, filter, sort, etc. then you can take advantage of Yahoo!’s server farm. YQL let’s you run server-side Javascript. No strings attached. Heck you don’t even need an account. Chances are the PHP running on your discount shared hosting account won’t quite match what Yahoo! has running on their farm.

Caching

YQL implements some decent caching. That means you’ll be less likely to hammer the Wufoo servers for identical calls, and also keep it more likely that you won’t go over your 5000 call limit. That’s good for your users, you, Wufoo, and the internets.

Combine Queries

Whether pulling from two different sources or just running a subselect within the Wufoo API, YQL can do all that combining in the background, and you can just send one single query. For example, in this call we’ll grab the EntryIds of any entries that match “Ryan,” and then use that to fetch the comments.

NOTE: In all of the examples below, click the blue “TEST” button to see them in action in the web console

Wufoo comments based on Entry search

Or maybe you want all the entries and comments for a form. Two separate calls? bleh. Let’s batch that:

Entries and Comments combined

Again, all that parsing and subsequent calling is happening on the YQL servers.

But where it really gets interesting is when we combine totally disparate data sources. Like how about getting the geo coordinates from the IP address of a Wufoo entry? Again, one single call does it all:

Get location based on Wufoo Entry IP address

Yep, true to their word it looks like at least part of the Wufoo team is hanging out down there in sunny Florida.

Filter

The Wufoo API already lets you limit entries by searching for specific values, and also by setting the “page size.” What it doesn’t allow is a way to specify which fields get returned. If you’ve got a form with lots of text in the entries, pulling 50 full entries down is a real drag if you don’t need all those fields. This example won’t be too dramatic given the tiny bit of text and only 4 entries, but you’ll get the idea:

Select only First Name and Date Created

List of tables

  • Forms
  • Fields
  • Entries
  • Comments
  • Login

These should be pulled from GitHub into the main set of community tables by the YQL team within a few days. In the meantime, you can either put something like this at the beginning of your query: USE http://static.limechile.com/wufoo.entries.xml as wufoo.entries or add &env=http://static.limechile.com/wufoo.env at the end, depending on your style.

Beyond the contest

YQL also allows you to INSERT, DELETE, and UPDATE. Someday if the Wufoo API gets more of those added, I’ll probably update these tables.


Dec 1 2008

“Merry Xmas from a fellow patron!”

Today is my birthday. Events from this weekend (a traumatic visit to the ER, Zoe, Jed and Lucy all having the stomach flu, no sleep, etc) had me coming into it with low expectations. This morning we decided to go out for breakfast. After we finished our meal and asked for our check the waiter said our meal had already been paid for. We sat there a little confused and told the waiter there must be a misunderstanding. The waiter then explained to us that people from another table had paid for our meal, and he gave us this:

Merry Xmas from a fellow patron!

Wow! If that doesn’t put you in the holiday spirit, what does? Feeling inspired, we picked someone else in the restaurant and paid for their meal. I wonder if they were inspired and paid for someone else’s meal, too!

The whole experience made my day!

My hope for this holiday season – that everyone who reads this post does an anonymous act of kindness for someone else this month. Pay for someone else’s meal next time you are at a restaurant, the drive-through, or even Starbucks. Or do something else that will lift someone else’s spirits! Please leave a comment about your experience and, hopefully, in a few weeks this post will have a bunch of great stories of  spreading Christmas cheer!


Nov 22 2007

Even Mac users have bad days

Note to self: next time bring two laptops.

My battery was getting low. Time to plug in. I reached for the nearest outlet in the internet cafe and connected the lifeline to my little MacBook. But the reassuring green light didn’t glow. Strange. I tried another outlet. Then another. Panic. I went home and tried every outlet back in our bungalow. Still nothing. By now my computer was dead.

And that meant my ability to make phone calls was dead. We had been in the tiny village of Lo De Marcos for less than a day, and I was in a serious pickle.

Several expensive spanglish pay-phone calls later, I had narrowed it down to waiting for a replacement power adapter to be shipped from the states. Great. An unplanned 5 day stop-work order. Well, could be worse, right? I was, after all, about 100 yards from a beautiful, quiet beach. And a pleasant 5 days it was, including a fishing trip out of Rincon de Guaybitos that yielded this small but beautiful dorado:

Dorado

Two days ago we arrived in Bucerias, a few hours before my power adapter showed up. But it didn’t work either. $75 for the adapater, $50 for shipping, and another $32 for customs. And the power adapter wasn’t the problem.

So yesterday I went to the Office Max in Puerto Vallarta. 4 hours and 47 phone calls to my credit card company later, I emerged with a “new” MacBook. It was the last unit they had: a six-month old floor display unit, and it cost me $400 more than one of the brand new models, which would be new in the box, complete with updated software. I did my best to convince them I deserved a discount on their discontinued, used, dirty little machine. But they knew they had me. You can only walk away when you can walk away. I pride myself on always getting the most for my money, but I guess sometimes you gotta live with getting a bad deal.

Anyway, now it’s catch-up time…

Happy Thanksgiving!


Mar 2 2006

Moving to Boston

I guess it’s time to make it official. About a month after Chelsey has our first kid, we’ll be moving to Stow, MA which is about 30 miles west-by-northwest of Boston (Google Map). I’ll be working as a User Interface Designer in the Automotive Systems Division for Bose. No, I won’t be working on the Wave radio or their noise-cancelling headphones, though both are pretty cool. And no, I won’t be working on their breakthrough auto suspension system either, which is even cooler.

My recent trip there has me feeling that Boston is a decent place. Chelsey and I are looking forward to the slight change of pace that will hopefully come as a result of living amongst apple orchards, and a little further away from freeways, trains, and hundreds of beckoning restaurants. No doubt it will do little to offset the pending change of pace from the new arrival, but oh well. I’m happy that I can maintain my budding squash career, as Boston is a real hotbed for the sport (well, as far as the US goes).

I’ve even already discovered 3 great friends to hang out with: Christie (a friend from high school and her husband + two kids), Sung Joo Bae (whom I met at the open house for University of Michigan), and Ola Holstvea (a childhood friend of mine from Norway whom I haven’t seen in 13 years!).

On the downside, this means buying a car, which I’m not really looking forward to. 3.5 years of taking public transit has it’s crappy moments, but those don’t include filling up the tank, paying car insurance, getting oil changed, finding parking, registering, washing, etc. I had my heart set on a Mini, but can’t justify a two-door with the kid. Then I was drifting towards the Honda Element, but it’s a bit more than we want to spend right now; we gotta go cheap and efficient (yes, even cheaper and more efficient than the Element). So I think I’m down to the Mazda M3, the Scion xA, or the new Toyota Yaris. Let your opinions be known in the comments.

UPDATE: Thanks for catching the broken Yaris link, Carl- should be fixed now. We just got back from visiting both a Honda and Toyota/Scion dealer. Now I’m back to considering the Element- maybe just a used one. The Scion would be taking top slot if we were going to be living in the middle of the city, or commuting more than 30 miles. But that won’t likely be the case. I love the way the rear door opens “suicide” and the lack of vertical cross-member makes for super easy loading of anything. Like babies.


Jan 15 2006

Switching Back

wow. That was fast. I was the semi-proud owner of a new Intel iMac Core Duo for less than 24 hours. The manager at the Apple store was holding firm on the 10% fee for a return. Not wanting to leave the store empty-handed and negative on the cash flow, I convinced him to trade me straight across for a good ol’ PowerPC version.

Oh G5, I could never stay mad at you! What was I thinking tossing you aside to chase after the hype of supposed 2x speed improvements? And after all you’ve done for me! I promise I won’t do that again. At least not until they release the Intel version of the PowerMac this summer…

Why the change of heart?

Look, I was right on the edge of my risk tolerance buying that thing last night. I was already hesitant about the performance of Rosetta. Losing Subversion, TextPander, and TimeLog didn’t help (I didn’t get to confirm if SuperDuper worked, but I wouldn’t bet on it). Seeing the Flash player turn text blue (in the “native” Safari) and time out twice (in Rosetta’d Firefox) didn’t either. But it was all the little things (as if those aren’t already little enough) that did me in- like trying to hit COMMAND-TAB to switch apps and not see the menu for 2 seconds.

Yeah, I know- more RAM might have made all the difference. But you can’t buy any more right now except through the Apple store online and they wanted $300 for each 1 GB chip (Crucial let’s you get all the way to checkout before telling you it’s not in stock). And what if that still didn’t solve it? And yeah, I know- maybe all these problem apps will have Universal Binary versions released within a few days. But what if they don’t?

Not enough pain

Part of my problem is that I obviously just don’t need it bad enough. My friend John-o is going to be in heaven with his machine, because he’s upgrading from a 15-inch G4 iMac that has a busted optical drive and about 16 MB of RAM. His iPhoto library probably has 4.2 million photos. He surfs the web, uses Mail, iTunes, Preview, iChat, and maybe iMovie now and then. He hated his old machine. It took a lot of persuasive talk to convince him to wait until MacWorld before buying a new machine. He’s the perfect candidate for these MacTels.

But me? I’m pretty darn happy with my current machine. Screen Spanning Doctor let’s me hook up an external monitor and have an extended desktop. 2 GB of RAM seems to be put to good use. Who knows, maybe SOX is doing more than I think? I saw the big “2x faster” plastered all over the Apple site, did the quick calculations to justify the cost, and figured why not? Too bad I ignored all the concerns I had.

The Upgrades

So I’m still coming out with some decent little upgrades in this new G5 iMac compared to the one I’ve been using (which will soon find its way onto eBay)- at least enough to tide me over until this summer.

  • My old iMac didn’t have bluetooth built-in, so my BT headset never worked right with the USB adapter I was using. Now it does.
  • 128 MB video card instead of 64 MB
  • Faster RAM
  • iSight camera (built-in)
  • iLife ’06
  • Front Row and the cool little remote
  • Speed bump in processor speed

So my final advice: you should buy a MacTel if you fall into one of these 3 categories:

  • You really only use the basic native Apple apps
  • You’re switching from a PC (in which case you’re not going to bring your software with you anyway)
  • This will not be your primary computer, but rather a little tor for your spouse, kids, and home-theater experiments

Too all of you that have already paid for a MacBook Pro- I wish you less buyer’s remorse than I had.


Jan 14 2006

Switching iMacs: from G5 to Intel Core Duo

Tonight my friend John-o and I picked up a couple new iMacs from the Apple store on Michigan Ave. This post will be an updated log (both inline and in comments, to handle the different ways people are coming at this) of my experience: things that work, things that don’t.

[UPDATE] It’s all over [/UPDATE]

Apples to Apples?

Yeah, worn out pun- but I couldn’t resist. In fairness to this new little guy, I need to note here that some issues may be related to RAM. My G5 has 2 GB, and this one currently is plugging along with only 512 MB.

Lost in the shuffle

Looks like almost everything got pulled over by connecting to my G5 and using it as a Firewire drive. Preferences generally seem intact, and the Intel machine was smart enough to automatically use the new ’06 versions of the iLife apps. Little utilities like iMote and Quicksilver came through just fine. But there were a few big casualties:

Developer Tools

I could probably try just pulling the old folder over manually, but first I’m going to look into downloading a new suite (I’m assuming there is one?). At any rate, I’ll definitely need XCode, if nothing else.

Subversion

Ouch. That one hurt. I’m brand new to SVN, and spent several hours last week getting all set to have my G5 acting as a local SVN server (repository). Not sure how it’ll all work on on the new machine. I might not worry about it just yet, and stick with nightly backups to external drive via the trusty SuperDuper

Made it, but badly wounded

TextPander shows up in my prefs pane, but gives an error and won’t run. TimeLog crashed a few times, but seems to be okay now…

Flash

Probably my biggest questions surrounded the Adobe (Macromedia) Flash Player and IDE. Unfortunately, there are some issues. If I run it with Firefox (assuming “Rosetta” here), it’s dog slow. There’s an app I’m working on right now that has loads of v2 components that aren’t yet intelligently loading- they just all try at once, which makes for a good test. Though it hangs a bit on the G5, I don’t get any timeout messages, and in the Intel I’m getting at least 3! The good news is that in Safari on the Intel the performance seems as good and maybe just a tiny bit better than on the G5. But one major text problem is pretty easy to spot here (click for full view):

Screenshot of Cherokeelink.com website

See all the blue text? That’s supposed to be black

[ UPDATE: ] For the heck of it I went to the Flash Player download site, and it told me it couldn’t find a player that matched my system. ouch. I’m not one to jump all over Macro.. sorry, Adobe- but c’mon guys. How long has Apple been providing info on creating Universal Binaries? The IDE is one thing I can understand, but the Flash Player? The thing that’s supposed to be more ubiquitous than any other downloadable software? I thought they would have had it covered. [ / UPDATE ].

As for the Flash 8 IDE, it’s quite a bit slower than on the G5. Fortunately, I do most of my work in XCode with the help of MTASC. I’m also hoping that more RAM will give me a boost here.

New fun stuff

My G5 was the model just previous to all the cool stuff being built-in, like iSight camera and Front Row. Even my bluetooth headset works with this new one, which makes iChatAV a little cooler. And I’m liking the Mighty Mouse. I have yet to play with iWeb or GarageBand 3.

Well that’s all for tonight. I’ll post updates as I have them.


Dec 13 2005

Needles in the blogstack

Some time ago I contacted LukeW (an interface designer) to discuss a number of things, including the reasons why he should teach a class at ID, a request for mentorship on one of my side projects, and a question that made me curious: “Why don’t you allow comments on your weblog?

At the time I was doing a class project on how to visualize the conversation threads contained on blogs. Obviously this doesn’t make sense for a little site like mine, but it could really be helpful on sites that get hammered with lengthy comments (like this recent post from Design Observer). After a number of email exchanges and a lot of delays on my part, we just finished the first article in a short series on ideas for better weblog design and interaction. Luke helped me simplify some of the concepts I had, and combined them with some of his thoughts on archiving, tagging, and filtering the articles themselves.

The next part(s) will cover some methods and working prototypes for how these suggestions might be implemented. I have high hopes that my pending graduation (4 days and counting) will free up more time for me to work on these kinds of little projects.


Nov 30 2005

IKEA does the Matrix effect right

Just when you thought the whole 360-degree Matrix-style camera pan was worn out:

(warning, LONG download)

IKEA’s Six Kitchens

And here’s a blurb about the production.


Nov 15 2005

Designer Arrogance

[UPDATE]: It seems Mr. Leftwich has similar feelings towards some experts as I do. I was surprised (given my reaction to the original article) to find him making this statement in another article, : “I sense that there’s a great and growing awareness among both experienced and young practitioners that know that there is much missing from the literature, lectures, and pronouncements from the “experts.” ( read the whole article ) [/UPDATE]

When I entered the field of Usability 5 years ago, one of the first observations I made was that experts seemed to be considered experts simply by declaring somewhat-informed opinions as being indisputable facts. The recipe seemed simple: get just a little bit of credibility and momentum, and all you have to do is keep declaring your expertness with conviction every chance you get. People will believe you because, well, you’re an expert.

Since then I’ve made a slight shift into the related field of Interaction Design, and have been exposed to the broader field of design in general through my time at I.D. This arrogance, it seems, is a universal issue.

Today I found two great examples. The first was pointed to by LukeW, wherein Jim Leftwich essentially declares that he’s too good for prototyping. I find this particularly interesting because I have carved my career niche based on the concept that hi-fidelity interactive prototypes have great value. Apparently this niche exists because unlike Jim, most of us aren’t able to imagine all the possible interactions with such clarity as to make prototyping a waste of time. He almost saved it when he said “Okay, so am I saying prototyping is not worth it? Absolutely not.” But he follows up by saying that prototyping might come in handy if you’re not as experienced and persuasive as he is.

Then tonight in Larry Keeley’s class, he made a statement that contradicted some of my own personal experience. I attempted to share it with him and the class. Boy, there’s nothing like having somebody cut you off and correct you about your own personal experience. It would take too long and bore you if I were to recount the details, but here’s the point I want to make: Both of these guys (and all the aforementioned experts) clearly have accomplished many great things, and they deserve credit for it. They are true experts in their fields (in fairness to Larry, I should point out that he doesn’t claim to be a designer- rather he’s an “Innovation Strategist”) . What irks me is when they stretch their expertise past its limits and demand the same level of respect and authority for opinions and statements that don’t deserve it.


Nov 11 2005

Good PR for WebSort

ah yeah- it’s been a while since we’ve had anything other than a quick link on blog, but this just came in from Tim at Staples, who worked with us on the early versions of WebSort. It’s an online card-sorting application I’ve spent the past few years developing with my Pops.

Staples increases conversion rates and margins after site re-design

Okay, okay- so it’s no Business Week article, but it’s a start!

Hat tip to Johnny as well, for introducing me to Flash, helping us with the very first interface, and designing the logo that we still use today.

When I graduate (just 5 short weeks now) I hope to implement some of the enhancements that have been stacking up over the past couple of months…. errrr, years.


May 5 2005

Social Imposition

During the past year I’ve realized I have an issue that might bother those around me (yes, just one issue). Basically, I tend to use the reverse golden rule to my advantage too often. That is, I think to myself “I would do that for them, so I’m sure they won’t mind doing it for me.” It means I’m frequently asking people to make accomodations in various ways. I just usually think “hey, they’re not using that pen and I need a pen, so no biggie.” I’ve even gotten to the point of eating food without asking- let alone waiting for an offer. Some might call it being a mooch. I prefer the term “resourceful.”

Just last night I borrowed a classmate’s laptop to make a presentation. I was in a real pinch and it seemed like the logical thing to do. In retrospect, it was probably a really poor social move, and I feel a little ashamed about just putting him on the spot last minute like that.

But, as only Karma can dictate, I got a dose of my own medicine this morning. See, I write tutorials now and then for a few Flash (web-development tool) sites. Every week or two I get a little question from somebody asking for help. They’re generally very friendly, and always mention that they understand if I don’t have time to help.

But not this time. Check out this email (keep in mind I have had no previous contact with this person):

Subject: Would you volunteer to mentor a beginner in Flash ? Need your help before Friday May 06, 2005

Message: Hi Jed:

I am a beginners in Flash. I need to resize the content to fit nicely into
approx 500 W X 400 H. ( The smaller the better as all things are legible, nice and clean)

  1. Could you send a voice mail to (xxx) xxx-xxxx with your explanation as to how I can fix it
  2. You are welcome to make any changes as you see fit to make it better.
  3. Set style is not working good and the programs actually does not clear all the memory when I hit new order too.

Sep 15 2004

Blogs, Wikis, and RSS: Part 3- RSS and wrap-up

This is the third of 3 posts on blogs, wikis, and rss.

RSS

RSS stands for "really simple syndication." It’s a way for news sites, blogs, or anyone with updated content to send "feeds" in a fast, simple manner. RSS aggregators do for updated content what a mail client does for your email.

Continue reading


Sep 15 2004

Blogs, Wikis, and RSS: Part 2-Wikis

This is the second of 3 posts on blogs, wikis, and rss.

Wikis

Much more open than blogs, wikis are about collaboratively editing the same document, rather than commenting on one person’s post. They are usually not organized chronologically. My only personal experiences have been with pmWiki.

Continue reading


Sep 15 2004

Blogs, Wikis, and RSS: Part 1-Blogs

I’m giving a "lecturette" at school on blogs, wikis, and RSS. I thought about a Power Point, until I realized it goes against much of what this presentation is all about! So I figure I’ll post my notes here.
This is the first of 3 posts on blogs, wikis, and rss.

Blogs

Short for “weblog”, blogs are essentially online journals that usually allow comments from readers. Primarily organized by date, secondarily by customizable categories. Can have long, infrequent posts (DxF) or "quickies" (Mark Escobosa)

Continue reading


Sep 14 2004

Virtual Mac?

For many years there has been an application called “Virtual PC” that lets you run Windows on a Mac. Now it seems there’s a vice versa. Like most open source projects, you have to be a bit of a geek to get the thing working, but I’m sure it’ll get easier with time.


Sep 10 2004

Design Process Revealed

One quote that stands out most from my first year at ID was from Chris Conley. He was speaking about the way designers tend to keep an air of mystique about their work– that everything they create is based on sheer creativity and artistic prowess, attributes that can’t really be learned or taught. Chris’ answer was “Well, that’s bull ____.”
Continue reading


Sep 9 2004

Flash Zen Garden Launched

All summer I’ve been kicking around an idea largely inspired by the much-loved CSS Zen Garden. My initial announcement of the idea caught the attention of several people, one of which was an employee of Macromedia that contacted me and asked that I keep him up to date on the project. Well, today I finally got the thing out the door. Kind of…
Continue reading