docs/gimme-shellter
changeset 4:3f0be9972d35
rewrote filesizes; added more content
author | meillo@marmaro.de |
---|---|
date | Thu, 06 Dec 2007 14:44:09 +0100 |
parents | 867ffbcccf28 |
children | 52725a5ea7d9 |
files | GimmeShellter.tex Lugu-Vortrag_shell.tpp |
diffstat | 2 files changed, 146 insertions(+), 197 deletions(-) [+] |
line diff
1.1 --- a/GimmeShellter.tex Wed Nov 28 19:54:27 2007 +0100 1.2 +++ b/GimmeShellter.tex Thu Dec 06 14:44:09 2007 +0100 1.3 @@ -15,14 +15,10 @@ 1.4 \author{markus schnalke} 1.5 \date{} 1.6 1.7 - 1.8 - %\markboth{2007-12-11}{} 1.9 - 1.10 \begin{document} 1.11 1.12 1.13 \frame{ 1.14 - %\titlepage 1.15 \vspace{8em} 1.16 \begin{center} 1.17 {\huge Gimme Shell}{\tiny (ter)} 1.18 @@ -40,12 +36,6 @@ 1.19 } 1.20 1.21 1.22 -%\section[Outline]{} 1.23 -%\frame{ 1.24 -% \tableofcontents 1.25 -%} 1.26 - 1.27 - 1.28 1.29 1.30 1.31 @@ -73,18 +63,22 @@ 1.32 Dieser Vortrag soll zeigen, dass man auch ohne X komfortabel arbeiten kann. 1.33 1.34 \vspace{1em} 1.35 + \pause 1.36 1.37 + Ich möchte die ``Angst'' vor der textbasierten Benutzerschnittstelle nehmen. Auch will ich hierzu Einstiegshilfen geben. 1.38 + 1.39 + \vspace{1em} 1.40 + \pause 1.41 + 1.42 Ich möchte motivieren, mal Urlaub in der Shell zu machen. 1.43 1.44 \vspace{1em} 1.45 + \pause 1.46 1.47 - Ich möchte die ``Angst'' vor der textbasierten Benutzerschnittstelle nehmen. Auch will ich hierzu Einstiegshilfen geben. 1.48 + Es soll klar werden, dass und warum Kommandozeilenprogramme oft besser als ihre grafischen Pendants sind. 1.49 1.50 \vspace{1em} 1.51 - 1.52 - Es soll klar werden, dass Kommandozeilenprogramme oft besser als ihre grafischen Pendants sind. 1.53 - 1.54 - \vspace{1em} 1.55 + \pause 1.56 1.57 Und als zentrales Ziel soll dieser Vortrag Gründe darstellen, weshalb es sich lohnt, in die Shell umzuziehen. 1.58 } 1.59 @@ -180,9 +174,8 @@ 1.60 \begin{block}{siehe auch} 1.61 \begin{itemize} 1.62 \item 1.63 - \item http://cat-v.org 1.64 + \item http://www.cat-v.org/ 1.65 \item Rob Pike 1.66 - \item 1.67 \end{itemize} 1.68 \end{block} 1.69 } 1.70 @@ -218,8 +211,28 @@ 1.71 } 1.72 1.73 1.74 +\subsection{CLI und CURSES} 1.75 +\frame{ \frametitle{CLI und CURSES} 1.76 + \begin{block}{CLI --- CURSES --- GUI} 1.77 + \begin{itemize} 1.78 + \item CLI: \texttt{cat cli.txt | mail -s CLI lugu} 1.79 + \item CURSES: \texttt{mutt} 1.80 + \item GUI: \texttt{Menu \textgreater{} Applications \textgreater{} Evolution} 1.81 + \end{itemize} 1.82 + \end{block} 1.83 1.84 -\section{GUIs als Frontend} 1.85 + \begin{block}{CURSES} 1.86 + \begin{itemize} 1.87 + \item CURSES ist \emph{nicht} CLI 1.88 + \item sondern Text User Interface 1.89 + \item Ich bin hier nicht immer ganz konsequent. 1.90 + \end{itemize} 1.91 + \end{block} 1.92 +} 1.93 + 1.94 + 1.95 + 1.96 +\subsection{GUIs als Frontend} 1.97 \frame{ \frametitle{GUIs als Frontend} 1.98 1.99 \begin{block}{} 1.100 @@ -243,7 +256,7 @@ 1.101 1.102 1.103 1.104 -\section{Größe von User-Interfaces} 1.105 +\subsection{Größe von User-Interfaces} 1.106 \frame{ \frametitle{Größe von User-Interfaces} 1.107 1.108 1.109 @@ -280,25 +293,49 @@ 1.110 1.111 1.112 1.113 -\section{Filesizes} 1.114 -\frame{ \frametitle{Filesizes} 1.115 - \begin{block}{Weshalb Paketgrößen?} 1.116 +\section{Programme vergleichen} 1.117 +\frame{ \frametitle{Programme vergleichen} 1.118 + \begin{block}{Weshalb die Programmgröße beachten?} 1.119 \begin{itemize} 1.120 \item Kleine Programme sind: flexibler, portabler, einfacher zu verstehen, bugfreier (vgl. UNIX-Philosophie) 1.121 - \item Die Paketgröße gibt indirekt Aufschluss auf den Codeumgang 1.122 + \item Die Paketgröße gibt indirekt Aufschluss auf den Codeumfang 1.123 \item Der Codeumfang im Verhältnis zu den Features wirft Überlegungen zur Qualität des Codes auf 1.124 - \item nur als Anhaltspunkt sehen 1.125 - \item 1.126 + \end{itemize} 1.127 + \end{block} 1.128 + 1.129 + \begin{block}{} 1.130 + Dies ist nur als Anhaltspunkt zu sehen! 1.131 + \end{block} 1.132 +} 1.133 + 1.134 + 1.135 + 1.136 +\subsection{Messmethoden} 1.137 +\frame{ \frametitle{Messmethoden} 1.138 + \begin{block}{Paketgröße} 1.139 + \begin{itemize} 1.140 + \item \texttt{apt-cache show \textless{}paket\textgreater{} | grep \^{}Size} 1.141 + \item einfach auszulesen 1.142 + \item Problem: Dokumentation ist oft auch im Paket enthalten 1.143 \end{itemize} 1.144 \end{block} 1.145 1.146 \pause 1.147 1.148 - \begin{block}{Alternativen} 1.149 + \begin{block}{Source-Filesizes} 1.150 \begin{itemize} 1.151 - \item \texttt{vim} (7350k) Der bekannteste (und beste?) vi-Klon. 1.152 - \item \texttt{nvi} (290k) Reimplementierung des orginal vi. Weniger Features; u.a. kein Syntax-Highlighting. 1.153 - \item \texttt{emacs} (1.4e26k) \dots 1.154 + \item \texttt{du -c *.[ch]} (je nach Sprache) 1.155 + \item Quellcode muss vorliegen (\texttt{apt-get source}) 1.156 + \item Problem: \texttt{\{} vs. \texttt{begin} 1.157 + \end{itemize} 1.158 + \end{block} 1.159 + 1.160 + \pause 1.161 + 1.162 + \begin{block}{Source Lines Of Code} 1.163 + \begin{itemize} 1.164 + \item \texttt{sloccount} von David A. Wheeler 1.165 + \item Sprachen werden ``gleicher bewertet'' 1.166 \end{itemize} 1.167 \end{block} 1.168 } 1.169 @@ -306,6 +343,8 @@ 1.170 1.171 1.172 1.173 + 1.174 + 1.175 \section{Mein Weg} 1.176 \frame{ \frametitle{Mein Weg} 1.177 \begin{block}{2005} 1.178 @@ -315,7 +354,7 @@ 1.179 \pause 1.180 1.181 \begin{block}{2006} 1.182 - Auslöser: \textit{Mein Umzug in die Shell} 1.183 + Auslöseer:\\ Artikel ``Mein Umzug in die Shell'' von Gregor Oelze auf linuxlog 1.184 \end{block} 1.185 1.186 \pause 1.187 @@ -340,7 +379,7 @@ 1.188 \begin{itemize} 1.189 \item Der Editor schlechthin 1.190 \item Auf jedem UNIX-System vorhanden 1.191 - \item meist in Form eines Klons vorhanden 1.192 + \item meist in Form eines Klons 1.193 \item darf ruhig angepasst werden: \texttt{.vimrc} 1.194 \item Die meisten User verwenden viel zu wenige seiner Möglichkeiten! 1.195 \end{itemize} 1.196 @@ -352,7 +391,7 @@ 1.197 \begin{itemize} 1.198 \item \texttt{vim} (7350k) Der bekannteste (und beste?) vi-Klon. 1.199 \item \texttt{nvi} (290k) Reimplementierung des orginal vi. Weniger Features; u.a. kein Syntax-Highlighting. 1.200 - \item \texttt{emacs} (1.4e26k) \dots 1.201 + \item \texttt{emacs} (5.89e37) \dots 1.202 \end{itemize} 1.203 \end{block} 1.204 } 1.205 @@ -389,9 +428,9 @@ 1.206 \begin{block}{w3m} 1.207 \begin{itemize} 1.208 \item Textbrowser 1.209 + \item hat Caret-Navigation 1.210 \item kein JavaScript 1.211 - \item hat Caret-Navigation 1.212 - \item \dots 1.213 + \item Inline-Bilder mit \texttt{w3m-img} 1.214 \item Debian-Paket: 1100k 1.215 \end{itemize} 1.216 \end{block} 1.217 @@ -441,7 +480,7 @@ 1.218 \begin{block}{coreutils} 1.219 \begin{itemize} 1.220 \item cd, mv, cp, rm, mkdir, rmdir, \dots 1.221 - \item man braucht eine gewisse Übersicht im FS 1.222 + \item man braucht eine gewisse Übersicht im Filesystem 1.223 \item letztendlich aber einfach am schnellsten 1.224 \item \dots 1.225 \item überall vorhanden 1.226 @@ -465,7 +504,7 @@ 1.227 \begin{block}{ncftp} 1.228 \begin{itemize} 1.229 \item toller FTP-Client 1.230 - \item hatte nur früher ein curses-Interface 1.231 + \item hatte nur früher ein curses-Interface (\texttt{ncftp2}) 1.232 \item ncftpget, ncftpput, \dots 1.233 \item \dots 1.234 \item Debian-Paket: 500k 1.235 @@ -478,7 +517,7 @@ 1.236 \begin{itemize} 1.237 \item \texttt{ftp} (50k) wenig Komfort 1.238 \item \texttt{lftp} (540k) (kenne ich leider nicht) 1.239 - \item \texttt{mc} (2140k) (siehe Folie Filemanager) 1.240 + \item \texttt{mc} (2140k) er kann auch ftp 1.241 \end{itemize} 1.242 \end{block} 1.243 } 1.244 @@ -499,7 +538,7 @@ 1.245 1.246 \begin{block}{Alternativen} 1.247 \begin{itemize} 1.248 - \item \texttt{irssi} (1060k) der populäre IRC-Client 1.249 + \item \texttt{irssi} (1060k) populärer IRC-Client 1.250 \item \texttt{sic} (6k) liest stdin, schreibt stdout 1.251 \item \texttt{centericq} (1260k) sehr bekannter ICQ-Client 1.252 \end{itemize} 1.253 @@ -616,7 +655,7 @@ 1.254 \item 2kLOC 1.255 \item portables C 1.256 \item guter Code (Refactoring) 1.257 - \item sehr standardkonform (aber: broken appz) 1.258 + \item sehr standardkonform (aber: broken apps) 1.259 \item Erweiterung mit Patches 1.260 \item 1.261 \end{itemize} 1.262 @@ -643,8 +682,8 @@ 1.263 1.264 \begin{block}{Mein dwm} 1.265 \begin{itemize} 1.266 - \item http://prog.marmaro.de/dwm-meillo/ 1.267 \item ein Patchset 1.268 + \item http://prog.marmaro.de/dwm-meillo 1.269 \end{itemize} 1.270 \end{block} 1.271 } 1.272 @@ -652,17 +691,56 @@ 1.273 1.274 1.275 1.276 +\section{Soll erfüllt?} 1.277 +\frame{ \frametitle{Soll erfüllt?} 1.278 + Dieser Vortrag soll zeigen, dass man auch ohne X komfortabel arbeiten kann. 1.279 + 1.280 + \vspace{1em} 1.281 + \pause 1.282 + 1.283 + Ich möchte motivieren, mal Urlaub in der Shell zu machen. 1.284 + 1.285 + \vspace{1em} 1.286 + \pause 1.287 + 1.288 + Ich möchte die ``Angst'' vor der textbasierten Benutzerschnittstelle nehmen. Auch will ich hierzu Einstiegshilfen geben. 1.289 + 1.290 + \vspace{1em} 1.291 + \pause 1.292 + 1.293 + Es soll klar werden, dass und warum Kommandozeilenprogramme oft besser als ihre grafischen Pendants sind. 1.294 + 1.295 + \vspace{1em} 1.296 + \pause 1.297 + 1.298 + Und als zentrales Ziel soll dieser Vortrag Gründe darstellen, weshalb es sich lohnt, in die Shell umzuziehen. 1.299 + 1.300 +} 1.301 1.302 1.303 \section{Zusammenfassung} 1.304 \frame{ \frametitle{Zusammenfassung} 1.305 - \begin{block}{} 1.306 - \begin{itemize} 1.307 - \item 1.308 - \item 1.309 - \item 1.310 - \end{itemize} 1.311 - \end{block} 1.312 + Ja, man kann auch ohne X komfortabel arbeiten. 1.313 + 1.314 + \vspace{1em} 1.315 + \pause 1.316 + 1.317 + Macht mal Urlaub in der Shell. 1.318 + 1.319 + \vspace{1em} 1.320 + \pause 1.321 + 1.322 + Man muss die CLI nicht fürchten. 1.323 + 1.324 + \vspace{1em} 1.325 + \pause 1.326 + 1.327 + Es soll klar werden, dass und warum Kommandozeilenprogramme oft besser als ihre grafischen Pendants sind. 1.328 + 1.329 + \vspace{1em} 1.330 + \pause 1.331 + 1.332 + Und als zentrales Ziel soll dieser Vortrag Gründe darstellen, weshalb es sich lohnt, in die Shell umzuziehen. 1.333 1.334 } 1.335 1.336 @@ -674,7 +752,26 @@ 1.337 } 1.338 1.339 1.340 -\frame{ \frametitle{Abschließend} 1.341 + 1.342 +\section{Links} 1.343 +\frame{ \frametitle{Links auf einen Blick} 1.344 + \begin{itemize} 1.345 + \item http://suckless.org 1.346 + \item http://pimpmyshell.de (Projekt von Gregor Oelze) 1.347 + \item http://cat-v.org (Website von Uriel) 1.348 + \item http://marmaro.de/lue 1.349 + \item http://prog.marmaro.de/dwm-meillo 1.350 + \item 1.351 + \item 1.352 + \end{itemize} 1.353 + 1.354 +} 1.355 + 1.356 + 1.357 + 1.358 + 1.359 +\section{Danke} 1.360 +\frame{% \frametitle{Abschließend} 1.361 \begin{block}{Verwendete Software} 1.362 \begin{itemize} 1.363 \item Debian GNU/Linux 1.364 @@ -685,7 +782,7 @@ 1.365 \end{itemize} 1.366 \end{block} 1.367 1.368 - { \tiny $\dagger$ \textit{UNIX} ist ein eingetragenes Warenzeichen der OpenGroup. } 1.369 + { \tiny $\dagger$ UNIX is a registered trademark of The Open Group. } 1.370 1.371 \pause 1.372
2.1 --- a/Lugu-Vortrag_shell.tpp Wed Nov 28 19:54:27 2007 +0100 2.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 2.3 @@ -1,148 +0,0 @@ 2.4 ---author markus schnalke <meillo@marmaro.de> 2.5 ---title Mein Umzug in die Shell 2.6 ---date 2007-01-09 2.7 - 2.8 - 2.9 - 2.10 - 2.11 ---newpage Overview 2.12 ---heading Overview 2.13 ---withborder 2.14 - 2.15 - 2.16 - Einblick in meinen Alltag in der Shell 2.17 - 2.18 - Dauer: ca. xx minuten 2.19 - 2.20 - 2.21 - 2.22 - 2.23 ---newpage Was ich erreichen möchte 2.24 ---heading Was ich erreichen möchte 2.25 ---withborder 2.26 - 2.27 - 2.28 - * zeigen, dass man auch ohne X komfortabel arbeiten kann 2.29 - 2.30 - * zeigen, dass fast alle grafischen Programme durch Shellalternativen ersetzt werden können 2.31 - 2.32 - * anregen sich mit der Thematik zu beschäftigen und gezeigten Programme auszuprobieren 2.33 - 2.34 - 2.35 - Was ich allerdings _nicht_ möchte ist es, die Programme im einzelnen zu erklären. 2.36 - Dafür sind Manpages, Doku und Google da. 2.37 - 2.38 - 2.39 - 2.40 - 2.41 ---newpage Programme (war -> ist) 2.42 ---heading Programme (war -> ist) 2.43 ---withborder 2.44 - 2.45 - 2.46 - Browser: Firefox -> Firefox, w3m 2.47 - 2.48 - Email: Sylpheed Claws -> mutt 2.49 - 2.50 - IM: Gaim -> CenterICQ 2.51 - 2.52 - Editor: Kate -> Vim 2.53 - 2.54 - Video: vlc -> mplayer 2.55 - 2.56 - Musik: xmms -> cplay 2.57 - 2.58 - Filemanager: Xfe -> shell, mc 2.59 - 2.60 - CD-Writer: k3b -> wodim (cdrecord) 2.61 - 2.62 - CD-Ripper: Grip -> jack 2.63 - 2.64 - 2.65 ---boldon 2.66 - Windowmanager: Fluxbox -> dwm + screen 2.67 ---boldoff 2.68 - 2.69 - 2.70 - 2.71 - 2.72 - 2.73 ---newpage w3m 2.74 ---heading w3m 2.75 ---withborder 2.76 - 2.77 - Alternativen 2.78 - 2.79 - * grafisch browsen - ist meist komfortabler 2.80 - 2.81 - * elinks - hat mehr Features (render on load, JS, ...) 2.82 - 2.83 - 2.84 - w3m 2.85 - 2.86 - * w3m ist aber "cooler" 2.87 - 2.88 - * basiert auf vi-keybindings 2.89 - 2.90 - * bietet ein konsistentes look'n'feel 2.91 - 2.92 - * ist auch CGI-Server 2.93 - 2.94 - 2.95 - 2.96 - 2.97 - 2.98 ---newpage mplayer 2.99 ---heading mplayer 2.100 ---withborder 2.101 - 2.102 - * komplett via Tastatur bedienbar 2.103 - 2.104 - * sieht unspektakulär aus, kann aber 'ne ganze Menge 2.105 - 2.106 - * unterstützt auch den Framebuffer -> Video ohne X 2.107 - 2.108 - 2.109 - 2.110 - 2.111 ---newpage cplay 2.112 ---heading cplay 2.113 ---withborder 2.114 - 2.115 - Alternativen 2.116 - 2.117 - * moc(mocp) - instabil 2.118 - 2.119 - * cmus - zu featurereich ;-) 2.120 - 2.121 - * mpd/ncmpc - client-server nötig? 2.122 - 2.123 - 2.124 - cplay 2.125 - 2.126 - * simpel, simpel, simpel 2.127 - * vi-like 2.128 - 2.129 - 2.130 - 2.131 - 2.132 - 2.133 - 2.134 - 2.135 - 2.136 - 2.137 - 2.138 - 2.139 ---newpage 2.140 ---center Some "funny" shell tricks 2.141 - 2.142 ---beginshelloutput 2.143 -$ make love 2.144 ---endshelloutput 2.145 - 2.146 ---beginoutput 2.147 -#include <stdio.h> 2.148 ---endoutput 2.149 - 2.150 - 2.151 -