WebWorkersCampParis3 15th and 16th of April 2011 at La Cantine
#WebWorkerCampParis3 on Twitter, identi.ca, Live Cast, TwitterStreamGraphs, Collecta, flickr
Own objectives
- stay up to date on web technologies
- check trends
- tests my own ideas
- building new stuff
Attended activities
- objective
- Wikipedia:Category theory
- objects vs tables
- quoting Donald Knuth
- normal imperative program does create a key-value store equivalent
- from pointer address to value
- discussing Codd and "normalization"
- cost on the programmer (but safe job for DBAs)
- multiple tables as a "foreign-key primary-key store"
- Wikipedia:Principle of compositionality by Frege
- and the power of recursion
- with
this
recursion as the default
- impedance mismatch, programming language vs. data language
- mention of LINQ (didn't see the talk during the previous WebWorkersCampParis)
- LINQ as Monads, LINQ Queries as sugar syntax
- work to pretend that tables are objects
- mention of the www also as a key-value store
- overall criticizing the whole process and its very numerous steps
- ad-hocs query don't scale
- even with index
- select from www...
- how to solve it?
- advantages
- tradeoffs
- explicit on doing the queries
- optimizer can't reason about the code
- eventually consistent, have to propagate coherence
- early web links were pointing the other way around
- then transitioned to the open world paradigm
- mention of Tim Berner's Lee early search for funding
- existing solutions
- purest noSQL
- HTML5 datastore
- on the query language
- doubts on CouchDB/MongoDB with "query by example"
- but rather Raven with emphasis on links
- see also
Duality
SQL | coSQL |
children point to parents | parents point to children |
entities have identity (extensional) | environment determinates entities (intentional) |
environment coordinates changes (transations) | entities responsible to react to changes (eventually consistent) |
closed world | open world |
not scalable | scalable |
not compositional | compositional |
Back to the Menu
Turblences par af83
- but
- contre le monopole
- e.g. Facebook, LinkedIn, ...
- limitant la vitesse d'innovation
- contre le reseau social technique
- qui ne correspont pas au reseau social classique
- flexibilite de mentir ou de cacher une information
- contraintes
- soutenable, securise, anonyme si choisi
- resultat
- permettre la proxification
- pouvoir gerer ses informations par applications
- et donc mentir a ceux ou celles auquel on ne fait pas completement confiance
- Portable Contacts pour la liste de contacts et de resources
- oAuth2
- webfinger pour decouvrir le point d'entree
- https://auth.af83.com
- separation authentification identification
- possibilite de mieux gerer les services externes e.g. SaaS
- difference principale avec Facebook/Twitter/Google/... Connect
- champs meta par defaut
- permettre l'interposition de proxy
- voir aussi
Back to the Menu
Goliath par Bruno Michel
- Goliath and friends
- plusieurs modes dev/test/prod
- plugins https://github.com/postrank-labs/goliath/wiki/Plugins
- a venir
- Cloud Foundry, Websockets, SPDY?, interface a la Sinatra/Grape? (pour l'instant tres Rack)
- Q&A
- Rails? pas pour le moment, plus pour des proxy de performance
- debugging? plus de backtrace
- implementations des fibres? light thread
- voir aussi http://goliath.io
Back to the Menu
LINQ par Pierre et Claude
- etre capable de choisir le bon framework
- but
- exprimer des requetes programmer et provider friendly
- eviter de coder la requete
- automatiser le requetage
- adapte a NodeJS/OpenMQ/MapReduce/... puisque evenementiel et fonctionel
- lazy evaluation, easy composition
- Expression comme arbres
- manipulation d'enumerable avec comme source
- BDDs
- texte pour les examples
- mais aussi du code
- LINQ to object, chainage de fonction
- voir aussi
Back to the Menu
UC Engine, af83
- protocol PubSub (dc tech. agnostic)
- envoie evenement sur une queue
- evenement recu par ts ceux inscrits
- difference
- code en Erlang
- JS Client, Ruby Brick (service, e.g. traduction), ...
- gestion d'evenements
- possibilite de rejouer des evenements
- utilisation du long polling
- voir aussi http://ucengine.af83.com/
Back to the Menu
Overall remarks and conclusions
- another aspect, like previous Saturday, on the efforts required to push for technologies
- including languages
- against the "build it and they will come" stereotype
- mostly af83 and friendly technologies?
Back to the Menu
Other reviews or coverage
To do
- link to previous WebWorkersCampParis
- notes on programming, languages, tools, etc...
- improve Template
- add map data (:ola-point lat= lon= text='':) (La Cantine)
- notes from the 15th and the few checks I did
- topic that were not really discussed when I was there
- geolocalization
- HTML5
- Grid presentation I missed
- myJS by @jie
- http://myjs.fr/
- SPDY
- Wikipedia:SPDY https://github.com/igrigorik/spdy
- Sammy.js A Small Web Framework with Class / RESTFul Evented JavaScript
- Backbone.js models with key-value binding and custom events, collections with a rich API of enumerable functions, views with declarative event handling, and connects it all to your existing API over a RESTful JSON interface
- chat on interfaces
- still no collaborative spaces
- <100 Microsoft Surface in France?
- yet Nintendo Wii, Microsoft Kinect, Apple iPad, ...
- recall Seedea:Seedea/Seedea#Interactions
- more on Kinect
- http://depthjs.media.mit.edu (also added to
- http://openkinect.org
- http://kinecthacks.net
- http://www.freenect.com
- http://www.ros.org/wiki/kinect including http://www.ros.org/wiki/mit-ros-pkg used for Kinect Hand Detection aka "Minority Report", MIT CSAIL 2010
- PerlDancer The easiest way to write web applications with Perl