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
430
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
710
Houdini – Demystifying CSS
surma
3
350
Progressive Web Apps – Mobile has natively come to the Web
surma
5
330
The Glorious Era of HTTP/2
surma
1
140
Instant Loading
surma
4
1.4k
HTTP/2 101
surma
5
540
What if there isn’t?
surma
0
120
What if there isn’t?
surma
2
220
Other Decks in Programming
See All in Programming
Go のフラットな パッケージに 「ファイル単位の private」を 〜Linter “declscope” を作った話〜
mpyw
0
310
20260914 AIエージェント時代のPlatform Engineering LLM基盤とプロダクトの責務境界線
kanfab1
6
1.9k
テストを司るデーモンに会いに行く 〜隔離した仮想マシンでテストを通すまで〜
h1d3mun3
1
350
AIエージェント時代のコードレビューを設計する
nogu66
6
2.7k
TiDB Cloudのカスタムコントローラーによるオートスケール対応
takaidohigasi
0
110
VueプロジェクトをTypeScript7に対応させる- Side-by-Side戦略による一部高速化 -
koukimiura
0
110
Are APIs Still Relevant in the AI Era?
soyuka
0
210
モジュールの視点からSwiftを読み解く #iosdc
s_shimotori
0
170
AgentCore CLI で進化した AWS での AI エージェントの作り方 : 必要な機能を必要な時に
icoxfog417
PRO
3
340
DroidKaigi 2026 「個人開発という実験場: Android エンジニアが手にする4つの自由」
slashnephy
0
230
フロントエンドUIフレームワークのこれまでとこれから
ssssota
5
2.7k
{ Android | Kotlin } Gradle Plugin in 2026
ryunen344
1
320
Featured
See All Featured
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
540
Producing Creativity
orderedlist
PRO
348
41k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
520
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.9k
Being A Developer After 40
akosma
91
590k
Are puppies a ranking factor?
jonoalderson
2
3.9k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.8k
A designer walks into a library…
pauljervisheath
211
25k
We Have a Design System, Now What?
morganepeng
55
8.3k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
240
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
3
4.3k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
450
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: