Slide 1

Slide 1 text

Development laptop automation Reinout van Rees Nelen & Schuurmans (in Utrecht)

Slide 2

Slide 2 text

“The shoemaker’s children go barefoot” • What do you develop? • Myself: philips intranet, now water management. • Do you develop for yourself? With the same care?

Slide 3

Slide 3 text

How productive are you? • How well do you know your editor/IDE? • What do you do by hand? • What did you automate? • What do you learn every year?

Slide 4

Slide 4 text

Disaster can strike • Scare tactics :-) • Do you use svn/git/hg for your code? • Same question: for your laptop configuration? • What if you get a new laptop next week?

Slide 5

Slide 5 text

Call to action • Automate your development laptop with the same care as your regular projects • Mindset 1: be explicit about it • Mindset 2: do something regularly

Slide 6

Slide 6 text

Mindset 1: be explicit • Store your configuration in git • Bash aliases, shell scripts, small python programs you wrote, ssh config, etc. • README that explains your setup • So… explicit instead of by accident

Slide 7

Slide 7 text

Mindset 2: do something regularly • Change in your setup? Adjust README • Revisit list of oft-used apps every year • Grab latest python packages • Ask people about their setup • Automate/improve/fix something every week

Slide 8

Slide 8 text

Don’t be too perfectionistic

Slide 9

Slide 9 text

Market garden Battle of Arnhem: Son bridge

Slide 10

Slide 10 text

Get replacement through Eindhoven

Slide 11

Slide 11 text

Bailey bridge: used as roof in Eindhoven station now…

Slide 12

Slide 12 text

Don’t be too perfectionistic

Slide 13

Slide 13 text

Examples • zest.releaser • checkoutmanager • dotfiles • nensskel

Slide 14

Slide 14 text

Skeleton • zopeskel, zestskel, thaskel, nensskel • example • README with checklist

Slide 15

Slide 15 text

zest.releaser • Manual: update version number, add date to changelog header, “git tag”, up version number, add changelog header, “git push”, “git push —tags” • Automated: “fullrelease”

Slide 16

Slide 16 text

checkoutmanager • co • up • st • out • Based on a config file

Slide 17

Slide 17 text

Dotfiles • Symlink ~/.something to ~/ Dotfiles/something • Private git repo?

Slide 18

Slide 18 text

URLs • https://pypi.python.org/pypi/ zest.releaser • https://pypi.python.org/pypi/ checkoutmanager • https://pypi.python.org/pypi/ dotfiles • https://github.com/reinout/ tools/ • http://reinout.vanrees.org