Skip to content

Instantly share code, notes, and snippets.

@tav
Created July 25, 2009 19:00
Show Gist options
  • Select an option

  • Save tav/154860 to your computer and use it in GitHub Desktop.

Select an option

Save tav/154860 to your computer and use it in GitHub Desktop.
====
Todo
====
Auto-follow user and get user to auto-follow @openkollab
Notify users who have protected statuses that they need to follow @openkollab
Parse ~labels
Map non /.service requests to openkollab.com to ~labels
~user/label
openkollab.com/evangineer/hub-pavillion
~evangineer/hub-pavillion
~pcamp/london
~pcamp/berlin/openmoney
* /names can only begin with an alphanumeric
* Short URLs
* Search URLS
* Auto Scroll
* Custom Buttons
* Error Messages
* Loading Indicators
* Ban Users
* Autodetect location via Gears
* Autodetect location via Brightkite
* Autodetect location via FireEagle
* Clustered Google Map view
* Calendar View
* Input Widget: Geo location
* Input Widget: Date Time
* Input Widget: Links
* ICal Output
* RSS Output + GeoRSS
* Microformats
* Prefix Matching in search* -- single word
* #tags and Word
* Filter by Context
* Filter by Type
* Filter by Tribe
* Top/Rank Links
* Top/Rank Videos
* Streak Calendar
* Threading
* Google Translate
* Questions -- Answers
* Wants -- Offers
# Share on Facebook
# Digg
* Tribal Listings
* Longurls
* Embed: Flickr
* Embed: YouTube
* Embed: Vimeo
* Embed: TwitPic
* Set Timezone
* Show relative times
* I18n
* Stats
* Rolling Window
* Set User
* Filter By User
* Normal Twitter Login
* OAuth via Twitter
* Delete
* Made Possible By...
* Paypal
* Embeddable Widget
* API
* SMS interface
# locations
.location hub-kings-x 34b York Way, London N1 9AB, UK (51.532749,-0.122437) http://www.the-hub.net/kingscross
.location hub-kings-x 34b York Way, London N1 9AB, UK http://www.the-hub.net/kingscross
http://maps.google.co.uk/maps?f=q&source=s_q&hl=en&geocode=&q=34b+York+Way,+London+N1+9AB,+UK&sll=55.547,-5.065797&sspn=0.421084,1.230469&ie=UTF8&ll=51.532749,-0.12248&spn=0.006928,0.019226&z=16
# events
.event <biomeet> Meetup at @tav/hub-kings-x to discuss viable biofuels
.event <launch-party> Launch Party @tav/hub-kings-x on 2009-03-01 13:00Z http://www.facebook.com/events?eid=382084
# ideas/concepts
.define <plexverse> Web 4.0 -- A Web 4 The People By The People http://www.plexverse.com
# suggest an action
@evangineer/612
.suggest Get in touch with an old friend!
.suggest <build-friendships> Get in touch with an old friend!
# ask a question
.ask Does anyone fancy dinner on saturday?
Alias: @tweetcampaign [marks as a suggested action -- no need for !]
Alias: @tweetquestion [marks as a question -- no need for ?]
Alias: @tweetidea [marks as an idea]
Alias: @tweetevent [marks as an event] -- need to get this...
@tweettribe
===========
definition:
@tweettribe architecture4humanity Architecture for Humanity http://architectureforhumanity.org/
@tweetyes
=========
yes to an event:
@tweetyes I'll be there in time for a presentation @tav/biomeet but will miss the first half hour
yes to an idea:
@tweetyes @tav/plexverse Great idea!!
join a tribe:
@tweetyes @tav/architecture4humanity
@tweetno
========
no to an event:
@tweetno sorry, i won't be able to make it to @tav/biomeet -- it's our 10th wedding anniversary =(
@tweetno Sorry, I can't be there for @tav/launch-party -- away in Iceland =(
leave a tribe:
@tweetno @tav/architecture4humanity
@tweetoffer
===========
make an offer:
@tweetoffer I can help at the bar for @tav/biomeet
@tweetwant
==========
state a desire:
@tweetwant Does someone have a spare projector for use @tav/biomeet ? need it for @sofia's presentation
Alias: @tweetneed [marks with higher priority]
@tweetbelief
state a belief:
@tweetbelief Fat people are greedy
@tweetif
ask for stuff:
@tweetif 100 $20 Will write an open source Twitter OAuth library
@tweetmaybe
@tweetintend
@tweetprofile
@tweetsaving
@tweetcost
@tweetdefine
Day of Event/Attendee focus
Every event has an official hashtag on Twitter
Get attendees' Twitter usernames
APIs - Eventbrite (read Terms of Use), Twitter, Wordics
Olio featureset
Identicon/MonsterID integration
Organizers focus
Reports
APIs - Flickr, Dopplr, YFrog,
Facilitators focus
Open Space
World Cafe
Capturing Event output
APIs - Facebook
Time/Space grid for open space (or other) events
Aggregate tweets for sessions #event-tag.session-id
Shaila
Citizen Journalists
cancel / postpone events
idempotent actions
--------------------------------------------------------------------------------
+ app.yaml
* index.yaml
+ static files
* logo
+ site config
+ wsgi framework
+ wsgi runner
+ wsgi start_response
+ wsgi application
* wsgi http method handler
* request
+ response
* uri parser
## general admin
* compress images into one image file
* unmarked versions pack()
* deploy as fb app
* liquid/fixed-width css handler
## external
* disable docutils include
* abstract map js thing -- mapstraction
## identity
* facebook api
* openid api
* oauth api
* gdata api
* login via facebook
* login via google authsub
* login via openid
* zoomable user interfaces
* radial interfaces
* radial menus
* special view filters, e.g. magnifying glass
* cluster graph
* treemap
* UserLogin type
* UserEntity type
* UserPreferences type
* many-to-one mapping of UserLogin->UserEntity
* authentication cookie
* secondary-authentication uri parameter __auth__=
* key generation
* login
* logout
* basic profile info capture (suggested nick)
* simple registration extension
* user settings handling
* profile picture handling
* user profile: ~4802232-42480-24224-2424242/
* user service aliases
* user user aliases
* user quota monitoring
* user "web app" installs
* privacy/capabilities
* automatic user private context
* user subscriptions
## core
* json encode/decode
* lower-casing
* geo ip lookup
* map / reduce
## backend
* register_service(transaction=true, safe_html=True, filter=True, admin=1)
* uri parameter handling
* uri typing handling
* service input validators
* service param name mapping (lower case all and then transform)
hyphens (first-name -> first_name)
studleyCaps (firstName -> first_name)
keywords (from -> FROM)
* generic handler
* GET handler
* POST handler
* DELETE handler
* HEAD handler
* transaction support
* Redirect support -- raise Redirect('DELETE', 'ses') / raise InternalRedirect
* service registry
* safe services
* service pipelining
* service call() | call().
* untrusted service call time count
* verb-noun .service naming
* -WhatIf -verbose -dry-run
* format-* / renderers
* templating
* javascript + legacy dynamic templating
* slots support
* iphone detection
* sanitise output
* safe_html support
* csrf token support
* caching + time-out
* event subscriptions
* event sends
* event timeouts/expiry
* event update lookup queries
* api object
* environ object
* .service handling
* ?service help handling
* !local-view call handling
* #private service call
* service.string_handle handlers support
* auto-parsing out of @contexts -- @tav,tav:2384,mike:
* special case ~/item/
* html + rich text renderer
* psh handling
* psh() / psh.Pipe
* #! psh
* python script support main()
* python script safe execution
* service filters (yield)
* script service metadata (incl. help + syntax/parameters) auto extraction
* safe support of script builtins
* pimp import support
* script caching
* script-specific Expando model
* genshi templates
* markdown rendering
* rst rendering
* syntax highlighting
* substitutions
(|first_name|)
(|.convert 23 gbp to usd|)
_self / _user
welcome (|first_name|),
espra.com/~david/Greetings?first_name=George
* plexlinks
[[Greetings; first_name="George"]]
[[Greetings -first-name "George"]]
[[Apple]]
[[Apple|"Sucky Megacorp"]]
[[.convert 23 GBP to USD]]
[[.convert; 23; GBP; USD]]
[[.convert; 23; from=GBP; to=USD]]
[[.convert; amount=23; from=GBP; to=USD]]
[[.convert 23 GBP to USD | double-price | "Click here"]]
[[.convert 23 GBP to USD|"Click here to see the latest price"]]
* includes
{{Greetings; first_name="George"}}
{{Apple}}
{{.convert 23 GBP to USD}}
{{.convert 23 GBP to USD | double-price}}
If you are new to this site, [[Greetings; first_name="(|CurrentUser.first_name|)" | "go here"]]
* prop setting
[[#title=Hello World]]
[[-title "Hello World"]]
* virtual host service
* virtual host auto-templating
* include recursion limit (?)
r'"""[^"\\]*(?:(?:\\.|"(?!""))[^"\\]*)*"""'
* scriptblock { $_.Extension -ne "gif" } { _.Extension <= 5 }
* pep 3101
* -lt -gt -eq -ne
* -like -match -clike -notlike -cnotlike -ilike
* $error
* (foo-bar).prop
* -inputobject
* $args, $_, $input
* param()
* [decimal]
* [datetime]"2007/77/12"
* [int]
* [sytem.datetime]::Now
* error handling
* pretty traceback on ?debug_mode=1
## data
* types
* auto indexing
* text indexing
* datastore search()
* safe Item
* get(Messages).filter()
* safe search()
* most recent item sorting
* most relevant item sorting
* most "buoyant" item sorting
* batched sorting
* item access/capabilities
* item naming
* item props
* item virtual directory support
* item links
* item has_word
* context namespaces
* context sets
* context relations
* auto-versioning of items
* item delete
* item diff
* item pattern matching handling
* post-save pattern matchers
* drafts
* max 500 requirements limit
* saved/shared views
* Item type
* Context type (communities)
* File type
* Event (incl. location) type
* Relations
* Message
* Question (answer)
* Structured answers
* Action
* Definition
* Shaila
* Text
* Comment
* Pecu Allocation
* Transaction
* Requirement
* Action: option, title, description, assigned-by, assigned-to, status, predicted-eta, value
* transaction item signing
* auto-requirement for user's "private" context
## trust maps
* trustmap -1000 - 1000
* trust maps
* trust map calculations
* certifications (+1 ratings)
* auto-certifications (incl. external input feeds)
* auto-certification suggestions
* certification of people (novice, apprentice, journeyman, master)
* undugg listings
* mainstream calculations
* trust map sorting
* anonymous calculations -- global seed setting
* connection alignment
* blacklisting
* Flickr, Gmail, Yahoo, MSN, Facebook -- relationships input
* percentiles calculation
* percentile calculation usage in requirements
* attaching requirements to a trust map
* subscribing to updates in a context
* live updates in a context
## tagging
* tagging reference syntax
* annotation framework
* deep tagging
* paragraph tagging
* time tagging
* photo area tagging
* structured data annotation
* subtitling
* translation
* auto tagging handler support
* auto tagging of images for events
## i18n
* language detection
* contextual n-grams -- for everything from spelling to ...
* language settings detection
* timezone support
* language support
* template/service i18n extraction
* localisation loader
* english + french l10n file
* bidi script
* date/time rendering
* js i18n
## frontend
* tp: unauthenticated /home
* tp: generic (incl. home link)
* tp: iphone
* tp: css
* ui: iphone
* ui: back button + bookmarking
* ui: live update
* ui: minimal profile (phone, skype, location)
* ui: id selector-esque login box
* ui: language settings
* ui: settings pane
* ui: auto-focus fields
* ui: growl messages
* onblur/onfocus / window.onblur = function () {hasFocus = false;}
* ui: slide-in/out elements
* ui: auto-sizing textarea
* ui: sortable lists ??
* ui: ueberlein
* ui: search
* ui: lookout screen
* ui: input field
* ui: filter system
* ui: views
* ui: saved views
* ui: new item
* ui: context specifier (incl. @context/item adder)
* ui: create item
* ui: delete item
* ui: item history
* ui: trust maps
* ui: follow
* ui: certification
* ui: comments
* ui: listing format
* ui: calendar format
* ui: map format
* ui: fb-like Line underscore to delimit
* ui: fb-like results batching 1... 2...
* ui: newspond-like
* ui: toggle buttons
* ui: auto-certify
* ui: application commands
* ui: autosuggest questions a la getsatisfaction
* ui: autocomplete of @contexts
* ui: current location setter
## output feeds
* rss
* atom
* rss + iTunes
* ical
* georss
## media player
* generic media player
* flowplayer
* youtube
* mp3 player
* playlist functionality
* internet radio support
## mail/sms support
* mail in
* mail out
* sms in
* sms out
## input services
* generic rss feed
* generic atom feed
* generic podcast feed
* generic ical feed
* generic
* feed updater
* merge input feed items
* auto-certify input feeds
* auto-contextify input feeds
* box.net
* delicious
* facebook events
* facebook photos
* flickr
* friendfeed
* google calendar
* google charts
* google maps
* google translate
* last.fm
* plazes
* seesmic
* skype (incl. conference calls)
* vimeo
* youtube
* visualisation
* google maps clustering
* popurls
* hypem
* amazon
* amazon wishlists
* blogger
* craigslist
* digg
* disqus
* dopplr
* fireeagle
* google reader
* gmail
* linkedin
* meetup
* paypal (integrated with Transactions)
* second life
* upcoming
* yahoo boss
* wordpress
* ilike
* myspace
* netflix
* slideshare
* twitter
* wikipedia
* bebo
* ebay
* jaiku
* livejournal
* google base
* google groups
* google search
* google shared stuff
* hi5
* imeem
* ning
* orkut
* pownce
* reddit
* tumblr
* yahoo groups
* yahoo mail
* yahoo maps
* yahoo search
## cron
* feed update
* get events
* recalc trust maps
* requirements pattern matching
* data mining compressors
## possible services
* phenny functions
* safe/connection-limited WebClient/urlfetch
* .guestlist .invite/* -- list + limit
* .export-csv -NoTypeInformation
* .foreach-object # filters
* .format-list
* .get-acl
* .get-childitem
* .get-content
* .get-headers http://
* .get-service
* .get-title http://ehoo.com | .get-title Foo Bar
* .group-object
* .measure-object -Property Length -average - sum - min -max
* .out-file foo.txt
* .select-object
* .set-global -x "foo" | set-global -x { x + 1 } -for-each | filter { lambda }
* .sort-object
* .view-source | get-source | source
* .where-object
{{.source | .conditional-X | .filtermore | .aggregate ;
.conditional-Y | .anotherpipe }}
{{.source | ?(_.author == 'tav') | .filtermore | .aggregate ;
.conditional-Y | .anotherpipe }}
{{.source | .if(_.author == 'tav') True:(.filtermore | .moo ; .bar | .pretty-print)
False:(.do-blah | .anotherpipe )}}
{{.source | (_.author) 'tav':(.filtermore | .moo ; .bar | .pretty-print)
'sbp':(.do-blah | .anotherpipe )}}
Any
and if you really wanted to operate on the set of results instead of a single result, you could still do | .aggregate | .whateveryouwanttodo
## testing
* firefox 2+
* IE 7+
* opera 9+
* safari 3+
* iphone
* without javascript
## js
* event query
* event update
* window close capture
* gears offline support
* gears install
* sqlite db cache support
## demo apps
* "install" app/requirement
* liquid democracy
* time banks
* auction
* universal dictionary
* language learning thingie
* ircstats-esque
## collaborative editor
* invite users to edit (max 4)
* update edits to server
* lock paragraphs
* release locks
* relay update events to all clients
* ui: new paragraph
* ui: lock highlighting
## misc
* voip
## api
* json api
* csrf/privacy protection
* bookmarklet
* embeddable widget
* widget configuration
## data mining
* access logs
* service usage logs
* commons usage
* items usage/viewing
* contextual activity
* engagement metrics
* data map/reduce workers
* flash visualisation framework
* data getter for visualisation
* ui: visualisation generator
* sample: most active ppl in your trust map over the last 6 months for context
## events
* event server
* comet service
* update frequency handler / scheduler with urlfetch limit + ui
## pimp('feefsfe-313114-1314141:133810438-1311314-41422-224422')
## ssl crl check for openid
## <link media="only screen and (max-device-width:480px)" href ="small-devices.css" type="text/css" rel="stylesheet" />
## <link media="screen and (min-device-width:481 px)" href="not-small-device.css"
## type="text/css" rel="stylesheet" />
## isiPhone: function(userAgent) {
## var agent = userAgent || this.getAgent();
## return agent.match(/iPhone/i);
## },
## questions -- temperaments/archetypes mapping -- wefeel
* services doctest harness
* cache input feeds -- if same from different users (handle redirects)
* attribution certification
* media wiki format
* storytelling
* participatory video | witness
* bets
* open ipo
* narcissus
* social games
* prediction
* firefox search enginelet
* opencalais
* microformats
* loader indicator
* error feedback to user
* /itunes
* activity monitor app -- slife
## sidereel -- links
* virtual contexts (group all activities into contexts)
## Tav (Check me out!)
* xargs
* 1..100 # range
* passthrough object, directs pipeline to end
# ------------------------------------------------------------------------------
* &#164; ¤ &curren;
# Symbol ISO-4217 Description
฿ THB Thai Baht
$ USD US Dollars
₫ VND Vietnamese Dồng
€ EUR Euro
₵ GHS Ghanaian Cedi
₨ INR Indian Rupee
₲ PYG Paraguayan Guaraní
£ GBP UK Pound Sterling
₮ MNT Mongolian Tögrög
₪ ILS Israeli Sheqel
¥ JPY Japanese Yen
₩ KRW South Korean Won
৳ BDT Bengali Taka
₱ PHP Philippine Peso
₦ NGN Nigerian Naira
₭ LAK Lao Lip
¤ PEC Pecus
# @espians/tav
# "strings blah"
# { lambda _: expressions } code blocks
# -flag (flag=1) # only at the end of a call, i.e. not positional perhaps :flag ?
# True, False, Maybe, None
# ¤pecus
# Currency
# ~/articles/bootstrap.html
# /<entity-id>/<item-id>
# | _.foo
# 1..100 # useful for HTTP range requests ?
# get | where { } | sort size
# auto call script block ?? or check for __call__ ?? {! !} or &{ } or !{ } ...
# -foo bar -foo spam ## auto-listify to foo=['bar', 'spam'] ??
# powershell -- pipeline -- ByValue .. ??
# !view-name = .view view-name
# ?service = .get-help service
# .service = .call-with-html-view
.nl foo.txt | .grep ^1\d
# register_service(stringify_entire_input_as_one=False, non_evaluate_code_blocks=('input'))
# validate_input_via_pipeline=False # avoid needless typecasting
# get-content 'c:\windows\Coffee Bean.bmp' -encoding byte | more
* service definition -- input/parameters/help/docstring -- tests
# x..y -> range(x, y+1) # step ?
# builtin URI: <foo.html> syntax ?
# builtin Regex: /Pat/ ?
# dateutil package ??
# track <what> <where>
# track tav city/local_country
# open() -- open URIs ?
# http://bugs.python.org/issue3300. -- urllib.quote utf-8
## linking to specifc #sections for annotation / deep tagging
# inline comments -- for code and paragraph level
# <meta name = "format-detection" content = "telephone=no">
# onorientationchange
# onclick = "void(0)" <-- for iphone
# online conferences -- virtual / physical -- spaces
# recently read / commented -- show / hide / display with icon?
# s/foo/bar/
Decimal --> <char>dec<sign><40-char>.<16-char>
.redirect
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment