There are two ways to look at Sputnik: as a simple wiki or as a web platform. Those may seem like contradictory requirements, but Sputnik aims to be both. Let's tackle them separately:
Sputnik Is a Simple Wiki
Out of the box Sputnik behaves like a wiki with all the standard wiki features: editable pages, mild protection against spam bots (you need an account to edit pages, but anyone can create an account with no questions asked), history view of pages, diff, and an RSS feed for site changes. (See Features for more details.) A basic Sputnik installation consists of just a few source files that add up to less than 2000 lines of code. (See Comparisons for details.) So, if you want a wiki that you can understand, this is a good option. Please go to Installation if you want to get started.
Sputnik Is Whatever You Want It to Be
At the same time, Sputnik is designed to be extensible with almost no bounds. A simple change of templates and perhaps a few spoons of Lua code can turn it into a photo album, a blog, a calendar, a mailing list viewer, or almost anything else. (See Demos for some examples.) So, you can think of it as a web platform of sorts. In addition to allowing you to add custom bells and whistles to a wiki, Sputnik provides a good foundation for anything that's kind of like a wiki but not quite. Sputnik stores its data as versioned "pages" that can be editable through the web (just like any wiki). At the same time it allows those pages to store any data that can be saved as text (prose, comma-separated values, lists of named parameters, Lua tables, mbox-formatted messages, XML, etc.) While by default the page is displayed as if it carried Markdown-formatted text, the way the page is viewed (or edited, or saved, etc.) can be overriden on a per-page basis. (You do this by over-riding or adding "actions", so Sputnik is MVC-compliant.)
Suppose you want a calendar that is editable as a wiki but displays in a nice tabular format. You can store a list of events as Lua Tables and as a first path can let your users edit it as such. (Scientific studies show that most people can learn to edit Lua Tables.) You still get the benefits of diff, history, etc. out of the box and you get to display your calendar in several formats (including, for example, the iCalendar format). If you want, you can later add a custom "edit" action to give your usres an AJAXy edit interface. And if you have nothing better to do, you can even add a custom diff.
In the extreme case, each page can act as a placeholder for a script that generates the content on the fly. So, if you want, you can use Sputnik to display data generated by existing code. (Even code written in C, actually.) To get a better idea of what Sputnik can do, look at the Conceptual Model and the Demos.