While I think avoidance is the best way to deal with US politics, what with all their internal spying and lack of constitutional backbone, here is a glimmer of light for those of you still hoping for improvement. The Truth-o-meter, a tool showing how well political promises are being kept. Wish we had a site like that in Sweden too (and then some tool to make the foolish masses actually care).
While working on EmailServiceGuide I have been using the new border-radius property to get rounded corners without a ton of extra markup and images. It won’t work in Internet Explorer, but the idea is that people who run Internet Explorer are probably not that concerned about visuals anyhow.
Unfortunately the border-radius stuff is in development right now, so it doesn’t always work the way you expect it to. In particular I have this table with rounded corners and zebra pattern on the rows. In Safari the background color of the rows breaks through the rounded border of the table, sticking out sharply and concealing part of the table border. Neither overflow:hidden nor background-clip: border help.
What does help is to follow these instructions and make sure that the inner element with a background-color has a matching rounded border.
The sad thing with that is that in the table case you then have to use CSS to select and round off the top left, top right, bottom left and bottom right th or td elements which adds a lot of silly markup.
Here’s a little trick to cut down on that extra markup: make the zebra color on odd rows. Now the 0 row will have the table’s background color – which does get properly clipped to the table borders – and you know that the only possible place there could be trouble is if if the last row happens to be odd. So you can apply the rounded borders to the corner elements of the last row only and don’t have to do the first row!
Saves you several lines of CSS. : )
My lifelong friend Kristján just put up a new blog musing about tech and music. I bet it’ll be interesting so check it out here!
Just some quick notes on signing Windows executables using a Mac. First, get Mono:
Download mono
I used version 2.4. Next, take a look at Mozilla’s code signing guide and work around the problems you run into using Zillabit Notes on Mono Authenticode.
It boils down to something like this:
- Open your Thawte issued .SPC file in Windows using certmgr (just double click it).
- Expand the certificate view in the left pane and click on Certificates.
- The components of your SPC file will be displayed, normally consisting of your company certificate and then some signer root certificates.
- For each of the certificates, go to
Action / All Tasks / Export... and export the certificate as a DER .cer file.
- Bring the exported files to your Mac and join them with
cert2spc. E.g.:
cert2spc cert1.cer cert2.cer cert3.cer my_fixed_certificate.spc
- Use the newly generated SPC file to sign your code:
signcode -spc my_fixed_certificate.spc -v my_private_certificate_key.pvk -a sha1 -$ commercial -n MyProductName -i http://www.mycompany.com -t http://timestamp.verisign.com/scripts/timstamp.dll MyProgram.exe
- Verify by trying to run the executable in Windows.
A final note: don’t try to verify the signing using mono’s chktrust command. At least for me it always tells me the exe doesn’t have a signature.
Recently Spotify has been running an advertisement about a new feature allowing you to search for music by record label. That seems about as useful as searching for music by street name or color. Who cares what label produced a certain record? Labels don’t make music. In fact labels don’t make anything at all, they just put money on the table – they are an increasingly irrelevant fragment of the past when a recording studio was something fancy and printing a record cost involved a huge factory instead of an on demand print with shipping at $4.95.
And since we are using Spotify, printing CDs is even less relevant. Why would I care about a record label? A better related music feature or a better genre based radio feature would be a much better expenditure of time.
I’ve been busily reposting the old content. Today’s news include Gnaw and Bouncy Hunters.
I also snuck in a link to Konkret Dice Roller in the sidebar. That guy is getting close to half a million uses! 492382 rolls at the time of this writing.
Oops. Some weird people with even stranger political views hacked the e107 installation we had been running for ages. No surprise there – e107 was never that good to begin with and besides I hadn’t updated it for years.
Oh well, thanks to Pingdom I got an alert when it happened. It was easier to just get rid of e107 and put up a straight forward WordPress install so that’s what I did. I’ll try to repost all the old material here in the near future.
We now have a faster server. Hopefully page loads will feel quicker.
Also, Path to Prestige has finally been taken down. Rest in peace.
November 13th, 2006
siker
Konkret, your one stop place for awesome roleplay dice rolling, has been upgraded with a little help page. Start rolling here or check out the new (kinda tiny) manual here. If you are a Konkret expert, feel free to post suggestions for additions to the manual in the forum.
When I started playing around for Ruby for the first time I was expecting some of the great convenience features of Python. In particular this:
a = [1,2]
print a # >> [1, 2]
E.g. when you print most instances you get code that would create them. This is good because it’s intuitive and usually a very concise way of expressing the contents and state of some instance.
However, when doing the same in Ruby, this happens:
a = [1,2]
print a # >> 12
It prints 12! This is not very helpful. You don’t even know it’s an array. The reason is that the default print method of an array just maps to array.join(“”) for some reason.
Anyhow, it took me a long time to figure out how this is supposed to be done in Ruby, cause I was convinced there would be some similar convenience method. Finally I found this postwhich reveals the answer:
a = [1,2]
print a.inspect # >> [1, 2]
Yey. Just what I wanted! I’m posting it here in case someone else has similar problems.