stripe-retreat-state-of-the-goblin.html 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514
  1. <html>
  2. <head>
  3. <title>State of the Goblin: Stripe Open Source Retreat, and more!</title>
  4. <meta name="date" contents="2015-12-18 16:00" />
  5. <meta name="author" contents="Christopher Allan Webber" />
  6. <meta name="tags" contents="retreat, funding, updates" />
  7. </head>
  8. <body>
  9. <p>
  10. Hello, all!
  11. </p>
  12. <p>
  13. It's been a few months since my
  14. <a href="/news/state-of-the-goblin-september-2015.html">
  15. last major update</a>
  16. so I wanted to fill in what's going on.
  17. As usual, a lot has been happening, and it's been hard to cover it all as
  18. we go.
  19. There's some particularly <i>huge</i> news in this update, including
  20. something about funding something oh hey this should help us get
  21. MediaGoblin 1.0 out the door, plus something about the standards
  22. work we're doing, something something.
  23. So let's dive in and resolve all those somethings, right?
  24. </p>
  25. <h2>Support organizations that support freedom!</h2>
  26. <p>
  27. Okay, wait, a brief intermission!
  28. We'll get to the cool MediaGoblin related news in a moment, but we've got
  29. something very important to cover first.
  30. Two organizations I really care about are running funding campaigns.
  31. Okay, well, it's that time of year, and <i>a lot</i> of organizations
  32. are running funding campaigns, but these two especially could use your
  33. kind contributions!
  34. </p>
  35. <h3>Support Conservancy!</h3>
  36. <p class="centered">
  37. <a href="http://sfconservancy.org/supporter/">
  38. <img src="/blog_images/copyheart.png"
  39. alt="Copyheart!" />
  40. </a>
  41. <br />
  42. <i>
  43. Copyheart by Christopher Allan Webber,
  44. <a href="https://creativecommons.org/licenses/by/4.0/">CC BY 4.0</a> or
  45. <a href="https://www.gnu.org/licenses/gpl.html">GPLv3 or later</a>,
  46. your option..
  47. <a href="/blog_images/copyheart.svg">Source here.</a>
  48. <br />
  49. <a href="http://sfconservancy.org/supporter/">
  50. Become a Conservancy supporter!</a>
  51. </i>
  52. </p>
  53. <p>
  54. The first is
  55. <a href="http://sfconservancy.org/">Software Freedom Conservancy</a>.
  56. They're close friends of ours, and do great work.
  57. They're also pushing hard to try to build up
  58. <a href="http://sfconservancy.org/supporter/">a supporter program</a>,
  59. and they could really use your help.
  60. Conservancy does a lot of work around many things, from running Outreachy
  61. (hey, we were lucky to get Jessica Tallon working on our stuff through
  62. that!) to enforcing the GPL to hosting a whole lot of useful free software
  63. projects.
  64. Become <a href="http://sfconservancy.org/supporter/">a supporter</a> today!
  65. </p>
  66. <h3>Support the FSF!</h3>
  67. <p>
  68. Next up is the
  69. <a href="http://www.fsf.org/">Free Software Foundation</a>.
  70. Hey you probably know these folks right?
  71. The FSF is the steward of GNU, and MediaGoblin is a GNU project,
  72. so success for the FSF is success for MediaGoblin.
  73. They're running
  74. <a href="https://my.fsf.org/donate/">their annual fundraising campaign</a>
  75. and they could really use your donation.
  76. The FSF has the long-standing history of being the anchor of the
  77. free software world, and they continue to do great work year after year.
  78. Help the FSF continue far into the future...
  79. <a href="https://my.fsf.org/donate/">get your donation in today</a>!
  80. </p>
  81. <h3>Support Guix!</h3>
  82. <p class="centered">
  83. <a href="https://www.fsf.org/news/fsf-adds-guix-system-distribution-to-list-of-endorsed-distributions">
  84. <img src="/blog_images/GuixSD-V.png"
  85. alt="GuixSD" />
  86. </a>
  87. <br />
  88. <i>
  89. GuixSD logo by <a href="http://sirgazil.bitbucket.org/">
  90. Luis Felipe López Acevedo</a>.
  91. Permission is granted to copy, distribute and/or modify this work
  92. under <a href="https://creativecommons.org/licenses/by/4.0/">
  93. CC BY 4.0</a>.
  94. <br />
  95. <a href="https://my.fsf.org/civicrm/contribute/transact?reset=1&id=50">
  96. Support Guix!</a>
  97. </i>
  98. </p>
  99. <p>
  100. Did I say two organizations?
  101. What's with three sections?
  102. In fact, our friends at the FSF are also teaming up with our friends
  103. in the <a href="https://www.gnu.org/software/guix/">GNU Guix</a> project
  104. to run a
  105. <a href="https://www.fsf.org/news/fsf-adds-guix-system-distribution-to-list-of-endorsed-distributions">
  106. special campaign to raise funds for new servers</a>.
  107. I'm highlighting this for two reasons:
  108. <ol>
  109. <li>
  110. I believe Guix is very important to the long run of "deployability"
  111. in free software network services (which you may know I believe
  112. to be <a href="http://mediagoblin.org/news/userops.html">an extremely
  113. important issue</a>...)
  114. </li>
  115. <li>
  116. Guix is using a similar funding model of going through the FSF as
  117. fiscal sponsor.
  118. This is the same route we took for the
  119. <a href="http://mediagoblin.org/pages/campaign.html">
  120. MediaGoblin campaigns</a>
  121. and I think is a great way for free software projects, and particularly
  122. GNU projects, to go.
  123. I'd love to see further examples of success for it in Guix.
  124. </li>
  125. </ol>
  126. So, <a href="https://my.fsf.org/civicrm/contribute/transact?reset=1&id=50">
  127. go donate</a>! :)
  128. </p>
  129. <p>
  130. Okay, whew... sorry about that distraction, but these things are really
  131. important!
  132. But I know, I know, you came here for the MediaGoblin news.
  133. Well, let's get to that!
  134. </p>
  135. <h2>MediaGoblin selected for the Stripe Open Source Retreat</h2>
  136. <p>
  137. So this is some big news!
  138. MediaGoblin
  139. <a href="https://stripe.com/blog/open-source-retreat-2016-grantees">has
  140. been selected to be a participant in
  141. Stripe's Open Source Retreat 2016</a>!
  142. </p>
  143. <p>
  144. What does this mean?
  145. It means that I'll be moving to San Francisco from mid-January to mid-April
  146. 2016, working from Stripe's office, and Stripe is going to pay me
  147. to focus totally on getting MediaGoblin 1.0 out the door
  148. and advancing our federation work.
  149. This is a huge opportunity for us; getting such ~unrestricted funding is,
  150. as anyone who has ever done fundraising knows, enormously difficult.
  151. We should be able to use this to bring MediaGoblin to the next level.
  152. </p>
  153. <p>
  154. When I filled out the application for this I was interested but skeptical
  155. of Stripe's claim that this would be "no strings attached" funding.
  156. I'm happy to say this seems to be true: they've paid us to do the work,
  157. and Stripe is making no claim to copyright or asking us to change any of
  158. our existing policies.
  159. Contributing upstream to MediaGoblin happens as usual for the time I'm
  160. there, which is great.
  161. </p>
  162. <p>
  163. So what do we hope to get out of it?
  164. Well, my goal is by the end of the retreat, we'll have MediaGoblin 1.0
  165. out the door with the basics of server to server federation in place.
  166. I've also talked with the Stripe team about using that time to advance
  167. work on our federation standards work, and if there's time,
  168. some deployment work too.
  169. But MediaGoblin 1.0 comes first!
  170. </p>
  171. <p>
  172. (In the meanwhile I just booked a bunk bed for $1000 USD per month,
  173. which it turns out is cheap for San Francisco housing.
  174. Egads!
  175. How do people afford to live there?
  176. Luckily it's well covered by the retreat's stipend!
  177. Are you in the area during that time?
  178. <a href="http://dustycloud.org/contact/">Maybe we should meet up!</a>)
  179. </p>
  180. <p>
  181. I'm very excited about this opportunity.
  182. Thanks again to Stripe for supporting our community.
  183. I promise that the grant will go to good use, and we'll have exciting
  184. things to report!
  185. </p>
  186. <h2>W3C updates</h2>
  187. <p class="centered">
  188. <img src="/blog_images/w3c-f2f-2015-12-02-scaled.jpg"
  189. alt="W3C Social WG, third GMG represented meeting" />
  190. <br />
  191. <i>
  192. W3C Social Working Group
  193. <a href="http://www.w3.org/wiki/Socialwg/2015-03-17">December
  194. 2015 face to face meeting</a> attendees.
  195. I'm hiding in the back.
  196. <br />
  197. Photo taken by <a href="http://aaronparecki.com/">Aaron Parecki</a>,
  198. <a href="https://creativecommons.org/publicdomain/zero/1.0/">CC0 1.0</a>,
  199. originally
  200. <a href="http://www.w3.org/wiki/File:2015-12-02-w3c-f2f.jpg">
  201. posted to the W3C wiki</a>.
  202. </i>
  203. </p>
  204. <p>
  205. Our work to standardize federation technology within the
  206. <a href="http://www.w3.org/Social/WG">Social Working Group</a>
  207. continues.
  208. Just a few weeks ago
  209. <a href="http://www.w3.org/wiki/Socialwg/2015-12-01">another
  210. face to face meeting</a>
  211. was held at Mozilla's San Francisco offices (thus giving me an
  212. excuse to test-run the bunk bed I'll be sleeping in for several
  213. months for the Stripe retreat).
  214. The meeting was <i>extremely productive</i>... in fact I would say
  215. it was the most productive time the Social Working Group has
  216. ever had.
  217. You can read the minutes for
  218. <a href="http://www.w3.org/wiki/Socialwg/2015-12-01-minutes">
  219. Day 1</a> and
  220. <a href="http://www.w3.org/wiki/Socialwg/2015-12-02-minutes">
  221. Day 2</a>
  222. if you like that sort of thing.
  223. But here are some highlights:
  224. </p>
  225. <ul>
  226. <li>
  227. Most of the work towards making ActivityStreams 2 a Candidate
  228. Recommendation document was put in place, and in a couple of weeks
  229. this I expect it will achieve that goal.
  230. Candidate Recommendation is a big step in a standards process, and
  231. AS 2.0 is the heart of ActivityPump, so this is huge for us.
  232. </li>
  233. <li>
  234. <a href="http://w3c-social.github.io/activitypump/">ActivityPump</a>,
  235. the standard we are pushing for server to server federation and
  236. client to server communication has moved to Editor's Draft state!
  237. The objective of moving to First Public Working Draft by mid-January
  238. has been set, and we are pushing hard towards it.
  239. </li>
  240. <li>
  241. Because of increased push on moving ActivityPump to this state, I have
  242. been added along with Jessica Tallon as co-editor on the specification.
  243. </li>
  244. <li>
  245. The "IndieWeb stack" (for lack of a better grouping) standards have all
  246. also advanced to Editors Draft status, including
  247. <a href="http://webmention.net/draft/">Webmention</a>,
  248. <a href="http://micropub.net/">Micropub</a>, and
  249. <a href="https://indiewebcamp.com/post-type-discovery">Post
  250. Type Discovery</a>.
  251. These standards are also on track for First Public Working Draft in
  252. mid-January.
  253. </li>
  254. <li>
  255. Amy Guy's work on a "convergence" standard has been renamed to
  256. <a href="https://w3c-social.github.io/social-web-protocols/social-web-protocols">
  257. Social Web Protocols</a>
  258. and also (are you noticing a trend?) advanced to Editors Draft
  259. and is on track to First Public Working Draft in mid-January.
  260. </li>
  261. <li>
  262. I demoed <a href="http://activipy.readthedocs.org/en/latest/">ActiviPy</a>,
  263. which went over really well.
  264. ActiviPy started out as a method of representing and working with
  265. ActivityStreams for Python, but I realized in developing it that since
  266. it was using <a href="http://www.w3.org/TR/json-ld/">JSON-JD</a>
  267. with an implied context to handle ActivityStreams anyway, I could
  268. also extend it to support the Microformats vocabulary by using the
  269. <a href="http://stream.thatmustbe.us/jf2.php">JF2 context</a>
  270. being developed for <a href="http://microformats.org/wiki/jf2">JF2</a>.
  271. So I showed off a demo where I loaded ActivityStreams2 documents,
  272. demonstrated the method dispatch system ActiviPy uses (which is fairly
  273. interesting but I won't bore readers with it), but most excitingly, I
  274. <i>loaded ActivityStreams and Microformats documents side by side
  275. in the same system and then converted them both to linked data!</i>
  276. This got a fairly strong reaction from the room, since this was all
  277. three of the "directions" of achieving federation we've been working
  278. towards, with a real live demo of convergence!
  279. I was very proud to show this off.
  280. </li>
  281. </ul>
  282. <p>
  283. Maybe most importantly was the "spirit of the room", and how much this has
  284. changed from prior meetings.
  285. This group was formed to work on some very challenging domains with the goal
  286. of bringing initial participants with some historically very differing
  287. backgrounds.
  288. But both the last face to face (which we mentioned in the last
  289. <a href="/news/state-of-the-goblin-september-2015.html">state
  290. of the goblin</a> post)
  291. and this one have really done tremendous things towards propelling this
  292. group forward, and unbelievably, towards something that might actually
  293. be convergence (without requiring that).
  294. </p>
  295. <p>
  296. Those who know enough historical detail of this space may be
  297. astounded to read that last sentence, but I believe it is true.
  298. In a sense, agreeing that convergence was not mandatory helped
  299. bring us towards a greater possibility of it.
  300. The agreement that ActivityStreams, Linked Data, and the "IndieWeb
  301. Stack" (for lack of a better term) were not required to work together,
  302. and that we <i>could</i> produce multiple deliverables, has eased that
  303. tension in the group and allowed us to work collaboratively.
  304. Everyone has worked hard to understand each other.
  305. But one person in particular has been doing a stand-up job of trying to
  306. bridge the cognitive gap and that person is
  307. <a href="http://rhiaro.co.uk/">Amy Guy</a>.
  308. This can be seen immediately with her work on the
  309. <a href="https://w3c-social.github.io/social-web-protocols/social-web-protocols">
  310. Social Web Protocols</a> document,
  311. but I believe she has done a great job otherwise in mapping the space.
  312. </p>
  313. <p>
  314. So anyway, optimism can only bring you so far.
  315. There's a ton of work to be done in this space, and we'll be pressing hard.
  316. </p>
  317. <h2>See you at FOSDEM!</h2>
  318. <p>
  319. Are you going to FOSDEM?
  320. So will I!
  321. I'll be giving two talks in the Guile/Guix room, and I may be giving one more
  322. in another room, depending on acceptance or not.
  323. It would be good to meet other MediaGoblin community members or enthusiasts
  324. of MediaGoblin.
  325. </p>
  326. <p>
  327. I should also say that I was really not sure if I could make FOSDEM
  328. originally, but a number of people very kindly donated to send
  329. me on my way.
  330. Thanks very kindly!
  331. I'll be sure to put it to maximum use for our community's sake. :)
  332. </p>
  333. <p>
  334. We're also thinking of running some sort of dinner (or lunch?) for those
  335. who donate between now and FOSDEM to MediaGoblin, so hey, by the way, our
  336. <a href="https://crm.fsf.org/civicrm/contribute/transact?reset=1&id=36">
  337. donate page still works</a>! ;)
  338. </p>
  339. <h2>Goblinoid updates</h2>
  340. <p>
  341. <a href="https://notabug.org/SapienTech/MediaGoblinApp">Goblinoid</a>,
  342. you may remember, is the result of this year's Google Summer of Code,
  343. and is a neat MediaGoblin application for Android.
  344. Here's an update (thank you Laura Arjona and Dylan Jeffers
  345. for writing this up):
  346. </p>
  347. <blockquote>
  348. <p>
  349. Dylan Jeffers, our GSoC 2015 student, is working in an Android
  350. app for GNU MediaGoblin.
  351. </p>
  352. <p>
  353. Current features include viewing the recent activity feed, comment
  354. about media, upload photos from file... taking advantage of the Pump API.
  355. </p>
  356. <p>
  357. The code is under heavy development,
  358. (<a href="http://notabug.org/sapientech/mediagoblinapp">repo here</a>),
  359. and binaries for each release can be found (along with checksums)
  360. <a href="https://files.goblinrefuge.org/downloads/Goblinoid">
  361. hosted at Goblin Refuge</a>,
  362. a third party site kindly offered and maintained by SalmonLabs LLC,
  363. who also host the <a href="http://goblinrefuge.com">goblinrefuge.com</a>
  364. MediaGoblin public instance.
  365. </p>
  366. <p>
  367. Meanwhile we get the app in the popular free software repository
  368. F-Droid (it's taking a while because it's the first app in F-Droid
  369. built using the Python-based Kivy framework), we encourage
  370. everyone to test the app.
  371. The most up to date release is always available at
  372. <a href="https://files.goblinrefuge.com/download/Goblinoid/MediaGoblin-latest.apk">
  373. https://files.goblinrefuge.com/download/Goblinoid/MediaGoblin-latest.apk</a>)
  374. and report feedback in our IRC channel or the
  375. <a href="https://notabug.org/SapienTech/MediaGoblinApp/issues">repository
  376. issue tracker</a>).
  377. </p>
  378. <p>
  379. We are very excited to make MediaGoblin part of your mobile life,
  380. and the Android app development is allowing improvements in
  381. MediaGoblin itself too (mainly fixes/improvements in the API-related
  382. code and the database and database migrations).
  383. Help us with your testing to improve that experience!
  384. </p>
  385. </blockquote>
  386. <h2>Wrapping up this year, onto next!</h2>
  387. <p>
  388. It's been a busy year.
  389. Here are some highlights:
  390. </p>
  391. <ul>
  392. <li>
  393. We <a href="/news/userops.html">took initiative</a> on the challenges of
  394. user-centric hosting.
  395. </li>
  396. <li>
  397. We got out a
  398. <a href="/news/mediagoblin-0.8.0-gallery-of-fine-creatures.html">
  399. new release of MediaGoblin</a>
  400. and dug in for the hard work ahead of getting towards 1.0.
  401. </li>
  402. <li>
  403. We put your money to good use and funded Jessica to
  404. <a href="/news/state-of-federation.html">plow ahead with federation</a>
  405. in MediaGoblin.
  406. This is well on its way, and we anticipate server to server federation
  407. to land in the next couple of months.
  408. Jessica just landed a massive overhaul to our database structure which
  409. was required to make this work, and that should make its way
  410. into the next release (coming soon).
  411. </li>
  412. <li>
  413. We became more engaged with the work to bring federation beyond MediaGoblin
  414. itself.
  415. Jessica and I both joined the
  416. <a href="http://www.w3.org/Social/WG">W3C Social Working Group</a>
  417. and have become co-editors on the
  418. <a href="http://w3c-social.github.io/activitypump/">ActivityPump</a>
  419. specification and have devoted much time to advance these initiatives.
  420. This includes building tooling such as
  421. <a href="http://activipy.readthedocs.org/en/latest/">ActiviPy</a>
  422. which will be critical for putting federation to real use
  423. within and outside of MediaGoblin.
  424. </li>
  425. <li>
  426. For the second year in a row, a major MediaGoblin member has received the
  427. O'Reilly Open Source Award largely (though not only)in recognition for
  428. their work on MediaGoblin.
  429. <a href="http://mediagoblin.org/news/state-of-the-goblin-september-2015.html">
  430. This year I (Chris Webber) received the award</a>
  431. and
  432. <a href="http://mediagoblin.org/news/deb-nicholson-oscon-award.html">
  433. last year Deb Nicholson received the award</a>,
  434. which is rather incredible given the list of
  435. <a href="https://en.wikipedia.org/wiki/O%27Reilly_Open_Source_Award#Award_winners">
  436. previous recipients of the award</a>.
  437. </li>
  438. <li>
  439. Both Deb Nicholson and I (but especially Deb) have given talks at
  440. prominent conferences and have spoken on podcasts on issues of
  441. network freedom.
  442. </li>
  443. <li>
  444. We had a successful Summer of Code project resulting in
  445. <a href="https://notabug.org/SapienTech/MediaGoblinApp">
  446. Goblinoid</a>, a free software client for MediaGoblin,
  447. which is Android and Replicant compatible.
  448. (It can run on GNU/Linux also!)
  449. </li>
  450. <li>
  451. And as we said, we were accepted as recipients for the Stripe Open
  452. Source Retreat!
  453. (Well, accepted this year, and the results of that should play out
  454. into 2016!)
  455. </li>
  456. </ul>
  457. <p>
  458. That's a lot of stuff... what a year!
  459. </p>
  460. <p>
  461. Well that's it from this update!
  462. See you in 2016, and happy hacking, fellow goblins!
  463. </p>
  464. </body>
  465. </html>