Wednesday, March 31, 2010

Announcing Freecell Solver™ Enterprise Edition

01-April-2010: Freecell Solver Enterprises™, Inc., on behalf of the Freecell Solver™ development team, is glad to announce the upcoming availability of Freecell Solver™ Enterprise Edition. In its Enterprise Edition, Freecell Solver™ will be enhanced to solve generalised Freecell, in which there can be an arbitrary number of card ranks. Since generalised Freecell is NP-complete. This will allow us to use Freecell Solver™'s ingenious, cutting-edge algorithms to solve the previously hard, provably NP-Complete problems of the Travelling Salesman problem, Subset sum, Sudoku and Enterprise content management.

Since we expect some of our customers to wish to solve NP-complete problems with data sets of an order larger than the standard computer word (32-bit or 64-bit), we are going to start using the "GNU MP Bignum Library" (GMP). As our CTO, Ron Johnson, says By making use of Freecell Solver™ Enterprise Edition's sophisticated algorithms, we expect a cluster of 2,000 32-way high-performance supercomputers to solve a 17,179,869,184 (2 to the power of 34) problem, a short time before the heat death of the universe.

That's not the only change expected in Freecell Solver™ Enterprise Edition. Until now Freecell Solver™ was written in ANSI C and was dependent only on the standard C library. To make it more enterprise ready, we decided to convert to such enterprise-ready languages as C++ and Java, and to utilise such enterprise-ready Cross-Platform Abstraction Libraries such as Boost, Qt, glib, Apache's Portable Runtime (APR), or ACE. Our CTO continues: Phil Greenspun said that “Any sufficiently complicated C or Fortran program contains an ad hoc, informally-specified, bug-ridden, slow implementation of half of Common Lisp.”. Well, now Freecell Solver™ will contain an ad hoc, informally-specified, bug-ridden and slow, but enterprise ready, implementation of half of Common Lisp. This is really very exciting. We don't know yet which of these libraries we are going to use, but we are likely to use more than one based on the enterprise-readiness of their individual components.

Naturally, as the company behind Freecell Solver™ Enterprise Edition, Freecell Solver Enterprises™ does not expect to keep Freecell Solver™'s original permissive licence, the MIT/X11 License, because code which is licensed under it is easy to abuse, misuse, and generally use. Instead, the core Freecell Solver™ Enterprise Edition functionality would be available under the Affero General Public License (AGPL) version 3, while making some extended functionality available only under own own custom, proprietary licence - exclusively for paying customers. We are really excited about this change which will allow use to protect our intellectual property from people and enterprises who will abuse, misuse or generally just use it.

Here is what others say about that:

  • Don Knuth: Freecell Solver™ Enterprise Edition really excites me. I didn't think I'll see the day to see an Enterprise-ready NP-complete solver, but Freecell Solver™ EE made it happen. I can't wait to play with it.

  • Larry Wall: Freecell Solver™ Enterprise Edition is the epitome of Laziness and Hubris, but unfortunately requires a lot of Patience.

  • Bill and Ted: Enterprise Content Management! Yeah!!! Star Trek is Excellent, bro. Excellent!!! So where's Captain Kirk?

  • Shlomi Fish (the original creator of Freecell Solver): Eh, what the hell?

As you can see, everybody are united in their opinion that Freecell Solver™ Enterprise Edition is the best thing since Enterprise bread came sliced by and for enterprises.

One can download the Freecell Solver™ Enterprise Edition version 1.0.0 source tarball, and after resolving all the essential dependencies and building it (as documented in the INSTALL file), type ./fc-solve --help-enterprise to get help for the enterprise features.

Saturday, March 27, 2010

Freecell Solver 2.42.0 was Released

Freecell Solver version 2.42.0 has been released. It is available in the form of a source tarball from the download page. We hope to release a Windows binary soon.

This release finally adds a -o/--output flag to the "fc-solve" executable, and installs the newly created executables ( freecell-solver-fc-pro-range-solve , freecell-solver-multi-thread-solve , freecell-solver-range-parallel-solve , etc.) by default. There are also several bug-fixes and one can now input "const char *" instead of "char *" (with a compile-time flag that typedefs the strings to their old interface).

There has been some internals cleanups and optimisations. Finally, the file pqueue.h was converted to the MIT/X11 license, with permission of its originator, Justin Heyes Jones making Freecell Solver fully licensed under MIT/X11.

We hope you have fun with this new release.