Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Building Desktop Utilities in Go
Search
csaunders
October 23, 2014
Programming
0
61
Building Desktop Utilities in Go
Talk I did about building programs in go and some useful libraries that make building them easier.
csaunders
October 23, 2014
Tweet
Share
More Decks by csaunders
See All by csaunders
Teaching Garbage Collection
csaunders
0
65
Building Games for Fun, Feedback and F... learning
csaunders
1
200
Dev to Deploy
csaunders
0
150
Unit Testing Outside of Models
csaunders
2
140
Unit Testing and Git
csaunders
1
160
iOS Storyboards
csaunders
0
200
Design Patterns in Ruby
csaunders
9
330
Other Decks in Programming
See All in Programming
Effect の双対、Coeffect
yukikurage
5
1.4k
Javaに鉄道指向プログラミング (Railway Oriented Pro gramming) のエッセンスを取り入れる/Bringing the Essence of Railway-Oriented Programming to Java
cocet33000
2
540
CSC307 Lecture 17
javiergs
PRO
0
110
Go Modules: From Basics to Beyond / Go Modulesの基本とその先へ
kuro_kurorrr
0
110
技術懸念に立ち向かい 法改正を穏便に乗り切った話
pop_cashew
0
1.3k
単体テストの始め方/作り方
toms74209200
0
430
Development of an App for Intuitive AI Learning - Blockly Summit 2025
teba_eleven
0
110
Beyond Portability: Live Migration for Evolving WebAssembly Workloads
chikuwait
0
340
The Evolution of Enterprise Java with Jakarta EE 11 and Beyond
ivargrimstad
1
610
機械学習って何? 5分で解説頑張ってみる
kuroneko2828
0
200
UPDATEがシステムを複雑にする? イミュータブルデータモデルのすすめ
shimomura
1
530
Elixir で IoT 開発、 Nerves なら簡単にできる!?
pojiro
1
120
Featured
See All Featured
RailsConf 2023
tenderlove
30
1.1k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
4
130
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
The Language of Interfaces
destraynor
158
25k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Music & Morning Musume
bryan
46
6.6k
Why You Should Never Use an ORM
jnunemaker
PRO
56
9.4k
Transcript
Building Desktop Utilities in Go
Libraries
Flag import “flag”
fsnotify import "gopkg.in/fsnotify.v1"
Recursive fsnotify
Recursive fsnotify
Curses import "github.com/nsf/termbox-go"
None
None
Building your own Libraries & Binaries
None
None
Why?
None
programs
–Some old dude “Do one thing and do it well.”
None
Phoenix theme synchronization for everybody
•shopify_theme (ruby) - janky •gothemego (go) - ¯\(°_o)/¯ •themebox (ruby
& rails) - slow
–me on debugging every shopify_theme Windows issue ever “I’ll try
to replicate this when I get home”
Why Go over X?
Halp!
Questions?
• Libraries • http://github.com/csaunders/phoenix • https://github.com/howeyc/fsnotify • https://github.com/nsf/termbox-go • http://golang.org/pkg/flag/
• Articles • https://inconshreveable.com/09-09-2014/sweat-the- small-stuff/ • http://arslan.io/ten-useful-techniques-in-go • https://medium.com/@benbjohnson/structuring- applications-in-go-3b04be4ff091