-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathsed-hackers.tex
832 lines (704 loc) · 27.9 KB
/
sed-hackers.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
% Author: Victor Terron (c) 2013
% License: CC BY-SA 4.0
\documentclass[14pt]{beamer}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage[spanish]{babel}
\usepackage{listings}
\usepackage{eurosans}
\usepackage{bold-extra}
\usepackage{caption}
\usepackage{marvosym}
\usetheme{Copenhagen}
\useoutertheme{infolines}
\setbeamercovered{dynamic}
\setbeamertemplate{navigation symbols}{} % remove navigation symbols
% A Nice Title Page for Beamer Presentations
% http://github.com/dfalster/BeamerTitleSlide
\usepackage{tikz}
\usepackage[framemethod=tikz]{mdframed}
% Define a new mdframed environment
\newmdenv[tikzsetting={draw=black,fill=white,fill opacity=0.8},
backgroundcolor=none,leftmargin=0,rightmargin=0, innertopmargin=4pt,
skipbelow=\baselineskip, skipabove=\baselineskip]{TitleBox}
% http://www.colourlovers.com/palette/580974/Adrift_in_Dreams
\definecolor{sail-green}{HTML}{3B8686}
\lstset{basicstyle=\ttfamily,language=python}
\newcommand{\ShowCurrentSection}[0]{
\AtBeginSection[]{
\begin{frame}
\frametitle{Índice}
\begin{columns}
\column{.4\textwidth}
\begin{flushright}
\includegraphics[width=3cm]{pics/torvalds-to-nvidia.jpg}
\end{flushright}
\column{.5\textwidth}
\tableofcontents[currentsection]
\end{columns}
\end{frame}}
}
\newcommand{\WebLink}[2]{
\href{#1}{\structure{\PointingHand~\color{sail-green}{#2}}}
}
\title{¡Sed Hackers!}
\author{Víctor Terrón}
\date{6 de mayo de 2016}
\institute{@pyctor}
\begin{document}
{
\usebackgroundtemplate{\includegraphics[height=1.0\paperheight]{pics/ninjas.jpg}}
\begin{frame}[plain]
\vspace{6.25cm}
\begin{TitleBox}
{\LARGE \inserttitle} \\
{\small \insertauthor \enspace --- \thinspace \url{https://vterron.xyz/hackers}}
\end{TitleBox}
\end{frame}
}
\section{Introducción}
\begin{frame}{}
\begin{block}{}
\centering \Large Las tres salidas después de la \structure{\tt Universidad}
\end{block}
\end{frame}
\begin{frame}{Tierra}
\begin{center}
\includegraphics[width=0.6\textwidth]{pics/thelma-louise-cliff.jpg}
\end{center}
\end{frame}
\begin{frame}{Mar}
\begin{center}
\includegraphics[width=0.6\textwidth]{pics/ship-sinking.jpg}
\end{center}
\end{frame}
\begin{frame}{Aire}
\begin{center}
\includegraphics[width=0.6\textwidth]{pics/plane-crashing.jpg}
\end{center}
\end{frame}
\begin{frame}{}
\begin{block}{}
\centering \Large El destino de muchos: \structure{\tt consultoría}
\end{block}
\begin{figure}
\centering
\includegraphics[width=0.4\textwidth]{pics/ben-hur-rowing.jpg}
\caption*{Accenture, Northgate Arinso y demás cárnicas}
\end{figure}
\end{frame}
\begin{frame}{ETSIIT: A New Hope}
\begin{itemize}
\item Hay vida más allá de \structure{Arinso}
\item Hay países donde la gente joven encuentra trabajo
\item El ejemplo más evidente es \structure{Silicon Valley} \\
{\small Empresas líder en el sector, proyectos muy interesantes
y unas condiciones laborales impensables aquí en España}
\item Todos querríamos \structure{trabajar} en una empresa así
\item ¿Cuál es el \structure{perfil} de aquellos que lo consiguen?
\end{itemize}
\begin{center} \Large \bf ¡Todos son hackers!\end{center}
\end{frame}
\begin{frame}{Hackers}
\begin{center}
Hackers, por supuesto, en su \structure{verdadero significado}
\end{center}
\begin{block}{\footnotesize Definición según Wikipedia}
\centering \footnotesize A person who enjoys \structure{exploring the
limits of what is possible}, in a spirit of playful
cleverness. They may also heavily modify software or hardware of
their own computer system. It includes building, rebuilding,
modifying, and creating software, or anything else, either to
\structure{make it better} or faster or to give it added
features or to \structure{make it do something it was never
intended to do}.
\end{block}
\begin{itemize}
\item \WebLink{http://www.catb.org/esr/faqs/hacker-howto.html}
{How To Become A Hacker}, de Eric Raymond
\item A todos los hackers les \structure{apasiona} la programación
\end{itemize}
\end{frame}
\begin{frame}{}
\vspace{2cm}
\begin{alertblock}{}
\centering Porque a todos nos apasiona programar... \textbf{¿verdad?}
\end{alertblock}
\begin{center}
\includegraphics[width=5cm]{pics/you_dont_say.png}
\end{center}
\end{frame}
\begin{frame}{}
\begin{center}
\includegraphics[width=0.8\textwidth]{pics/nothing-to-do-here.jpg}
\end{center}
\end{frame}
\begin{frame}{Hacker = programador}
\begin{itemize}
\item La programación es \structure{fundamental} en este gremio
\item Idea \structure{absurda}: \emph{``Los ingenieros no programan''}
\item No sólo lo hacen, sino que son \structure{mejores} que nadie
\item La alternativa es ser... un \structure{powerpoinista}.
\item \WebLink{http://www.alfredodehoces.com/fuckowski-on-line}
{Fuckowski, memorias de un ingeniero}
\end{itemize}
\end{frame}
\begin{frame}{}
\begin{center}
\includegraphics[width=0.6\textwidth]{pics/the-oatmeal-real-geeks.jpg}
\end{center}
\end{frame}
\begin{frame}{Startups}
\begin{block}{} \centering
Es posible que ya hayan empezado a bombardearos con la idea, y en los
años próximos irá a más, de que hay que \structure{\emph{emprender}}.
La fórmula tiene algunas variaciones, pero siempre gira en torno a
la idea de que unos cuantos recién graduados podríais montar una
empresa de base tecnológica para abriros un hueco en el mundo.
\end{block}
\begin{itemize} \small
\item Películas como \structure{The Social Network} (2010)
\item Ayudas a jóvenes emprendedores
\item \structure{The Lean Startup}, de Eric Ries
\end{itemize}
\end{frame}
\begin{frame}{Startups}
\begin{block}{}
\centering \Large Expectativas
\end{block}
\begin{figure}
\centering
\includegraphics[width=0.75\paperwidth]{pics/scrooge-mcduck.jpg}
\end{figure}
\end{frame}
\begin{frame}{Startups}
\begin{alertblock}{}
\centering \Large Realidad
\end{alertblock}
\begin{columns}
\column{.5\textwidth}
\includegraphics[width=0.4\paperwidth]{pics/code-for-food-one.jpg}
\column{.5\textwidth}
\includegraphics[width=0.4\paperwidth]{pics/code-for-food-two.jpg}
\end{columns}
\end{frame}
\begin{frame}{Startups}
\begin{alertblock}{} \centering
Lo más probable es que acabéis igual de pobres que antes de
empezar, pero \structure{arruinados} y quizás habiendo arrastrado
a familiares y amigos.
\end{alertblock}
\begin{itemize} \small
\item No seáis \structure{autónomos kamikaze}.
\item Una empresa se monta sólo cuando se sabe \structure{muy
bien} lo que se está haciendo y se tiene \structure{mucha
experiencia}, e incluso así lo más habitual es que salga mal.
\item El \structure{~80\%} de las empresas \structure{quiebran} en
los primeros cinco años.
\item Y ahora la tendencia de consumo y financiación es
\structure{negativa}.
\item No ha de hacerse jamás como alternativa al \structure{desempleo}.
\item El mensaje se difunde para sacaros vuestros ahorros.
\end{itemize}
\end{frame}
\begin{frame}{}
\begin{itemize}
\item Existen empresas como Valve, Twitter o GitHub
\item Sin \structure{horarios} ni código de \structure{vestimenta}
\item El \WebLink{http://www.glassdoor.com/Salary/Twitter-Salaries-E100569.htm}
{salario medio}
en Twitter es de \structure{\$127,486} (¡!)
\item Valve es un paradigma de \structure{organización horizontal}
\item \WebLink{http://www.valvesoftware.com/company/Valve_Handbook_LowRes.pdf}
{Manual del nuevo empleado de Valve}
\item Aspirad a trabajar en un sitio así
\item Aspirad a ser \structure{hackers}
\end{itemize}
\end{frame}
\ShowCurrentSection
\setbeamerfont{itemize/enumerate body}{size=\footnotesize}
\section{Y éste quién es}
\begin{frame}{Quién soy}
\begin{itemize}
\item Víctor Terrón
\item \url{http://www.github.com/vterron}
\item Ingeniería Informática (2003-2009), Universidad de Granada
\item Intercambio en Irlanda (\structure{Erasmus}) y EE.UU. (\structure{programa propio})
\item Hasta 2015 trabajé en el Instituto de Astrofísica de Andalucía (CSIC)
\item Desarrollaba software para \structure{instrumentos astronómicos}
\item En ocasiones era \structure{operador de telescopio} en Calar Alto
\item Desde 2009, \structure{semanas después} de terminar la carrera
\item Ahora trabajo en Google UK como \structure{Site Reliability Engineer}
\end{itemize}
\begin{alertblock}{\centering \scriptsize Aclaración obligada}
\centering \scriptsize Las opiniones aquí vertidas son
exclusivamente mías, y no representan la opinión de ningún
empleador pasado, presente o futuro. Y son sólo eso — ¡opiniones!
\end{alertblock}
\end{frame}
\begin{frame}{1.23m CAHA}
\begin{center}
\includegraphics[height=0.8\textheight]{pics/123m_CAHA_1.jpg}
\end{center}
\end{frame}
\begin{frame}{1.23m CAHA}
\begin{center}
\includegraphics[height=0.8\textheight]{pics/123m_CAHA_2.jpg}
\end{center}
\end{frame}
\setbeamerfont{itemize/enumerate body}{size=\small}
\begin{frame}{¿Y eso?}
\begin{itemize}
\item Mi paso por el IAA fue \structure{el primer y más importante
paso en mi carrera profesional}, y lo que hizo posible que seis
años después me fuera a Londres.
\item La pregunta es \structure{por qué me cogieron a mí}, y no a otro
\item En última instancia, buscaban dos cosas en un candidato:
\begin{itemize}
\item Que supiera de \structure{GNU/Linux}
\item Y hablara \structure{inglés}
\end{itemize}
\item Y ésas eran básicamente las únicas dos cosas que yo sabía
\end{itemize}
\begin{alertblock}{\centering Primer Axioma}
\centering El expediente sólo sirve para que te den becas
\end{alertblock}
\end{frame}
\begin{frame}{Joel Spolsky}
\begin{figure}
\centering
\includegraphics[height=0.7\textheight]{pics/smart-and-gets-things-done.jpg}
\caption*{
\small
\WebLink{http://www.joelonsoftware.com/items/2007/06/05.html}
{Smart and Gets Things Done}}
\end{figure}
\end{frame}
\setbeamerfont{itemize/enumerate body}{size=\footnotesize}
\begin{frame}{}
\begin{block}{}\centering
\Large \structure{GNU/Linux}
\end{block}
\begin{itemize}
\item El manejo de la línea de comandos es \structure{esencial}
\item La curva de aprendizaje es suave (es decir, muy difícil)
\item No será \structure{cómodo} al principio, ni agradable
\item \emph{¿No acabaría antes....?} Respuesta: \structure{sí}
\item Pero aprenderéis muchísimo — incontables conceptos
\item La abstracción de las GUI nos \structure{limitan intelectualmente}
\item No seáis otra \structure{Generación XP}
\item \structure{In the Beginning... Was the Command Line}, de Neal Stephenson
\end{itemize}
\end{frame}
\begin{frame}{}
\begin{block}{}\centering
\Large \structure{Inglés}
\end{block}
\begin{itemize}
\item El 99\% del material existente \structure{está en la lingua franca}
\item El 1\% restante son traducciones del inglés (por ejemplo, Wikipedia)
\item Las de arriba son cifras inventadas, pero captáis el mensaje
\item Estudiad como sea al menos un año en \structure{un país de habla inglesa}
\item A ser posible \structure{el último curso} (para no volver después)
\item Empezad a ahorrar ya si hace falta, aunque \structure{tampoco necesitáis tanto}
\item Yo gasté \EUR{8,500} en \structure{un curso entero} en California
\item Necesitáis un título: \structure{Certificate of Advanced English}
\item El \structure{First} está bien cuando tienes quince años
\end{itemize}
\end{frame}
\section{¿Y vosotros?}
\begin{frame}{Los años que os quedan}
\begin{itemize}
\item Tenéis por delante unos años \structure{bastante feos} en la
Universidad.
\item Los profesores buenos son \structure{escasísimos}, y muy valiosos.
\item Los mediocres o directamente \structure{inútiles abundan}, y
se reproducen a una velocidad asombrosa. Parecen destinados a
dominar el mundo.
\item Consejo: centrad vuestros esfuerzos en los pocos docentes e
investigadores que \structure{merecen la pena}.
\item El mundo ya está lleno de gente que \structure{se limitó a
aprobar asignaturas}, incluso con buena nota.
\end{itemize}
\begin{alertblock}{\centering Segundo Axioma}
\centering No hay asignaturas difíciles, sólo malos profesores
\end{alertblock}
\end{frame}
\begin{frame}{Carpe Diem}
\begin{itemize}
\item No quiero sonar como un viejo, ¡pero \structure{aprovechad
el tiempo}!
\item WoW, LoL, Facebook, Tuenti, Cuánto Cabrón o Series Yonkis
\item Los que dediquéis todo ese tiempo a esfuerzos creativos
seréis \structure{expertos con varios años de experiencia} para
cuando obtengáis el título.
\item El resto empezaréis a aprender en serio \structure{sólo
entonces}, y estaréis como mínimo varios años por detrás de los
que hiceron algo más que ir a clase, prácticas y exámenes.
\item Todos los hackers se caracterizan por \structure{aprovechar
muy bien el tiempo}. Hay tiempo para todos los proyectos que os
propongáis.
\item No gastéis esfuerzos en \structure{conocimientos inútiles}
como saberos al dedillo cuáles son los últimos modelos en
tarjetas gráficas. Dentro de 50 años se \structure{seguirá
programando en Fortran y C}, pero no habrá APIs para Facebook.
\item ¡Vamos a hacer cosas!
\end{itemize}
\end{frame}
\begin{frame}{Doctorado}
\begin{itemize}
\item Un \structure{máster} una vez acabéis \emph{puede} ser una
buena idea.
\item El \structure{doctorado} —el 99\% de las ocasiones—
\structure{no}.
\item No hagáis jamás un doctorado \structure{por inercia}, o
porque toca.
\item Tenéis que estar muy, muy, muy seguros antes de empezar uno.
\item Tened en cuenta el \structure{coste de oportunidad} de todos
esos años.
\item El doctorado \structure{combina lo peor de los dos mundos}:
la servidumbre académica con unas condiciones laborales propias
de campesino del siglo XIII.
\item Idea: probad \structure{unos años en la industria} y volved
después al mundo académico con las ideas claras y el Kung Fu
afilado.
\end{itemize}
\begin{block}{\centering \small Lectura obligada}
\centering \small
\WebLink{http://matt.might.net/articles/phd-school-in-pictures/}
{The illustrated guide to a Ph.D.}
\end{block}
\end{frame}
\begin{frame}{Randy Pausch (1960---2008)}
\begin{center}
\WebLink{https://www.youtube.com/watch?v=ji5_MqicxSo}
{The Last Lecture: Achieving Your Childhood Dreams}
\CrossedBox \\
\WebLink{https://www.youtube.com/watch?v=oTugjssqOT0}
{Time Management}
\end{center}
\begin{figure}
\centering
\includegraphics[width=0.6\textwidth]{pics/randy-pausch.jpg}
\caption*{\small Si sólo vais a hacer click en dos enlaces, \structure{que sean estos}}
\end{figure}
\end{frame}
\setbeamerfont{itemize/enumerate body}{size=\normalsize}
\section{How to Become a Ninja}
\ShowCurrentSection
\begin{frame}{Vale... ¿pero cómo?}
\begin{itemize}
\item Empezad usando GNU/Linux como \structure{único sistema
operativo}, para todo
\item Aprended sólidamente los fundamentos de la programación, y
de aquí a cinco años proponéos dominar {\bf al menos} tres
lenguajes:
\begin{itemize}
\item Uno de \structure{bajo} nivel (C o C++)
\item Uno de \structure{alto} (Python o Perl)
\item Y uno \structure{\emph{raro}} (Lisp o Erlang)
\end{itemize}
\item No es nunca la sintaxis, sino los \structure{paradigmas}.
\item Expresarse \structure{con fluidez} en inglés es esencial.
\item No olvidéis el \structure{perfil blando}: música, artes
marciales.
\item Nunca preguntéis \emph{``¿Y esto para qué sirve?''}
\end{itemize}
\end{frame}
\setbeamerfont{itemize/enumerate body}{size=\small}
\begin{frame}{Software Libre}
\begin{block}{}\centering
\normalsize Involucraos en un proyecto de software libre.
\end{block}
\begin{itemize}
\item Por más que algunos profesores que tendréis discrepen
\item No hay nada que \structure{impresione} más en un currículum
\item Encontrad \structure{un proyecto que os guste}, y empezad poco a poco
\item Parches muy pequeños al principio
\item Podéis empezar con \structure{traducciones}, si lo preferís
\item Launchpad (Ubuntu) o GitHub
\end{itemize}
\end{frame}
\begin{frame}{Titulitis}
\begin{itemize}
\item Nunca nadie fue \emph{``Ingeniero superior''}
\item Incluso \emph{``Ingeniería''} a secas son palabras mayores
\item No lo planteéis jamás como un \structure{Graduados} vs
\structure{FPs}
\item Telecomunicaciones mola porque aprenden más \structure{Física}
\item El título es sólo \structure{un trozo de papel}
\item Tenéis la obligación moral de ser \structure{humildes}
\end{itemize}
\begin{alertblock}{\centering Tercer Axioma}
\centering Los de FP probablemente os dan mil vueltas
\end{alertblock}
\end{frame}
\begin{frame}{git \textgreater svn}
\begin{alertblock}{\centering Primer Mandamiento}
\centering ¡No uséis Subversion!
\end{alertblock}
\begin{itemize} \itemsep0em
\item Usad sistemas de control de versiones \structure{distribuidos}
\item Mercurial o Git, ya es una cuestión de gustos
\end{itemize}
\begin{block}{}\centering
\scriptsize For the first 10 years of kernel maintenance, we
literally used tarballs and patches, \structure{which is a much
superior source control management system than CVS is}, but I
did end up using CVS for 7 years at a commercial company and I
hate it with a passion. When I say I hate CVS with a passion, I
have to also say that if there are any SVN (Subversion) users in
the audience, you might want to leave. Because my hatred of CVS
has meant that \structure{I see Subversion as being the most
pointless project ever started}. The slogan of Subversion for a
while was \emph{CVS done right}, or something like that, and if
you start with that kind of slogan, there's nowhere you can
go. There is no way to do CVS right.
\end{block}
\vspace{-0.5cm}
\begin{center}
\WebLink{https://www.youtube.com/watch?v=4XpnKHJAok8}
{\small Linus Torvalds on Git (2007)}
\end{center}
\end{frame}
\begin{frame}{Dijkstra}
\begin{block}{}\centering
\normalsize The teaching of BASIC should be rated as
a criminal offence: it mutilates the mind beyond recovery.
\end{block}
\vspace{-0.5cm}
\begin{center} \scriptsize Edsger W. Dijkstra (1984) \end{center}
\begin{figure}
\centering
\includegraphics[width=0.45\textwidth]{pics/svn-reeducation.jpg}
\caption*{\url{http://hginit.com/}}
\end{figure}
\end{frame}
\begin{frame}{Emacs}
\begin{block}{\scriptsize Neal Stephenson} \centering
\scriptsize I use Emacs, which might be thought of as a thermonuclear word processor.
\end{block}
\begin{block}{\scriptsize Eric S. Raymond} \centering
\scriptsize Emacs is undoubtedly the most powerful programmer's editor in
existence. It's a big, feature-laden program with a great deal of
flexibility and customizability. [...] Emacs has an entire
programming language inside it that can be used to write
arbitrarily powerful editor functions.
\end{block}
\begin{itemize} \itemsep0em
\item IDEs como \structure{Eclipse} son cómodas pero simplifican demasiado
\item Aprended a operar a mano \structure{antes de usar una calculadora}
\item \structure{Real Programmers} use Emacs! — \url{https://xkcd.com/378/}
\end{itemize}
\end{frame}
\begin{frame}{rsync}
\begin{itemize} \itemsep0em
\item Herramienta \structure{fundamental} para la sincronización
de directorios
\item Hace copias en local o remotas (vía \structure{SSH})
\item Transfiere sólo los archivos que se han \structure{modificado}
\item Y de éstos sólo las partes diferentes
(\structure{compresión delta})
\item Usa \structure{checksum} para verificar que las copias son
\structure{idénticas}
\end{itemize}
\begin{alertblock}{\centering \footnotesize Escenarios habituales}
\begin{itemize} \itemsep0em
\footnotesize
\item Uso básico: para copias de seguridad
\item Uso avanzado: periódicas, usando \structure{cron}
\item Uso \structure{hacker}: periódicas e incrementales
\end{itemize}
\end{alertblock}
\begin{block}{}
\centering \small
El \structure{Time Machine} de Apple es rsync con interfaz gráfica
\end{block}
\end{frame}
\begin{frame}{Dos casos}
\begin{exampleblock}{Escenario A}\centering
\small Abrirle a tu hámster la puerta de su jaula a mano
\end{exampleblock}
\begin{block}{Escenario B} \centering
\small Automatizar la apertura de la jaula con
\structure{Arduino}, utilizando un pequeño servomotor que se
activa a una hora determinada. Programar en \structure{Python} un
sistema de reconocimiento de imágenes, ejecutándose en una
\structure{Raspberry Pi}, que detecte cuándo ha vuelto dentro y
cierre la puerta. Monitorizar la actividad del hámster y, en caso
de detectar que hoy no ha salido de la jaula, usar la
\structure{API de Twilio} para enviarnos aviso.
\end{block}
\begin{alertblock}{\centering Cuarto Axioma}
\centering Difícil es más divertido
\end{alertblock}
\end{frame}
\begin{frame}{GitHub}
\begin{itemize}
\item GitHub (o equivalente) es tu nuevo currículum
\item Muestra de forma transparente \structure{qué has hecho, cómo y cuándo}
\item Permite evaluar la \structure{calidad de tu código y contribuciones}
\item Para las empresas buenas, esto es lo \structure{único que importa}
\end{itemize}
\begin{center}
\includegraphics[width=6cm]{pics/github-logo.png}
\end{center}
\end{frame}
\begin{frame}{GitHub}
\begin{block}{\scriptsize} \centering
\Large Colgad en GitHub {\bf todo} lo que hagáis
\end{block}
\begin{itemize}
\item Desde \structure{prácticas} a ficheros de configuración rc
\item Siempre hay alguien a quien le serán útiles
\item Devolved a la comunidad parte del esfuerzo
\item Sed \structure{creadores} de contenidos, no sólo consumidores
\end{itemize}
\end{frame}
\begin{frame}{Videojuegos}
\centering \small
Si os interesa el mundo de los videojuegos, tenéis que aprender
\begin{alertblock}{}
\centering \LARGE C++ a muerte
\end{alertblock}
\begin{itemize} \small
\itemsep0em
\item Es el lenguaje de verdad en este gremio.
\item Programación a \structure{bajo nivel} y \structure{muy
optimizada}.
\item Esto tiene la ventaja de que con ese perfil podréis saltar
a \structure{cualquier otro sector}, ya que seréis grandes
programadores, muy \structure{todoterreno}.
\item Necesitaréis también \structure{matemáticas}. Muchas matemáticas.
\end{itemize}
\begin{block}{\centering \small Lectura obligada}
\centering \small Why your games are made by childless, 31 year
old white men, and how one studio is fighting back
\WebLink{https://web.archive.org/web/20131211193933/http://penny-arcade.com/report/article/why-your-games-are-made-by-childless-31-year-old-white-men-and-how-one-stud}
{Internet Archive}
\end{block}
\end{frame}
\begin{frame}{Certificaciones}
\begin{block}{}
\centering
Por norma general, las certificaciones relacionadas con la
programación o los sistemas Unix son prácticamente
\structure{inútiles}, y un desperdicio de \structure{tiempo} y
\structure{dinero}.
\end{block}
\begin{itemize}
\item ¡Más titulitis!
\item Por ejemplo, las del
\WebLink{https://www.lpi.org/linux-certifications}
{Linux Professional Institute}
\item Aún más divertido:
\WebLink{http://www.oreillyschool.com/certificate-programs/python-programming/}
{Python Programming Certificate}
\item Hay excepciones, como (quizás) las de
\WebLink{http://cisco.com/web/learning/certifications/entry/ccent/index.html}
{Cisco}
\item Nada que objetar si lo veis como una forma más de aprender.
\item No olvidéis plataformas como Coursera o Udacity.
\end{itemize}
\end{frame}
\begin{frame}{}
\begin{columns}
\column{.6\textwidth}
\begin{block}{}\centering\Large\bf
¿La mejor forma de \structure{aprender}?
\end{block}
\begin{center}
\structure{\huge Hacer cosas \emph{guays} \textbf{sin pensar}}
\end{center}
\column{.4\textwidth}
\includegraphics[width=.9\textwidth]{pics/be-cool.jpg}
\end{columns}
\end{frame}
\begin{frame}{Arduino}
\begin{center}
\includegraphics[width=.45\textwidth]{pics/arduino.jpg}
\end{center}
\vspace{-0.5cm}
\begin{block}{}\centering
Plataforma de hardware libre, basada en una placa con un
microcontrolador y un entorno de desarrollo
\end{block}
\end{frame}
\begin{frame}{Arduino: Tanque}
\begin{figure}
\centering
\includegraphics[width=0.8\textwidth]{pics/arduino-tank.jpg}
\caption*{\small \url{http://beatty-robotics.com/mechatronic-tank/}}
\end{figure}
\end{frame}
\begin{frame}{Arduino: Araña}
\begin{figure}
\centering
\includegraphics[width=0.7\textwidth]{pics/arduino-spider.jpg}
\caption*{\small \url{http://www.flickr.com/photos/wizard23/3911240094/}}
\end{figure}
\end{frame}
\begin{frame}{Arduino: Cuadricóptero}
\begin{figure}
\centering
\includegraphics[width=0.7\textwidth]{pics/arduino-quadcopter.jpg}
\caption*{\small \url{http://aeroquad.com/}}
\end{figure}
\end{frame}
\begin{frame}{Raspberry Pi}
\begin{center}
\includegraphics[width=.45\textwidth]{pics/raspberry-pi.jpg}
\end{center}
\vspace{-0.5cm}
\begin{block}{}\centering
Una placa de ordenador de bajo coste del tamaño de una tarjeta de
crédito. Se puede instalar Debian (Raspbian) y tiene salida 1080p
HDTV por HDMI.
\end{block}
\end{frame}
\begin{frame}{Raspberry Pi: Servidor Torrent}
\begin{figure}
\centering
\includegraphics[width=0.5\textwidth]{pics/raspberry-pi-torrent-server.jpg}
\caption*{\centering \small
\url{http://eiosifidis.blogspot.com.es/2013/03/use-raspberry-pi-as-torrent-download.html}}
\end{figure}
\end{frame}
\begin{frame}{Raspberry Pi: Luces de escritorio}
\begin{figure}
\centering
\includegraphics[width=0.6\textwidth]{pics/raspberry-pi-color-my-desk.jpg}
\caption*{\centering \small
\url{http://makezine.com/raspberry-pi-design-contest/rpidcg_005_color-my-desk/}}
\end{figure}
\end{frame}
\begin{frame}{Raspberry Pi: Clúster de 64 nodos}
\begin{figure}
\centering
\includegraphics[width=0.7\textwidth]{pics/raspberry-pi-supercomputer.jpg}
\caption*{\small \url{http://www.southampton.ac.uk/~sjc/raspberrypi/}}
\end{figure}
\end{frame}
\section{Conclusión}
\ShowCurrentSection
\begin{frame}{Conclusión}
\begin{block}{} \centering
\normalsize El mundo es un lugar \structure{fantástico}, lleno
de gente \structure{increíble} que trabaja en proyectos
\structure{interesantes}. No seáis una gota más en un océano de
mediocridad. Entregaos en cuerpo y alma a aquello que os
apasione.
\end{block}
\begin{itemize} \itemsep0em
\item Sólo si os gusta algo podréis llegar a ser
\structure{realmente buenos}
\item El futuro pertenece a los {\bf \structure{frikis}} (los de verdad)
\item \WebLink{https://vimeo.com/65666763}
{What if Money Did not Matter?}, de Alan Watts
\item \WebLink{https://www.youtube.com/watch?v=rAn4gZCd4HY}
{Everybody's Free To Wear Sunscreen}, de Baz Luhrmann
\end{itemize}
\end{frame}
\end{document}