| Buckybase rewrite | |
| JSON output |
The real content of a page is a JSON object... the user-entered plain text is an (optional) adjunct.
This means apps can create pages directly via the JSON API, not via plain text.
| Buckybase rewrite | |
| http://docs.jquery.com, http://folklore.org, http://docs.jquery.com/Ajax |
Buckybase's hyperlinked data model is the ideal fundament for such a site.
Designing a website based on a Buckybase site consists mainly of telling the generator what information to leave out (!).
And a bit of templating.
| Buckybase rewrite |
- Public vs shared sites (private site = shared with one user).
- Open vs closed registration.
| Buckybase rewrite |
For editing a shared site.
Will people edit the same pages or wiki = mashup of individual accounts/pools?
| Buckybase rewrite |
This means Google Apps integration for free (e.g. hosting Buckybase for an Apps domain.)
GAE's accounts integration is still lacking, though (there is no way to get a fixed identifier for a user). I assume this will be fixed in the next GAE release.
| Buckybase rewrite |
The top-level shows the contents of a single site/account/pool (?), so pages are at domain/Page.
| Buckybase facelift |
popup menu?
tool-spec = URL template with access to page fields, e.g. http://books.com/search?isbn={{isbn}}
| Buckybase facelift |
- more noise; think amazon.com; the brain seems to be wired for it, and the current minimalism boom needs to be countered :)
- focus on page lists; single pages are almost never looked at
- more bling for fields?
- logo
- think Deckard's home computer
| Buckybase facelift |
graph, grid, ...
| Manuel | |
| System One |
Used to blog at www.freememes.com
| Lev Manovich | |
| http://cristine.org/borders/Manovich_Essay.htm | |
| http://litl.com, http://modernista.com | |
| Post-narratological design |
"Many new media objects do not tell stories; they don't have beginning or end; in fact, they don't have any development, thematically, formally or otherwise which would organize their elements into a sequence. Instead, they are collections of individual items, where every item has the same significance as any other."
"In contrast, a narrative creates a cause-and-effect trajectory of seemingly unordered items (events)."
"What we encountered here is an example of the general principle of new media: the projection of the ontology of a computer onto culture itself. If in physics the world is made of atoms and in genetics it is made of genes, computer programming encapsulates the world according to its own logic."
I was expecting I could click on, e.g., 'Priority', and get a list of what values Priority can take: low, medium, and high (supposing those are all the values in existence). And maybe do the same thing for a key but across all users. How should this work?
| Books | |
| Semiotics, Mythology | |
| Roland Barthes | |
| 1957 | |
| 978-0374521509 |
"[Mythologies] illustrates the beautiful generosity of Barthes's progressive interest in the meaning (his word is signification) of practically everything around him, not only the books and paintings of high art, but also the slogans, trivia, toys, food, and popular rituals (cruises, striptease, eating, wrestling matches) of contemporary life . . . For Barthes, words and objects have in common the organized capacity to say something; at the same time, since they are signs, words and objects have the bad faith always to appear natural to their consumer, as if what they say is eternal, true, necessary, instead of arbitrary, made, contingent." – Edward Said
CRPrimerWiki
| oEmbed | |
| http://oohembed.com | |
| http://buckybase.blogspot.com/2008/06/oembed-support.html |
Simply paste an Amazon product URL into the page.
Pasting an URL, and having appear, automagically, an "object" has a very nice feeling.
| http://buckybase.appspot.com/manuel/album/category/of?view=table, http://buckybase.appspot.com/all/buckybase?view=table | |
| http://buckybase.blogspot.com/2008/06/sortable-tables.html |
Provides client-side sorting of a page list with a JavaScript-enhanced table.
Works for fields (e.g. "category of") and for /all URLs.
Column heads are clickable for sorting (use shift-click to sort using multiple columns).
Next step: user-defined columns (currently displays the 7 most common columns).
| http://buckybase.blogspot.com/2008/06/oembed-support.html | |
| oEmbed |
Embedding images now works better for all aspect ratios:
(Except for this white space below panoramas, which will require additional JavaScript-resizing of the iframe.)
Wikinaut, smart, disorganized individual and newbie GoogleApplicationEngine programmer.
| 400g Spaghetti, 2 Eier, 10 dag Speck, 5 dag Parmesan, 2 Knoblauchzehen, 50ml trockener Weisswein, Olivenöl |
Zubereitung: Spaghetti in ausreichend viel gesalzenem Wasser zum kochen bringn. Olivenöl erhitzen, Knoblauch mit einem messergriff zerdrücken, ins öl werfen und auf mittlerer Hitze lassen bis der Knoblauch recht braun ist. Knoblauch dannach wegwerfen. Den in würfel geschnittenen Speck hinzufügen. Während der speck brät, die 2 eier in einer schüssel verrühren und den parmesan dazureiben. Ausserdem etwas schnittlauch, pfeffer und salz dazu. Wenn der speck gut gebraten ist mit dem Weisswein ablöschen. Wenn die spaghetti al dente sind, kurz abtropfen lassen, und dann in die schüssel zu den eiern. Den speck hinzufügen, alles gut durchmischen, fertig!
| 06 24 2008 |
I'm curious about the idea of Buckybase and the way it is presented. I'm building someting similar using couchdb, mainly to organise feed entries, links references and notes.
| high | |
| JSON, JSONP | |
| JSON API |
This is probably the sanest way to get data out of Buckybase.
A page could look like this:
{ title: "JSON output", fields: { "priority": ["high"], "tag": ["JSON", "JSONP"] }, fields_text: "priority: high\ntag: JSON, JSONP", body_text: "This is probably the sanest way to get data out of Buckybase. ..." }
Every page will have a URL /user/page?json plus there will probably be a /user?json too (returning a list of pages).
JSONP would make sense, too.
| Darius Bacon | |
| low | |
| http://github.com/darius/vicissicalc/ |
A trivial spreadsheet program I just hacked up. (This is just a test post for me to try out Buckybase.)
| Perlisisms |
"Because of its vitality, the computing field is always in desperate need of new cliches: Banality soothes our nerves."
| Perlisisms |
"Bringing computers into the home won't change either one, but may revitalize the corner saloon."
| Perlisisms |
"In a 5 year period we get one superb programming language. Only we can't control when the 5 year period will be."
| high | |
| http://jaspan.com/improved_persistent_login_cookie_best_practice | |
| Buckybase security | |
| Session cookie |
The login cookie will enable detection of cookie theft (and you won't get logged out automatically when the session cookie expires).
The login cookie is in addition to the session cookie.
| Session cookie, Persistent login cookie |
Currently, when an attacker steals your session cookie he can delete/manipulate all your pages until the cookie expires (currently 1 hour).
In the future, once the persistent login cookie is implemented, the attacker will be logged out (and the theft will be detected) once you access the site again (to be precise: once you access the site with an expired session).
Plus, once the persistent login cookie is implemented, logging out will prevent the attacker from accessing your account.
Additionally, I plan to implement a much shorter session expiration time, and edit throttling (allowing only N edits per minute per user) to limit the possible damage by an attacker.
To wrap it up: Currently, the system is very vulnerable to cookie theft. Once the persistent login cookie is implemented, and you log out when you are not actively using the site, the system will be quite safe.
| http://pdos.csail.mit.edu/papers/webauth:tr.pdf | |
| Buckybase security | |
| Persistent login cookie |
The session cookie consists of the username, an expiration time, and a HMAC-SHA-256 of the two (which uses a server-side secure key).
| http://www.w3.org/2008/Talks/0617-lod-tbl/ | |
| Tim Berners-Lee |
by: or creator:, that's the question!
| idea |
A thought (for my own devious purposes).
User customised bidirectional links: Display only the out-going_link or incoming_link depending on link end.
Perhaps outgoing|incoming: syntax.
| Blue sky | |
| UI support for pools |
Like Flickr pools and Friendfeed rooms, for topic-based collaboration.
Pages are explicitly added to pools using "pool:" keyword.
del.icio.us/Twitter-style following would be optimal but I don't think it can be implemented well on App Engine.
The pool attribute could be implemented as a non-expando, indexed Datastore property. This would allow fast per-pool /all/ pages.
| Blue sky | |
| Autocompletion for field values |
Opens the "New page" dialog with all fields names of an existing page already filled in.
So you can create e.g. a lot of pages about movies much easier.
| Blue sky | |
| UI, AJAX, Hot | |
| "New page like this one"-command |
E.g., when you place the cursor after "priority:", a menu with { low, medium, high, blue sky } pops up.
| Manuel Simoni |
rocks hard.
| manuel | |
| alpha | |
| ***** | |
| bidirectional, note taking, document, database. |
No-one can tell you *what* the Buckybase /is/: You must experience it for yourself. :)
thoughts: Wonders how Buckybase will handle this long thought, the note taking and point after the database tags, the /is/: predicate - also how in the future it could enable easy cross-namespace linking without hyperlinks and how the /all/ fits in.
update: <a href="http://buckybase.appspot.com/manuel/re%3A-neuraxon77"><blockquote>Predicates/fields work only at the start of a page by design.</blockquote></a>
interestingness: fivepredicate test: How are multiple-word link predicates handled if at all...
That should break it; only kidding. :)
<del>bug:</del><ins>see: <a href="http://buckybase.appspot.com/manuel/persistent-login-cookie">http://buckybase.appspot.com/manuel/persistent-login-cookie</a></ins> login session timed out while I was typing this in between chatting to a friend.
Update: This test answered a lot. :)
| predicate/fields | |
| <del>bug</del> <ins>feature</ins> |
Regarding the colon in the body of text. Fields immediately following one another on separate lines in the body don't display on separate lines. At least they didn't in my previous page.
line1: some text.line2: some more text.
This one is broke too or is this a feature? :)
| neuraxon77 |
Meta-circularly me. :)
:)