Jobs that Pay

From an article on CNN, and kind of a follow up to my post on What America Earns, here are a list of jobs that pay over $20/hour.

  • Casino gaming supervisors
  • Health educators
  • Subway and streetcar operators
  • Respiratory therapists
  • Curators
  • Cartographers
  • Multimedia artists and animators
  • Arbitrators
  • Urban and regional planners
  • Loan officers

I found it a bit surprising that jobs such as cartographers still exist (where’s the haberdasher, then?).

60 Words

Beijing Olympics 2008 – Want to Join?

I’m heading to the Olympics in Beijing this August and have spare tickets to all the events I’m attending: tennis, beach volleyball, athletics, basketball, triathalon, and football (aka soccer). My buddy and I managed to get them at local prices so we scored four tickets to five events for about $200, leaving each person with only $50 per set of tickets.

The dates are August 15th to August 19th, and flights are looking to be roughly $1300. We’ve also secured an apartement to rent for a week, which will come to $250 per person. Not a bad deal to go to Bejing and see the Olympics.

If you’re interested in joining, get in touch!

P.S. this is my first blog post in nearly two months — and no, it’s not an April Fool’s Joke!

131 Words

PHP Annoys Me, Sorta

I’ve been learning (re)-learning PHP the last few weeks for fun and there’s a lot to the language and community that I’m loving. The PEAR libraries are by and large fantastic – there are hundreds of them, even on the most esoteric subjects (Image/Barcode?). However, there’s a ton about the language itself that is driving me bonkers. I’ll give a few examples. Now, before I get totally flamed, I know this is probably 80% me not knowing enough about the various language features to get around these issues, so bear that in mind.

Example 1 – Compound Statements are for the Weak

I have a class, that returns an associative array. I want to be able to access it like this:

$oldest_value =  $viz->find_oldest_newest()["oldest"];

This makes sense. $viz is an an instance of a class, find_oldest_newest is a function that returns an array, and [“oldest”] is the accessor in to that array.

Nope, sorry says PHP: Parse error: syntax error, unexpected ‘[‘. However, this works:

$tmp = $viz->find_oldest_newest();
$oldest_value = $tmp["oldest"];

Example 2 – DateTime is Crazy

Where do I begin. First of all, pretty much the entire C library exists with date(), time(), strtotime(), etc. That’s great, that’s good. They all work on standard Unix timestamps. It starts to get crazy when you throw in the DateTime. For a guy like me, you’re used to objects to deal with this kind of stuff (e.g. timezone offsetting), so I gravitated towards using the DateTime object.

First of all, the DateTime constructor doesn’t take a Unix timestamp directly as a value. You can blame ducktyping here, but this is what you have to do to get a DateTime from a Unix timestamp:

date_create("@" . $rawdate)

Second, the DateTime object has no default toString! I can’t explain how frustrating it is to always have to date_format something when I should have just been able to echo it directly. It leads me to a mess like this:

public static function format_date($rawdate, $format)
{
if(gettype($rawdate) == "integer")
return date_format(date_create("@" . $rawdate), $format);
elseif(gettype($rawdate) == "string")
return date_format(date_create("@" . strtotime($rawdate)), $format);
elseif(gettype($rawdate) == "object")
return date_format($rawdate, $format);
}

Example 3 – Types? What Types?

Go ahead, tell me what the difference should between gettype() and get_class(). Thought about it? Nothing was your answer? Exactly. Not in PHP. gettype() only works on primitives. For objects, it returns “object”. And get_class, it doesn’t really work on primitives. Now, I get it that PHP was originally not an object oriented language. But when in PHP4? PHP5? they started baking OO notions in the language, why not make it complete and make the primitive data types objects.

Example 4 – I, for one, accept our new String overlord

If you look at a couple of the examples above, half the default library functions return a string data type as their result (e.g. gettype()). When did strongly typing go out of fashion? I get ducktyping, it’s all good. I used to write a lot of VB (VARIANT, anyone?), but that isn’t an excuse to throw strongly typed constants out the windows.

What’s wrong with a static class like TypeCollection::String, TypeCollection::Integer, etc, etc. Maybe it’s there and I haven’t found it. Also riddled throughout the PHP libraries is the concept of an array as a data type. If you look at some of the date and time functions, they’ll unpack a timestamp in to an associative array whose keys are “minute” and “second”.

Okay, I’m done venting. PHP is acutally pretty cool. Like I said the PEAR libraries (Image/Graph, while still under development, is amazing) are phenomenal, and the availability of community resources is a big win for me. I just wish that some things of the language didn’t seem to, well, kludgey.

649 Words

Goodbye Microsoft, a Look Back, and Hello Adobe

Last Friday was my last day at Microsoft. It’s taken me a while to write this post, because I’m not really sure what to say, or what I can say to really sum up what were five amazing years with the company. I started working for Microsoft as a Student Consultant at UCSD in 2001, interned the summer of 2002 (in devdiv, the team that makes Visual Studio and .NET) and again in the summer of 2003 (in Hotmail), and the joined full time in 2003. In so many ways, the path my life has taken has been intertwined and driven in no small manner by Microsoft. I have so many good friends, good stories, and great experiences there, that it was sad to say good bye.

I remember the late nights trying to ship various versions of MSN Hotmail, fire drills dealing with live site issues. I particularly remember one were we upgraded a large number of our servers to new version of our codebase and the huge number of hours we spent debugging and testing and fighting to make things work. We ended up having a few guys from Redmond term serv to our data center, hooking up kernel debuggers and finding issues they’d never anticipated in Windows or IIS. It’s amazingly cool being part of an organization where using our own products internally make them better for our customers. It was great to be a part of the team that shipped Windows Live Hotmail (or “mail Beta” as it was called for a while), all on top of a new .NET based architecture with AJAX-y goodness. That was back in 2005, while people may not think of Microsoft as a forward thinking organization we were building the kinds of web apps people didn’t end up seeing en mass until later in 2006.

Then it was off to Shanghai for a while. What a time that was. There was so much we all learned there about building organizations, about what it means to have great people and to have a great team. I was there for nearly a year and a half, and I learned a lot more about “organizational” skills that I’d anywhere before. And I learned some Chinese! Living overseas was an experience I think everybody should have. It helps you learn so much more about who you are, and about the world we live in. We started this cool Calendar while we were there, and a year later, in November 2007 we shipped a public beta. It was a blast to see something start in Shanghai, then be part of the team in California to go live with it.

I’m waxing sentimental here, but it’s been such a fun ride, full of super smart people who love software and know what they’re doing impacts millions of people every day. I’m proud to be a part of all the teams that I’ve been in, and I know they’ll continue doing great things in the future

What’s next for me? I’ve taken a job at Adobe, in their mobile group in San Francisco. I’m really excited about what’s coming up in the mobile space and there were some really cool opportunities in Adobe to do cool things in the market. Looking around at the market, the mobile space to me feels like the Internet did in, say, 1997. Slowly opening up, with greater bandwidth to end users allowing a great wave of development and content to become a driving factor for consumers. Adobe’s in a great place in the market, already with their software (Flash Lite, etc) installed on 450m devices world wide. They’re making some moves that I found compelling and that I wanted to be a part of. This next year is going to be a crazy ride of learning a whole new segment of the tech industry and I’m looking forward to it.

Between jobs, I’ve taken two weeks off between Microsoft and Adobe. I’m halfway done with my vacation already! I’ve been spending a lot of time in coffee shops, reading, brushing up on coding (finally finding some time to work on a pet project), and cleaning up the apartment. It’s amazing how much better it looks when my frames and art are hung on the moulding and not leaning against the floor.

712 Words

San Francisco Barackified

I voted at a community center two blocks from my apartment. While walking to the polling place, I saw on nearly every door for two blocks placards that said “Vote Today” stuck to door handles. On each one there was a sticker that said for that house what the nearest polling location was. As I was driving through 16th and Mission on all four corners of the intersection. People were honking at them as they drove through the intersection (myself included) and they cheered wildly each time.

I’m totally impressed by the organization of Obama’s street teams and supporters. There at signs on the streets, posters in windows, people on the street, phone calls being made all from Obama’s camp. But what of Hillary? Nowhere to be found, at least in this city. Perhaps that’s not too surprising knowing San Francisco, but in SF, it’s Obamamania.

Now, to glue myself to the television for the next 8 hours.

157 Words

What America Earns

Forbes has a piece on the 25 worst paying jobs in America. I pulled out any occupation that had over 500,000 people employed in it.

  • Food prep (kitchen) with cooking: 2.4 million employed, earning $15.9k
  • Fast food cooks: 600k employed, earning $15.9k
  • Dishwashers: 502k employed, earning $16.1k
  • Counter attendants working at cafeteria, food concession and coffee shop: 524k employed, earning $16.9k
  • Waiters/waitresses: 2.3 million employed, earning $17.1k
  • Cashiers: 3.4 million employed, earning $17.9k
  • Personal and home care aides: 578k employed, earning$18.1k
  • Food prep (without cooking): 871k employed, earning $18.4k
  • Maids and housekeeping cleaners: 900k employed, earning$18.7k
  • Child care workers: 572k employed, earning $18.8k

That’s stunning. Back of the envelope math basically says 12.7 million Americans (people you see and interact with every day) are earning roughly $18,000 a year. That’s roughly 5% of people living on $1,500 a month. The total count didn’t include the other 15 professions that had less than half a million people employed.

After digesting that, look at the article, as it describes the top 25 earning professions and you’ll see how drastic the wealth divide in our country really is.

168 Words

Political Rally Groupthink

I went to my first rally of this political season last night, put on the Asian Americans and Pacific Islandars for Obama group in San Francisco. Kelly Hu (actress from X2, etc) headlined the event delivering an uninspiring speech on why she supports Obama. Actually, a bunch of the speakers before her (mostly from the SF School Board) gave much more impassioned deliveries on the virtues and merits of voting for Obama.

While I’m an ardent Obama supporter, rallys always seem to pray on groupthink. Since the first time I think in 2000 (or was it 1996?) when I started attending political events, it’s always struck me as interesting how people who have never met a candidate can stand up in front of an audience and profess the candidates undying love and devotion to causes we care about.

Last night as speaker after speaker got up to talk, it continued as it always did, to seem a bit phony and groupthink-esque. I can only believe so much that having never met a candidate, that somebody can legitimately stand up in front of an audience and say “This candidate is going to make America better, going to change your life and blah blah”. I’d feel they would be a lot more honest if they said or started with “I believe that…” instead of abusing the podium.

223 Words

Economic Stimulus

While the country is pondering a stimulus package for the economy, here’s an article from Time dated Dec 2, 1929 which details the plans of various Captains of Industry to bootstrap the then moribund economy. I also love how classicly written the article is, in a language we woudn’t hear any more these days.

52 Words

United Online Checkin

I disapprove of United’s online checkin. I’ve had two very different experiences trying it. The first time (my outbound flight), the sales pitch to upgrade (for $29.99) to Economy Plus is so in your face. When you are checking in, you step through the wizard, and the right most button (the one you’ve been hitting “Next” thus far) is now a big shiny “Upgrade now!” graphic. The option to not upgrade is a text link on the left side of the page that you have to read and parse to figure out where it is. Such a sneaky and devious upsell technique. I hate it when online retailers do that.

On the return flight, I was unable to check in online for whatever reason. Instead of telling me that on the first screen it tried to book me on another flight. When I selected I was uninterested in changing, only then did it tell me online check in was not available. I also couldn’t seem to figure out how to check in online without using my Milage Plus information. Unlike every other airline in the world where you can use your name and confirmation number, it asked for my frequent flier login. They need to up their experience to just hit the bare minimum for usablity and get rid of their used-cars-salesmen techniques.

223 Words

Sovereign Wealth Funds

There’s a lot in the news the last couple of weeks about the investments Sovereign Wealth Funds have been making in to American companies. They’re a incredibly fascinating component to the new global flow of money, especially now as they are taking large stakes in America’s capital starved banks. Let’s break down who has done what in the last few months (from NYT):

  • Merrill Lynch: $4.4 billion from Temasek Holdings (Singapore, owner of Singapore Airlines, SingTel, half of Virgin Airlines, etc)
  • Merrill Lynch: $6.6 billion from Korean Investment Corp and Kuwait Investment Authority (the second cash infusion in two months, done as convertible stock)
  • Morgan Stanley: $5.5 billion from China Investment Corporation (formed to manage a fraction of China’s $1+ trillion American dollars)
  • Citigroup: $7.5 billion for 4.9% from Abu Dhabi Investment Authority (wasn’t really in the news until this last year, but has over $1 trillion in management)
  • Citigroup: $12.5 billion from a group including Government of Singapore Investment Corporation (the other major SWF in Singapore, larger in capital than Temasek)

Foreign governments and banks have been the ones basically running the American economy for the last four or five years by buying American debt; it’s only natural they’d want a bigger piece of the pie. Most of the investments have come as non-voting shares, in what would seem largly to avoid the fate of Cnooc attempted buyout of Unocal or Dubai Ports World attempted purchace of P&O. It’ll make an interesting twist if they don’t see returns on their investments and if exercise their influence in American banking.

254 Words