SlideShare une entreprise Scribd logo
1  sur  98
Télécharger pour lire hors ligne
Digital_Fabrication_Studio.02
Projects and Information - managing and retrieving
information from databases and objects



Massimo Menichinelli
massimo.menichinelli@aalto.f
                                                  03.05.2012
@openp2pdesign                            Aalto Media Factory
http://www.slideshare.net/openp2pdesign              Helsinki
Today:
* Content Management Systems
* Version Control Systems
* QR Codes
* Blueprints
01.
Content Management Systems:
web interfaces to databases
Versioning: you've already seen it on Google Docs...




 Even Google Docs has a very simple versioning system available. It is
 an important mechanism for keeping track of the history of a project.
                          Source: http://docs.google.com/
Blog: Wordpress.org




The easiest way to manage content (and a bit
               of versioning).
             Source: http://wordpress.org/
Blog: Wordpress.org (+ plugin)




Revision Control allows fner control over the Post
    Revision system included with WordPress.
       Source: http://wordpress.org/extend/plugins/revision-control/
Blog: Wordpress.org (+ plugin)




A document management and version control plugin that allows teams
  of any size to collaboratively edit fles and manage their workflow.
               Source: http://wordpress.org/extend/plugins/wp-document-revisions/
CMS: Drupal.org




Drupal contains basic features common to a cms: user account registration and
  maintenance, menu management, RSS-feeds, page layout customization...
                   Source: http://wordpress.org/extend/plugins/wp-document-revisions/
CMS: Drupal.org (+modules)


You can extend the versioning system of Drupal with these
modules:

* http://drupal.org/project/revisioning
* http://drupal.org/project/revision_fu
* http://drupal.org/project/revisionreference
* http://drupal.org/project/block_revisions
* http://drupal.org/project/diff_revision
* http://drupal.org/project/revision_all
* http://drupal.org/project/user_revision
* http://drupal.org/project/user_diff
CMS: Drupal.org -> fablab.aalto.f




   We will soon have our website here ...

              Source: http://fablab.aalto.f
Wiki: Mediawiki.org




MediaWiki is a free software open source wiki package
   written in PHP, originally for use on Wikipedia.
            Source: http://www.mediawiki.org/wiki/MediaWiki
Backup: DropBox




DropBox has a limited versioning system, that goes
              back to 30 days only.
             Source: https://www.dropbox.com/help/11
Backup: ownCloud




An open source version of DropBox, in case you have a
                  server available.
                  Source: http://owncloud.org/
Backup: ownCloud (with versioning)




“Personal clone of ownCloud, containing an in-development versioning app (I would
  seriously advise against cloning and pulling from this repository at the moment)”
                            Source: https://github.com/craig0990/ownCloud
Backup: Sparkleshare




An open source version of DropBox, in case you have a
          server available (based on Git!).
                 Source: http://sparkleshare.org/
Need a local server? XAMPP




If you want to use Wordpress, Drupal, MediaWiki locally
                   on your computer.
            Source: http://www.apachefriends.org/en/xampp.html
Your local server, http://localhost/




Look for the htdocs folder in your XAMPP application, all the fles
       accessible through http://localhost should be there.
                         Source: http://localhost/
Your local database, http://localhost/phpmyadmin




  You can easily create a database with PhpMyAdmin (but you will
  probably have to change the password for installing MediaWiki).
                      Source: http://localhost/phpmyadmin/
02.
Version Control Systems:
managing the history of a project
02.01
Version Control Systems:
Subversion (SVN)
Version Control Systems
A version (or revision) control system is a system that tracks
incremental versions (or revisions) of fles and directories over
time. It allows you to explore the changes which resulted in each
of those versions and facilitates the arbitrary recall of the same.
* Backup and Restore
* Synchronization
* Short-term undo + Long-term undo
* Track Changes
* Track Ownership
* Branching and merging
* not in real time!




               Source: http://svnbook.red-bean.com/en/1.6/svn.basic.version-control-basics.html
Server/client-based Version Control System


                                                        Server



Client



                                                                                     Client
                             Client                                         Client

The frst architecture to appear, you need to be connected and you
 need a server (unless you want to work alone on your computer).
                       Source: http://www.kalekold.net/index.php?post=13
            http://betterexplained.com/articles/a-visual-guide-to-version-control/
Version Control System: Subversion (SVN)




Subversion manages fles and directories, and the changes made to
them, over time. Think of it as a sort of “time machine” of changes.
                       Source: http://subversion.apache.org/
An introduction to SVN




An open source book about using SVN.

       Source: http://svnbook.red-bean.com/
Version Control System: the vocabulary (01)

* Change: A change (or diff) represents a specifc modifcation to a document
under version control.

* Checkout : A check-out (or co) is the act of creating a local working copy
from the repository. A user may specify a specifc revision or obtain the latest.
Also refers to the same fles.

* Commit  : A commit (checkin, ci) is the action of writing or merging the
changes made in the working copy back to the repository. Also refers to the
same fles.

* Head : The most recent commit.




                        Source: http://en.wikipedia.org/wiki/Revision_control
Version Control System: the vocabulary (02)
* Conflict
A conflict occurs when different parties make changes to the same document. A
user must resolve the conflict by combining the changes, or by selecting one
change.

* Merge 
A merge or integration is an operation in which two sets of changes are applied
to a fle or set of fles.

* Update
An update (or sync) merges changes made in the repository (by other people, for
example) into the local working copy.

* Working copy
The working copy is the local copy of fles from a repository, at a specifc time or
revision. Conceptually, it is a sandbox.




                         Source: http://en.wikipedia.org/wiki/Revision_control
Versioning: the problem




How will the system allow users to share information,
  but prevent them from accidentally overwriting?
   Source: http://svnbook.red-bean.com/en/1.6/svn.basic.version-control-basics.html
Versioning: the lock-modify-unlock solution




  In this model, the repository allows only one person to
           change a fle at a time, by locking it.
     Source: http://svnbook.red-bean.com/en/1.6/svn.basic.version-control-basics.html
Versioning: the copy-modify-merge solution (01)




   In this model, each user's client contacts the project repository and creates a
personal working copy. The private copies are merged together into a new version.
                 Source: http://svnbook.red-bean.com/en/1.6/svn.basic.version-control-basics.html
Versioning: the copy-modify-merge solution (02)




   In this model, each user's client contacts the project repository and creates a
personal working copy. The private copies are merged together into a new version.
                 Source: http://svnbook.red-bean.com/en/1.6/svn.basic.version-control-basics.html
Diff: how to understand the changes




The best way of understanding what has changed is to
   compare different revisions with a diff software.
               Source: http://en.wikipedia.org/wiki/Diff
                http://en.wikipedia.org/wiki/Kompare
A typical SVN project




Development happens in trunk, testing alternatives in
branches and storing good versions (1.0, 1.1,...) in tags.
           Source: http://en.wikipedia.org/wiki/Apache_Subversion
Example: a spool for the RepRap Mendel




 The second version of the RepRap, the frst to be easier
                 to build and calibrate.
                 Source: http://reprap.org/wiki/Mendel
A spool for the RepRap Mendel: an improvement




       A spool added for handling the plastic wire and
                 published on Thingiverse.
                 Source: http://www.thingiverse.com/thing:3866
A spool for the RepRap Mendel: an improvement (01)




       “Well i wanted to have a very simple, but bearing based
                        spool system.” Camiel
                    Source: http://www.thingiverse.com/thing:3866
A spool for the RepRap Mendel: an improvement (02)




“I have changed the design to put the bearings in the spool itself. This way you
    can be more flexible in what you use to support the axle. ” Brokentoaster
                         Source: http://www.thingiverse.com/thing:3962
A spool for the RepRap Mendel: an improvement (03)




  “I liked BrokenToaster's idea of a bearing-driven flament spool holder, but
       that version was too big to ft on a Makerbot print bed. [...]” Randyy
                         Source: http://www.thingiverse.com/thing:4337
A spool for the RepRap Mendel: an improvement (04)




   “This takes advantage of the larger print area on RepRaps by printing
             the arm as one piece, […] also saving material.” Fil
                       Source: http://www.thingiverse.com/thing:11250
SVN Client + File comparison: TortoiseSVN (Win)




     The most popular SVN client on Windows, it can also
                     compare images.
                      Source: http://tortoisesvn.net/
SVN Client: RapidSVN (Windows, Mac, Linux)




   Open Source and multi-platform, but without fle
                   comparison.
                 Source: http://www.rapidsvn.org/
SVN Client: Versions (Mac)




    Free trial for one month...

      Source: http://www.versionsapp.com/
02.02
Version Control Systems:
Git and Mercurial (Hg)
Distributed Version Control System




A more recent architecture, more evoluted and popular. It
usually tracks the state of the fles, not just the changes.
                     Source: http://www.kalekold.net/index.php?post=13
    http://betterexplained.com/articles/intro-to-distributed-version-control-illustrated/
Version Control System: the vocabulary (03)


Distributed Version Control Systems add new terms to the vocabulary:

* Clone: create a working copy on your computer from another repository.

* Push : send a change to another repository (may require permission), even to
  your server.

* Pull  : download the latest changes from an online repository.
Distributed Version Control System: Git




   Developed by Linus Torvalds, for improving the
    distributed development of the Linux Kernel.
                  Source: http://git-scm.com/
An introduction to Git




An open source book about using Git.

         Source: http://progit.org/book/
Git project hosting: GitHub.com




The most popular (and refned) Git hosting available now, free plans
   for open source projects (you have to pay for private spaces).
                         Source: https://github.com/
GitHub for Mac: a Git client (Mac)




 GitHub as its own freeware client (for Mac).

              Source: http://mac.github.com/
Git Client: GitX (Mac)




Actually, more than one GitX can be found...

             Source: http://gitx.laullon.com/
Git project hosting: Gitorius.org




Free plans, and open source software itself.

            Source: http://www.gitorious.org/
Distributed Version Control System: Mercurial (hg)




       Open Source and distributed as Git, usually the most
                       used in FabLabs.
                      Source: http://mercurial.selenic.com/
An introduction to Mercurial




A complete and easy introduction to using Mercurial.

                  Source: http://hginit.com/
Git / Hg project hosting: Bitbucket.org




For both Git and Hg, free plan also for private projects.

                   Source: https://bitbucket.org/
Mercurial (hg) client: MacHg




Much better than the terminal for starting, and it has
Mercurial packaged (no need to install it separately).
               Source: http://jasonfharris.com/machg/
File comparison: Kaleidoscope (Mac)




        Free trial for one month...

         Source: http://www.kaleidoscopeapp.com/
File comparison: Perforce P4Merge (Win, Mac, Linux)




         Perforce is another version control system, but it is
        interesting for its visual diff applications (freeware).
       Source: http://www.perforce.com/product/components/perforce_visual_merge_and_diff_tools
File comparison: ComparePSD (Windows)




  Freeware for Windows, can compare Photoshop .psd
                        fles.
              Source: http://pixelnovel.com/comparepsd/
Subversion hosting service: Pixelnovel




 Integrated with Photoshop: free plan (100 MB) and
                 better paid plans.
             Source: http://pixelnovel.com/svn-account/
SVN / Git / Hg hosting service: Beanstalk




           Paid plans (with free trial).

               Source: http://beanstalkapp.com/
SVN / Git hosting service: Codesion




        Paid plans (with free trial).

             Source: http://codesion.com/
SVN / Git / Hg hosting service: Google Code




           Free for open source projects.

            Source: http://code.google.com/projecthosting/
03.
QR Code:
bits about a project from its atoms
Retrieving the source code of an object




What about retrieving the information about a project, in order to be able to
   modify it? If we work with Arduino, there is this software from IDEO.
        Source: http://labs.ideo.com/2012/03/15/arduino-tool-that-connects-each-board-to-its-own-source/
Dead Drops: local (really!) information




‘Dead Drops’ is an anonymous, offline, peer to peer fle-sharing network in public
    space. USB flash drives are embedded into walls accessible to anybody.
                                Source: http://deadrops.com/
Dead Drops: how to fnd them




‘Dead Drops’ is an anonymous, offline, peer to peer fle-sharing network in public
    space. USB flash drives are embedded into walls accessible to anybody.
                         Source: http://deaddrops.com/dead-drops/db-map/
Spime: sp(ace) + (ti)me of an object




Spime is a neologism for a currently theoretical object that can be tracked
     through space and time throughout the lifetime of the object.
               Source: http://mitpress.mit.edu/catalog/item/default.asp?tid=10603&ttype=2
                                    http://en.wikipedia.org/wiki/Spime
Evrythng.com




  EVRYTHNG is a software engine for creating Active Digital Identities, unique
online profles for objects to make them part of the Web and digitally connected.
                                Source: http://evrythng.com/
Tales of things (.com)




Tales of Things allows just that with a quick and easy way to link any media to
            any object via small printable tags known as QR codes.
                            Source: http://www.talesofthings.com/
Q(uick)R(esponse) Code




QR Code is the trademark for a type of matrix / 2D barcode that can encode four
    standardized kinds of data (numeric, alphanumeric, byte/binary, Kanji).
                          Source: http://en.wikipedia.org/wiki/Qr_code
QR Code: data storage

The amount of data that can be stored in the QR Code symbol depends on the
datatype (mode, or input character set), version (1,...,40, indicating the overall
dimensions of the symbol), and error correction level (L[ow], M[edium],
Q[uality], H[igh]). The maximum storage capacities are:

* Numeric only: max. 7,089 characters (0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
* Alphanumeric: max. 4,296 characters (0–9, A–Z [upper-case only], space, $,
  %, * +, -, ., /, :)
     ,
* Binary/byte: max. 2,953 characters (8-bit bytes) (23624 bits)
* Kanji/Kana: max. 1,817 characters




                           Source: http://en.wikipedia.org/wiki/Qr_code
QR Code: data storage




The more information is encoded, the fner
        the details of the code.
        Source: http://en.wikipedia.org/wiki/Qr_code
QR Code: error tolerance and customization




 You can “hack” a QR Code thanks to its tolerance to errors.

      Source: http://whomwah.com/2008/03/12/more-fun-with-qr-codes-and-the-bbc-logo/
  http://contentdeveloper.com/2010/01/how-to-customize-qr-codes-with-your-brands-identity/
QR Codes: not just printed paper




  You can create QR codes with existing
  materials, objects and building blocks...
    Source: http://www.arcfn.com/2009/01/qr-codes-in-lego.html
QR Codes: not just printed paper




         You can create QR codes with existing
         materials, objects and building blocks...
Source: http://www.visualnews.com/2011/12/15/a-qr-code-built-from-everyday-objects/
QR Codes: not just printed paper




           You can create QR codes with existing
           materials, objects and building blocks...
Source: http://www.elenabelmann.blogspot.com/2011/02/objekt-als-informationstrager.html
QR Codes: an easy way to create them




Many online free services will create QR Codes for you
 starting from many different kinds of information.
                 Source: http://qrcode.littleidiot.be/
QR Codes: an easy way to create (and decode) them




      Many online free services will create QR Codes for you
       starting from many different kinds of information.
                   Source: http://www.patrick-wied.at/static/qrgen/
QR Codes: an easy way to create them




Many online free services will create QR Codes for you
 starting from many different kinds of information.
                  Source: http://www.qrstuff.com/
QR Codes: an easy way to create them




Many online free services will create QR Codes for you
 starting from many different kinds of information.
                 Source: http://www.qrhacker.com/
QR Codes: an easy way to create a stencil




 … and there are even libraries for creating stencil of QR
              Codes that you can laser cut!
            Source: http://blog.makezine.com/2011/07/20/qr-stenciler/
QR Codes: you can track the position as well




  As you can link an identity to an object with a QR Code,
       then we can track where this identity moves.
   Source: http://www.springwise.com/government/croatia-postage-stamps-trackable-qr-code/
QR Codes: you can add related information




       You can provide related information and build apps and
                     services around an object!
Source: http://www.springwise.com/lifestyle_leisure/cigarette-packages-qr-codes-reveal-nearby-place-smoke/
QR Codes: you can add related information




    You can provide the instruction manual of an object!

  Source: http://www.steelcase.com/en/products/category/seating/task/leap/pages/qr-codes.aspx
  http://www.fastcodesign.com/1665090/an-offce-chair-with-built-in-video-instruction-manual
QR Codes: you can add the source code!




  … and fnally you can even provide directly the source
  code of an object, not just a link to its source online!
                            Source: http://supermechanical.com/rev/
http://www.springwise.com/style_design/future-repairs-tables-digital-blueprints-etched-surface/
QR Codes: you can add the source code!




  … and fnally you can even provide directly the source
  code of an object, not just a link to its source online!
                            Source: http://supermechanical.com/rev/
http://www.springwise.com/style_design/future-repairs-tables-digital-blueprints-etched-surface/
QR Codes: which bits?




We are embedding information on an object, and we use a
 device for retrieving it... but which kind of information?
    Source: http://www.pcworld.com/article/248843/beware_of_malicious_qr_codes.html
Virus: a dangerous information




Some kind of information (like viruses) can modify, deform
                 and damage an object...
                    Source: http://www.platform21.nl/page/3915/en
       http://www.nextnature.net/2009/04/ikea-lamp-catches-elephantiasis-virus/
QR Code: you can even print it (in 3D)




   If you have a 3D printer that can print at least
             two different materials....
            Source: http://www.thingiverse.com/thing:12104
QR Code: for real walls




                Not only Dead Drops can be used for embedding
                            information on a wall!
Source: http://www.springwise.com/lifestyle_leisure/qr-code-stickers-turn-real-world-objects-digital-conversations/
                                                 https://qrawr.com/
After QR Code, Augmented Reality?




AR can be useful for adding a layer of bits on a space or
object, and we can possibly think about its source code...
                    Source: http://amzn.to/KUwNk6
04.
Blueprints – suggestions for the
documentation of the projects
Ok, the blueprints...




We need all the possible documentation for being able to
        replicate the project in other FabLabs.
          Source: http://commons.wikimedia.org/wiki/Category:Blueprints
Patents (?)




A very formal way of representing a
   project, but it could be useful.
         Source: http://bit.ly/K3YgxN
Instructions (process): Instructables.com




  You can explain in a simple way the whole process...

    Source: http://www.instructables.com/id/Create-a-3D-printed-3D-fractal/?ALLSTEPS
Instructions (process): IKEA




        You can provide simple instructions...

Source: http://www.ikea.com/ms/en_US/customer_service/assembly/A/A80095184.pdf
   http://www.ikea.com/ms/en_US/customer_service/assembly_instructions.html
Instructions (process) for dummies: IKEA




… simple intructions that can be understood by any culture!

     Source: http://www.ikea.com/ms/en_US/customer_service/assembly/A/A80095184.pdf
        http://www.ikea.com/ms/en_US/customer_service/assembly_instructions.html
Even videos...




Nowadays it is almost impossible to fnd a tutorial that it is not made
  with a video! Even researchers present their papers with a video.
                        Source: http://youtu.be/dfNByi-rrO4
Thank you!!



Massimo Menichinelli
Aalto Media Factory
massimo.menichinelli@aalto.f                      03.05.2012
@openp2pdesign                            Aalto Media Factory
http://www.slideshare.net/openp2pdesign              Helsinki

Contenu connexe

Tendances

Composer for Busy Developers - php|tek13
Composer for Busy Developers - php|tek13Composer for Busy Developers - php|tek13
Composer for Busy Developers - php|tek13
Rafael Dohms
 
Building a Drupal site with Git
Building a Drupal site with GitBuilding a Drupal site with Git
Building a Drupal site with Git
dirtytactics
 
3 Git
3 Git3 Git
Introduction to Subversion and Google Project Hosting
Introduction to Subversion and Google Project HostingIntroduction to Subversion and Google Project Hosting
Introduction to Subversion and Google Project Hosting
Philip Johnson
 
CMake: Improving Software Quality and Process
CMake: Improving Software Quality and ProcessCMake: Improving Software Quality and Process
CMake: Improving Software Quality and Process
Marcus Hanwell
 
Subversion
SubversionSubversion
Subversion
rchakra
 

Tendances (20)

Composer is the new Drush - Drupal Developer Training (internal)
Composer is the new Drush - Drupal Developer Training (internal)Composer is the new Drush - Drupal Developer Training (internal)
Composer is the new Drush - Drupal Developer Training (internal)
 
Docker Starter Pack
Docker Starter PackDocker Starter Pack
Docker Starter Pack
 
Composer for Busy Developers - php|tek13
Composer for Busy Developers - php|tek13Composer for Busy Developers - php|tek13
Composer for Busy Developers - php|tek13
 
C make tutorial
C make tutorialC make tutorial
C make tutorial
 
Essential Tools for Modern PHP
Essential Tools for Modern PHPEssential Tools for Modern PHP
Essential Tools for Modern PHP
 
Create a PHP Library the right way
Create a PHP Library the right wayCreate a PHP Library the right way
Create a PHP Library the right way
 
Building a Drupal site with Git
Building a Drupal site with GitBuilding a Drupal site with Git
Building a Drupal site with Git
 
How to Dockerize Web Application using Docker Compose
How to Dockerize Web Application using Docker ComposeHow to Dockerize Web Application using Docker Compose
How to Dockerize Web Application using Docker Compose
 
Cmake
CmakeCmake
Cmake
 
Docker
DockerDocker
Docker
 
3 Git
3 Git3 Git
3 Git
 
Let's go HTTPS-only! - More Than Buying a Certificate
Let's go HTTPS-only! - More Than Buying a CertificateLet's go HTTPS-only! - More Than Buying a Certificate
Let's go HTTPS-only! - More Than Buying a Certificate
 
Introduction to Subversion and Google Project Hosting
Introduction to Subversion and Google Project HostingIntroduction to Subversion and Google Project Hosting
Introduction to Subversion and Google Project Hosting
 
CMake: Improving Software Quality and Process
CMake: Improving Software Quality and ProcessCMake: Improving Software Quality and Process
CMake: Improving Software Quality and Process
 
Introduction to Git / Github
Introduction to Git / GithubIntroduction to Git / Github
Introduction to Git / Github
 
Flink 0.10 - Upcoming Features
Flink 0.10 - Upcoming FeaturesFlink 0.10 - Upcoming Features
Flink 0.10 - Upcoming Features
 
Subversion
SubversionSubversion
Subversion
 
Dependencies Managers in C/C++. Using stdcpp 2014
Dependencies Managers in C/C++. Using stdcpp 2014Dependencies Managers in C/C++. Using stdcpp 2014
Dependencies Managers in C/C++. Using stdcpp 2014
 
Composer
ComposerComposer
Composer
 
Docker @ Atlogys
Docker @ AtlogysDocker @ Atlogys
Docker @ Atlogys
 

Similaire à Digital Fabrication Studio.02 _Information @ Aalto Media Factory

Version control with Subversion
Version control with SubversionVersion control with Subversion
Version control with Subversion
O. R. Kumaran
 
SVN Usage & Best Practices
SVN Usage & Best PracticesSVN Usage & Best Practices
SVN Usage & Best Practices
Ashraf Fouad
 
Introduction to Version Control and Configuration Management
Introduction to Version Control and Configuration ManagementIntroduction to Version Control and Configuration Management
Introduction to Version Control and Configuration Management
Philip Johnson
 
Practical SVN for PHP Developers
Practical SVN for PHP DevelopersPractical SVN for PHP Developers
Practical SVN for PHP Developers
Lorna Mitchell
 
Dependency management with Composer
Dependency management with ComposerDependency management with Composer
Dependency management with Composer
Jason Grimes
 

Similaire à Digital Fabrication Studio.02 _Information @ Aalto Media Factory (20)

Version control with Subversion
Version control with SubversionVersion control with Subversion
Version control with Subversion
 
PHP Dependency Management with Composer
PHP Dependency Management with ComposerPHP Dependency Management with Composer
PHP Dependency Management with Composer
 
SVN Usage & Best Practices
SVN Usage & Best PracticesSVN Usage & Best Practices
SVN Usage & Best Practices
 
Introduction to Version Control and Configuration Management
Introduction to Version Control and Configuration ManagementIntroduction to Version Control and Configuration Management
Introduction to Version Control and Configuration Management
 
Linux containers and docker
Linux containers and dockerLinux containers and docker
Linux containers and docker
 
Drupal Version Control & File System Basics
Drupal Version Control & File System BasicsDrupal Version Control & File System Basics
Drupal Version Control & File System Basics
 
SVN Information
SVN Information  SVN Information
SVN Information
 
Subversion on .Unix
Subversion on .UnixSubversion on .Unix
Subversion on .Unix
 
Subversion on .Unix
Subversion on .UnixSubversion on .Unix
Subversion on .Unix
 
Practical SVN for PHP Developers
Practical SVN for PHP DevelopersPractical SVN for PHP Developers
Practical SVN for PHP Developers
 
Dependency management with Composer
Dependency management with ComposerDependency management with Composer
Dependency management with Composer
 
SVN Tool Information : Best Practices
SVN Tool Information  : Best PracticesSVN Tool Information  : Best Practices
SVN Tool Information : Best Practices
 
Composer JSON kills make files
Composer JSON kills make filesComposer JSON kills make files
Composer JSON kills make files
 
Linux internals v4
Linux internals v4Linux internals v4
Linux internals v4
 
Aleksandr Kutsan "Managing Dependencies in C++"
Aleksandr Kutsan "Managing Dependencies in C++"Aleksandr Kutsan "Managing Dependencies in C++"
Aleksandr Kutsan "Managing Dependencies in C++"
 
Jbossworld Presentation
Jbossworld PresentationJbossworld Presentation
Jbossworld Presentation
 
Devoxx 2014 [incomplete] summary
Devoxx 2014 [incomplete] summaryDevoxx 2014 [incomplete] summary
Devoxx 2014 [incomplete] summary
 
Docker containers & the Future of Drupal testing
Docker containers & the Future of Drupal testing Docker containers & the Future of Drupal testing
Docker containers & the Future of Drupal testing
 
FlashInTO SVN Presentation
FlashInTO SVN PresentationFlashInTO SVN Presentation
FlashInTO SVN Presentation
 
Containerizing legacy applications
Containerizing legacy applicationsContainerizing legacy applications
Containerizing legacy applications
 

Plus de Massimo Menichinelli

Defense in the field of New Media: Msc Massimo Menichinelli
Defense in the field of New Media: Msc Massimo MenichinelliDefense in the field of New Media: Msc Massimo Menichinelli
Defense in the field of New Media: Msc Massimo Menichinelli
Massimo Menichinelli
 
Fab City Summer School Milan 2016 Final project requirements - Massimo Menich...
Fab City Summer School Milan 2016 Final project requirements - Massimo Menich...Fab City Summer School Milan 2016 Final project requirements - Massimo Menich...
Fab City Summer School Milan 2016 Final project requirements - Massimo Menich...
Massimo Menichinelli
 
Fab City Summer School Milan 2016 - Technologies, processes, participation - ...
Fab City Summer School Milan 2016 - Technologies, processes, participation - ...Fab City Summer School Milan 2016 - Technologies, processes, participation - ...
Fab City Summer School Milan 2016 - Technologies, processes, participation - ...
Massimo Menichinelli
 
Fab City Summer School Milan 2016 - Maker and Laboratories, Communities, Citi...
Fab City Summer School Milan 2016 - Maker and Laboratories, Communities, Citi...Fab City Summer School Milan 2016 - Maker and Laboratories, Communities, Citi...
Fab City Summer School Milan 2016 - Maker and Laboratories, Communities, Citi...
Massimo Menichinelli
 
The Meta-Design of Systems, Menichinelli + Valsecchi 2016
The Meta-Design of Systems, Menichinelli + Valsecchi 2016The Meta-Design of Systems, Menichinelli + Valsecchi 2016
The Meta-Design of Systems, Menichinelli + Valsecchi 2016
Massimo Menichinelli
 

Plus de Massimo Menichinelli (20)

Defense in the field of New Media: Msc Massimo Menichinelli
Defense in the field of New Media: Msc Massimo MenichinelliDefense in the field of New Media: Msc Massimo Menichinelli
Defense in the field of New Media: Msc Massimo Menichinelli
 
Research On And Through Design With Open, Distributed And Collaborative Desig...
Research On And Through Design With Open, Distributed And Collaborative Desig...Research On And Through Design With Open, Distributed And Collaborative Desig...
Research On And Through Design With Open, Distributed And Collaborative Desig...
 
Platforms, Networks And Impact Of Open, Distributed And Collaborative Design ...
Platforms, Networks And Impact Of Open, Distributed And Collaborative Design ...Platforms, Networks And Impact Of Open, Distributed And Collaborative Design ...
Platforms, Networks And Impact Of Open, Distributed And Collaborative Design ...
 
The Open Science Dimension Of Researching Open Design @ SwissGradNet
 The Open Science Dimension Of Researching Open Design @ SwissGradNet The Open Science Dimension Of Researching Open Design @ SwissGradNet
The Open Science Dimension Of Researching Open Design @ SwissGradNet
 
The Decentralization Turns In Design: An Exploration Through The Maker Moveme...
The Decentralization Turns In Design: An Exploration Through The Maker Moveme...The Decentralization Turns In Design: An Exploration Through The Maker Moveme...
The Decentralization Turns In Design: An Exploration Through The Maker Moveme...
 
Mapping the Maker Movement and its impact @ Maker Faire Barcelona 2019
Mapping the Maker Movement and its impact @ Maker Faire Barcelona 2019Mapping the Maker Movement and its impact @ Maker Faire Barcelona 2019
Mapping the Maker Movement and its impact @ Maker Faire Barcelona 2019
 
Service Design and Activity Theory for the Meta-Design of collaborative desig...
Service Design and Activity Theory for the Meta-Design of collaborative desig...Service Design and Activity Theory for the Meta-Design of collaborative desig...
Service Design and Activity Theory for the Meta-Design of collaborative desig...
 
Exploring Collaborative Processes Between Maker Laboratories, Designers And C...
Exploring Collaborative Processes Between Maker Laboratories, Designers And C...Exploring Collaborative Processes Between Maker Laboratories, Designers And C...
Exploring Collaborative Processes Between Maker Laboratories, Designers And C...
 
A Shared Data Format For Describing Collaborative Design Processes @ Cumulus ...
A Shared Data Format For Describing Collaborative Design Processes @ Cumulus ...A Shared Data Format For Describing Collaborative Design Processes @ Cumulus ...
A Shared Data Format For Describing Collaborative Design Processes @ Cumulus ...
 
Como construir un Fab Lab - FEED2015 20.11.2015
Como construir un Fab Lab - FEED2015 20.11.2015Como construir un Fab Lab - FEED2015 20.11.2015
Como construir un Fab Lab - FEED2015 20.11.2015
 
Fab City Summer School Milan 2016 Final project requirements - Massimo Menich...
Fab City Summer School Milan 2016 Final project requirements - Massimo Menich...Fab City Summer School Milan 2016 Final project requirements - Massimo Menich...
Fab City Summer School Milan 2016 Final project requirements - Massimo Menich...
 
Fab City Summer School Milan 2016 - Technologies, processes, participation - ...
Fab City Summer School Milan 2016 - Technologies, processes, participation - ...Fab City Summer School Milan 2016 - Technologies, processes, participation - ...
Fab City Summer School Milan 2016 - Technologies, processes, participation - ...
 
Fab City Summer School Milan 2016 - Maker and Laboratories, Communities, Citi...
Fab City Summer School Milan 2016 - Maker and Laboratories, Communities, Citi...Fab City Summer School Milan 2016 - Maker and Laboratories, Communities, Citi...
Fab City Summer School Milan 2016 - Maker and Laboratories, Communities, Citi...
 
Fab City Summer School Milan 2016 Introduction - Massimo Menichinelli
Fab City Summer School Milan 2016  Introduction - Massimo MenichinelliFab City Summer School Milan 2016  Introduction - Massimo Menichinelli
Fab City Summer School Milan 2016 Introduction - Massimo Menichinelli
 
The Meta-Design of Systems, Menichinelli + Valsecchi 2016
The Meta-Design of Systems, Menichinelli + Valsecchi 2016The Meta-Design of Systems, Menichinelli + Valsecchi 2016
The Meta-Design of Systems, Menichinelli + Valsecchi 2016
 
Designing And Making: What Could Change In Design Schools. A First Systemic O...
Designing And Making: What Could Change In Design Schools. A First Systemic O...Designing And Making: What Could Change In Design Schools. A First Systemic O...
Designing And Making: What Could Change In Design Schools. A First Systemic O...
 
Open Source + Sharing Economy
Open Source + Sharing EconomyOpen Source + Sharing Economy
Open Source + Sharing Economy
 
Fab Academy 2015: Molding and Casting
Fab Academy 2015: Molding and CastingFab Academy 2015: Molding and Casting
Fab Academy 2015: Molding and Casting
 
Fab Academy 2015: CNC Milling
Fab Academy 2015: CNC MillingFab Academy 2015: CNC Milling
Fab Academy 2015: CNC Milling
 
Fab Academy 2015: 3D Printing
Fab Academy 2015: 3D PrintingFab Academy 2015: 3D Printing
Fab Academy 2015: 3D Printing
 

Dernier

Jigani Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bangal...
Jigani Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bangal...Jigani Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bangal...
Jigani Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bangal...
amitlee9823
 
Anamika Escorts Service Darbhanga ❣️ 7014168258 ❣️ High Cost Unlimited Hard ...
Anamika Escorts Service Darbhanga ❣️ 7014168258 ❣️ High Cost Unlimited Hard  ...Anamika Escorts Service Darbhanga ❣️ 7014168258 ❣️ High Cost Unlimited Hard  ...
Anamika Escorts Service Darbhanga ❣️ 7014168258 ❣️ High Cost Unlimited Hard ...
nirzagarg
 
call girls in Dakshinpuri (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️
call girls in Dakshinpuri  (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️call girls in Dakshinpuri  (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️
call girls in Dakshinpuri (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
Nisha Yadav Escorts Service Ernakulam ❣️ 7014168258 ❣️ High Cost Unlimited Ha...
Nisha Yadav Escorts Service Ernakulam ❣️ 7014168258 ❣️ High Cost Unlimited Ha...Nisha Yadav Escorts Service Ernakulam ❣️ 7014168258 ❣️ High Cost Unlimited Ha...
Nisha Yadav Escorts Service Ernakulam ❣️ 7014168258 ❣️ High Cost Unlimited Ha...
nirzagarg
 
Escorts Service Basapura ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Basapura ☎ 7737669865☎ Book Your One night Stand (Bangalore)Escorts Service Basapura ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Basapura ☎ 7737669865☎ Book Your One night Stand (Bangalore)
amitlee9823
 
Call Girls Basavanagudi Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
Call Girls Basavanagudi Just Call 👗 7737669865 👗 Top Class Call Girl Service ...Call Girls Basavanagudi Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
Call Girls Basavanagudi Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
amitlee9823
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
dollysharma2066
 
Peaches App development presentation deck
Peaches App development presentation deckPeaches App development presentation deck
Peaches App development presentation deck
tbatkhuu1
 
RT Nagar Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bang...
RT Nagar Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bang...RT Nagar Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bang...
RT Nagar Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bang...
amitlee9823
 
Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
amitlee9823
 

Dernier (20)

Jigani Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bangal...
Jigani Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bangal...Jigani Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bangal...
Jigani Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bangal...
 
VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...
VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...
VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...
 
Anamika Escorts Service Darbhanga ❣️ 7014168258 ❣️ High Cost Unlimited Hard ...
Anamika Escorts Service Darbhanga ❣️ 7014168258 ❣️ High Cost Unlimited Hard  ...Anamika Escorts Service Darbhanga ❣️ 7014168258 ❣️ High Cost Unlimited Hard  ...
Anamika Escorts Service Darbhanga ❣️ 7014168258 ❣️ High Cost Unlimited Hard ...
 
call girls in Dakshinpuri (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️
call girls in Dakshinpuri  (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️call girls in Dakshinpuri  (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️
call girls in Dakshinpuri (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️
 
Booking open Available Pune Call Girls Kirkatwadi 6297143586 Call Hot Indian...
Booking open Available Pune Call Girls Kirkatwadi  6297143586 Call Hot Indian...Booking open Available Pune Call Girls Kirkatwadi  6297143586 Call Hot Indian...
Booking open Available Pune Call Girls Kirkatwadi 6297143586 Call Hot Indian...
 
Chapter 19_DDA_TOD Policy_First Draft 2012.pdf
Chapter 19_DDA_TOD Policy_First Draft 2012.pdfChapter 19_DDA_TOD Policy_First Draft 2012.pdf
Chapter 19_DDA_TOD Policy_First Draft 2012.pdf
 
Nisha Yadav Escorts Service Ernakulam ❣️ 7014168258 ❣️ High Cost Unlimited Ha...
Nisha Yadav Escorts Service Ernakulam ❣️ 7014168258 ❣️ High Cost Unlimited Ha...Nisha Yadav Escorts Service Ernakulam ❣️ 7014168258 ❣️ High Cost Unlimited Ha...
Nisha Yadav Escorts Service Ernakulam ❣️ 7014168258 ❣️ High Cost Unlimited Ha...
 
Escorts Service Basapura ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Basapura ☎ 7737669865☎ Book Your One night Stand (Bangalore)Escorts Service Basapura ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Basapura ☎ 7737669865☎ Book Your One night Stand (Bangalore)
 
Call Girls Basavanagudi Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
Call Girls Basavanagudi Just Call 👗 7737669865 👗 Top Class Call Girl Service ...Call Girls Basavanagudi Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
Call Girls Basavanagudi Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
 
Sector 105, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 105, Noida Call girls :8448380779 Model Escorts | 100% verifiedSector 105, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 105, Noida Call girls :8448380779 Model Escorts | 100% verified
 
call girls in Vasundhra (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝...
call girls in Vasundhra (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝...call girls in Vasundhra (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝...
call girls in Vasundhra (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝...
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
 
Q4-W4-SCIENCE-5 power point presentation
Q4-W4-SCIENCE-5 power point presentationQ4-W4-SCIENCE-5 power point presentation
Q4-W4-SCIENCE-5 power point presentation
 
💫✅jodhpur 24×7 BEST GENUINE PERSON LOW PRICE CALL GIRL SERVICE FULL SATISFACT...
💫✅jodhpur 24×7 BEST GENUINE PERSON LOW PRICE CALL GIRL SERVICE FULL SATISFACT...💫✅jodhpur 24×7 BEST GENUINE PERSON LOW PRICE CALL GIRL SERVICE FULL SATISFACT...
💫✅jodhpur 24×7 BEST GENUINE PERSON LOW PRICE CALL GIRL SERVICE FULL SATISFACT...
 
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...
 
Peaches App development presentation deck
Peaches App development presentation deckPeaches App development presentation deck
Peaches App development presentation deck
 
RT Nagar Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bang...
RT Nagar Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bang...RT Nagar Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bang...
RT Nagar Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bang...
 
Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
 
Top Rated Pune Call Girls Saswad ⟟ 6297143586 ⟟ Call Me For Genuine Sex Serv...
Top Rated  Pune Call Girls Saswad ⟟ 6297143586 ⟟ Call Me For Genuine Sex Serv...Top Rated  Pune Call Girls Saswad ⟟ 6297143586 ⟟ Call Me For Genuine Sex Serv...
Top Rated Pune Call Girls Saswad ⟟ 6297143586 ⟟ Call Me For Genuine Sex Serv...
 
Sweety Planet Packaging Design Process Book.pptx
Sweety Planet Packaging Design Process Book.pptxSweety Planet Packaging Design Process Book.pptx
Sweety Planet Packaging Design Process Book.pptx
 

Digital Fabrication Studio.02 _Information @ Aalto Media Factory

  • 1. Digital_Fabrication_Studio.02 Projects and Information - managing and retrieving information from databases and objects Massimo Menichinelli massimo.menichinelli@aalto.f 03.05.2012 @openp2pdesign Aalto Media Factory http://www.slideshare.net/openp2pdesign Helsinki
  • 2. Today: * Content Management Systems * Version Control Systems * QR Codes * Blueprints
  • 3. 01. Content Management Systems: web interfaces to databases
  • 4. Versioning: you've already seen it on Google Docs... Even Google Docs has a very simple versioning system available. It is an important mechanism for keeping track of the history of a project. Source: http://docs.google.com/
  • 5. Blog: Wordpress.org The easiest way to manage content (and a bit of versioning). Source: http://wordpress.org/
  • 6. Blog: Wordpress.org (+ plugin) Revision Control allows fner control over the Post Revision system included with WordPress. Source: http://wordpress.org/extend/plugins/revision-control/
  • 7. Blog: Wordpress.org (+ plugin) A document management and version control plugin that allows teams of any size to collaboratively edit fles and manage their workflow. Source: http://wordpress.org/extend/plugins/wp-document-revisions/
  • 8. CMS: Drupal.org Drupal contains basic features common to a cms: user account registration and maintenance, menu management, RSS-feeds, page layout customization... Source: http://wordpress.org/extend/plugins/wp-document-revisions/
  • 9. CMS: Drupal.org (+modules) You can extend the versioning system of Drupal with these modules: * http://drupal.org/project/revisioning * http://drupal.org/project/revision_fu * http://drupal.org/project/revisionreference * http://drupal.org/project/block_revisions * http://drupal.org/project/diff_revision * http://drupal.org/project/revision_all * http://drupal.org/project/user_revision * http://drupal.org/project/user_diff
  • 10. CMS: Drupal.org -> fablab.aalto.f We will soon have our website here ... Source: http://fablab.aalto.f
  • 11. Wiki: Mediawiki.org MediaWiki is a free software open source wiki package written in PHP, originally for use on Wikipedia. Source: http://www.mediawiki.org/wiki/MediaWiki
  • 12. Backup: DropBox DropBox has a limited versioning system, that goes back to 30 days only. Source: https://www.dropbox.com/help/11
  • 13. Backup: ownCloud An open source version of DropBox, in case you have a server available. Source: http://owncloud.org/
  • 14. Backup: ownCloud (with versioning) “Personal clone of ownCloud, containing an in-development versioning app (I would seriously advise against cloning and pulling from this repository at the moment)” Source: https://github.com/craig0990/ownCloud
  • 15. Backup: Sparkleshare An open source version of DropBox, in case you have a server available (based on Git!). Source: http://sparkleshare.org/
  • 16. Need a local server? XAMPP If you want to use Wordpress, Drupal, MediaWiki locally on your computer. Source: http://www.apachefriends.org/en/xampp.html
  • 17. Your local server, http://localhost/ Look for the htdocs folder in your XAMPP application, all the fles accessible through http://localhost should be there. Source: http://localhost/
  • 18. Your local database, http://localhost/phpmyadmin You can easily create a database with PhpMyAdmin (but you will probably have to change the password for installing MediaWiki). Source: http://localhost/phpmyadmin/
  • 19. 02. Version Control Systems: managing the history of a project
  • 21. Version Control Systems A version (or revision) control system is a system that tracks incremental versions (or revisions) of fles and directories over time. It allows you to explore the changes which resulted in each of those versions and facilitates the arbitrary recall of the same. * Backup and Restore * Synchronization * Short-term undo + Long-term undo * Track Changes * Track Ownership * Branching and merging * not in real time! Source: http://svnbook.red-bean.com/en/1.6/svn.basic.version-control-basics.html
  • 22. Server/client-based Version Control System Server Client Client Client Client The frst architecture to appear, you need to be connected and you need a server (unless you want to work alone on your computer). Source: http://www.kalekold.net/index.php?post=13 http://betterexplained.com/articles/a-visual-guide-to-version-control/
  • 23. Version Control System: Subversion (SVN) Subversion manages fles and directories, and the changes made to them, over time. Think of it as a sort of “time machine” of changes. Source: http://subversion.apache.org/
  • 24. An introduction to SVN An open source book about using SVN. Source: http://svnbook.red-bean.com/
  • 25. Version Control System: the vocabulary (01) * Change: A change (or diff) represents a specifc modifcation to a document under version control. * Checkout : A check-out (or co) is the act of creating a local working copy from the repository. A user may specify a specifc revision or obtain the latest. Also refers to the same fles. * Commit  : A commit (checkin, ci) is the action of writing or merging the changes made in the working copy back to the repository. Also refers to the same fles. * Head : The most recent commit. Source: http://en.wikipedia.org/wiki/Revision_control
  • 26. Version Control System: the vocabulary (02) * Conflict A conflict occurs when different parties make changes to the same document. A user must resolve the conflict by combining the changes, or by selecting one change. * Merge  A merge or integration is an operation in which two sets of changes are applied to a fle or set of fles. * Update An update (or sync) merges changes made in the repository (by other people, for example) into the local working copy. * Working copy The working copy is the local copy of fles from a repository, at a specifc time or revision. Conceptually, it is a sandbox. Source: http://en.wikipedia.org/wiki/Revision_control
  • 27. Versioning: the problem How will the system allow users to share information, but prevent them from accidentally overwriting? Source: http://svnbook.red-bean.com/en/1.6/svn.basic.version-control-basics.html
  • 28. Versioning: the lock-modify-unlock solution In this model, the repository allows only one person to change a fle at a time, by locking it. Source: http://svnbook.red-bean.com/en/1.6/svn.basic.version-control-basics.html
  • 29. Versioning: the copy-modify-merge solution (01) In this model, each user's client contacts the project repository and creates a personal working copy. The private copies are merged together into a new version. Source: http://svnbook.red-bean.com/en/1.6/svn.basic.version-control-basics.html
  • 30. Versioning: the copy-modify-merge solution (02) In this model, each user's client contacts the project repository and creates a personal working copy. The private copies are merged together into a new version. Source: http://svnbook.red-bean.com/en/1.6/svn.basic.version-control-basics.html
  • 31. Diff: how to understand the changes The best way of understanding what has changed is to compare different revisions with a diff software. Source: http://en.wikipedia.org/wiki/Diff http://en.wikipedia.org/wiki/Kompare
  • 32. A typical SVN project Development happens in trunk, testing alternatives in branches and storing good versions (1.0, 1.1,...) in tags. Source: http://en.wikipedia.org/wiki/Apache_Subversion
  • 33. Example: a spool for the RepRap Mendel The second version of the RepRap, the frst to be easier to build and calibrate. Source: http://reprap.org/wiki/Mendel
  • 34. A spool for the RepRap Mendel: an improvement A spool added for handling the plastic wire and published on Thingiverse. Source: http://www.thingiverse.com/thing:3866
  • 35. A spool for the RepRap Mendel: an improvement (01) “Well i wanted to have a very simple, but bearing based spool system.” Camiel Source: http://www.thingiverse.com/thing:3866
  • 36. A spool for the RepRap Mendel: an improvement (02) “I have changed the design to put the bearings in the spool itself. This way you can be more flexible in what you use to support the axle. ” Brokentoaster Source: http://www.thingiverse.com/thing:3962
  • 37. A spool for the RepRap Mendel: an improvement (03) “I liked BrokenToaster's idea of a bearing-driven flament spool holder, but that version was too big to ft on a Makerbot print bed. [...]” Randyy Source: http://www.thingiverse.com/thing:4337
  • 38. A spool for the RepRap Mendel: an improvement (04) “This takes advantage of the larger print area on RepRaps by printing the arm as one piece, […] also saving material.” Fil Source: http://www.thingiverse.com/thing:11250
  • 39. SVN Client + File comparison: TortoiseSVN (Win) The most popular SVN client on Windows, it can also compare images. Source: http://tortoisesvn.net/
  • 40. SVN Client: RapidSVN (Windows, Mac, Linux) Open Source and multi-platform, but without fle comparison. Source: http://www.rapidsvn.org/
  • 41. SVN Client: Versions (Mac) Free trial for one month... Source: http://www.versionsapp.com/
  • 43. Distributed Version Control System A more recent architecture, more evoluted and popular. It usually tracks the state of the fles, not just the changes. Source: http://www.kalekold.net/index.php?post=13 http://betterexplained.com/articles/intro-to-distributed-version-control-illustrated/
  • 44. Version Control System: the vocabulary (03) Distributed Version Control Systems add new terms to the vocabulary: * Clone: create a working copy on your computer from another repository. * Push : send a change to another repository (may require permission), even to your server. * Pull  : download the latest changes from an online repository.
  • 45. Distributed Version Control System: Git Developed by Linus Torvalds, for improving the distributed development of the Linux Kernel. Source: http://git-scm.com/
  • 46. An introduction to Git An open source book about using Git. Source: http://progit.org/book/
  • 47. Git project hosting: GitHub.com The most popular (and refned) Git hosting available now, free plans for open source projects (you have to pay for private spaces). Source: https://github.com/
  • 48. GitHub for Mac: a Git client (Mac) GitHub as its own freeware client (for Mac). Source: http://mac.github.com/
  • 49. Git Client: GitX (Mac) Actually, more than one GitX can be found... Source: http://gitx.laullon.com/
  • 50. Git project hosting: Gitorius.org Free plans, and open source software itself. Source: http://www.gitorious.org/
  • 51. Distributed Version Control System: Mercurial (hg) Open Source and distributed as Git, usually the most used in FabLabs. Source: http://mercurial.selenic.com/
  • 52. An introduction to Mercurial A complete and easy introduction to using Mercurial. Source: http://hginit.com/
  • 53. Git / Hg project hosting: Bitbucket.org For both Git and Hg, free plan also for private projects. Source: https://bitbucket.org/
  • 54. Mercurial (hg) client: MacHg Much better than the terminal for starting, and it has Mercurial packaged (no need to install it separately). Source: http://jasonfharris.com/machg/
  • 55. File comparison: Kaleidoscope (Mac) Free trial for one month... Source: http://www.kaleidoscopeapp.com/
  • 56. File comparison: Perforce P4Merge (Win, Mac, Linux) Perforce is another version control system, but it is interesting for its visual diff applications (freeware). Source: http://www.perforce.com/product/components/perforce_visual_merge_and_diff_tools
  • 57. File comparison: ComparePSD (Windows) Freeware for Windows, can compare Photoshop .psd fles. Source: http://pixelnovel.com/comparepsd/
  • 58. Subversion hosting service: Pixelnovel Integrated with Photoshop: free plan (100 MB) and better paid plans. Source: http://pixelnovel.com/svn-account/
  • 59. SVN / Git / Hg hosting service: Beanstalk Paid plans (with free trial). Source: http://beanstalkapp.com/
  • 60. SVN / Git hosting service: Codesion Paid plans (with free trial). Source: http://codesion.com/
  • 61. SVN / Git / Hg hosting service: Google Code Free for open source projects. Source: http://code.google.com/projecthosting/
  • 62. 03. QR Code: bits about a project from its atoms
  • 63. Retrieving the source code of an object What about retrieving the information about a project, in order to be able to modify it? If we work with Arduino, there is this software from IDEO. Source: http://labs.ideo.com/2012/03/15/arduino-tool-that-connects-each-board-to-its-own-source/
  • 64. Dead Drops: local (really!) information ‘Dead Drops’ is an anonymous, offline, peer to peer fle-sharing network in public space. USB flash drives are embedded into walls accessible to anybody. Source: http://deadrops.com/
  • 65. Dead Drops: how to fnd them ‘Dead Drops’ is an anonymous, offline, peer to peer fle-sharing network in public space. USB flash drives are embedded into walls accessible to anybody. Source: http://deaddrops.com/dead-drops/db-map/
  • 66. Spime: sp(ace) + (ti)me of an object Spime is a neologism for a currently theoretical object that can be tracked through space and time throughout the lifetime of the object. Source: http://mitpress.mit.edu/catalog/item/default.asp?tid=10603&ttype=2 http://en.wikipedia.org/wiki/Spime
  • 67. Evrythng.com EVRYTHNG is a software engine for creating Active Digital Identities, unique online profles for objects to make them part of the Web and digitally connected. Source: http://evrythng.com/
  • 68. Tales of things (.com) Tales of Things allows just that with a quick and easy way to link any media to any object via small printable tags known as QR codes. Source: http://www.talesofthings.com/
  • 69. Q(uick)R(esponse) Code QR Code is the trademark for a type of matrix / 2D barcode that can encode four standardized kinds of data (numeric, alphanumeric, byte/binary, Kanji). Source: http://en.wikipedia.org/wiki/Qr_code
  • 70. QR Code: data storage The amount of data that can be stored in the QR Code symbol depends on the datatype (mode, or input character set), version (1,...,40, indicating the overall dimensions of the symbol), and error correction level (L[ow], M[edium], Q[uality], H[igh]). The maximum storage capacities are: * Numeric only: max. 7,089 characters (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) * Alphanumeric: max. 4,296 characters (0–9, A–Z [upper-case only], space, $, %, * +, -, ., /, :) , * Binary/byte: max. 2,953 characters (8-bit bytes) (23624 bits) * Kanji/Kana: max. 1,817 characters Source: http://en.wikipedia.org/wiki/Qr_code
  • 71. QR Code: data storage The more information is encoded, the fner the details of the code. Source: http://en.wikipedia.org/wiki/Qr_code
  • 72. QR Code: error tolerance and customization You can “hack” a QR Code thanks to its tolerance to errors. Source: http://whomwah.com/2008/03/12/more-fun-with-qr-codes-and-the-bbc-logo/ http://contentdeveloper.com/2010/01/how-to-customize-qr-codes-with-your-brands-identity/
  • 73. QR Codes: not just printed paper You can create QR codes with existing materials, objects and building blocks... Source: http://www.arcfn.com/2009/01/qr-codes-in-lego.html
  • 74. QR Codes: not just printed paper You can create QR codes with existing materials, objects and building blocks... Source: http://www.visualnews.com/2011/12/15/a-qr-code-built-from-everyday-objects/
  • 75. QR Codes: not just printed paper You can create QR codes with existing materials, objects and building blocks... Source: http://www.elenabelmann.blogspot.com/2011/02/objekt-als-informationstrager.html
  • 76. QR Codes: an easy way to create them Many online free services will create QR Codes for you starting from many different kinds of information. Source: http://qrcode.littleidiot.be/
  • 77. QR Codes: an easy way to create (and decode) them Many online free services will create QR Codes for you starting from many different kinds of information. Source: http://www.patrick-wied.at/static/qrgen/
  • 78. QR Codes: an easy way to create them Many online free services will create QR Codes for you starting from many different kinds of information. Source: http://www.qrstuff.com/
  • 79. QR Codes: an easy way to create them Many online free services will create QR Codes for you starting from many different kinds of information. Source: http://www.qrhacker.com/
  • 80. QR Codes: an easy way to create a stencil … and there are even libraries for creating stencil of QR Codes that you can laser cut! Source: http://blog.makezine.com/2011/07/20/qr-stenciler/
  • 81. QR Codes: you can track the position as well As you can link an identity to an object with a QR Code, then we can track where this identity moves. Source: http://www.springwise.com/government/croatia-postage-stamps-trackable-qr-code/
  • 82. QR Codes: you can add related information You can provide related information and build apps and services around an object! Source: http://www.springwise.com/lifestyle_leisure/cigarette-packages-qr-codes-reveal-nearby-place-smoke/
  • 83. QR Codes: you can add related information You can provide the instruction manual of an object! Source: http://www.steelcase.com/en/products/category/seating/task/leap/pages/qr-codes.aspx http://www.fastcodesign.com/1665090/an-offce-chair-with-built-in-video-instruction-manual
  • 84. QR Codes: you can add the source code! … and fnally you can even provide directly the source code of an object, not just a link to its source online! Source: http://supermechanical.com/rev/ http://www.springwise.com/style_design/future-repairs-tables-digital-blueprints-etched-surface/
  • 85. QR Codes: you can add the source code! … and fnally you can even provide directly the source code of an object, not just a link to its source online! Source: http://supermechanical.com/rev/ http://www.springwise.com/style_design/future-repairs-tables-digital-blueprints-etched-surface/
  • 86. QR Codes: which bits? We are embedding information on an object, and we use a device for retrieving it... but which kind of information? Source: http://www.pcworld.com/article/248843/beware_of_malicious_qr_codes.html
  • 87. Virus: a dangerous information Some kind of information (like viruses) can modify, deform and damage an object... Source: http://www.platform21.nl/page/3915/en http://www.nextnature.net/2009/04/ikea-lamp-catches-elephantiasis-virus/
  • 88. QR Code: you can even print it (in 3D) If you have a 3D printer that can print at least two different materials.... Source: http://www.thingiverse.com/thing:12104
  • 89. QR Code: for real walls Not only Dead Drops can be used for embedding information on a wall! Source: http://www.springwise.com/lifestyle_leisure/qr-code-stickers-turn-real-world-objects-digital-conversations/ https://qrawr.com/
  • 90. After QR Code, Augmented Reality? AR can be useful for adding a layer of bits on a space or object, and we can possibly think about its source code... Source: http://amzn.to/KUwNk6
  • 91. 04. Blueprints – suggestions for the documentation of the projects
  • 92. Ok, the blueprints... We need all the possible documentation for being able to replicate the project in other FabLabs. Source: http://commons.wikimedia.org/wiki/Category:Blueprints
  • 93. Patents (?) A very formal way of representing a project, but it could be useful. Source: http://bit.ly/K3YgxN
  • 94. Instructions (process): Instructables.com You can explain in a simple way the whole process... Source: http://www.instructables.com/id/Create-a-3D-printed-3D-fractal/?ALLSTEPS
  • 95. Instructions (process): IKEA You can provide simple instructions... Source: http://www.ikea.com/ms/en_US/customer_service/assembly/A/A80095184.pdf http://www.ikea.com/ms/en_US/customer_service/assembly_instructions.html
  • 96. Instructions (process) for dummies: IKEA … simple intructions that can be understood by any culture! Source: http://www.ikea.com/ms/en_US/customer_service/assembly/A/A80095184.pdf http://www.ikea.com/ms/en_US/customer_service/assembly_instructions.html
  • 97. Even videos... Nowadays it is almost impossible to fnd a tutorial that it is not made with a video! Even researchers present their papers with a video. Source: http://youtu.be/dfNByi-rrO4
  • 98. Thank you!! Massimo Menichinelli Aalto Media Factory massimo.menichinelli@aalto.f 03.05.2012 @openp2pdesign Aalto Media Factory http://www.slideshare.net/openp2pdesign Helsinki