Skip to main content
 

@Produces
Coffee produceCoffee(@Node @HalfnHalf MilkProduct milkProduct) {
.....
}


https://plus.google.com/photos/107786897865850743842/albums/6102481687489401041/6102481690632384722?...






 



Latest one that popped up:

-    float circleWidth = (float) Math.sqrt(
-        canvas.getWidth() * canvas.getWidth()
-        + canvas.getHeight() * canvas.getHeight()
-    )  - innerRadius;
+    float circleWidth = (float) Math.hypot(canvas.getWidth(), canvas.getHeight()) - innerRadius;









 

Someday ...

Someday ...

Originally shared by Singularity Utopia

It is possible to do with a G+ badge? I want the badge large for big screens so I set the width to 450 but it doesn't resize to fit like all my other elements, here in the image you can see the badge when zoomed-in is off the screen. Can you allow (make happen, implement) a 100% width instead of 450?

Here it is live: http://singularity-2045.org/

 

 

HashSets

Replacing static HashSet<String> with Java 7 string switch?

Has anyone investigated whether Java 7 switch is more memory efficient than HashSet<String> or ImmutableSet<String>?  I think it might be.  Read on....

I ask because HashSet is one of the more bloated java collection classes.  It uses 32 bytes for each used entry + an array for the capacity.  For example the follow
ing HashSet uses 128 bytes (2*32 + 16 * 4):

  private static final HashSet<String> FOO = new HashSet<>();
  foo.add("a")
shpub note --category=googplus --syndication=https://plus.google.com/107786897865850743842/posts/VPYQiMunRRY --published="Mon Dec 29 12:22:44 PM PST 2014" --name="" - <<EOF
Replacing static HashSet<String> with Java 7 string switch?

Has anyone investigated whether Java 7 switch is more memory efficient than HashSet<String> or ImmutableSet<String>?  I think it might be.  Read on....

I ask because HashSet is one of the more bloated java collection classes.  It uses 32 bytes for each used entry + an array for the capacity.  For example the follow
ing HashSet uses 128 bytes (2*32 + 16 * 4):

  private static final HashSet<String> FOO = new HashSet<>();
  foo.add("a")
  foo.add("b");

  boolean isFoo(String s) { return FOO.contains(s);}

We can replace that with:

  boolean isFoo(String s) {
     switch (s) {
        case "a":
        case "b":
           return true;
        default:
           return false;
     }
  }

Java 7 transforms this code into something like this:

    switch (s.hashCode()) {
       case -1234:
          return s.equals("a");
       case -55999:
          return s.equals("b");
       default:
          return false;
    }

Which maps to a tableswitch or lookupswitch.  Squinting it appears that you'd need the following for each entry:

tableswitch:
  per-entry: hashcode + result value (8 bytes)
  equals test: 4 opcodes (16 bytes)

So it would appear that you have 24bytes/entry.

Performance would be limited by the JVM/Dalvik/Art implementation of tableswitch which can be O(n)

Also obligatory reference to:

  http://blog.jamesdbloom.com/JavaCodeToByteCode_PartOne.html

http://blog.jamesdbloom.com/JavaCodeToByteCode_PartOne.html

 

 

Julie's Plane taking off

Julie's Plane taking off

 

 

Shout out to @110664632946820915121 in the new Doomtree track in the 2nd verse.

_Ay, I’m pushing up on your tempo_
_She too stoned Nintendo_
_I’m Vint Cerf, she Pink Floyd_
_I’m jumpin out the window_

Also a damn fine track.


http://genius.com/Doomtree-gray-duck-lyrics






 

TiL M-x google-compile









 

Old standards don't die they just fade away in a W3C working group.


http://www.w3.org/2014/12/opensocial.html.en






 


Where do Beekeeper and Groups intersect?  They seem to fulfill the same basic user need.  (And only one has full email integration.)







 

 

My fix.sh script

This contains anything that accepts a changelist in the form of -c XXXXXX

I just run this thing before I mail out CLs and has made my life easier.  Anything else safe that can be added here?  Next step I should add some kind of g4 mail trigger to just run this thing automatically......

#!/bin/sh
buildifier -a -v
/google/src/head/depot/google3/tools/java/remove_unused_imports.py --fix
/google/src/head/depot/google3/tools/java/sort_java_imports.py









 

Okay, here's an old one.

I actually interviewed with a towing company that became AutoReturn in 2001.  When I expressed concern about their business model the recruiter said: *we have an unfair advantage due to our relationships with people on the board of supervisors*.

I passed.









 

 

*Human Factors Design Handbook - 1981*

One can learn a lot by looking into how real Architects design things.  Airports, Parking Garages, Bathrooms, Missile Control Systems, Furniture, you name it, it's in there.  It also includes things highly relevant to our field like accessibility, design for failure, and social factors and privacy:

_Personal space factors are important in establishing the privacy requirements for architectural design._

Currently residing at the desk of @102103132265474854376   -- Check it out!


https://plus.google.com/photos/107786897865850743842/albums/6090541554277570881/6090541559340908530






 

Here's my slides talking about SEO for Google+

Email me at [email protected] and I will gladly add you to the webmaster tools for plus.google.com to see all the cool graphs.




https://docs.google.com/presentation/d/1Cpv9JlJ0r8jOHJioBU-OKqH3Kz5mnD1HTXAAxfqAolw/edit?_escaped_fr...






 

 

 

Subscribe to [email protected] and you too can learn about papers like this:


http://arxiv.org/abs/1411.0652






 

 

 - what feature would make it easier to help you share something?


http://kottke.org/06/06/vox-question-day






 

Was pondering how James Kirk would share on a social network and remembered that he always said Captain's Log,...

Was pondering how James Kirk would share on a social network and remembered that he always said Captain's Log, Stardate...  -- but then I found this.

 

1 Direction Hangout had visible effect in search queries to plus.google.com.  (Blue is impressions, red clicks.)


https://plus.google.com/photos/107786897865850743842/albums/6080909467251976817/6080909471461225522






 

 

 

 

 

Farewell

Farewell.

After a 4 month battle against cancer we made that hard yet logical decision to end the fight.  Tommy didn't visit Google often, but he always enjoyed the attention, laying in the grass, and walking the trails nearby.

Thanks to everyone that put up with my last minute cancellations for vet visits and the extra time I spent tending to his needs in his final months.

 

_Add support for [deprecated = true] on all types of definitions_

Fixed in 2.6.0

There was much rejoicing..


https://code.google.com/p/protobuf/issues/detail?id=329






 

[A]lmost all (92%) of the catastrophic system failures are the result of incorrect handling of non-fatal errors...

[A]lmost all (92%) of the catastrophic system failures are the result of incorrect handling of non-fatal errors explicitly signaled in software.

Check out the postmortems linked in the references.

 

*Beware the killer submit click*

- Accidentally click Submit on an approved CL in Critique
- Not knowing this edit said CL
- After tests pass, whatever is in client is submitted.
- See email, go WTF?!  Rollback
- .... 2 hours pass
- TAP catches up.
- Accept breakage reports for hours.









 

If we're doing interest based stuff we're definitely going to need a killfile.  In fact I'd say that it's more important than expressing interests.

We already support per-user and per-post ignoring.  Why not per-interest ignoring?


http://static.slated.org/killfile/killfilefaq.htm






 

So it appears that Pages that restrict visibility from the US will not get indexed in search.  I just checked this using webmaster tools and things don't show up.

I doubt that's what these page owners expect...

@107119856398345819723 / @106642279061626308531 - thoughts?

@102583327817215270776  I know we allow webmasters to geotarget whole domains, do we allow for a way to do it on a page-by-page basis using magic markup?


https://support.google.com/business/answer/4601912?p=audience_settings&hl=en&rd=1






 


K release name write in.

Endorsed by Chris DiBona -- worldwide rap connoisseur with his posse of commenters.

http://www.youtube.com/watch?v=6WJFjXtHcy4






 

Heads up webmasters -- please consider updating your javascript snippets.

Heads up webmasters -- please consider updating your javascript snippets.

Originally shared by Ilya Grigorik

All Google+ widgets have been updated to use the script[async + defer] pattern! E.g. +1 button docs: http://bit.ly/YHoj96

What's the benefit? Loading widgets via script[async+defer] does not block the document parser (see [1]), and allows the preload scanner to discover the script resource and initiate an earlier fetch (see [2]). Net outcome, both your page and the widget load faster! Have a G+ widget on your page? Check out the docs for guidance on how to update your snippets.

Kudos to the G+ team for taking the lead on this! Hope to see more widget providers adopt the same pattern.

[1] https://developers.google.com/web/fundamentals/performance/critical-rendering-path/adding-interactiv...

[2] https://www.igvita.com/2014/05/20/script-injected-async-scripts-considered-harmful/

 

If you have an org devoted to supporting power/'head" users I'd love to hear about it...  [post a comment or message me]

Looks like Youtube has this with real metrics and OKRs which is cool.

https://sites.google.com/a/google.com/yt1tomany-global









 

Tail latency == power user latency

The next time you ignore a few deadline exceededs ask yourself:  Where are the people affected on the participation curve.  Often they're the ones with thousands of blocked people, tons of posts and +1s and *your most valuable users*.  Call 'em whales if you like, but do not ignore them.

http://ross.typepad.com/blog/2006/04/power_law_of_pa.html

 

Bing Rewards are pushing this link on their crowd.  I earned 1 point for checking it out.

sneaky.

cc: @109983414620974200462


http://www.bing.com/classroom/showsupport?FORM=ML1020&OCID=ML1020&PUBL=RewardsDO&CREA=ML...






 

Managed to get OpenVPN-ng working.  Recommended if you live in Chrome Canary, like I do...


https://docs.google.com/a/google.com/document/d/19UhFhzFenS3zqu-TpFIh96FjFCg9I-VHRAb02mE0LdM/edit?_e...






 

Perf

My vet didn't realize that Perf was due last night and said Tommy should go home.  Just finished at 8:00am after staying up much of the night to get it done.

Going to sleep for a while and am glad I don't need to wear a massive flowery collar around...

 

Interesting take on Email based sharing for photos.

.. rewind : we were talking with Yahoo about supporting this use case a few years ago.  Not much came of it.


https://plus.google.com/






 

test with 'send email' checkbox

test with 'send email' checkbox

 

 

Search the html, not the content.  I can think of a bunch of ways that this is useful...


http://nerdydata.com/






 


IMO we need *Public* to be different from *Publicized*.  There are people that want stuff to be out there, but not promoted.  Give the user a choice here..

We've been through this hell many times.  User thinks their audience is small.  We blow it up big time:

- Google+ Shares of Youtube videos
- Photos on a Map
- next?

I've told this story many times, but when I was at hi5 we analyzed why people deleted their accounts.  A big percentage were people with photos that appeared in the hi5 version of 'What's Hot'.

http://www.allisonwoodruff.com/publications/2014-Woodruff-CHI2014-ReputationManagement.pdf






 

Heard most of this on the drive home yesterday on KZSU.  A great discussion of how technology mediated experiences affects our humanity.

Sometimes the bridge traffic backups are good for something.


http://www.hearsayculture.com/?p=1301






 

*This is how Googlebot fetched the page*

So my  with SEO got the shout out, so I guess I should tell you more...  I learned a few things about driving search traffic at some startups and at LinkedIn which really mastered the practice. When Authorship was unlaunched I noticed that we did quite poorly in this area.

So I got our sites verified on Google Webmaster tools and started going through a few checklists.  Bushels of low hanging fruit.  Many issues have been fixed, but there are many more to go.  I'm collecting resources on this sites page:

https://sites.google.com/a/google.com/oz/oz-documentation/seo

And here's a cover bug that lists many of the problems found:

https://b2.corp.google.com/issues/17438991

Also if you're interested in these issues I can add you to the webmaster tools sites.  You can see what people are searching for and what your pages look like to Googlebot.  And hopefully it's not like the /explore page (which is fixed in http://cr/75340820)

[we now return you to your I release code freeze scramble]


https://plus.google.com/photos/107786897865850743842/albums/6058268239207694881/6058268240831870450






 

*going to mow the new kia*

Hangouts/GV needs a share button...

_Yay. G. Any has called Smart day event for Thursday. September 11th 2014. For your residence asked. 2. So record, press 1 to continue this message in English. Hope you guys do. But I just could you estimate so I can explain yours. Bye. Yay. G. Any has called Smart day event for Thursday. September 11th 2014. For your residence asked. 2. So record. But I spend your in 5 order monday newsreel a lenient. Remember to reduce your energy use between 2 PM and 7 PM Yes 8 energy point electric rates are high. S. Yeah for more information. Your update your notification preferences. Yeah, including our new S M S text notification message. Yeah, please visit, your B M W W dot T T E dot com. Yeah forward slash your mate your call. 1. Yeah 866. Yeah 743. Yeah, 0263 P. G. N. T. I've heard of them out a living, but I just wanted to do 818 point base 6 PM at a home signals me got going to see. Hey, this is a me see if you those, that'll be cool with bye. But according to the refusal going to mow the new kia and they love those we may see if you gave me. But I was gonna that he One of the study for the legs, we got some. S. S. S. By opening a messing from a few. And ohh but I thought you said listening to The know if you got to you and your trouble, B, C, D Yeah, we will go to the renewal. Yeah, so yay. She E yo dot com. Yeah bad. After Tomorrow. Great. Based on your yo Jeremy, irons, ohh no your toes face face. Yeah see if they go out of the days. Yeah fatal dose face to face. Thank you. Bye bye._