IndieWebCamp May 16-23, 2014

This is an automatically-generated summary of the IndieWebCamp wiki edits from May 16-23, 2014

Table of Contents

New Pages

Changed Pages

New Pages

DOI

Created by Tantek.com on May 17




DOI is an abbreviation for Digital Object Identifier, "a character string used to uniquely identify an object such as an electronic document[1]", kind of like a URL with more bureaucracy.

Contents

Criticism

URLs work fine

DOIs are unnecessary because URLs work fine, and in many ways are better than DOIs. See additional criticisms:

Organizational bottleneck

"Before Zenodo can issue a DOI for your …"[2] - say what? I have to get some ORG to issue URLs for me? No thanks.[3] Using a personal domain I can issue whatever/however many URLs I want without asking anyone's permission.

Use of minting a red flag

Anyone that talks about "Minting a …" is probably doing it wrong and trying to sell you some service for doing the so-called "minting".[4]

Unobvious time waster

There's so much architecture astronomy talk in nearly any positive description of DOIs that you could easily waste hours of your time before it was clear it was a waste of time. Hence criticism documented here to hopefully help you shortcut such distraction.

Silo Support

GitHub

As of ~ 2014-05, GitHub posted about Making Your Code Citable using DOIs.

See Also

Retrieved from "http://indiewebcamp.com/DOI"

micropub-endpoint

Created by Aaronparecki.com on May 20


A Micropub endpoint is an HTTP endpoint that micropub clients use to create new posts on a personal domain.

Contents

Creating a Micropub Endpoint

After a client has obtained an access token and discovered the user's Micropub endpoint it is ready to make requests to create posts.

The Request

This is not intended to be a comprehensive guide to Micropub, so we will use the example of the "OwnYourGram" app creating a photo post at the Micropub endpoint. (See micropub for full docs.)

The request to create a photo will be sent with as multipart form-encoded so that the actual photo data is sent along with the request. Most web frameworks will automatically handle parsing the HTTP request and providing the POST parameters and the file upload automatically. The example code here is written in PHP but the idea is applicable in any language.

The request will contain the following POST parameters:

  • h=entry - Indicates the type of object being created, in this case an h-entry.
  • content - The text content the user entered, in this case the caption on the Instagram photo.
  • published - An ISO8601 formatted date string representing the date the photo was published.
  • category - A comma-separated list of hashtags the user included in the caption.
  • location - A "geo" URI including the latitude and longitude of the photo if included. (Will look like `geo:37.786971,-122.399677`)
  • place_name - If the location on Instagram has a name, the name will be included here.
  • photo - The photo will be sent in a parameter named "photo". There will only be one photo per request.

The request will also contain an access token in the HTTP Authorization header:

Authorization: Bearer XXXXXXXX



Verifying Access Tokens

Before you can begin processing the photo, you must first verify the access token is valid and contains at least the "post" scope.

How exactly you do this is dependent on your architecture. In the example of creating a token endpoint, we looked at two ways of storing access tokens. To verify tokens in a database, you need to retrieve the token info from the database. To verify self-encoded tokens, you'll need to decode the token and check the info there. If you are using a token endpoint service such as tokens.indieauth.com then you can verify the access token using its API.

In any case, once you have looked up the token info, you need to make a determination about whether that access token is still valid. You'll have the following information at hand that can be used to check:

  • me - The user who this access token corresponds to.
  • client_id - The app that generated the token.
  • scope - The list of scopes that were authorized by the user.
  • date_issued - The date the token was issued.

Keep in mind that it may be possible for another user besides yourself to have created an access token at your token endpoint, so the first thing you'll do when verifying is making sure the "me" parameter matches your own domain. This way you are the only one that can create posts on your website.

Validating the Request Parameters

A valid request to create a photo post will contain the parameters listed above. For now, you can verify the presence of everything in the list, or you can try to genericize your micropub endpoint so that it can also create text posts.

At a bare minimum, a Micropub request from OwnYourGram will contain the following:

  • h=entry
  • photo or content (or both)

If a photo is part of the request, then the content is optional.

If there's no published date, then the endpoint should set the published date to now.

The access token must also contain at least the "post" scope.



The Response

Once you've validated the access token and checked for the presence of all required parameters, you can create a post in your website with the information provided.

If a post was successfully created, you should return an HTTP 201 response with a Location header that points to the URL of the post. No body is required for the response.

HTTP/1.1 201 Created
Location: http://example.com/post/100

If there was an error, the response should include an HTTP error code as appropriate, and optionally an HTML or other body with more information. Below is a list of possible errors.

  • HTTP 401 Unauthorized - No access token was provided in the request.
  • HTTP 403 Forbidden - An access token was provided, but the authenticated user does not have permission to complete the request.
  • HTTP 400 Bad Request - Something was wrong with the request, such as a missing "h" parameter, or other missing data. The response body may contain more human-readable information about the error.

User:Psyhigh.com

Created by Psyhigh.com on May 22

  • Thu, May 22 psyhigh.com Created page with " psyhigh.com[http://psyhigh.com] is the public website for Psychic High School. The dev site starts at psyhigh.biz/welcome [http://psyhigh.biz/welcome]. Looking for a platform ..."
  • Thu, May 22 psyhigh.com
  • Thu, May 22 psyhigh.com

psyhigh.com[1] is the public website for Psychic High School.

The dev site starts at psyhigh.biz/welcome [2].

Looking for a platform and interested programming assistance to support the social vision of psyhigh.com.

I'm in Portland - get in touch with me at info@psyhigh.com.

And enjoy our shenanigans on twitter at @psyhigh [3]

Ruby

Created by Tantek.com on May 23

  • Fri, May 23 tantek.com stub with a few examples, libraries, projects. please add more!
  • Fri, May 23 aaronparecki.com s/python/ruby
  • Fri, May 23 tantek.com /* Libraries */ link uf2 lib



Ruby is a programming language and web server runtime environment used for some IndieWeb projects.

Contents

IndieWeb Examples

Examples of indieweb community members who are using Ruby on their personal sites:

Shane Becker

Shane Becker uses a custom Ruby application on his site iamshane.com

Libraries

Generally useful libraries being developed by IndieWeb participants in Ruby.

Third-party Libraries

Non-IndieWeb-specific libraries that may still be of interest.

  • ...

Projects

IndieWeb projects built with Ruby:

Hosting

Ruby does not have PHP's ubiquity, and finding hosting can be a little bit more of a challenge. See web_hosting for more details.

  • Heroku
  • ...

See Also

read

Created by Tantek.com on May 20




To read or reading is the act of viewing and interpreting posts.

Articles

Articles about reading on the web:

See Also

CORS

Created by Kodfabrik.se on May 21




CORS is an acronym for "cross-origin resource sharing," a mechanism for allowing browsers to make JavaScript requests to fetch resources from other domains.

Contents

How

Use amongst others the Access-Control-Allow-Origin and Origin HTTP headers. See eg. Wikipedia and Mozilla Developer Network for more information until an example is added here.

History

Before CORS people often used JSONP-requests to enable requests to other sites, but that required loading the data through an HTML-tag and for it to be wrapped in a JavaScript callback. That required JSONP-specific resources to be created, made it hard to utilize the strengths of the HTTP protocol and eg. do proper error management on HTTP error codes and also posed a security risk due to the fact that JavaScript from sites that were not always trusted had to be run for JSONP to work. Since CORS enables ordinary HTTP requests to be allowed, CORS doesn't suffer from these issues.

Issues

  • Session cookies: If you have a dynamic site where some resources are either only made available for people with a session cookie or which contains personal information for them on an otherwise public site, then making that resource fetchable by other sites through CORS will make it possible for other sites to identify logged in users without them knowing it. One should therefore take extra care of which pages one allows to be fetched from other domains if one are using session cookies on the site. Other authorization mechanisms, like OAuth, where one has to explicitly send the user information with the request is preferable when paired with CORS.

See Also

Firefox

Created by Waterpigs.co.uk on May 22




Firefox is a free, open source web browser made by Mozilla.

SocialAPI

Firefox exposes a “Social API”, allowing sites to easily integrate their UIs into the browser’s native UI

Voto

Created by Vasilis.nl on May 18


Voto

Voto is Vasilis van Gemert's personal photo gallery. He's created it in order to publish his own pictures to his own domain from any device he owns. Pictures are syndicated to other services via RSS. He's written in detail about the ideas behind it on his blog.

Indieweb enthusiasts currently using it on their own site:

token-endpoint

Created by Aaronparecki.com on May 19


A token endpoint is an HTTP endpoint that micropub clients can use to obtain an access token given an authorization code.

Contents

Using a token endpoint service

tokens.indieauth.com is a service you can use if you don't want to immediately build your own token endpoint. You can use this token endpoint in production in order to jump-start the development of your own micropub endpoint.

If you later want to switch to hosting your own token endpoint, you can do so without needing to make any changes to micropub clients since they will re-discover your token endpoint each time you sign in.

Creating a token endpoint

Requests will be made to the token endpoint after the client finishes communicating with the authorization server and obtains an auth code.

Access Token Request

Requests to the token endpoint will contain the following parameters:

  • code - The authorization code previously obtained.
  • me - The user's domain name (e.g. http://example.com)
  • redirect_uri - the redirect URI used in the request to obtain the authorization code.
  • client_id - The client ID used in the initial request.
  • state - The state parameter used in the initial request.

The token endpoint needs to verify these values and then issue an access token in response.

The authorization endpoint can be used to verify these values. However you will first need to determine which authorization server this user delegates to. This is done by looking for a rel="authorization_endpoint" link on the user's home page, which is the "me" parameter.

Once you know the authorization endpoint, you can make a POST request with the parameters of this request:

  • code
  • me
  • redirect_uri
  • client_id
  • state

If the request is valid (the state, client_id, redirect_uri and code all correspond to the authorization made by the user), he authorization endpoint will return a successful reply:

me=http%3A%2F%2Faaronparecki.com&scope=post

This is how the token endpoint knows which scopes the user authorized

Generating an Access Token

At this point, your token endpoint is ready to issue an access token to the app.

How exactly you do this is entirely up to you, and depends on which language/framework you are using. There are multiple ways to generate and later verify an access token.

Since your token endpoint will be issuing the token, and your Micropub endpoint will be the only thing that needs to validate tokens, how that works is entirely up to you, and can even be changed later without any ill effects.

Token Database

A trivial way of creating access tokens is to use a database such as MySQL, Postgres, or Redis. Using this method, you would simply generate a long random string, and use that as a unique key, adding in the rest of the information about the token.

At a minimum, you would store the following data along with the token:

  • me
  • client_id
  • scope

While this is a simple way of handling access tokens, you will quickly realize the limitations. Unless you have a way of expiring and re-issuing tokens, your token database will quickly grow in size and may eventually become unwieldy. Of course this also assumes that your website has a database to begin with, which is not necessarily a safe assumption.

Self-Encoded Tokens

Self-encoded tokens are a way to create access tokens that doesn't require storing a string in a database in order to look it up later. By encoding all of the token information into the token itself, the server can verify the token just by inspecting it later. There are many ways to self-encode tokens, again this depends on your preferences.

One way to create self-encoded tokens is to create a hash of all the data you want to include in the token, JSON-encode it, and encrypt the resulting string with a key known only to your server.

The example below is written in PHP, but the idea applies to any language.

  $token_data = array(
    'me' => $_POST['me'],
    'client_id' => $_POST['client_id'],
    'scope' => $auth['scope'],  // Returned by the auth code verification step
    'date_issued' => date('Y-m-d H:i:s'),
    'nonce' => mt_rand(1000000,pow(2,31))
  );

In the example above, we've included a few pieces of information that will be useful when decrypting and verifying the token later.

  • me - Naturally we need to know which user this token corresponds to.
  • client_id - Indicates the app that generated the token.
  • scope - The Micropub endpoint must be able to know what scope the token includes, so it can allow or deny specific requests.
  • date_issued - Included so that we can selectively invalidate tokens created before a certain date if needed. Also servers to add more entropy to the encrypted string.
  • nonce - Adds some extra entropy to the encrypted string.

All of this data is then JSON-encoded and encrypted using the "JWT" package, which results in a string that is the access token.

$token = JWT::encode($token_data, $encryption_key);



Access Token Response

However you generate an access token, you now have a string ready to reply to the client.

The token response must include three parameters:

  • access_token - The actual access token string.
  • me - The URL of the user.
  • scope - The list of scopes that the token represents.

These should be returned as a www-form-encoded string in the response body, as follows:

HTTP/1.1 200 OK
Content-Type: application/x-www-form-urlencoded

access_token=XXXXXX&scope=post&me=http%3A%2F%2Faaronparecki.com%2F

The reason for returning the "me" value is that the app does not yet know which user the authorization is for, and will use this value to discover the Micropub endpoint to make a request with the access token.

See Also

archive

Created by Tantek.com on May 16




archive may refer to:

  • The feature of an indieweb site that allows you to navigate to past content by year and month, AKA personal historical archives, or
  • A copy of a web page or site that can be used as a reference if the original disappears or is temporarily unavailable.

Services

WebRecorder

See Also

2014/UK/Guest List

Created by Tommorris.org on May 19


IndieWebCamp UK 2014

Official Guest List

Creators: Add yourself Bloggers: blog your RSVP Apprentices: Get your creator to add you
Are you a Creator (create & share design, UI/UX, and/or code)? Add yourself to the guest list by Logging in with your own domain! Already blogging on your own domain? Great! Publish a post saying that you're coming with a link to this RSVP page and send a pingback to it. Perhaps you're a creator, but only for other people, and don't actively create things for your own site. Or maybe you're really excited about the IndieWeb and want to join it as soon as you can!
Add yourself to the #Creators section using the attendee template, then add your name linked to your wiki user page and a self-hosted profile photo 128px square. If you're an active blogger (i.e. at least once a month) yet don't feel like you would call yourself a creator, it would still be great to have you participate in IndieWebCamp. If you can setup IndieAuth on your domain, go ahead and add yourself in the #Bloggers section as well. If you're not a creator, but want to be, or want to create and contribute to the IndieWeb but don't know where to start, team up with a creator, and ask them to add you. You can still attend IndieWebCamp as an apprentice to a creator.





Creators

Alphabetically sorted by full display name.

Name: Barnaby Walters

IndieWeb Projects: Taproot indieweb tools, php-mf2 parser, webaction toolbelt, indieweb algorithm implementations

Personal URL: http://waterpigs.co.uk

Elsewhere: “barnabywalters” on various silos



Add yourself to the list using the attendee template!

Bloggers

Alphabetically sorted by full display name.

?

No one is listed yet. Add to the list using the attendee-apprentice template!



Apprentices

Alphabetically sorted by full display name.

?

No one is listed yet. Add to the list using the attendee-apprentice template!





Volunteers

  • ... Add your name here!

Remote Participants

As with past IndieWebCamps, we'll setup remote participation for folks who can't be there in person but can still participate during the camp over IRC and hopefully live video.

Contents



Regrets

Folks that can't make it (but hopefully can participate before/after remotely!)

?

No one is listed yet. Add yourself to the list using the attendee template!





Missed You

Sorry to miss you folks - hopefully you can make it next year!

?

No one is listed yet. Add to the list using the attendee template



Category:dictionary

Created by Tantek.com on May 20




A dictionary is a collection of words and definitions of those words. Such as:


Subcategories

This category has only the following subcategory.

D

Pages in category "dictionary"

The following 3 pages are in this category, out of 3 total.

D

R

S

webhook

Created by Aaronparecki.com on May 18

  • Sun, May 18 aaronparecki.com stub with dfn and some examples



A webhook is a mechanism for notifying a server about updates to some content in realtime by making an HTTP request. Often also referred to as a "callback URL".

Often the payload of a webhook is something small, such as a message that indicates new content for the application or for a specific user, rather than including the actual data itself.

APIs that support webhooks

Instagram has a realtime API which sends updates to your application any time any authorized user posts a new photo.[1]

Apps can register webhooks with the Jawbone API to receive callbacks for user events.[2]

IndieWeb Examples

Examples of IndieWeb sites that have enabled some form of webhook:

  • ...

See Also

IRC/logs

Created by Aaronparecki.com on May 17

  • Sat, May 17 aaronparecki.com new page for full calendar view of IRC logs

May 2014
SunMonTueWedThuFriSat
 123
45678910
11121314151617
18192021222324
25262728293031
April 2014
SunMonTueWedThuFriSat
 12345
6789101112
13141516171819
20212223242526
27282930 
March 2014
SunMonTueWedThuFriSat
 1
2345678
9101112131415
16171819202122
23242526272829
3031 
February 2014
SunMonTueWedThuFriSat
 1
2345678
9101112131415
16171819202122
232425262728 
January 2014
SunMonTueWedThuFriSat
 1234
567891011
12131415161718
19202122232425
262728293031 
December 2013
SunMonTueWedThuFriSat
1234567
891011121314
15161718192021
22232425262728
293031 
November 2013
SunMonTueWedThuFriSat
 12
3456789
10111213141516
17181920212223
24252627282930
October 2013
SunMonTueWedThuFriSat
 12345
6789101112
13141516171819
20212223242526
2728293031 
September 2013
SunMonTueWedThuFriSat
1234567
891011121314
15161718192021
22232425262728
2930 
August 2013
SunMonTueWedThuFriSat
 123
45678910
11121314151617
18192021222324
25262728293031
July 2013
SunMonTueWedThuFriSat
 123456
78910111213
14151617181920
21222324252627
28293031 
June 2013
SunMonTueWedThuFriSat
 1
2345678
9101112131415
16171819202122
23242526272829
30 
May 2013
SunMonTueWedThuFriSat
 1234
567891011
12131415161718
19202122232425
262728293031 
April 2013
SunMonTueWedThuFriSat
 123456
78910111213
14151617181920
21222324252627
282930 
March 2013
SunMonTueWedThuFriSat
 12
3456789
10111213141516
17181920212223
24252627282930
31 
February 2013
SunMonTueWedThuFriSat
 12
3456789
10111213141516
17181920212223
2425262728 
January 2013
SunMonTueWedThuFriSat
 12345
6789101112
13141516171819
20212223242526
2728293031 
December 2012
SunMonTueWedThuFriSat
 1
2345678
9101112131415
16171819202122
23242526272829
3031 
November 2012
SunMonTueWedThuFriSat
 123
45678910
11121314151617
18192021222324
252627282930 
October 2012
SunMonTueWedThuFriSat
 123456
78910111213
14151617181920
21222324252627
28293031 
September 2012
SunMonTueWedThuFriSat
 1
2345678
9101112131415
16171819202122
23242526272829
30 
August 2012
SunMonTueWedThuFriSat
 1234
567891011
12131415161718
19202122232425
262728293031 
July 2012
SunMonTueWedThuFriSat
1234567
891011121314
15161718192021
22232425262728
293031 
June 2012
SunMonTueWedThuFriSat
 12
3456789
10111213141516
17181920212223
24252627282930
May 2012
SunMonTueWedThuFriSat
 12345
6789101112
13141516171819
20212223242526
2728293031 
April 2012
SunMonTueWedThuFriSat
1234567
891011121314
15161718192021
22232425262728
2930 
March 2012
SunMonTueWedThuFriSat
 123
45678910
11121314151617
18192021222324
25262728293031
February 2012
SunMonTueWedThuFriSat
 1234
567891011
12131415161718
19202122232425
26272829 
January 2012
SunMonTueWedThuFriSat
1234567
891011121314
15161718192021
22232425262728
293031 
December 2011
SunMonTueWedThuFriSat
 123
45678910
11121314151617
18192021222324
25262728293031
November 2011
SunMonTueWedThuFriSat
 12345
6789101112
13141516171819
20212223242526
27282930 
October 2011
SunMonTueWedThuFriSat
 1
2345678
9101112131415
16171819202122
23242526272829
3031 
September 2011
SunMonTueWedThuFriSat
 123
45678910
11121314151617
18192021222324
252627282930 
August 2011
SunMonTueWedThuFriSat
 123456
78910111213
14151617181920
21222324252627
28293031 
July 2011
SunMonTueWedThuFriSat
 12
3456789
10111213141516
17181920212223
24252627282930
31 
June 2011
SunMonTueWedThuFriSat
 1234
567891011
12131415161718
19202122232425
2627282930 
May 2011
SunMonTueWedThuFriSat
1234567
891011121314
15161718192021
22232425262728
293031 
April 2011
SunMonTueWedThuFriSat
 12
3456789
10111213141516
17181920212223
24252627282930
March 2011
SunMonTueWedThuFriSat
 12345
6789101112
13141516171819
20212223242526
2728293031 
February 2011
SunMonTueWedThuFriSat
 12345
6789101112
13141516171819
20212223242526
2728 

Logs on Your iPhone Home Screen

To add the IRC logs to your iPhone home screen, visit the page below on your phone:

http://indiewebcamp.com/irc/today?bookmark

Follow the link on that page. Then, from Safari, add that page to your home screen.

wiki/resolved

Created by Aaronparecki.com on May 18

  • Sun, May 18 aaronparecki.com moved resolved wiki issues to their own page

Resolved wiki issues from wiki

Contents

Search box in header

Done 2013-314: Moved to: https://github.com/indieweb/wiki/issues/1

Login from any page

Done 2013-238: Log in link in the top right corner of every page. Turns in to a log out link when you're logged in. Aaronparecki.com 16:02, 26 August 2013 (PDT)

The home page has a "Login with your domain" box in the top right corner.

EVERY page should have that box so that you can login easily/quickly from any page (without having to hunt for the small login link in the footer.)

I desperately need the ability to login to the wiki from any page... right now it's the biggest "flow" breaker, which means I don't edit as frequently as I could - Sandeep Shetty

+1:, it takes me quite some time to figure out there is a small "login" link at the bottom of a page. The more natural flow for new comers: Hupili.net 22:23, 9 July 2013 (PDT)
  • Find a big login at the top of any page. (people may start to have interest of IndieWeb from different points)
  • Since they have interest, they try to click the "login"
  • They are prompted that IndieAuth is used and there is a Quick Login Setup. (there are too many things that are not need for a first timer to simply login)



IRC today redirect

Done 2013-151

Create a live redirect from:

To:



What Links Here

Done 2013-142 (or a day or so before that?) - Aaronpk took care of it. - Tantek 18:05, 23 May 2013 (PDT)

Improve CSS for a more liquid layout

Done 2013-03 - forgot the exact date. Aaronpk took care of it. - Tantek 16:49, 1 April 2013 (PDT)


Update the CSS to at least make the layout a bit more liquid (gooey?) rather than set to its current fixed width which is actually too wide for good reading (~60 characters per line is a good max, we're way above that).

Per http://indiewebcamp.com/irc/2013-02-19#t1361291725

  1. in gumax_cyborg.css, change width: 977px to max-width: 977px
  2. in gumax_template.css, comment out like this: /* width: 777px */

That will give at least a bit of a range of liquid layout so we can avoid some horizontal scrollbars (and line lengths that are too long for optimal reading).

Tantek 15:36, 27 February 2013 (PST)

architecture astronomy

Created by Tantek.com on May 17




architecture astronomy is the practice of analyzing problems, seeing patterns, and then generalizing to higher and higher level abstractions on top of those patterns to the point where the abstractions become so general, so vague, so detached from the original problems being analyzed, that they don't mean anything at all.

architecture astronauts are people that have a habit of practicing architecture astronomy, that is, the art of coming up with meaningless abstractions detached from real world problems.

"They tend to work for really big companies that can afford to have lots of unproductive people with really advanced degrees that don't contribute to the bottom line."[1]

See Also

User:Sebastian.kip.pe

Created by Sebastian.kip.pe on May 22

  • Thu, May 22 sebastian.kip.pe Created page with "<span class="h-card">[http://sebastian.kip.pe Sebastian Kippe]</span>"

Sebastian Kippe

weasel word

Created by Tantek.com on May 22

  • Thu, May 22 tantek.com stub with defn, citation, see also



A weasel word, phrase, or expression is a way of making a statement or argument by attributing it to a vague third party ("some say") or hypothetical party ("it can be said"). Weasel wording makes it sound like a reasonable argument is being made, when no one is actually making a specific statement.

Instead of weasel words, just make the argument yourself, or cite a specific source that is making the argument.

For more see:

See Also

Category:IndieAuth

Created by Aaronparecki.com on May 20

  • Tue, May 20 aaronparecki.com Created page with "This category is a collection of all pages related to IndieAuth."

This category is a collection of all pages related to IndieAuth.

Pages in category "IndieAuth"

The following 5 pages are in this category, out of 5 total.

I

M

R

T

2014/UK

Created by Tommorris.org on May 19

  • Mon, May 19 tommorris.org setting up wiki page for UK 2014

IndieWebCampUK 2014

The third IndieWebCamp in sunny Brighton - one of many IndieWeb events.

Own your data.

Rather than posting content on third-party silos of content, we should all own the content we're creating. Publish on your own domain, and syndicate out to silos.

Join us at the Clearleft offices in Brighton for two days of BarCamp-style collaboration and discussions of how to use open web technologies to empower users to own their own identities & content, and advance the state of the indie web.

RSVP

  • Guest List - click and add yourself (and optionally an apprentice)

Schedule

Day 1: Discussion Day 2: Hacking



09:00 Organizer setup

09:30 Doors open - badges

10:00 Introductions and demos

11:00 Sessions

13:00 Lunch out

14:00 Sessions

17:00 Group photo

17:15 Last session

18:00 End of sessions for day 1



09:00 Organizer setup

09:30 Doors open - badges

10:00 Day 2 kick-off

11:00 Hack sessions

13:00 Lunch out

14:00 Hack sessions continue

16:30 Demos

17:30 Clean-up

18:00 Camp closed!



Day 1 is about discussing in a BarCamp-like environment. Bring a topic you'd like to discuss or join in on topics as they are added to the board.



Day 2 is about implementing what we discussed. Work with others or on your own. We'll have demos at the end of the day to see what everyone worked on!

Contents

Participating

Individual Session wiki pages - Day 1 (transfer from Etherpads as sessions complete)

Demos

Sponsors

Our thanks to these sponsors for supporting the event.

  • Clearleft for providing the venue

Want to sponsor a future IndieWebCamp event? See:



Organizers

  • Organizers: Tom Morris and Jeremy Keith
    • Want to help organize? Get in touch with us on IRC!
  • Want to help out?
    • Contact an organizer or sign-up to Volunteer!
    • Check the #To-do list below to see if there's something you can help out with.

Notes/Tasks

Organzational tasks

  • Setup wiki pages

Session Grid: (Jeremy)

  • 4x6" sticky notes (various colors?)
  • sharpie pens

Questions for Organizers

Add your questions below

Inbox

Put suggestions for Indie Web Camp New York City 2014 here.

  • ...

See Also

User:Yatil.net

Created by Yatil.net on May 21

  • Wed, May 21 yatil.net Created page with "http://yatil.net"

http://yatil.net

Template:new

Created by Tantek.com on May 19


new!

Changed Pages

events/2014-05-21-homebrew-website-club

16 edits by tantek.com, metafluff.com, aaronparecki.com, chrisroos.co.uk, paulmunday.net, matthewlevine.com, alexlinsker.com, psyhigh.com

2014/Guest List

11 edits by kartikprabhu.com, brennannovak.com, iamshane.com, paulmunday.net, sixtwothree.org, tantek.com
  • Sat, May 17 kartikprabhu.com /* East */ added myself
  • Wed, May 21 brennannovak.com /* Remote Participants */
  • Wed, May 21 iamshane.com added myself to the IWC:PDX 2014 guest list
  • Wed, May 21 kartikprabhu.com /* Official Guest List */ updated attendee numbers
  • Thu, May 22 paulmunday.net /* West */ added user:paulmunday.net
  • Thu, May 22 paulmunday.net /* West */ fixed image
  • Fri, May 23 sixtwothree.org /* Regrets */
  • Fri, May 23 tantek.com replace requirements section with Creators, Bloggers, Apprentices, update header
  • Fri, May 23 tantek.com add Lanyrd and Plancast URLs
  • Fri, May 23 tantek.com link to main page
  • Fri, May 23 tantek.com /* IndieWebCamp 2014 */ add Calagator

IndieMark

6 edits by tantek.com
  • Wed, May 21 tantek.com /* Level 1 */ Test your h-entry support
  • Wed, May 21 tantek.com /* Level 1 */ clarify search requires all the points
  • Wed, May 21 tantek.com Validate your h-card
  • Wed, May 21 tantek.com /* Level 2 */ pick any two of
  • Wed, May 21 tantek.com /* Level 2 posts */ implement two or more of
  • Wed, May 21 tantek.com /* Level 2 posts */ make notes a SHOULD (not required), and add bookmarks for adactio

IRC

6 edits by tantek.com, aaronparecki.com, rascul.io
  • Sat, May 17 tantek.com Personal domain whois - brief documentation from rascul's notes in IRC
  • Sat, May 17 aaronparecki.com only show past 6 months in the calendar view
  • Sat, May 17 rascul.io /* Personal domain whois */ add more scenarios and links
  • Sat, May 17 tantek.com clean up IRC applications section, minimize to those either one per platform, or actively in use only
  • Sat, May 17 tantek.com install, and trying a little re-ordering to help readers first
  • Sat, May 17 tantek.com shorten link a bit

fragmention

5 edits by aaronparecki.com, vasilis.nl, kevinmarks.com

micropub

5 edits by kylewm.com, aaronparecki.com
  • Sat, May 17 kylewm.com /* Brainstorming */ thinking out loud about how to handle markdown input
  • Sun, May 18 aaronparecki.com add dfn
  • Tue, May 20 aaronparecki.com add to indieauth category
  • Tue, May 20 aaronparecki.com link to [[micropub-endpoint]]
  • Fri, May 23 aaronparecki.com initial writeup of trust-less micropub from IRC chat

https

5 edits by tantek.com, kartikprabhu.com
  • Fri, May 23 tantek.com /* Level 3 security */ reword slightly, add examples KartikPrabhu and GWG
  • Fri, May 23 tantek.com /* Level 4 security */ examples
  • Fri, May 23 tantek.com /* Level 1 security */ clarify wording a bit, note question about what should be minimal level 1
  • Fri, May 23 tantek.com /* Level 1 security */ Refuse the connection option and example
  • Fri, May 23 kartikprabhu.com /* IndieMark Levels */ Level 4!

Path

4 edits by tantek.com
  • Wed, May 21 tantek.com Unsubscribe Confirmation Page
  • Wed, May 21 tantek.com /* UI */ path.com
  • Wed, May 21 tantek.com /* Unsubscribe Confirmation Page */ lightcycles from a birds eye view.
  • Wed, May 21 tantek.com /* Unsubscribe Confirmation Page */ Reloading

wiki

4 edits by aaronparecki.com
  • Sun, May 18 aaronparecki.com delete to make room for the main wiki page
  • Sun, May 18 aaronparecki.com moved resolved wiki issues to their own page
  • Sun, May 18 aaronparecki.com move page and projects above suggestions
  • Sun, May 18 aaronparecki.com add instructions for using post-by-email!

licensing

4 edits by kylewm.com, tantek.com
  • Fri, May 16 kylewm.com /* Public Domain */ added CC0 and clarified that it is appropriate for code
  • Fri, May 16 tantek.com define CC0 at the top, then provide subpoints
  • Fri, May 16 tantek.com IndieWebCamp wiki uses CC0 (requires and publishes)
  • Fri, May 23 kylewm.com /* External Links */

short-domains

2 edits by aaronparecki.com, jonnybarnes.net
  • Mon, May 19 aaronparecki.com add notes on my implementation
  • Wed, May 21 jonnybarnes.net /* IndieWeb Examples */ add example of jmb.so

JSON

2 edits by tantek.com

Loqi

2 edits by aaronparecki.com, kartikprabhu.com

OpenBlog

2 edits by aaronparecki.com, ben.thatmustbe.me

2014

2 edits by aaronparecki.com, tantek.com
  • Tue, May 20 aaronparecki.com /* sponsor */ split sponsorship lists into two sections for east/west coast
  • Fri, May 23 tantek.com /* RSVP */ add Lanyrd & Plancast URLs

IndieAuth

2 edits by aaronparecki.com

Events

2 edits by tantek.com
  • Thu, May 22 tantek.com /* Upcoming */ unable to host 2014-06-04 HWC @MozSF - will be away
  • Fri, May 23 tantek.com move past events to recent

discovery

2 edits by tantek.com
  • Tue, May 20 tantek.com /* Post Information */ link to main authorship, page-name-discovery, start braindumping publication date.
  • Tue, May 20 tantek.com -= and add dfn

queueing

2 edits by kylewm.com, aaronparecki.com
  • Fri, May 23 kylewm.com added info about uwsgi-spooler and redis
  • Fri, May 23 aaronparecki.com change header to "IndieWeb Examples" for consistency

auth-brainstorming

2 edits by aaronparecki.com
  • Sat, May 17 aaronparecki.com /* Using the Token Endpoint */ fix wording
  • Mon, May 19 aaronparecki.com /* Token Endpoint */ add link to main article

IRC People

2 edits by sebastian.kip.pe

photos

2 edits by aaronparecki.com
  • Sun, May 18 aaronparecki.com /* Software */ remove Trovebox criticisms and link to main Trovebox page instead
  • Sun, May 18 aaronparecki.com /* IndieWeb Examples */ add myself, sort alphabetically

Facebook

2 edits by tantek.com
  • Fri, May 16 tantek.com /* Criticism */ Harmful to Body Image (what you find on Yahoo's home page)
  • Fri, May 16 tantek.com /* Criticism */ Prefers Pageviews Over Efficient UX

reader

2 edits by tantek.com
  • Tue, May 20 tantek.com /* Silo examples */ Facebook reader issue - Upworthy
  • Thu, May 22 tantek.com also indie reader

POSSE to Facebook

2 edits by kylewm.com
  • Mon, May 19 kylewm.com /* See Original */ added caveat that this seems brittle
  • Mon, May 19 kylewm.com /* See Original */ clarify that the endpoint is expected to be on the app's domain, not the user's (if they are different)

webmention

2 edits by snarfed.org, notizblog.org
  • Mon, May 19 snarfed.org /* Services */ checkmention
  • Mon, May 19 notizblog.org added testpinger and testendpoint

simple-indieauth-example

2 edits by aaronparecki.com

Main Page

2 edits by iamshane.com, tantek.com
  • Wed, May 21 iamshane.com changed mywebsite.com/ideas to example.com/ideas because mywebsite.com is a real website that we don't control.
  • Fri, May 23 tantek.com /* Homebrew Website Club */ next one is 2014-06-04 - can we do FOUR cities?

page-name-discovery

2 edits by tantek.com
  • Tue, May 20 tantek.com linky
  • Tue, May 20 tantek.com fix definition, should be broader, and separate use case / e.g.

distributed-indieauth

2 edits by aaronparecki.com

photo upload

1 edits by aaronparecki.com
  • Sun, May 18 aaronparecki.com /* PuPuPu */ mention OwnYourGram

How to set up web sign-in on your own domain

1 edits by aaronparecki.com
  • Mon, May 19 aaronparecki.com minor wording/formatting changes

PuPuPu

1 edits by aaronparecki.com

User:David.shanske.com

1 edits by david.shanske.com
  • Fri, May 16 david.shanske.com /* Features in Development */

reply-context

1 edits by aaronparecki.com
  • Sat, May 17 aaronparecki.com /* Delete */ add example of a reply to a deleted post

wget

1 edits by tantek.com

IndieArchive

1 edits by tantek.com

exercise

1 edits by tantek.com

stub

1 edits by tantek.com
  • Fri, May 16 tantek.com dfn. oops how did i forget this.

reply-context-examples

1 edits by tantek.com
  • Sat, May 17 tantek.com various types of aaronpk's replies, subheads for easier discovery

Nike

1 edits by tantek.com

antipatterns

1 edits by tantek.com
  • Sat, May 17 tantek.com /* See also */ architecture astronomy

projects

1 edits by vasilis.nl
  • Sun, May 18 vasilis.nl /* added Voto, a photo gallery */

RelMeAuth

1 edits by aaronparecki.com

User:Paulmunday.net

1 edits by paulmunday.net

rel-me

1 edits by aaronparecki.com

Indie Box

1 edits by upon2020.com

Google

1 edits by tantek.com
  • Thu, May 22 tantek.com notification services Google Alerts, Google now

web hosting

1 edits by kylewm.com
  • Thu, May 22 kylewm.com /* Shared Hosting */ added asmallorange

User:Kartikprabhu.com

1 edits by kartikprabhu.com
  • Fri, May 23 kartikprabhu.com /* Itching */ scratched https

webactions

1 edits by tantek.com
  • Thu, May 22 tantek.com headings for use cases, to better separate them and make them more obvious

h-feed

1 edits by kylewm.com
  • Thu, May 22 kylewm.com added Superfeedr article about fragment subscriptions

Python

1 edits by kartikprabhu.com
  • Thu, May 22 kartikprabhu.com /* Kartik Prabhu */ added mf2util

posse-post-discovery

1 edits by tantek.com

authorship

1 edits by tantek.com

storage

1 edits by tantek.com

POSSE

1 edits by kylewm.com
  • Mon, May 19 kylewm.com /* FAQ */ added q with link to posse-post-discovery#tradeoffs

like

1 edits by waterpigs.co.uk
  • Tue, May 20 waterpigs.co.uk Improved “How” section, split into post/publish and consume/markup with example

Known

1 edits by aaronparecki.com

WordPress

1 edits by snarfed.org
  • Wed, May 21 snarfed.org /* More building blocks */ reply, like, etc. bookmarklets

videos about the indieweb

1 edits by tantek.com
  • Wed, May 21 tantek.com IndieWeb Ad - SquareSpace Ad Parody