Internet


Unfortunately this Facebook Application Idea would not work, as it would end up messaging random people who don’t install the app, most likely a violation of anti-spam rules. Then again, you never know. Here’s the idea for my Facebook App, the “Manatee Joke Sender”:

South Park - Clint - by Clint - Towelie shirt First off, you need to know what a “Manatee Joke” is. You can read about it HERE. Basically, South Park criticized Family Guy, in their two-part episode Cartoon Wars, for writing jokes with manatees. They said they had manatees in a tank, with ideas written on balls. Things like “Gary Coleman”, “Mexico”, and “Laundromat”. The manatees then select these balls at random, and a joke is made. In South Park, they parody Family Guy, and show them breaking away to an imaginary flashback — “Remember that time I took Gary Coleman to a Mexican laundromat?”

The whole point of their criticism is that Family Guy’s jokes are completely random and have nothing to do with the plot:

Don’t you ever, ever compare me to Family Guy, you hear me Kyle? Compare me to Family Guy again, and, so help me, I will kill you where you stand! Do you have any idea what it’s like? Everywhere I go: “Hey Cartman you must like Family Guy, right?” “Hey, your sense of humor reminds me of Family Guy, Cartman!” I am nothing like Family Guy! When I make jokes, they are inherent to a story! Deep situational and emotional jokes based on what is relevant and has a point, not just one random interchangeable joke after another!
—Eric Cartman, Cartoon Wars Part I

So anyway.. Facebook has fan pages. For example, you can search for Gary Coleman and click “Become a fan”.

Deep Space Manatee by nickelcroquette @ flickr

Deep Space Manatee by nickelcroquette @ flickr

This leads me to the manatee idea on a social network. Pick 3 random things — Gary Coleman, Mexico, and laundromats. Obviously these 3 things have to have fan pages on facebook, but hey, you can fan “socks” and “nitrogen” (yes, the gas) if you want on facebook. Just about everything has a facebook fan page!

The application picks 3 random things… And then cues the admin to write a joke using these 3. The joke is then sent to all facebook people who are fans of the 3 items intended. So it hopefully only goes to people who would appreciate the humor.

Sadly, this sounds like a lot of effort to implement, it would be considered a nuisance or spam by the people receiving the joke, and there’s probably no money in it. And an AI could not write funny jokes; it would have to prompt a human.

I still think there’s potential here… Someone should do it. Just not me :)

One of the greatest feature in gmail is labels that can be applied to any message. Unlike folders, you can apply as many labels as you want. If someone sends me a funny picture, rather than having to create a new “funny pictures” folder, I can just apply the existing labels “comedy” and “pictures”. Similarly, if someone sends me an unfunny picture, I can just label it “pictures”. And if someone sends me comedy that isn’t a picture, I can label it “comedy”. Multi-labels are POWERFUL, and keep you from having to have as many “folders”. Back in the folder days, I would frequently save the same email to 2 or 3 folders, creating extra copies and wqasting extra space.

One of my basic tenants of email is that people’s emails should be labeled with their name. If your name is Frank, I want any emails from you or to you under my “Frank” label. Since labels can have custom colors, this is very useful. For instance, since Tabbitha loves pink so much, I made her label bright pink. Her emails stand out in my inbox — assuming they are labeled.

So this gets us to the labeling problem. For me to highlight Tabbitha’s messages pink, I have to create two filters! Maybe even three!

1) If message is from Tabbitha, label “Tabbitha”.
2) If message is to Tabbitha, label “Tabbitha”.
3) If message subject contains Tabbitha (for evite or facebook notifications), label “Tabbitha”.

Obviously, it is time consuming to make 3 filters every time you meet someone. Guess how many filters I’ve created in my 4+ years of using gmail? 1,993!

It would be SO SO SO nice if they had an “OR” operator. So I could put Tabbitha in “from”, “to”, and “subject”, and click “or”, and then if she was in any of those, it would work. But nooooooo. Gmail defaults to using “AND”. So if you put Tabbitha in “from”, “to”, and “subject”, it will only apply to messages that are from AND to her AND have it in the subject. And by definition, those emails would never get to me (they are from Tabbitha, and to herself.. so I’m not getting them… haha). Gmail fails here, because they use “AND” and not “OR”. I really wish they would let us choose the boolean operator.

So anyway, in an effort to keep this number as low as possible — I figured out a way to combine 2 or 3 filters into 1, by FOOLING GMAIL. This allows for faster filter creation. Observe the method for squeezing 2 filters into one:

gmail filter hack - squeeze 2 filters out of 1

See the first circled part? This shouldn’t be accepted as valid user input, but it is.
Because the parenthesis shouldn’t be there, gmail adds a right parenthesis to close it.
See the second circled part?  This is how gmail resolves it – it closes the parenthesis, which contain nothing in them, and as such “cancel out” in an almost algebraic way. The remaining code is “from:(dynamite44) OR to:(dynamite44)”. I’ve successfully subverted gmail into using “OR” instead of “AND”. w00t!

This ends up giving the desired effect of 2 filters in one.

Finally, Facebook and Evites and Flickr often give you notification for people using their username, or their first and last names. So, this concept can be extended to the subject as well. In this example, I made a filter for someone who consistently uses ‘remodulated’ for their email and flickr notifications:

gmail filter hack - squeeze 3 filters out of 1

In this case, the filter would match any message that is from remodulated OR to remodulated OR has remodulated in the subject. Normally, this would require 3 filters. But you can trick gmail into doing it all in 1 filter. double w00t! (more…)

Browser compare using browser javascript benchmark HERE. (more…)

What improved with the new version of wordpress, exactly? Looks don’t count. The only thing I can think of that’s better is the comment approval page now uses ajax so you don’t have to reload it. But I have plenty of problems with their so-called “progress”:

1) Got future dated posts? Want to find the one closest to Christmas to add in a Merry Christmas blurb? Try looking at the list of future dated posts (if I dropped dead, my blog would keep spitting out content until next May). They changed the date column from displaying the date (gee, is that so bad?) to displaying “14 days from now” instead. You have to do math. If I want to know what post is on Carolyn’s birthday — I have to count the numbers of days it is from now (Feb 23 = 23 in feb + 31 for jan + 14 for the rest of this year, so 23+31+14 = 68) and then look for the one that says “68 days from now” in the column. HOW STUPID IS THAT?
I emailed support, and they taught me how to get around this. Mouse over “x days from now”. A tooltip will come up saying the date. Of course, it’s not a link, so why would I think to mouseover it? I guess whenever anything is missing, I now have to mouseover every element on the page in hopes of finding it. STUPID FAIL. If you’re going to change it, give me an option to change it to the way it was. The non-stupid way.

2) Speaking of future-dating posts, which do on a daily basis — before you could just set the date by dropping down the month, typing in the date, and dropping down the year. Now, two dropdowns is bad enough. I would prefer a textbox where I could just type 20091231, but I have to deal with the fact that they have to deal with stupid users who would mess this up. So how did they improve this? YOU CAN’T EDIT THE DATE! It’s static text. Now you have to also click the ‘edit’ button because they decided that the user “wants” an extra click between the dropdown. Why? Are people accidentally future dating their posts left-and-right, then wondering where they went??? I haven’t heard of this happening, but a simple confirmation (with a “don’t show this again”) would suffice. I future-date every movie review. I future-date holiday related stuff. I future-date stuff when I’ve blogged too much one day and know I wont be around another.. Gee, yet another click to do what I used to be able to do? Again: No functionality was added. Just more effort to do the same thing. FAIL.

3) Got categories? I do. A lot. In the past, you can click the categories you want. Now they give you “suggested frequent” categories. In the whole history of this feature, which has existeds for 2 wordpress releases, it has never suggested all the ones I need correctly. I have to click “show all tags”, and wait for it to do an ajax load (which isn’t as quick as others, as it has to send my HUGE list of categories) to get my real categories. Extra click. Extra wait. No improved functionality that I can use. PROGRESS FAIL.
(There’s also a heirarchy bug that they put in their support system as a documented bug and chose not to fix for the past 2 versions, becuase th ey’re too busy changing the appearance arbitrarliy and repeatedly and adding extra clicks to do everything.)

4) New sidebar. They had to get cute and make a CSS left sidebar instead of using a table, somethign that has worked since the inception of HTML. This is a particular problem that they are not going to fix because it affects very few people. I use NoSQuint to remember zoom levels at differnet websites, because I am in a 1920×1080 52-inch screen and sit 6-7 feet away. It’s required. It’s almost like I’m handicapped and am using assistive technologies, and their site isn’t 508-ompliant. So anyway, now when wordpress is zoomed enough for me to read the text, the sidebar expands over your edited blogpost. So you are literally typing text that is behind something else, unable to see what you are typing.
So now… I have to manually zoom down 2-3 zoom levels everytime I edit a post, and manually zoom up 2-3 levels everytime I read a post (even if I’m previewing my draft). Of course the problem goes away if I don’t load NoSquint, but then I have to adjust the zoom level pretty much everytime I load a page on the internet. Or set my default font to be larger, which can create more ugly CSS issues and put you into an “even falser reality” (IMNSHO).
So yes: The problem is NoSquint. But here’s my problem: It works for the rest of the internet. It worked for wordpress for years, too. But the new wordpress version? It zooms the sidebar over the editing box. They had to get fancy and break it — for me.
Thanks for the “improvement” wordpress. It’s purely aesthetic. It’s not like we couldn’t do the things on the sidebar before. That functionality has always been availab.e Once again, changes were made that created zero new functionality, but make my life more harder. PROGRESS FAIL.

That being said… One of the reasons I love WordPress is that they have the most responsive tech support I’ve ever seen. And they provide APIs that are easier to work with and more standardized (IMNSHO) than with LiveJournal. And much, much more functionality. (LJ still doesn’t have search boxes for people’s stuff? Or am I just missing it?)

I just wish they would focus on making things better instead of making things prettier. They cosmetically changed everything TWICE now. Even if I liked the changes, they changed those! So those who hate change are screwed, and those who liked those changes were screwed too.

This is in the midst of Gmail making itself look worse (I found a classic theme), Google Reader making itself worse (I just love how a category on the left can be highlighted yellow and lead you to beleieve that’s the category you’re reading, when it’s really not — old version didn’t do that) (and the blue background on the left side? I was used to that and now I don’t think it looks as good), Delicious’s Firefox Add-in updating, failing, and delaying me from opening my browser for an hour (while I was doing other stuff, like looking up solutions). DEVELOPERS – If it ain’t broke, don’t fix it.

This is why I end up writing my own solutions for so many things. I can at least trust myself not to screw myself over. As rigid as my own systems end up being, and as bad as the features can sometimes get — I’ll never throw away the investment of my own time. Other developers will, though. The foundation of my computing Clintvironment has been in non-stop development since 1988, and I have never screwed myself over, time-wise (with the exception of my online photo album, which taught me a lot), as bad as other people’s forced upgrades have. (more…)

http://www.acm.vt.edu/~clint/download/imagedump/stupid-firefox-500-.jpg

Guess I’ll use my OTHER computer to download the files. Thank you for failing me once again Firefox.  Looks like Firefox looks in the environment for %TMP to use as a temporary folder. Nevermind the fact that windows uses %TEMP internally, so I tend to use %TMP (no E) in my own scripts. Look what happens if %TMP is set to a file (d:\documents and settings\oh\local settings\temp\4nt36c.tmp-) instead of a folder: Firefox can’t save. This includes “Save As” too!  The only solution is to close firefox, unset %TMP, and re-start it.

Here’s a hint to the Firefox developers: If a file can’t save, check if the directory is valid. If it’s not, check %TEMP instead of %TMP! If that’s still invalid, use the recycle bin as a temp folder! There’s really no excuse for firefox to fail in a practically-undocumented way such as this. It’s taken me awhile to put two and two together that this is what’s happening. Lame.

OTHER IRONY: The computer downstairs’s Firefox breaks such that you can’t type addresses into the addressbar. This happens if it’s open for about 24 hours (and I only reboot 2-3 times a month). So not only do I have to copy the address from my firefox on this computer onto the other computer to save the file, but I have to do it at the command-line to make firefox open it.  Score another victory for the superior realiability of the command-line. Memory leaks and such can’t make generally command-line commands fail the same way they can make GUI elements fail. It’s the KISS principle: Keep It Simple, Stupid.

I have amassed a few quotes here and there. Some by me. Some by friends. Some famous quotes. Some random quotes. For a long time, simply stored these in quotes.txt.

Well, I had an idea — Turn quotes.txt into an RSS feed, so that everytime a new quote is added, it can show up in people’s readers.

And that’s what I did. You can subscribe to the “Clint‘s Quotes” RSS feed HERE.

For those still stuck in 2004 (i.e. those who don’t use RSS), the actual text file of quotes can be read HERE. But you’re screwed on updates — which is part of the point of RSS. I guess you can just check it every day for new ones? Ha ha ha, nobody would ever do that! Manually checking stuff is for suckas! That’s why I made this an RSS feed.

RSS is the most important technology since http and email. Go to Google Reader and paste http://clint.sheer.us/quotes/quotes-rss.xml into it for much better results.

WARNING: New subscribers will get an item for EVERY quote. Star them for later, mark them all as read, but don’t come whining to me about filling your RSS box :)

P.S.: To those already using our aggregated/managed feed, this feed was already incorporated several weeks ago. So no action is needed on your part.

(more…)

In response to Slashdot’s recent article, “What RSS Feeds Do You Use?“, I decided to share some of the feeds and types of feeds  that I subscribe to. If you don’t know what RSS is, you’re really surfing the web in an antiquated way that only made sense last millenium. Have fun getting less information for more time, because failure to use RSS accomplishes exactly that: It takes you longer to get the information you want, and you get less information that you want, and less awareness. Get a google account, signup for Google Reader, and ask me to forward some feeds to you.  Anyway, here are some feeds I use… (more…)

« Previous PageNext Page »