Work

It’s been an interesting (and busy) week at work. I left work after 6:30 every day this week except Wednesday, when I left at 6 for a baseball game and returned for more work from 9:30 to 10:30.

Monday and Tuesday were some last-minute tweaks to the login page reskin (which you can now view at https://login.salesforce.com) and other miscellaneous foo. I don’t remember exactly why I stayed late those days now.

Wednesday was a patch release that I got pulled into. Ultimately, they found an issue and rolled back the release. It was also a A’s baseball game with various teammates. $2 tickets and $1 hot dogs are fun.

Thursday was the re-release of the patch, so I had to gackwatch that. After it went out, we found an issue with the new login page that I had caused by checking in an incorrect configuration. This resulted in an emergency release that lasted until 11:30, so I didn’t get home until 11:45. I didn’t mind staying, since I had caused the issue, but felt really bad for all the other people that got pulled into the mess. Meh. I guess we learned some valuable lessons about the importance of peer reviews and testing differences between internal and production environments. And at least the problem didn’t cause any breakages, persay… just annoyance. I’m also incredibly thankful that it was only a small config change, which meant the fix could be deployed in about 2-3 hours instead of requiring a full code release, which takes around 6 hours to stagger.

Today was the Sandbox release. I fortunately didn’t have to work it, but I stayed late anyway for the food and to finish up some refactoring work.

Next week will be similarly busy because I have some stuff I want to finish and get checked in before I leave for Thailand. Hopefully I won’t need to stay late often, though. I’m tempted to go in tomorrow to do some work because there’ll be leftover food from tonight and I really want to get the next project (which is awesome and a lot of fun) done, and also to verify the checkin I made today at 6.

I leave for Thailand for a month on May 23. Internet access will likely be spotty, so you should contact me through email.

I should sleep soon, as it is almost 2:30. I have been working on the redo of Student Wars v2 for the past 3 hours or so. It’s coming along nicely… I’ll post some cards next time.

Moar foods

I made salsa chicken today. It’s really easy: bake a chicken breast at 350 for 25 minutes. Place on a microwave-safe plate, douse in salsa of your choice, and lay thin strips of cheddar across. Microwave for 30 seconds to melt the cheese and heat the salsa. Nom nom. Tasty and pretty, since the cheese gives it stripes.

I also made the blackberry muffins again so I could take some into work tomorrow. I cut the blackberries into thirds (crosswise, so each piece is a little disc) and they came out much better. I also got one less muffin out of the process, but this makes sense, since there is less room for air when you don’t have lots of whole blackberries in each muffin. I topped each one with a whole blackberry and they look rather nice, as well.

I made french toast for breakfast. It always surprises me how simple such things are to make (muffins, pancakes, omelettes/breakfast sandwiches, french toast) and how much of a premium they can fetch in grocery stores or restaurants ($1.25 for a preservative-laden muffin?! $5 for an omelette?!). Besides, cooking is fun and tasty.

Today Dan and I went to see the How Weird fair (which, appropriately, is on Howard street). It was rather tiny, but amusing… there were 5 or 6 different DJs in various areas, arranged such that their music never overlapped. There were also a bunch of weirdly dressed people. Overall, it was smaller than I think either of us were expecting, but still interesting. I just wish I had taken my camera and attempted to shoot with it :P

Mmm food.

Muffins!

I made blackberry muffins today, since Safeway has blackberries for $1 this week. However, I wanted something relatively healthy, so I made them without oil or egg yolk.

1/2 cup fat free milk
1/4 cup + 2 tsp unsweetened applesauce
2 egg whites
1 1/2 cup whole wheat flour
1/2 cup sugar
2 tsp baking powder
1/2 tsp salt
1/2 tsp cinnamon
1 container (~6 ounces) blackberries

Beat egg whites and mix in milk and applesauce. In a separate bowl, mix flour, sugar, baking powder, cinnamon, and salt. Combine the liquids and dry ingredients, stirring until well mixed. Stir in blackberries. Fill cupcake cups and bake at 400 degrees for 25 minutes.

They came out really tasty.


Cooked blackberries look more like raspberries than blackberries. Weird.

Changes I would make after eating 3 (they’re really good and I can’t stop ahhh):
Cut up the blackberries so the muffins don’t end up with huge chunks in them.
Grease the pan and bake them without the paper because they are really difficult to peel off.

Lately I’ve been making tasty sandwiches for lunch with ham, spinach, and cheddar cheese. They’re really simple and really delicious.

Also, our rent is going down next year by about $240/month. That’s pretty nice.
The $120/month I save will almost cover food for me… since I’ve been cooking more often (I’ve eaten out once in the past 2 weeks), I’ve been spending far less on food and eating healthier. I suppose part of this is that I plan my meals around whatever is on sale that week and always save at least 50% on my bill each shopping trip, and stock up on nonperishable basics (soup, canned veggies, pasta) when they go on massive sale. Yay food.

Tomorrow I will be making salsa chicken II: baked chicken breast covered in spicy salsa and cheese. (Last time was salsa verde over chicken drumsticks.) I should go buy some rice to go with that or something.

…I wonder what would happen if I substituted applesauce for oil in things like rice-a-roni. This might be worth an experiment to see how terrible it is.

Life is awesome.

plsql fun

Here’s a fun little question for those of you who aren’t experts at plsql…

Given this plsql code

procedure helper_method(
   iChange IN boolean,
   oValue OUT number
) IS
BEGIN
    IF iChange THEN
        oValue := 2;
    END IF;
END helper_method;

procedure do_test(
    oValue OUT number
) IS
BEGIN
    oValue := 1;
    --Checkpoint 0
    helper_method(true, oValue);
    --Checkpoint 1
    helper_method(false, oValue);
    --Checkpoint 2
END do_test;

and this java code (assuming the right frameworks for calling into plsql)

public void doTest() {
    IntOutParam out = new IntOutParam();
    sqlCall("do_test", out);
    System.out.println(out.getInt());
}

what is printed out when you replace the checkpoint comments with a RETURN; statement?
The answer surprised me… I actually stumbled across this at work today and it took me a while to figure out.

Replacing checkpoint 0 with RETURN; prints out 1, as expected.
Replacing checkpoint 1 with RETURN; prints out 2, as expected.
Replacing checkpoint 2 with RETURN; prints out 0. Huh?

Can you spot why and what the fix should be?
Hint: Swapping the order of the true/false calls would result in outputs of 1, 0, and 2 respectively.
Huge Hint: At checkpoint 2, the value of oValue is actually null.
See comments for the solution.

So yeah, now you know something to watch out for when programming in plsql :)

Freebies!

I’ve been following consumerist lately, and have gotten quite a few free coupons. Today, I got a free 8×10 print at Walgreens, free 2-piece grilled chicken meal at KFC, and a free Kashi frozen meal at Safeway. Safeway also has a few good deals this week, including $1.77 milano cookies and $1 blackberries. Yay for cheap-or-free food-or-things. :D

Work has been exciting lately. I’ve been working on reskinning the login page for the past few days… it’s made me realize how behind I am on new webdesign paradigms. Apparently, everything nowadays is done with CSS and the HTML itself is very minimal (sometimes to the extent that the page without CSS looks like a plain text file–unformatted black text on a white background). This is all fine and good except it often involves hardcoding pixel values in the CSS. Unlike tables, which will grow to fit larger text, CSS-styled divs will do strange (and often undesirable) things. This led to a few hacks that I ended up doing to get stuff looking right after localization. Meh. I really need to do webdesign again.

Life has been good. I’ve been working a bit on a redesign of Student Wars v2 to make the cards cleaner (AKA less text). Eventually, I’m going to release the game freely (instead of behind a password) so more people can play. Whee.