ADA struggle at my workplace

It has been at a year now since I first started asking the office building where I work to add disabled parking spots. They continue to refuse, and as I continue reporting them to the city, they continue coming to my managers at work to complain about me. I consider that to be very wrong. It is retaliatory action for my asking for accomodations and reporting them to Code Enforcement when they did not respond.

I spoke several times over email and in person with the building manager last year. I spoke with city code enforcement. I continue having to speak about it with people at my workplace, because of the repeated harassment from the building manager. Last year I also contacted a clinic manager at Palo Alto Medical Foundation, another tenant of the building, who I believe should be actively involved in protecting its patients and who I would still like to invite to a part of the solution.

I am a blogger. That means that some of the time, I’m a citizen journalist. When I get stuck, I can always go public. That’s what I’m doing. Private conversations on this issue have not gone well for me. People lie and stonewall, and I get put on the spot, I end up being the one under scrutiny. That is wrong. I am not the issue, and I am not the problem. I have been polite and helpful over the course of a year, in pointing out ways the building owners could deal with the issue, I made specific requests, sent links, explained tax breaks available that would help pay for the modifications.

The initial contact with the building managers last May resulted in this:

The building is able to offer much needed medical space to the community without opposition from the city; “currently”. We are not a medical building. As you know, the building is required to have a specified number of handicapped parking space in order to meet the standard set forth by the ADA. We have the required number of spaces and no plans currently for adding more.
(from Lauren from Harvard Investment)

Then a lot of messed up things happened. Frank from Harvard Investments came to speak to me in my office. He made many claims about his boss’s political friendships with city government, the good that he does for the community in being a landlord of medical office space. He said that if I kept it up, he would make sure nothing happened, he’d drag his feet and “nothing would happen for 10 years and it would just cause trouble for me in the meantime.” In a whirl of alternating threats and pleas for sympathy, Frank then made increasing claims of empathy because his grandmother “was in a wheelchair” and he was too during his teenage years. He went into quite an emotional story about his life as a teenager in a wheelchair, wistfully watching the other kids play ball and have fun; the emotional pain he suffered from as a result making him uniquely able to understand “my pain”. I did not believe him, and questioned the relevance of his stories and claims. My personal emotions are not the issue. The law, and what it does to help our city’s community, and — for me personally — my solidarity with other disabled people: those are the issues.

I refused to speak with Frank after that conversation. But I described it in full in an email to my co-worker.

Here is my first letter from last year, after some phone calls that didn’t seem to go anywhere. I sent it on May 15, 2008, to the Redwood City Code Enforcement head, Fereydoun Shehabi.

I am a wheelchair user, and I work in an office at 805 Veterans Blvd. in Redwood City. The building has quite a lot of traffic from people with disabilities and elderly, frail people in general, as it hosts large offices from Palo Alto Medical Foundation and other doctors. It has over 280 parking spaces that I counted, but only 3 of those spaces are marked blue as parking for disabled people.

Those spaces fill up quite often. They are not wide enough to allow me to park in the space next to another car and still get my car door open wide enough to pull my wheelchair out of the car, out of the side door, and pop the wheels onto it. The 60 inch between spots with striping, that should be there, is not there.

The building has a central lobby with two large and accessible entrances with automatic doors, one facing the east parking lot and one facing the west lot.

According to the ADA as I understand it, there should be at least 7 spots, evenly distributed around the accessible entrances, and one of those 7 spots should be van-accessible with a 90 inch wide area.

The three existing spots are on the east side of the building, the back entrance bordering on Main Street. Some of the spaces near this entrance are painted red and marked “reserved, private “. The red paint is fairly fresh and appears to be painted over blue paint, though it is somewhat difficult to tell. There is a very nice wide curb cut here.

At the front entrance on the west side of the building that faces Veterans, there is another excellent, wide, curb cut. But, all the spaces nearby are painted red (this time, obviously painted over blue) or gray, also clearly cracked and with blue paint underneath.

I have asked the property manager, Frank Ramirez, twice in writing and once in person to restripe the lot.

He refused to do so and said that the owner is friendly with the Redwood City planning commision. He claimed that it would be too expensive, and that he and the owner would fight any such restriping and delay it for “10 years”. I am asking him merely to add some extra spots by the west entrance. I see that the owner is afraid that he will have to tear up landscaping, sprinkler systems, trees, etc. in order to make a wide walkway in front of the spots. I hope that is not necessary and there is some middle ground between that complexity and expense, and doing nothing at all.

At first, Frank Ramirez stated that the building was in total compliance with the ADA. Later, in person, he admitted that he knew it was not, but that they had a special exception in a permit from the city.

I doubt this is true. It looks to me like the building owners had the minimal amount of disabled parking spaces in the past. And at some point, they painted them over for “private use” or as regular spaces.

Frank Ramirez also offered me a “private parking space” if I would stop asking them to comply with the ADA and if I would drop the issue.

I did not feel that is what is best for the community.

Frank also said that the medical clinic is good for the city and community. Yes – but not if someone in a walker gets run over in the parking lot because the owners and the city did not follow the ADA.

Attached is the permit for the building from 2005. The city planner on duty emailed it to me.



In the interim, Frank Ramirez in person told me that if I pursued the issue with the city or an ADA complaint, I would force the property owners to terminate their agreement with PAMF, and the City of Redwood City wants to have the PAMF medical clinic here to serve the community, and if I pushed things, I would drive out the clinic. Did I want, Frank asked, to be the person who took away health care for the disabled and elderly people of my community that I was trying to help? This argument by Frank hardened my resolve to continue to pursue the issue.

I wrote another round of letters in I think August or September but lost them in a hard drive crash.

A couple of months ago I opened the issue again with the city to ask why they hadn’t done anything and got this response:

I recall our last phone conversation regarding your complain. Following
your phone call I had our
senior inspector Jerry Schnell to come to the
site and verify the location of disabled parking stalls. He reported to
me that there are several disabled stalls scattered on the site and he
noticed there were two stalls near the main entrance and one in the rear
near exit door. I also called the manager with the phone number that you
provided to me and left a long message requesting for a response but to
no avail.

So the city did not properly inspect or respond to the complaint. Jerry Schnell did not report or take action on the obvious code violations in the parking lot. Nor did he look at the rest of the building; for example, in the lobby the fountain’s overhang over the walkway without any indication for a cane is a hazard for people who are visually impaired. Why didn’t the city take proper action? Was I being stonewalled, as Frank Ramirez suggested, because the city has a private and friendly agreement with the building owners, basically a golf buddy arrangement? Was Jerry Schnell just unable to do his job correctly? Where is his written assement and report of his inspection? Why didn’t Fereydoun Shehabi pursue the property owner’s failure to respond to his voicemail?

Why doesn’t my city have a clear procedure for its citizens to file such complaints and receive proper consideration and follow up?

I love my city and yet I am now in the position of possibly needing to sue them as well as the building owners, under the ADA.

Why hasn’t PAMF management, or any of the doctors who work there, ever noticed and done something about the disgraceful situation that means its own clients and patients can’t park safely?

I am not the problem in this equation. No one should bring me into it. No one should call my workplace, my company founders, or my manager. My workplace should not engage in a battle with their landlord or with me over this issue. The issue is not ME. And the issue does not involve them. The issue is, very clearly, that we have a law, the Americans with Disabilities Act. And we have agencies to enforce that law. The building owners are in knowing and active violation of that law. The city failed to enforce the law as they should have.

The building owner needs to fix the problem correctly, and can file for a tax break of up to $15,000 to cover the removal of barriers. There is nothing that says they have to bring everything in the building up to code in a perfect way. But they are required by law to do barrier removal that is readily achievable.

As I look over one of the two documents I have in my hands for this case other than emails, the Feb. 14, 2005 letter from the Planning Commission to Jeffery Teel from PAMF, I can see that the building owners and the city agreed that it is the building owners’ responsibility to make many other modifications to the property, such as an accessible and safe path from the city sidewalk to the building entrance. In other words, if you take the bus here, or get here from CalTrain, you can’t get to the building entrance without being in the large parking lot and driveways that open onto an extremely busy street. As I know well from trying to go to lunch with my co-workers who simply walk through the parking lot and over the landscaped hill, while I at far below safe eye level for drivers go the long way around through the parking lot. I tried that a couple of times. I saw how unsafe and scary it is. Now I get in my car and drive if I am going to go across the street for lunch. My point is that the building owners know they are supposed to do many things to be in ADA compliance and they have deliberately avoided doing those things to avoid expense despite their contractual agreement to do it.

Here is the report from the City Inspector from Febrary 12, 2009, when one was finally filed in response to my repeated requests for action:

Inadequate disabled access parking stalls.

I haven’t seen any response or action from the sending of this letter. But I am very happy to have a copy of it, and grateful that Fereydoun Shehabi sent it to the building manager. I would like to point out that he missed a few problems though.

I am not gearing up for a civil rights battle to demand my personal right to a safe parking spot. I am asking for my community members sake too. And actually I am doing it to demand my right to ask for a reasonable accommodation without the property manager repeatedly harassing me at my workplace by complaining about me to my bosses and throwing the problem back into my lap. More than my rights under the law about parking, I want my rights under the law to protect my employment. That includes protecting me from harassment and retaliatory actions.

I will call PAMF again tomorrow to ask their management and their clinic doctors and patients to join me in an ADA complaint. I will also ask everyone at my workplace to send in the ADA form which I will print out and bring for them. I don’t know if I’m going to fill out the form correctly without help from a civil rights lawyer, but I’m going to try. Acting individually, and asking nicely for people to obey a very clear law, and explaining all my reasons for doing so, has not worked. I conclude that only organized political action brought to bear will have any effect in this situation.

If you are in a similar situation, I recommend that you organize political action rather than sending letters every couple of months and trusting that something would happen. Because unfortunately, other people can be greedy and corrupt even where the law in theory protects us.

And if you are a property owner, I recommend that you listen to people who ask for reasonable and readily achievable accommodations, and negotiate in good faith to improve your property.

Upgrading Drupal 4.7 to 5.14

I have been working on upgrading a site from Drupal 4.7, which is unsupported, to Drupal 5.14. I am somewhat familiar with Drupal as a blogger, user, and administrator, but wasn’t sure what it would take to upgrade a large and complicated site that’s been around for several years (and several former admins and programmers).

I decided to copy the entire site over to my computer so that I could run and upgrade it on a machine I completely control. I had already installed MAMP. If you develop on a Mac I advise you not to be snobby, MAMP is awesome.

The instructions at looked pretty good. And Angela Byron from Lullabot has a good screencast on upgrading from Drupal 4.7 to 5.1x. If you are about do an upgrade, I recommend you watch this — it helped me get all the steps clear in my mind and it was also kind of reassuring.

One of the first things I did was to list out all the modules used in the old site. Later, I dumped them into a shared document so I could ask other people which modules they know are used or might be useful to bring to the upgraded site. I also started a plain text log file of what I was doing for the upgrade, to record things that worked and didn’t, links that were useful, commands, and so on. This sort of “work in progress” file gets messy very fast, so it’s good to go back over it before you stop working for the day to sum up what actually did, or does, work!

I started off here, Copying a site to a local MAMP installation on a Mac. I ran into a few problems and when I figured them out, I logged in to so I could add to the documentation.

Then I ran into problems, because I wanted to run several instances of Drupal at once, and there were hard-coded bits of urls in several blocks of the 4.7 site. So I had a copy of the complete 4.7 site in a directory called “drupal”. Its .htaccess file was set up as in the “Copying a site to a local installation” instructions suggested. But half the links were broken – the ones that were hand-coded into blocks rather than pulling from the database. What I ended up with was another .htaccess file in the root MAMP/htdocs directory:

RewriteEngine on

RewriteRule ^$ /drupal/index.php?q=/ [L,QSA]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /drupal/index.php?q=$1 [L,QSA]

This worked. Now I have several folders with different versions of Drupal and several sites in my MAMP/htdocs folder, and to get them fully operational with all the links working, I change the path in the RewriteRule in .htaccess in htdocs.

Other people, in dealing with this problem, turn to virtual hosts, which is what we use in our production server. I haven’t tried setting that up yet, though it seems like once it was working, it would be more elegant.

Onward to the upgrade itself. I tried it a few times, and kept getting various bits wrong, ending up with a blank white screen and no information in the MAMP/conf/apache_error_log and nothing at all in “view source”. HEre’s some of the things I did wrong the first few times:

– ran upgrade.php from the old site’s directory. oops! Drop that database and start over!

– put the old site into maintenance mode, then couldn’t get to a login screen for turning maintenance mode off again, despite advice from the Drupal forums on “Site off-line under maintenance mode” to go to


. I ended up turning off maintenance mode from the command line,

/Applications/MAMP/Library/bin/mysql -u root -p databasename
>> update drupal.variable set site_offline=1

That worked great.

Turning things on and off from the mysql command line turned out to be very helpful for a bunch of my problems. It was useful for manipulating themes. When I enabled the site’s old 4.7 custom theme — not even selecting it as the default theme, just enabling it — my entire new install gave me a blank white screen. Oblomovka suggested switching the directories around, which seemed like a great idea! So,

mv oldcustomtheme screwedupoldcustomtheme
cp bluemarine oldcustomtheme

We both thought this was clever and would trick Drupal 5.14 into going right back to the default bluemarine theme. No! It didn’t work! The white screen persisted.

This was helpful: Unusable theme – How To reset your theme via the database.

In retrospect, I should not have tried enabling the old custom theme before I turned on some more modules; when I actually bothered to look at the old theme, I could see it used jstools and all sorts of other stuff that I’d deactivated.

I’m off to try that now. So far this has been pretty interesting, though sometimes frustrating! The documentation on is extremely helpful.

Hard drive down!

The ominous clicking noise from my hard drive should have given me a clue. Backup was on my to-do list, but never a priority. That’s why I’m talking to you from August 8th, when I last copied my entire hard drive with Carbon Copy Cloner over to my glossy & beautiful Western Digital Passport 120GB USB drive. I’ve got amnesia in my exoskeleton. It’s horrible!

The sudden crash, inability for my laptop or a bootup CD or booting from another laptop in target mode probably means my data is intact on the drive, but the drive’s controllers are messed up. I got a quote over the phone from Drive Savers up in Novato; something like “600 to $3900”, with the low estimate being if they could only get a little bit of garbled data off and if they didn’t have to disassemble the drive. IntelliRecovery is in Hunters Point and cheaper – $400 to $1600. Can I justify spending $1000 for the last 2 months of my scripts, work data, email, book editing project, and music? It’s a close call, because that’s probably how much my time is worth to reconstruct everything and re-do all the work I’ve lost.

The evening of the crash, I took my MacBook to the Apple Store. They said it would be around $300 and 5-7 business days to send my laptop out and put a new drive in it.

The PowerBook Guy office just around the corner from the San Francisco Apple Store replaced my hard drive and gave it back to me in 2 hours. So I’m up and running again.

I think my future backup plans will be to do a full backup to my pocket hard drive every week as part of my work routine. And every night I will back up the work and book-editing files.

It was interesting to see what bits of the computer are crucial for me to feel comfortable. Firefox profile is way more key than I realized. Thunderbird profile is also very useful. Adium contacts. The keychain. My various .rc files. Ecto. My greasemonkey scripts and other python and Perl stuff for work. But with just the Firefox profile and a term window I can be up and running at a basic level from my own shell accounts (on pair and dreamhost). So now I’m trying to come up with some super basic set of “junk that I need” which I could carry around on my tiny flash drive.

Go and back up your data right now, by the way!

Excite@Home bankruptcy trainwreck continues in slow motion

I cannot believe that I’m still getting legal notices about the Excite@Home bankruptcy and the pay they still owe me from October 2001. For real? Seven years of an utter waste of time and resources. How many lawyers are frittering away their lives and raking in the dough on this bullshit? They gave me most of my money long ago, from when they bounced all our last paychecks.

It stirs up my ire to get these snail mails, sometimes big fat packets of totally pointless legal documents. Some freaking genius should have made a webpage about a million years ago, for creditors (like me) to keep an email contact updated and they’d be able to pay us all that much more in saved postage costs.

Mostly though, I remember surviving the rounds of layoffs, reading Fucked Company every day along with all my co-workers, while then enduring the incredibly wankery company-wide pizza and beer meetings in the “garage” with endless power point slide shows about how great we were doing, that were obvious lies.

And the way they’d do some weird NASCAR event and whoop it up as if that was going to solve all our problems because it was cool.

The one satisfying thing was when they axed a couple of buildings after one brutal layoff, I took a whole lot of the office stuff and furniture they were throwing away and hauled it in my truck to donate it to the nearest elementary school, where second grade teachers fought like tigers over staplers and pairs of scissors. Where is the justice. They were desperate for petty office supplies while five blocks away a bunch of us basically wasted oxygen reading Fucked Company, downloading shit from Napster, and sighing bitterly as we waited for the axe to fall. *

There were some nice people at Excite (aka WebCrawler) that I worked with, but man, that company was so clearly going down. It was sad.

Anyway, everyone keep in mind if you need to get riled up, that there’s a bunch of really rich bankruptcy lawyers sailing their yachts around and enjoying their home movie theaters, still reaping the rich rewards of the dot-com crash.

* Note to future employers, actually I am a super hard worker until everyone around me has been laid off and doom is in the air.

Joy of unit testing

(From about 2 weeks ago, late at night)

I was just vaguely napping and realized I was still thinking in my sleep about the php code I had just been writing. Though I barely even know php at all, it wasn’t that hard to just guess at it because it was mostly like Perl. My thinking in Perl is a bit stuck. Today with Oblomovka I wrote out what I wanted my program to do, then he started writing tests. At first I didn’t get it that the tests didn’t run actually in the program. My thinking was inside out. I thought I’d run a bit of code, then run something that tested if it did it right, or that error/die statements would be sprinkled around. But as I saw what Oblomovka was doing it was like a light went on and I felt like everything I’ve written has been incredibly sloppy! Works fine, tells you if it doesn’t work, but was like wearing shoes instead of making a road. Or the other way around.

It was really fun to write the very simple tests and then figure out how to send it the simplest possible thing to fake it out so that the tests would pass. So for example if you were writing a simulated ball game, you would not start by simulating a baseball game. Instead, you might vaguely sketch out what happens in a game. Then, you’d write a test that goes like, “Does a ball exist? If not, FAIL.” You would watch it fail. It’s supposed to. Then think of the smallest thing it needs to do to pass. Your program would then merely need to go, “Oh hai. I’m a baseball” and the test would pass. You’d write another test that goes, “Is there a bat?” and “Is a baseball coming at my bat?” As you write fake bats, balls, and ball-coming-at-you actions, the baseball game starts to take shape. All the tests have to keep passing. The structure of how to build it becomes more clear, in a weird way. This isn’t quite the right analogy. I can’t quite get into the way of thinking and end up just hacking quickly on ahead. But for a little while, I felt the rightness of this way of doing things.

Technorati Tags: , , ,

Socialtext, and ongoing Wiki Wednesdays

I haven’t been posting here very often as my medical and disability issues got kind of intense. I went on short-term disability for a couple of months, and am going to stop working full time for a little while. While I’m leaving my job at Socialtext, I’m going to continue contracting for them on an occasional basis.

Working at Socialtext was an intense experience, less like drinking from the firehose and more like being blasted by a giant non stop river of information and communication. It was very interesting “ambient work.” I hung out with my co-workers on many wikis, on chat, irc, over email, and sometimes in person.

Tony Bowden, Casey West, and Dan Bricklin worked with me on an open source release of Socialcalc and on planning its possibilities, as well as working on open source licensing and legal issues. I was on call any time for Ingy döt Net to test his wiki hacks and help him debug, and Perl goddess Kirsten Jones was always around to help me with my questions. I got to hang out in Socialtext’s co-working space and have some great conversations with Adina Levin and Pete Kaminski, and especially appreciated Adina’s willingness to listen and to take time to act as a mentor. Chris Dent wrote so much great & thoughtful wiki theory and thoughts on software development; I just wish I had gotten to pair with him on a project, but maybe sometime in the future. It was great working with Jon Prettyman, Chris McMahon, Shawn Scantland, and Ken Pier on new releases, and any time I got to work with or hang out with Lyssa Kaehler, Zac Bir, Melissa Ness, or Brandon Noard it was a pleasure. Probably the nicest part of working at Socialtext, I mean besides the decadent hot tub parties, was getting to team up with Luke Closs, whose super clear explanations and agile coaching totally rocked my world. Seriously, I can’t say enough good things about the engineering, support, and QA crew at Socialtext.

Then, I think of how Socialtext basically paid me to spend time helping with things like BarCampBlock and Wiki Wednesday. The Wiki Wednesdays were especially lovely. It was kind of funny, because all the literary readings I have run in the past turn out the same way; an eclectic crowd of people who don’t know each other and wouldn’t otherwise have met, kicking around ideas in a laid back atmosphere — rather than big events that are lecture-style. I also really like to find interesting people who are not the usual suspects; who are total rock stars but in a small niche that is not visible to people who are rock stars in other niches. Anyway, it was through Wiki Wednesday (and sometimes through random co-working arrangements) that I met fun and inspiring people like Eugene Eric Kim, Jack Herrick, Eszter Hargittai, Bryan Pendleton, Betsy Megas, and Philip Neustrom.

Wiki Wednesday is continuing, run once again by Socialtext’s social media visionary Ross Mayfield. I hope that a good crowd of people from different wiki communities, platforms, and companies will flock to the event. Other local wiki events coming up: the Freebase User Group run by Kirrily Robert at Metaweb, which just happened, but another one is coming up in April. And then, a fantastic-sounding wiki event I haven’t been to yet, Recent Changes Camp, which will happen May 9-11 in Palo Alto, and which I hope will be as good as the past ones in Portland and Montreal.