Author Archives: Lou Franco

Can a content site be better with Ads?

I noticed that Horace Dediu, the founder and main author of asymco, recently started adding sponsored content to his site. Typically, his articles are data-backed analysis of the mobile market. To get a quick idea if you don’t know it, see this recent entry titled Revolutionary User Interfaces. In it, Horace uses data visualizations to show how Apple disrupted the phone market with multi-touch.

It happened despite having a clear, front row view of the transition of the industry from mobile voice to mobile computing. The shift in the basis of competition from “connecting people” to “connecting people to data” ended up being a classic disruptive trap. Many will argue that it was the failing of individual managers. Perhaps, but how did they conspire to fail simultaneously?

When you see disruption happening, it’s natural to seek out a cause, a pivotal magical “force” or event that enabled the weak to humble the strong–the proverbial sling that enabled David to defeat Goliath.

The article is worth reading, but what I wanted to point out was how his sponsored content is as interesting as a typical article. This one for Textastic reads almost as a follow-up.

With the new touch-based devices of today, we are seeing similar migrations of utilization to new jobs to be done. The simpler creative tasks migrate first and the advanced (or emergent) uses follow. Like with the microcomputer, the first common creative task for tablets happens to be text-based editing.

I have been giving a lot of thought to this kind of advertising, where it is as useful as the content to the reader. This is more than just relevance and unobtrusiveness, as I think advertising from The Deck accomplishes on sites like Daring Fireball. Instead, it turns advertising into something that I would read eagerly and perhaps miss if it were gone.

2011 Lessons Learned

While looking over my 2012 goals, I realized that I hadn’t really thought about 2011. This year I want to practice regular renewal and recommitment to my goals. In the past, I achieved my goals more or less, but that wasn’t through a practice of recommitment. It was a chaotic result of my other obsessive behaviors. I am working to make this a more repeatable process this year by constantly evaluating where I am.

To that end, this is what I learned in 2011.

This year brought big changes in my professional life. Atalasoft was acquired, changing my job somewhat (more focused on product development, but with a more aggressive roadmap and bigger team). Having this focus has helped make sure we deliver our roadmap. Additionally, it has let me direct all of my energy at product management, which brought me to consuming the works of Horace DediuClay Christensen, and exposed me to the “Jobs to be done” framework, which has had a profound impact on my thinking. While trying to find out more, I met Bob Moesta, who generously spent an hour teaching me more details of the framework with plans to talk more about it.

Lesson #1: Focus allows you to make outsized gains in the area you focus on.

This year, I have found a purpose that has helped me improve my networking. Drawing from Seven Habits, I have long thought that the best “uses” of a network was to help people find each other for their mutual benefit, but I haven’t been good at thinking of ways to do that proactively.

Through my work with the local Regional Employment Board, my exposure to so many job seekers and employers, and my belief that high unemployment is the most important problem to help solve, I have set the broad goal of trying to make connections that result in hiring by myself and others. Additionally, I have blogged some practical tips about job seeking for programmers, and I tweet every good local tech job I see.

Lesson #2: A goal centered around a purpose is easier to achieve

My biggest goal of 2011 was to “get in better shape”, which I defined as having a BMI and health measurements (blood pressure, cholesterol, etc.) within normal ranges. I started the year trying out 4-Hour Body and trying to get back into running, but when that didn’t work, I finally joined Pioneer Valley CrossFit in June. In December, I got serious about eating better and adopted a paleo diet. I started 2011 at 180 pounds and ended at 153, with 80% of the loss after June. More than that — I am more fit than I have ever been in my life.

Lesson #3: Be willing to change tactics quickly if they aren’t working.

This year I hope that I apply these more consciously. What did you learn in 2011 that will make 2012 even better?

2012 Personal Goals

I was inspired by Heidi Grant Halvorson in the Harvard Business Review blog today to work on my 2012 goals:

Get specific. When you set yourself a goal, try to be as specific as possible. “Lose 5 pounds” is a better goal than “lose some weight,” because it gives you a clear idea of what success looks like. Knowing exactly what you want to achieve keeps you motivated until you get there. Also, think about the specific actions that need to be taken to reach your goal. Just promising you’ll “eat less” or “sleep more” is too vague — be clear and precise. “I’ll be in bed by 10pm on weeknights” leaves no room for doubt about what you need to do, and whether or not you’ve actually done it.

This is similar to the SMART philosophy of goal making (good goals are Specific, Measurable, Attainable, Realistic, and Timely), which I try to follow.

Another influence on goal setting for me is Covey’s Seven Habits. The last one, Sharpen the Saw, suggests we work to increase our Mental, Physical, Emotional/Social, and Spiritual/Renewal capacity.

To that end, I developed these personal goals for 2012:

Mental

  • Publish 75 blog posts
  • Work 3 hours per week on personal coding projects
  • Publish 3 apps

Physical: work out 5 days/week, and

  • Be able to do 10 dead hang pull-ups
  • Be able to do 10 ring dips
  • Be able to bench press 155 pounds
  • Rx 30 workouts at CrossFit
  • Eat paleo food on 275 days

Social/Emotional

  • Do 100 hours of community service
  • Eat meals with 25 different groups of people

Spiritual/Renewal

  • On last weekend of each month, spend at least two hours alone somewhere outside and unpopulated. Look over goals and plan the next month.

Gift a story for Christmas

I have a friend that is very hard to shop for. One day, for his birthday, I tried to make a list of everything he likes. After an hour, I had this:

He likes to tell stories

He’s one of the more prolific and interesting story tellers I know. So, from then on, it was a lot easier to think of ideas — I just tried to find a way for us to spend a few hours doing something weird. Fencing lesson, new restaurant (with food he hasn’t tried), kayak to an eagle’s nest — every one of these things has made it into his story repertoire (enhanced for the listener’s pleasure, of course).

Probably, there’s a story-teller in your life to help with a new experience. Really, though, couldn’t we all use that?

SOPA Solution: Block Congress

A few weeks ago, I tweeted:

 

Today, I was wondering how easy that would be, and spent about 10 seconds in google to find that Congressional staffer IPs have been outed by Wikipedia for editing their boss’s pages:

Wikinews contributors have discovered that members of the United States Congress or members of their staff have recently been making questionable edits to Wikipedia.

[…] In one instance, Wikinews found that someone with one of the IP addresses, 143.231.249.141, began to edit the Wikipedia article for Steve Austria, the Republican representative for Ohio’s 7th congressional district.

[…] Another individual, with the IP address 75.187.63.132, also removed the allegations of plagiarism from Austria’s article in February. The individual removed what they called “Politically Motivated BS” from the article of Deborah Pryce.

To confirm, I put the first IP in an IP Locator tool and got this:

From here you can figure out an IP range to target, and then it’s trivial to serve them different content (perhaps giving them a taste of what SOPA IP blocking would be like). I leave that as an exercise to the reader.

To be effective it needs to be done by sites that Congressional staffers actually depend on or on enough smaller sites to get media attention.

What is the Jobs to Be Done Framework

I recently have become interested in the Jobs-to-be-done framework outlined in The Innovator’s Solution by Clayton Christensen. To start to apply it at Atalasoft, I wrote this blog about how an SDK’s job might be understood and described the framework this way:

Briefly, you look at a product as the job it was hired to do, rather than its category, features, benefits, who bought it, etc. Christensen makes the argument that jobs are enduring over time (as products and customer segments change).

and concluded:

Applying this insight gives SDK makers a way to target features, not at just the job the SDK does for their developer customer, and not just at what their application does, but also at the job that the end-user is trying to do.

Today, I was sent a quora link where the JTBD framework is being discussed. I’m looking for JTBD tactics, so I loved this part from Chris Spiek:

If we were doing jobs research around the Starbucks offering, it would start with something like: “tell me about the moment when you first considered going to Starbucks. Where were you? What were you doing? Who were you with? What time of day was it?” The interview would move through the decision making process (what else did they consider?), the consuming process (being at Starbucks), and the end with “looking back” and understanding their concept of value (what it did for them) upon reflection.

By conducting a number of these interviews, you can begin to see “jobs” emerge.

To see an example of jobs being discovered and filled with Social Media sites, read Whitney Johnson’s What Job Does Social Media Do?

If you hire social media, especially to promote your business, you will likely have your own reasons, but ask yourself the question, “What problem am I trying to solve?” This will likely get you to the functional element. To peer into your emotional and social why, also ask “what progress am I trying to make?”

These are all great starting points to getting to know JTBD — I will be posting much more on this to help myself learn more about it.

Sunday is Pushday

I believe that making a commitment public helps you stick to it. So, because I want to make more of my private code public on github, I am treating each Sunday as “Pushday”.

On every Sunday, I am going to push something, no matter how small, into github. If I have nothing useful, I will write something new. My only restriction, is that the push must be useful (a bug fix, new feature, a minimal project).

Today, I am taking one of the JavaScript files from my pet project ASCIIMatic, and making it available under BSD. ASCIIMatic takes simple descriptions of diagrams, translates them into dot, runs it through the dot interpreter to get a set of drawing instructions, and then draws the result in ASCII art. The vision is to make it easy to include UML diagrams in your source code comments, but it has a long way to go to do UML. Right now, it can do a some simple box and arrow diagramming.

Today, I pushed ascii-drawing.js, which implements a simple ASCII drawing surface with draw line, rect, and text commands.

It is available under the asciimatic-scripts project on github.

Planning out a Blog

As I mentioned last week, I am participating in National Personal Project Month (NaPerProMo) along with Plan B Nation and others.

My plan is to write every day, but publish on a once or twice a week schedule. This will help me build up a backlog of posts, so I have something to post even if I don’t have time to write. I also post about once per week on my work blog at Atalasoft, and I’ll probably use those posts as jumping off points.

To help me get started, I spent the last two weeks planning out what I want this blog to be about. In the past, I have had a hard time coming up with anything to write about. I had focused on programming (specifically iPhone programming), but I do most of my writing about that in StackOverflow answers, and my posts were just elaborations on common questions.

I came up with this plan:

  1. Pick five categories that I can write about.
  2. Brainstorm 10-20 topics in each category. If I can’t think of that many, throw out or alter the category.
  3. For categories that don’t pan out, try to find a spin on the topics I generated for it, so that they fit in one of the better categories.
  4. Pick a week’s worth of topics and put them in a queue.
  5. Each day write the next one, and put another in the bottom of the queue.

The topics that I ended up with are:

  • Software Business: This is obvious, since this is what I spend the bulk of every day thinking about
  • Programming: I have been programming for a long time, I have some personal projects that I want to open-source, and it also naturally fits into what I know and think about. I intend to get away from the more technical posts that I typically write, and focus on high-level ideas and follow my projects’ progress.
  • Programmer’s Job Market: Ever since I became a member of my local Regional Employment Board, I’ve been thinking more about the labor market and how it’s changing for programmers.
  • Reviews (books, apps, etc): I read a lot about marketing, business, and other non-fiction topics. I don’t read nearly enough for book reviews to be a category, so I expanded it to apps and other things that I use.
  • Riffs: Tweets, Hacker News, other blogs, my own past blogs — these are all fertile ground for topic ideas. It gives me an opportunity to link to others, and make this blog part of a larger conversation.

Some categories didn’t work out. For example, I am a CrossFitter, and recently joined my gym’s Paleo club. I feel like I have interesting things to say about that, but they are neither my expertise, nor are they similar to other topics I will blog about. I will still be able to fit it in somewhat, because one of my programming projects is related to this.

I recently switched over to Trello for managing personal information, here’s what my plan looks like in it:

The first column is the queue of upcoming posts, and the next five are the five categories I identified with a list of topics. I color-coded each category, so that the queue would show that I was mixing between the categories. The final column is a list of finished posts.

I am obscuring the topics because I don’t want to commit to these just yet, and since I generated more than 50 ideas, I know that some of them will never be done. I saved a full snapshot to possibly discuss later.

I also decided to turn on comments as an experiment. I’ve been using Disqus elsewhere on this site, and the latest RapidWeaver supports it for blogs, so I turned it on for now.

Making an SDK Better at its Job

Clay Christensen’s The Innovator’s Solution [amazon affiliate link] describes a way think about products, called the jobs-to-be-done framework. Briefly, you look at a product as the job it was hired to do, rather than its category, features, benefits, who bought it, etc. Christensen makes the argument that jobs are enduring over time (as products and customer segments change).

His example is a chain restaurant looking to increase milkshake sales.  After using traditional methods and failing, they set out to discover the job that milkshakes are hired for. Here’s Christensen’s account:

The key thing here is that they found a customer segment (morning commuters) that would never have been defined beforehand. Also, the metrics that commuters considered important (long-lasting, quick purchase, fits in cup holder, etc) were nothing like what they would have asked (level of chocolate, healthiness). Jobs-to-be-done points the way to the right innovations for a product to be a better employee at the job it was hired for.

Of course, I want to apply this to Atalasoft and our .NET Imaging SDKs, but SDKs are a weird case. They have to do the job that our customers’ customers want to do (we make tools for toolmakers). If I look at only our customers, I will see jobs that don’t get to the root of the problem.

In this table, the first column is something DotImage does, the second is something that the application using DotImage might use that for, and the final column is the job being done by the user of the  application.

SDK JobApplication JobUser Job
Turn a Code 39 Barcode into textTake a 1000 page TIFF and split it into many documents based on barcodesScan a pile of paper as one document, but have the software know how to split and import it automatically
OCR a TIFF and produce a PDF with textScan a document and build a search index of the text in it.Find all documents related to a specific customer to comply with an e-Discovery document request.
Scan a document from a website and view itImport a scanned document into a repositoryProvide ID and other documents when signing up for a bank account
Annotate a documentProvide a document collaboration workflowAsk a question about a specific line item in an invoice.

As you get more to the right side of the table, you start to see enduring jobs – 100 years from now, you’ll have to show ID when you open a bank account, and invoice discrepancies will need to be resolved, and the same was true 100 years ago.

Applying this insight gives SDK makers a way to target features, not at just the job the SDK does for their developer customer, and not just at what their application does, but also at the job that the end-user is trying to do.

December is Plan B Nation NaPerProMo

A few years ago, to get myself ready for Rich Hickey’s Northampton Clojure talk, I decided to do an intense 20 Days of Clojure series, where I learned one new thing and blogged about it each day in March 2008, leading up to the talk. It was a great experience and probably the most popular content on my site.

Today, Amy Gutman, on her new Plan B Nation blog, is suggesting working every day in December on moving a personal project forward, or NaPerProMo (National Personal Project Month — a take on National Novel Writing Month).

I’m in.

My personal project will be to write 31 entries in this blog, although, like Amy, I will probably only publish a couple per week and save up the others.

In a comment on her blog, I offered participants a free copy of Habits, my iPhone app for forming habits, to all participants (until I run out of promo codes). If you want a copy, make some kind of public commitment to NaPerProMo (tweet, blog, comment on Amy’s site), and then let me know about it by using my contact page.