April 30, 2006
life: Eleanor is now over a week old, and is absolutely perfect! She has even started to sleep a little longer at night. Unfortunately for us, night for her seems to be from eight PM through four AM. Still, she is developing well and is gaining weight.
httpd: Every time I touch mod_rewrite, I end up regretting it.
printing: I saw that John did an initial port of gedit to the new printing work in GTK+. It didn’t look too painful all things considering, and I hope that other projects will also take the time to try the port.
evince: I got a pretty enthusiastic proposal to do an evince SoC project. They wanted to tackle annotations and implement bookmarks, along the lines of the mockup Bryan and Diana did last summer. Hopefully it well be accepted.
/nick: jrb_afk is now known as jrb_tired
January 31, 2006
life: It’s been too long since I’ve written something. The usual excuses apply. I basically have no time, anymore, for anything.
ridley: While not strictly ridley related, I was excited to see that Kris wrote a patch for the TreeView that let you select by rubberbanding. We are still not sure how this will interact with drag-and-drop in existing code, but it looks really promising.
I also found James Cape’s eggcellent EggIconChooser widget in libegg. He did much of the work last summer, but I hadn’t seen it before. I don’t think the categories are right, but I love the embedded file chooser! I put up a little video of it being used here: http://www.gnome.org/~jrb/files/testiconchooser.ogg
Also, istanbul is pretty nice!
evince: I haven’t had much time to work on this lately. I did do some work on making poppler use gtk-doc over Christmas, and more recently added attachment support to the glib bindings. I haven’t added the necessary evince bits yet, though that should be easy.
I am also realizing that I don’t have time to finish the transition code like I hoped I would. It’s a pity, as this was a pretty fun piece of code to write. If anyone wants to pick this up, let me know, and I’ll give them a run-down of what I started. It’s a great way to get involved with evince.
ekiga: I’m going to be the latest to jump on the ekiga bandwagon. They’ve done a really nice job of the latest release, and nailed the firewall interaction. I still have no idea how to pronounce the name, but they did a great thing with ekiga.net.
rusty: My family’s dog passed away this weekend. He was a very sweet dog, and lived for almost seventeen years. We all miss him terribly.
September 8, 2005
evince: GNOME-2.12 went out the door today with the new evince release. Version 0.4.0 is the culmination of a lot of hard work by the entire evince team. By blending a mixture of features and simplicity, we have reached a state of genuine usefulness. We are still very ambitious; there are a lot of awesome features currently on the drawing board.
Of all the features in evince, the one that I’m most proud of is that we don’t have a preference dialog. It’s taken a lot of discipline and creativity along the way, but we managed.
zana: My wife rocks.
August 31, 2005
evince: Bryan and I took another look at acroread today, and realized that we’re falling behind them in the web advertisement space! They have an toolbar just for Yahoo ads, and we don’t have anything like that at all. Since we had been looking for fundraiser opportunities anyway for the Evince Defence League, I whipped up Google AdWords support to the sidebar.
Awesome. We’re planning on branching into personal ads, later.
August 6, 2005
windmills: Today was a windmill-tilting kinda day…
evince: Kristian and I cleaned up the selection code this week. It’s still a bit raw, but it’s much, much smarter than before. It was naively drawing the whole selection every time the mouse moved, which felt sluggish. We now only redraw the regions that are changed, and do that only when new glyphs are selected.
These changes make selection feel zippy and slick. It even respects theme colors!
Now that we have that last issue fixed, it’s time to focus heavily on getting evince stable for GNOME-2.12. We still have too many bugs — crashers and otherwise — for my taste.
Travels: Zana and I spontaneously drove to Vermont a couple weekends ago. I had never been to that state before, and we thought it would be fun to go take a look. It was a gorgeous area, and we took a walk near Brattleboro across an old bridge and along the Connecticut river. We followed it up with a meal on a patio, suspended over the river.
We definitely need to go back and go kayaking there before the summer’s end.
July 6, 2005
evince: We got a bunch of patches this weekend from Matt Wilson of rpath fame to fix up the tiff backend. If someone wants to hook us up to some telephony software, we’d make a pretty awesome display for a fax program. I also read in the ChangeLog that Marco put some code to make evince ‘spatial’. I do not think that that word means what I think it means. It sounds pretty cool, but sometime I’m going to have to figure out what it does.
cinema: When I was a kid, I remember watching the Three Amigos. I loved that movie, and remember laughing and laughing a lot at it. A decade later, I rented it to show it to Zana, promising her it would be a great movie. “You’ll love it! It’s funny!” It was terrible. None of the jokes were watchable, and we turned it off before we got to the end.
(Actually, the bit where Martin Short shoots the invisible swordsman by mistake was pretty funny…)
After watching Revenge of the Sith recently, I thought I’d rewatch the original Star Wars trilogy again. I’m not a really a Star Wars fan, but I do remember enjoying them a lot when I saw them, and, like everyone else, was disappointed with the second trilogy. I was afraid that watching the originals again would ruin them like it did for the Three Amigos, or at least diminish them in my memory.
I needn’t have worried. It turns out that the first two were genuinely much better than the later movies. However, the Return of the Jedi was a surprise for me, as I really enjoyed it a lot. I remember it as good, but not great, and not as good as the other two. That also appears to be its reputation on the internet. In particular, the final lightsaber battle between Vader and Luke has got to top my list of favorite movie duels. It wasn’t as technically impressive as other sword fights, but the emotion of the moment and the music really swept me away. It was really worth a rewatch.
words: Nat is my literary hero this week! Not only did he write a play in a day, he used the word ‘uxoriousness’ in his blog. +1 style point for that.
independence day: Groton had its independence day celebration tonight. Zana and I went to go listen to music, eat fair food, watch the fireworks. We had a great time. It wasn’t clear to us why the town had their party a day late, though. I guess they just wanted to have their own Fifth of Fourth…
July 1, 2005
evince: Last time I wrote about evince, I posted a fake screenshot of it reading mail. While I thought it was obviously a cheesy composite and a pretty funny idea, some people did not. In retrospect, I should have spent more time in the gimp to make it less realistic — and thus more obviously a joke. I promised a few people that my next screenshot would be both real and of a cool feature. So, without further ado:
This is evince with real text selection! Kristian and I worked hard over the last couple evenings to get this working. We were just doing a rectangular selection before which wasn’t nearly as good. This feels much more natural, and is a necessary feature for a modern PDF browser.
It’s in CVS now, and requires poppler-HEAD built against cairo. We’ll be improving and fine tuning it over the next couple days. In particular, we think that we can make interactive dragging significantly faster than it is right now. Additionally, when you hit copy right now, you get the wrong text, and the old rectangular selection is totally broken. These should both be pretty easy to fix, though.
The other important thing about this change is that Kristian refactored the poppler text code a lot. It made it trivial to add I-beam support, and will make doing things like A11Y much easier to write. I’m going to keep cleaning up the selection code in the foreseeable future, but if anyone has any interest in tackling ATK support for ev-view, I’d love to hear from them. It is a self-contained project and should be straightforward to write.
features: One of the reasons I’m really excited about getting selection into evince is that it’s a great new feature that doesn’t involve a menu item. I feel like the shell of evince is starting to get cluttered, and we probably need to take the time to clean it up a bit. This feature will be really useful to the user without touching the interface at all.
A lot of the best features are the ones you don’t notice.
hardware: I’ve had a really bad couple days. My sidekick crashed twice, and the harddrive on my desktop died destroying some pictures that I’d recently taken. My wireless access point has been flaky too, and gnome.org being moved hasn’t helped.
I’ve been increasingly unhappy with the web-hosting I’ve gotten at pair.com, too. They do fine for what they are, but I don’t really want to put all my photos, etc. on that site at their current prices.
One thing I miss about my old house in North Carolina is that I was able to get Speakeasy DSL service with a static IP. I’m stuck with a cable modem at my new place, and thus can’t reliably host services. I’ve been giving some thought to trying to put together a co-op of sorts, where I buy a server with a few others and host it at a colo. After the initial capital outlay, it seems to be competitive in price to most web-hosting services, and I’d have much more control over the box. We’d also be able to provide a lot more diskspace than most web-hosting people.
I’m not completely convinced this is wise, as it’s one more box for me maintain, and it is a bit more expensive. I also need to find a few friends to do this with.
life: Zana keeps beating me at darts. It must be the shoes.
June 10, 2005
evince: Since I was bored, and since evince had every other possible feature that a pdf viewer should have, I thought I’d add e-mail support to it:
Took only half an hour’s work, too.
May 22, 2005
evince: On a whim, I gave a quick look into writing a TIFF backend for evince. It only took an hour or so to do, and I was able to commit something this afternoon. It renders all the tiff files (two) that I have quite nicely.
Marco also did a 0.3.1 release today. This version has really nice scrolling and zooming now. We’ve done a lot of tweaking of it, and I think it’s good enough that we can go a release or two without completely redoing it. Nikolay did a great job of adding an offset for resizing, and we now use a lot less memory for the thumbnails.
May 14, 2005
introspection: Matthias has been doing fantastic work on the GObject introspection front. It’s currently in the gobject-introspection module in CVS if anyone wants to play with it. It is already mostly functional, if a bit untested. He added libffi support this week, meaning that g_function_info_invoke() now works.
For those who haven’t been following this project, this is really exciting news. The introspection framework will give us the ability to find out what objects, functions and methods are available in a given library. Theoretically, a significant chunk of the work in a language binding can disappear when this lands. Additionally, libraries can be bindable without writing explicit bindings. It can also be used by glade-style applications to handle new libraries.
To test it further, jdahlin started doing bindings for python, and I added the metadata to libpoppler. We’ve been able load in much of the poppler’s API into python, shaking out quite a few bugs along the way. The next step is to put together some working python bindings. We should be able to get something functional pretty soon.
evince: The latest version is pretty darned nice. We hit a lot of the initial features that we want, and it’s looking really sexy. We’ve gotten some great external patches, and there are a couple more good ones in the works.
I started writing the presentation mode a couple weeks ago, and it turned out to be a lot less fun than I thought it was going to be. It wasn’t really clear how many pdfs in the wild are actually used as presentations, and it seemed an awkward fit with the rest of the interface. It also is going to require a pretty big restructuring of some of the code.
Just when I was putting it down and moving on, a powerpoint renderer appeared! This makes it much easier to justify spending time on this code. I haven’t seen a patch yet, but I can’t wait.
weather: Inexplicably, for five weekends in a row, we’ve had rain on both Saturday and Sunday. My grass is growing out of control, and I haven’t been able to cut it yet. There have been nice days during the week in April, just not on the weekends. I want a refund!
sports: I watched Jeff Weaver take a no-hitter into the seventh inning tonight. Regretfully, as with all other games I’ve seen, it was broken up when Horacio Ramirez hit a double. One of my life-goals is to catch no-hitter from start to finish, and I seem no closer today to that goal. I really enjoy watching a pitching dual, and keep hoping that I’ll catch that most magical of games.
In the eighth, it fell apart for both pitchers as the Braves hit a grand slam and the Dodgers responded in kind. The Dodgers win, 7-4.