The Healing Power of Greed?

In an earlier post on “software factories”, I touched on the question of why America’s software engineers were not, by and large, working on projects that would enhance American software competitiveness:

…the finest software minds of the current generation are not interested in solving the American productivity problem, but are interested in profiting from what I elsewhere call flash-fads, huge blockbuster moneymakers that last for the comparative blink of an eye but, like the Pet Rocks of my youth, make lots of money.

This is probably rational behavior on the part of these software engineers.  Sacrificing current income to make the income of the nation greater over time is a bit like voluntarily helping to pay down the national debt by giving extra money to the Treasury: patriotic, maybe, but certainly not a mass choice.  (One of my partners told me this morning that some $81M had been contributed to the Treasury in this fashion, versus a national debt service obligation several orders of magnitude greater.)

But how does the rational behavior of individual software engineers feed the public good?  Our market orientation in the U.S. gives us a touching faith in what we might call “the healing power of greed”, an exaggeration of Adam Smith’s point of about the “invisible hand” into the notion that individuals can do whatever we darn well please and somehow benefit the polity.  In this raw form, it probably ain’t so.

Yes, over time the drive for hundreds of flash fads has in fact made software development more productive.  It is probably an order of magnitude cheaper and quicker to bring an application to market today than 30 years ago, when I got started in the tech business.  But these benefits accrue to everyone, and don’t provide specific advantage for our country.  Which is what we need to remain competitive.

It seems we can’t escape from a policy that targets innovations which are game-changing and then invests in them directly from the public purse or incents the private sector to factor innovation projects in among the Pet Rocks.

Your thoughts?

Link Quality

I’m sure many people are on top of this, but isn’t there a big difference between different kinds of links in the social network based on their quality?

I’m thinking about this because I’m gearing up on Google+, which features the idea of circles, discrete collections of contacts with different characteristics: friends, colleagues, running buddies, frenemies.  And a lot of the discussion in the service about circles revolves around what to do with low-quality links.

In finance, margin is a measure of the quality of a business’s income.  If it costs a lot of money to earn your revenue, it’s not as high-quality as higher-margin revenue.  High margins inhere to businesses that create differentiation.  Low margins are the h**l into which weak, aging, or commoditized businesses descend.

So with links.  We all have 80-20 rules with our link forests, where some few are priceless to us and most are almost worthless.  Should be a weighting in measuring social network influence or the like.  Probably someone is doing it already.

Thoughts?  Want an invite to Google+?

App Connectivity Empowers Apps

I’ve been pleasantly absorbed getting an iPad up and running the last few weeks, and I’ve learned something that is applicable to any client device: apps gain most of their power from interacting with other apps.

Case in point: I use Tripit, and got another travel-oriented app called FlightTrack (in fact I paid for FlightTrack Pro, as much because I believe in paying for software as because I like the Pro features (although I do)).

Well you can type flight numbers into FlightTrack, and it’ll give you vital info about them, like mainly whether or not they’ll be on time. But if you integrate FlightTrack with TripIt you get automatic lists of all the flights in your TripIt trips, without lifting a finger. Power of integration.

So now, on the mobile, I get a flight itinerary from the travel agent, forward it to TripIt, who parses it and turns it into flight, calendar, and other relevant info, then feeds the flight info to FlightTrack.

This is the future of apps, this is the future of app-driven programming from the cloud.  Workflows of app(let)s dynamically assembled to accomplish a one-time or recurring task.

(Now in this case the apps were statically assembled, a big hassle with manually typed-in passwords and all kinds of other (shudder) legacy stuff.  But you get the idea.)

Incidentally, this is one place where Android shines.  The operating system embeds connectivity through a “publish and subscribe” facility exposed to users via the “Share” menu.  iOS jumps through hoops to accomplish the same thing, generally on a one-off app-by-app scheme that is, frankly, flakey.  (I’m not especially an Android zealot, but this is one case where it’s clearly ahead to my mind.)

How do you chain together or connect apps to accomplish tasks?