1. The Intelligent Design of Microformats

    Ryan King


  2. http://theryanking.com/presentations/2006/xtech/talk/

  3. the other day...

    • already gave a tutorial on mf's the other day
    • gonna be a bit higher level here
    • if you want to ask specific technical questions, please hold off a bit
    • want to take the opportunity to provide some depth in one area
  4. Kansas

  5. Missouri

  6. FSM

  7. technology

    an overview of the technology stance of microformats

    The goal of this philosophy is...

  8. social

    promote, encourage, build...

  9. social

    not a...

  10. elevator pitch

    Designed for humans first and machines second, microformats are a set of simple, open data formats built upon existing and widely adopted standards.

    • high level statement
    • aside: why don't other efforts have high level statements?
    • ...
    • I want to talk about this design process
    • ...first, some philosophy
  11. data format design ???

    • there is no discipline of "data format" design
    • no school teaches it
    • we try to treat it like software engineering/systems design, but its significantly different
      • shared semantics
      • interop
      • ...
    • can we learn from other designers?
  12. user centered design

    • we want "web of data"
    • currently - lots of semi-structured data on the web
    • more data = more people
    • more people = lowering the bar for publishing
  13. designing microformats

    now for a bit about how we go about designing a microformat....

    first, a bit about the web...

  14. web processes

    • great place for experimenting with new ideas
    • often picked up by many people
    • iterate and improve
    • innovators must watch and learn from how innovations are adopted and adapted
  15. semantic markup

    • several years ago, Web developers began to push for semantic markup + CSS
    • idea: create more extensible and maintainable documents
    • practices are out in the open ==> collaboration and convergence
    • best practices identified, evolved into standard practices
    • ...
    • these are human semantics
    • ...
    • microformats grew out of natural convergence
    • As vocabularies converge, standardization can achieve machine semantics
    • unstructured data - structured data, new form of interoperability
  16. the microformats process

    • process grew out of practice
    • later we wrote the process down
    • I'll use hResume for examples
  17. problem statement

    • identify the problem you'd like to solve
    • look for simpler problems
    • make sure the problems are unsolved, or at least, can be significantly improved
    • hResume
      • people publish resumes online
      • a target for structuring
      • no existing broadly interoperable format
  18. problem statement

    • ask around
    • you aren't special
    • you aren't that smart
    • hResume
      • I had no idea how many people had worked on resume formats
      • I had no idea of the variation of resumes
  19. pave the cowpaths...

  20. document behavior

    • why?
    • adapt to current behavior
    • indicator of future behavior
    • eases adoption
    • must find the cowpaths before we can pave them
    • hResume - I didn't know what common practices existed for resumes, I only knew what I'd done
  21. procedure

    • collect markup examples
    • hResume - collected a sample of resumes
    • some semantic markup
    • some sloppy
    • deconstruct the markup
    • not always a large enough sample - ie, citation format
    • analyze the implicit schema
    • hResume example
    • pull the examples together and merge
    • develop an overall implied schema
    • hResume example
    • in the open
    • you don't know everything
  22. propose a microformat

  23. ask..

  24. ask...

    • existing semantics = no arguements
  25. ok, if you've made it this far...

  26. proposal

  27. scientific method

    from wikipedia:

    1. Define the question
    2. Gather information and resources
    3. Form hypothesis
    4. Perform experiment and collect data
    5. Analyze data
    6. Interpret data and draw conclusions that serve as a starting point for new hypotheses
    7. Publish results
    • do these line up?
    • mf process is science, many data formats efforts have been philosophy
  28. ?