Skip to main content
 

 

The SNS space keeps shifting.  Hyves is now moving from a general purpose social network to a gaming focused one.

I hope that works out better from them than it did for hi5.


http://hyves-corporate.pr.co/63596-hyves-transformeert-naar-online-gaming-portal






 

*Day of the Dead (code)*

Find dead build targets at http://deps/unused  then do this:

  blaze build devtools/janitor/terminator
  sed 's/ .*//' |xargs -n 1 blaze-bin/devtools/janitor/terminator
  ** PASTE LINES FROM deps/unused **
  ^D









 

I had to show this to a few people this weekend to help them understand my human cannonball t-shirt.


http://www.youtube.com/watch?v=HSizGn8vbFQ






 

Would using the term _Google+ deniers_ be too harsh?









 

One benefit of missing the shuttle is visiting the West Oakland McDonalds and observing the use of technology. Pretty much the opposite of Google demographics you can find anecdotal societal changes first hand at the WiFi watering hole.

Mobile first. Yes
Bluetooth headsets - more than you'd think.
Parents and kids on ancient wintel laptop.
Multiple IPads with keyboards.

Religious argument ended with "Look it up on YouTube!"



https://plus.google.com/photos/107786897865850743842/albums/5941325952242369169/5941325947220876290?...






 

Whatever's on the barge in the bay better be good.  Otherwise William Gibson and I will both be disappointed.

_"He's at Google CAZ. See the knuckle tats?" They all dress like 50s longshoremen, particularly the women._


https://twitter.com/GreatDismal/status/395649357791248384






 

Farewell iGoogle and your hundreds of quality Zombie gadgets.

For perspective Campfire 1 was 6 years ago on Nov 1st.  At hi5 we wanted to create a Day of the Dead gadget but ran out of time (hi5 was super popular in south/central america, so it would have been a natural fit..)


https://plus.sandbox.google.com/photos/107786897865850743842/albums/5940941643516135201/594094164049...






 

T-Mobile user with a grandfathered plan?

Install this before you upgrade to KitKat...


https://play.google.com/store/apps/details?id=com.pdanet#body-content






 

Be careful removing 'unused import' for protos.  strict deps don't apply in this case so you'll want to test compile with global presubmit...









 

IE9 - the doughnut hole of web animation...

svg works well on all browsers except IE8, and Gingerbread
css3 animation works on IE10+
svg smil?  everything with svg, but not on IE at all.
requestAnimationFrame?  nope.

http://caniuse.com/


http://caniuse.com/






 

We need pet names for KG

then I can query "name of deadmau5's cat" and get the answer

Professor Meowington phd









 

Some good advice here..  auth-refresh is very handy..

https://wiki.corp.google.com/twiki/bin/view/Main/MacRoadWarrior









 

What's the word?  hideous, yes that's the word.

This is the new commenting system on sfgate.  The trolls over there get the commenting system they deserve I guess....


http://viafoura.com/






 

Bin packing is NP Hard....

1st time with Shopping express-extended.  Oh the boxes!

Bottom box is 2ft ^3 -- toilet paper/paper towels.
Middle boxes contained misc things from other stores.
Top-one is 14" ^3 -- It contained a 4-pack of cucumber soda and enough bubble wrap to float a boat.

I'm saving the boxes and should be able to reuse the smaller ones.  I did send feedback to team about this situation.


https://plus.sandbox.google.com/photos/107786897865850743842/albums/5935415229161068849/593541523094...






 

 

G+ Inspired UI at http://littlemonsters.com

- Sidebar with icons for apps
- Cards for posts and expanding comments
- Mole-based chat system.
- Header that collapses when you scroll down
- Big Red Buttons!


https://plus.sandbox.google.com/photos/107786897865850743842/albums/5933274801685382769/593327480394...






 

Found a few tips here.  Color prompts, didn't realize that g4's -c flag would tab-complete.

Added a comment about setting the tmux title using

  tmux rename-window

Now I have a decent set of titles instead of

1 bash 2 bash 3 bash 4 bash 5 bash 6 bash 7 python ...


https://docs.google.com/a/google.com/presentation/d/1xh9sh8jtl36h_-Ys8DYQL2ddryjhr_jiObqT5Dl8k9Y/edi...









 

Sometimes you want down and to the right too...  At least when it comes to Focus Query cost.


https://plus.sandbox.google.com/photos/107786897865850743842/albums/5932436428764399185/593243642916...






 

Parameterized tests in Junit 3 -- another Java

Adding some experimental code that modifies a junit3 test?  Yearning for Junit4 @RunWith(Parameterized.class) annotation?

For simple things like an experiment flag you can do this:

Add the flag to the base test class.

   boolean experiment = false;

Create a subclass of your test and change the value in your setUp method:

 class FooWithExperimentTest extends FooTest {

 @Override
 protected void setUp() throws Exception {
    this.experiment = true;
    super.setUp();
  }
}

Your subclass will run with the varying value.









 

ProtoAssert is a java testers best friend.

ProtoAssert
  .assertThat(result)
  .ignoringField(...)
  .isEqualTo(expected);









 

TAP submit speedup 

- You mail a CL
- The presubmit automatically starts a TAP run.
- You get an email with the results.
- You did *not* change the CL after you mailed it.

If all of the above is true, use the TAP base with *--rerun* when submitting to save time.  The base is in the email TAP sends you and it looks like this:

  OCL:53489329:BASE:53489326:1380560146993









 

 

NYC Googlers -- recommendations on laptop repair?

My sister-in-law spilled Sierra Nevada on her 2010 MacBook Pro and I'm trying to help her.  I found http://http://www.laptopmd.com/ and they quoted 65 to clean the motherboard and replace the keyboard.

She's living on grants and piece work so if you know of a better deal let me know.


http://www.laptopmd.com/#header






 

Somethings wrong when fiber to the home comes to rural Minnesota before the bay area...

[This is a little town 1200 people about 30 miles from Rochester MN]


http://www.kmtel.com/internet/high-speed/






 

SVG, it's VRML for flatland.

Hacking on svg is bringing back memories of another markup language with multiple coordinate systems..

I am writing up a little guide on how to get productive with SVG so others can benefit from my pain.


http://www.wiley.com/legacy/compbooks/vrml2sbk/ch06/06fig09.htm






 

Protip: Use Optional#asSet() to populate collections from optional values.

Was annoyed with lots and lots of code that looks like this:
   Optional<Foo> foo = getFoo();
   if (foo.isPresent()) {
     collection.add(foo.get());
   }

Turns out there's asSet which lets you write code like this:

  collection.addAll(getFoo().asSet());









 

How to make your java *testing* rules test-only.

Here's a crude script you can use to automatically set testonly=1 on _testing_ targets that qualify (and tells you why others cannot be testonly)  If there's interest I'd be happy to clean this up and put it somewhere...


 DEPS=
 for XX in ; do
  DEPENDS_ON=

  echo "PROCESSING - "
  TESTONLY_NUMDEPS=1
  if [ == 1 ]; then
    buildozer 'set testonly 1'
    buildozer fix
    echo "ADDED testonly=1 to target  "
  else
    echo "FAILED to add testonly=1  for target "
    echo ""
  fi
 done









 

How to make your java *testing* rules test-only.

Here's a crude script you can use to automatically set testonly=1 on _testing_ targets that qualify (and tells you why others cannot be testonly)  If there's interest I'd be happy to clean this up and put it somewhere...


 DEPS=blaze-bin/devtools/deps/depserver/query/depends_on  --testonly=0 `

  echo "PROCESSING - "
  TESTONLY_NUMDEPS=`echo ""|wc -l`
  if [ == 1 ]; then
    buildozer 'set testonly 1'
    buildozer fix
    echo "ADDED testonly=1 to target  "
  else
    echo "FAILED to add testonly=1  for target "
    echo ""
  fi
 done









 

After cleaning up Google+ Games I moved up to #221 on the all-time code deleter list.

Should break #200 once the chili removal CLs are all submitted and accounted for..

For future me, here's the dremel to find out..

define table stats /cns/pb-d/home/omoikane/change_stats/columnio/changes-*
SELECT user, SUM(file.deleted) AS lines FROM stats GROUP BY user ORDER BY lines DESC LIMIT 225;









 

*Two hundred dollar bid, now three, now three hundred, will ya give me three?*

_I researched some of your information online and you seem like an analytical person, so I thought I'd hit you with some numbers that show why Developer Auction is hands down the best tool for finding your next job - if and when you're ready to look._

_We just successfully completed our 13th auction, where 90 engineers received offers with a total value of 3,147,111. The average offer for a software engineer on Developer Auction is 24,816.33. Over 600 companies like Twitter, Klout, and UberConference have used our platform to hire top tech talent. On Developer Auction, you'll receive compensation, bonus, and salary information from employers first, and interview second, making DA the best place for you to find your next career opportunity._

_Our next auction starts August 19th. If you click the link below and create a profile, once it's complete, we'll review it for inclusion. Even if you're not looking to change jobs right now, if you build a profile, we'll keep you in mind for when you're ready to make a change._


https://plus.sandbox.google.com/photos/107786897865850743842/albums/5912431615632055697/591243162378...






 

They may have killed Bugs of the week at TGIF, but it makes a nice addition to snippets...









 

b/10261931 filed...

@100046111226547636851


http://hangoutsnitch.com/






 

Was actually thinking of doing this with some of the google-feedback code internally so we could automate regression testing of widgets...

Right now I have old iframe on the left, new on the right and can quickly eyeball it, but would love to have a computer do the boring stuff..


https://github.com/BBC-News/wraith#__sid=0






 

Latex in Google+?

.P
I say no, at least not until we have support for
.B  "nroff"
 macros
.br
.br


https://productforums.google.com/forum/?_escaped_fragment_=topic/google-plus-discuss/O9ZEvS5jmho






 

With our embeds framework combined with our existing embeds (youtube, maps, docs, etc)  we could blow this out of the water.

@107106902560384103150 -- what's up with Lego Embeds?



http://allthingsd.com/20130731/towards-a-more-public-social-network-facebook-rolls-out-embedded-post...






 

 

A song about gentrification in San Francisco...  It pains me to see Google vilified in this way when it enables so much (including this content itself)

Sadly I don't hold out much hope for technology fixing the dysfunctional housing situation in the Bay Area.

[And where's my soundcloud embed  @112474028169763877889 ??]

Also if you decide to watch the youtube video remember that _This video has been age-restricted based on our Community Guidelines_


http://soundcloud.com/persia415/persia-google-google-apps-apps






 

The *Victory Baby* MBA (spotted in our support forums)  


http://60daymba.com/






 

 

This is... grotesque..
1) Send html attachment
2) Have user open attachment on filesystem
3) Need to recover your password?  Send recovery link to email.
4) Enter password, click open, popup gets blocked on mail-attachment domain.
4) Secure? uhhhh


https://plus.google.com/photos/107786897865850743842/albums/5901699545583209681/5901699548451213538?...






 

Little known fact.  All royal births require launchcal approval.

_It doesn't look like we're going to get launch calendar approval before EOD today. API team, please grant 100K QPD for now, to ensure that we do not block the birth of the Royal Baby._

ttp://b.corp.google.com/issue?id=9677423









 

Juhan says hi!

Here's my neighbor Juhan.  He's a Google fan that  suffers from Macular Degeneration. Every other week I help him with his old Windows XP rig that somehow resets the font sizes back to stock.

He's still on AOL, which doesn't support larger font sizes.  So when he receives a "letter" he opens it, selects Forward and uses the message editor to boost the font size.  He tried switching to Comcast (Zoho?) Mail but it was a big fail.

Otherwise he does pretty well with video sites, Newspapers and Skype.  Watching him use technology has been very instructive.  I learned a lot watching him cope with various web sites.

Despite not using our products he's a big fan of Google and wishes us all the best!


https://plus.google.com/photos/107786897865850743842/albums/5898813881606962785/5898813885589560450?...






 

Received this morning..

*GET VERIFIED ON TWITTER FOR 50.00*









 

Two questions come to mind:
- Google, master of the links, should've done this first
- It will probably get spammed to death, but that's a fairly easy problem to solve...


http://www.theverge.com/2013/7/1/4482322/twitter-embedded-websites-tracking-monitoring-events






 

Turn on/off new +1 look-and-feel.  Coming soon to all Googlers.

http://go/originalplusone
http://go/prettyplusone

Cool new stuff:
- SVG 'G' and Roboto font by @106049961088401964660 's wizardry
- Did I mention Roboto?  We'll be priming the font cache for 50% of the sites on the web.
- Elimination of a huge sprite (well, just so long as you're not using IE8)









 

-Priceline- *Intestine Negotiator!*

_...a Priceline like service for the healthcare industry-bringing transparency to the healthcare sector in same fashion as Priceline/Kayak/Expedia did to the travel industry._

....

Your profile seems like a possible fit for our team. I have included management info below my name and I will look forward to hearing your thoughts.









 

<voice style="casey-kasem">
Hot new entrant into the BadgeWidget top-40, slotting in at Number 4 It's Teaser-Trailer.
</voice>

And who knew we were up to Transformers *4*!


http://teaser-trailer.com/transformers-4-spy-videos-and-pictures/






 

Mr Jingles is the best thing ever.  I fully expect it to help our popularity in APAC where a mascot is almost required.

Pictured below:  Toph and TophToph, the SixApart/Typepad mascots.


https://plus.sandbox.google.com/photos/107786897865850743842/albums/5894689919880372449/589468991981...






 

*RWYU* - Request What You Use?

One thing that always bothers me is useless or expensive RPCs, and the various ad-hoc ways of filtering proto fields.  So I was  inspired by IWYU and came up with these ideas...

** When making an RPC include a 'template' for the response.  The simplest possible thing is an actual response object.  Fields you want have defaultValue, fields you don't want are empty.  Call it the 'Mask' or 'Filter'

    FooResponse = fooRpc(FooRequest)

becomes

   FooResponse = fooRpc(FooRequest request, FooResponse mask)

** Building up these masks can be tricky.  So borrow code from dremel so you can make them look like a SELECT.

   mask = MaskMaker.create(fooResponse, "message.*,foo.name");

** A Rpc service can then look at the fields wanted and adjust it's behavior.  If a proto message isn't needed you can probably save extra downstream RPCs.  The logic is actually fairly clean:

   if (mask.hasMessage()) {
     if (mask.getMessage().hasField()) {
       m.setField(x);
     }
     response.setMessage(m);
   }

 [and you could conceive of DSLs or other mechanisms that dispatch producer logic for portions of the response.]

** A client can enforce the filter/mask by stripping out anything the server sends that it did not expect.  Tracking mismatches here can identify efficiency wins.

** To make creating masks easier we could sample RPCs and find a maximal mask that includes data that is actually accessed. Just Instrument the getters on the generated proto objects and figure out what your code actually uses.  (Obvious caveats apply about exceptional cases, speculative RPCs, etc.)

Anyone tried to solve this problem in a general way?  Am I crazy to think that there's a general-purpose solution to this problem?

[Bonus points if we can figure out a way to also specify limits and continuation tokens inside a mask.  Maybe with proto extensions?]