Illusory Follies Sed quis debuget ipsos debugatores?

5Apr/101

Project Idea #35: Auto Tasks via Email

Create a program that is designed to parse and track projects and tasks from emails alone. The point would be to make it completely non-intrusive (albeit not entirely non-interactive). So for example, when composing a message to a client or customer you might be asking a question. You want a response (there's a "task" outstanding that's pending a decision or some action). You would simply BCC the special mailbox. The message would be parsed and tracked. When the user replies, the same program is monitoring your incoming mailbox items. When the message arrives it would attempt to interpret whether the task was complete or not. It could then fire a simple email to you indicating that it THINKS that the task is complete with a simple Yes/No form that would let you close the task or not and also possibly make notes or record anything of interest. Or alternatively you could manually complete tasks by forwarding the message to the same mailbox.

This probably is not incredibly value in its proposed form -- I'm sure something similar exists. But it would be fun to work on and would be neat to see how smart you could train it to be. Introduction of learning algorithms that would adapt to particular users would be even better.

31Dec/092

Office Setup

I seem to remember talking about this already but I've further upgraded my man-cave to new levels of geekiness. I know have two 26" screens that I've wall mounted just above my desk (keeps them in the same position regardless of all the clutter on my desk.)

Currently I'm running OS X on my right screen and Windows 7 on the left. I use Synergy to share mouse/keyboard commands so it feels like one continuous background. I'm mostly using OS X still but the new machine has 6GB of RAM which gives a lot of breathing space if the Mac gets bogged down.

What I'd like to do is switch out my aging Logitech system with two simple monitor speakers -- I still haven't decided what make/model to get but they have good stuff for pretty cheap. I'll plan on mounting these on a small shelf along with all the hard drives and accessories that I have. If that all works, I could simply get rid of the desk and bring the leather chair from downstairs. Should be a nice setup.

I have visions of punching a hole behind the monitors and making an in-wall rack that I can use to store my rather large 4U case. The wall there backs into the garage rafters and there's quite a bit of room. Ventilation and cooling would be an issue but I'm sure I can come up with something that works well.

What's your work/play area set up like? I'll post any pictures I receive...

2Dec/092

Types of People

Found this in some notes from a while back (I believe it was at a series of classes at Faith):

VRP - Very Resourceful People
These people IGNITE Spiritual Passion (Mentors)

VIP - Very Important People
These people SHARE Spiritual Passion (Peers)

VTP - Very Trainable People
These people CATCH Spiritual Passion (Proteges)

VNP - Very Nice People
These people ENJOY Spiritual Passion

VDP - Very Draining People
These people SAP Spiritual Passion

(If someone knows the source I'll post it -- I can't remember)

23Oct/090

Scuttle Firefox extension

I use Scuttle on my server (for storing bookmarks). The beauty of the solution is that I have a centralized repository of bookmarks (which isn't too special considering that many services provide this feature) but in addition, it's very nicely set up to server as Live Bookmark lists in Firefox. So for example, I can have a single Live Bookmark drop-down for all work-related links, or all my "daily" websites or whatever and automatically add and remove from them as I see fit. The Live Bookmarks mean that all I need to do to reorganize links is retag them and it's instantly working on all the computers I have.

It's handy. But there's a problem. The Firefox extension for Scuttle isn't really being maintained. It's pretty simple but needed a new "max firefox version supported" string in the configuration. I've updated this and am now posting the unofficial 0.4.2 release of the Firefox Scuttle plugin with support for Firefox 3.5+.

Install Firefox Extension for Scuttle 0.4.2

5May/090

Yikes

It's been a month again without any updates. I'm not good at this blogging thing. It's difficult because I think I haven't defined my purpose very clearly. From my second blog entry way back in January 2005, I said that I would have this site "chronicle my hobbies" and might also include "items that I find amusing". I feel a little cheap simply rehashing the million-and-one sites out there that have funny things on them so I tend to not include unless I find them extremely funny and I think that my blog readers likely won't see the source site. With regards to my hobbies, it's hard because my availability for hobbies ebbs and flows so when I'm not posting it's usually because I'm not doing much.SMile

The thing I find funny about that original post is that I said: I know [my blog topic] is not original, but then again not many people are interested if your hobby is photographing sumo wrestlers."

I think in fact that I would have more visitors if I had chosen sumo wrestler photography. I would have a very real chance of becoming the biggest, most popular sumo wrestler photography site. It would be part of that "long tail" that may not be as popular overall but with global availability could dominate the niche.

The problem with talking about just my hobbies and things that I find funny is that everyone does this and although it's more interesting than journaling my diet (hey, that's what Twitter is for!) it's not terribly thought provoking. I don't have a budget in cash or time to do anything that's too thrilling or novel so I'm mostly just talking about my little 25 minutes of coding adventure in Groovy or my weekend of wiring the house (which I just did this last weekend!)

So I've decided to branch out. I think two things would help. First: posting more regularly. I need to get in the habit of posting at least every other day. That's a lot of posting, but when I'm busy, I will content myself with rehashing other sites that I've read and digested. I usually have thoughts about posts on Coding Horror or similar sites and could easily indulge in 20 minutes of logorrhoea and save Sarah from having to hear me talk about some software methodology and why I think it's terrible/wonderful.

So that's the attempt. More posts, more content, less junk, less stuff about boring hobbies.

26May/080

Papaya

Well, I don't normally function as an advertising agency, but I thought I'd mention to anyone using OS X that there's a splendid new application out by Lighthead Software. It's call Papaya and it's purpose in life is to make sharing files easy and effortless.

Sharing can be such a pain because of problems between Windows and Mac or even just silly things like firewall rules, security, etc. It would be nice if there was a reasonable way to share files that was:

  1. Straightforward -- don't make me click around a lot
  2. Easy to share -- let me IM or email something that people can easily reference in order to access the shared material
  3. Used standards that work regardless of your friend's operating system

Papaya seems to be the answer.

Sharing files locally is automatic. Depending on your router/firewall, sharing files on the Internet may be just a tiny bit complicated but you only have to configure it once. For my own needs, this is beautiful. I can drag and drop files into Papaya, instantly get a link to share with friends and be on my way. No need to email large files, worry about acceptable formats or whatever else.

Papaya is priced at €20( $31 USD as of 5.26.08). If you have a Mac and need to share files, I definitely recommend this.

Also, Lighthead Software also makes the extremely handy Caffeine application that will keep your laptop from sleeping, having the screen dim, etc. It's a free program and it's operated with just one click on turn on, one to turn off. I use it often.

To Lighthead Software, thanks for some excellent programs!

11Apr/082

Integration of Information = Value

... at least in some cases.

It's easy to store information on your cell phone by typing some text in. It's more advanced to be able to send text messages. But what about providing a "universal" interface (meaning a web services interface) that can receive text and makes text available?

This is what Twitter does. I wasn't very impressed when I first heard about it a while back because it seemed so... simplistic. Anyone can write a simple database with users and allow them to post text messages. But I was missing the point.

I can now use my cell phone to send a message to Twitter (there's a program called MobileTwitter that I just downloaded and installed. This text messages pretty much instantly wings its way to the Twitter servers. From there, people can subscribe to my "stream" of messages using desktop-based clients (I use Spaz on my MacBook and my Windows PC). However, I'm not stuck using one companies application -- all I need to do is poll the web service. A simple curl call will easily retrieve my latest Twitter message

curl -u andrewflanagan:mypassword http://twitter.com/statuses/user_timeline
/andrewflanagan.xml?count=1 -s -o /var/twitter/andrewflanagan.xml

and a few lines of PHP will make it displayable on my web page:

$xml = new SimpleXMLElement('/var/twitter/andrewflanagan.xml', 0, true);
$status = $xml->status->text;

Alternatively I could have the PHP script directly call Twitter but I ran into some problems since it takes longer to load the pages each time someone visits and Twitter unfortunately limits requests to 70/hr which results in ugliness when I get too many hits on my site. So instead I set up a cron job that runs every 5 minutes (using the curl call above) and updates the locally-stored XML file.

But anyway, the point of this is that you can easily define new interfaces for entering, receiving, and displaying text. It's simplistic, yes. But it means that on my way back from work (in the car) I can update the front page of my blog with a message using my cellphone. I can also be pulled over by a state trooper. They have no appreciation for the depth and usefulness of this technology!

22Mar/083

iPhone Happiness

Well. I purchased an iPhone Thursday. Friday was NOT a productive day. In fact, neither was today. It's a great little tool and it's very handy.

One of the first things I noticed was that my voicemail messages (which get emailed to me from my VoIP provider) were NOT able to be played on the iPhone. Basically, they support WAV files but they must be in a specific format.

Solution? Well, I immediately thought that I could set up a spare email account on one of my domains and use procmail to run a conversion on the audio on my Linux box (and forward the results to my regular email account). I did a search and was pleasantly surprised to see that it had already been done (in exactly this way). However, after trying to get it working on mine I realized that it was a little messy since I was using virtual mappings (in order to store all email domains/users/aliases in a Postgresql database). Hmmm... So, I played around with maildrop (with which I was previously not at all familiar with). After much, much tweaking of permissions on folders (maildrop requires some odd and sometimes nearly conflicting permissions for things to work) I was able to get it to work as expected. I shamelessly stole the script that had already been created, emerged sox and some other utilities to support the conversion and fixed some bugs that I found along the way in my mail config (finally cleared out 250+ emails that had been queued up forever).

After all that, I still have a slight issue. A WAV file goes from being 60K to being 500K when I convert it to the "acceptable" format. Oh well. AT & T's EDGE network isn't the fastest for downloading 500K but I guess it's a lot better than nothing. It sure is nice to be able to get both your Cell voicemails and your home voicemails all on the same device. The iPhone is the first (so far as I know) cell phone to offer "visual voicemail" where voicemail is essentially downloaded rather then being available over one of those irritating "press 7 to delete your message"-type interfaces.

Phew... fun stuff. I've decided that since I spent the time playing with maildrop I might add some fun things (like system automation via email). There are definitely a few maintenance tasks that might be nice to automated via email. At work I have a proxy and email (at least from my work email account) is one of the few things that I'm allowed to use. I guess in theory I could run a really slow, email-based terminal session (email "ls -al" and after about 30 seconds get the results emailed back). That would be kind of cool. And a terrible security hole. :-)

Sorry I've been slow on updating. I need to get back into the habit. Hope all my faithful reader(s) are well!

13Feb/082

A Useful Widget At Last!

I like the idea of widgets in OS X and the way Dashboard works. However, other than the calculator I don't find myself using them very much. But I finally found a Dashboard widget that really is handy. It's a tool that lets you track packages from a variety of places (Amazon, UPS, FedEx, USPS, etc.). You enter the tracking tag a nice little widget is created. It will change status and will also integrate with Growl to give you notifications (so you don't have to always look at Dashboard to notice a change).

Here's a screenshot.

picture-4.png

And a link to the author's (very nice) website. Any widgets that any of my readers use and find useful?

8Jan/083

Wiring (update 2)

Bill had commented on an older post about wiring and had asked for an update. I had thought I had posted one but couldn't find any when I just looked.

So, basically, at this point, the following is complete:

  • TV is installed in the main room. Wires are cable tied to the cantilever arm and go through a nice-looking plastic grommet in the wall. My options were to buy grommets at Lowe's (surprisingly, they were like $6 each) or simply steal some from some of our furniture (the little holes designed to have wires go into for your computer stuff). I went with the stealing.
  • All speaker wiring is done. I have speakers installed everywhere except the sub-woofer (which I installed in the back center. At some point I want a sub-woofer but the high-cost and low utility (hey, the kids are napping whenever we watch anything!) has delayed my purchase.
  • All wiring for Phase 1 is complete. This is a nice, official way of saying that there will be a phase 2 and we're not there yet. However, for this first phase, we have all audio wiring (to 5.1 speakers) installed, two power outlets (4 plugs) are installed and the cable re-wired and split (in the wall). In addition, all wiring through the wall to the TV is complete. I may change what I have going through the wall to the TV at some later date, but for now, it's everything we need.
  • No more mess in the main room (just the TV on the wall, speakers on the wall, and two floor speakers). Now we have extra room and I'm considering getting a nice leather chair (in black) that matches our surprisingly well-constructed Ikea couch.

Here are the pictures:

New Shelves
New shelves in closet. The small top shelf is just for wiring and equipment. We'll likely use the lower shelf for the printers. There's another shelf below that's outside of the shot. Notice the nice blue paint. It's not fun painting in a closet -- no room.

Top Computer Shelf
Here's the rather cluttered high shelf. It's close to the door and has all the audio/video equipment as well as the phone and two computers. The upper computer is just there temporarily. (I'm not sure exactly what to do with it -- need a computer?). It does have some spare room on the shelf for remotes and DVDs and such.

Top Computer Shelf (no flash)
Here's a shot of the same thing without the flash. This is what it looks like when you open the door. I tied some tube lights into the power plugs on the back of the receiver so that if you're using it, there's a strip of light that goes around the edge of the door frame on the inside. I considered a brighter light, but you don't need to see much and anything too bright is annoying.

New outlets
Here's a cable-filled shot of the new power outlets, the cable outlet and above (a little hard to see) the 5.1 audio outlet 5 stereo and one mono plugs (for the sub-woofer).

img_6205.JPGSpeaker on the rear, left
Here are two shots of the surround speakers. I found the mounting shelves at Lowe's for a pretty good price Looks a lot nicer than having those horrible little plastic arms.

Front view of system
Here's a shot of the front. This shows the TV mounted on the cantilever arm, the center channel (mounted a bit high but tilted appropriately) and the right front speaker (just on the floor). All the equipment is in the closet directly behind the TV. I dislike how I couldn't mount the TV in the center (but the arm does swing over and it's very close). The mind is a funny thing -- voices (played on the center channel) do sound like they're coming directly from the TV even though though they're clearly not.

Binding Posts
Here's a shot of the binding post. Hey, it looks professional! It might look nice to use banana plugs instead of bare wire, but that's too fancy...

Sub-woofer binding post
Here's the unused sub-woofer binding post behind the couch. This is an RCA-type plug so it's a little easier to connect than the screw-on/banana plugs used for the stereo binding posts.

Behind the TV
Here's what behind the TV looks like. You can see the plastic grommet in the wall (which is very functional). The arm itself is attached very solidly to a stud and the cable ties may not be pretty but they're not normally visible, so it's no problem.

I'm considering as part of Phase 2, the following:

  • CAT5, DVI and USB runs throughout the house. Realistically, probably just to the office and the "kitchen office" nook.
  • An upgrade of our main room TV (the in-laws have a bigger one -- it's time to upgrade! hehe...) and moving the upstairs TV to my office (for use with the computer)
  • Dispose of an old inkjet printer, move the newer inkjet to the closet, and get a laser printer also for the closet.
  • I'm considering (just considering) replacing my Linux machine with a dedicated "always-on" 8-core Mac. The brand new Mac Pros are just so darn cool. I could realistically do a 3-drive, RAID 5, 1TB array with the Mac and still have room on the main drive for "non-critical" stuff. I have a 1.5TB array now on 4 drives but the extra 500MB is somewhat unnecessary for redundancy. Down the road, I could upgrade to a 2TB (3x1TB HDs) setup if I needed to expand. The new machines have max RAM capacity at 32GB -- that's simply amazing (and expensive).

Note to scoffers: This does NOT mean I would give up my Linux server -- I would simply virtualize it and run it in all the spare RAM I'd have.

But except for the printers I'm not really thinking this is going to happen anytime really soon. Maybe by the end of the year. Just maybe.