Category Archives: Work

Technology, techno-mems, and thoughts on life in the working world.

“Professional WordPress: Design and Development” 2nd edition


My five-year love affair with WordPress hits another milestone on January 9, 2013 when the 2nd edition of the book I co-authored with Brad Williams and David Damstra is released into the wild. You can pre-order it from Amazon now and you’ll have it the day it’s released. Not as exciting as getting “The Deathly Hallows” at midnight, but if you want to front-run a New Year’s resolution click and pay now. You’ll expand your knowledge of PHP, CSS, WordPress themes, WordPress plugins, or how to represent multi-valued tree oriented relationships in MySQL, and look like a genius by the time your friends, family and co-workers have already forgotten what they said in late December.

And my usual offer stands: if you buy it, and I run into you (at Starbucks, a conference, work, airport, casino or Phish concert) I’ll sign your book. If you doubt our paths will intersect, send me an ex libris sticker, a 2×4″ mailing label or a sheet of acid-free writing paper and I’ll sign that (with personalization), send it back to you, and you can make your own signed edition. Yes, I end up losing a dime per autographed copy by spending 55 cents on a stamp and envelope, but (honestly) it’s about expanding our readership.

Five Network Services You Need To Use

Here are five network services that I use, consume, promote and on which I rely heavily. My affiliations with them are purely tangential (I’m on the board of the MIX, which does indirect business with kiva.org; and a friend works for Evernote) and this isn’t paid or promotional; I just felt like vamping on where I invest my modicum of work time, free time and money.

Kiva Kiva is a microfinance funding service that aggregates small-scale lenders to provider sub-funding for microloans around the world. Kiva works with a variety of field partners who do the face-to-face work of finding borrowers, collecting payments, handling currency, default and delinquincy issues, and aggregating small sums into the $800-$8,000 dollar range that’s impactful. It’s not charity – you get paid back, and can repeat the loan cycle just as a bank would, but with your intellectual capital replacing fees and interest charges. For as little as $25 you can support a loan in places like Rwanda, Tajikistan, or Cambodia. I started with about $300 in funds, and have just made loan #64 – essentially I’ve reloaned the same funds nearly five times over, and along the way helped start a taxi business, retail stores, a bar and restaurant, and financed the construction of houses. There’s a new free trial offer available: sign up and you get your first $25 loan paid for by an anonymous donor. Where else will someone give you $25 to change the fortunes of a person halfway around the world? Click and loan.

Kickstarter Kickstarter is the Small Business Administration and Facebook rolled into one – it’s the future of funding small businesses, the way America grew and innovated during the 20th century. If you’re looking for the next Hewlett and Packard garage, it’s likely being discussed, funded and promoted on Kickstarter. In the last year, I’ve funded a two print and electronic book editions of my favorite comics, the newest Renaissance CD, an independent movie about a mitzvah project, and my newest favorite, Devi Ever’s Console guitar effect box. The brilliance of Kickstarter is tying the crowdsourcing aspect of a Kiva with the notion of “early access” and rewards – if you back a project, you’re typically offered some extra swag with it; it’s the premium you receive for providing seed funding. So far I’m batting about 0.800 on projects that reached critical mass, and every funded project has delivered on the premium gifts (a nice baseball from the mitzvah movie and a signed poster from a King Tut City Gardens rockumentary). You may pay a premium for the swag, but you can say that you were there at the beginning.

Yelp After our favorite restaurant in the Miami area (Chef Allen’s) closed, we needed to expand our culinary horizons during a recent short vacation. Yelp to the rescue: crowdsourced commentary on everything from car repair shops to charcuterie. You need to discount a bit and check the timeliness of some comments, but for a first order approximation to a real time dining guide, it’s hard to beat. I found my new favorite Indian buffet in Sunnyvale via Yelp – ‘nuf said.

Dropbox. I work on at least two different computers a day, and when I’m editing a slide deck or book chapters, I frequently need to update my collaborators with the latest version of a file. Dropbox provides a free (for limited capacity) service that lets you sync folders between multiple machines, and share folders with multiple users. Whether it’s creating a family photo folder or a workflow for our book editing process, I use Dropbox at least a dozen times a week.

Evernote. Evernote is the single service I use more than anything else excepting email. Think Dropbox for notes, except the notes can be organized into notebooks (folders), and contain text, images, links, or other media. See something you want to research later? Take a picture of it and stick it in a note. Suddenly remember something to add to the “to do” list while in a parking lot? Add it to the tally via the Evernote app for your phone. I use it for everything from meeting action items to lists of research ideas to upcoming events or future “to do” lists, with about 50 notes in flight at any time.

Instagram Is About Context

There have been lots of bytes written about Facebook’s acquisition of Instagram, with the eigenvectors of sentiment pointing in roughly these directions: keep it away from Google, pick up wickedly smart engineers, build on their mobile expertise, get a rapidly growing user base at a reasonable cost per user.

The real answer (in my network-centric view of the world) is that Instagram is worth a billion dollars, a re-filed S1 and pre-roadshow signal to noise diffusion because it makes Facebook’s advertising platform more valuable through increased context. If a picture is worth a thousand words, then context about a photo is probably good for a few Gbytes in a map/reduce job.

What can you learn through Instagram? Where I take pictures. Who I share them with, who follows me and who I follow (perhaps shedding light on not just subject but style and composition). How I color-adjust the pictures provides more clues – am I nostalgic (sepia tones, black and white) or having fun (color over-saturation)? Know who is in the pictures, and where they were taken, and there’s significant weighting inferred for the edges in my page, group and friend social graphs. The data available to advertising campaign management is increasingly rich and timely — if your business depends on campaign generation, then creating richer campaign marketing data is nominally a high return investment.

I’ll be blunt: Facebook can do with Instagram what Yahoo! might have done with Flickr. It’s not about the content, it’s about what the content construction and conversation tells you.

So yeah, I can see why Facebook would spend a billion dollars on Instagram. Andy Balo (Kickstarter principal) provides some other metrics for measuring how far a billion dollars goes, but they’re all trailing indicators. An incremental $40 million in advertising revenues puts $1 billion of market cap back into a company that will be (supposedly) trading for roughly 25x annual sales post-IPO. That’s a leading indicator.

Maybe I’m being way too optimistic, but if Facebook can trawl through my Instagram photo data, then perhaps I’ll stop seeing ads that offer dental insurance to employees of a former employer.

Networking Killed Kodak

I’m watching with both sadness and bemusement (perhaps the definition of schadenfreude) as Kodak limps toward bankruptcy. The company that gave us song titles (Kodachrome), vernacular (Kodak moment), iconic Olympics television ads, and made it possible for the consumer to chronicle his or her life is now about to end its own corporate lifetime. Disclaimers: Kodak was a customer of mine when I was at Sun Microsystems and Kodak sued Sun over some patents. I didn’t, and don’t, benefit one way or the other from this, but I’ve been watching this situation evolve since 1990.

The common wisdom is that digital photography killed Kodak. Digital images were the secondary effect. Networking was the primary. Kodak’s consumer business is about narrative: they thrived because people wanted to tell stories through snapshots of their lifes. The places I remember, to quote the Beatles. Kodak’s tag line was “Take Pictures – Further” for quite some time, a snapshot of both imaging and sharing the thousand words to do justice to the picture.

Kodak had the first digital camera (I had a consumer version of it; it used a floppy disk and took almost ten seconds per VGA quality image). They own a truckload of patents in digital imaging science, color science, and image manipulation. But their business model was predicated on taking pictures, having them developed, printed, and mailed to relatives in Iowa. It wasn’t just film; it was chemicals, paper, and the photofinishing “mini labs” that popped up in every chain drug store, camera shop and mini mall. As soon as that entire vertically integrated business was challenged by kids with smart phones posting pictures to Flickr, Photobucket, and now Facebook, the consumer business entered its denouement. Doesn’t matter that Kodak invested in Ophoto for digital image sharing, or that they make a really nice waterproof digital video camera. The higher end camera companies were able to continue to push professional grade innovation down into the consumer space, and for hack photographers like me, better glass and effectively zero cost of “wasted frames” meant that I began taking many, many more pictures than before. Every picture I take goes into an email, through MMS, up on SmugMug, or onto Facebook. Kodak adds no value to those processes, so I became a Kodak non-consumer.

Kodak bet against networking. Their business model was not predicated on telling analog stories using digital images. Adobe (Lightroom and Photoshop, not to mention the rest of their suite) and Smugmug (for high volume sharing and archival) represent the endpoints that Kodak could very well have defined had they bet that broadband networks would be cheap, ubiquitous and intimately attached to the vast majority of imaging devices (read: camera phones). They would have created a vertically integrated value chain from image capture to context (borders, ribbons, tags, clean up, editing) to archival to personal narrative. It’s not just the consumer business — Kodak also had a large medical business (X-rays and medical films). If you’ve read stories about remote radiology or remote diagnostics, you’ve seen how networking and digital imaging conspired against Kodak there as well. Both aspects are necessary; simply having great digital imaging but no networking capability means you’re making analog prints and using FedEx as your network layer to get a second opinion.

Moral of the story: You can’t stop Moore’s Law and Metcalfe’s Law from disrupting businesses. If your business model changes as a result of netowrking, you need to figure out how to deal with it. Once the publishers realized that amazon.com is a re-intermediator, not a dis-intermediator, and that building marketing, pricing and distribution relationships with amazon.com would actually increase sales of their entire front and back catalogs, they survived. Everyone who had a Brownie camera, who waited patiently for the fat picture envelope to return from Rochester, New York, is a bit sadder that the Kodachrome is being taken away.

Sandy, Steve, Scott and Succession

I had a rare, unexpected and completely random treat a few weeks ago – forty-five minutes of informal conversation with Sandy Weill sitting in an airport lounge. When the people at the Red Carpet Club denied Mr. Weill entry, I offered to host him as a guest, and was sharply reminded by the staff that guests must “enter, leave and stay with the member.” Mr. Weill took the directive to heart in every way, and graciously offered his opinions on leadership, travel, and succession planning. He is, in every sense of the word, a mensch.

Steve Jobs had stepped down as Apple CEO just earlier in the week, and Sandy and I talked about how Apple went through a variety of phase transitions around of its Chief Executives. We moved from that somber topic onto succession planning, something that I had witnessed firsthand at Sun, and in which he had deeply participated while at Citibank. He said some nice things about Scott McNealy, again, heartfelt and sincere after more than ten years since their last meeting.

Here’s what I took from our chat-with-cheap wine: Stick to the facts when evaluating a peer’s performance. Compliment people you respect whether or not you agree with them and their decisions, because you respect their decision making process and execution. Share personal details to add color but do not boast. Taken together, those rules of executive discource frame reflections on how institutions – companies, universities, associations – change over long periods of time.

Succession planning isn’t hoping that your successor is just like you; it’s finding a leader who figures out how to amplify his or her vision through the senior staff. The successor’s words and actions need to resonate and reverberate through the halls of the company. It’s more music theory than organizational theory; it’s about blending in a new voice in a complex harmony.

Concall Blues: The Album

After another evening of later-night concalls, punctuated by the Bubba on lead guitar (with adequate doses of crunch, fuzz, wah and phase shifting), I mentioned in passing that blues guitar accompaniment makes conference calls that much smoother. His response: an all-blues album of songs about conference calls.

Here’s my proposed track listing:

1. 65 minutes. The song is listed as 3:45 on the CD, but it runs 4:30 with two false endings.

2. No Pants. Discovering untold truths, and things better left to the strangest of imaginations, discounting for attendance at sci-fi conventions. Contains the previously unknown Mr. Peanut riff.

3. Mute All Lines. A thoughtful exploration of the tragedies of multi-tasking, especially around children, dogs, and bathrooms.

4. Next Slide. Sampling everything from Gregorian chants to Jay-Z’s sampling of the Doors and superimposed over a synthesized back beat, it’s the soulful anthem of those dying by Powerpoint.

5. Repeat. Heavily influenced by Frippertronics, the middle parts of Philip Glass’ Einstein on the Beach, and the entire catalog of Yngwie Malsteen, this theme and endless variation starts with the most rudimentary of music theory and ends up making Bach glad he’s still dead.

Steve Jobs and Buzz Lightyear Changed My Life

Social media is lit up tonight from the warmth of words expressing sympathy, sorrow, and condolences over the death of Steve Jobs. Everyone has their story of how Jobs changed their life – in a chance meeting in the elevator, at a conference, through his insistence on insanely great product design. Steve Jobs indeed changed my life as CEO of Pixar, via Buzz Lightyear,something that I say in almost every “Intro to Hal” talk I’ve given in the last 10 years.

Midway through 1995, Sun Microsystems was riding a wave that wasn’t quite yet attributed to Internet surfing, but had its origins in the tidal forces that made the at sign part of our vernacular. We had introduced a new programming language called Java that May, and during one of our engineering conferences, I sat at rapt attention while our keynote speaker — Steve Jobs — introduced his talk with the trailer for Toy Story. Having learned a small fraction of the interactive computer graphics canon (enough to say “Gouraud shading” with a straight face), I was immediately blown away. The texture mapping, the motion blur, the quality of the rendering — it didn’t seem possible within what was “normal” data center architecture, until Jobs told us how it was done and what part Sun Microsystems had had in the rendering farm that generated the movie, frame by animated frame. The “thank you” poster with Buzz Lightyear and a Sun logo that we received as a party favor at that conference still hangs in my home office. Up to that point, computer animation was an interesting experiment, but it hadn’t entered the mainstream; four months later I was taking my then-four year old daughter to see Toy Story at its Thanksgiving weekend premier, and stayed until the very end to see the sysadmin and server credits.

Toy Story’s release marked the point at which it became socially acceptable to be a nerd. Email, the web, blogging, social media and wireless client devices bled nerd colors onto everyone else, but the summer of 1995 was definitely the tipping point. And Steve Jobs pushed us front and center. Family conversations that opened with “What do you do?” no longer involved companies named Xy-, Mega- or something-ix; they revolved around talking about what computers could do in the social mainstream.

Of course, Steve Jobs took things to the next level of abstraction. After making entertainment a function of computers, he made computing a function of fashion. We love our iPods, iPhones and Macs because of their elegant design; celebrities talk about what kind of phone they use and we follow them on social media sites. We’re all nerds now. We even have our own TV show (and I’m referring to Big Bang Theory, not Eureka or The Guild even though those are equally outstanding answers).

For every comment about Jobs’ style as CEO and engineer, consider this: What if most executive boardrooms, state legislatures, and our Congress functioned with the same ruthless passion? What if a design — for a bill, a strategy, a foreign policy — that was so obviously underwhelming was simply met with “This is stupid” and forced into re-work? What if we worried incessantly about the design and experience of our work product, and let the profits come as a result of a job well done? There are management and leadership lessons beyond those recorded in the Harvard Business Review, but significantly more valuable.

Thanks, Steve, for the impact you’ve had on nerds everywhere. To infinity, and beyond.

Do Facebook Lists Leak Personal Information?

Since Facebook introduced Lists a few days ago, I’ve had two people comment to me about actions I’ve taken adding them to pre-defined lists — actions that should have been completely and totally private. This makes me believe that the Facebook lists feature bleeds private information or actions.

Background: Facebook will pre-define lists for you based on your education, work, geography and other easily sortable criteria. It then suggests people to add to those lists, usually based on mutual friendships with those already in the list, or common data such as both having attended the same school. It’s a nice big JOIN problem at its finest.

Problem: I have a friend who is married to one of my fellow Tigers. She and I have mutual friends who are all alumni as well, and I tend to think of her in the “Princeton” category. So I put her in the Princeton list (at Facebook’s suggestion, I should add, again, probably based on common edges in our social graphs).

The Leak: My friend was notified of the list addition and asked to confirm “Princeton” as part of her education (again, assuming that was the criteria that generated the suggestion). Major, major privacy #fail: The fact that I add anyone to a list is private; it’s how I sort my friends and acquaintances and my criteria and grouping algorithms are completely and totally my business.

Unless Facebook would like to tell us that list additions are communicated to the other party, this seems to intrude in my own categorization. What if I create a list called “Ignored Former Coworkers” and add people to it, mostly so that I can avoid their updates that I find distracting? Are they notified of my feelings toward our time together? My guess is that if the list title doesn’t match one of the criteria used by Facebook, there’s no additional information leakage, but my two simple experiments to confirm this weren’t conclusive.

Advice: Create a list for your close friends and family members, and ignore or delete all of the other ones until Facebook figures out how to avoid leaking our non-obvious inclusion criteria.

Another “Like” For The WordPress Community

Part of this blog’s recovery has been switching to the Hybrid theme, with which I’ve experimented a little before. It’s neat, simple, supports a wide variety of child themes, and there’s a very busy support forum. I’m both amazed and thankful that theme author Justin Tadlock personally answers many of the questions, not with “read the code, n00b” but with specific, detailed answers on anything from CSS to menu construction. Oh yeah, the theme is free. Free as in beer as well as free as in liberty and free as in free-spirited creativity. Joining the support forum costs you a nominal fee (something measured in Starbucks coffees, not steak dinners).

A radio friend once told me that the best DJ sounds like he’s sitting in your car, talking to just you. Tim O’Reilly told me (25 years ago) that the best technical authors write as if they were teaching you to play a game, sitting next to you. Those styles are conveyed, with <emph>.

Me and Bobby Tables

Exploits of a Mom - xkcd

xkcd #317


Brad Williams and I have shared a few Bobby Tables jokes while working on the manuscript  for Professional WordPress.  SQL injection attacks are nasty, somewhat common, and often require a complete rebuilding of your site to purge and move on.

If you’re wondering why the snowman looks a little bare, without pictures, sidebars, or other color commentary, it’s because yours truly was hit by a SQL injection attack sometime on Tuesday night. In this case, it was a thorough attack on every page, post and media library entry in the WordPress MySQL tables, a little bit of SQL that appended a piece of Javascript redirecting the browser to a site that I supposed tries to install malware, collect personal information and otherwise make reader’s lives less secure. I discovered this by accident while noticing that my browser was attempting to access a link that I never put into any posts; within an hour I had edited the index.html for my site, ensuring that all traffic would see an apology and not an attack vector.

Without laying public blame, I’m not sure if it came in through a backdoor in my service provider, or via the front door of my WordPress installation, and my (former) server provider refuses to share logs or other information that might exonerate my own site administration. This is the last straw with said provider; last summer it was performance issues (that were also blamed on me, not their shuffling of MySQL instances) and their continued promotion of add-on services. If I thought their basic services were well-run, I wouldn’t be so annoyed.

Upon discovery, I did what any reasonably panicked person would do: dumped the WordPress content in an extended XML file, wrote some scripts to edit out all of the bad stuff (and remove Google AdWords short codes that were in about 250 entries, since I no longer use AdWords on the site), set up a new hosting account with a new provider (BlueHost, at Brad’s suggestion), and re-loaded all 650+ pages and posts. The longest time pole in the tent was getting the DNS entries updated (since I did two updates, one when I took down the site and one when I moved it to a new provide, and had to wait for the first one to propagate).

There’s still a lot to do — I need to hand-edit the photos (since I didn’t download them first); sidebars, theme work, Google Analytics, and other decoration. At the same time, this forces me to work on a few things that I’ve had in notes but not in action plans – theme updates, cleaning up sidebars, adding in appropriate SEO hooks, and most of all, a conviction to stay up to date with WordPress updates.

Like Frosty, I’m back, need to put that magic hat back on my head, and ready to play again.