About the Project

I believe that we can make society work for the betterment of all, using high-tech software.

For me, that means software with a sophisticated mathematical basis.  This is a project to develop and apply such software.  Sadly there are new mathematical algorithms which are sure to be implemented and used — perhaps for good, but perhaps for evil.


Ordinary software has much potential for social change, but not enough.  The world would be a different place if all we did was store a lot of good data in publicly accessible databases and provide good indexing software for its retrieval, but database lookup is not going to solve many of the world’s problems.  Google is far more than just an index of the Internet and does use truly sophisticated mathematics, but it is not trying to solve the world’s problem.

Ordinary software cannot do it, and corporations like Google are not trying to do it.

This Social Systems Project aims simply to make it happen, to solve the technical issues and at least prototype software which could be applied to making the world work.  It might eventually be implemented on a large scale by volunteers, as with Linux and the GNU Project, or on the model of the Wikipedia.  Or it might be implemented on a large scale by a giant corporation.  That could be Google, Microsoft or Apple, or it could be something new, created by entrepreneurs who seized the idea and ran with it.

My preference would be to follow the Linux and GNU model.

This has been a personal project for many years.  I always planned to release some software for others to work on.  I’ve not been able to get that far.

What I like most is to write code.  In the past I’ve often neglected doing any visible requirements analysis and just jumped right in to the implementation phase, planning to retrofit the previous steps as necessary.  This overambitious project of mine is too slippery for that.  I’ve had to junk a lot of unfinished code as it became overtaken by a new understanding of the requirements.

For example, an obvious first step in writing software for social purposes is to write code for processing the answers to questionnaires.  That will still be necessary, but much exists and is reusable.  The real problem is getting around people’s reluctance to complete such forms.  There are those who delight in taking the short “tests” in popular magazines or the online personality tests, but many people find them annoying.  Worse, the longer the test or quiz is, the more annoying it becomes, to more people.  But to do the job properly, a vast number of questions should be asked.

A workable approach seems to involve the “missing data” methods used in the social research, where the values corresponding to questions which were not answered are estimated from the rest of the data.  I invented an interactive approach, in which answers to a few questions are used in estimating others, which are then presented to the subject for confirmation.  I presented this approach in a short piece of fiction, which is included on another website.  An overview of this method is put into the mouth of a character named Drake Phillips.

This is but one example of the way in which a new understanding of the kind of software needed interrupted my coding efforts, sending unfinished material to the trash heap, or at least the recycle bin.

After many instances of these failures, I decided to spend a lot more time writing about the project and less time trying to write code for it.  This website and the many others I have created for specific purposes collectively contain the ideas I have had for mathematical software to make the world work.  Perhaps someone will find them useful.

I hope this page will become obsolete, replaced by one less personal when other people make contributions to the project.  I would be quite happy to be displaced altogether, should the work of others exceed my own.

When I worked in the software industry there were always three groups of individuals, management, sales and engineering.  My own work was in engineering, and I have always been most interested in the technical side of things.  If I had any sales experience, I might have been able to persuade others of the importance of this project.  I hope some people will recognize it as worth promoting and use their skills to attract attention to it.  That leaves the question of management.  I am incapable of managing anything, and must leave that up to others.  As a locus for such activity I have created a corresponding project management website.

I hope that some people with management skills will recognize this as a project worth organizing and promoting.