#indiewebcamp 2012-08-29

2012-08-29 UTC
Alex_Lykos joined the channel
#
Alex_Lykos
i am back, and all moved in to college
#
tantek
congrats Alex_Lykos, and good luck with the college year!
#
tantek
aaronpk, thanks again for your documentation feedback about "organizing things by use case" - I'm going to think on that some more and see how I can apply to existing specs like hCard in an effort to make it/them more easily/quickly readable/usable in practice.
#
tantek
I'm guessing though that for something like hCard, the "examples/explanations organized by use-case" should still come *after* the complete summary table of rows of hCard properties, type of data for each, and brief definition (which links to a more thorough prose definition later in the spec after all the examples). Is that a reasonable guess? (ok to not be sure, I can try it out and you can let me know how it looks to you in pract
#
aaronpk
my thought was there'd actually be two separate pages, one by use case and one like the existing. having separate pages has the advantage of being able to link to a specific version easier, and would be easier to find what you're looking for when landing on the site from google
#
tantek
Google already indexes the headings (fragment identifiers), so "landing on the site from google" is not a problem for a single page
#
aaronpk
I guess I just think the audiences are so different that it'd be a benefit to split it into two pages
#
tantek
also keeping it as a single page makes it nicer to just scroll back and forth between the sections, rather than feel like you have to open a 2nd page up in another tab, then back/forth etc. (you can still do that with two tabs on the same page, but at least there it's your option)
#
tantek
the audiences are not really different, that's the irony
#
tantek
even the "developers" the parser folks, typically start by constructing examples to try out themselves
#
tantek
so even they want the use-case-centric groupings first, to gain a better understanding, then they can keep reading to the deep technology explanations / nitty gritty.
#
aaronpk
ok, then yea I think your order is right
#
aaronpk
all properties, brief definition, use cases and examples, then the full spec?
#
tantek
the whole thing is the "full spec" :)
#
tantek
but yeah, within this set of sections, that order, followed likely by, property by property full definition / explanation / details, then any/all parsing details per specific technology - that's my current thinking
#
tantek
and then other less important sections that may apply to fewer and fewer audience, until the really boring stuff at the end like copyright/patent statements, and informative/normative references.
#
tantek
tell !barnabywalters - heads-up: http://http://test.waterpigs.co.uk/ just gave me: Fatal error: Class 'barnabywalters\VCard\VCard' not found in /home/barnabywalters/sites/waterpigs.co.uk/www/live/app/libs/CardDavAuthorization.php on line 57
#
tantek
!tell barnabywalters - heads-up: http://http://test.waterpigs.co.uk/ just gave me: Fatal error: Class 'barnabywalters\VCard\VCard' not found in /home/barnabywalters/sites/waterpigs.co.uk/www/live/app/libs/CardDavAuthorization.php on line 57
#
Loqi
Ok, I'll tell them that when I see them next
#
tantek
(refreshed, same result, and I was logged in via IndieAuth as tantek.com)
dascher joined the channel
#
tantek
the logged-out state works though: http://test.waterpigs.co.uk/
xtof_fr, dascher, edrex, Alphi, tantek and barnabywalters joined the channel
#
Loqi
barnabywalters: tantek left you a message 8 hours, 37 minutes ago: - what kind of PHP code/classes/functionality are you working on sharing? I'm curious how much (if any) could be redone/refactored as functional CASSIS (rather than classes). See http://cassisproject.com/ for more info on CASSIS.
#
Loqi
barnabywalters: tantek left you a message 7 hours, 20 minutes ago: - heads-up: http://http://test.waterpigs.co.uk/ just gave me: Fatal error: Class 'barnabywalters\VCard\VCard' not found in /home/barnabywalters/sites/waterpigs.co.uk/www/live/app/libs/CardDavAuthorization.php on line 57
#
barnabywalters
bother. First casualty of the big switch to composer!
#
barnabywalters
tantek: most of what I've been packaging up for composer are old classes for pinging PuSH servers and dealing with caldav and vcard (yuk. They are hideous)
#
barnabywalters
not stuff I've written, just stuff I've tweaked and changed so it works with PSR0 autoloading
Alphi joined the channel
#
barnabywalters
tantek: logging in to http://test.waterpigs.co.uk should work okay now
Alphi, edrex, stereoket and barnabywalters joined the channel
#
@superfeedr
Awesome #Github org that groups a lot of nice #indieweb #federatedweb libs: https://t.co/pourdKyO
#
@edsu
OpenStreetMap's trajectory is such an inspiring story about collaboration and innovation on the Web. #indieweb http://t.co/MlrbdDaO
Alex_Lykos and xtof_fr joined the channel
#
barnabywalters
hey tantek — just writing some link finding code based on your auto_link cassis function
#
barnabywalters
just thinking about microsyntax and URLs
#
barnabywalters
currently if I write @tantek.com it detects it as a twitter username @tantek
#
barnabywalters
so is using the @ microsyntax for people-URLs more important than twitter compatibility?
#
barnabywalters
meh, I'm not looking to auto link stuff, just trying to find URIs, so I'll ignore the @s for the moment
#
barnabywalters
aaronpk: found some ancient pages in the statusnet wiki which relate to discovery flow: http://status.net/wiki/OStatus/Structure http://status.net/wiki/OStatus/PuSH_consumer
#
barnabywalters
just adding the links to our wiki page…
#
@knudmoeller
OpenStreetMap an inspiring story about collaboration and innovation on the Web. #indieweb #opendata http://t.co/MBbvP7yC /via @edsu
dascher joined the channel
#
tantek
barnabywalters, ideally we would link @-mentions of the @-URL sort as "person/contact with the indieweb URL"
#
tantek
turning it automatically into an hCard (uf2 h-card) with p-name and u-url
#
barnabywalters
tantek: right now I'm not unduly worried about auto-linking, I'm just creating an array of all the addresses in a given piece of text
#
barnabywalters
for pinging with pingback or salmon
#
Loqi
barnabywalters meant to say: fand pinging with pingback and salmon
#
tantek
so @tantek.com should hyperlink the whole thing to http://tantek.com/ and ideally look up the URL in a local cache (cache misses should retrieve the representative hCard from the URL) to get the person's name & logo (icon/avatar) to display inline.
#
barnabywalters
tantek: that's stage two :)
#
aaronpk
I still need to add the appropriate microformats to this, but I have a table mapping @usernames to domains which I use, see: http://aaronparecki.com/2012/186/note/7
#
barnabywalters
are caches out of cassis' scope?
#
tantek
we can use @URL for indieweb person references, the same way that Twitter/Foursquare/Instagram uses @-names for local userid references, and that G+ uses +names.
#
barnabywalters
aaronpk: I've been thinking about implementing the inverse of that for syndication - write @real.url and have it changed to a twitter handle when syndicated to twitter
#
tantek
that "table mapping @-names to domains" is a cache, right? that you're getting by retrieving the URL field from a Twitter @-name ?
#
aaronpk
right now it's just a flat file I edit, nothing fancy
#
tantek
barnabywalters, yes the reverse makes sense too
#
tantek
you're basically keeping a rel-me cache
#
tantek
you can autopopulate the table using rel-me discovery
#
aaronpk
doesn't have to have anything to do with twitter. for example I have a mapping of @tantek to tantek.com even though your twitter usernamae is @t
#
tantek
@tantek also maps to tantek.com :D
#
barnabywalters
aaronpk: isn't that a bit redundant?
#
aaronpk
yea that would be neat to add some discovery to it by loooking up twitter/identica/github usernames
#
tantek
(by transitive)
#
barnabywalters
IMO if the @ microsyntax is displayed, the text following it should be a machine readable value
#
tantek
barnabywalters, re: caches and cassis, right now cassis does not do anything persistent (storage, cookies, etc.). it's purely functional.
#
barnabywalters
tantek: and will stay that way I hope, unless someone can think of a *really* clever way to do persistent storage across all the contexts in which cassis might be used
#
tantek
BTW the more broadly common use of @-names I see on Twitter (via all the false positives that anyone with a common first name gets) is @-person-I-know-with-this-first-name
#
tantek
that's something to consider for indieweb UI as well
#
tantek
since as aaronpk demonstrates an @-name does not have to link to Twitter
#
barnabywalters
I totally agree an @name doesn't have to link to twitter, but why ambiguate it by adding arbitrary usernames which might be inconsistent across servers?
#
tantek
I should be able to type (and have it display) @aaron in a note and if aaronpk is the aaron I know, then it should *stay* as @aaron, and then link to his indieweb site.
#
Loqi
yea!
#
barnabywalters
tantek: provided sufficient markup is provided on the client side I can see there being an advantage to that
#
barnabywalters
I see that as being purely an authoring UX thing
#
barnabywalters
just as fetching hcard data is a display UX thing
#
barnabywalters
My ideal flow would be the following:
#
barnabywalters
1. In my authoring app, I type a note containing the text @aaron
#
tantek
BTW the "type a name and have it auto-completed" was one of the sessions / projects at indiewebcamp2012
#
barnabywalters
1. I only know one aaron who has a domain, so my script notes that @aaron = aaron.pk
#
barnabywalters
1. When displayed, it is replaced with "Aaron Parecki" and marked up with uf2
#
tantek
lots of sites have this problem (the type a name and auto-complete it properly)
#
tantek
hence I ended up saying this: "Perhaps the time really has come for an open source indieweb-based person-auto-complete input box." here: http://branch.com/b/when-and-why-post-on-branch-instead-of-your-own-site#528k1eck-b0
#
tantek
BTW the copy a permalink UI on branch is something worth checking out. hover over the little chain link icon in the top right of a comment, watch the "5 days ago" appear, click it, watch a little div show up with the URL selected and the instructions to "Press cmd-C to copy a link to this post."
#
tantek
barnabywalters - that's a good flow
#
tantek
I think a key part of it is the "auto-complete" while you type
#
barnabywalters
we should distill this into a wiki page
#
Loqi
I agree
#
barnabywalters
too much here in IRC gets lost into the logs
#
barnabywalters
Loqi: WTF are you on about?
#
Loqi
dude
#
tantek
e.g. @a - shows the people starting with "A.." that you know, preferably with their icons
#
tantek
and then you can either click on one, or arrow key up/down press return, or keep typing to narrow the list
#
barnabywalters
tantek: ooh, yeah, the permalink copying UI is nice
#
barnabywalters
tantek: agreed that autocomplete-whilst-typing is hugely beneficial
#
barnabywalters
their feedback box is cool too
#
barnabywalters
not sure about their "You can embed a branch on your site so we're not a content farm" argument though
#
tantek
yeah - they're still a content farm. js embeds aren't real embeds
#
tantek
if you can't curl/crawl it, it's not part of the web, it's just fancy UI sugar on top.
#
barnabywalters
I have been forced to think about server side vs client side a lot whilst developing my new system
#
barnabywalters
my aim is for the site to be a mostly RESTful HTTP API
#
tantek
that's a good architectural principle
#
barnabywalters
on almost any page you can get the data as json or atom through Accept: headers or just sticking .json on the end of the URI
#
tantek
and yes, I found the same client vs server side thinking when developing / architecting Falcon.
#
barnabywalters
and the backend is built to only support that architecture
#
barnabywalters
so it's easy for me to see what *should* be implemented on the server side and what needs to be done client side
#
tantek
barnabywalters, have you considered simply marking everything up on the pages with microformats2, and then having the JSON version just be the canonical JSON for the microformats?
#
tantek
that way you wouldn't have to custom code a new JSON response template for each new type of page
#
barnabywalters
that's pretty much what I have ended up doing
#
barnabywalters
I don't have to code a new JSON template each time
#
barnabywalters
unless I want to do something special with the JSON
#
barnabywalters
what happens is this:
#
barnabywalters
1. Router receives URI request
#
tantek
that was one of the points of uf2, to make it fairly straightforward to automatically create a JSON read API for any page.
#
barnabywalters
2. Router asks model for the data corresponding to that request
#
barnabywalters
3. The router parses the data into whatever view is required based on the request type
#
barnabywalters
so it's bastardised MCV, where the router does all the work and the controller doesn't have much control over how the data is displayed
#
barnabywalters
actually, it's not really MCV at all
#
tantek
barnabywalters - heh indeed. MCV or MVC is perhaps oversold anyway. Good that you're figuring out your own model.
#
barnabywalters
tantek: I got tired with implementing this stuff in CodeIgniter. So much DRY violation
#
tantek
also, a while ago I setup #cassis.js as the channel for CASSIS (since *.js files/frameworks are so trendy these days, and the name of the primary file in CASSIS is cassis.js) - feel free to auto-join :)
#
barnabywalters
will do — in fact I've just started using cassis in it's entirety
#
tantek
oh awesome - glad to hear it. are you using the latest on github? (just so I know)
#
barnabywalters
previously I had just swiped a couple of functions
#
barnabywalters
I am using the latest copy, although it's manually downloaded, not through git (can't handle submodules)
#
barnabywalters
it'd be nice to install it through composer
#
barnabywalters
composer packages don't have to be PSR-0 namespaced blah blah etc
#
barnabywalters
in fact, a lot of them aren't and don't say so :|
#
barnabywalters
hence all my recent forking activity
#
barnabywalters
tantek: incidentally, how *is* falcon structured? I hear something about a hAtom+html store every now and again but there's nothing on your wiki covering how falcon actually works
#
tantek
http://tantek.com/w/Falcon has all the docs so far
#
tantek
aaronpk, how do I get Loqi to join a channel? does Loqi respond to /invite requests?
#
barnabywalters
tantek: that's great, but doesn't actually cover how falcon *works* :)
spinnerin joined the channel
#
@evanpro
"Chopped up or Cloned: You Choose" http://t.co/w6R1xWrS #fsw #indieweb
#
tantek
barnabywalters, perhaps you could phrase your question in terms of specific questions? ;)
#
barnabywalters
fair enough! What does the hAtom+HTML5 store look like and how does falcon map URIs to a particular bit of the store?
#
aaronpk
tantek: unfortunately getting Loqi to join a channel is a pretty manual process. I never got around to writing an /invite thing
#
Loqi
is done
tantek, Alex_Lykos_, dascher, tantek_ and barnabywalters joined the channel
#
tantek
thanks barnabywalters - those are the kind of precise questions I was looking for
Alex_Lykos_ joined the channel
#
tantek
I'm writing up the answers (in an FAQ) on the Falcon page, yet for some reason on my Virgin Mobile mifi, nearly every site besides Google is timing out
#
tantek
anyone know of any odd web-wide outages going on? I can't get downforeveryoneorjustme to load either
tantek_ joined the channel
#
tantek
looks like it was just a transient Virgin Mobile mifi problem.
#
barnabywalters
tantek: awesome. Another question it might be useful to answer would be "Why isn't this open source" and/or "How can I set up something similar?"
#
barnabywalters
on a different note: I have started my Salmon odyssey
tantek joined the channel
#
@snarfed_org
@superfeedr @indiewebcamp nice github group! feel free to add my ostatus-unofficial suite of projects: https://t.co/of2JTn1g
#
tantek
barnabywalters, ok, I believe the answers to your questions are fairly complete - let me know if you think I missed something: http://tantek.pbworks.com/w/page/21743425/Falcon#FAQ
dascher joined the channel
#
tantek
aaronpk - how do I get Loqi into other channels? does he respond to /invite maybe?
#
Loqi
who, me?
#
tantek
e.g. in #cassis.js
#
tantek
yes you Loqi
barnabywalters joined the channel
#
Loqi
Ok, I'll tell them that when I see them next
#
Alex_Lykos
o-o
#
Alex_Lykos
why am i alex lykos
#
Alex_Lykos
i thought my name was wesley on this server
#
aaronpk
tantek: unfortunately getting Loqi to join a channel is a pretty manual process. I never got around to writing an /invite thing
#
aaronpk
I can manually add him to #cassis.js if you want tho
spinnerin joined the channel
#
tantek
that would be great
#
aaronpk
never knew IRC channels could have "." in them, heh
#
tantek
now that barnaby and I are at least in there, would be nice to Loqi in there logging away
#
tantek
me neither, til I saw #node.js
#
aaronpk
it's actually a little ridiculous what it takes to add loqi to a channel. one of these days I will reach the threshold of not wanting to do it manually every time and fix it properly
#
Loqi
is done
Loqi joined the channel