
Google Shares Experience of Using Ubuntu in their Offices - arb99
http://www.ubuntuvibes.com/2012/05/how-google-developers-use-ubuntu.html
======
Periodic
What I'm curious about is how much control they are willing to give their
developers over their workstations. At a previous company they had trouble
because the developers needed administrator access to their Windows systems
because they needed to install a lot of different software and run many things
in administrative mode (server development). It was a constant tension between
developers and security. I wonder how it is with Linux, which might have more
fine-grained controls and an easier way to install per-user software.

I'm surprised xmonad got a mention. I interpreted it as a window manager that
didn't have much traction outside of the Haskell community, particularly with
all the configuration being done in Haskell. Perhaps it was just an example of
an one of the more strange requests.

That said, I love xmonad. People keep asking me for help with their Gnome
desktops and I have to shrug and point out I don't really use Gnome if I can
get away with it.

~~~
jmillikin
(I work at Google)

A few employees in particularly security-sensitive positions don't have full
root, and have to use "sudo" with a whitelist of commands, allowed packages,
and so on. It's fairly easy to get packages added to the whitelist, by filing
a request with the security team.

Users who need to run insecure operating systems, or need to install arbitrary
packages, use heavily sandboxed VMs.

Two members of my current team used xmonad before I got here, and I've helped
two more to convert. I anticipate there will be more conversions after Precise
comes along and forces everyone off GNOME 2. To my knowledge, none of them
know anything about Haskell.

~~~
dkersten
My question is: why XMonad over one of the other tiling window managers, eg
AwesomeWM? Just curious what XMonad has to offer that I may not know about (I
personally use Musca).

~~~
jrockway
Because XMonad is library for writing your own window manager rather than just
a pre-built window manager. That means that everything will always work
exactly how you want it to because you're the one programming it.

Also, awesome used to crash a lot.

~~~
dkersten
I don't use awesome myself so I don't know about it crashing, but it appears
to be a base to build your own system from, in the sense that most of the
functionality comes from extensions written in Lua.

Musca, my window manager of choice currently (though I am beginning to try out
others too, just in case I'm missing something), is a very small WM with very
few features, but a very simple way of extending it through scripting (in any
language).

Musca itself is tiny: little under 4K lines of C (including whitespace and
comments), the binary is about 190KB. It delegates its "menu" to dmenu. If you
want anything else, you use external scripts or programs.

------
sixbrx
I work in the FDA, and it almost takes an act of congress to get root on
developer workstations. Also we can't install software unless it's on the the
MAT (master approved technologies) list. Which is pretty ironic, because we
create software ourselves, which is of course not on that centrally
maintained, slow to change list. So we're not sure if we're actually allowed
to ever run the results of our compiles. Nobody wants to ask because we might
not like the answer...

~~~
jrockway
Bank of America was like that. One former colleague wanted shell logins on a
windows box, but was denied permission to install cygwin sshd. So he wrote his
own version that listened to a port and executed the unauthenticated command
sent to that port. And that was 100% within policy.

~~~
Drbble
It is reasonable to trust your developers but not trust unaudited third party
code.

~~~
njharman
Unaudited third party code like Windows"?

------
joe_the_user
_"However, not many employees like new UI changes meant for consumers and not
developers. Some of the Google employees also requested removing Unity and
Gnome 3 and using xmonad instead."_

This.

Google is exactly the company that would use Ubuntu. They're not the company
that would want unity. So WTF were they thinking?

Basically, some time on the earlier 2000's, someone decided the "secret" of a
good Linux UI was a UI "for dummies". Whoever decided this was wrong, pathetic
and contemptible. As alternative OS for an alternative desktop, Linux needs to
be easy yes, but also powerful enough to give an exciting experience to those
smart and adventurous people willing try something new, not a shitty copy of
cartoonish UIs intended for morons. IE, the idiots who are targeted by Unity
will not lift a finger to actually install it. The people who would try Ubuntu
on their own deserve better than Unity.

~~~
res0nat0r
Please stop saying 'this'. Just reply with your comments. Thank you.

~~~
zerostar07
not this. 'this' is a shortcut to 'i concur' or any other phrase meaning
agreement which would be in the comment anyway. isn't it shorter to just say
'this'?

~~~
res0nat0r
Shorter doesn't automatically equal better. Keep the abbreviations where they
belong: text messages. All online message board communication seems to be
devolving slowly into text message speak and I don't think it is a good thing.

------
NelsonMinar
The summary mentions "...won't be upgraded to Precise until next year because
of a nasty Python 2.7 incompatibility bug." What's the bug?

~~~
nswanberg
I was curious about that too. If you listen to the video at 12:26
([http://www.youtube.com/watch?&v=fu3pT_9nb8o#t=746s](http://www.youtube.com/watch?&v=fu3pT_9nb8o#t=746s)),
he has made that up as a reason why a team might not upgrade from Lucid to
Precise, not that there is currently any such issue.

~~~
codexon
I have found at least 3 problems upgrading to Ubuntu 12.04. I have upgraded 4
of my servers and found the following problems.

1\. The ia32-libs package uninstalled itself somehow, causing all my 32bit
programs to fail start back up if they restarted.

2\. @reboot cronjobs ran 2 minutes after the machine booted in kern.log. I
accidentally started the programs manually because I thought they wouldn't
run.

3\. On a fresh install, the byobu network display doesn't show up.

------
why-el
7 minutes into the video and I am glad to hear Google is considering offering
Google Drive for linux. A free Dropbox/Drive combo will fit my needs for the
moment.

~~~
gioele
What Linux really needs is well documented protocols, not applications. See
how integrated GTalk is in any Linux desktop and how differently is Skype
treated.

At the same it is nice to have a nice client as a binary package just to
kickstart the efforts, but it never a good long term plan.

~~~
drivebyacct2
Do you mean Linux needs Drive to offer "well documented protocols"?

Otherwise I don't know what "Linux[...] protocols" you're referring to or how
it's relevant to GTalk vs. Skype, etc. Skype integrates poorly because it's
locked down and has been neglected for... 4 years?

~~~
gioele
> Do you mean Linux needs Drive to offer "well documented protocols"?

Grandparent wrote:

>>> I am glad to hear Google is considering offering Google Drive for linux.

My point is that Google should not focus too much on developing yet another
synchronisation program locked on Google Drive; what they should do is
publishing and maintaining a detailed set of protocols that can be implemented
by the existing synchronisation programs that are already well integrated in
some Linux desktops (DejaDup, for example).

Skype integrated poorly in Linux desktops because there are no publicly
accessible and complete Skype protocol specification. This makes it very hard
to integrate it into current applications (the telepathy frameworks, for
example). There are nice hacks like pidgin-skype: a bridge that interacts with
Pidgin and relays user actions to an hidden Skype window, but they are
unreliable hacks because they aim at a constantly moving target. (Well, not so
moving now that Skype seems abandoned on Linux.)

~~~
drivebyacct2
Sorry for the misunderstanding. This is what I'd hoped you meant and I
couldn't possibly agree more. Unfortunately, the propreitary nature of both
products makes me skeptical about how likely this is to happen for Skype,
maybe even Drive, although there are already oAuth APIs (That require a Chrome
Web Store app nonetheless)

------
djeikyb
Direct link to video: <http://youtu.be/fu3pT_9nb8o>

------
tzs
Is that the same Thomas Bushnell who was the primary architect for HURD until
he said he didn't think the GFDL was free enough and got kicked off the
project by RMS for that heresy?

~~~
btilly
I didn't know about that incident, but it is definitely the same Thomas
Bushnell.

------
darksaga
I found it interesting they made a point about rebooting. Considering if you
had people turn off their PC's at night, you could save almost double that
when you take into account the energy it takes to run a PC and a single
monitor. Although most employees I'm sure would be running dual monitors.

If they were indeed running Linux (which boots at least 5X faster than
Windows) you could easily make an argument for the exact opposite.

~~~
tonfa
But then you can't ssh to your desktop if you need it.

~~~
bconway
<http://en.wikipedia.org/wiki/Wake-on-LAN>

------
jiggy2011
How does rebooting a workstation set them back a million dollars?

~~~
stfp
I think he meant rebooting everyone's workstation - at 35K employees even a
couple minutes per person is something you probably want to avoid wasting.

~~~
gbog
I don't like this way of thinking. The two or even ten minutes you spend not
using your PC are not lost. It could be a unique occasion to talk to your
colleagues, it could be time well spent cleaning some papers. If you think by
the minute if work, then you better start eating pills instead off lunch, use
headphones during commute and check emails while watching sunset with gf. We
ain't no robots, sir.

~~~
keithpeter
"The two or even ten minutes you spend not using your PC are not lost. It
could be a unique occasion to talk to your colleagues, it could be time well
spent cleaning some papers."

I think that is true if _you control when the reboot happens_. If it just
happens then it might be at exactly the wrong time.

~~~
gbog
If you control when the reboot happens, you will plan something for it. What I
think is absolutely necessary in our lives, even for those at Google, is a
significant amount of unplanned events, unexpected experiences, or any other
occasion to prove to yourself, to feel deeply inside, that you are not a
robot.

Maybe it is personal, maybe it is cultural, or maybe it isn't: I don't like
(an understatement) fully planned trips where you are told "the 8th of July at
10:45, you will get an artistic ecstasy in fron of the Taj-Mahal, the 9th
[...]". I won't work on anything that has no risk to be hard to control and
nothing unexpected can happen. I don't mind if my PC has to be off for 10
minutes.

("Disclaimer": I live in China, not in Switzerland.)

~~~
keithpeter
I work as a teacher. I can plan lessons as much as I like (and today I'm
planning for an observed lesson next week or week after) but I can tell you,
something unexpected _always_ happens in the actual lesson. The plan lasts 20
minutes if that. The rest is 'reflection in action' to quote Schon.

------
diminish
Wish Google had mostly used Linux on desktops; would be a strong motivator for
the rest of the world to get better hardware certifying for Linux.

~~~
icco
Isn't that exactly what this is about? Seems like Google uses Linux on
everything according to the video.

~~~
brown9-2
I suppose it varies between office/department but when I interviewed there 2
years ago I saw nothing but MacBooks.

~~~
packetslave
You get a choice when you join: Macbook Pro, Macbook Air, or a couple of
varieties of Thinkpad running Goobuntu.

~~~
luser001
How about Macbook Pro running Goobuntu?

~~~
packetslave
Frowned upon for supportability reasons, even if you made it work with all the
corp management stuff.

But like drbble said, laptops for engineers are mostly for Chrome, terminals,
and NX/VNC sessions, since you can't code on them directly.

~~~
drivebyacct2
So they're exclusively thin clients presumably for security reasons? Is that
the take away? Sorry if I'm being thick.

~~~
packetslave
I wouldn't say they're _exclusively_ thin clients; you can run more or less
whatever apps you want (I use Omnifocus, Graffle, bunch of other stuff). But
source code isn't allowed on laptop HDD's, so most engineers develop remotely
on their workstations via SSH/remote-desktop.

------
j_baker
I will say this: Google has really good developer tools in general. I have had
to spend far less time setting up software on my workstation than I ever have
at any other job. Between using Ubuntu and some internal tools, I spend far
less time installing software and more time writing software.

Although I should note that _certain_ security systems are notoriously
annoying to say the least.

------
jeffnappi
I've written a post on our company blog about our heavy use of Ubuntu
including Diskless fat-client workstations..

[http://blog.iacquire.com/2012/05/15/how-iacquire-makes-
use-o...](http://blog.iacquire.com/2012/05/15/how-iacquire-makes-use-of-
ubuntu-linux-workstations-its-not-just-for-developers/)

------
rwmj
What's interesting, I think, is that "Linux", "GNU", "Red Hat" (who write most
of the software), "BSD", "free software" are not mentioned in the main
article.

------
insaneirish
Based on what I've seen here, Google needs to have more presentation skills
classes.

~~~
adgar
I haven't watched the linked video yet, but my only complaint as a Google
engineer about our employees as presenters is that engineers are often
ineffective moderators.

