Beyond the
Distributed System
Verónica López
dotGo 2015
Slide 2
Slide 2 text
Developers around the world adopt a programming
language for many different reasons:
• It’s cool: everybody’s using it
• They saw it in Hacker News
• It’s actually a great tool to solve their problem
• Their employer requires them to learn it
• It makes money
Slide 3
Slide 3 text
On the other hand…
Real-life programmers who use the lang for day-to-day stuff
~Cool projects~people
Contributors
Slide 4
Slide 4 text
• Outside of tech bubbles, people use the languages
to make their lives easier, not to create the next big
project
• Not everybody dreams about creating distributed,
scalable and concurrent systems…
Slide 5
Slide 5 text
No content
Slide 6
Slide 6 text
• Like it or not, over the years, these people are the
ones who define whether a tech tool is succesful or
not. Think of:
• Schools
Slide 7
Slide 7 text
the interesting use cases
Slide 8
Slide 8 text
The Android Case
• As of 2014, we can build Android apps with Go
• People complained about the building system and lack of
documentation (o/)
• Whining almost made us miss the most awesome point: you can
now create mobile apps with Go (Evil Java, I see you).
Slide 9
Slide 9 text
Truth is…
Slide 10
Slide 10 text
However, this hasn’t stopped people from
creating awesome apps (beyond demos)
Slide 11
Slide 11 text
Lantern
• Lantern is a desktop app that
delivers fast and reliable
access to the Internet
• Proxy tool lets you access
blocked sites. Useful for
countries with censored
Internet. (Or office)Built with
Go
Slide 12
Slide 12 text
Firetweet
• Android app powered by
Lantern. Unblocked access to
Twitter.
• HTTP traffic routed through a
distributed network of direct
proxies
Slide 13
Slide 13 text
• Firetweet was built for Android with the SDK option:
Java code using Go as a cross-platform library.
• Used a lighter version of Lantern (less features, still
in Go).