DIY Personal Fabrication Dokumentation Juergen Eckert – Informatik 7.

Slides:



Advertisements
Ähnliche Präsentationen
Versionsmanagement Zentral oder Verteilt?
Advertisements

Powerpoint Test File Eine kleine Präsentation zum Testen.
M a r c – o l i v e r p a h l Informatik I – Kapitel 7 Klassen und höhere Datentypen Zusammenfassung des Kapitel 7 Küchlin, Weber, Einführung in die Informatik,
The difference between kein and nicht.
Binäre Bäume Richard Göbel.
Dokumentation des Umul Projektes documentation of the Umul Project der 8R3: by the 8R3: Energiesparen im Klassenraum saving of energy in the classroom.
Eine kurze Einführung Nermin Junuzovic
Projektgruppe KIMAS Einführung in LaTeX
1/15 UNIVERSITY OF PADERBORN Projektgruppe KIMAS – CVS Projektgruppe KIMAS CVS Daniel Karuseit.
07·07·2010 Einführung in LaTeX G. Seibold
Brandenburgische Technische Universität Cottbus Program Profiling Andrzej Filipiak Übung Testen von Software SoSe 2006.
Desktop All Users \ Dokumente \ Eigene Bilder \ Beispielbilder Lokale Einstellungen \ Anwendung- sdaten \ Identities \ {B2E3E498-D8E7- 4EC FA }
Fachgebiet Software Engineering Übersicht © Albert Zündorf, Kassel University Baustein- vs. funktionsorientierte Organisation.
Three minutes presentation I ArbeitsschritteW Seminar I-Prax: Inhaltserschließung visueller Medien, Spree WS 2010/2011 Giving directions.
Memoir von Andreas Heinze Eine Klasse für sich Die Memoir- Klasse -- Andreas Heinze 2 Gliederung 1. Geschichtlicher Abriss 2. Eigenschaften.
LaTeX Holger Stengel RRZE Holger Stengel,
Universität Karlsruhe Philipp Bender
virtPresenter „lecture recording framework“
USE2ANT Die Umstellung von Use Makefiles zu Ant & Junit Von Isaac, Maleen und Marc.
GIT und Redmine Übung.
Adjektive Endungen von Frau Templeton.
“Wintergedicht” von Fallersleben ( )
Don`t make me think! A Common Sense Approach to Web Usability
Kapitel 4: Die Schule Deutsch 1
Was kann HTML? EINLEITUNG EINLEITUNG Bsp Main Title First Subtitle.
Medien zwischen Technologie und Gesellschaft Dozent: Herr Prof. Dr. Manfred Thaller SS 13 Referent: Christian Braun.
Calendar Week 40 Gunnar Beutner. Bug Tracker Hi zusammen, bei der Vorbereitung auf das Meeting ist mir folgende aufgefallen bzw. unklar: - # Ich.
Versionsverwaltung für Visual Studio .NET mit Subversion
Adjective Endings Frau Lizz Caplan-Carbin Deutsch für Anfänger.
Handy Verbs Future Tense With the Angry Family will.
Reflexive Verbs.
3rd Review, Vienna, 16th of April 1999 SIT-MOON ESPRIT Project Nr Siemens AG Österreich Robotiker Technische Universität Wien Politecnico di Milano.
The free XML Editor for Windows COOKTOP Semistrukturierte Daten 1 Vortrag Semistrukturierte Daten 1 COOKTOP The free XML-Editor for Windows
Tim Gehrke Projektlabor WS 12/13
Deutsch 1 G Stunde. Donnerstag, der 18. Oktober 2012 Deutsch 1, G Stunde Heute ist ein D- Tag Unit: Family & homeFamilie & Zuhause Objectives: Phrases.
Your name Bedeutung von Internet- Technologien Gruppe 1 Andreas Feuerstein Philipp Hochratner Christian Weinzinger.
Cooperation unlimited © Zühlke August 2008 Hansjörg Scherer Folie 1 Cooperation unlimited TFS als BackEnd für Visual Studio und Eclipse.
PresenterCompanyContact Windows Azure ASP.NET Web-Anwendungen schnell und zuverlässig bereitstellen.
You need to use your mouse to see this presentation
You need to use your mouse to see this presentation © Heidi Behrens.
You need to use your mouse to see this presentation © Heidi Behrens.
You need to use your mouse to see this presentation © Heidi Behrens.
You need to use your mouse to see this presentation © Heidi Behrens.
You need to use your mouse to see this presentation © Heidi Behrens.
You need to use your mouse to see this presentation © Heidi Behrens.
Department of Computer Science Homepage HTML Preprocessor Perl Database Revision Control System © 1998, Leonhard Jaschke, Institut für Wissenschaftliches.
Template v5 October 12, Copyright © Infor. All Rights Reserved.
Ein Projekt des Technischen Jugendfreizeit- und Bildungsvereins (tjfbv) e.V. kommunizieren.de Blended Learning for people with disabilities.
Torque in Turbine Team 3 Alexander Mittermair Michael Wesinger.
8.1 Lektion 8 Recht und Umwelt STRUKTUREN © and ® 2012 Vista Higher Learning, Inc Der Konjunktiv II and würde with infinitive Ja, aber ich würde.
4.1 Lektion 4 Wegfahren und Spaß haben STRUKTUREN © and ® 2012 Vista Higher Learning, Inc Das Futur Er wird den Zug verpassen.Wenn ich nicht in.
Deutsch Herr Wallace Deutsch, eine schwierige Sprache manchmal, ein lebenlanges Rätsel. German, a difficult language sometimes, a lifelong riddle. Was.
1 Intern | ST-IN/PRM-EU | | © Robert Bosch GmbH Alle Rechte vorbehalten, auch bzgl. jeder Verfügung, Verwertung, Reproduktion, Bearbeitung,
Institut für Informationssysteme Technische Universität Braunschweig Title John Doe Subtitle.
Dyabola Archäologische Bibliographie Römisch-Germanischen Kommission (RGK) Author searches – compound names Bibliotheken Click = next Libraries.
Launch ON Global.vi System ID object name classname Services to suscribe Observer Control Ref vi-path Service name Step 1 : Objects register to the Global.vi´s,
Adjective Endings Nominative & Accusative Cases describing auf deutsch The information contained in this document may not be duplicated or distributed.
ITIXI Version 2.0 Architektur VersionDatumAuthorStatusKommentar Martin JonasseIn ArbeitInitial-Dokument Martin JonasseIn ArbeitFahrgast.
Marco Behnke Git free & open source, distributed version control system Git.
Data Mining Spectral Clustering Junli Zhu SS 2005.
Adjective Declension in German
You need to use your mouse to see this presentation © Heidi Behrens.
Linux oder GNU/Linux WS 2013/2014.
1 LaTeX LaTeX is a document preparation system for high-quality typesetting. It is most often used for medium-to-large technical or scientific documents,
Thomas Rau, Peter Brichzin Repositories zur Unterstützung von kollaborativen Arbeiten in Softwareprojekten.
Einführung in Verteilte Versionskontrollsysteme am Beispiel von Git Diplominformatiker (BA), Git-Benutzer seit 2009 Daniel Böhmer Leibniz-Institut für.
Orxonox SVN Subversion in Orxonox: ORXONOX DevelopmentFinished Versions trunk Maintainer Version Almost always running branches Developer Version Copies.
?.
Mineral Cube Project.
Azure Mobile Services Deep dive into node.js scripting
 Präsentation transkript:

DIY Personal Fabrication Dokumentation Juergen Eckert – Informatik 7

How to Get Started? (again) 1.Projekt überlegen – kann man es bereits kaufen? → kein Projekt 2.Related work – Verwandte Arbeiten als Grundlage nutzen 3.Durch Probleme/Herausforderungen lernen 4.Das Ziel nie aus den Augen verlieren 5.Dokumentieren!!!

Dokumentation

Online Dokumentation Instructables (Anleitungen) Thingiverse (3D Objekte) Github (Source Code) Privater Webspace – Blog – *wiki Etc...

Lizenzen, Patente und Rechte Zugänglichkeit zu Schnittstellen, Software und Hardware Creative Commons GNU (L)GPL MIT-Lizenz

Klassische Dokumentation Textverarbeitungsprogramm: WYSIWYG (Word, LibreOffice, etc) Textsatzsystem (LaTeX) Ziel: Setzen von Texten und mathematischen Formeln

Geschichte TeX von Donald E. Knuth (Standford, 1978) – altgriechisch τέχνη (téchne): Fähigkeit, Kunstfertigkeit, Handwerk – 300 fest Befehle (primitives) – Definition eigener Makros (komplex) LaTeX von Leslie Lamport (1986) – TeX-Macros – Lamport TeX – LaTeX 2 ε seit 1989

Publikations-Workflow 1.Autor verfasst Manuskript 2.Buch-Designer ent- scheidet über Layout 3.Setzer erhält Anweisungen 1.Autor verfasst Manuskript 2.LaTeX: Fachwissen -> log. Struktur (Befehle) 3.TeX TraditionellAutomatisiert

Vor- und Nachteile Wenige, leicht verständliche Befehle Mathematische Formeln besonders einfach Strukturen (z.B. Literaturverzeichnisse) wenig Aufwand Aktualisieren von Querverweisen automatisch Lange, komplizierte Dokumente zuverlässig  Workflow stark unterschiedlich zu WYSIWYG

Quelle Tutoriell teilweise nach – Marco Daniel et al.: LATEX 2ε-Kurzbeschreibung (V ) – Tobias Oetiker et al.: The Not So Short Introduction to LATEX2ε (V )

Los geht‘s 1.doku.tex erstellen 2.> pdflatex doku.tex oder > latexmk –pvc –pdf doku.tex (Autogenerierung) Automatische Preview im Texteditor möglich z.B. Texmaker

doku.tex 1/3 Textdatei Unsichtbare Zeichen (Space ( ␠ ), \t, \n) werden einheitlich als Space behandelt Mehrere ␠ -> ein ␠ Leerzeile zwischen Textzeilen -> Ende Absatz Mehrere Leerzeilen -> eine Leerzeile

doku.tex 2/3 Kommentare von „%“ bis „\n“ Befehle starten mit „\“ (oder Sonderzeichen) Space nach befehlen „{} ␠ “ oder „\ ␠ “ Case sensitiv Parameter – „{parameter1, parameter2}“ – „[optional1, optional2]“ Index: z.B.

doku.tex 3/3 \documentclass[11pt,a4paper,ngerman]{article} \usepackage[utf8]{inputenc} %UTF8 input file \usepackage[T1]{fontenc} \usepackage[ngerman]{babel} %Umlaute,Silbentrennung \date{\today} \author{J.~Eckert} \title{DIY: Sample TeX File} \begin{document} \maketitle \tableofcontents \section{Start} Hier beginnt mein schönes Werk... \section{Ende}... und hier endet es. \end{document} Preamble Body

Dokumentklassen \documentclass[ ]{ } Vereinbarungen über das Layout exakt ein Parameter Vordefinierte aus der Distribution oder.cls File im Dokumenten Root → DIY Project Doku mit IEEEtran

Eingabezeichen Erlaubt: a...z A...Z : ;, ? ! ‘ ’( ) [ ] - / + = Spezialbedeutung: (teilw. in Mathe Umgebung erlaubt) $ & % # _ { } ~ ^ \ “ | Escapebar: \$ \& \% \# \_ \{ \} \~{} \^{} \textbackslash …

Schriften 1/2 Manuelle Silbentrennung: \hyphenation{} Fett \textbf{...} Kursiv \textit{...} \par = neuer Absatz ≙ Leerzeile

Schriften 2/2

Listen Umgebung \begin{itemize} \item... \begin{itemize} \item... \end{itemize} \item... \end{itemize} Numeriering: enumerate Eigene Beschreibung: description \item[marker]

Tabellen Umgebung % \usepackage{booktabs} \begin{tabular}[t]{rl} \toprule Wert & Zahlensystem \\ \midrule 7C0 & hexadezimal \\ 3700 & oktal \\ & binär \\ 1984 & dezimal \\ \bottomrule \end{tabular}

Mathematische Formlen equation Umgebung oder $... $ \[... \]

Bilder / Label / Verweise %\usepackage{cleveref} %\usepackage{graphicx} \begin{figure} \centering \includegraphics[width=.3\textwidth]{logo} \caption{FabLab Logo} \label{fig:fl} \end{figure} \Cref{fig:fl} zeigt...

Literaturangaben Besser: Nutzung einer Datenbank (.bib File) Verabeitung mittels BibTEX oder biber

Presentation mit LaTeX \documentclass{beamer} \begin{document} \begin{frame} This is my first slide. \end{frame} \begin{frame} This is my second (and last) slide. \end{frame} \end{document}

PGF/TikZ %\usepackage{tikz} \begin{tikzpicture} \node[draw,circle](a) {A}; \node[draw,circle,right of=a, node distance=2cm](b) {B}; \draw[->] (a) to[out=45,in=135] node[above]{nach} (b); \end{tikzpicture}...AND MUCH MORE...

GIT Tutoriell nach: Christoph Sommer, Uni Paderborn Model Management with Git

Motivation So nicht… – cp src/models/network/ipv4.c src/models/network/ipv4.bak – cp src/models/transport/tcp.c src/models/network/tcpip.westwood Besser, aber immer noch schlecht… – cp -ax src src.bak – cp –ax src src.bak.old Fast richtig… – cp -ax project project – cp -ax project project – cp -ax project project – diff -Naur../project {16,15} | patch Ideal – Dateisystem das (zuverlässig) die Historie speichert – Optimiert zum sichern/wiederherstellen von versionierten Text Dateien – Git, svn, hg (Mercurial),...

Einleitung Historie – Entwickler: Linus Torvalds – Maintainer: Junio Hamano (Stand 10/2014) – Free and Open Source Software – Projekte: Linux Kernel, Git, Android, Eclipse, Debian, Perl, Ruby on Rails, PostgreSQL, Gnome, KDE, Qt, X.org,... What is git? – 3-Buchstaben Wort das noch nicht unter Linux verwendet wird – Git = „Blödmann“ (britische Umgangssprache) – Dateisystem das (zuverlässig) die Historie speichert + loses, geschichtete Sammlung an kleinen Skripten = Verteiltes Versionskontrollsystem

Workflow Local Stage / IndexWorking Copy fetch push addcommit Repository checkout / reset

README index “fix docs” index “fix docs” Reise in das git Repository (…und zurück) blob Hello Earth blob Hello Earth blob Hello World blob Hello World blob.PNG..IHDR.. blob.PNG..IHDR.. blob #!/bin/sh blob #!/bin/sh blob.PHONY: all blob.PHONY: all tree commit “fix docs” commit “fix docs” commit “remove doc” commit “remove doc” commit “combine” commit “combine” commit “add docs” commit “add docs” commit “tweak logo” commit “tweak logo” tree refs/remotes/origin/master refs/heads/greatdocs refs/heads/master refs/tags/v1.0 tag “first rls” tag “first rls” HEAD src doc configure.sh Makefile README logo.png doc doc/README tweak logo

Reise in das git Repository (…und zurück) commit “fix docs” commit “fix docs” commit “combine” commit “combine” commit “add docs” commit “add docs” commit “tweak logo” commit “tweak logo” refs/remotes/origin/master refs/heads/greatdocs refs/tags/v1.0 tag “first rls” tag “first rls” HEAD doc logo.png a a d d c c e e b b greatdocs origin/master master v1.0 fix docs remove doc combine tweak logo add docs

Try it

Common git commands % git add README a a d d c c e e b b origin/master v1.0 d’ e’ master Working Copy PDF? See backup slides

f f Common git commands % git commit a a d d c c e e b b origin/master v1.0 d’ e’ master Working Copy PDF? See backup slides

Common git commands % git commit --amend a a d d c c e e b b origin/master v1.0 d’ e’ master e’ Working Copy PDF? See backup slides

f f Common git commands % git reset --hard e a a d d c c e e b b origin/master v1.0 d’ e’ master Working Copy PDF? See backup slides

f f Common git commands % git branch greatdocs e a a d d c c e e b b origin/master v1.0 d’ e’ master Working Copy greatdocs PDF? See backup slides

f f Common git commands % git checkout greatdocs a a d d c c e e b b origin/master v1.0 d’ e’ master Working Copy greatdocs master greatdocs PDF? See backup slides

Common git commands % git remote add origin /some/path/proj.git a a d d c c b b v1.0 master a a d d c c e e b b v1.0 master e e local“origin” Working Copy PDF? See backup slides

e e e e Common git commands % git fetch origin master a a d d c c b b v1.0 master a a d d c c b b origin/master v1.0 master local“origin” Working Copy PDF? See backup slides

e e e e Common git commands % git push origin master:master a a d d c c b b v1.0 master a a d d c c b b origin/master v1.0 master “origin”local Working Copy PDF? See backup slides

Common git commands % git merge origin/master a a d d c c e e b b origin/master v1.0 d’ e’ m m master Working Copy PDF? See backup slides

% git rebase origin/master d’’ e’’ d d e e Common git commands a a c c b b origin/master v1.0 d’ e’ master Working Copy NEVER REBASE A PUBLIC BRANCH PDF? See backup slides

Bestimmen einer Revision Vollständiger SHA1 Hashwert dae86e1950b1277e545cee cfe735 Eindeutiger Präfix eines SHA1 Hashwerts dae86e Symbolischer Referenzname master (Suche in.git/master, refs/master, refs/(tags|heads|remotes)/master, refs/remotes/master/HEAD) git log --grep KEYWORD Viele mehr... RTFM

Interfaces

git gui

Bewährtes Vorgehen Zu aller erst: git konfigurieren – git config --global user.name ”Mein Name” – git config --global user. – advice.detachedHead, rerere.enabled, … Richtlinien wie und was zu committen ist: – Möglichst oft Fehler schnell zu revidieren Nicht warten bis der Code „fertig“ ist! – Jeder Commit änder exakt eine Sache (keine “this changes everything”) – Der Code im Repository kompiliert – Jeder Branch/Tag hat einen Zweck und einen Besitzer Feature/Release/Version – Jede Datei im Repository wird benötigt um das Projekt zu bauen keine Objekt- oder Temp.-Dateien, etc... – Jeder Commit hat eine klare, präzise Betreffzeile

Houston, we have a problem... Ungewollte Commits rückgängig machen: – HEAD auf früheren Commit setzen git reset --soft master^ – Alles aus dem Index entfernen; HEAD auf früheren Commit setzen git reset master^ – Alles aus dem Index entfernen; HEAD auf früheren Commit setzen; Working-tree identisch zu neuen HEAD machen git clean -fdx git reset --hard master^ – Zu weit! Zurück in die Zukunft... git clean -fdx git reset --hard – Verdammt, der ganze Branch ist weg! Wühle durch den Müll... git reflog | awk ’{print $1}’ | xargs gitk

Übung 1.Git Repository anlegen 2.LaTeX Präsentation für Projektvorlschlag darin erstellen Präsentation: max 5 min max 5 Folien

Nächstes mal... Mechanik – Schneideverfahren (Lasercutter) – 2.5 D Workflow, STL, GCODE, STEP, etc später...

Backup Slides

Git branch (bugfix) % git init % git add FILE % git commit a a master Working Copy

Git branch (bugfix) % git commit % git tag –a v1.0 % git branch bugFix a a b b v1.0 master Working Copy bugFix

Git branch (bugfix) % git checkout bugFix % git commit a a d d b b v1.0 master Working Copy bugFix

Git branch (bugfix) % git checkout master % git commit a a d d b b v1.0 d’ bugFix Working Copy master

Git branch (bugfix) % git checkout master % git merge bugFix % git commit a a d d e e b b v1.0 d’ master Working Copy bugFix