You are on page 1of 6

Bookmarks - openrecord.

org 1

openrecord.org

about Bookmarks
people Apps with some similarities to OpenRecord
pitch
Google Base >
spec Google Base has a data model that's vaguely similar to the OpenRecord
data model. For example, in Google Base any item can have any number of
screencast
ad-hoc attributes, any attribute can be multi-valued, any date value can
demo have an end-date as well as a start-date, and numbers can have units (like
"meters" or "meters/second"). However, I think the similarities end there.
dev Google Base seems to be oriented toward "monolithic" items, rather than
big structures of small items -- for example Google Base does not seem to
bookmarks
be designed to support any type of references between items, or multi-item
copyright transactions.

The Ning Content Store >


The ning.com site uses a custom Content Store that has a data model
which is similar in many ways to the OpenRecord data model. A Ning
"Content Object" is like an OpenRecord "Item". The most significant
similarity is that both Ning and OpenRecord lack any notion of pre-defined
schema -- any items (content objects) can have any attributes. Ning and
OpenRecord are also similar in that they both support bi-directional
references. However, there are a number of differences. In Ning, each
Object can be of only one type, and the type of an Object cannot change
once the Object is created -- OpenRecord has no similar notion. In Ning, an
attribute is identified by its name (a string) -- in OpenRecord attributes are
identified by UUID, an attribute can have different names in different
languages, and each attribute is itself an item, so it can have not only a
'name', but also a 'summary' description, and other descriptive attributes.
Like OpenRecord, Ning allows any attribute to be multi-valued, but in Ning
all the values of a multi-valued attribute must be of the same type. Ning has
a notion of public vs. private content, whereas OpenRecord treats all
content as public. OpenRecord includes some support for transactions,
whereas Ning generally doesn't.

Dabble DB >
The Dabble web site currently (Nov 2005) only has a few screenshots, and
doesn't have much written documentation. So, it's hard to know quite what
Dabble is, but judging by what is posted it certainly looks like Dabble and
OpenRecord are both trying to solve the same problems. One tidbit that's
particularly interesting is that Dabble supports "inverse fields" to
"automatically track two-way relationships". For more insight into Dabble,
check out their weblog Dabble weblog >, or have a look at this review on
Solution Watch >.

Dan Bricklin's wikiCalc >

http://www.openrecord.org/bookmarks.html 05/21/08 20:02:43


Bookmarks - openrecord.org 2

"The wikiCalc program is a web authoring tool for pages that include data
that is more than just unformatted prose. It combines some of the ease of
authoring and multi-person editing of a wiki with the familiar visual
formatting and data organizing metaphor of a spreadsheet."

Sproutliner >
Sproutliner is a web-based app that's good at outlines and tables of items. It
has a crisp UI. I think that it does not support concurrent editing of pages,
and it looks to be page-centric (like Sparrow) rather than database-centric
(like Dabble?).

Sparrow Web >


Sparrow Web is a structured wiki tool that seems geared toward the same
sort of uses as OpenRecord. Unlike most of the other projects on this list,
Sparrow Web was written in the 1990s and has been in use for years and
years. Sparrow Web has a forms-based UI where OpenRecord has an
AJAX UI, and Sparrow Web has page-centric content, rather than
database-centric content that appears on pages as the result of queries.

Semantic MediaWiki >


"The overall objective of the project is to develop a single solution for
semantic annotation that fits the needs of most Wikimedia projects and still
meets the Wiki-specific requirements of usability and performance."

Wikidata >
A MediaWiki project. "Wikidata is a proposed wiki-like database for various
types of content."

Daisy CMS >


An open source CMS that has at least a few similarities to OpenRecord.
For example: multi-value fields, documents identified by unique IDs (and
documents names need not be unique), and there's no intrinsic notion of
file-system directories.

Intuit QuickBase >


Intuit QuickBase is an expensive, proprietary service geared toward
corporate workgroups. Seems to have lots of good features for charts,
timelines, etc.

"Semantic Wiki" projects >


Links to a half dozen "Semantic Wiki" projects like Platypus, Rhizome, and
Gnowsis, as well as links to desktop-app projects like Chandler and
Haystack.

JavaScript UI examples

Eyes >

Crosshairs >

http://www.openrecord.org/bookmarks.html 05/21/08 20:02:43


Bookmarks - openrecord.org 3

Business Card Creator >


Shows off a number of design choices that make for a more usable UI -
read about why this is a good UI >

Monket Calendar >

Live Grid >


A component that displays tables with tens of thousands of item. As you
scroll the table, the widget automatically fetches data from the server as
needed, a small chunk at a time.

Drag-and-drop

drag-and-drop list entries >


Sproutliner >
HotSpot >
script.aculo.us > and prototype >
youngpup DOM-Drag > and example >
Tasklist -- a nice example of grabby handles >

Menus and tree widgets

a cute tree widget >

GTD TiddlyWiki >

Webnote >
A nice example of a simple, responsive UI. It has some features a real app
would have -- undo/redo, transparency, saving state on the server, using
unique URLs to address new content, etc. Check out the hints list to see
more about how to use it: hints >

BlahBlah Finance -- AJAX spreadsheet >

ActiveWidgets Grid >


Note all the little features they've done:
- real-time column header re-sizing (drag bars between headings)
- column sorting (click on column headers)
- the top column headers scroll in sync with the horizontal scroll bar, yet they
stay visible even when you scroll down with the vertical scroll bar -- similarly,
the row headers sync with the vertical scroll bar yet stay visible even if you
scroll the horizontal scroll bar

TrimSpreadsheet Demo >

Mac-style dock >

A9: add more columns >


Another drag and drop example.

http://www.openrecord.org/bookmarks.html 05/21/08 20:02:43


Bookmarks - openrecord.org 4

map.search.ch >
Map browsing.

Zuggest >
Text searching via XMLHttpRequest.

more examples >

Oddpost >

Scalix's outlook clone


article > and photo >

Tibco's AJAX-stlye GUI builder >

TrimPath's "Next Action" to-do list tool. >

Articles and Resources

Social construction of knowledge


Jon Udell on Wikipedia dispute resolution >
Jon Udell on tools for seeing change histories >
Legal
Software Freedom Law Center >
O'Reilly Policy on Re-Use of Code Examples from Books >
Fair Use -- wikipedia >
Fair Use -- University of Texas >
Fair Use -- Stanford >
Extreme Programming
Extreme Programming Summary Page >
AJAX
Ajax: A New Approach to Web Applications >
Ajax Patterns >
ajaxian >
w3schools
w3schools.com >
CSS
css.maxdesign: listamatic >
richinstyle.com >
JavaScript Articles
Automatic Testing of JavaScript UI >
sitepoint.com: Enhancing Structural Markup with JavaScript >
sitepoint.com: Cross-browser event registration >
quirksmode.org: innerHTML >
GreaseMonkey > - a Firefox extension that allows end-users to add JavaScript "plug-ins" to
any existing page. Similar to the Chandler idea of allowing for end-user scripting in python.
JavaScript coding standards >

http://www.openrecord.org/bookmarks.html 05/21/08 20:02:43


Bookmarks - openrecord.org 5

Joel-on-Software: Hungarian notation >


Calling superclass constructors >
Packages (or namespaces) in JavaScript >
Object-Oriented Event Listening through Partial Application in JavaScript >
Advanced DOM techniques >
The Dojo XMLHTTP wrapper, the back button, and bookmarking >
Catching JavaScript errors on the client and logging them on the server. >
JavaScript Tools
Selenium > -- UI unit tests
JSLint >
JavaScript Lint >
venkman >
jsunit >
mozilla.org: DOM reference >
WICK: Web Input Completion Kit >
Drip: a memory leak detector for IE >
XMLHttpRequest Tracer and Debugger >
JavaScript widgets and libraries
powerforms: text field validation >
gosu.pl libraries >
burstproject.org >
cross-browser.com >
mozilla.org: JavaScript >
Sajax > Sajax makes it easy to call PHP, Perl or Python functions from your webpages via
JavaScript without performing a browser refresh.
bigbold code snippets >
PHP widgets, libraries, tools
php manual >
pear.php.net >
jpgraph >
maani.us charts >

Client-server and server-server communication

Server-side content aggregation: Jetspeed >


Connecting Java and JavaScript: Nextapp echo >
Connecting JavaScript, XML, PHP, etc.
sitepoint.com >
xmljs >
scriptserver >
apple.com: xmlhttprequest >

Content Management Systems (CMS)

cmsmatrix.org > - a site with feature comparison charts for hundreds of CMS products

http://www.openrecord.org/bookmarks.html 05/21/08 20:02:43


Bookmarks - openrecord.org 6

opensourcecms.com > - a site with clean-installed versions of lots of open source CMS products, so
that you can play around with them without have to set up your own installations
eZ publish tutorial > - a good tutorial for building a simple site using eZ publish

You can copy freely from this site — copyright rights relinquished under the Creative Commons Public Domain Dedication >. XHTML > | CSS >

http://www.openrecord.org/bookmarks.html 05/21/08 20:02:43