hudebnik: (Default)
Thursday afternoon, as I walked home from the train station, I saw a black cat in "fierce hunter" mode in the front yard of a house, sneaking up on a cherry tree. The cherry tree was covered with netting (presumably to keep the birds and squirrels off the cherries -- at least that's why I put netting over our cherry tree), and the netting was moving in fits and starts. There was a mockingbird inside the netting, trying vainly to escape, and as I watched, the cat crept up close to the trunk and made a vertical leap. Missed the mockingbird, and got briefly snagged in the netting itself, but seemed determined to try again. So I put down my pack, walked up onto the lawn, and moved enough of the netting that the mockingbird could find its way out. Bird and cat are no longer caught in the netting. My work here is done....

Last night I made some small progress on pavilion construction: I attached webbing stake loops near the bottoms of the seams in one wall piece. I was going to do the same to the other wall piece, but ran out of webbing, so [personal profile] shalmestere ordered more from Amazon, to arrive Monday. In the mean time, I guess I can work on the toggle-and-loop assemblies that attach the tops of the walls to the bottom edge of the roof, since those involve a different kind of webbing that I haven't run out of yet. I'll still need to make guy ropes, and short rope loops to attach the webbing stake loops to the stakes, and a ridge pole, and make sure we have something that will work as center poles (probably re-using our existing wheelbarrow-handle center poles, with different-length steel pipes to connect them together). It might be finished by summer camping season....

Meanwhile, I have paid-employment work to do today, even though it's Saturday: there's a batch job that runs the 1st and 15th of every month, with the run on the 15th usually uninteresting, so the only chances to test whether my code responds to it correctly in realistic conditions are once a month on the 1st. This is obviously not an efficient test-and-debug cycle, so I'm also working on ways to test independently of the batch job, but that framework isn't up and running yet.

And I'm underslept: I went to bed at midnight, [personal profile] shalmestere came to bed something like 45 minutes later, and one of the dogs woke me up at 5:00 AM, I still don't know why.
hudebnik: (Default)
I heard rumors several weeks ago from Union friends that my employer was going to start enforcing the "three days a week in the office" guideline, using badge-swipes to count how often people came in physically and counting this as part of annual performance review. I asked my boss about it at the time and he said he hadn't heard anything like that, but would keep his eyes and ears open and let me know.

At Monday's weekly one-on-one meeting, he let me know. Yes, my employer wants everyone to either (a) come to the office at least three days a week, or (b) become officially "fully remote", which means you no longer have a desk, and managers are expected to address on-site frequency in performance reviews. (In some cases "fully remote" also means a pay cut to reflect the cost of living where you live rather than where you work. Doesn't affect me, because I both live and work in NYC.) The e-mail that everyone got says "If you have questions, ask your manager" -- who received the same e-mail at the same time as the rest of us, and doesn't know any more than I do.

So I went to the office yesterday. The commute wasn't bad -- a 10-minute walk to the train station, a 10-minute wait for the train, a 15-minute train ride, and a 20-minute walk mostly down the High Line on a pleasant early-summer day. But it's still most of an hour each way that I could have been doing something else. Nobody on my team commented that I was there on a Tuesday, which hasn't happened since... umm... March 2020? In fact, I exchanged about ten spoken words with anybody on my team the whole day. I communicated with them, of course, by chat or e-mail or comment-thread, the exact same ways I would have communicated with them if I'd stayed home. So what's the point?

That's not typical: usually when I'm on-site, there is at least a gaggle of teammates who invite me to go to lunch with them, and there's usually a certain amount of chitchat during the day too. But this was a good example illustrating why "fully remote" might make sense for me.

Work stuph

Jan. 21st, 2023 08:25 am
hudebnik: (Default)
I work at Google. As of last night, I appear to still work at Google, but one member of my ten-member team doesn’t.

There has of course been no official announcement of any specific names of people laid off, but somebody posted a way you can tell: using an in-house access management app that many Googlers use every day, look at the list of people who have a particular access, and the recently laid-off show up in red as “excluded”.

The teammate in question was fairly new, having worked for Google for a bit over a year, but we have more recent hires who didn’t get laid off. I have no idea how the company decided whom to fire, and no criteria have been announced. Those in the US have been informed by email, and then immediately lost their work email accounts (I’m not sure how those two facts interact), while those outside the US haven’t been informed yet.

Google says those laid off will continue to get paid for at least two months, will get severance packages of twelve weeks’ pay plus two weeks per year they were at Google, and will have health insurance and immigration assistance for at least six months. But with all the other tech companies laying off too, it won’t be easy for those folks to find new jobs. And getting fired so abruptly, with no warning, is really rough.
hudebnik: (Default)
My Benevolent Employer has decided this is the week for most people to come back to the office -- not every weekday, but typically three days a week (most of my team are planning for Tuesdays, Wednesdays, and Thursdays). I've been to the office four times in the past five months, and coincidentally four times in the past two years, so this will be a big change.

Being at the office will presumably keep me more on-task: no pleasure-reading or playing video games while waiting for a long compile or test. It will also cost almost two hours a day commuting, during which I guess I can read the newspaper on my phone (at least while above ground) and do some pleasure-reading in physical books (the rest of the time).

I'll need to be more disciplined about the morning routine in order to get to work at a reasonable hour so I can leave at a reasonable hour so I can get home at a reasonable hour so we can eat dinner at a reasonable hour -- which will still be later than [personal profile] shalmestere would like, and since we've had dinner later than she wanted, she'll want to stay up late, thus making it harder to get moving in the morning. Definitely need to be more disciplined about getting to bed.
hudebnik: (Default)
According to my food diary, I ate lunch at the Google cafeteria on Tuesday, March 10; I had gone in hoping to pick up a mail-order package that was being delivered to my work address, but it didn't arrive that day. I stayed home, and ate lunch at home, on Wednesday, March 11, and got an e-mail from the mailroom saying my package had arrived. So I went to the office the morning Thursday, March 12 and found the building nearly empty: the motion sensors turned the lights on as I walked down the halls. I went to my desk briefly, then to the mailroom to get my package, then headed home, picking up a burrito for lunch from a street vendor.

I was expecting to be back in the office in a week or two, but in fact it was October 29, 2021, almost twenty months later. By which time my computer, desk, and stuff had been moved from the 10th floor to the 4th, which had been renovated to put all the desks twice as far apart as they had been before.
hudebnik: (Default)
I was at the office and a guy I knew named Brendan pointed to a group of three young women and whispered to me "Look at the backside on that one!" They were getting on an elevator, and we did too, with me in one corner, Brendan in another, and the lady in question in between. Brendan immediately started chatting her up, in a low voice. After a few seconds I looked over and he seemed to have his hand inside her jacket. I cleared my throat loudly, but he ignored me. I said "Brendan!" in a warning tone, he looked at me and said "What?" The elevator doors opened, everybody got off and went their separate ways, and one of the other women said to me "So what are you doing this evening?" After a moment's confusion I replied "Probably going home to my wife."

[Disclaimer: I actually have a distant colleague named Brendan, who has never to my knowledge shown any hint of this sort of behavior.]
hudebnik: (Default)
The raspberry bushes have been producing 2-4 cups of berries per day, which is a problem. Yesterday I threw out about 5 cups of raspberries that had gone moldy in the fridge (and now I see this article on how to keep fresh berries), turned another 4 cups into a batch of raspberry crumble bars, and made a batch of raspberry turnovers (with filling left over from the previous batch of raspberry turnovers, which inexplicably ran out of dough long before running out of filling). Also started a batch of bread dough, which has been rising overnight and is probably ready to turn into a loaf now. And picked up a batch of stuff from the CSA yesterday, including a double cheese share to make up for a week we were out of town, so the fridge is pretty tightly packed. We know what to do with the salad greens, and have ideas for the feta, red scallions, and green garlic. Need to think of things to do with the fennel, and the kohlrabi, and the radishes.

Still to do:

  • mow the lawn ✓

  • refresh moth traps and/or parasitic wasps on quince trees ✓

  • bake bread ✓

  • some $TECHJOB work: I'm not on pager this week, but on a shift that needs some things done over the weekend ✓

  • clear the dining room table

  • vacuum some part of the house

  • contact book-rehoming people to arrange a donation

hudebnik: (Default)
I was at a music concert at my usual Google office building. There were dozens of people on stage singing, a couple of people sitting off to one side playing in a brass quartet, and dozens more people milling around eating steam-table food. And my reaction, in the dream, was shock: why are there so many people so close together, none of them wearing masks?
hudebnik: (devil duck)
Some days I'm proud of my employer. This afternoon I attended a talk by the "Jigsaw" team, whose mandate is to use Google technology to promote freedom and protect the vulnerable around the world, and I thought I would mention three services in this category. If you have friends or family living under the control of an oppressive government, make sure they know about this stuff. Most are joint projects between Google and one or more other academic institutions or NGO's.


  • uProxy, a free browser plug-in which enables anyone to create a proxy Internet server that people in high-censorship places like China and Korea can use to get to uncensored Internet content. (A joint venture between the University of Washington, Google, and I don't know who else.)

  • Project Shield, a free service protecting independent journalism servers from DDOS attacks, including attacks by their own governments.

  • Unfiltered.news, a Web site to show you what topics are being reported on by journalists in various countries. Check out the list of "topics underreported in your country" (relative to other countries' coverage of that topic), then follow the links to see (either translated or in the original language) recent headlines about those topics in various other countries. Slide the "date" bar to see how popular this topic was, and what was being said about it, on various recent days. (It's interesting to note which countries had remarkably little coverage of the Mossack Fonseca "Panama Papers" leak last week....)



There were demos of some other neat services like this, but they haven't been announced publicly yet; you'll just have to wait :-)
hudebnik: (teacher-mode)
One of the numerous fronts in the Programming Language Wars is "how fast does the code run?" This is a remarkably difficult question to answer, for reasons discussed here, but one can make certain general observations. As pointed out here, there's a top tier of languages that are typically compiled to native machine code without run-time garbage-collection, including C++, C, Fortran, Ada, and ATS. A second tier includes a bunch of languages that are (a) typically compiled to bytecode and then JITted, and/or (b) run-time garbage-collected: Java, LuaJIT, Julia, Haskell, Scala, Ocaml, C#, Go, Common Lisp (SBCL), Rust, Pascal, F#. I won't bother with the several more tiers right now.

The top-tier languages are all fairly mainstream, primarily-imperative, three-piece-suit affairs, except perhaps for ATS (with which I'm not familiar).

The second-tier languages include Scala, Ocaml, Common Lisp, and F#, all of which are primarily-functional, as well as Haskell, which is purely-functional (e.g. it has no assignment statement at all, and it takes advantage of this fact to do lazy evaluation and a variety of compiler optimizations), and a couple of primarily-imperative languages.

If you've read anything technical about my current employer, Google, you're probably familiar with the MapReduce framework for massively parallel computing: we alternate "map" phases (do the same thing to a gazillion data points independently) with "reduce" phases (combine a bunch of data points into fewer data points). You may or may not have heard that MapReduce has been deprecated internally for new code for a year or more: in its place, we use libraries that turn C++, Java, and Go into, effectively, primarily-functional languages with lazy evaluation (think Java Streams). MapReduce is still around, but as essentially a compilation target rather than something humans are supposed to actually write.

Of course, it would be a whole lot easier to write in a REAL functional language with lazy evaluation, rather than trying to retrofit C++ to play that role, but we've got an awful lot of existing C++ code....
hudebnik: (teacher-mode)
At my new employer, I have no office: I have a desk, a computer, a chair, and enough room for maybe half a dozen books. And people tend to move from one desk location to another every few months, so they're not encouraged to put down too many roots.

So today I went to my University office (for the first time in months) and spent six hours triaging books: discard, leave with the department, or take home. Somewhat to my surprise, the three categories turned out almost exactly equal in size.

This exercise entailed throwing out a lot of proceedings for theoretical-CS conferences I attended and was very interested in at the time, but I realistically haven't done any TCS research in fifteen years. And if I did somehow get back into TCS, it would be easier to find the papers on-line than in a printed volume anyway. But throwing out the proceedings (except the few in which I had papers) carries an air of finality.

My research for the past fifteen years has been mostly in CS Education, so I had three shelves of proceedings from CSE conferences. I kept the ones in which I had papers, and left the rest to the department, on the theory that somebody on the CS faculty will be interested in them. Again, leaving this stuff is a final acknowledgment that (a) my research in CSE will be limited if I'm not in a classroom regularly, and (b) a lot of this stuff is on-line anyway.

I threw out most textbooks older than 5-10 years, except a couple of "classics" and those of which I have particularly fond memories. I left recent textbooks to the department, as above.

Still, I have five good-sized boxes of books in the car for which I haven't found homes in the house yet.
hudebnik: (devil duck)
I just informed my University that I'm staying at Google and resigning my academic position.
<LawrenceOfArabia>It's going to be fun.</LawrenceOfArabia>

misc. news

Jun. 22nd, 1998 04:38 pm
hudebnik: (devil duck)
Let's see, what's happened recently?

I spent four days last week at the Computational Complexity Conference in Buffalo, where I renewed contacts with various complexity theorists. I also gave a "rump session" talk on my work on "Delayed Binary Search, or Playing Twenty Questions with a Procrastinator". The audience seemed to enjoy it: I got more questions than the previous two speakers combined, I was invited out to a bar by two of the research gods of the field, and by 11:00 the next morning two of the audience had made significant additions to the theory: David Schweizer found a recurrence that seemed to correctly describe the delay-2 case, and Andris Ambainis found a proof that the optimal algorithm took time logψn + O(1), where ψ satisfies ψ3 - ψ2 = 1, exactly what would be predicted by Schweizer's recurrence. I decided this was significant enough to invite them to co-author. I told them I was busy for the next week, but wanted to submit the thing for a conference deadline July 7; I hope they're working on it now.

Thursday night I returned from Buffalo. I spent Friday grocery-shopping and pre-cooking for the SCA feast we prepared and served on Saturday. Various things went wrong: there was no firewood until over an hour after we arrived, so the legs of lamb started cooking later than they should have; we didn't know where to get water on site, so the rice started cooking later than it should have; the autocrat suffered a car accident; a misunderstanding led to me ferrying a search party up and down Flatbush Avenue searching for her while she was safely at the site and [livejournal.com profile] shalmestere was doing last-minute preparations; a rainstorm hit just as we served the first course; etc. etc. But everybody seems to have enjoyed the food, nobody went hungry, and I'd call the whole thing a qualified success.

Unfortunately, we couldn't stay around for the night or the morning: we had dogs at home to feed and walk, and I had to catch a plane Sunday afternoon to Houston, where I am now and until next Sunday morning, attending a workshop on how to teach beginning programming using Scheme. Most of the participants don't know the Scheme language, so they're struggling to learn it; I, on the other hand, am primarily trying to learn how to teach from Scheme from someone who's been quite successful at it.

Profile

hudebnik: (Default)
hudebnik

May 2025

S M T W T F S
    123
4 5 67 8910
1112131415 1617
18192021222324
2526 27 28 293031

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 15th, 2025 12:16 am
Powered by Dreamwidth Studios