;
(For a full list of Frequently Asked Questions, try here.
The original Freecell game was created by Paul Alfille in the mid 1970's. It's a fascinating flavor of solitaire that requires skill instead of just luck. And it's kept many peoples' interest for decades. (See link at right for a phone interview with Paul)
Freecell was written in TUTOR, a programming language specifically designed for the University of Illinois' PLATO computer environment. The original Freecell was very rich, featuring variant game parameters, weekly tournaments, and all manner of statistics related to scores. There were large numbers of people who played, and the list of streaks was truly impressive. A couple people had streaks over 1000 and the rumor was that they were sysadmins that could crash the system if they found themselves in a losing game.
PLATO graphics were simple plasma-screen monochrome orange and the only
difference in the suits was whether they were filled in (red) or outlined
(black). However PLATO was way ahead of its time featuring a graphics
display back when the world was almost entirely monochrome ASCII terminals.
See below for some screenshots of Paul's original Free Cell game.
Free assocating about the milestone that was the PLATO system, Avatar
was the other huge timesink on the original system. It was an
adventure game probably a lot along the lines of MUDs which came after
during the rise of the Internet but Avatar had (as I recall)
some rudimentary graphics. There were tales about how much more system
time was devoted to Avatar and Freecell as opposed to activites actually
associated with student curriculum.
|
| Jim Horne and Denny Cronin |
NetCELL, the online version available here at Freecell.net, was written by me, Denny
Cronin. I've played Freecell since the early '80s where I encountered
Paul's original Freecell game on the Plato system at the University
of Illinois. I always enjoyed the game, and missed playing once I no
longer had access to a Plato terminal. So I implemented a character-based
version of the game for Unix systems sometime in the mid '80s and made
this version available in a limited distribution as freeware.
Then when browsers started supporting Java applets I saw the opportunity to make Freecell broadly playable on this new fangled world wide web. The original game was a Java applet which opened a socket to talk to the server. This had a lot of problems routing because firewalls would often only allow connections via well known sockets (such as 80 and 443 for web pages) although in the early days of the Internet folks didn't understand security and that port number squeaked through for a reasonable number of people.
I remember I was surprised in the early days how quickly we saw one or two people with these monster 1000+ streaks. We now know there are plenty of people on the planet who are pretty gifted at Freecell.
I moved to using HTTP requests to talk to the server and then around
2001 I did a version using the emerging DHTML dynamic capabilities of
Internet Explorer. I used XMLHTTP to talk to the server from the web page,
effectively using AJAX before it was christened "AJAX". Originally this
was limited to IE only but slowly other browsers started supporting the
needed functionality. As standards around this new dynamic HTML emerged
I migrated the game to those standards.
Finally usage of the Java applet had dropped below about 5% or so and I abandoned that and put all my efforts into enhancing the DHTML version. This was a huge win as I no longer needed to add new features in two places.
The current Freecell (NetCELL) version running in your web browser is all new using TypeScript-based JavaScript to talk to the back end server. All moves are stored and score keeping is done back at the server system. The server code is a descendent of my old Unix version which was written in C, later migrated to C++, and recently entirely rewritten in C#. It talks via HTTP to large numbers of simultaneous TypeScript/JavaScript clients across the net.
Thanks to Tom Murphy for some details of the original Unix implementation, specifically the "difficulty" system, which is still used here today.
Note: I originally called my version NetCELL because I was afraid Microsoft had some kind of trademark or copyright claim to the name Freecell. But it turns out they never even talked to Paul about rights to his game. So I guess we can go ahead and just call it Freecell now.
You can find out more about Freecell and Freecell history on the Frequently Asked Questions page and read our interview with Paul Alfille, the creator of Freecell.
I got an account on a PLATO emulator and they still had Paul's original Freecell game loaded. This is where it all started. Nowadays there are dozens of Freecell games on the Internet plus this Freecell.net site which has been around since 1996. Here are some screenshots from Paul's original game running on that emulator:
Freecell.orgOops. It appears these articles have been placed in their archives. I am trying to track down Kathleen Laufenberg to see if she can help...It's cheap. It's legal. It's not even fattening. So how bad can an addiction to the computer card game called FreeCell be? - By Kathleen Laufenberg DEMOCRAT STAFF WRITER
FreeCell's creator just wanted a little fun, and now he's done - By Kathleen Laufenberg DEMOCRAT STAFF WRITER