Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
GoBox - Berlin Hack and Tell Oct '11
Search
Surma
October 10, 2011
Programming
440
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GoBox - Berlin Hack and Tell Oct '11
Surma
October 10, 2011
More Decks by Surma
See All by Surma
Know thy buzzwords: HTTP/2
surma
1
600
Houdini Breakout Session
surma
4
720
Houdini – Demystifying CSS
surma
3
360
Progressive Web Apps – Mobile has natively come to the Web
surma
5
340
The Glorious Era of HTTP/2
surma
1
150
Instant Loading
surma
4
1.4k
HTTP/2 101
surma
5
550
What if there isn’t?
surma
0
120
What if there isn’t?
surma
2
220
Other Decks in Programming
See All in Programming
自作Discord音声botをLambda MicroVMsに移行した話 / Migrating My Discord Voice Bot to Lambda MicroVMs
akihisaikeda
0
150
見えないものを探る要求要件定義に必要な基本的思考 / invisible-requirement-thinking
minodriven
15
8.7k
Domain-Driven Transformation
hschwentner
2
2.3k
Coding with AI: How to trust the storyteller (AWS Community Day Adria, Ljubljana 2026)
slobodan
0
110
AI時代のコードレビューは人に向けるな、仕組みに向けろ
texmeijin
5
3.7k
AI-Powered Domain-Driven Design
ziobrando
0
280
[2026-10-09]一枚の布で作らなくてもいい。 信頼性は「パッチワーク」で紡がれる~既存の運用と新しい可能性をつなぎ合わせてきたCREの話~
tosite
0
110
ジョジョの世界をXRで再現する
mofurune
0
180
APNsからLive Activityを開始する話
yumnumm
0
170
あなたの await、OS まで届いてる? strace で覗く JavaScript の非同期
hasutosasaki
1
1.2k
機械に任せるテスト、人が見るテスト ⽣成AIで引き直した、運⽤保守フェーズの線引き
dske104
0
200
dotNET_vulnclicker_intro.pdf
deka_morita
0
150
Featured
See All Featured
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
450
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Automating Front-end Workflow
addyosmani
1370
210k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
1
290
[SF Ruby Conf 2025] Rails X
palkan
3
1.5k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
18k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
580
Facilitating Awesome Meetings
lara
57
7.2k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.4k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
610
Game over? The fight for quality and originality in the time of robots
wayneb77
1
310
Transcript
© GoBox – Swiss army knife for the Alexander Surma
command line
© Servers today are VMs
© Debian RAM: Disk: 60 MB 400 MB nothing inside™
© Debian RAM: Disk: 300 MB 650 MB because you
are worth it™ + FRAMPPP
© Debian RAM: Disk: 300 MB 650 MB because you
are worth it™ + FRAMPPP x5? x11? x20?
© Debian RAM: Disk: 300 MB 650 MB because you
are worth it™ + FRAMPPP x5? x11? x20?
© BusyBox Attempt Use aka. “My own distribution!!!11”
© BusyBox Attempt Use aka. “My own distribution!!!11” FAIL
© disk fgconsole fgrep find findfs flash_eraseall flash_lock flash_unloc ashcp
flock fold free freeramdisk fsck fsck.minix fsync ftpd ftpget ftpp user getopt getty grep gunzip gzip halt hd hdparm head hexdump host stname httpd hush hwclock id ifconfig ifdown ifenslave ifplugd ifup in nit inotifyd insmod install ionice iostat ip ipaddr ipcalc ipcrm ipcs iplin proute iprule iptunnel kbd_mode kill killall killall5 klogd last length les ux32 linux64 linuxrc ln loadfont loadkmap logger login logname logre losetup lpd lpq lpr ls lsattr lsmod lspci lsusb lzcat lzma lzop lzopcat akedevs makemime man md5sum mdev mesg microcom mkdir mkdos e2fs mkfifo mkfs.ext2 mkfs.minix mkfs.reiser mkfs.vfat mknod mkpas kswap mktemp modinfo modprobe more mount mountpoint mpstat m mv nameif nanddump nandwrite nbd-client nc netstat nice nmeter no nslookup ntpd od openvt passwd patch pgrep pidof ping ping6 e_progress pivot_root pkill pmap popmaildir poweroff powertop print intf ps pscan pwd raidautorun rdate rdev readahead readlink readprofi ealpath reboot reformime remove-shell renice reset resize rev rfkill rm dir rmmod route rpm rpm2cpio rtcwake run-parts runlevel runsv runsv rx script scriptreplay sed sendmail seq setarch setconsole setfont keycodes setlogcons setsid setuidgid sh sha1sum sha256sum sha512s BusyBox
© disk fgconsole fgrep find findfs flash_eraseall flash_lock flash_unloc ashcp
flock fold free freeramdisk fsck fsck.minix fsync ftpd ftpget ftpp user getopt getty grep gunzip gzip halt hd hdparm head hexdump host stname httpd hush hwclock id ifconfig ifdown ifenslave ifplugd ifup in nit inotifyd insmod install ionice iostat ip ipaddr ipcalc ipcrm ipcs iplin proute iprule iptunnel kbd_mode kill killall killall5 klogd last length les ux32 linux64 linuxrc ln loadfont loadkmap logger login logname logre losetup lpd lpq lpr ls lsattr lsmod lspci lsusb lzcat lzma lzop lzopcat akedevs makemime man md5sum mdev mesg microcom mkdir mkdos e2fs mkfifo mkfs.ext2 mkfs.minix mkfs.reiser mkfs.vfat mknod mkpas kswap mktemp modinfo modprobe more mount mountpoint mpstat m mv nameif nanddump nandwrite nbd-client nc netstat nice nmeter no nslookup ntpd od openvt passwd patch pgrep pidof ping ping6 e_progress pivot_root pkill pmap popmaildir poweroff powertop print intf ps pscan pwd raidautorun rdate rdev readahead readlink readprofi ealpath reboot reformime remove-shell renice reset resize rev rfkill rm dir rmmod route rpm rpm2cpio rtcwake run-parts runlevel runsv runsv rx script scriptreplay sed sendmail seq setarch setconsole setfont keycodes setlogcons setsid setuidgid sh sha1sum sha256sum sha512s BusyBox Written in C
© disk fgconsole fgrep find findfs flash_eraseall flash_lock flash_unloc ashcp
flock fold free freeramdisk fsck fsck.minix fsync ftpd ftpget ftpp user getopt getty grep gunzip gzip halt hd hdparm head hexdump host stname httpd hush hwclock id ifconfig ifdown ifenslave ifplugd ifup in nit inotifyd insmod install ionice iostat ip ipaddr ipcalc ipcrm ipcs iplin proute iprule iptunnel kbd_mode kill killall killall5 klogd last length les ux32 linux64 linuxrc ln loadfont loadkmap logger login logname logre losetup lpd lpq lpr ls lsattr lsmod lspci lsusb lzcat lzma lzop lzopcat akedevs makemime man md5sum mdev mesg microcom mkdir mkdos e2fs mkfifo mkfs.ext2 mkfs.minix mkfs.reiser mkfs.vfat mknod mkpas kswap mktemp modinfo modprobe more mount mountpoint mpstat m mv nameif nanddump nandwrite nbd-client nc netstat nice nmeter no nslookup ntpd od openvt passwd patch pgrep pidof ping ping6 e_progress pivot_root pkill pmap popmaildir poweroff powertop print intf ps pscan pwd raidautorun rdate rdev readahead readlink readprofi ealpath reboot reformime remove-shell renice reset resize rev rfkill rm dir rmmod route rpm rpm2cpio rtcwake run-parts runlevel runsv runsv rx script scriptreplay sed sendmail seq setarch setconsole setfont keycodes setlogcons setsid setuidgid sh sha1sum sha256sum sha512s BusyBox Written in C Security Worth a fuckall
© disk fgconsole fgrep find findfs flash_eraseall flash_lock flash_unloc ashcp
flock fold free freeramdisk fsck fsck.minix fsync ftpd ftpget ftpp user getopt getty grep gunzip gzip halt hd hdparm head hexdump host stname httpd hush hwclock id ifconfig ifdown ifenslave ifplugd ifup in nit inotifyd insmod install ionice iostat ip ipaddr ipcalc ipcrm ipcs iplin proute iprule iptunnel kbd_mode kill killall killall5 klogd last length les ux32 linux64 linuxrc ln loadfont loadkmap logger login logname logre losetup lpd lpq lpr ls lsattr lsmod lspci lsusb lzcat lzma lzop lzopcat akedevs makemime man md5sum mdev mesg microcom mkdir mkdos e2fs mkfifo mkfs.ext2 mkfs.minix mkfs.reiser mkfs.vfat mknod mkpas kswap mktemp modinfo modprobe more mount mountpoint mpstat m mv nameif nanddump nandwrite nbd-client nc netstat nice nmeter no nslookup ntpd od openvt passwd patch pgrep pidof ping ping6 e_progress pivot_root pkill pmap popmaildir poweroff powertop print intf ps pscan pwd raidautorun rdate rdev readahead readlink readprofi ealpath reboot reformime remove-shell renice reset resize rev rfkill rm dir rmmod route rpm rpm2cpio rtcwake run-parts runlevel runsv runsv rx script scriptreplay sed sendmail seq setarch setconsole setfont keycodes setlogcons setsid setuidgid sh sha1sum sha256sum sha512s BusyBox Written in C Security Worth a fuckall Extensibility Trololololo
© disk fgconsole fgrep find findfs flash_eraseall flash_lock flash_unloc ashcp
flock fold free freeramdisk fsck fsck.minix fsync ftpd ftpget ftpp user getopt getty grep gunzip gzip halt hd hdparm head hexdump host stname httpd hush hwclock id ifconfig ifdown ifenslave ifplugd ifup in nit inotifyd insmod install ionice iostat ip ipaddr ipcalc ipcrm ipcs iplin proute iprule iptunnel kbd_mode kill killall killall5 klogd last length les ux32 linux64 linuxrc ln loadfont loadkmap logger login logname logre losetup lpd lpq lpr ls lsattr lsmod lspci lsusb lzcat lzma lzop lzopcat akedevs makemime man md5sum mdev mesg microcom mkdir mkdos e2fs mkfifo mkfs.ext2 mkfs.minix mkfs.reiser mkfs.vfat mknod mkpas kswap mktemp modinfo modprobe more mount mountpoint mpstat m mv nameif nanddump nandwrite nbd-client nc netstat nice nmeter no nslookup ntpd od openvt passwd patch pgrep pidof ping ping6 e_progress pivot_root pkill pmap popmaildir poweroff powertop print intf ps pscan pwd raidautorun rdate rdev readahead readlink readprofi ealpath reboot reformime remove-shell renice reset resize rev rfkill rm dir rmmod route rpm rpm2cpio rtcwake run-parts runlevel runsv runsv rx script scriptreplay sed sendmail seq setarch setconsole setfont keycodes setlogcons setsid setuidgid sh sha1sum sha256sum sha512s BusyBox Written in C Security Worth a fuckall Extensibility Trololololo Maintainability 270k SLOCs? 700 applets? KConfig?
© disk fgconsole fgrep find findfs flash_eraseall flash_lock flash_unloc ashcp
flock fold free freeramdisk fsck fsck.minix fsync ftpd ftpget ftpp user getopt getty grep gunzip gzip halt hd hdparm head hexdump host stname httpd hush hwclock id ifconfig ifdown ifenslave ifplugd ifup in nit inotifyd insmod install ionice iostat ip ipaddr ipcalc ipcrm ipcs iplin proute iprule iptunnel kbd_mode kill killall killall5 klogd last length les ux32 linux64 linuxrc ln loadfont loadkmap logger login logname logre losetup lpd lpq lpr ls lsattr lsmod lspci lsusb lzcat lzma lzop lzopcat akedevs makemime man md5sum mdev mesg microcom mkdir mkdos e2fs mkfifo mkfs.ext2 mkfs.minix mkfs.reiser mkfs.vfat mknod mkpas kswap mktemp modinfo modprobe more mount mountpoint mpstat m mv nameif nanddump nandwrite nbd-client nc netstat nice nmeter no nslookup ntpd od openvt passwd patch pgrep pidof ping ping6 e_progress pivot_root pkill pmap popmaildir poweroff powertop print intf ps pscan pwd raidautorun rdate rdev readahead readlink readprofi ealpath reboot reformime remove-shell renice reset resize rev rfkill rm dir rmmod route rpm rpm2cpio rtcwake run-parts runlevel runsv runsv rx script scriptreplay sed sendmail seq setarch setconsole setfont keycodes setlogcons setsid setuidgid sh sha1sum sha256sum sha512s BusyBox Written in C Security Worth a fuckall Extensibility Trololololo Maintainability 270k SLOCs? 700 applets? KConfig? Don’t fucking think so.
© disk fgconsole fgrep find findfs flash_eraseall flash_lock flash_unloc ashcp
flock fold free freeramdisk fsck fsck.minix fsync ftpd ftpget ftpp user getopt getty grep gunzip gzip halt hd hdparm head hexdump host stname httpd hush hwclock id ifconfig ifdown ifenslave ifplugd ifup in nit inotifyd insmod install ionice iostat ip ipaddr ipcalc ipcrm ipcs iplin proute iprule iptunnel kbd_mode kill killall killall5 klogd last length les ux32 linux64 linuxrc ln loadfont loadkmap logger login logname logre losetup lpd lpq lpr ls lsattr lsmod lspci lsusb lzcat lzma lzop lzopcat akedevs makemime man md5sum mdev mesg microcom mkdir mkdos e2fs mkfifo mkfs.ext2 mkfs.minix mkfs.reiser mkfs.vfat mknod mkpas kswap mktemp modinfo modprobe more mount mountpoint mpstat m mv nameif nanddump nandwrite nbd-client nc netstat nice nmeter no nslookup ntpd od openvt passwd patch pgrep pidof ping ping6 e_progress pivot_root pkill pmap popmaildir poweroff powertop print intf ps pscan pwd raidautorun rdate rdev readahead readlink readprofi ealpath reboot reformime remove-shell renice reset resize rev rfkill rm dir rmmod route rpm rpm2cpio rtcwake run-parts runlevel runsv runsv rx script scriptreplay sed sendmail seq setarch setconsole setfont keycodes setlogcons setsid setuidgid sh sha1sum sha256sum sha512s BusyBox Written in C Security Worth a fuckall Extensibility Trololololo Maintainability 270k SLOCs? 700 applets? KConfig? Head Keyboard elaborate smashing Don’t fucking think so.
© Enter Go ...and forgive us our sins. (meaning C)
© Advantages of Go
© Advantages Statically linked of Go
© Advantages Statically linked Lightweight syntax of Go
© Advantages Statically linked Lightweight syntax Native concurrency of Go
© Advantages Statically linked Lightweight syntax Native concurrency Networking of
Go
© Advantages Statically linked Lightweight syntax Native concurrency Networking (Cross-platform
of Go
© GoBox
© GoBox Security Yup.
© GoBox Security Yup. Extensibility Yup.
© GoBox Security Yup. Extensibility Yup. Maintainability Yup.
© Breaking compatibility GNU’s bloated
© GoBox RAM: Disk: 6 MB 3 MB
© GoBox RAM: Disk: 6 MB 3 MB 1-2%
© Alexander Surma
[email protected]
twitter.com/surmair gplus.to/surma 78762.de gobox.asdf-systems.de github.com/surma github.com/asdf-systems/gobox
Me: GoBox: