Recently in work Category

I'd like to spend some time learning to create sprite artwork, and I have a suspicion that my left-brain mind will have a better chance making 3D models and then rendering them as flat 32x32 PNGs.

I happen to have some incredible Cinema 4D models supplied to me by a talented artist, which I could use as a starting point. So I'm tempted to buy it and start there. But I've also admired POV-Ray's galleries for years, and I'm sure it could also do what I want.

Should go the commercial, proprietary Cinema 4D route, or open-source POV-Ray, or something else entirely? I'm sure there are a thousand right answers to that question, so I'll try asking differently. Given that I have an attention span of maybe a weekend and virtually no 3D modeling experience, which toolset is most likely to give good short-term results?

Loyal Readers,

I wrote a 99-cent casual iPhone game called Teragati, and last night it was approved for sale in the App Store! Please head on over there and buy it now. It's just 99 cents, it takes a few moments to learn, and typical games last only about a minute. It's a perfect way to spend time waiting in an ATM line.

If you like the game, please rate it in the App Store (5 stars, please!) and write a brief review. If you don't have an iPhone, please tell someone who does.

http://bit.ly/a2b6Qo

Thanks!

The powers that be have informed me that the home-office thing wasn't working out, so on Monday I started visiting various spots within mid-Peninsula commuting distance. Here's my report so far:

  • Hacker Dojo: Mountain View, just a couple exits south of Google. Pros: it's built specifically for people like me. It's inexpensive ($100/month) when compared to a real office rental. Quiet. Good internet. Lots of parking. Python/Django questions can be answered immediately by simply speaking them loudly enough for people around me to hear. Good community. Reportedly kid-friendly if I want to stop by on the weekends and happen to have the kids in the car. Cons: because it's on the opposite side of Google from my home, morning traffic is horrendous. Currently opens at 10am, which is late for me. The history of the building (former stained-glass factory) causes me to expect the bong to be passed around to me any minute now. Very cold in the morning.
  • TechShop: Menlo Park. Pros: Feels like I'm 40 minutes into a Star Trek TNG episode (sample dialogue from neighboring workbench: "Dude, I totally ordered a sensor bearing, but when it went into its return arc...."). Good commute. Endless take-a-penny-leave-a-penny parts bins so I can finally empty my home closets of junk from projects past. Various pint-sized robots around me provide inspiration for video-game themes. Same price as HD ($100/month) if I pay a year in advance. Cons: As a software guy who neither builds animatronic handbags nor wishes to add jet propulsion to his commute car, I feel out of place here. Earplugs generally required to get any work done. Like HD, chilly in the morning. Free popcorn is not seasoned. Kids below age 12 are absolutely prohibited for insurance reasons. Constant risk of suffering injury from neighboring projects.
  • Local public library. Pros: Free (pro because it costs me nothing). Reasonably functional internet. Cons: Free (con because money no longer has filtering effect). Doesn't open until 11am, so I've never actually been there. If I visit the bathroom, my computer will be either stolen or used to view porn. Borrowed books must be returned in two weeks.
  • Local coffee shop. Pros: Lets me pretend I'm 22 years old again. Cons: No free internet. Unless I'm drinking 16 ounces of coffee every 20 minutes, I'm not truly welcome there. Too many overheard conversations that make me want to get up as a self-appointed Angel of Darwin and strangle the participants.
  • Google parking lot. Pros: Free internet. Chance of being invited to free lunch. Cons: Risk of heat exhaustion if I don't roll down the windows.
  • Real rented office. Pros: It's my place. Cons: Expenses likely to outweigh revenue. Overkill for one person.

Have I missed any other candidates?

I'm doing my first AdWords ads for iLetDown, so I've written a few ads like this:

Relax and Pump Quickly
Trigger your letdown reflex!
Buy iLetDown for iPhone.
www.attachmentcomputing.com

These were working fine until yesterday, when I tried to edit them slightly, and all my ads were halted because... Apple has asked Google to prohibit the trademarked "iPhone" term from being used in AdWords ads.

Huh? So the maker of this phone that's being promoted as a platform is preventing developers from advertising the fact that they've created products for that platform?

I stayed away from Apple for a long, long time, so maybe I'm just being naive about how this part of the world works. Does Apple always crap on its community like this?

iLetDown for iPhone

| | Comments (0)

My first iPhone app is available on the Apple iTunes App Store!

iLetDown helps moms express breast milk quickly and easily by helping trigger the let-down reflex. Visit the iLetDown site to learn more.

You're probably wondering why I picked such a specific market segment (working, lactating moms who buy apps for their iPhones) rather than something general like a puzzle game. Mostly it was because I knew that marketing my own product would be hard. I wanted to learn the ropes with an app that I could write relatively quickly, rather than investing many months in a game and then making lots of mistakes with its marketing.

Do you know anyone who recently had a baby and is going back to work? If so, please let her know about iLetDown. Makes a great gift!

kaChing is on TechCrunch!

| | Comments (1)

Site launched

| | Comments (2)

FSX is now kaChing. Yay!

Anyone who's worked with me for more than four hours knows that when it comes to efficient use of time at the office, I have the soul of an 80-year-old curmudgeon. I take time to write up documentation with executive summaries, working hyperlinks, sample code, and FAQs, and in exchange I expect people to read it. But all too often the pattern goes like this:

Imminent Target Of Rage: Hey Mike, so I saw we have
   a new schema for brillig, and the slithy toves need to
   gyre and gimble in the wabe, and anyway, I saw you sent
   out something about how to do this...

Mike: Yep, the first FAQ entry I sent out has a
   cut-and-paste command-line to whiffle the vorpal sword,
   which gimbles the wabe.

Imminent Target Of Rage: Oh, OK. Command line. I
   uninstalled my shell when the mome raths outgrabe, so
   I could still use some help.

Mike, beginning to seethe: The first FAQ entry also refers
   to the second FAQ entry, which addresses engineers who
   prefer a GUI interface.

Direct Target Of Rage: Hmm, all right. So anyway, I think
   I actually deleted your email with the link to the FAQ.

Mike: We use Google Apps. Nobody at this company deletes
   email.

Direct Target Of Boiling Rage: (long pause) Can you help
   me gimble the wabe?

Granted, my recounting of this dialogue is one-sided. But there are some truths in it. Some people read documentation, some people work in a more verbal or visual fashion, and the two groups will not, by definition, be able to communicate with each other without either changing their style or finding a mediator. My usual approach in life has been to demand that others change their style, because (a) spoken communication is inefficient if it can be expressed clearly in writing, and (b) I don't want to become the mediator.

For some reason, yesterday I let two neural paths in my mind cross. I was musing about public speaking and marveling at how much a difference good preparation makes, and I analogized it to my constant efforts at work to document every fact or skill worth sharing with my coworkers. If that documentation is like public-speaking prep work, then at the end of creating it, and at least for the next day or two until I forget what I wrote, I am almost certainly the most prepared person on Earth to present wabe gimbling or sword vorpaling. And if that's the case, why not treat a coworker to the best damn presentation ever on that topic? Why stew about it?

I still need to quell the efficiency and public-policy demons that scream in my head as I write this. What about scaling the organization!?! What about encouraging a culture of independent productivity???!! There's certainly a balance to be found. But I've spent a long time over on one end of the scale, and I'd like to try scooting over a bit toward the other side.

Update on the Dell monitor

| | Comments (1)

Soon after my real-time rage hit the web, I saw a few hits in my server logs that reverse-mapped to various dell.com addresses. I knew then that my ploy was working, and sure enough, not more than 20 minutes later I got a very polite email from Larry Robinson, who's a Dell Online Community Outreach Liaison. I also got a ping from Jimmy Parish, also of Dell, on Facebook.

Long story short, the company got a new monitor out to me, and it arrived last night. We hooked it up this morning in the office, and it works great. I'm still waiting for return instructions for the broken monitor, but at least nobody's blocked at this point.

Larry speculated that the original disconnect was that the CSRs were looking at the order date, not the ship date, when they told me to get lost before the 21-day return period. He said the company does take these kinds of incidents seriously, and tries to modify their internal procedures to handle things better. I appreciate that; the last thing I want to hear is that they're making an exception for me just because I complained in a public forum, because that doesn't help me the next time I get into a situation.

Since my blog post I've heard many Dell stories from friends, some unpleasant, but many satisfactory, and a few outright pleasant. If I underweight the part of the experience involving ignorant front-line CSRs and focus on the actual humans who took a few moments to understand the problem, then my experience was slightly on the pleasant side, too. So Dell manages to stay out of my personal Hall of Shame, and I'll probably buy from them again.... especially likely when the mini Inspiron comes out soon. :)

  • Early July: One of our new employees agrees to a start date of August 11.
  • July 21: I order a Dell PC and a 24-inch monitor for this new employee.
  • July 25: I get an email from Dell saying the purchase has shipped.
  • July 31: The package arrives.
  • August 11: First day for our new employee. Unpack the box, discover the monitor's broken. It flickers, and when it's not flickering, twisting lines of blue and green pixels shimmer on the display. We swap cables, computers, identical models of monitors, etc. We upgrade drivers. We reset the monitor to factory settings.
  • August 11: Navigate through Dell's website and submit exchange request.
  • August 12: Nothing happens. Once again, navigate through Dell's website and submit another exchange request.
  • August 12: "Sorry, your 21-day exchange period has expired." My response: no, it hasn't.
  • August 12: "Hi, sorry you can't figure out how to hook up your monitor. Have you tried our technical support department?" My response: look, it's really broken.
  • August 13: "Sorry, your 21-day exchange period has expired." My response: no, it hasn't.
  • August 13: "Hi, sorry you can't figure out how to hook up your monitor. Have you tried our technical support department?" My response: hey, we've gone through all the troubleshooting steps. Just give me the RMA.
  • August 14: "Oh gosh, we're sorry about all this. We'll be happy to replace the monitor. One question though, was the box damaged when it arrived?" My response: you already asked me that when I filled out the original web form. To repeat myself: no, the box was OK. Their response: "Hi, sorry you can't figure out how to hook up your monitor. Have you tried our technical support department?" My response: RMA, please. Don't make me dispute the credit card charge.
  • August 15 (this morning): "Sorry, your 21-day exchange period has expired."

(By the way, yes, I have called their tech support department. Early morning I haven't been able to stay on hold longer than a few minutes, and in the evening they say to call back the next day.)

Dell hardware is fine. But Dell the company sucks.

Update 10:09am Friday: On the phone now for 39 minutes. Spoke to Mark Garcia, an unknown other person, Misha 143497, Virginia 869237, and now on hold for the last 12 minutes being transferred again to a "technical support specialist." Each time except for Virginia I explained most of the story all over again. Verified name 4 times. Verified mailing address twice.

Dell, if you're listening, my incident number is 617570338.

10:14 "Please wait."

10:15 Hey, what a great idea: liveblogging my defective Dell monitor return experience.

10:16 The "Please wait" every 30 seconds for the last approximately 20 minutes has just changed into music, as well as an occasional recording urging me to hang up and figure out the problem myself on the support website.

10:21 Sigh, looks like the switch to music wasn't a sign of imminent human contact. But on the bright side, I now know that Dell's set up a "community" site where people can help each other diagnose their problems with Dell machines.

10:22 "Many times a simple restart will resolve issues. Try restarting and see whether the problem persists!"

10:24: Don't like being on hold? Buy "Dell On-Call Support"! What a great value!

10:25: The Dell community message. Also ensure your virus definitions are up to date. I've heard that one at least three times now. Ooh, but I missed that visiting the site can give you access to free virus software. Wow!

10:26: Now they're telling me HOW to turn off my computer to restart and "see if the problem persists." Buy Dell On-Call Support. "Do you think spyware is an issue?"

10:32 The music stopped for about a minute. Was hopeful this meant I would get someone to answer. Nope, just got reminded about spyware again, then more music.

10:34 I just realized it's been forever since I heard someone say "forward-slash" when reading a URL. But I've heard it probably 60 times in the last 40 minutes. "Visit dell dot com forward slash support blah blah blah blah blah...."

10:38 Searching my Gmail for from:US_CAG_Customer_Care@dell.com returns 25 distinct emails. That means I've gone through 12 and a half email round trips with Dell.

10:39 Ooh, the music stopped again!

10:40 Nooooooooooooooo! "Many times a simple restart will resolve..............."

10:41 On the phone now for at least 1 hour, 11 minutes.

10:42 "forward slash security tips"

10:43 I wonder how many of their users type a space between "security" and "tips" when typing in that URL. Why couldn't they have picked a single word like "security" or "tips"?

10:44 I love how they say "issues" instead of "problems." I know everyone does that in the tech industry, but it's amusing to analyze how thoroughly they've cleansed the language of these recorded messages.

10:47 It looks like the music stops about every seven minutes. It must be a loop. So unfortunately there's no meaning in the fact that it stops.

10:50 Here's a screenshot of the email:

dell_mails.jpg

10:51 "Scan for viruses for free!" More music.

10:52 Here's my attempt to transcribe the music into text: doo dee.... doo doo doodly-doo, bwap bwap bwap bwap (repeat verse), boop boop twang

10:54 will have been on for 90 minutes soon.

10:55 "then restart to see if the problem persists." Technically it should be "whether," not "if." Otherwise you're literally saying that you should restart your computer ONLY IF the problem persists. But how would you know, unless you restarted your computer to find out?

10:57 bathroom break. Hope I don't drop the call.

11:01 Hi, this is Mike. I'm totally not brainwashed or anything. I just wanted to ask my loyal readers a simple question. Did you know Dell is here for you 24/7, all year long? doo dee.... doo doo doodly-doo......

11:04 Oh, this was weird. This time the music stopped for 9 seconds. Historically it takes from 5.5 to 7 seconds before the tape loops.

11:05 Thinking of hanging up and redialing.

11:06 I'm also thinking of designing a T-shirt people that people could wear to show their support for my cause during this phone call. I've been happy with cafepress in the past -- any better suggestions?

11:09 So here's the thing about hanging up. Remember that quote from Boiler Room? "there is no such thing as a no-sale call. A sale is made on every call you make. Either you sell the client some stock or he sells you a reason he can't." Does this count as a "call"? Then if I hang up, what have I bought? I mean, besides a broken monitor?

11:12 Oh, wow, must be a slow news day. I'm on CNN! Read the article here: http://www.cnn.com/2008/TECH/08/15/mike.vs.dell/index.html

11:14 Ha ha, made you click.

11:15 Coming up on TWO HOURS ON THIS DELL PHONE CALL. Hanging up now.

11:15 Redialing 800-624-9896.................

11:16 "Welcome to Dell...."

11:24 got someone

11:26 I think he's in the States. Score!

11:27 It's actually possible that he is genuinely shocked that I was on the phone for two hours.

11:28 "You're in the wrong queue" OH GOD NO

11:28 "But since you were on hold so long I can make an exception and process this matter for you..." Do miracles happen?

11:30 Describing the problem, won't fall into previous traps.....

11:31 As I'm fumbling to describe the snake-like flickering pixels, he suggests "like an ink spill"? My goodness gracious, a man who speaks my language!

11:32 "Yeah, that's bad." (His words.)

11:33 I'm "verifying" my shipping address. He wouldn't ask that unless something were being shipped there, right?

11:35 aw, crap, he's doing it to me. I'm going to have to call someone else.

Was it something I said? I thought we had a really good relationship.

11:39 We're still talking. Maybe we can save this thing.

11:40 "I'm picking the part for you now." I am not sure what that means, but it's better than "Sorry, you're 19 days into your 21-day exchange period, which means your exchange period has elapsed."

11:44 Off the phone. "Scott" says they're going to send someone out to replace the monitor. No need to call anyone. He says I should call up "Dell Customer Care" and explain what happened and "I'm sure they'll do something for you."

11:46 I got a confirmation email from him proving the last conversation really happened.

11:48 end of liveblog, for now. Back to work. I have vastly improved my state of mind, now elevated to "F*** you Dell, you f***ing shameful excuse of a customer service organization." Let's see what happens next.

Update 8/22/2008: Happily resolved.

My team is moving to new offices in Redwood City, and we've resolved to lay out our workspace in an XP-friendly bullpen style that favors pair programming and impromptu meetings.

While visualizing our new digs, I had an idea. What if, instead of making it easy to gather around a single computer, the computer itself were mobile? Laptops aren't the answer; I can't write code of any depth without an ergonomic keyboard and a mouse, and I am addicted to giant LCDs. So I'm looking for a tiny rolling workstation stand with a VESA monitor arm, an adjustable keyboard/mouse tray, and a UPS so I can move around without shutting down the PC. A quick search on the web produced many contenders that I had to rule out for various reasons: too ugly (wood laminate), too fragile-looking, keyboard tray not sufficiently adjustable to the 26-inch height I prefer, not really compatible with a VESA mount, or priced for verticals rather than the consumer market.

This is the closest to what I have in mind.

Rolling PC Workstation

But I wanted more of a flexible monitor arm so that we could easily move the monitor around according to whoever's coding at the moment, and I'd imagined the keyboard tray jutting forward a little more, both to counterbalance the monitor arm (visually if not physically) and to enable me to stretch my legs out a bit underneath without straddling the PC. And if I ditch the included tray and monitor mount and replace them with my own, then I'm paying $250 for a rolling pole, which doesn't feel like such a great deal.

Any ideas? By the way, I decided to disable blog comments after a barrage of unsuccessful spam attacks, so if you have an idea, post it somewhere on the web, and my Google Web Alerts will eventually pick it up.

I'm doing something pretty goofy today: I'm leaving Google. My tattered old employee badge goes back to HR during my exit interview at 4:00 this afternoon. After that I'll be an ex-Googler.

Working at Google was as amazing as everyone says it is. Sure, the perks were nice. I'll miss the delicious meals, the ski trips, the commuter shuttle, and TGIF. But any company could provide such benefits, given enough free cash flow. What makes Google unique is its culture of respect. The tough interview process means that engineers are treated with respect from their first day. In such a supportive environment, even the most timid person works with self-confidence, which is marvelous to witness. This element of the company's culture was the biggest difference between Google and every other place I've worked in the past. I hope to take it with me throughout the rest of my career.

Which brings me to the future. What's next? I'd originally intended to take a year off and bang on a few software ideas that have been rattling around my head. I'd then pick the most promising one, find some friends, and start up a new venture. As it turned out, things went faster than I expected, and not exactly in the order I'd expected, but the result was the same.

My new venture is a software startup called FSX. I think of the company as a mashup of eBay, Charles Schwab, and American Idol. FSX will use a highly accurate, simulated brokerage to identify skilled stock portfolio managers. For the majority of participants, the fun of FSX's community and fantasy stock exchange will be its own reward. But there will be a tiny number of managers who we find can consistently outperform the field. For those newly discovered stars, we'll provide a market of investors willing to entrust real investment funds to their management.

The business idea is risky, no doubt. The Random Walk Down Wall Street crowd has seen all this before. But the premise that stock-picking is a legitimate, repeatable skill also forms the foundation of the hedge fund and mutual fund industries. If you (or your pension plan) have any of your money in a managed mutual fund or hedge fund, then you believe the premise, too.

The technical challenges are less risky, but to me they're even more fascinating. The uptime and integrity demands are arguably higher than those of a real brokerage. A slow trade in a real brokerage might cost one customer a certain amount of money. In fact, depending on how the ticker goes, the mistake might even earn the customer more money. But every complaint about FSX's performance damages its status as a faithful brokerage simulation, and that in turn damages the value of its entire community. Building a top-tier brokerage website would be hard enough. Our goals are much higher than that.

eBay built a global marketplace out of Pez dispensers and Elmo dolls. They made it possible for you to find that one guy out there who wants to buy your dusty old deluxe chartreuse dinglehopper. He completes his dinglehopper collection, you get some cash and some extra space on your shelf, and the world's a better place. FSX will do the same thing for investments and investment managers. If you think you have management talent, we'll prove it for you. If you want hedge fund-level talent cheaper than the cheapest mutual fund, we'll find it for you.

If you'd like to see a preview, add the Fantasy Stock Exchange application to your Facebook account. If you're a smart software engineer in Silicon Valley and want to join something big while it's still small, .

Today's resume peeve

| | Comments (0)

If you're talking about things that happened at a prior job, "led" means you acted as leader. "Lead" is a metal that alchemists turn to gold. I'll give you the benefit of the doubt if "lead" is the only purported verb in a bullet point, but there is no doubt about "lead and managed."

Google tech talks online

| | Comments (0)

Occasionally, external speakers give us permission to publish videos of their talks at Google. Here's the first batch. More to come.

We're hiring!

| | Comments (0)

If you're a Firefox developer and would like to join Google's Firefox team, check out our job listing and send in your resume!

About this Archive

This page is a archive of recent entries in the work category.

poker is the previous category.

Find recent content on the main index or look in the archives to find all content.

Powered by Movable Type 4.2-en