Computer programming has a lot of work and a lot of people centered around it. If the Singularitarians are correct, we're going to need them all.
After all, what good is it if computing speeds and memory keep doubling if we cannot program computers to do what we want them to do? And the Singularitarians want computers to do some pretty ambitious things. In fact, given their wish list, it seems clear that human knowledge of computer programming has to double every five years if we are going to get the magic box to do what we want it to do. We will need new programming languages, tighter coding, better algorithms, and quite possibly a new way of looking at programming. Is this happening?
We've seen elsewhere that the number of people engaged in computer sciences has grown to 180,000 new entrants per year in the U.S. alone--and considering the base date for this field, that is evidence of healthy growth. Let's use Scirus to see what this growth in professionals has produced in the way of patents and journal articles.
Preliminary results: between 2002 and 2006, 38,685 journal articles were published with the word 'programming' in the title or abstract. As the total is 145,404, only 26.6% of all journal articles were published in the last five years. Of the 367,971 patents noted on Scirus with 'programming' in the title or description, 201,548, or 54.7% were published between 2002 and 2006--so that has doubled. Not the first time we have seen differing growth rates for journals and patents.
For 'software,' the period 2002-2006 saw 224,696 journal articles published, 46% of the total of 486,262. For patents, as with 'programming,' the period was more robust--589,919 out of a total of 900,846, or 65% of the total.
The base year for 'programming' is 1940, when a UK patent was filed for improvements on a statistical calculating device. The compound annual growth rate for journal publications is 12.55%--good, but not good enough to double every five years (it is less than six years, to be fair). The compound annual growth rate for patents is 12.83%.
Remember that we need a CAGR (Compound Annual Growth Rate) of 14.87% to double every five years.
For 'software, the base year is 1965, when 5 journal articles were published and 1 patent was filed. And software is a winner, with CAGR of 22.83% for journal publications! Hooray for coders everywhere! And a double huzzah to IBM, Microsoft, Sun and countless others, as patent growth since 1965 has a CAGR of 33.53%. Another winner!
As there are so many more patents than journal publications for both search terms, we should probably give more weight to patents, and be extremely pleased that human knowledge appears to have doubled in the past five years in this area, especially given the gloomy results reported in my previous post last week.
Click below to see results and analysis.
Scirus (as explained elsewhere) is a database full of scientific information gathered from a variety of sources. An advanced search using the term 'programming' returns over 7 million results. Of that number, 145,404 are journal articles and 367,971 patents. A cursory examination of the journal and patent results shows that the search term does not appear to be too loose, in that I didn't see too many results regarding television broadcast decisions about what wil be on Sky next year (although there were some)--they were mostly about programming of computers and electronic devices. Recent returns are weighted towards smaller devices than general computing, which shouldn't be surprising.
I did not use the more precise search terms 'computer programming' or 'software applications' because I think that in the long run, technologists who are trying to make specific devices work better in smaller machines using both programming languages and the physical characteristics of electronic devices will be contributing as much to the ongoing development of software as those who are solely working on languages.
This is particularly evident when looking for patents. The first 20 results for 'software' patents in 2007 are largely concerned with security, updating, testing, etc. However, the journal results are actually very appropriate for this discussion--hence (sigh) I am including journal and patent results for 'software' as well as both journal and patent information for 'programming.' The things I do for you people (well, I may be presumptuous using the plural form, as traffic here has been quite light...)
Looking at the 5 year totals, we see that 'software' truly looks like a hypergrowth field right from the beginning, in both journals and patents. However, the story is different for 'programming,' which started exhibiting hypergrowth levels after 1991, but really never showed hypergrowth characteristics in academic journals.
Looking at the annual totals, it's kind of easy to see where the Internet took off, where the PC became interesting, and where mainframe computing was strong. Cool.
One note that I'll have to add in to other posts regarding use of Scirus--undated articles are grouped in their returns between 1920 and 1930.
Results for advanced search on 'programming' and 'software' on Scirus
Here are the five-year aggregate totals:
Search Term: Programming Software
Year Journals Patents Journals Patents
Total 145,404 367,971 509,912 926,873
2002-2006 38,635 201,549 224,696 589,919
1997-2001 29,469 72,114 129,388 189,694
1992-1996 19,075 30,554 63,460 72,763
1987-1991 16,201 19,752 34,983 32,933
1982-1986 15,673 11,108 24,808 10,585
1977-1981 10,137 8,154 7,879 3,651
1972-1976 5,961 6,668 2,312 1,142
1967-1971 2,933 5,003 395 154
1962-1966 1,228 3,135 19 5
Here are the yearly totals:
Search term: Programming Software
Year Journals Patents Journals Patents
Total 145,404 367,971 509,912 926,873
2007 4,525 8,645 22,930 26,027
2006 9,786 47,880 57,244 140,810
2005 8,581 42,397 49,628 124,335
2004 7,164 41,339 44,752 119,711
2003 7,045 38,381 40,696 113,542
2002 6,109 31,551 32,376 91,521
2001 5,877 22,634 29,848 61,939
2000 5,893 15,097 27,964 40,164
1999 5,348 13,248 24,991 33,750
1998 5,993 13,014 22,774 32,645
1997 6,331 8,121 22,693 20,746
1996 5,612 8,519 19,868 19,918
1995 5,355 6,047 17,638 14,590
1994 4,861 5,648 14,054 13,189
1993 2,069 5,526 6,117 13,653
1992 2,075 4,814 5,777 11,413
1991 1,910 4,645 5,381 9,295
1990 2,089 4,219 5,247 7,798
1989 4,323 4,368 8,883 6,844
1988 4,116 3,301 8,017 4,771
1987 3,763 3,219 7,451 4,225
1986 3,432 2,728 4,524 3,212
1985 3,525 2,452 5,836 2,608
1984 3,246 2,380 5,171 2,205
1983 2,861 1,901 4,125 1,427
1982 2,609 1,647 3,025 1,133
1981 2,349 2,077 2,254 1,193
1980 2,295 1,792 1,893 942
1979 2,054 1,365 1,583 580
1978 1,875 1,538 1,258 497
1977 1,563 1,382 890 439
1976 1,396 1,376 657 329
1975 1,276 1,287 521 261
1974 1,103 1,397 413 247
1973 1,135 1,376 380 166
1972 1,051 1,232 341 139
1971 741 1,346 147 99
1970 727 1,114 132 28
1969 604 705 62 11
1968 493 941 25 13
1967 368 897 29 3
1966 307 952 10 4
1965 282 783 5 1
1964 280 525 2 0
1963 226 421 0 0
1962 133 454 0 0
1961 127 321 0 0
1960 86 265 0 0
1950-1960 235 918 0 0
1940-1950 4 28 0 0
1930-1940 0 6 0 0
For you nostalgia types...
Improvements in or relating to record-controlled statistical machines
UNITED KINGDOM PATENT APPLICATION, Apr 1940
...board, referred to hereinafter as a "programming board ". This section is divided into...to the 7 C plugged section-step The programming board iii addition to being divided...foregoing it will be apparent that the programming plugboard enables 130 519,709 the operator...
Comments