This log now lives at http://mterry.name/log. Thank you Advogato for the service!
Just released xpad-2.0-b2, which is a much better release than beta1. Fixed some crashers that appeared in beta1 and redesigned the preference windows to be more HIG-friendly and sexier. Also, if your notification area restarts, xpad's tray icon is also restarted. Yay!
On the horizon: Some of that new transparency everyone's talking about.
I just pushed through a new release of Xpad, which is actually just a beta for the upcoming 2.0 release. It has lots of goodies, including a new toolbar, text formatting, and remembering pad hidden state.
It is the result of a couple weekends of hacking. It started with the simple desire to object orient some of the code base, using proper GObjects and all. The GObjects library is a simply amazing addition of classes into plain C; kudos developers. About half the code base is GObjects now, with more to come.
Predictably, this broke a lot of stuff, but I also fixed things too. For instance, the long-standing bug where the text insertion cursor was not the same color as the text foreground color. For some reason, GTK+ did not make this simple.
Semantic Web Update
The method of joining RDF and XHTML I talked about in my last update did not pan out. I replaced that article with one detailing more accepted methods for joining the semantic web.
I ditched it after talking around, notably in the #rdfig chat room. My method, while maybe well-formed had some predictable semantic problems. But I do want to warn others about my experiences with #rdfig. I felt that the members of the chat were less than helpful with my ignorant self and after a while of trying to help, they mostly gave up on educating me, which is fair. However, I later discovered via a google search that several of the members were in a parallel chat room in which they were making fun of me. Including my personal appearance, based on pictures from my web site. I feel that this was a little low and want to warn others away from that chat room. And to warn IRC users everywhere that if you make fun of someone, you might want to do it in an unlogged chat room.
Semantic Web Goodness
I'm sure people are somewhat tired of hearing about the semantic web. Usually because it is viewed as something of a pipe dream. Well, I think I have found a method of combining RDF and XHTML that provides the power of complicated metadata while still providing an XHTML document to browsers. In addition, I think it's done 'the right way'.
I'm seeking comments on this approach and details on any browsers it doesn't work in.
The Fifth HOPE
So, I went to part of HOPE 5 (Hackers on Planet Earth) in New York City these past two days. I left early because we didn't have any place to sleep and crashing on the convention floor, while doable, wasn't keeping us very awake during the lectures.
Anyway, it was interesting. This was my first HOPE, and I wasn't sure what to expect. While there, I saw some of a documentary on past HOPEs and one interviewee mentioned that HOPE was largely a place for engineers and hackers to get together to be technical, that it was in no way political. That may have been true in the past, but the past few years have left our community with the realization that we urgently needed to act soon, or at least act in November 2004.
The whole place was decorated in a very Orwellian manner, replete with Nazi symbolism, big brother references, and WW2-style propaganda posters. The big brother reference, by the way, appeared directly below a giant head that looks somewhat like Bush with a Hitler moustache.
About half the talks were political. There was a talk on how cool having bloggers at the DNC will be followed by a talk on how to best make trouble at the RNC (e.g. volunteer but don't show or make a salon appointment inside the hotel to get by security). Some other talks focused on digital rights management, 9/11, privacy, file-sharing, Florida in the 2000 election, etc. Kevin Mitnick even gave the first keynote. It was nothing we haven't seen on Slashdot before, but they were a little bit more informative and all condensed into a few days.
I'm a huge fan of this trend. I have long agreed with Lawrence Lessig's position that hackers need to be more legislatively involved. In recent years, thankfully, the combination of terrible laws, terrible leadership, and terrible lawsuits have conspired to get people talking. I think Groklaw is an excellent example of this. Hackers have never been more in tune with their place in the legal landscape. But, we have to make our position known outside of the community by raising awareness of these issues close to our hearts. This can largely be done by simply educating. Mitnick touched upon a major reason why so much crap happens in lawsuits -- judges simply don't understand the issues. Mitnick's judge was convinced he could dial up NORAD, whistle into the phone, and launch some missiles. And the Microsoft anti-trust trial's judges could certainly have used a couple hits with a clue bat.
The days when we could bury our heads in the sand and just focus on issues of engineering are over. Patents, lawsuits, proprietary companies, and legislators are not inclined to let us alone. So, please become involved, regardless of your political inclinations; hackers need to make their positions known. Contact your representatives, educate your friends and family, donate to the EFF, and, for goodness sake, vote!
I just released version 2 of Multiplication Puzzle which features autoolization, gettextization, and a name change from Multiplication Game to Multiplication Puzzle. Now I just have to wait for the translations to roll in. :)
xpad 2.0 work is going slowly. But I did release a brown-paper bag release a while ago to at least allow the long-standing 1.13 release to work with GTK+ 2.4.
In other news, I am actively looking for a job. If anyone is interested in an amazing, computer-science-degree-holding employee in the Sunderland, MA area, look at me.
I found a great program called WebMake which totally solved my desire to simultaneously have a website written in Ã¼bersexy XHTML and one that Google and IE can read.
WebMake is one of many website generators out there, but it just clicked with me. It allows me to have all my content in one file, and from that file, generate both HTML and XHTML versions. I hear that I could also massage it to get easy translations of my pages.
Providing both HTML and XHTML versions of webpages is, in my humble opinion, the best solution to the whole "XHTML is the way of the future, but IE is living in 1996" problem. You can offer fully-compliant, properly MIME'd XHTML to those browsers that negotiate with the Apache server for it and everyone else gets last year's HTML. And better yet, this is all done with no hacky .htaccess tomfoolery. Yay WebMake!
I did run into a couple problems though; the documentation is decent, but doesn't cover all the crazy cases I wanted. I had to fight with it for a while before I realized how to get conditional markup and had to work around a silly bug in its XML parser when using parametized content. (Perhaps I should share my WebMake file for the benefit of others.) But, on the whole, it was an accessible program that made me very, very happy.
Well, I've scaled down my designs for 2.0 a bit. It's basically just a port to GTK+ 2.4 at this point. The OO-ifying will come later down the 2.x branch.
I went ahead and got myself my own personal website. It's fun to have a domain that you control yourself. I ended up using a mom and pop hosting company based in California. Dirt cheap and enough for my simple needs right now.
I've also been playing a bit of Final Fantasy: Crystal Chronicles. A great game if you have friends; not a very good single player game, though. I highly recommend it. The gaming industry has been short on cooperative multiplayer games for a while.
I have also decided that since I'm already numbering the next xpad version 2.0, I might as well go and break everything, just to keep the spirit of dot-zero releases. So, I've begun the long and unrewarding task of objectifying the codebase. That is, I am making nice, clean GObjects out of everything instead of one big pile of procedural code. Yay!
In the process of that, I have discovered how cool the whole GObject system is -- building OO design into such an antiquated language as C. It's a nice architecture.
Work on xpad has been going well. I've finished porting it to all the non-deprecated widgets in the upcoming GTK+ 2.4. Thus, the next release will require 2.4 instead of 2.0. I plan to number this next xpad release 2.0, since the base requirements have been bumped up in this manner. Just some bug fixes left to work on, and we're gold.
In other news, xpad recently got a French translation, thanks to Michel Robitaille. Yay!
New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.
Keep up with the latest Advogato features by reading the Advogato status blog.
If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!