Tag palmtogooglecalendar (12)

shows done! palm to google calendar done!
Mood: cheerful
Posted on 2006-08-01 09:27:00
Tags: asmc palmtogooglecalendar
Words: 257

I am happy to announce that my Palm datebook to Google Calendar app is complete! I was having trouble with the Google authentication (and so were other people using that API), but it all seems to work now, so give it a shot if you're interested. Whee!

The ASMC shows went well this weekend. Saturday was grueling, as usual - it's the only day we have three shows. But a lot of friends came to see it (onefishclappin, krikwennavd, Teresa & Lucas), as well as my family who had driven up from Houston the previous day. I snuck out for lunch with them, which was nice :-) Crowds in general were a little down, but they're still reasonably-sized which is nice. And maybe that means people aren't having to wait in line for a long time to get tickets, which was the case at least some of last year.

If you haven't seen the show, we have a nice gala this Friday night - after the show everyone comes out and mingles and there's a silent auction and a cash bar. I'd highly recommend it!

We hosted game night last night and I played my first live game of Go with Todd - got beaten both times, but I've played so few times that every game is helpful. It's very hard to tell what's going on, though!

Also started a new Civ 4 game yesterday on Noble. Haven't played too many turns and I'm already a little behind, but hopefully I can turn it around. Viva Japan!

Back to the work grind...

7 comments

Maryland pictures up
Mood: meh
Posted on 2006-06-29 10:07:00
Tags: pictures palmtogooglecalendar
Words: 48

Here are the Maryland pictures - didn't get too many that turned out decently.

Yesterday Google released their authentication for Web-based clients (although it seems to have disappeared at the moment - weird!), so I hope to get a working version of the palm to google calendar thing up soon.

4 comments

na nanana nana na na...
Mood: pensive
Posted on 2006-05-31 09:35:00
Tags: movies pictures ruby palmtogooglecalendar
Words: 451

...Katamari Damacy! djedi bought WeKatamari yesterday before he left (thanks!) so I played last night. Goood stuff. I love doing the flower level (collecting as many flowers as you can) - very relaxing. Quitting without saving and losing my data was somewhat less relaxing, but if you think I'm not going to redo those levels tonight, you'd be sadly mistaken.

I have the top Google result for "pic6"! Unfortunately it goes to this picture, but you can't win them all.

Speaking of pictures, I put pictures from Jessica's graduation up last night.

Speaking of things I did last night, the palm to google calendar thing is basically done. I have a few tweaks to do, but I'm going to link to it soon. fairydust1, want to test it?

So last time I talked about getting the ruby script to return that it was done while forking a new process. I was almost correct, but instead of doing this in the new thread:


# Create session and return session id to browser
pid = fork do
$stdout.close
$stdin.close
$stderr.close
# Do long-running stuff
end
Process.detach(pid)

you instead just need to do this:

# Create session and return session id to browser
pid = fork do
$stdout.close
# Do long-running stuff
end
Process.detach(pid)

Closing $stdin and $stderr just leads to problems (which was why passing parameters weren't working before).


Speaking of...umm...lj-cuts, I saw X-Men 3 this past weekend.
I liked it, all in all. The parallel between mutants and gays was extremely striking in some parts. I also liked the shift of power that the vaccine gave the humans - now they had a weapon against the mutants so it wasn't just a case of "watch the mutants kill the humans, who have no hope of ever retaliating". I like Storm the character (especially with the white hair!), but I didn't think Halle Berry did a good job acting this time around, especially during the scene where they're debating whether to keep the school open. It felt very fake to me.

Also, I loooove Ian McKellen. Maybe it's the white hair talking, but I like the obvious mutual respect he and Professor X have for each other. When Magneto lost his power, even though he was clearly a bad guy, I felt very bad for him since his identity was so wrapped up in his power.
If you go and see it, be sure to stay until after the credits end! There's a final scene that's actually very significant.

I'm looking forward to a number of summer movies - at some point I'll post the ones I want to see and y'all can make fun of me. Oh, there was a trailer for Snakes on a Plane, and it was good.

22 comments

warning: good weekend ahead
Mood: happy! not sick!
Music: Lordi - "Hard Rock Hallelujah"
Posted on 2006-05-26 09:37:00
Tags: pictures music ruby palmtogooglecalendar links
Words: 500

Already this weekend (starts on Thursday!) has been good - we finished Maraudon last night in WoW, which was fun (despite an infuriating part where Dextra and I (the two people who can rez) died and had to spirit rez and fight our way back. Scary!), and I got a shiny new dagger and orb.

Another good thing - I'm not sure yet, but I think I've solved my work problem...but not in a great way. It's like finally arriving at Disney World in Georgia (the country, not the state), and you're tired but happy you finally got there, and then getting out and realizing that Tennessee (where you started) is really right across the street from Georgia (the country, not the state). And you think everyone is mocking you for taking such a roundabout journey when you were right there, except they presumably aren't. Whee. I think I'll put this analogy to rest :-)

I have a problem...I cannot stop listening to "Hard Rock Hallelujah"! Seriously. Sometimes songs stick in my head so long, it actually makes my stomach hurt (and can keep me up at night). This song isn't there yet, but it's headed that way...

I put up pictures of Stephen's graduation. Next up - pictures from wonderjess's graduation! And then the pictures I will have acquired in the intervening time. Yikes.

Had a breakthrough in the palm to google calendar thing last night.

So the problem I had been having was that, when you connected to start the syncing process, it wouldn't return until it was done, which means that you couldn't poll for status updates. (actually, I guess you could, but then you'd have two connections open at once unnecessarily) So, I tried something like this:


# Create session and return session id to browser
pid = fork do
# Do long-running stuff
end
Process.detach(pid)

Interestingly, this works when you run the script from the command line, but not when you're doing a POST to it! I'm not sure if this is an Apacheism or something. After digging around for a while, I found the solution is to do something like this instead:

# Create session and return session id to browser
pid = fork do
$stdout.close
$stdin.close
$stderr.close
# Do long-running stuff
end
Process.detach(pid)

(Note: this is incorrect. See update here) and this makes everything work well. Except that I'm having some difficulty access variables declared in the pre-fork section inside the forked process. I bet they're getting destroyed or something when the parent finishes. But, on the whole, I'm closer to getting it to work. Yay!


"How to cheat good" (by a college professor). Tip number 8 is hilarious!

Top 50 Places to Have a Beer in America - I was a little disappointed/surprised there were no Texas places in there. (although this is just the places with highest scores on BeerFly - maybe there's some geographic bias there?)

DeLay campaign cites Colbert bit as evidence of innocence...um, wow. After the White House Correspondents Dinner thing, I thought everyone had figured it out!

7 comments

a few random things
Posted on 2006-05-25 12:42:00
Tags: music palmtogooglecalendar links
Words: 140

If you haven't seen the winning Eurovision song, and you like seeing people from Finland dressed as Klingons (or something), you owe it to yourself to check it out!

So I saw in my referrer logs that some MySpace page was using my spade image (), so I decided to look at the site. Aaand...wow. I think my eyes exploded just looking at that.

I made some good progress on the palm to google calendar thing - it's mostly working and the server is updating status as it goes. Now I need to figure out why the client doesn't poll for status until the server is done, and make the client display status in some nice and friendly way. Oh, and make it a bit more secure, too, just in case. Hopefully in another week or two it will be doneish!

14 comments

brain dump
Mood: hopeful
Posted on 2006-05-15 09:56:00
Tags: ruby palmtogooglecalendar politics
Words: 957

Man, I have a lot of things on my mind!

So Prop 6 passed here in Austin (allowing the city to give health benefits to same-sex couples). I gotta say, it feels really good to finally win on a gay issue here in Texas. Yay!

djedi and I went to his brother's graduation in College Station Saturday morning. It was nice, although the ceremony itself was fairly boring (naturally) and it was fairly chilly inside. We went out to lunch afterwards and we got to meet his girlfriend, who was nice. I also took a toooon of pictures that I need to sort through at some point. A&M wasn't too scary - they say "Howdy" a lot (I could get used to that!), and there was some whooping, but it's all good. wonderjess graduates next weekend, so I'll be flying up to sunny (and hopefully not too cold!) Rochester on Friday.


So, going into the weekend the backend was written mostly (I could update my google calendar by running a ruby script from the command line), so I needed to put a web interface on top of it. This was tricky for a number of reasons.

First of all, the way I have to do authentication with Google right now, I have to ask for the user's Google username and password. They're working on a different way to do this, but for now this is what's required, so I wanted to make sure the page was using HTTPS to collect that information. I set up a certificate (that I signed myself - not worth paying $50 or whatever it costs to have someone else sign it) and after a few hiccups, got things working.

Then I started thinking about how this was actually going to work. The problem is that deleting and adding the entries will take at least 30 seconds, and sometimes much more, so I wanted an asynchronous way to do it. I had read some stuff about Comet, which is a bleeding edge application model. Basically, the idea is that the client opens a long lived connection to the server, and because of this the server can push back data whenever it wants (which isn't possible under normal HTTP). This sounded perfect, because I could connect to the server when the user pressed "Upload", and the server could send back progress updates while it was working, and have the client close the connection when it was done.

So, great. There are some problems. One is that web servers that aren't aware of a Comet-like approach don't scale this approach very well - having lots of connections open for a long time. That's OK for me, I'm not worried about too many people using this thing all at once :-) The other problem is that apparently it's hard to get working correctly. It was hard to find easy to understand examples that actually use this approach, and the one that I did find and understand relied on having the server basically return a text stream that gets progressively updated. I could not for the life of me make this happen correctly - it would wait until the whole thing was done, then display the whole stream, which obviously wouldn't work. I looked around for some other way to do this, and found a Mozilla/Firefox-only solution which was no good. So finally I threw up my hands and gave up on Comet for now. Maybe I'll take another look at it in the future.

So, I decided that the request to upload would finish quickly and return a session ID, and the client could call a script to get the status of that session every few seconds, which would simulate the same effect. This required some way to share session data across ruby processes, and CGI::Session turned out to be perfect for me - it by default stores session data in a file, so I can just read that file when I receive a request to get status.

Another problem was uploading the Datebook file itself - it's easy to do this using a normal HTML form, but because of security restrictions, Javascript can't read files off of the local drive (which makes sense...). So I couldn't use my normal trick of having the "submit" button have an onClick handler that sends the request, because that handler couldn't get the file data. Instead, I found out more information about the hidden IFRAME technique (which was used to do XMLHttpRequest-like things before XMLHttpRequest existed), so I'm having the form do a POST with its target set to the hidden IFRAME. This works well and I can receive the file on the other end - now I need a way of getting the session ID returned to the IFRAME to the parent document (the link I found this morning and looks like it will work well).

I was also baffled for a while that I was receiving the file correctly, and processing it with pilot-datebook, but the resulting file in longtxt format wasn't showing up. After butting heads with the problem for a while, I realized that I was using Tempfile to generate a temporary filename, but it was deleting the file as well, so that was an easy fix.

So most of the hard problems have been solved - I still need to do the processing and integrate that with status reports (and abstract that part out so I can still use the command-line version), and I need to handle errors better (at all :-) ), but I'm very happy with where things are right now.
...in short, things are going well.

Apparently having the NSA intercept domestic phone calls was Dick Cheney's idea, and NSA lawyers were against it.

51% of people disapprove of the domestic spying.

4 comments

weekendish activities!
Mood: blah
Posted on 2006-05-08 09:59:00
Tags: dallas ruby palmtogooglecalendar
Words: 475

So djedi and I went up to Dallas this weekend to visit his sister and two nephews. I had a good time, despite the long drive and somewhat awkwardness (since I don't know them too terribly well). The kids are really cute, though, and they were pretty well behaved. I played with the older one (Donovan) a fair bit and he called me "Uncle Greg" once near the end, which really made me feel good. Man, I don't know how they keep up with them - they're ages 5 and 3 and bursting with energy!

I did take some pictures, but didn't have time to put them up last night. Maybe tonight...

Saturday night we went out to see "Ice Age: The Meltdown" which I wasn't terribly impressed with. It was clearly aimed at kids, but unlike "Shrek" and, oh, every Pixar movie made so far, there wasn't much there for adults. I chuckled a few times, but that was about it. The kids really seemed to enjoy it, too - they're old enough to mostly sit through a movie at the theatre, which is neat.

I hate Dallas. This is not news to many of you, but there it is. While driving up there, I discovered another reason I hate it. So the interstate system has some pretty neat features, one of which is that interstates ending in 5 are roughly parallel across the country (i.e. I-5 goes through California, I-35 and I-45 go through Texas, and I-95 goes along the East Coast, etc.), and interstates ending in 0 are the same thing, but east-west (i.e. I-10 goes through Texas, I-90 goes through, erm, North Dakota or something). However, Dallas totally screws this up - not only do I-35 and I-45 meet in Dallas, so do I-20 and I-30! It's making a mockery of this beautifully designed system. Screw you, Dallas! (the floor is open for more reasons to hate Dallas)

Ooo, might Futurama be coming back?

So I stayed up late last night and made some more improvements to my Palm to Google Calendar importer. I fixed some irritating timezone issues (thanks to the TZInfo module) and, instead of deleting all existing events and adding all new events, now it compares the new ones with existing ones and only deletes and adds ones it needs to. Sort of like a diff/patch type thing. I also went ahead and split up repeating events into individual events so the calendar could handle it - hopefully they'll fix that someday and I can go back. Anyway, once I improve the Palm parsing of events, it'll be pretty much feature-complete and I'll put a web interface on it so anyone can use it. (at least maybe fairydust1 will find it useful) But even if nobody else does, it's very useful for me, and I'm learning more about Ruby and such. Whee!

14 comments

Friday!
Mood: pensive
Posted on 2006-05-05 08:57:00
Tags: robolab palmtogooglecalendar
Words: 246

Yay, Friday! I've been in a very linky mood lately, so expect tons of links later.

After trolling the Google Calendar API group for a bit, I found a post that describes the same problems I'm having with recurrences (and apparently it's being looked into). It's nice to know I'm not alone, at least. Now I need to decide whether it's worth turning the recurrence events into individual ones for now so it will work. The downside is that that clogs up the Palm calendar even more. Maybe I'll do that anyway just to see if I can get it working...

Wednesday was my last Robolab for the year. It started off poorly, as the kids were fairly unruly (legos were thrown...*sigh*) but since it was the last one before Mindstorms Mania (which I won't be able to go to), the ones that had work to do did end up getting to work fairly quickly. I was helping a more rambunctious kid work on programming. At first he was totally not paying attention and kept going across the room to talk to his friends, etc., but I did finally get him working, and he finished his program! I was very proud of that :-) Anyway, I'll probably have to stop by next week sometime to pick up parts I lent them, but that'll be it. I don't deal well with kids (especially around middle-school age), but I think being exposed to them is probably good for me.

0 comments

I went to the 108th best high school in the country!
Mood: bored
Music: Rent - "Rent"
Posted on 2006-05-03 10:31:00
Tags: movies palmtogooglecalendar links
Words: 178

At least, according to Newsweek (here's the full list). Ed Felten points out that their methodology is a little suspect...

Disney is toning down Mission:Space ride - at first I thought they were toning it down for everyone, but they're just providing a toned down version in addition to the original, which is good. I can see why some people have trouble with it, though - the ride is pretty intense. Good stuff!

LJ was slow yesterday because of a DDoS attack. Guh. Although that thread does contain a somewhat entertaining flamewar!

Superman Returns trailer - ooh! (from kottke)

Made some more progress on my Palm datebook to Google Calendar importer - now I can delete entries, as well as add entries that don't repeat. Repeating entries are annoying (that was the block of code I posted, although I later learned that everything after the first three lines will always be the same, since it describes the timezone and daylight savings time), and I don't get any useful error message, so I guess I'll just tweak it some more until it works...

15 comments

everybody's working for last weekend
Mood: creative
Music: University of Rochester Midnight Ramblers - "Mr. Brightside"
Posted on 2006-05-01 09:02:00
Tags: movies palmtogooglecalendar
Words: 314

Good weekend! Got a chance to relax some, and as a result I'm declaring myself over the stomach virus I had last week. Not because there are necessarily no effects left, but if I don't declare victory, the virus wins!

Things of note:

I was about to give up on the whole dental site thing since I hadn't heard back from my guy for quite a while. Then out of the blue he emailed me on Friday, and we started working things out, and he's paid me a bit already as we start to make the site go live. So, more work for me, but I got money! My first earned money for programming that isn't my job!

Baltimore is the heroin, trade (meaning prostitution in this context), or syphilis capital of the world. Wow, that's not good!

Using the Google Calendar APIs, I created an event on my Palm calendar. Hooray! I still need to make it delete all events before adding events, and also do repeating/all-day events. The latter requires deciphering a string like


DTSTART;TZID=America/Chicago:20060420
DURATION:PT86400S
RRULE:FREQ=YEARLY
BEGIN:VTIMEZONE
TZID:America/Chicago
X-LIC-LOCATION:America/Chicago
BEGIN:STANDARD
TZOFFSETFROM:-0500
TZOFFSETTO:-0600
TZNAME:CST
DTSTART:19701025T020000
RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU
END:STANDARD
BEGIN:DAYLIGHT
TZOFFSETFROM:-0600
TZOFFSETTO:-0500
TZNAME:CDT
DTSTART:19700405T020000
RRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU
END:DAYLIGHT
END:VTIMEZONE

Hmm, actually that doesn't look as bad as I remembered. Good!

I put up new pictures for this quarter - includes pictures of Christi and David's housewarming party, Timmy's baptism and Peter William Gregory.

Also saw Thank You for Smoking, which I was not too excited about but turned out to be very good. It's just satirical enough that you can sort of identify with the main character. I'd recommend it!

Going to try to track down some bugs in the huge code checkin I did Friday...

Oh, the other thing - I tried out for the summer musical on Saturday and got a part! I'm Lance, a kid who's afraid of everything. I think I can do that :-)

6 comments

passing the time...
Mood: chipper
Location: work
Posted on 2006-04-27 14:05:00
Tags: palmtogooglecalendar links
Words: 173

(compiling can take a while)

Senator Specter threatens to cut off funding for secret wiretaps - wow! Good for him. This could be a major battle...

David Copperfield robbed after show - the amusing part is that when the robbers got to him, he pulled out all of his pockets to show they were empty...except he had his cell phone, passport and wallet. Man, that's cool!

A reasonably entertaining interview with Matt Groening where he talks about the Simpsons movie and Futurama straight-to-DVD movie-like things.

Google released a free 3D modeling program today. (more information) There's some sort of integration with Google Earth where you can, say, build a house and put it on the Earth, which sounds a little weird but like a lot of fun. Wow, they sure do crank out (or in this case, buy other companies and release) the free software!

djedi gets home today - yay!

Still working on my project to upload data from my palm to Google Calendar...maybe I'll have some more time to work on it someday.

3 comments

happy San Jacinto day!
Mood: upbeat
Posted on 2006-04-21 11:05:00
Tags: movies palmtogooglecalendar links
Words: 307

Today in 1836, the Battle of San Jacinto took place, where the Texas Army defeated the Mexican army (sneaking up during their afternoon siesta) to gain our independence. To commemorate the victory, the San Jacinto Monument was built on the battleground, which is the "world's tallest memorial column", taller than the Washington Monument by around 5 feet.

Yesterday, I saw the movie Inside Man, and enjoyed it! Denzel Washington was good (so was Clive Owen) and Jodie Foster was good although a little creepy.

If you haven't tried the new Google Calendar, you should give it a shot. I've changed my mind - my next project will be using the Google Calendar APIs to import events from my palm. Still gonna try to use Ruby, though...

In other Google news, the Da Vinci Code quest is pretty fun - there's a new puzzle every day for 24 days. I've solved all four of them so far - not too difficult (although they keep sending me to the official movie site, which is loud and takes a while to load).

Cute Metroid cartoon

So the Kryptos sculpture (constructed on the grounds of the CIA in 1990) contains four encrypted messages. People have solved the first three, but no one has been able to crack the fourth (which is thought to refer to the first three heavily, as well as possibly other physical elements on the CIA grounds. The creator just announced there was a typo on the second section, which had caused the last eight letters to be misinterpreted. I'm hoping this will lead to a breakthrough on the last section :-)

"I hear the voices, and I read the front page, and I know the speculation. But I'm the decider, and I decide what is best. And what's best is for Don Rumsfeld to remain as the secretary of defense." Darn...

0 comments

This backup was done by LJBackup.