So now I finally know who made that awful smart compose thing in gmail [1] (the one that hides all but 2 lines of the message that you're trying to write, most of the time):
Maria what have you done ?!!!
Google finally added an preference setting that provides a reasonably sized compose window, but (presumably) in keeping with their new interface guidelines, it's well hidden to prevent accidental discovery.
To change it, you need to open a compose window and click on the "down arrow" in the lower right corner. You can then choose the option "Default to full screen". It still pretends to be a pop-up window, but it's large enough for real use.
Arguably, this is a reasonable place to put this setting: it affects only the compose window, so the setting is only accessible from the compose window. But personally I never would have found it without searching the web for a solution.
"It's really an exciting field because you can have a group of 2, 3 or 4 people produce something that is used by hundreds of millions or billions of people using your software and benefiting from the capabilities that it has. There are very few careers where small groups of people can have this kind of influence..."
Why do they need tens of thousands of engineers, then?
They make a ton of things - if you're part of the 10 person team working on let's say - the "Search" button - clearly millions of people are using your software - but the impressive part isn't the UI of that button it's the "magic" behind it.
I would say most of Google's products that eventually reach the bigger mass are black swans. Best way to reproduce them? Add a lot of stress, tens of thousands of engineers is quite lot stress.
I literally facepalmed at your comment. Google does so much that it's a miracle they get all this done with tens of thousands of engineers. Companies that create CRUD operations have upto 200k employees doing just that.
Also no remote work either.
To be honest I totally understand Google's approach here - let the young and bright live their entire lives on campuses, dump them when they're no longer productive or want family or just life outside of work.
As a correlation to this site, there is a secret programming challenge within google at: http://www.google.com/foobar/
You have to get invited to it (via searching the correct keywords, etc. I got invited when googling about dependency injection). It is a series of programming challenges that get really difficult. But after completing them, I got a final round interview at Google, which was pretty cool.
I've been working through them and the difficulty has been all over the map. I've gotten a couple of [what I thought were] moderately hard, whereas one problem basically had a very complicated phrasing, but the answer ended up being [length of the input vector] - 1, plus some other trivial ones.
It's pretty fun though, even if you're not looking for an interview.
Maybe it's too early on a Monday and my reading comprehension is off, but I'm not sure I get the point of this. Is this just a fancy blog for engineering stories as a means of hiring more engineers? If so, I'm not sure the magazine-like reporting style is speaking to me here. I'd much rather see these types of stories in a first-person, conversational blog format. But maybe I'm missing the point, or I'm the wrong target.
To me the most interesting of these was the solution to collaborative editing in Google Docs. Sadly the description provided is a helicopter view. It appears to reference OT[1] and is suggestive of the event sourced pattern[2]. My interest is piqued; can anyone reference an in-depth publication/paper on the D&I of their "collaboration engine"?
Google Wave used operational transformation in their protocol[1]. I've always assumed that the lessons learned on Wave got reused in the Google Docs rewrite.
Not sure if this is what you're looking for but I've been working on a collaborative coding environment for clojurescript lately and am implementing the algorithm from this (incredibly readable) paper https://neil.fraser.name/writing/sync/
One thing I find interesting about programming forums is without fail, a good portion of every discussion divulges into off topic, largely useless and redundant commentary on one of the following:
- Page uses JavaScript (when it doesn't need to)
- The page uses too many animations
- The page size is too large
While I love hacker news discussion for the most part, these reoccurring themes seem to never, ever die.
Cool site, but it's really too bad Google isn't willing to open up offices outside of California (like, say, Portland? :) ). I'd like to see them innovate the remote teams space, but maybe that's too difficult a challenge for them?
Regardless of the content the design of that website is pretty great. The pages load almost instantly! Can anyone with more front-end knowledge tell me what's going on under the hood?
I think its interesting that the original term 'fubar', which has an adult and cynical meaning, has morphed into something that literally could mean anything: 'foo' 'bar'. The fact that this thing that has no real meaning is meaningful enough to warrant a TLD, is perhaps fubar in its truest form?
Your comment follows a worrying trend I've been seeing on HN:
1) Start humbly by saying you might be wrong / you're not sure / ...
2) Criticize the work showed in the link from your personal opinion, without real arguments.
3) End in the same way: "Just saying." "I hope I'm wrong".
Yes, this "just a fancy blog for engineering stories as a means of hiring more engineers". I'm not sure how one can say such a precise thing without being sure.
Edit: I should probably add that it isn't halflings' comment alone, but the fact that the entire discussion went massively meta, that made this subthread problematic.
I think that's the right approach when you're commenting based on your personal opinion, so I'm not sure what you find so worrying about that. This pattern has been the root of a lot of great discourse I've experienced both in person and in text forums.
This is just how people should communicate with each other. It's polite, it invites others to be civil yet still argue with your point, and it doesn't appear arrogant.
If I enter a conversation where I'm unsure how the audience will interpret my opinion, I'll start by making sure everyone knows that I'm open minded, have an opinion, and have no expectation of others to have the same.
I'll follow-up with my thoughts on the matter, and close by reassuring my audience that it's just an opinion, I'd love to hear their arguments too, and yes, I AM confident in my views, but I've certainly been wrong in the past, so I'm all ears.
This comment also follows a worrying trend: Attempting to put a person down for ones own personal enjoyment while adding nothing to the actual discussion. The original comment was not perfect but it was at least on subject.
[+] [-] growt|10 years ago|reply
[1] https://bar.foo/gmail.html
[+] [-] nkurz|10 years ago|reply
To change it, you need to open a compose window and click on the "down arrow" in the lower right corner. You can then choose the option "Default to full screen". It still pretends to be a pop-up window, but it's large enough for real use.
Arguably, this is a reasonable place to put this setting: it affects only the compose window, so the setting is only accessible from the compose window. But personally I never would have found it without searching the web for a solution.
[+] [-] iainmerrick|10 years ago|reply
Why do they need tens of thousands of engineers, then?
[+] [-] inglor|10 years ago|reply
[+] [-] heurist|10 years ago|reply
[+] [-] iokanuon|10 years ago|reply
[+] [-] kaugesaar|10 years ago|reply
[+] [-] sidcool|10 years ago|reply
[+] [-] gtrubetskoy|10 years ago|reply
[+] [-] xchaotic|10 years ago|reply
[+] [-] mehta|10 years ago|reply
(I work there)
[+] [-] akhilcacharya|10 years ago|reply
[+] [-] itslennysfault|10 years ago|reply
(I don't work for google... I just know stuff)
[+] [-] st3v3r|10 years ago|reply
[+] [-] iamandoni|10 years ago|reply
You have to get invited to it (via searching the correct keywords, etc. I got invited when googling about dependency injection). It is a series of programming challenges that get really difficult. But after completing them, I got a final round interview at Google, which was pretty cool.
[+] [-] gh02t|10 years ago|reply
It's pretty fun though, even if you're not looking for an interview.
[+] [-] _vn5r|10 years ago|reply
[+] [-] unknown|10 years ago|reply
[deleted]
[+] [-] morley|10 years ago|reply
[+] [-] inglor|10 years ago|reply
That is not the case anymore and there are a lot more people who choose to work for other companies - even large ones.
It only makes sense that among the ton of other effort Google pours towards hiring good engineers it does this.
This is just a marketing venue.
[+] [-] inopinatus|10 years ago|reply
[1] https://en.wikipedia.org/wiki/Operational_transformation
[2] http://martinfowler.com/eaaDev/EventSourcing.html
[+] [-] javaJake|10 years ago|reply
[1] http://www.waveprotocol.org/whitepapers/operational-transfor...
[+] [-] akjetma|10 years ago|reply
[+] [-] shimon|10 years ago|reply
[+] [-] subie|10 years ago|reply
[+] [-] btdiehr|10 years ago|reply
- Page uses JavaScript (when it doesn't need to)
- The page uses too many animations
- The page size is too large
While I love hacker news discussion for the most part, these reoccurring themes seem to never, ever die.
[+] [-] huac|10 years ago|reply
[+] [-] vmorgulis|10 years ago|reply
[+] [-] tambourine_man|10 years ago|reply
[+] [-] dheera|10 years ago|reply
[+] [-] dclowd9901|10 years ago|reply
[+] [-] morgante|10 years ago|reply
Uh, Google has offices all over the world (including major engineering in other US cities).
https://www.google.com/about/company/facts/locations/
[+] [-] accountatwork|10 years ago|reply
Google has teams in Portland and the office has grown enough that they just got a new building: http://www.google.com/about/careers/locations/portland/
[+] [-] tonetheman|10 years ago|reply
[+] [-] DroidX86|10 years ago|reply
[+] [-] giancarlostoro|10 years ago|reply
[+] [-] chei0aiV|10 years ago|reply
[+] [-] happytrails|10 years ago|reply
[+] [-] aidenn0|10 years ago|reply
[+] [-] unknown|10 years ago|reply
[deleted]
[+] [-] orliesaurus|10 years ago|reply
[+] [-] new_hackers|10 years ago|reply
[+] [-] halflings|10 years ago|reply
1) Start humbly by saying you might be wrong / you're not sure / ...
2) Criticize the work showed in the link from your personal opinion, without real arguments.
3) End in the same way: "Just saying." "I hope I'm wrong".
Yes, this "just a fancy blog for engineering stories as a means of hiring more engineers". I'm not sure how one can say such a precise thing without being sure.
[+] [-] dang|10 years ago|reply
Edit: I should probably add that it isn't halflings' comment alone, but the fact that the entire discussion went massively meta, that made this subthread problematic.
[+] [-] andrewstuart2|10 years ago|reply
[+] [-] dpcan|10 years ago|reply
If I enter a conversation where I'm unsure how the audience will interpret my opinion, I'll start by making sure everyone knows that I'm open minded, have an opinion, and have no expectation of others to have the same.
I'll follow-up with my thoughts on the matter, and close by reassuring my audience that it's just an opinion, I'd love to hear their arguments too, and yes, I AM confident in my views, but I've certainly been wrong in the past, so I'm all ears.
[+] [-] brentm|10 years ago|reply
[+] [-] maxaf|10 years ago|reply
[+] [-] netghost|10 years ago|reply
[+] [-] lisper|10 years ago|reply
bar.foo: Stories from software engineers at Google