#indiewebcamp 2015-12-05

2015-12-05 UTC
benwerd and hober2 joined the channel
#
KevinMarks_
the magic of children creation in jf2 may be tricky for users, judging by my recursive parser's fiddlyness
snarfed joined the channel
#
KevinMarks_
I think that's right, bug reports welcom
#
KevinMarks_
maybe we should add jf2 examples to https://github.com/microformats/tests
#
KevinMarks_
I'm turning category inot having children
acegiak and j12t joined the channel
snarfed, bengo, benwerd, funwhilelost, KevinMarks__ and KevinMarks joined the channel
#
aaronparecki.com
edited /events/2015-12-16-homebrew-website-club (+23) "/* Portland */ regrets for Dec 16"
(view diff)
#
KevinMarks
Fix dates on my homepage, old Homebrew Website Club notes show up in woodwind
#
ben_thatmustbeme
KevinMarks: are you just wrapping every array as children: ??
#
KevinMarks_
apparently
#
KevinMarks_
need more testcases
#
KevinMarks_
I was trying to avoid a 'is this the top level' flag in the recursive function
#
ben_thatmustbeme
the point of children: is if you don't have a name for it... h-* inside another h-* without any other mf2 class
#
ben_thatmustbeme
its not only top level
#
ben_thatmustbeme
its a matter of needing a test for is_array vs is_hash though
#
ben_thatmustbeme
which in php is annoying
#
ben_thatmustbeme
"children" is one of only a few reserved words actually
#
ben_thatmustbeme
so for all others its just testing if its an array or not
#
ben_thatmustbeme
the top level bit may actually be needed, but you don't need it in the recursion, you basically peel off a top level function that calls the recursion
#
ben_thatmustbeme
sorry if that doesn't make total sense right now
#
ben_thatmustbeme
a little blearry eyed
#
KevinMarks_
but my logic is now stripping arrays that have a single element
#
KevinMarks_
ie posts with one category
#
kylewm.com
edited /User:Kylewm.com (+360) "/* Need Help With */ Woodwind reply area"
(view diff)
#
ben_thatmustbeme
KevinMarks: stripping them out? or converting them to not being an array?
#
ben_thatmustbeme
because thats what you want
#
KevinMarks_
it makes them not an array
#
KevinMarks_
(You don't have an example like that in the docs)
#
KevinMarks_
that test fails at the moment
#
KevinMarks_
'cos I get { "type": "entry", "name": "entry with tags", "categories": "tagged" }
#
KevinMarks_
not { "type": "entry", "name": "entry with tags", "categories": ["tagged"] }
#
ben_thatmustbeme
I have been slowly figuring out what needs to get documented yet. But it should be "category": " tagged"
#
ben_thatmustbeme
If there is only one item in an array drop the array
#
ben_thatmustbeme
Nothing special about any vocab other than reserved words
#
KevinMarks_
that's what my code does
#
ben_thatmustbeme
Then the test of wrong
#
ben_thatmustbeme
Action ben to update the spec with info on this
#
KevinMarks_
what about children if there is one?
#
ben_thatmustbeme
For top level? It's dropped for below that you have nothing to label it with so you need children:
#
ben_thatmustbeme
Oh. Array. Hmmm. Hadn't thought about that
#
KevinMarks_
no not top level
#
ben_thatmustbeme
I think children probably makes sense to always be an array
#
KevinMarks_
I have a h-feed with 1 h-entry
dietrich joined the channel
#
ben_thatmustbeme
I'd say children as it is a reserved word makes sense to always be an array... But it's not as consistent with everything else then
#
ben_thatmustbeme
What would be easier for a person using this?
#
KevinMarks_
I'm not sure
#
KevinMarks_
I think the 'might be an array' thing is likely to trip people up anyway
#
KevinMarks_
the mad nesting in the mf2 format is ugly, but at least you just write iterators
#
KevinMarks_
here you'll have to check each time
j12t joined the channel
#
KevinMarks_
especially in python, where strings are arrays
#
KevinMarks_
so if I see {"categories":["tag1","tag2"]} first I'll use an iterator
#
ben_thatmustbeme
Mf2 format is ugly and ugly to work with. 99% of the time in just throwing a [0] in all over the place
#
KevinMarks_
then when it is {"categories":"tag"} I'll get ["t","a","g"]
#
ben_thatmustbeme
There is no way to know a string from an array?
#
KevinMarks_
er it's "category" not "categories"
#
ben_thatmustbeme
Yeah. I saw that it says categories in the test
#
KevinMarks_
though you have lots of itereables
#
ben_thatmustbeme
So if you have it as an array you need to know the vocabulary to know what things are single value and what aren't
#
ben_thatmustbeme
Or you make everything an array in which case it's just mf2 json again
#
KevinMarks_
or you write code that only ever sees the first one by default
#
ben_thatmustbeme
So I'm leaning toward just specifying that children is always an array and type, content-type, and value are always single items
#
KevinMarks_
so if we find an mf2 object with 2 types, we should clone it?
snarfed joined the channel
#
KevinMarks_
do we have mf2 objects with 2 types in the wild?
#
KevinMarks_
!tell tantek do we have examples of mf2 markup where the same object has 2 types?
#
Loqi
Ok, I'll tell him that when I see him next
#
KevinMarks_
maybe h-entry h-event ?
zero-gravitas and endi joined the channel
#
GWG
How do you mark up duration?
#
GWG
Anything
#
GWG
A song
#
GWG
A run
#
GWG
The wiki refers to a duration property for microformats, but not the format for it. Or I'm missing it.
#
KevinMarks_
I think we dropped that in favour of dt-start and dt-end
#
GWG
How would that work for a song though?
#
KevinMarks_
h-event says parse as dt-duration
#
GWG
But what does dt-duration look like?
#
KevinMarks_
examples are <time>PT4H18M3S</time> <time>4h 18m 3s</time>
#
KevinMarks_
in the spec
#
KevinMarks_
<time class="dt-duration" datetime="P2Y11M">(2 years 11 month)</time>
KartikPrabhu and eschenal joined the channel
#
@kevinmarks
@randileeharper if you're thinking more reddit-like, there's probably some useful stuff in the indieweb building blocks
(twitter.com/_/status/673042452060631040)
KevinMarks__, zero-gravitas, KevinMarks, Pierre-O and eschenal joined the channel
#
@danlyke
IndieWeb-ish folks: I want to talk about how we could put a status update stream on https://ipfs.io/
(twitter.com/_/status/673065551887994880)
#
@genehack
RT @danlyke: IndieWeb-ish folks: I want to talk about how we could put a status update stream on https://ipfs.io/
(twitter.com/_/status/673066168668696576)
andicascadesf, eschenal and loic_m joined the channel
eschenal and Pierre-O joined the channel
#
@hagengraf
Someone in my Twitter timeline with a #GNUSocial account? I am https://social.cocoate.com/hagen #IndieWeb #decentralization #remotefollow
(twitter.com/_/status/673089457994772480)
zero-gravitas, johnstorey and j12t joined the channel
#
jonnybarnes.uk
edited /Micropub-brainstorming (+419) "/* Query for other information */ Places"
(view diff)
#
jonnybarnes
what do people think of how I’m querying for places?
eschenal, elima_, j12t, bret, zero-gravitas, singpolyma, gavinc, KartikPrabhu and johnstorey joined the channel
#
Kongaloosh
tbrb: we should add HWC to the OTC
#
Kongaloosh
open tech calandar, that is.
eschenal, zero-gravitas and j12t joined the channel
#
tbrb
might be an idea for the new year, yeah
loic_m, KevinMarks, ttepasse, eschenal, wavis and KevinMarks__ joined the channel
#
GWG
Does anyone have an event posting UI that factors in timezone?
KevinMarks___, j12t and KevinMarks joined the channel
#
aaronpk
GWG: Teacup has a timezone input field
#
GWG
I'm trying to get a sense of how to implement one that is simple.
#
aaronpk
yeah it's hard
#
GWG
Last time I did one, it used the timezone identifiers.
#
GWG
So, you are using timezone offsets. Hmm..
[aaronpk] joined the channel
#
[aaronpk]
I use the browser date to determine times one offset to populate the field
#
[aaronpk]
s/times one/timezone/
#
Loqi
[aaronpk] meant to say: I use the browser date to determine timezone offset to populate the field
loic_m_ joined the channel
#
aaronpk
KevinMarks: you might be interested in this http://semantic-ui.com/views/card.html
#
aaronpk
i just updated my new site to use this CSS library, it's got a ton of stuff in it and looks pretty nice
snarfed, zero-gravitas and wolftune joined the channel
#
aaronpk
wow I am spending way too much time on this admin UI oops
#
snarfed
(cough manual until it hurts cough :P)
#
aaronpk
heh yeah
cjk101010 joined the channel
#
aaronpk
I also do want to get in the habit of making nicer things though
#
snarfed
of course! i think of it more as prioritization than sacrificing quality
#
snarfed
we don't have the time to nice *all* the things, sadly
#
aaronpk
it's true. i'm treating this as practice though
#
GWG
I'm adding entirely too much javascript for someone who spent so much time avoiding it
#
aaronpk
haha I know the feeling
#
Loqi
ahaha
#
GWG
I just added moment.js to solve a date parsing problem
#
GWG
I tried using timezone names again, and randomly using one of Tantek's posts to parse. It set it to America/Dawson, aka GMT-8:00
#
GWG
Wondering if I should just go for the -8 again
#
GWG
Where is Dawson anyway?
#
snarfed
hey kylewm, just fyi, the mf2py service seems unhappy with http://loveiswhoweare.com/?p=552
#
snarfed
i'm guessing mf2py handles it ok, and maybe the query param part of the url is c onfusing the web interface
KevinMarks joined the channel
#
kylewm
snarfed: ahh good guess on he query param
tantek and j12t joined the channel
#
kylewm
snarfed: thanks for the heads up, it's working now
#
snarfed
thanks kylewm!
#
kylewm
had to change my User-Agent to please wordpress
#
tantek
what's WordPress doing that is UA-specific?
#
Loqi
tantek: KevinMarks_ left you a message 14 hours ago: do we have examples of mf2 markup where the same object has 2 types? http://indiewebcamp.com/irc/2015-12-04/line/1449291124888
#
tantek
KevinMarks: yes there has been a bunch. originally hreview hentry I think, and more recently h-card h-person or h-org as theoretical possibilities.
#
aaronpk
oh yeah i've seen that before too. some wordpress sites are configured to not serve content unless the user agent is a browser
#
tantek
or a search engine like google presumably?
KevinMarks joined the channel
#
GWG
I just got a start/published date/time/zone and and end/updated date/time/zone working in my Post UI.
#
GWG
I'm so glad I came to Florida, where there are few distractions from my Indiewebing
#
kylewm
in my experience Wordpress is happy with any user agent as long as it doesn't mention "python" :)
#
kylewm
probably also "ruby"
#
kylewm
curl is ok for some reason
KevinMarks joined the channel
#
petermolnar
g' evening
#
petermolnar
I just realized I could do a urls with unicode & emoji characters; would be a bit insane, but unique I believe; both chrome & FF accepts them in the url field and displays them as expected, hiding the urlencode :)
tantek, tantek_ and snarfed joined the channel
#
snarfed
interesting actually. mf2py and php-mf2 parse that page *very* differently. writing up now.
#
aaronpk
sent myself a webmention from my new site to my new site. realized I'm not publishing author information yet :)
#
snarfed
testing++
#
Loqi
testing has 11 karma
#
kylewm
snarfed: really? they look very similar to me! except php-mf2 gives the nested h-entry a "value"
#
kylewm
also I really wish I knew how to make Python print out the dict fields in a better order (type, properties, children)
#
snarfed
yeah that'd be nice
modem_ joined the channel
#
snarfed
kylewm: https://github.com/snarfed/bridgy/issues/563#issuecomment-162240328 . includes bridgy's logged mf2py output json
#
snarfed
maybe bridgy needs to upgrade its mf2py?
#
snarfed
bridgy is on mf2py 0.2.6...and ooh there's a 1.0.0 now
#
kylewm
yeah i was going to say, it seems like a backcompat issue (entry-content not converted to e-content) but that's been in there forever
#
kylewm
also requirements.freeze.txt has 1.0.0, so I think you're up to date anyway
#
snarfed
ah interesting. my virtualenv actually isn't :P, but good that req'ts is
#
kylewm
bridgy also didn't parse "url", which is backcompat parsed from rel="bookmark", and that is a slightly more recent addtion...
#
kylewm
sorry we should move to #bridgy or the gh issue
#
snarfed
heh yes
#
snarfed
but actually mf2py backcompat support is a bit more broadly relevant
#
snarfed
hey KartikPrabhu tommorris (and kylewm), if we want to file an mf2py backcompat bug, want a new one? or should we reopen https://github.com/kartikprabhu/mf2py/issues/45 ?
#
tommorris
new one referencing the old is probably best
#
snarfed
will do
#
tommorris
I must warn you that I haven't got much time to work on mf2py at the moment due to health issues
#
kylewm
snarfed: can you tell which parser bridgy's using? html5lib, lxml, or html.parser?
#
kylewm
html5lib based on my virtualenv
JonathanNeal, cweiske, zero-gravitas and wolftune joined the channel
#
GWG
Aaronpk, on your exercise, why duration and not start and end times?
#
martin.atkins.me.uk
edited /ActivityStreams (+672) "/* Origins */ further note about activity streams origins"
(view diff)
benwerd, benwerd_, KevinMarks, snarfed and [aaronpk] joined the channel
#
[aaronpk]
GWG: mostly because duration is a property that comes back from the run keeper API where the data came from. I'm changing it on my new site tho
#
GWG
Aaronpk, I assume you've given this thought then. I'm just now building time as a post property
#
GWG
Aaronpk, what are the pros and cons?
#
GWG
Duration vs time?
#
GWG
KevinMarks made a good case for time last night
#
[aaronpk]
Duration is useful still because the activity may have been paused in the middle
#
[aaronpk]
But I am planning on publishing start and end time too
benwerd_ and benwerd__ joined the channel
#
@DodgerWA
RT @danlyke: IndieWeb-ish folks: I want to talk about how we could put a status update stream on https://ipfs.io/
(twitter.com/_/status/673252042991755264)
yakker, modem_ and zero-gravitas joined the channel
#
KevinMarks_
GWG use offsets rather than named timezones
fkooman joined the channel
#
KevinMarks_
I haven't seen anything use duration, but we do have aprsing rules defined
#
KevinMarks_
though the mf2 just preserves the text as given
bengo joined the channel
#
GWG
KevinMarks, I came to that conclusion.
#
GWG
Aaronpk is using duration, and pointed out pausing as a reason, but that may be an edge case.
#
GWG
!tell acegiak How do you feel about duration vs start/end times?
#
Loqi
Ok, I'll tell them that when I see them next
[aaronpk] joined the channel
#
[aaronpk]
I would never enter duration by hand fwiw. I only have it because it was already there in the data I got from the API
#
[aaronpk]
Also sleep has duration which subtracts some time from the middle of the sleep event if it thinks I woke up in the middle of the night
eschenal joined the channel
#
GWG
Aaronpk, acegiak asked for the duration feature. I've never used it. I think start end is more useful, but don't want to have issues.
shiflett and benwerd joined the channel
#
@erinjo
Good work on WordPress-Known import/exports happened at IndieWebCamp this Thurs. I need to spend some time moving my old archives to Known.
(twitter.com/_/status/673274589863010304)
KevinMarks__ joined the channel
#
GWG
I feel like as long as I am implementing post ui fields I should do more
j12t joined the channel
#
tantek.com
edited /person-tag (+95) "/* How to */ or Wikipedia page linking to both their personal site and Twitter, e.g. like evanpro"
(view diff)
#
tantek.com
edited /person-tag (+94) "/* With other profiles */ or if their Twitter links to their personal site"
(view diff)
KartikPrabhu and wolftune joined the channel
#
@t
No #ECSCA for me; took care of nephews & niece for a bit. Coded some #indieweb person-tag support. Now to test it. (ttk.me t4e_1)
(twitter.com/_/status/673288884306862080)
tantek and j12t joined the channel
#
tantek
IT WORKED!!! http://tantek.com/2015/339/t2/w3c-social-web-working-group-mozilla person-tagged photo POSSEd via Bridgy to FB: https://www.facebook.com/photo.php?fbid=10102003228929963 with 3 person-tags making it over out of 4 FB URLs