This page features every post I write, and is dedicated to Andrew Ho.
Back in the 60s, they built a computer to translate between Russian and English. They had a big party to celebrate the first time they booted up the computer, but they had a problem of testing it since nobody was around who spoke Russian. One of the Computer Scientists proposed that they simply feed in an English phrase, translate to Russian, then translate back to English.
They fed in the English phrase: THE SPIRIT IS STRONG BUT THE FLESH IS WEAK
The computer whirred and clicked and spat out the translation.
They keyed the Russian translation back into the computer, which whirred and clicked.
The computer finished its translation: THE VODKA IS GOOD BUT THE MEAT IS ROTTEN
In my experience, the brain reconfigures its capabilities to adapt to the work you need it to do.
One thing that I notice when working hard in technology is that my short-term memory is shot. I can barely remember the morning, or what was on Forum in the commute in. I think the brain reconfigures itself so that short-term memory is sacrificed for the working stack. I can “load in” a whole bunch of things I’m trying to think about and mesh together and keep track of “in the moment” … good for analysis, but then I lose track of time and can not remember, like I said, the details of the day, so well.
There was a time when I was released from tech, depressed, and found work as a waiter. The initial transition was difficult. I crafted cheat sheets to remind myself of menu items, &c. and spent time trying to translate the algorithms as they had been trained to me into the art of doing the job. I recall a specific hierarchy of five priorities. Let me see if I can recall them all. Greet customers as they come in, bring out hot food, take orders, settle the bill. The rule was that each priority superseded the next … but you can not apply this 100% of the time. One day the restaurant was full, and I was the only waiter, and it was lunchtime on a weekday: people want to get back to the office. I did a good job of getting people settled and getting their food out, but it sucked for that guy who had to wait forever to get his bill. Over time I learned to optimize operations … basically, carpool trips: collect multiple orders on the floor, bring them to the computer, grab a bill, pick up food, deliver food, deliver bill, collect orders, &c.
After some months working in the Pizza Place, my short-term memory got really good. Never quite “don’t write down the orders” good but I think I could have pulled that off if it were an option. (The paper orders went to the kitchen and were later cross-referenced with the computer billing system.) But, when I went backpacking, I was very good at recalling what I spent from day to day, keeping track of those little details over the short to medium term.
In contrast, when I tried to do computer programming, I felt dumb. I remember trying to build an isometric grid system for game programming, and I felt like I just kept running out of brain. Translating grid coordinates to drawing them on a two-dimensional screen whose coordinate system runs from a different direction … I didn’t have it in me.
Then again, neither is that the sort of stuff I end up doing in tech work. Systems Administration is less about deeply abstract thought (well, sometimes it is..) and honestly somewhat like being a waiter, or a restaurant manager. Maybe more of an independent car mechanic. Lots of things going on, lots of ideas to keep track of, and a fair amount of short-term, deep problem solving: WTF is going on with this server, or this software, &c.
Here is a provocative article from CityLab: How Land-Use Restrictions Make Places Tilt Left
The gist of this is: restrictive zoning makes housing more expensive. The folks who can afford expensive housing tend to be college educated. College educated people tend to be more liberal, and vote Democratic.
If you restrict the amount of housing that can be built in a city, you squeeze out poor folks, and the folks who can afford to buy in are the “Liberal Elites.”
More restrictive counties tend to shed Republicans and become more Democratic over time—a pattern that seems to have accelerated since 2012. And, more restrictive counties tend to gain more college-educated people and shed fewer educated ones, which contributes to their partisan shift. As Sorens notes, college education may causally mediate a substantial part of the relationship between zoning and partisanship at the county level. In other words, a county’s becoming more educated as a result of building restrictions makes it more Democratic.
I think our policies, especially in the privileged suburb where I live, need to allow and facilitate more housing. As a Liberal Democrat, I do not want to live in a bubble community. While I take some pride in the idea that education leads to progressive politics, I am disappointed that a party that prides itself as a champion of the working class and the poor, gains a partisan advantage when the working class and poor get squeezed out of our communities.
As a Democrat in a Blue City, I think we owe a debt to our communities to correct restrictive zoning in order to redress the damage done to our own working class, who can not afford to live here.
At the behest of my ISP, Sonic, I wrote a letter to the FCC, via https://savecompetition.com/:
I am a successful IT professional. I got my start in the 90s, answering phones at an independent ISP and getting folks online with their new modems. This was a great age when folks had a choice of any number of Internet SERVICE Providers who could help them get up and running on AT&T’s local telephone infrastructure.
To this very day, I use the DSL option available from the local Internet Service Provider (Sonic) over AT&T’s wires. I use this despite the fiber optic cable AT&T has hung on the pole in front of my house. Fiber would be so, so much faster, but I’m not going to pay for it until I have a CHOICE of providers, like Sonic, who has always been great about answering the phone and taking care of my Internet SERVICE needs.
Competitive services were the foundation of my career in IT. I believe they were a strong foundation to get Americans online in the first place. Competitive services are, in my opinion, REQUIRED, if you want to get Americans on to modern network technology today.
I have spent some time of late working on the “family cycling” problem. I would like to get my kids around town without a car. I would also like to bike to work, which is 10+ miles one way, which is a bit far for me to ride twice every day. Last year, I took a leap of faith and purchased a Radwagon. Around $2,200 all-in, including having a mobile bike shop assemble and deliver it. That is cheap for a bike that can haul kids on the back. It is great for my work commute, but the high back was too scary for my older son.
The Radwagon is pretty rad, but the rear cargo deck was too high for the older son to feel comfortable.
After the younger son turned 1, I got a baby seat (another $250, as I recall) and now I have a bike fanatic who loves the high ride adventures. This is great, because I have more encouragement for me to get riding. (Really, these are demands: “Dada, go go go go go! Byyyeee mama! Byyyeee bruhbruh! Dada, shoess!”) This is great, until the older kid starts feeling left out of quality time with Dad.
Before he could even walk, he could climb up on the running board of Daddy’s bike.
Thus began my quest for a family bicycle that could accomodate both boys: something lower …
There are a lot of options. There are bikes like the Radwagon but with a smaller wheel in the back, so kids can ride low. Non-motorized bikes from Yuba and Xtracycle start around $2,200. Motorized versions start around $4,500. There are bikes with a box up front: the classic Dutch Bakfiets can be imported from Europe for some insane amount of money. There are box-in-the-front tricycles from Bunch (around $2,600 delivered) and Wike in Canada. The Bunch has an electric option. Finally, I stumbled across Madsen, which sells “bucket bikes” which have a big, sturdy, plastic bucket on the rear that seats four. They start around $2,000, and can deliver at $2,200 (mostly) assembled, but I decided that really, I want to be able to drop kids off and head to work, so all in with e-assist and a few accessories is $3,500.
The next challenge is: a test ride. The Radwagon was a Leap of Faith with mixed results. There are “local” dealers for the more expensive bikes. This would mostly involve calling ahead to set up an appointment to ensure that the appropriate bike(s) are in stock and set up for a test ride, then schlepping the kids up to San Francisco. Fortunately, Madsen has a customer one town over that was willing to share a test ride. I was able to confirm that both boys enjoyed it, and the wife could fit in the bucket, too. The electric option is new for Madsen, so the bike I ordered won’t arrive until later this month.
Last Month, the Bike Snob published an article that declared that “No, Cycling Isn’t Elitist” which argues that family cycling can be more cost effective than driving. I wish that were true. I wouldn’t say that cycling is elitist, but where I live, where a car is a basic requirement to partipate in economic life, spending additional time and money to research, purchase, store, and maintain a family bicycle remains an act of privilege.
So, what to do: wring your hands and feel like a bougy jackass? On the contrary. I think that if you are in a position to enjoy family biking, and have the means to make it happen, then this is all the more reason to do it. If your family is out on the bike, it helps encourage drivers to be more careful, it opens eyes, and maybe nudges more people of privilege to try it out. Nudges politicians to prioritize safe bicycling infrastructure, which makes it easier for more folks to choose to ride more bikes …
The kids will outgrow the family cycle, and when it comes time to sell, the used bicycles get around the community at prices that are more affordable to folks with less privilege.
See Also: The Edgerunner Philosophy — “It has to do with mushrooms, opportunities, taking risks, and embracing change:”
Luminary mycologist Paul Stamets uses the term “edgerunner” to refer to the profound role that mycelium—an extremely beneficial fungus—plays in Earth’s ecosystems, working at the edges of biological possibility in order to advance life.
As I see it: cycling may not be elitist, but it is definitely more accessible to privileged folks, so if you have the privilege to “work at the edge of possibility” you should consider taking it, in hopes of helping to normalize a beneficial activity and make it more accessible over time.
I built a new system (from old parts) yesterday. It is a RAID10 with 4x 8TB disks. While the system is up and running, it takes forever for
mdadm to complete “building” the RAID. All the same, I got a little smile from this graph:
As the RAID assembles, the R/W operations take longer to complete.
The process should be about 20 hours total. As we get move through the job, the read-write operations take longer. Why? I have noticed this before. What happens here is that the disk rotates at a constant speed, but towards the rim you can fit a lot more data than towards the center. The speed with which you access data depends on whether you are talking to the core or to the rim of the magnetic platter.
What the computer does is it uses the fastest part of the disk first, and as the disk gets filled up, it uses the slower parts. With an operation like this that covers the entire disk, you start fast and get slower.
This is part of the reason that your hard drive slows down as it gets filled up: when your disk was new, the computer was using the fast-spinning outer rim. As that fills up, it has to read and write closer to the core. That takes longer. Another factor is that the data might be more segmented, packed into nooks and crannies where space is free, and your Operating System needs to seek those pieces out and assemble them. On a PC, the bigger culprit is probably that you have accumulated a bunch of extra running software that demands system resources.
On the drive in this morning, I caught Forum’s program on the new dockless electric scooters that have been showing up in San Francisco. This service is a new take on dockless bike share. There is concern that users are riding on sidewalks, menacing pedestrians, and that despite state laws, they aren’t wearing helmets. Also, the scooters are often left blocking up the sidewalks.
The scooter proponent answered that since the scooters are a handy way to save car trips, San Francisco can continue its efforts to convert car lanes to bike lanes, where the scooters could safely scoot apart from pedestrians. That sounds great to me. The helmets, though … as I pulled up to the office, I emailed in a brief opinion. I then hung back from going into the office for a couple of minutes to catch the very end of the show. I’m glad I did. Michael Krazny closed with this:
We’ll leave it there! Well, except for one more comment about helmets that I want to read here, from Daniel, who says: “We should revisit the helmet requirement. Helmet use is a cultural convention. For example, they don’t wear helmets in Amsterdam or Copenhagen, which makes bicycling even easier in those places. It is safer to wear a helmet when riding in a car, yet we wouldn’t expect anyone to wear a helmet as a requirement to ride in a car.”
I think it would be nice to see these scooters in Peninsula suburbs, where we tend to lack good “last mile” transit options, and where there are fewer pedestrians to upset. Rental electric scooters sound like a better option than rental bikes in a lot of cases because they’re cheap to deploy, require less knowledge to ride, and require less storage space. And I suspect that the helmet requirement is probably unworkable.
A question was posed as to whether folks should fight for or flee from the Silicon Valley.
I answered that those who have bought homes here ought to fight for opportunities for the next group. The greater challenge is that a lot of folks who got theirs don’t want to make allowances for the next generations.
I noted that:
I was asked on Facebook how I felt. A summary:
I don’t know yet. I think I agree with both sides. I haven’t looked too closely, but it sounds like his errors were regrettable but forgivable. On the other hand, a controversy like this, deserved or not, impairs his ability to be an effective leader. His resignation draws a contrast with the other party. I respect him for falling on his sword, so to speak. Though, would he have resigned under a Republican governor? His seat is “safe” …
I think women need to be taken seriously. I also fear that we could enter an era of “Sexual Harassment McCarthyism” as someone put it. So, yeah, I guess I don’t know which bubble to hang out in.
A friend shared a pair of editorials:
The gist of it is “good on the Democrats for holding themselves to the moral high ground while the other party digs a hole ever deeper but maybe we are harming the country because we’re the only ones playing nice.”
I think Democrats should continue holding themselves to moral and ethical standards. We are losing ground right now because of a lack of willingness to surrender our moral principles for political gain. But I think … you need to be good with yourself before you can be a good leader for your nation.
Our country badly needs good leadership. That the GOP is willing to fall behind Trump or Roy Moore illustrates just how badly deficient they are in good leadership. When you go too long without moral principle you lose your pipeline for good leaders.
National elections are won and lost in the middle. Hillary Clinton was tainted by old and unfair perceptions that she was morally compromised, so folks were able to toss a coin and take the other morally compromised candidate.
I supported the “Draft Franken 2020” thing … now I am hoping we find some fresh blood, who can be lifted up by a party which observes moral standards. That makes the next election a little easier for people to vote for a leader they believe will live by and lead from a place of ethics and moral decency.
I think we shouldn’t be afraid to fight hard within the system, but we should avoid the notion that we need to put forward leaders who can not uphold our principles.
Bill Clinton was a decent President, but we can do better than Clinton. We had Obama and now we have Trump: I know which direction I want my party to move.
We are at a time that will grow increasingly dynamic. When things get weird is when you need all the more to be centered and grounded and ethical. We need to weather the storms, but not at the price of losing ourselves.
Back in the 90s I bought a modem off a guy in California. In those days if you bought something from a guy on the Internet it was a leap of faith that you’d send off a check and get what you expected in return. Well, I sent this guy my money and he sent off the modem and the next day he sent this apology that he had forgotten to pack the power brick, which he had sent off in a separate package. No sweat. The modem showed up at my house a week later.
But the power brick … well, we kept up correspondence but it never showed up until a couple months later the guy said it had arrived back at his house without explanation, covered in mysterious markings from the Post Office, so he packed the mystery package into a bigger box and mailed that off to Illinois and it showed up a few days later and I had a working modem.
In those days I was in college, and when I got tired of school I worked at an ISP, and when I got tired of working I finally finished school. One of my hobbies was keeping an, ahem, online journal. I would have my fairly banal young guy adventures and sometimes when I couldn’t sleep or just needed to talk about things I would write things up in my, ahem, online journal. In those days, the universe of people you knew and the universe of people who read your online journal would barely overlap. There was a certain anonymous freedom, but whatever.
After I paid for my modem, it became the pattern that when I would post another update online, some hours or days later I would get a long rambling email from this dude in California, who was excited to read what I was up to, and he’d tell me about his own adventures, some from his youth … he once had a girl who smelled like cardboard, which he never could figure out … or more often about how he had just biked down to Pismo Beach with his wife Dana.
I had a fan.
And for years, whenever I would post about my life, this guy would write me back, with his own stories.
As my school wound down I got an interview in the San Francisco area, at a start-up. The start-up flew me out and after the interview, the co-founder drove me up to Pinole so I could crash at MikeyA’s place. I finally met the man. Mike Austin. I slept on his couch. He took me over to Fisherman’s Wharf, where I impressed him by eating a second dinner. He drove me around Pinole and San Pablo, showing me his spots and his friends, the liquor store where he sometimes worked.
He put me up another time, years later, on my second move to California, that time with a new wife.
He was a former cop, who worked odd jobs: liquor store, truck driver, but mostly it seemed he was having his own adventures, touring the States on his Harley, or small adventures close to home with innumerable friends. He told me a lot of guys had taken turns sleeping at his place. A lot of cop friends, who had been thrown out of the house by their wives. He is that kind of guy.
I was impressed by his ZZ Top style beard. The story he told me, and I prefer to believe it, is that he’d shave it down once a year but it always grew right back in proud and long. So it goes.
Another time he told me about how he upset his doctor. He went in for a regular checkup but his labs came back off the charts for diabetes. They drew another set of labs and he was normal. What? Well, what did you eat before the first visit? This, that, and two liters of Mountain Dew … his doctor delivered a lecture on how one should not drink two liters of Mountain Dew at lunch … or ever.
Anyway, MikeyA, Mike Austin, my Number One Fan, well, he passed away last week. In his sleep. At 65 years of age. These are hard times for his wife, Dana, no doubt. I’m going to miss the guy, too. I don’t tell rambling stories about my life on the Internet these days, and it has been a while since I got a good rambling email from Mike. I’ll still have the occasional late-night heart-to-heart with the Internet. No more emails from MikeyA, though.
Anyway, I thought I would “remember” him in the way I knew him. By just writing up some thoughts and sharing them here, with you, and with Mikey. If there is an afterlife, I assume he’s read this by now. I miss you, Mike!
Notes from a great article in the Economist on the hidden costs of free parking.
Apple’s new “Spaceship” in Cupertino contains 318,000 m2 of offices and 325,000 m2 of parking.
Cupertino, the suburban city where the new headquarters is located, demands it. Cupertino has a requirement for every building. A developer who wants to put up a block of flats, for example, must provide two parking spaces per apartment, one of which must be covered. For a fast-food restaurant, the city demands one space for every three seats; for a bowling alley, seven spaces per lane plus one for every worker. Cupertino’s neighbours have similar rules. With such a surfeit of parking, most of it free, it is little wonder that most people get around Silicon Valley by car, or that the area has such appalling traffic jams.
Cars sit idle 95% of the time.
Water companies are not obliged to supply all the water that people would use if it were free, nor are power companies expected to provide all the free electricity that customers might want. But many cities try to provide enough spaces to meet the demand for free parking, even at peak times. Some base their parking minimums on the “Parking Generation Handbook”, a tome produced by the Institute of Transportation Engineers. This reports how many cars are found in the free car parks of synagogues, waterslide parks and so on when they are busiest.
Car parking takes up space. Parking lots dominate the downtown area of Kansas City, MO. As space gets stretched out, walking and bicycling lose their appeal. “Besides, if you know you can park free wherever you go, why not drive?”
The rule of thumb in America is that multi-storey car parks cost about $25,000 per space and underground parking costs $35,000. Donald Shoup, an authority on parking economics, estimates that creating the minimum number of spaces adds 67% to the cost of a new shopping centre in Los Angeles if the car park is above ground and 93% if it is underground. Parking requirements can also make redevelopment impossible. Converting an old office building into flats generally means providing the parking spaces required for a new block of flats, which is likely to be difficult. The biggest cost of parking minimums may be the economic activity they prevent.
There Is No Such Thing As A Free Lunch: everyone pays for free parking:
And that has an unfortunate distributional effect, because young people drive a little less than the middle-aged and the poor drive less than the rich. In America, 17% of blacks and 12% of Hispanics who lived in big cities usually took public transport to work in 2013, whereas 7% of whites did. Free parking represents a subsidy for older people that is paid disproportionately by the young and a subsidy for the wealthy that is paid by the poor.
When autonomous cars become available, many will likely operate like taxis. Less parking will be needed for homes and businesses. There will be more demand for drop-off and pick-up areas. There will be more demand for service garages, where the autonomous cars can go to charge, clean, and receive maintenance.
Existing parking minimums, which provide a subsidy for individual car ownership, will retard the adoption of autonomous vehicles in the United States. Personal vehicles will be subject to a parking subsidy, whereas autonomous car operators will need to supply maintenance garages at their expense. See Also: streetcars versus buses, railroads versus trucking.
Market-rate parking permits for public streets are logical, but culturally unpopular, even in transit-based European cities like Amsterdam.
The result is a perpetual scrap for empty kerb. As San Francisco’s infuriated drivers cruise around, they crowd the roads and pollute the air. This is a widespread hidden cost of under-priced street parking. Mr Shoup has estimated that cruising for spaces in Westwood village, in Los Angeles, amounts to 950,000 excess vehicle miles travelled per year. Westwood is tiny, with only 470 metered spaces.
In the 1950s, while Japan was still poor, Tokyo required motorists to show proof of access to a dedicated parking space. There is no overnight street parking in Tokyo.
Freed of cars, the narrow residential streets of Tokyo are quieter than in other big cities. Every so often a courtyard or spare patch of land has been turned into a car park—some more expensive than others. Once you become accustomed to the idea that city streets are only for driving and walking, and not for parking, it is difficult to imagine how it could possibly be otherwise. Mr Kondoh is so perplexed by an account of a British suburb, with its kerbside commons, that he asks for a diagram. Your correspondent tries to draw his own street, with large rectangles for houses, a line representing the kerb and small rectangles showing all the parked cars. The small rectangles take up a surprising amount of room.
We have been using this great VM management software called Ganeti. It was developed at Google and I love it for the following reasons:
- It is at essence a collection of discrete, well-documented, command-line utilities
- It manages your VM infrastructure for you, in terms of what VMs to place where
- Killer feature: your VMs can all run as network-based RAID1s, the disk is mirrored on two nodes for rapid migration and failover without the need of an expensive, highly-available filer
- Good tech support via the mailing list
It is frustrating that relatively few people know about and use Ganeti, especially in the Silicon Valley.
Recently I had an itch to scratch. At the recent Ganeti Conference I heard tell that one could use tags to tell Ganeti to keep instances from running on the same node. This is another excellent feature: if you have two or more web servers, for example, you don’t want them to end up getting migrated to the same hardware.
Unfortunately, the documentation is a little obtuse, so I posted to the ganeti mailing list, and got the clues lined up.
First, you set a cluster exclusion tag, like so:
sudo gnt-cluster add-tags htools:iextags:role
This says “set up an exclusion tag, called role”
Then, when you create your instances, you add, for example:
The instances created with the tag role:prod-www will be segregated onto different hardware nodes.
I did some testing to figure this out. First, as a control, create a bunch of small test instances:
sudo gnt-instance add ... ganeti-test0
sudo gnt-instance add ... ganeti-test1
sudo gnt-instance add ... ganeti-test2
sudo gnt-instance add ... ganeti-test3
sudo gnt-instance add ... ganeti-test4
$ sudo gnt-instance list | grep ganeti-test
ganeti-test0 kvm snf-image+default ganeti06-29 running 1.0G
ganeti-test1 kvm snf-image+default ganeti06-29 running 1.0G
ganeti-test2 kvm snf-image+default ganeti06-09 running 1.0G
ganeti-test3 kvm snf-image+default ganeti06-32 running 1.0G
ganeti-test4 kvm snf-image+default ganeti06-24 running 1.0G
As expected, some overlap in service nodes.
Next, delete the test instances, set a cluster exclusion tag for “role” and re-create the instances:
sudo gnt-cluster add-tags htools:iextags:role
sudo gnt-instance add ... --tags role:ganeti-test ganeti-test0
sudo gnt-instance add ... --tags role:ganeti-test ganeti-test1
sudo gnt-instance add ... --tags role:ganeti-test ganeti-test2
sudo gnt-instance add ... --tags role:ganeti-test ganeti-test3
sudo gnt-instance add ... --tags role:ganeti-test ganeti-test4
$ sudo gnt-instance list | grep ganeti-test
ganeti-test0 kvm snf-image+default ganeti06-29 running 1.0G
ganeti-test1 kvm snf-image+default ganeti06-09 running 1.0G
ganeti-test2 kvm snf-image+default ganeti06-32 running 1.0G
ganeti-test3 kvm snf-image+default ganeti06-24 running 1.0G
ganeti-test4 kvm snf-image+default ganeti06-23 running 1.0G
Yay! The instances are allocated to five distinct nodes!
But am I sure I understand what I am doing? Nuke the instances and try another example: 2x “www” instances and 3x “app” instances:
sudo gnt-instance add ... --tags role:prod-www ganeti-test0
sudo gnt-instance add ... --tags role:prod-www ganeti-test1
sudo gnt-instance add ... --tags role:prod-app ganeti-test2
sudo gnt-instance add ... --tags role:prod-app ganeti-test3
sudo gnt-instance add ... --tags role:prod-app ganeti-test4
What do we get?
$ sudo gnt-instance list | grep ganeti-test
ganeti-test0 kvm snf-image+default ganeti06-29 running 1.0G # prod-www
ganeti-test1 kvm snf-image+default ganeti06-09 running 1.0G # prod-www
ganeti-test2 kvm snf-image+default ganeti06-29 running 1.0G # prod-app
ganeti-test3 kvm snf-image+default ganeti06-32 running 1.0G # prod-app
ganeti-test4 kvm snf-image+default ganeti06-24 running 1.0G # prod-app
Yes! The first two instances are allocated to different nodes, then when the tag changes to prod-app, ganeti goes back to ganeti06-29 to allocate an instance.
Older Stuff »