Nothing But Words

Mike Toppa’s Blog

About | Contact | Archives | Photos | WP Plugins

Does Batman Eat Ice Cream?

Batman in a top hatBatman in a top hat
Batman in a top hat28-Jan-2009 06:13SONY DSC-W55, 2.8, 6.3mm, 0.025 sec, ISO 100
Eidan with his wizard hat and capeEidan with his wizard hat and cape
Eidan with his wizard hat and cape04-Oct-2008 07:18SONY DSC-W55, 2.8, 6.3mm, 0.01 sec, ISO 250
Kai in his home made Iron Man costume, battling Eidan in his Spider Man / Darth Vader / Wizard costumeKai in his home made Iron Man costume, battling Eidan in his Spider Man / Darth Vader / Wizard costume
Kai in his home made Iron Man costume, battling Eidan in his Spider Man / Darth Vader / Wizard costume02-Nov-2008 04:22SONY DSC-W55, 3.2, 7.2mm, 0.003125 sec, ISO 100
Eidan and Kai goofing around at homeEidan and Kai goofing around at home
Eidan and Kai goofing around at home10-Nov-2008 01:49SONY DSC-W55, 2.8, 6.3mm, 0.025 sec, ISO 100

Eidan got a new Batman costume last week, and he’s been living it since he opened the package. So far we’ve succeeded in removing it only once, just long enough to wash it. The first day he wore it, he started stomping around the house scowling and flinging foam rubber batarangs, but then broke out of character for a minute to explain the look on his face, “I not mad mommy, I Batman.” After dinner we had ice cream, and after eagerly picking up his spoon, Eidan then hesitated and looked at us with great concern, “Batman eat ice cream?” We assured him that Batman loves ice cream, so he ate up.

Maria and I have picked up a phrase from Eidan: instead of saying “it’s getting dark,” he says “it’s darking.” Once it’s completely dark, then it’s “big darking.” Since English is a living language, it’s rules change as common usage changes over time. If we can get enough people to adopt “darking” as a verb, maybe we can get the OED (Oxford English Dictionary) to recognize it ;-) .

Eidan has also developed a knack for asserting his own reality. Often when he gets in trouble, he’ll say, “you not mad Daddy, you happy!” Then to demonstrate, he’ll plaster a big grin on his face. If he asks me for something, and I say no, he’ll usually come back instantly with “Mommy say yes.” It hasn’t worked yet, but he keeps trying. If I ask him “why?” about anything – why are you doing that, why do you like it, etc – all I ever get back is “’cause yes” or sometimes “’cause no.” And one time, after I carried him and his big wheel most of the way around the block after he decided he didn’t feel like riding it (or walking), I told him I was tired and he’d have to walk the rest of the way home. “You carry me Daddy. You not tired. You shirt not wet.” Since I wasn’t sweating profusely, I wasn’t working all that hard, right?

And Kai is turning into the next Yogi Berra. Here are some of his latest linguistic gems:

  • On his way to a friend’s house, Maria asked him if he remembered our home phone number, in case he needed to call us. “Yes, mommy, of course I remember, I know it like the back of my head!”
  • While playing with action figures with a friend, he said, “let’s pretend it’s the day after yesterday.”
  • Right after he did something he just said he wasn’t going to do, he explained, “my brain has a mind of its own.”
  • “I’m starving, my stomach is fully empty!”

Shashin 2.3 Now Available at wordpress.org

Beta testing is now done, and Shashin 2.3 is available for download from wordpress.org. If you have the beta version, go get the final version from wordpress.org. Thanks very much to everyone who helped with testing – you found bugs that I had missed and provided helpful feedback on the new features.

Update 2/10: …even more bug fixes – version 2.3.4 is now available. A few people using Shashin with WordPress on Windows were having problems adding certain photos. This is fixed now (the problem had to do with photos that had no date indicating when they were taken – mySQL on Windows insists on having a date). Also, the [salbumlist] tag is now working again (I overlooked it in my previous testing). Lastly, you can now put more than one [salbumthumbs] or [salbumlist] tag on a page (it never occurred to me to try this, but someone wanted to, and now it’ll work).

Update 1/30: Yet another minor release is now available – version 2.3.3. I rewrote the album syncing method for faster performance. There should be a noticeable improvement when clicking “sync all,” especially if you have a lot of albums (or a lot of photos in your albums). I also fixed a bug – Shashin wasn’t correctly updating its photo data when an album was moved from one Picasa album to another. Shashin can now also handle a # character at the end of album URLs when adding an album (the # appears in certain Picasa links – it’s not actually part of the album URL, and it was tripping up the RSS feed).

Update 1/25: Another bug fix release is now available at wordpress.org – version 2.3.2. This is an important one, so please upgrade. You’ll need to deactivate and then reactivate Shashin after uploading the new version. It fixes a problem with albums getting added multiple times when you try to sync albums. It also fixes a problem with the album thumbnail widget – it now automatically links the album thumbnails to Picasa, instead of trying to load all your photos in the sidebar. And it includes the first localization file contribution – Shashin in Dutch!

Update 1/23: I just updated Shashin at wordpress.org with a couple of bug fixes (version 2.3.1). It wasn’t loading language localization files correctly, and in certain situations it was reporting a database error when there wasn’t one. Both problems are fixed.

Thank You, Senator Norris

Today, on Obama’s inauguration day, I’d like to offer my thanks to a former Senator from Nebraska, George Norris, for bringing us the 20th Amendment to the Constitution:

The 1933 “Norris Lame Duck” Amendment, as it was popularly known at the time of its ratification, eliminates the December to March Congressional “lame duck” short sessions… The amendment also moves the inauguration date for president and vice president from March to January… The amendment’s author, Senator George Norris, concerned with congressional efficiency and accountability, regarded it as one of his greatest achievements.

Having the inauguration in March hampered previous incoming Presidents during times of crisis, most notably Lincoln during the Civil War and Roosevelt during the Great Depression. Woodrow Wilson was so concerned about the effect of an extended lame duck period on the war effort if he lost his re-election bid in 1916, that he planned to resign immediately if he lost:

The final result was exceptionally close and the result was in doubt for several days. Because of Wilson’s fear of becoming a lame duck president during the uncertainties of the war in Europe, he created a hypothetical plan where if Hughes were elected he would name Hughes United States Secretary of State and then resign along with the vice-president to enable Hughes to become the president.

Obama’s been President for about 10 hours now, and I’m still waiting for world peace, electric cars, a revived economy, universal health care, and, of course, my jet pack. No President in my lifetime has come into office with such high expectations (due to both the multiple challenges we face, and the type of campaign Obama ran). But one thing is for sure, the Bush administration has been in “not my problem” mode since before the election, and I’m very glad to see Obama in office now instead of March. So, thank you, Senator Norris, and good luck, President Obama – you’re going to need it.

Workaround for Using Unlisted Picasa Albums in Shashin

Update 2/14/2010: As of version 2.6, Shashin now has support for unlisted albums, so you no longer need the workaround described in this post.


There’s still no support for unlisted albums in the new version of Shashin, but there is a workaround. If you temporarily make your unlisted album public, then add it to Shashin, and then make it unlisted again, it will work in Shashin. If you later add photos to the album, you’ll need to briefly make it public again to sync it with Shashin. I was actually surprised this worked. Shashin is able to display the photos even without the authkey for the unlisted album. It seems that Picasa requires an authkey to access the Picasa pages that display the unlisted photos, but doesn’t require an authkey for the images themselves.

The reason I haven’t added better unlisted album support yet is that it’s more difficult to do than it might seem. I could use an album’s authkey to give Shashin access to an unlisted album’s RSS feed. However, Shashin also needs to access your Picasa user feed, which contains important metadata about all your albums. Unlisted albums don’t show up in the public version of that feed, even if an authkey is available.

To access that feed, I’ll need to give Shashin the ability to log in to your Picasa account. This is possible with the Picasa Web Album API. There’s an officially supported PHP library for interacting with it, but the problem is that the library is over 3MB in size, and I don’t want to bundle something that enormous with Shashin.

I wrote my own authentication routine using Google’s ClientLogin method for another project, but that approach isn’t appropriate for a distributed web application like Shashin. I’ll have to figure out their AuthSub method instead, which is intended for web applications. So… look for better unlisted album support in a future version of Shashin, and hopefully the workaround described here will get you by in the meantime.

Shashin 2.3 Beta is Here

Shashin 2.3 is a complete rewrite, with more robust error handling, improved security, and several new features. I’m initially releasing it on my site only, as a beta release. Update: The final version is now available for download at wordpress.org:

Download Shashin 2.3 Now.

I’ve done a fair amount of testing myself, but since it’s a rewrite, there’s the possibility of new bugs where there weren’t any before, so I’m looking for help testing it before I make it more widely available on wordpress.org. Please use the comments section on this post to let me know if you run into any problems.

If you’d like to see an overview of the code, here’s the Shashin 2.3 phpdoc documentation.

Important installation instructions if you’re upgrading:

  1. Make a backup copy of your current Shashin files
  2. Deactivate Shashin
  3. Delete Shashin from your plugins directory (this will not harm your Shashin photo data)
  4. Unzip and upload the new version
  5. Reactivate Shashin
  6. Go to the Shashin settings page. You will need to reset your options (they’re stored in a different way in Shashin 2.3, and it doesn’t inherit from previous versions)

New features and how to use them:

  • Automatic daily synchronization of all your Shashin albums with Picasa. This is turned off by default – you can go to the Shashin settings page to turn it on. This was the last feature I added and I haven’t tested it thoroughly, so I’d especially appreciate feedback on this.
  • Internationalization: Shashin now comes with a shashin.pot file and will work with localization files you create. If you create a translation for Shashin, please send me your localization files and I’ll include them with the Shashin distribution.
  • Simplified use of the [salbumthumbs] tag. If you’re using Highslide with Shashin, you no longer need a second page with the salbumphotos tag to display an album’s photos. Just click an album thumbnail, and the page will reload showing thumbnails of the album’s photos. On the Shashin settings page you’ll see a new set of options for specifying the thumbnail size, sort order, etc.
  • Repurposed [salbumphotos] tag: you can now use it to show all the photos for an album, without having to first click an album thumbnail. This means the syntax has changed slightly – the first argument is now an album key:
    [salbumphotos=album_key,max_size,max_cols,caption_yn,description_yn,order_by,float,clear]
  • Improved usability for the Shashin admin menus. You can sort your albums and photos by clicking on different column headers. Also, Shashin makes use of the new styling options in WordPress 2.7 to make the album list easier on the eyes.
  • The [srandom] and [snewest] tags used to require either a single album key or the word “any” as its first argument. You can now also provide multiple album keys. Here’s an example:
    [srandom=3|7|2,288,2,6,n,none,both]
  • For each of the Shashin widgets, you can now specify CSS “float” and “clear” values.
  • Uninstall option: this will delete the Shashin database tables and delete all the Shashin options from the WordPress options table. You can never get your photo key and album key numbers back if you do this, so only uninstall if you really don’t like Shashin :-(

Bug fixes, security fixes, and error handling:

  • If you list multiple album keys or photo keys in a Shashin tag, they’ll now always display in the order you listed them.
  • There were a number of minor bugs with Shashin widgets. I won’t list them all here, but it’s probably safe to say that if you noticed something that wasn’t quite right with one of the widgets, it’s fixed now.
  • Better protection against SQL injection (this is a very low risk for Shashin anyway, since it doesn’t take user inputs through public-facing pages, but the extra protection can’t hurt).
  • Removed an XSS (cross site scripting) vulnerability.
  • In the admin panels, Shashin used to report the same error message regardless of what really went wrong. Now the error reporting is much more specific, which will make debugging much easier.

Acknowledgements

Update 1/21: the official release is now available at wordpress.org. Thanks to everyone who helped with testing! The download link above now points to wordpress.org.
Update 1/18: I’ve uploaded another revised version, thanks to a couple bug reports I received. You’ll need to deactivate and reactive Shashin for one of the fixes to go into effect (there was a datatype problem with the date fields, resulting in albums and photos not always sorting in the right order).
Update 1/16: the documentation is now updated for the Shashin 2.3 beta. Also, I found and fixed two very minor bugs. The download link below includes the fixes.

Christmas in Newport and Philadelphia

Our pathetic Christmas treeOur pathetic Christmas tree
Our pathetic Christmas tree21-Dec-2008 12:53SONY DSC-W55, 2.8, 6.3mm, 0.025 sec, ISO 100
Ice in our backyard, a few days before ChristmasIce in our backyard, a few days before Christmas
Ice in our backyard, a few days before Christmas22-Dec-2008 00:29SONY DSC-W55, 2.8, 6.3mm, 0.0125 sec, ISO 100
Closeup of the ice that coated everythingCloseup of the ice that coated everything
Closeup of the ice that coated everything22-Dec-2008 02:32SONY DSC-W55, 8, 8.2mm, 0.003125 sec, ISO 100
Eidan in his Iron Man costumeEidan in his Iron Man costume
Eidan in his Iron Man costume21-Dec-2008 22:42SONY DSC-W55, 2.8, 6.3mm, 0.025 sec, ISO 100
Kai on Christmas EveKai on Christmas Eve
Kai on Christmas Eve25-Dec-2008 09:33SONY DSC-W55, 2.8, 6.3mm, 0.025 sec, ISO 250
Mike and Eidan at Terry's house on Christmas EveMike and Eidan at Terry’s house on Christmas Eve
Mike and Eidan at Terry’s house on Christmas Eve25-Dec-2008 09:33SONY DSC-W55, 2.8, 6.3mm, 0.025 sec, ISO 320
The next generation, at their finestThe next generation, at their finest
The next generation, at their finest25-Dec-2008 08:01SONY DSC-W55, 2.8, 6.3mm, 0.025 sec, ISO 250
Eidan and Kai wrestling with Uncle PaulEidan and Kai wrestling with Uncle Paul
Eidan and Kai wrestling with Uncle Paul26-Dec-2008 01:57SONY DSC-W55, 2.8, 6.3mm, 0.025 sec, ISO 100
Eidan passed out on a chair after all the Christmas excitementEidan passed out on a chair after all the Christmas excitement
Eidan passed out on a chair after all the Christmas excitement27-Dec-2008 05:32SONY DSC-W55, 2.8, 6.3mm, 0.025 sec, ISO 100

Christmas started early for the boys, as they opened their presents on the Sunday before Christmas. Our decorations were even more pathetic than usual this year. Maria is always overwhelmed with grading work for all her students at the end of the semester, and I was preoccupied with the repair work in the wake of our plumbing disaster. But of course the boys still made out like bandits.

They got their presents early from us because a few days later, we went to Newport to spend Christmas with my family. Holiday trips to Newport are always a whirlwind experience for us, as I have a ridiculous number of relatives to visit in such a short time. It’s complicated – I’ve got half-siblings, steps, ex-steps – but to me they’re all simply family (and the boys may not have figured out exactly who everyone is yet, but they do know that they get plenty of presents). The standing joke in the family is that my half-brother and half-sister – who are not related to each other in any way – should get married, so that we can all become each others in-laws too. It would be like that old song, I’m My Own Grandpa.

A Belated Happy Holidays

The last few months have been crazy, and I’m glad 2009 is here. I was working two jobs for a while – my full time position back at U Penn, and running the candy business. The candy business is now completely shut down (aside from dealing with all the taxes…). Last month we had a plumbing disaster in our house – a section of the waste pipe from the 2nd floor bathroom cracked in the living room wall. Fixing it involved me tearing open walls, ceilings, and floors in 3 separate rooms – I’ll post pictures of all the repair work soon. I’m also finishing up one last project from my brief stint as a consultant, and I’m close to getting the next version of Shashin out the door. I’ve been swimming three times a week to keep my back problems in check, and as you can tell from my recent posts I was obsessed with politics during the campaign season. And somewhere in there Maria and I have been taking care of the boys, and we try to see each for a few minutes here and there. So here’s to a new year that I’m hoping will be not quite so insane.

You may recall the horrific story from Black Friday, when a Wal-Mart worker was trampled to death by a mob of frenzied holiday shoppers. This inspired the holiday cards my brother made (you might say a certain outlook on life runs in my family…). He made 17 different cards based on the same drawing, with different quotes from Jesus and Santa for each person he gave the cards to. Here are scans of two of them. I’ve asked him to email the text of the other quotes he came up with so I can add them to this post.

Black Friday 2008: “I dunno, Jesus... I think supporting 'Buy Nothing Day' would be bad for the economy...” - JDK 2008Black Friday 2008: “I dunno, Jesus… I think supporting ‘Buy Nothing Day’ would be bad for the economy…” – JDK 2008
Black Friday 2008: “I dunno, Jesus… I think supporting ‘Buy Nothing Day’ would be bad for the economy…” – JDK 2008
Black Friday 2008: “Do you think it's time we 'fessed up and told everybody we're not real?” -JDK 2008Black Friday 2008: “Do you think it’s time we ‘fessed up and told everybody we’re not real?” -JDK 2008
Black Friday 2008: “Do you think it’s time we ‘fessed up and told everybody we’re not real?” -JDK 2008

You are currently browsing the Nothing But Words blog archives for January, 2009.