Category “ai”

33 posts


Microsoft AI Initiatives

Several computer science classes focus on algorithms. These include classes in data structures, artificial intelligence, computer graphics and numerical computing. Some of these data structures are quite involved and I have felt that they should be incorporated inside system libraries. Many of the classical data structures have in the 1990s
Read more » Jan 25, 2012, 1:42AM

Conversational Interfaces Redux

In the past, I have talked about conversational interfaces with posts like the “Turing Test and the Loebner Prize Competition.” My interests are not purely theoretical, as I have actively explored integrating natural language deeply into applications in such ways as interpreting all text inside documents and code files and
Read more » Jan 23, 2012, 6:09AM
AI , Natural Language , Technology

Smart Software Should Get Out Of Your Way

Nick Bradbury, author of several successful software products, writes that "Smart Software Should Get Out of Your Way." If you believe the tech pundits, “smart” software should predict what we’ll do so it can perform the next action faster.  “Smart” software should automatically correct our mistakes.  And “smart” software should
Read more » Jan 7, 2009, 2:23AM

Computation as the Ultimate Metaphor

Rodney Brook, an AI professor at MIT and author of Flesh and Machine, wrote this response "Computation as the Ultimate Metaphor" to a question posed by the Edge Foundation, "What have you changed your mind about during the 2007?" The Edge Foundation is a site that I have long subscribed
Read more » Jan 2, 2008, 2:41AM

Symbolic Computing

I picked up from Slashdot that Mathematica 6, a program for doing computer algebra, was released. Among the features are equational theorem proving, which is similar to the work that I am doing. More than any other product, Mathematica embodies symbolic computing, and this recent post on the Wolfram blog, Symbolic
Read more » May 15, 2007, 9:13PM

Code and Data

Usually, when I mention functional programming to other developers, they will unconsciously close their arms and legs—a sure sign of resistance. These developers are naturally suspicious of another new, better “programming” paradigm, so I have learned to zip my mouth. They don’t see the possibility of code becoming more declarative and
Read more » Mar 16, 2007, 3:57PM

Bullets Flying My Way

Larry O'Brien has been questioning my critique of Fred Brook's essay, "No Silver Bullets" in my post Lego Programming. Actually, he turned my post into a strawman argument and tied my name to an argument that I didn’t really make—that IDEs are a silver bullet. IDEs certainly have introduced a
Read more » Dec 6, 2006, 2:43PM

Turing Test and Loebner Prize Competition

A couple of weeks ago, the 2006 Loebner Prize competition was held. Back when I was at Harvard in the early 1990s,  the annual Loebner Prize Competition was created as the first real-life version of the "Turing Test," described in Turing's article "Computing Machinery and Intelligence" to answer the question "Can Computers
Read more » Oct 1, 2006, 9:14PM


Last April, I wrote about a profound design change I was making into my document-based applications, which was to make all my document data structures immutable--standard practice in some functional programming languages. My original motivation was to make each of my model objects an expression that I could work with
Read more » Sep 7, 2006, 4:12PM

Software Design Philosophy

 A year ago, I wrote that I would soon describe my software design philosophy in developing commercial desktop applications. I never actually did write directly on my philosophy. I still had unresolved design issues, which I have since resolved through making document and view objects immutable. I also felt that it
Read more » Sep 7, 2006, 12:25PM

Direct UI

Direct UI is the notion of treating a document window as more than just a WYSIWYG display. This includes treating the window as a control surface, inserting various markup, treating document elements as controls, and applying transforms/animations that allow the elements to momentarily transcend their document layout. It’s about making the document come
Read more » Jun 21, 2006, 2:52AM

Software Built to Replace a Human

I just noticed this blog post on “software built to replace a human” referred to by someone in Joel’s forms. That’s the whole raison d’etre for my software company, SoftPerson — hence the name. Currently at work I'm writing some EDI (electronic data interchange) software that I know for a fact
Read more » May 26, 2006, 8:42AM

Functional Programming

In my quest to incorporate more declarative programming techniques (especially, from functional and logical programming) in my applications and eliminate all the cruft left behind from traditional imperative programming, I found a number of items on the web. There are some in the blogosphere that are newly converted to functional programming. Larry
Read more » May 13, 2006, 2:39AM


I can’t spend too much time on a problem, or I become bored and unproductive. Sometimes, I alleviate this tendency by frequently switching from development to testing mode. Periodically, I switch temporarily to some other long-term project of mine. I don’t engage in non-software recreational activities, since I am not
Read more » May 11, 2006, 6:23PM

A Modest Design Change

I have recently had a lot of success programming in a certain nontraditional style at a small scale. Programming in this style has numerous advantages, such as better support for multithreading, less bookkeeping, simpler code.  This programming style, though, is completely impractical at a global level. Or is it? Functional programming languages
Read more » Apr 29, 2006, 2:47PM





Net Undocumented is a blog about the internals of .NET including Xamarin implementations. Other topics include managed and web languages (C#, C++, Javascript), computer science theory, software engineering and software entrepreneurship.

Social Media