include( 'common.php' ); xyHeader( "Software Analogies" ); ?>
Most of the work in learning a new programming language or system is in figuring out how the concepts you are accustomed to map into the new space.
This is an attempt to archive some examples of concepts for different systems.
A concept is an idea or a class of things - e.g. 'data pretty-printer' (something which dumps out a structure in readable form).
An example is a concrete instance of a concept. For example, Perl's Data::Dumper module is an example of a data pretty-printer.
A system is something which uses a whole heap of examples. Perl is a system, as are Linux, Zope and Windows.
With this database, we can answer questions like:
What is the Data::Dumper of Python?
To do this:
- Find Data::Dumper in the list of examples. (here).
- Look at the list of mappings to find out that Data::Dumper is a data pretty-printer.
- Click on data pretty-printer to get a list of other data pretty-printers.
- Look down - aha! pprint is a Data pretty-printer for Python
Because of a Jon Udell article: 'Thinking by Analogy'.
Syntax Across Languages (by Pixel at Mandrake) presents examples of syntax in various different programming languages
Programming Language Examples Alike Cookbook (by Guillaume Cottenceau) is an attempt to make a generic 'cookbook' for several scripting languages
Send us your ideas for other examples, concepts, systems and mappings. We're not done yet (obviously)!
If we like you, we might even give you editor access so you can change stuff yourself ;-)xyFooter(); ?>