LinkLog: Deleted All The Software On The Planet

From Richard P. Gabriel – The Science of Nothing At All:

Imagine this: Dionysus has deleted all the software on the planet – what’s going to happen? You won’t be able to surf the Web, send email, make and run spreadsheets, use word processors, and download music. No more anonymously available dirty pictures, no more mapping services, no more reading newspapers from around the world, no more computer and video games, no more pocket organizers, no more modern warfare, governments will come to a halt. Well, that’s not so bad.

Oh, and movies will have cheesier special effects, Playboy centerfolds will seem to have more blemishes, buying airline tickets won’t work well, booking hotels will take longer, no one will be going into space, you’ll mostly be watching local TV, you won’t be getting the New York Times, Wall Street Journal, and The Economist in the mail, some airplanes will fall out of the sky.

Wait, what’s that? – This is getting serious. No more telephones, some buildings will stop being livable, most cars will stop running, food won’t be delivered efficiently, health care – don’t want to think about that. We’d be thrown suddenly back into the 1950s or 1940s. Just about everything we do every day will change or disappear.

Software is a real part of our lives, a real part of the world. If it wasn’t real, then why does deleting it break so many things? Well of course it’s real: Big companies make lots of money creating it: Microsoft, Oracle, IBM; even smaller ones: Netscape, Borland, Adobe. A few million people earn their livings writing software, an equal number attend to those who create programs: documentation writers, testers, managers, customer support folks.

What’s writing software like?

What follows is a gripping tale. A must read, if you are a software professional.

LinkLog: Perceptual Biases

In David Brook’s op-ed column in NYTimes titled The Behavioral Revolution:

Perceiving a situation seems, at first glimpse, like a remarkably simple operation. You just look and see what’s around. But the operation that seems most simple is actually the most complex, it’s just that most of the action takes place below the level of awareness. Looking at and perceiving the world is an active process of meaning-making that shapes and biases the rest of the decision-making chain.

perceptual biases that distort our thinking: our tendency to see data that confirm our prejudices more vividly than data that contradict them; our tendency to overvalue recent events when anticipating future possibilities; our tendency to spin concurring facts into a single causal narrative; our tendency to applaud our own supposed skill in circumstances when we’ve actually benefited from dumb luck.

And looking at the financial crisis, it is easy to see dozens of errors of perception. Traders misperceived the possibility of rare events. They got caught in social contagions and reinforced each other’s risk assessments. They failed to perceive how tightly linked global networks can transform small events into big disasters.

How does one prevent perceptual bias? I recall being carried by the current and strongly influenced by the strong current during the dotcom days. Every action I took was deeply influenced by the perception that we were part of a movement. It reflected in both my short and long term decisions (some of them with disastrous consequences). I think one supporting current was the urge not to “miss the boat”.

When the Web Becomes a Database

This was what we were dreaming about 7 years ago. This image is taken from the home page of our first web site (Feb 23, 2001), still sitting on the internet archive.

That is a bit of a background. You know why I got excited when I saw this article.

Every time there is a major shift in technology, this shift needs to be motivated by addressing a new class of problem. This means doing something that could not be done before. The last time this happened was when the relational database became the dominant IT technology. At that time, the questions involved putting the enterprise in the database and building a cluster of Line Of Business (LOB) applications around the database. The argument for the RDBMS was that you did not have to constrain the set of queries that might later be made, when designing the database. In other words, it was making things more ad hoc. This was opposed then on grounds of being less efficient than the hierarchical and network databases which the relational eventually replaced.

Today, the point of the Data Web is that you do not have to constrain what your data can join or integrate with, when you design your database. The counter-argument is that this is slow and geeky and not scalable. See the similarity?

A difference is that we are not specifically aiming at replacing the RDBMS. In fact, if you know exactly what you will query and have a well defined workload, a relational representation optimized for the workload will give you about 10x the performance of the equivalent RDF warehouse. OLTP remains a relational-only domain.

I started my career working with CODASYL based network databases (DBMS-11 to be precise) in 1978. Then we built a composite database (part network, part relational) in 83 and a SQL engine in 85-86. Computing was very different then. Relational databases had a slow start but once the performance improved (due to improvements in relational technology and hardware speeds), they took off.

Almost 20 years later, after the first commercial relational databases started becoming mainstream, we need to rethink data and access to data. The scale is different. The needs for access is different. What we need to get out of databases is going to be very different.

Along the way, there were attempts at extending relational databases in different directions (text databases, multi-media databases, object databases) but none of them had either the simplicity or elegance of relational databases.

What are some possible technologies for the new databases of the future? This article provides some insights.

However, when we are talking about doing queries and analytics against the Web, or even against more than a handful of relational systems, the things which make RDBMS good become problematic.

It is worth watching this space, especially, if you make a living working with relational technology. When the web becomes a database (even parts of it), there will be lots of challenges and hence lots of new opportunities.

Business of Software

I was watching this video today. If you are a small startup (typically bootstrapped), this is a must watch. Here are some notes:

  • Keep the Momentum
  • We work on projects that are chunked in smaller bits
  • Planning is vastly over rated
  • We don’t do road maps
  • We do not write  functional specifications ( They lead to a illusion of agreement )
  • Decisions are temporary
  • Red Flag words – Need, Can’t, Easy, Everyone, Nobody). He explains each one of the words and points out how they are red flags
  • Interruption is the Enemy of Productivity ( the closer you are, the less work you get done)
  • A fragmented day is not a productive day
  • Creative people need uninterrupted chunks of time
  • Focus on Passive Collaboration (email, wikis)
  • Focus on what doesn’t change. What is going to be important Today and 10 years from now – Speed, Simplicity, Ease of Use, clarity, Reliability, Uptime
  • Underdoing (instead of overdoing the competitors)
  • Find markets where you can start on the low end and grow (Great thing about the market is the big guys do not care about them)
  • As long as you deliver more value than the price, people will pay for products
  • Follow the Chefs –  they out teach, out share and out contribute
  • what is your cookbook? You can either outspend or out teach your competition
  • Always be questioning: Why are we doing this? What problem are we solving? Is this actually useful? Are we adding value? Is there an easier way?

LinkLog: Numerati, Semantics in Spreadsheets and the Future of Web Apps

InfoMinder Alerts on 21st Oct 08:

Steven Baker’s Numerati

A captivating look at how a global math elite is predicting and altering our behavior — at work, at the mall, and in bed

In this tour de force of original reporting and analysis, journalist Stephen Baker provides us with a fascinating guide to the world we’re all entering — and to the people controlling that world. The Numerati have infiltrated every realm of human affairs, profiling us as workers, shoppers, patients, voters, potential terrorists — and lovers. The implications are vast.

How Semantics Can Revolutionize Spreadsheets

Last fall, senior enterprise architect Brand Niemann of the Environmental Protection Agency issued a challenge to the semantic web industry: Who will step forward and show how to take the reams of government data currently locked away in spreadsheets to the semantic web? This spring, at the Semantic Technology Conference, May 18-22 in San Jose, Calif., Niemann and Lee Feigenbaum, VP technology and standards at Cambridge Semantics Inc., will demo the solution to that question.

What makes the spreadsheet such an important application to semantify? Put it down to a couple of things. The first is that lots of government data is stored in spreadsheets, inaccessible to the Google crawlers of the world. …This technology means they can continue using and working in the application they love, but develop semantic web applications at the same time.

Videos from the Future of Web Apps Conference

I just started watching  them.  Kathy Sierra’s is really good.

InfoMinder Alerts – 20th Oct 2008

Some interesting links I got through my InfoMinder Alerts today. I will just add a teaser for each entry. Some of these are blogs. Others are announcements or wiki links.

The Future of Enterprise Software

We are at the beginning of a massive shift from client-server to web-based software in the enterprise.  This move will be even more dramatic than the move from mainframe to client-server.  The move to self-service distribution will lower sales costs and make comparable technology available to enterprises of all sizes on an eat-as-you-go basis.  Having all data in a centralized repository with open interfaces will lead to geometric increases in functionality as customers munge data and functionality together themselves or through third party developers (who will also have access to self-service platforms).

Finally, I predict that (CRM) will have a valuation higher than SAP (SAP) in 5 years.  Today CRM is just under $8 billion in market value and SAP is just under $68 billion in market value.

What is hot in the Semantic Web Community (discovered through Planet-RDF)

Here are some of the topics that have already been put on the wish-list for the Semantic Wiki Mini-Series (source):

  • usability vs expressivity
  • community building
  • uncovering more implementations
  • HCI: navigation of large, high-dimensional knowledge spaces
  • e-science (especially pharma research & biomedicine)
  • semantic wikis and mashups
  • recommendation and personalization in semantic wikis,
  • knowledge representation (expresivity vs. simplicity)
  • how to make business subject matter experts able to enter, review and validate
    meaningful information without them having to learn new words
  • what dialect of OWL supported
  • integration of semantic resources (Protege / OOR / MW / …)
  • content quality
  • integration of external data
  • a semantic wiki & OOR session
  • experiences with distributed collaboration
  • server-side infrastructure to support semantic wikis
  • survey of semantic wikis for vertical domains (e.g. HCLS)
  • integration with other tools / linking wiki content to other apps

Motorola and the Android Social Networking Phone

Motorola, which is recruiting as many as 350 people to work on Android phones, is gearing up to make its first one:the Android Social Smart Phone. Last week, Android Guys spotted a job posting for the project, and now BusinessWeek has more details, including a mention of the Motorola job posting pictured at left on Monster looking for an Android application developer.

Five Ways to Google Proof Your Business

Google has acquired more than 50 companies, and it’s unlikely the spending spree will stop any time soon, as many of Google’s most recognized services came through acquisitions — including AdSense, Android, AdWords, Blogger, Gmail, Google Analytics, Google Docs, Google Maps, Picassa, and, of course, YouTube Inc.

But there are millions of businesses that will not be acquired by Google. As the saying goes, “Google has plenty of money, but you won’t get any of it.” The reality is, if you’re not one of the lucky chosen, Google can be both a competitor and a phenomenon that marginalizes your business model by making alternatives easy to find, or by turning your paid products into an advertising-sponsored free-for-all.

As an optimist, I’d prefer to think of Google as another arrow in the quiver to be used to expand your Internet business, drive qualifying traffic, improve your brand, and ultimately help support an exit (if you want to be rich) or a viable business model (if you’d rather be king) — or perhaps both.

There are several actions I’d suggest for those looking to make Google a weapon for positive gain. Many of these are mutually exclusive, but some combination warrants consideration for any online business

Design Considerations for Parallel Programming

Parallel programming has all of the correctness and security challenges of sequential programs plus all of the difficulties of parallelism and concurrent access to shared resources.

RDB to RDF Mapping (On Demand and ETL)

We expect cases favoring on demand mapping to be characterized by any of:

  • High rate of change of the data
  • Very large volume of data
  • Relatively straightforward translation between RDF and the data
  • Relatively few RDB’s being integrated.

We expect cases favoring ETL to be characterized by:

  • Large number of heterogenous sources of data
  • Complex application logic needed for transforming the data
  • RDF reasoning being performed on the mapped data
  • Queries with variables in class or predicate positions

Multiplying the Multipliers

Reading Amund Tveit’s Blog reminded me of Doug’s ABC model of capability improvement.

Amund talks about the importance of software and a few ideas on how to multiply the multipliers.

the only point I want to make is that software is extremely important :). And since software has a multiplicative effect that few other technologies can beat (e.g. 1 persons code can effect a large amount of users in a positive way), making software engineers more productive can have a massive impact on society

Teaching has a multiplier effect. So improving teaching is a one to many activity with huge impact since each teacher comes across many students and have deep influence. Good teachers are great at inspiring people. My love for Math came from my early teachers.

Bloggers are the new teachers. Highly Effective bloggers are thinkers, dreamers and passionate about sharing their ideas. They have a deep multiplier effect too.

Learning Resources for a Perpetual Student

When I was in my teens, I never really knew, why I was learning what I was learning. I did not have the big picture. I assumed that once I take up a job, I would figure it all out. It was a surprise when I took up my job and the questions still remained. I gave up after a few months and concluded what I was really doing all those years was learning to learn.

In the first couple of years in my job, I had to learn lot more than what I did in my entire undergraduate course. This learning was more fun and easier, since I knew why I was learning something.

Almost three decades later, I am still learning. I have become a perpetual student,  thanks to the internet. Now I can learn pretty much what I want, when I want and even control how much I want.  With a computer and internet and few tools, I can find most of what I want. You probably already know some resources for learning. Here are a few that I use.

1. If I just have a few minutes, and want to learn how to do something, I use one or more of these.

HowCast, eHow, WikiHow, How to Do Things, How Stuff Works and other similar sites.

2. For the next level of learning,  I go to Wikipedia. I found Wikipedia to be a reasonably good starting point. The nice thing about Wikipedia is that it is pretty extensive, and the pages have a lots of useful links.

3. For subjects in technology, I frequently go to technology talks videos from Google and some times YouTube. I also look for podcasts using iTunes.

4. If I already know a bit about the subject and feel like getting some expert opinion, I go to blogs. I just try to find experts in a specific field and see whether they blog. The great advantage of blogs is the conversational nature of the writing. Blogs are also conversation starters and some times, you learn a lot from the discussions.

5. If you really want a deep dive, there is a lot of course material at Open Courseware Consortium.

The OpenCourseWare Consortium is a collaboration of more than 200 higher education institutions and associated organizations from around the world creating a broad and deep body of open educational content using a shared model. The mission of the OpenCourseWare Consortium is to advance education and empower people worldwide through opencourseware.

There is an increasing amount of great content on the internet. Hopefully, we will have tools to easily locate this content, as well.