[p2pu-webcraft] Intermediate Webcraft Challenges

John Britton john at p2pu.org
Mon Oct 17 13:06:54 UTC 2011


>
> * writing scrapers and parsers for large/messy unstructured data. for
> example, taking the plain text transcripts from a senate hearing and parsing
> it into a structured form that identifies and associated speakers with their
> spoken text, and possibly brings in other data about each speaker from a
> secondary source.


Sounds fun, I would encourage giving a few different content examples so
there is something for everyone.

* examining an existing site/module/library, and identifying architectural,
> design, or deployment choices that are likely to result in a
> bottleneck/crash during scaling or high load. what component of the site in
> question would be the limiting factor? why? for example, would it be
> bandwidth? number of connections? database speed? a really inefficient loop?
> how could these expected bottlenecks/load issues be addressed?


I think this could be tightened up a bit, it's pretty open ended and if I
were to attempt it I'd like to have a clear goal. Maybe you could provide a
few different things to investigate and specific problems to look for, sort
of like a checklist.

* design an API from scratch (either design-only or design and implement):
> for example, pick a site you think is cool, that has an API (but one that
> you are not familiar with). without looking at what they have done, write
> out a design for what you think the API should look like - what function
> calls and features would it support? what should the API calls look like?
> what format would the returned data be in? after you're done, compare with
> what the existing site has, and compare/contrast.


I really like this idea a lot. Perhaps encourage people to wrap existing
APIs and create a better interface for them. Writing an API client library
is a great way to get experience as well.

 * identify 10 things that cannot be done on the web today. what are they,
> why are they not possible, what could be done to make them possible.


Love this one as well, I'd add a step that is to take a look at what others
think is impossible and explain how they are possible today.

* an import/export tool-- for example, write an import tool that grabs all
> your tweets and imports them as wordpress posts. (this gets at the idea but
> would prefer to make it more useful). the idea would be to get at working
> with larger data, working with data you can't control, and having to work
> with/convert between interfaces that others have designed.


Agree that it should be something more useful, maybe start with a P2PU
dataset that we want converted into as many formats as possible. You can
earn a badge by moving this data to a new format.

* write code/pseudocode for bluetooth pairing using the android API


This one doesn't seem to fit with webcraft, it's a bit beyond the scope of
the web in my opinion.

* pick your favourite website. what browser standards is it compatible with?
> which ones is it NOT compatible with? are there simple changes you could
> make, to make it compliant?


Why did the developers choose to break the rules? Inexperience? Laziness? or
did they have a good reason?

* pick a site you like that does not have a mobile version. grab a snapshot
> of their page and any necessary css and js files being used. then modify the
> design locally to produce a proper mobile version of the site.


I think hacking on other people's stuff is great and it illustrates how
keeping web standards open empowers anyone.
--
contact info:
http://www.johndbritton.com
@johndbritton - http://twitter.com/johndbritton



On Wed, Oct 12, 2011 at 1:35 AM, Jessy Kate Schingler
<jessy at jessykate.com>wrote:

> hi john and all!
>
> (for those i don't know: my name is jessy schingler. you might have seen me
> around the lists. i'm starting to work on designing challenges for the
> school of webcraft. woo hoo!)
>
> this is a long email.
>
> first i mention a few design principles that i've been thinking about, and
> then i list a whole bunch of starting-point ideas for intermediate webcraft
> challenges. these are totally preliminary, so feel free to rip them apart,
> riff off of them, or take them in very different directions. mostly i want
> to get a sense which (if any) of these sound interesting, and if you think
> i'm headed in the right direction. so, feedback please! (and specific
> requests at the bottom).
>
> *Challenge Design*
> * a specific design thought is that challenges should focus on a measurable
> outcome, product or activity, but that where possible, the content should be
> left up to the user, so that they can customize the challenge to their own
> interests, or so that it can be customized to the content of a specific
> course/study group/etc.[0]
>
> * another is to be cognizant to creating some intermediary-level
> challenges, challenges that go beyond intro-level stuff. IMHO, part of this
> is in using real-world data sets, and asking for questions or products that
> don't have clear yes/no or right/wrong answers.
>
> * incorporate challenges that "reward hard work, not the right answers."[1]
> this doesn't mean to reward time spent over output-- it means to reward
> peoples' thinking process, and their willingness to struggle with something
> unfamiliar and to make learning mistakes. i can see this manifesting in
> challenges similar to the above-- by having problems which do not
> necessarily have a "right" answer, or possibly haven't been done before--
> eg. working with a new data set, refining or improving existing work, etc.
>
> *Challenges Ideas*
> (note: these are targeted at *intermediate* web developers)
>
> * writing scrapers and parsers for large/messy unstructured data. for
> example, taking the plain text transcripts from a senate hearing and parsing
> it into a structured form that identifies and associated speakers with their
> spoken text, and possibly brings in other data about each speaker from a
> secondary source.
>
> * examining an existing site/module/library, and identifying architectural,
> design, or deployment choices that are likely to result in a
> bottleneck/crash during scaling or high load. what component of the site in
> question would be the limiting factor? why? for example, would it be
> bandwidth? number of connections? database speed? a really inefficient loop?
> how could these expected bottlenecks/load issues be addressed?
>
> * design an API from scratch (either design-only or design and implement):
> for example, pick a site you think is cool, that has an API (but one that
> you are not familiar with). without looking at what they have done, write
> out a design for what you think the API should look like - what function
> calls and features would it support? what should the API calls look like?
> what format would the returned data be in? after you're done, compare with
> what the existing site has, and compare/contrast.
>
> * identify 10 things that cannot be done on the web today. what are they,
> why are they not possible, what could be done to make them possible.
>
> * an import/export tool-- for example, write an import tool that grabs all
> your tweets and imports them as wordpress posts. (this gets at the idea but
> would prefer to make it more useful). the idea would be to get at working
> with larger data, working with data you can't control, and having to work
> with/convert between interfaces that others have designed.
>
> * write code/pseudocode for bluetooth pairing using the android API
>
> * pick your favourite website. what browser standards is it compatible
> with? which ones is it NOT compatible with? are there simple changes you
> could make, to make it compliant?
>
> * pick a site you like that does not have a mobile version. grab a snapshot
> of their page and any necessary css and js files being used. then modify the
> design locally to produce a proper mobile version of the site.
>
>
> *Help* (aka, where i could use your feedback!):
>
> * do these challenges seem interesting? fun? too much work? imagining they
> were fleshed out in a more detail, do they seem self-contained/manageable
> enough? too big?
>
> * are they at the right level for an intermediate challenge?
>
> * should we explicitly design challenges to be composed (using the output
> from one as the input to another)?
>
> * do you have suggestions for incorporating game mechanics and incentives
> as we flesh these out?
>
> * who evaluates challenge content once submitted?
>
> * anything else that comes to mind!
>
>
> thanks,
> jessy
>
>
> [0] this comes out of some of the questions/concerns i expressed on a blog
> post the other day, and some great discussion in the comments:
> http://blog.jessykate.com/blog/2011/10/07/heterogeneous-learning/
>
> [1] see this article philipp sent around to the community list if you
> didn't already:
>
> http://www.wired.com/wiredscience/2011/10/why-do-some-people-learn-faster-2/#
>
> --
> Jessy
> http://jessykate.com
>
>
> _______________________________________________
> p2pu-webcraft mailing list
> p2pu-webcraft at lists.p2pu.org
> http://lists.p2pu.org/mailman/listinfo/p2pu-webcraft
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.p2pu.org/pipermail/p2pu-webcraft/attachments/20111017/da5e6e79/attachment.html>


More information about the p2pu-webcraft mailing list