Archive for the ‘Entertainment’ Category

Comic-Fu

Tuesday, February 9th, 2010
saveplace

Angie has been slaving away working on Company-Y lately, and I think it’s coming along quite nicely.

Yesterday I decided to give her a break by helping with the coloring of the latest page “I love it when a plan comes together”, and I realized that the coloring process could be greatly sped up if we could simply flood fill the various areas, rather than having to draw around the outline of the area before flood filling it.

The comic is drawn in The GIMP. The lines are drawn on an transparent layer, and then the coloring is done on another layer below, so as not to mess up the lines. Since there are no boundaries on the lower layer, flood filling doesn’t work.

So I tossed together a quick TinyLisp add-on which takes the current layer, duplicates it, thresholds on alpha level (gets rid of any pixels that aren’t within a certain opacity level), and puts the new layer below the current one. After that, flood filling can be done in the lower layer without any issues related to the antialiased/feathered edges of the lines.

It’s a fairly simple script, though it took me a while to get it all working correctly (why the heck do all the GIMP built-ins return lists, making me have to (car …) everywhere, instead of just the primitives?)

Anyway, I was inspired, and came up with some ideas for some more time-saving add-ons to write, so I’ve started a Comic-Fu project at GitHub

If you want to install it, simply download make-fillable.scm and put it into your .gimp-2.6/scripts directory. It should then be in the Filters->Comic-Fu menu the next time you start up the GIMP.

p.s. I’m totally counting this as one of my programs for my 500 Programming Languages thing. I’ll do a write-up of TinyScheme at a later point.

A save your place bookmarklet

Tuesday, December 1st, 2009
saveplace

I read a lot of web comics, and one of the things that happens when reading through the archives of a comic is that I lose my place in the history, so when I come back, I have to spend a lot of time searching to find where I left off.

I wrote this simple set of bookmarklets to help me in this situation. The “save place” bookmarklet stuffs the current URL into a cookie (cookies are per site, so there will be one cookie for each site you use this on), and the “restore place” bookmarklet takes the URL out of the cookie (if it exists) and loads that page. The “clear place” bookmarklet clears the cookie.

To use them, just drag the bookmarklets to your bookmark toolbar, or right-click on them and select “bookmark this link”.

Save Place | Restore Place | Clear Place

For those who are interested, here’s the code in function form:

function savePlace() {
    var date = new Date();
    document.cookie='ppdc_saved_location='+escape(document.location)
        +'; expires='+date.setTime(date.getTime()+22896000000)+'; path=/';
}
 
function restorePlace() {
    document.location = (function() {
         var ca = document.cookie.split(';');
         for(var i=0;i<ca.length;i++) {
             var c=ca[i];
             while (c.charAt(0)==' ') c = c.substring(1,c.length);
             if (c.indexOf('ppdc_saved_location=') == 0) 
                 return unescape(c.substring(20,c.length));
         }
         return document.location;
    })();
}
 
function clearPlace() {
    document.cookie='ppdc_saved_location=; expires=-1; path=/';
}

I based my code off the createCookie and readCookie functions from QuirksMode

EmotionML

Tuesday, November 25th, 2008
<emotionml xmlns="http://www.w3.org/2008/11/emotionml">
    <emotion>
        <intensity value="0.4"/>
        <category set="everydayEmotions" name="surprise"/>
        <link uri="http://www.w3.org/2005/Incubator/emotion/" role="triggeredBy"/>
        <link uri="http://probablyprogramming.com/2008/11/25/emotionml/" role="expressedBy"/>
     </emotion>
    <emotion>
        <intensity value="0.7"/>
        <category set="everydayEmotions" name="amusement"/>
        <link uri="http://www.w3.org/2005/Incubator/emotion/" role="triggeredBy"/>
        <link uri="http://probablyprogramming.com/2008/11/25/emotionml/" role="expressedBy"/>
     </emotion>
</emotionml>

Don’t complain if it doesn’t conform, because it’s not a fixed standard yet. ;)

Photo-as-you-are Meme

Friday, September 19th, 2008

This guy told me to do this. So I did. I don’t think resizing counts as editing. I don’t think anyone would appreciate downloading a 3264 × 2448 pixel image.

  1. Take a picture of yourself right now.
  2. Don’t change your clothes, don’t fix your hair…just take a picture.
  3. Post that picture with NO editing.
  4. Post these instructions with your picture.

The Linkin Park Formula

Thursday, May 29th, 2008

Linkin Park, formulaic? No way! ;)

Yes Angie, it’s true.

via Extra Life

NSLU2 Almost Set up

Sunday, April 6th, 2008

I got myself an NSLU2 and set NSLU2 Debian up on it. It’s working alright except that the clock battery is dead so it refuses to boot up with NTP turned on.

Because of that, I get to deal with some fun stuff like this:

pib@home ~]sudo fsck /dev/sda2
fsck 1.40.5 (27-Jan-2008)
e2fsck 1.40.5 (27-Jan-2008)
/dev/sda2: recovering journal
/dev/sda2 has gone 13975 days without being checked, check forced.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information

/dev/sda2: ***** FILE SYSTEM WAS MODIFIED *****
/dev/sda2: 23941/3541440 files (0.9% non-contiguous), 441602/7080640 blocks

So apparently this partition, which I created 2 days ago, hasn’t been checked in over 38 years.

Also, there’s stuff like this this:

pib@home ~]ssh slug                      
pib@slug's password: 
Linux slug 2.6.18-6-ixp4xx #1 Tue Feb 12 00:57:53 UTC 2008 armv5tel

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
No mail.
Last login: Wed Dec 31 18:02:18 1969 from 192.168.15.177
pib@slug:~$

Yeah, I guess I’ve got to go find a new battery.

We’ve been Street-Viewed!

Thursday, April 3rd, 2008

Sometime fairly recently Google added Austin, TX and the surrounding area to their Google Street View.

Part of that surrounding area included my street, and therefore, my house!

Sadly it appears that both Angie and I were at work when this happened, so neither of our cars are visible and you can’t see me sitting at the computer I’m at right now through the window.

Well, you wouldn’t have been able to see that anyway, but whatever.

Anyway, check it out:

New Blog Policy: Three Posts a Day

Tuesday, April 1st, 2008

As you may have noticed, this is my third post of the day.

This is part of my new policy to post thrice daily.

It has occurred to me that when it comes to blogs, quantity is of much higher importance than quality.

I think everyone will agree that three posts each day is much better than a good post every few days or weeks.

Don’t you think so?

If you don’t you are tottaly wrong and stupid.

Site Style Updated

Tuesday, April 1st, 2008
Update: As you probably guessed, this was an April Fools’ joke. For those who missed it, you can check it out here: PIBlog on April 1st

As you may have noticed, I’ve updated the design of my blog a bit.

Using my superior web design and CSS skillz.

I think everyone will agree that this is much better.

Don’t you think so?

If you don’t you are tottaly wrong and stupid.

April Fools! I’m not dead!

Tuesday, April 1st, 2008

After three weeks of not posting, some people may have begun to assume I had died, but in reality it was all part of an elaborate April Fools prank. Gotcha!

Others may have assumed that I was just being lazy and not posting. April Fools! It was also part of an elaborate April Fools prank … umm … to make you think that I was lazy. Yeah! That’s totally it!

In honor of this beloved holiday, I’m going to outline a few of the jokes I’ve seen today.

Ubuntu to rename top level directories

The thing that makes this joke so funny to me is that the writer thinks he’s being ridiculous, but it’s obvious he’s never seen Gobo Linux before. The only ridiculous part is the assumption that applications would need to be modified to work.

Also, he didn’t include the /Programs directory, which is the best part of Gobo Linux.

What makes this even more amusing is that recently I’ve been considering the possibility of creating a script which would allow the installation of Debian packages on a Gobo system. Something like Apt-Gobo, even, which could even pull packages and dependencies from Apt, but install packages in a Gobo-compatible manner. It would be the best of both worlds, since there are far more binary packages for Debian than there are for Gobo, but Gobo has a much nicer filesystem layout.

Anyway, I’m going to move on before people start to think that this is a joke…

ThinkGeek April Fools Products

I always enjoy these every year. They get wackier and wackier. My favorites this year are “Super Pii Pii Bros” and the ZapCam YouTube Tazer.

I wonder how much time it took to come up with all of these, especially considering they have videos of all of the joke products this year.

Geeks.com April Fools – Portable Retina Scanner, only $49.99!

Every year, Geeks.com sends out an April Fools new product email. This year they advertise “The Latest in Biometric Security Technology” along with “Dog Bark Voice-Print” and “Pet Paw Print” access analyzers.

The first one of these emails that I got years ago advertised a circular monitor, with something along the lines of “No more annoying corners on your screen!” I can’t find the old joke on their website (I didn’t look that hard, though.)

One more, you have to see this one!

This is one you just have to see. It would ruin it if I gave an explanation here. It’s basically the best April Fools day joke. Serously, check it out.

Have your own favorite April Fools joke? Well, leave a comment and tell me all about it!