# HG changeset patch # User meillo@marmaro.de # Date 1196948649 -3600 # Node ID 3f0be9972d3517247f51aed1f08f1abf7f5163db # Parent 867ffbcccf28f07bfef6ef6c3a2820e52d0c0e5c rewrote filesizes; added more content diff -r 867ffbcccf28 -r 3f0be9972d35 GimmeShellter.tex --- a/GimmeShellter.tex Wed Nov 28 19:54:27 2007 +0100 +++ b/GimmeShellter.tex Thu Dec 06 14:44:09 2007 +0100 @@ -15,14 +15,10 @@ \author{markus schnalke} \date{} - - %\markboth{2007-12-11}{} - \begin{document} \frame{ - %\titlepage \vspace{8em} \begin{center} {\huge Gimme Shell}{\tiny (ter)} @@ -40,12 +36,6 @@ } -%\section[Outline]{} -%\frame{ -% \tableofcontents -%} - - @@ -73,18 +63,22 @@ Dieser Vortrag soll zeigen, dass man auch ohne X komfortabel arbeiten kann. \vspace{1em} + \pause + Ich möchte die ``Angst'' vor der textbasierten Benutzerschnittstelle nehmen. Auch will ich hierzu Einstiegshilfen geben. + + \vspace{1em} + \pause + Ich möchte motivieren, mal Urlaub in der Shell zu machen. \vspace{1em} + \pause - Ich möchte die ``Angst'' vor der textbasierten Benutzerschnittstelle nehmen. Auch will ich hierzu Einstiegshilfen geben. + Es soll klar werden, dass und warum Kommandozeilenprogramme oft besser als ihre grafischen Pendants sind. \vspace{1em} - - Es soll klar werden, dass Kommandozeilenprogramme oft besser als ihre grafischen Pendants sind. - - \vspace{1em} + \pause Und als zentrales Ziel soll dieser Vortrag Gründe darstellen, weshalb es sich lohnt, in die Shell umzuziehen. } @@ -180,9 +174,8 @@ \begin{block}{siehe auch} \begin{itemize} \item - \item http://cat-v.org + \item http://www.cat-v.org/ \item Rob Pike - \item \end{itemize} \end{block} } @@ -218,8 +211,28 @@ } +\subsection{CLI und CURSES} +\frame{ \frametitle{CLI und CURSES} + \begin{block}{CLI --- CURSES --- GUI} + \begin{itemize} + \item CLI: \texttt{cat cli.txt | mail -s CLI lugu} + \item CURSES: \texttt{mutt} + \item GUI: \texttt{Menu \textgreater{} Applications \textgreater{} Evolution} + \end{itemize} + \end{block} -\section{GUIs als Frontend} + \begin{block}{CURSES} + \begin{itemize} + \item CURSES ist \emph{nicht} CLI + \item sondern Text User Interface + \item Ich bin hier nicht immer ganz konsequent. + \end{itemize} + \end{block} +} + + + +\subsection{GUIs als Frontend} \frame{ \frametitle{GUIs als Frontend} \begin{block}{} @@ -243,7 +256,7 @@ -\section{Größe von User-Interfaces} +\subsection{Größe von User-Interfaces} \frame{ \frametitle{Größe von User-Interfaces} @@ -280,25 +293,49 @@ -\section{Filesizes} -\frame{ \frametitle{Filesizes} - \begin{block}{Weshalb Paketgrößen?} +\section{Programme vergleichen} +\frame{ \frametitle{Programme vergleichen} + \begin{block}{Weshalb die Programmgröße beachten?} \begin{itemize} \item Kleine Programme sind: flexibler, portabler, einfacher zu verstehen, bugfreier (vgl. UNIX-Philosophie) - \item Die Paketgröße gibt indirekt Aufschluss auf den Codeumgang + \item Die Paketgröße gibt indirekt Aufschluss auf den Codeumfang \item Der Codeumfang im Verhältnis zu den Features wirft Ãœberlegungen zur Qualität des Codes auf - \item nur als Anhaltspunkt sehen - \item + \end{itemize} + \end{block} + + \begin{block}{} + Dies ist nur als Anhaltspunkt zu sehen! + \end{block} +} + + + +\subsection{Messmethoden} +\frame{ \frametitle{Messmethoden} + \begin{block}{Paketgröße} + \begin{itemize} + \item \texttt{apt-cache show \textless{}paket\textgreater{} | grep \^{}Size} + \item einfach auszulesen + \item Problem: Dokumentation ist oft auch im Paket enthalten \end{itemize} \end{block} \pause - \begin{block}{Alternativen} + \begin{block}{Source-Filesizes} \begin{itemize} - \item \texttt{vim} (7350k) Der bekannteste (und beste?) vi-Klon. - \item \texttt{nvi} (290k) Reimplementierung des orginal vi. Weniger Features; u.a. kein Syntax-Highlighting. - \item \texttt{emacs} (1.4e26k) \dots + \item \texttt{du -c *.[ch]} (je nach Sprache) + \item Quellcode muss vorliegen (\texttt{apt-get source}) + \item Problem: \texttt{\{} vs. \texttt{begin} + \end{itemize} + \end{block} + + \pause + + \begin{block}{Source Lines Of Code} + \begin{itemize} + \item \texttt{sloccount} von David A. Wheeler + \item Sprachen werden ``gleicher bewertet'' \end{itemize} \end{block} } @@ -306,6 +343,8 @@ + + \section{Mein Weg} \frame{ \frametitle{Mein Weg} \begin{block}{2005} @@ -315,7 +354,7 @@ \pause \begin{block}{2006} - Auslöser: \textit{Mein Umzug in die Shell} + Auslöseer:\\ Artikel ``Mein Umzug in die Shell'' von Gregor Oelze auf linuxlog \end{block} \pause @@ -340,7 +379,7 @@ \begin{itemize} \item Der Editor schlechthin \item Auf jedem UNIX-System vorhanden - \item meist in Form eines Klons vorhanden + \item meist in Form eines Klons \item darf ruhig angepasst werden: \texttt{.vimrc} \item Die meisten User verwenden viel zu wenige seiner Möglichkeiten! \end{itemize} @@ -352,7 +391,7 @@ \begin{itemize} \item \texttt{vim} (7350k) Der bekannteste (und beste?) vi-Klon. \item \texttt{nvi} (290k) Reimplementierung des orginal vi. Weniger Features; u.a. kein Syntax-Highlighting. - \item \texttt{emacs} (1.4e26k) \dots + \item \texttt{emacs} (5.89e37) \dots \end{itemize} \end{block} } @@ -389,9 +428,9 @@ \begin{block}{w3m} \begin{itemize} \item Textbrowser + \item hat Caret-Navigation \item kein JavaScript - \item hat Caret-Navigation - \item \dots + \item Inline-Bilder mit \texttt{w3m-img} \item Debian-Paket: 1100k \end{itemize} \end{block} @@ -441,7 +480,7 @@ \begin{block}{coreutils} \begin{itemize} \item cd, mv, cp, rm, mkdir, rmdir, \dots - \item man braucht eine gewisse Ãœbersicht im FS + \item man braucht eine gewisse Ãœbersicht im Filesystem \item letztendlich aber einfach am schnellsten \item \dots \item überall vorhanden @@ -465,7 +504,7 @@ \begin{block}{ncftp} \begin{itemize} \item toller FTP-Client - \item hatte nur früher ein curses-Interface + \item hatte nur früher ein curses-Interface (\texttt{ncftp2}) \item ncftpget, ncftpput, \dots \item \dots \item Debian-Paket: 500k @@ -478,7 +517,7 @@ \begin{itemize} \item \texttt{ftp} (50k) wenig Komfort \item \texttt{lftp} (540k) (kenne ich leider nicht) - \item \texttt{mc} (2140k) (siehe Folie Filemanager) + \item \texttt{mc} (2140k) er kann auch ftp \end{itemize} \end{block} } @@ -499,7 +538,7 @@ \begin{block}{Alternativen} \begin{itemize} - \item \texttt{irssi} (1060k) der populäre IRC-Client + \item \texttt{irssi} (1060k) populärer IRC-Client \item \texttt{sic} (6k) liest stdin, schreibt stdout \item \texttt{centericq} (1260k) sehr bekannter ICQ-Client \end{itemize} @@ -616,7 +655,7 @@ \item 2kLOC \item portables C \item guter Code (Refactoring) - \item sehr standardkonform (aber: broken appz) + \item sehr standardkonform (aber: broken apps) \item Erweiterung mit Patches \item \end{itemize} @@ -643,8 +682,8 @@ \begin{block}{Mein dwm} \begin{itemize} - \item http://prog.marmaro.de/dwm-meillo/ \item ein Patchset + \item http://prog.marmaro.de/dwm-meillo \end{itemize} \end{block} } @@ -652,17 +691,56 @@ +\section{Soll erfüllt?} +\frame{ \frametitle{Soll erfüllt?} + Dieser Vortrag soll zeigen, dass man auch ohne X komfortabel arbeiten kann. + + \vspace{1em} + \pause + + Ich möchte motivieren, mal Urlaub in der Shell zu machen. + + \vspace{1em} + \pause + + Ich möchte die ``Angst'' vor der textbasierten Benutzerschnittstelle nehmen. Auch will ich hierzu Einstiegshilfen geben. + + \vspace{1em} + \pause + + Es soll klar werden, dass und warum Kommandozeilenprogramme oft besser als ihre grafischen Pendants sind. + + \vspace{1em} + \pause + + Und als zentrales Ziel soll dieser Vortrag Gründe darstellen, weshalb es sich lohnt, in die Shell umzuziehen. + +} \section{Zusammenfassung} \frame{ \frametitle{Zusammenfassung} - \begin{block}{} - \begin{itemize} - \item - \item - \item - \end{itemize} - \end{block} + Ja, man kann auch ohne X komfortabel arbeiten. + + \vspace{1em} + \pause + + Macht mal Urlaub in der Shell. + + \vspace{1em} + \pause + + Man muss die CLI nicht fürchten. + + \vspace{1em} + \pause + + Es soll klar werden, dass und warum Kommandozeilenprogramme oft besser als ihre grafischen Pendants sind. + + \vspace{1em} + \pause + + Und als zentrales Ziel soll dieser Vortrag Gründe darstellen, weshalb es sich lohnt, in die Shell umzuziehen. } @@ -674,7 +752,26 @@ } -\frame{ \frametitle{Abschließend} + +\section{Links} +\frame{ \frametitle{Links auf einen Blick} + \begin{itemize} + \item http://suckless.org + \item http://pimpmyshell.de (Projekt von Gregor Oelze) + \item http://cat-v.org (Website von Uriel) + \item http://marmaro.de/lue + \item http://prog.marmaro.de/dwm-meillo + \item + \item + \end{itemize} + +} + + + + +\section{Danke} +\frame{% \frametitle{Abschließend} \begin{block}{Verwendete Software} \begin{itemize} \item Debian GNU/Linux @@ -685,7 +782,7 @@ \end{itemize} \end{block} - { \tiny $\dagger$ \textit{UNIX} ist ein eingetragenes Warenzeichen der OpenGroup. } + { \tiny $\dagger$ UNIX is a registered trademark of The Open Group. } \pause diff -r 867ffbcccf28 -r 3f0be9972d35 Lugu-Vortrag_shell.tpp --- a/Lugu-Vortrag_shell.tpp Wed Nov 28 19:54:27 2007 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,148 +0,0 @@ ---author markus schnalke ---title Mein Umzug in die Shell ---date 2007-01-09 - - - - ---newpage Overview ---heading Overview ---withborder - - - Einblick in meinen Alltag in der Shell - - Dauer: ca. xx minuten - - - - ---newpage Was ich erreichen möchte ---heading Was ich erreichen möchte ---withborder - - - * zeigen, dass man auch ohne X komfortabel arbeiten kann - - * zeigen, dass fast alle grafischen Programme durch Shellalternativen ersetzt werden können - - * anregen sich mit der Thematik zu beschäftigen und gezeigten Programme auszuprobieren - - - Was ich allerdings _nicht_ möchte ist es, die Programme im einzelnen zu erklären. - Dafür sind Manpages, Doku und Google da. - - - - ---newpage Programme (war -> ist) ---heading Programme (war -> ist) ---withborder - - - Browser: Firefox -> Firefox, w3m - - Email: Sylpheed Claws -> mutt - - IM: Gaim -> CenterICQ - - Editor: Kate -> Vim - - Video: vlc -> mplayer - - Musik: xmms -> cplay - - Filemanager: Xfe -> shell, mc - - CD-Writer: k3b -> wodim (cdrecord) - - CD-Ripper: Grip -> jack - - ---boldon - Windowmanager: Fluxbox -> dwm + screen ---boldoff - - - - - ---newpage w3m ---heading w3m ---withborder - - Alternativen - - * grafisch browsen - ist meist komfortabler - - * elinks - hat mehr Features (render on load, JS, ...) - - - w3m - - * w3m ist aber "cooler" - - * basiert auf vi-keybindings - - * bietet ein konsistentes look'n'feel - - * ist auch CGI-Server - - - - - ---newpage mplayer ---heading mplayer ---withborder - - * komplett via Tastatur bedienbar - - * sieht unspektakulär aus, kann aber 'ne ganze Menge - - * unterstützt auch den Framebuffer -> Video ohne X - - - - ---newpage cplay ---heading cplay ---withborder - - Alternativen - - * moc(mocp) - instabil - - * cmus - zu featurereich ;-) - - * mpd/ncmpc - client-server nötig? - - - cplay - - * simpel, simpel, simpel - * vi-like - - - - - - - - - - - ---newpage ---center Some "funny" shell tricks - ---beginshelloutput -$ make love ---endshelloutput - ---beginoutput -#include ---endoutput - - -