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...
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)
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+.
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:
- Straightforward -- don't make me click around a lot
- Easy to share -- let me IM or email something that people can easily reference in order to access the shared material
- 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!
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!
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!
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 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.
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.
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.
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).
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.
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.
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...
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.
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.
Making Cygwin more handy
I enjoy having Cygwin installed on Windows and often like to use the shell commands (grep, find, etc.). However, it's inconvenient to spawn a new terminal window and slog through the often-complex Windows directory structure. Based off of some websites I found, I now have a way to make this work...
Create a batch script file in your Cygwin /bin folder (for me, this is C:\Cygwin\bin) with the following:
@cd /d %1 @bash --rcfile BASCHRC -i
Create a file called "bashcontext.reg" and save the following text into it:
[HKEY_CLASSES_ROOT\Directory\shell\bash] @="Open Bash shell here" [HKEY_CLASSES_ROOT\Directory\shell\bash\command] @="C:\\Cygwin\\bin\\runBash.bat \"%1\"" [HKEY_CLASSES_ROOT\Drive\shell\bash] @="Open Bash shell here" [HKEY_CLASSES_ROOT\Drive\shell\bash\command] @="C:\\Cygwin\\bin\\runBash.bat \"%1\"" [HKEY_CLASSES_ROOT\*\shell\bash] @="Open Bash shell here" [HKEY_CLASSES_ROOT\*\shell\bash\command] @="C:\\Cygwin\\bin\\runBash.bat \"%1\""
You can add the registry information by double-clicking the file to run it.
Now on every directory you have a "Open Bash shell here" option that will take you there immediately. Handy!
Here's a screenshot showing my cluttered context menu:




