Joshua Hawcroft .com

CinsImp

CinsImp is an idea development tool. It can be used as a small-scale information manager, to collect things or to solve problems visually, mathematically and algorithmically.

CinsImp works by allowing you to create virtual stacks of electronic cards; containing text, graphics, animation and sound. You can construct links between cards and shuffle the cards at any time, in countless ways.

In addition, the powerful English-like scripting language, CinsScript, allows even the most inexperienced to quickly construct complex interactions.

CinsImp is free software and is distributed under the terms of the GNU General Public License version 3.

CinsImp is still in the early stages of development. It is not production ready yet, but if you don't mind the odd crash, excessive memory usage or poor performance you're welcome to explore!

News

January 30, 2010. Few minor updates made. Repository created at SourceForge.

January 21, 2010. An early alpha, Cinsimp 0.1 is released.

Getting Started

  • Download the latest sources, currently CinsImp 0.1.1. Binaries will not be available at this site until the project matures a little and is more stable.

    The SVN repository is here:
    https://cinsimp.svn.sourceforge.net/svnroot/cinsimp
  • You will also need the wxWidgets Cross-platform C++ GUI library. Cinsimp has been tested building successfully with wxWidgets 2.9.0 using Visual Studio 2008 Express Edition on Windows XP SP2.
  • You can read the technical overview, which explains why things are the way they are.
  • Please write to me if you find it useful, have constructive feedback or would like to contribute to the project.

Screen Snapshots


Building the Calculator sample stack


The tool palette


About the Name

Cinsimp is an acronym for Cards IN Stacks In Multiple Platforms. It is pronounced Sins-Imp.

There are possibly other meanings that could be derived from the pronunciation. Aside from that, the name is also designed to be so peculiar and strange-sounding that no one will accidentally use the same name and inadvertantly create trademark issues. I chose it over other equally weird sounding names particularly because it starts with C and will appear higher in alphabetical listings than names beginning with letters in the second-half of the English alphabet. All the other alternatives were too obvious.

Origins

There is a blog of the development of the first alpha version of Cinsimp, including a few interesting screen snapshots. During this initial 3-week development phase the project was known as ResetCard.

Cinsimp was significantly inspired by a product called HyperCard, first released in 1987 by then Apple Computer, Inc. The last version of HyperCard was finally withdrawn from sale in 2004.

I started the project a couple of weeks prior to Christmas 2009. I had many goals, including, but not limited to:

  • Bringing back some of the best features of one of the development tools I loved most (HyperCard)
  • Providing a subject for my book
  • Eventually providing a serious contribution to the resources available to which students of programming might refer
  • HyperCard was my first programming environment and following in the footsteps of its creators was both a rewarding ego-trip and has given me an enhanced perspective on systems software development

Inevitably I ran out of time towards the end of my vacation. I had to close the first release of the project ahead of when I would have liked, but I'm not displeased with what I achieved in only a few weeks. It was also the first time I'd ever used wxWidgets.