Digest 2014-07-09

Welcome to the Federated Wiki weekly hangout for July 9, 2014

This pad text is synchronized as you type, so that everyone viewing this page sees the same text. This allows you to collaborate seamlessly on documents!

Who is on the call today?

  • David Ing
  • Paul Rodwell
  • Tom Lieber

What's the discussion today?

1. Ward's commits down in the core
  • Keeping in sync with screen, DOM attributes
  • A ceiling in what can be done on the client side
  • Over 3 years, has transmuted from server side to client side

2. Two weeks ago created a page merge with a drag-and-drop gesture

3. Ward thanked Paul for keeping the node package up to date

4. Ward has been working on dynamic modelling capability for Michael Mehaffy
  • Feedback mechanism
  • Bottle of beer example that loops or feeds back
  • Scroll bar on bottles of beer, can drag back
  • Time base: 1 iteration per second, could be set to 100 times per second, 1 per second is good for testing

5. Paul:  Express4
  • Connect middleware is a separate project, needs to be brought in separately
  • Version works, but seems to fall over when getting into system:  not sure where the problem is

6. Ambition to modularize the database better
  • Not sure if easy or hard
  • Nick says there's an abstraction worth modelling
  • Require an external package, rather than requiring some code?
  • For page data, may make sense; some pages fetched from flat files:  Welcome Visitors
  • Used to proxy to fetch a page from a remote server, ask you local server to fetch it, turns out to have been a bad idea
  • Loses permissions:  if use a proxy inside a firewall, getting to a page outside the firewall, bettter to let the client do it
  • Fork to a remote server, had done from browser local server
  • Had done a version of the server in Go:  get knocked out fo the easy path in Go
  • Have put Go work on hold, working on client
  • Working on URLs, something more mathemetical, with equal signs if remote?
  • Maybe won't require a server change, could make the change on client side only
  • Most requests are made on individual files
  • When ask for JSON, just asking for JSON pages
  • Usually single page, don't think it impacts the server

7.  Staying away from server, now having challenges keeping up with Ruby upgrades
  • Have been doing SSH copies of the built client, seems to work so far
  • Treating the Ruby code as legacy, it used to the first place, the showcase
  • Have to fix that:  getting rid of Ruby entirely?
  • Install of node.js may not work, on machine that is 3 revs behind
  • Maybe should go and buy a new Mac Mini
  • Consider a refurb?
  • Maybe should consider a Linux machine
  • Had a colo, hoped to not go there, hoping to get off that
  • Easy to set up a server

8. Camastore install party, at a coffee shop
  • NPM install wiki just worked
  • So why messing around with Camastore? (Camlistore? http://camlistore.org/)
  • Then have a blank wiki, trying to figure out what to do with it

9. Mike Caulfield has been running a summer school with other education geeks, people who like blogging
  • Trying to figure out how to turn on the community
  • How to solve the blank page problem
  • Would like to set everyone up with a neighbourhood
  • Group curation of favorite movie lists, spend time finding it on different services
  • Structure for sharing, and then invite people
  • Half wants to have it, but then sharing is different from IMDB, or wikia (that is fan-related)
  • A good demonstration of the federation model, building out template pages and template sites, where you have advice on how to write reviews

10.  Server side, looking at cola, another web framework that was done with the same guys as Express, but uses ECMAScript 6
  • Looks neater than Express
  • ECMAScript 6 is in the next version of node.js
  • Doesn't seem to be supported by CoffeeScript
  • May not be any more of a rewrite
  • CoffeeScript as a good transitional path, but may lose it (sooner or later)
  • In day job, just decided to not use CoffeeScript, building own chops at JavaScript
  • Moving the server would be easier than moving the client, more independence
  • Server-side plugs won't be a problem, they're all compiled down to JavaScript anyway
  • How to run from a Ruby server?
  • Requests coming into the same port, cooperation, don't quite understand, there must be some low-level routing done by Node; doesn't mix Ruby and Node?
  • Cross process boundaries?  5 server side plugins at boot, then server side gets booted, and then routing through proxy, so they don't have to be in the same language?  And won't take the server down?
  • A way to expose more server-side
  • Annoyance:  looking at recent changes, and it doesn't have recent changes, just those when the tab is launched
  • There ought to be eventing on the server that notifies the client:  more RESTful, server side components (supported or not supported, so don't pile on responsibility to all servers, could have some fully-featured servers)

11.  Forking a page, for beginners?
  • Idiom:  two tabs, one on local wiki, and then on someone else's wiki
  • Simple gesture to take the flag of the page you want, and drag to the first tab - see http://video.fed.wiki.org/view/23-page-drag-link for a demo.
  • If hover over tab, then can drop
  • Then have the page open in the same tab, then can refer to it, and fork it there
  • Mike Caulfield's experience:  too much to explain in the first 10 minutes
  • How can a beginner navigate a little bit?
  • Ward's alternative:  get a link to sites.fed.wiki.org, and put that on Welcome Visitors page:  puts that site in the neighbourhood; have the sites wiki, then can get to the site, all within a tabe, and then find the page, fork that; then go back to home page
  • Have been working on mulitple wikis
  • Mike's approach:  for people who he's asked to participate, will make the page with the URL with four pages open, where people are ready to collaborate
  • That gets you going in the first 10 minutes, then see as a toolkit for collaboration
  • Mike is using a farm approach
  • Allows people to start, and then move content
  • First a tenant farmer, a farm owner, and then a farm lord
  • Obstacle?
  • Ward resists forking a page, because it's owned by someone else:  boundary pages that are multiply located
  • Some content doesn't fit on some wikis
  • The idea that duplication is good versus bad, is a philosophical issue:  How is this duplication good?  Look at nature?
  • Curating or bookmarking a page rather than forking (as language)
  • Fork not as a user-centric word
  • One of Mike's colleagues says it's too complicated: it's true of every wiki, there's an origin, there's never a clear layout
  • Can know a region of a wiki
  • Pinterest gets around this:  looking at a lot of pages at once, photographic centric, just browsing, can grab and put on own
  • Would like this dynamic for fed wiki:  UI of Pinterest is understood by many, for curating and editing
  • Could we make a Pinterest board?  Get a Pinterest style board of Recent Changes, that could go beyond the origin site, deeper
  • Ward didn't volunteer to code this, other priorities
  • A commonplace book? A scrapbook, and then writing own content to augment that
  • Wife does Pinterest, she does a lot of crafts, always looking for that
  • Cooking, so looking for recipes
  • Thought Evernote was leaning this direction, but talk to people who want to get off Evernote:  still a curation approach
  • Question of ownership on platforms

12. sites.fed.wiki.org
  • Made pages with references to others, want to search other sites
  • If searching, want to be able to control searching
  • One page for every site with a purpose
  • Make sure that the page starts with a keyword, reducing the content
  • Immediately followed by a reference to that site
  • When you bring a sites.fed.wiki site, you don't bring the whole site
  • If you press enter in an empty search field, then shows all of the pages in the neighbourhood
  • Searching from sites gives weird domain names, rather than page titles

13.  Importing from Etherpad is ugly.
  • David will write an issue

14. Node conference
  • Workshop-oriented, giving help to struggles
  • Gives content for local node schools
  • Kid's education camp for the weekend, sustainability
  • time cat:  tournament, built in to Linux, just run "time cat" and press control-C to get closest to 1 second
  • Kid's foursquare playground game:  draw four squares, red playground ball, expand ... to 25 squares

15. Look at http://slidewiki.org 
  • University of Leipzig

16. If had pages in a wiki, how could it be made a reasonable presentation?

17.  substack's presentations: Telling a story from a command line
  • Command terminal written in HTML, can write SVG
  • Can type command, and it goes wrong, and can recover:  calling up files
  • Preparation for an ad hoc experience

18:  Nick's advice on Express 4?
  • If had to rewrite today, would use HAPI
  • Now on version 5 or 6
  • They say that they'll slow down on major versions for now
  • Clean interface
  • Easier to understand
  • There's a workshopper:  Walmart Labs did a node school for it
  • COLA?  TJ announced he's leaving the Node community, so the future will be maintainers only
  • He's going to Go (posted the announcement on a Node-based web site)
  • Read a "what's wrong with Go" web post, it's not a cure-all
  • After in Go for a while, looks like Rust
  • Had used Sinatra, and Express was a Sinatra clone

19:  Next week, a company offsite, so Ward won't be here
  • Can post a time on Frequently Asked Questions