Nov 29 2008

Thanksgiving: success

notarus | General | 0 Comments

We hosted the family for thanksgiving, which was fun.

We did the turkey in a fryer (saf-t-fryer from lowes, it’s a little pricy but it had a lot of safety features). We learned a few things (”if your fryer has a thermal cutoff, do not run the flame too hot, or it will over-protectively shut down the flame”). It’s got a very low center of gravity, and doesn’t want to tip, which was part of why i bought this one. After dinner, while the oil was cooling, we got a first hand example of how well designed it is– a possum crawled up the side, over the top, was hanging on one edge, and lapping at the used oil. Didn’t tip. :) Wish we had a picture of it.

The turkey came out great. I’ll have to get the name of the butcher from Leah, they were great and very reasonably priced (about $2.70/lb). We used this marinade and it came out GREAT. Turkey was super tender, the skin was awesome, and the meat was all very tasty.

All in all, definitely a repeat, I think.

Jul 11 2007

Keyboard Wedges

notarus | General | 0 Comments

I type a lot, so not hurty wrists is a big thing for me. I’ve been very very happy with the Microsoft Natural Ergonomic 4000 Keyboard (available for as low as $30 from time to time, and sometimes on sale that low at Staples or whatever). And it works awesome with the Mac, too.

The best part of it is not just the split design, but that it’s also tilted backwards at a negative angle, which is perfect for people like me who are lazy and have never learned to keep your palms UP, but instead put them on the rest.

One drawback though is that the plastic piece that keeps it at that wedge eventually breaks, it’s got three small plastic spots where it attaches and those have snapped over time (nearly 2 years now, I think). The keyboard still works awesomely, it’s just the slope that was gone.

So, rather than dump the keyboard, I did some digging and found the VersaTech Keyboard Wedge, which is a piece of thick, tough foam cut at a 10degree angle, and big enough for the keyboard. It’s a little pricy ($40 bucks shipped, more than a replacement keyboard) but this foam isn’t going anywhere, and my keyboard is nice and negatively sloped again.

This wedge would also work well with your existing keyboard, giving it a perfect negative slope, if you don’t want to buy the MS product for some reason.

Oct 18 2006

the power of parsley!

notarus | General | 1 Comment

And to think I’ve been cleaning with crazy stuff like chemicals and oranges when I could have been using parsley.

The power of Parsley!

Update 12/15/06: You might check out the new Parallels Transporter beta, http://forum.parallels.com/thread5999.html It looks like this will do all the below, but without the ftp
server in the middle?


For those of you who have a Virtual PC image that you just can’t live without, and upgraded from a PPC mac to an Intel mac (and thus Virtual PC to Parallels),
here’s a relatively quick way to convert the images.More information on how to use G4u is available at their home site.

Please note that you absolutely require at least Parallels build 1940 to run G4U.

  1. On your new mac, go to the Accounts control panel and create a user named “install”. Give it a password. You’ll need this account later.
  2. While you’re in the control panels, go to Sharing and enable the FTP server.
  3. On your OLD mac:
  4. download the g4u (”ghost for unix”) iso at http://www.feyrer.de/g4u/g4u-1.17.iso.zip . Unzip
  5. Fire up your Virtual PC, and capture the above ISO in your CDrom. Reboot if neccessary so that you boot off of it.
  6. Make a note of how large this disk image is.
  7. When you get a prompt, you want to copy your disk to your new server. Assuming you have one disk and one partition on this disk, use something like uploaddisk yournewmacip diskimage.gz wd0 .
  8. wd0 is the name that g4u knows your first disk as.
  9. diskimage.gz is the name your disk will be saved as on your new mac
  10. Wait until the disk is entirely copied. At this point you can close your virtual pc program.
  11. Now, go to your NEW mac
  12. Download the g4u (”ghost for unix”) iso at http://www.feyrer.de/g4u/g4u-1.17.iso.zip . Unzip
  13. Fire up Parallels and create a new guest OS. Give it a hard drive at least as large as what the Virutal PC guest had
  14. Boot your new GuestOS. Capture the G4U iso, and reboot the guest if necessary to boot it.
  15. When it’s finished booting, run the following command to download and unpack your disk image: slurpdisk localhost diskimage.gz
  16. Wait for this to finish.
  17. Uncapture the cd rom, and reboot your GuestOS.
  18. Go to your sharing control panel, and turn off FTP
  19. Go to your accounts panel, and delete the install account

At this point, you should have a working copy of your original Guest OS.

For more information, please see the G4U home page at http://www.feyrer.de/g4u/

So, we bought a (small) entertainment center, just 39″ wide, exactly as wide as our 42″ diagonal tv. It’s similar to this but less wide.
So, when we set it up, it has enough room for the big AV reciever, and for the Comcast moto 6412 DVR (and the soon-to-be-ours tivo series 3), dvd player, and everything else. It fits in the corner. It’s nice. But it’s very poorly venelated (read: none. Two small holes in back for cables, and not even holes in the center support/divider for cables left to right.

So when we set things up, our awesome (not) Moto DVR, which doesn’t even have a fan, immediately started overheating, which caused it to start mis-digitizing shows. When watching, the output would be screwy, and worse the audio would drop out for 3-5 seconds at a time. Very not cool.
So here’s the fix, and it’s not very expensive. Buy some very quiet 120mm case fans, a dc power adapter, rewire slightly, cut some holes, and you have a super silent but cool entertainment center.

  1. Aquire 2 quiet PC case fans. I bought a pair of these nexus 120mm fans (22db) and they are QUIET. The only move about 30CFM, but if you have one blowing in and one blowing out you’re silent and replacing “all” the air in your EC every minute. $28
  2. Buy 4 120mm cast fan grills. two for each fan, inside and out. Frys has them or buy them from any pc supply joint, including the above. $10
  3. You’ll need bolts and nuts. Make sure they’re at least 2″ long and fit through the fan. Get some washers too. $3 at Lowes.
  4. Buy a 12V power supply that puts out at least .6a. I went with this one from radio shack, which already has an adaptaplug end. I picked the adjustable voltage because I was worried about possible noise, but this turned out not to be an issue. Much cheaper online than in the stores. $18
  5. 2 Adaptaplug ends, 2 extension cords, and a Y splitter (which I only found on ebay). Actually, buy all of this on ebay you can. Ebay got me parts for $2 ea, as opposed to 7 or 8ea at the store or online. ~~$15 total

Installing

  1. When you get all of this, strip the ends off the fan and wire in the adaptaplug ends (you want the red and black wires, ignore the yellow and cut it short). Test that the fan works before you try to install it. Use the Y and the extension cords to run the cable into your entertainment center. Wrap the connections up well with electrical tape or even better, heat shrink tubing.
  2. Cut two holes in the back of your entertainment center, up high (or high and low), about 4.2″ in diameter, using a fan cover as a template. Be careful to make sure there’s enough cardboard arround the sides to hold the screws up!
  3. Drill holes through the carboard at the four corners using your 120mm fan grill as the guide again. Make sure the bit is larger than your bolts! You’ll need it to work the bolts arround a little to get into the fans.
  4. Mounting:
  5.  outside                                 cardboard back        inside
    (bolt) (washer) (fan grill)               |                 (fan) (fan grill) (bolt)
  6. Tighten everything as tight as possible to prevent noise. Be sure you install one fan to blow in, and one fan to blow out.
  7. Then, if you have a partition in your entertainment center, drill 2.5″ holes (using a hole driller) in 4 appropriate places (in mine, 2 up top, 2 below) so that there is airflow left and right without compromising the structural integrity. You can also use these holes for cabling from side to side w/o going out the back. Paint the wood black (or color with a sharpie!) so that the holes aren’t obvious from outside the cabinet.
  8. Plug in the fans, they should both spin. You won’t notice a lot of airflow, but there should be some. Some is all you need.
  9. Put your entertainment hardware back, close the doors, and enjoy. My entertainment center with doors closed is cool, and the DVR is barely warmer than room temp now.

To give you an idea of how quiet it was, with the tv off, my wife didn’t know I installed the fans until I told her.
Note: I initially tried to buy AC powered fans which supposedly were only 32db. When I got them, they were loud. When I installed them, they were LOUD LOUD, way too loud to keep installed. I think part of the problem was not only that they’re louder than 32db (manufacturer exaggeration?) but also if you’re putting too much air into a small area, the cardboard back on most modern diy furniture will act like a speaker diagphram. And these were 70cfm fans! I’d suggest skipping the AC

Sep 19 2006

Day -14

notarus | General | 0 Comments

Ok, i’ve been bad, and haven’t updated.

Short version is: Cast is off. Kara is ultra happy, crawling and sitting and playing. Parents are still playing catchup on sleep and work.

Everyone, though, is much happier. Thanks to everyone who supported us last for the last month!

Found in a comment on version tracker that will (finally) let you set your delete key on your mac to send backspace (important to me because routers don’t do terminal types as well as they should) and reposting it here to share:


End your delete-should-backspace woes when using Vim remotely with iTerm by adding one simple keyboard mapping. Go to iTerm preferences, Profiles, Keyboard, choose Profile=Global, add this mapping…

Key: delete
Action: send hex code
Hex code: 0×08

Tell your bookmarks to use the Global keyboard setting.

Apr 30 2006

Making the Tea

notarus | General | 0 Comments

I enjoy a national brand of tea, but it costs about $1/bottle. Very very yummy, but that gets expensive. And since one of my techniques for managing hyperactivity is a non stop stream of flavor (pop right now) I’d like to stop buying and drinking so much soda, it’s not great for you, and I don’t relish explaining to my daughter some day why mom and dad drink a lot of pop but she can’t have any.
So, here, below, I present the following recipie (cribbed and modified from various sources online, and tested for my tastes) for a nice strong diet lemon tea.

Ahead of time: buy one bag of granular splenda (the big bag cost me $8.99 at jewel), and one large container of Lemon juice from concentrate (the generic 1 qt at Jewel cost $2.99). Also buy a box of Lipton tea bags (the yellow box black tea, the one that’s “orange pekoe and pekoe cut black tea”).
Bring 3 quarts of water to a high boil in a covered pan then take it off the fire and move to another burner. Put 5 Lipton tea bags (use 7 if decaf) in the water, and re cover. Let sit for an hour.

After 1 hour, pour into a large pitcher. Add 3/4 cup of splenda, and 1/2 cup lemon juice. Mix well and chill.

After it’s chilled, taste.

By my count (I forgot to note the cost of the tea), this works out to about $1.15 per 3 quarts of tea, or roughly .14 c per 12 oz container. Given that I drink about 6-8 12 oz cans of soda a work day, that’s a savings of almost $9/day for me over switching to pre packaged tea.

Feb 16 2006

Totally Free!

notarus | General | 0 Comments

<ring ring>
<silence>
Me: Hello?pause
Hello?pause
Last chance for the computer to connect me to the caller?

Them:
“Sir! We’d like to upgrade your Chicago Tribune delivery service TOTALLY FREE to include the saturday edition of the tribune! Free!”

Forever?
Yes
No change in my price? Ever?
Never! Same price!
May we record this call?
this isn’t right. noone’s ever needed to record that they gave away something free Uh, Sure.
We just want you to understand that in 24 weeks, you will get a renewal notice, and if you want to discontinue sat service, just note that on the renwal.
Wouldn’t that mean it’s not free forever?”
No sir! It’s totally free!
Why would it require me to change my service at renewal time?
Well, the price might have changed.
Isn’t that a change in price? Didn’t I just ask if the price would change?”
Your price won’t change. If you want to discontinue saturday service, just note it on the form.
If discontinuing service is what i need to do to keep the price the same, doesn’t that mean the price is changing?
No, sir! The price is the same as you’re paying now.
Ok, I withdraw my consent.

And all this just because we don’t want to drive out every sat to get the sunday ads.

Feb 03 2006

Give your senator an Ipod!

notarus | General | 1 Comment

Bigger, more interesting sources than mine have reported on this, but this is an awesome idea and I’ve already donated.

After hearing Ted Stevens (R-AZ, recently famous for threating to never return to the senate if they cut out the 50M to build a bridge to an island with < 200 inhabitants. Small government? what’s that) suddenly turn into an angel on the topic of DRM (He was given an Ipod, used it, and realized that all these restrictions being proposed to be mandated by RIAA and MPAA would make it useless), Ipac wants to give more senators Ipods. The idea is that if they actually USE some of the technology that innovation makes possible, they might be a little slower to enact legislation that prevents innovation.

And lest ye think this is hyperbole, the latest proposal from RIAA/MPAA actually says that any form of use of media that has not been “customary historic use” will not be legal unless they pre-approve it.

Anyway, please, give a few dollars here. This may be the most effective way possible to slow the big money of the RIAA and MPAA– give them something personal to associate the problem with.

Jan 14 2006

In darkest night…

notarus | General | 2 Comments

As I sit here rocking my 4 week old daughter to sleep. I have a lot of time to think.

Most people who know me unfortunately think me shallow at best, with maybe pompous coming in a close second. They’re probably right, unfortunately. I never really learned how to interact with other people well.

And yet, as i’m sitting here rocking this sweet girl to sleep and i’m thinking of my my mom, who gave up everything for my sister and I. Raising us was not easy, and doing so just above the poverty line made it harder.

I’m mindful of Sarah Mclachlan’s song, Answer-

If it takes my whole life
I won’t break, I won’t bend.
It’ll all be worth it
Worth it in the end

And I think two two things:

First, my mother had enough love to do that. That is a hell of a commitment. And I love her for it and hope to live up to her example.

And second, god willing, I hope like hell I’m a good enough person to be able to do that myself. Some days I’m not sure at all, and I think that’s even more frightening than the idea of failing my daughter.

Sep 05 2005

Maia improvements

notarus | General, Open Source | 1 Comment

We’re converting to Maia Mailguard and one “major” drawback for me and a few other users on our shared email server is that we’re already long time users of SpamAssassin. Now, Amavis uses SA, but it doesn’t use your SA files, so you either lose your long hand crafted whitelist and blacklists, or you enter them one at a time in a web page.

That annoys me.

Because it’s open source, though, I have the opportunity to improve that. And I did. Patches vs 1.0.0rc5 below:


--- wblist.php 2005/09/05 17:09:30 1.1
+++ wblist.php 2005/09/05 17:36:29
@@ -1,6 +1,6 @@
<?php
/*
- * $Id: wblist.php,v 1.1 2005/09/05 17:09:30 root Exp $
+ * $Id: wblist.php,v 1.3 2005/09/05 17:36:22 root Exp $
*
* MAIA MAILGUARD LICENSE v.1.0
*
@@ -117,6 +117,24 @@
</tr>

</table>
+
+<!--- mark added here -->
+<p>
+<table>
+<td class="menubody">
+Enter a batch file to process here
+</td>
+<td><textarea name=batch_wb cols=40 rows=4></textarea></td>
+</tr>
+<tr>
+<td class="menubody" colspan="2" align="center">
+<input type="submit" name="addbatch" value="Add batch to database">
+</td>
+</tr>
+</table>
+<!--- end mark -->
+
+
</div><br>

<?php
@@ -182,4 +200,15 @@

</form>

+<p>
+<center>
+Note: Accepted batch formats are:
+<pre>
+whitelist_from email@host.com
+whitelist email2@host.com
+blacklist_from email3@host.com
+blacklist email4@host.com
+</pre>
+</center>
+
<?php display_html_foot(); ?>

--- xwblist.php 2005/09/05 17:09:44 1.1
+++ xwblist.php 2005/09/05 17:10:40
@@ -1,6 +1,6 @@
<?php
/*
- * $Id: xwblist.php,v 1.1 2005/09/05 17:09:44 root Exp $
+ * $Id: xwblist.php,v 1.2 2005/09/05 17:10:27 root Exp $
*
* MAIA MAILGUARD LICENSE v.1.0
*
@@ -101,6 +101,11 @@
} else {
$newaddr = "";
}
+ if (isset($HTTP_POST_VARS["batch_wb"])) {
+ $batch_wb = trim($HTTP_POST_VARS["batch_wb"]);
+ } else {
+ $batch_wb = “”;
+ }

// User pressed the “Add to List” button to add an address to the
@@ -112,6 +117,63 @@
add_address_to_wb_list($euid, $newaddr, $list);
}
}
+ elseif ( $batch_wb != “” ){
+ if (preg_match(”/(whitelist|whitelist_from)\s+[\w\+\-]+\@[\.\w\+\-]/i”,$batch_wb)
+ ||
+ preg_match(”/(blacklist|blacklist_from)\s+[\w\+\-]+\@[\.\w\+\-]/i”,$batch_wb)){
+ // sa style white list. Process
+ $batch_output_data.=”Processing SA style inputs.<br>\n”;
+ $my_batch_lines=preg_split(”/\n/”,$batch_wb);
+ foreach ($my_batch_lines as $my_line){
+ // ignore comments and empty lines
+ if (preg_match(”/^\s*$/”,$my_line)){
+ continue;
+ }
+ if (preg_match(”/^\s*#/”,$my_line)){
+ continue;
+ }
+
+ $my_wb=”";
+ $data=preg_split(”/\s+/”,$my_line);
+ $data[0]=strtolower($data[0]);
+ if ($data[0] == “whitelist” || $data[0] == “whitelist_from”){
+ $my_wb=”W”;
+ }
+ elseif($data[0]==”blacklist” || $data[0]==”blacklist_from”){
+ $my_wb=”B”;
+ }
+ else{
+ $batch_output_error.= “Error: Can’t parse \”$my_line\”<br> Error: First element not whitelist or blacklist. Skipping.<br>”;
+ continue; // skip, we can’t process this line.
+ }
+ $data[1]=strtolower($data[1]);
+ if (preg_match(”/\*/”,$data[1])){
+ $batch_output_error.= “Error: Skipping email $data[1]. Amvis can not process a wildcard.<br>\n”;
+ continue;
+ }
+
+ // confirm data[1] has what appears to be an email address
+ if (preg_match(”/^[\w\+\.\-]+\@[\.\w\+\-]+$/”,$data[1],$match)){
+ $my_addr=$match[0];
+ }
+ else{
+ $batch_output_error.= “Error: Can’t parse \”$my_line\”<br> Error: Second element not an email. Skipping.<br>”;
+ continue; // skip, we can’t process this line.
+ }
+ // all good. Add.
+ add_address_to_wb_list($euid, $my_addr, $my_wb);
+ $batch_output_data.= “Added <b>$my_addr</b> as a <b>”;
+ if ($my_wb == “W”){
+ $batch_output_data.=”whitelist”;
+ }
+ else{
+ $batch_output_data.= “blacklist”;
+ }
+ $batch_output_data.=”</b><br>\n”;
+
+ }
+ }
+ }

// User pressed the “Update” button to modify the whitelist/blacklist
// settings.
@@ -168,6 +230,17 @@

<tr>
<td class=”messagebox” align=”center”>
+<?php
+if ($batch_output_error != “”){
+ print $batch_output_error;
+ print “<p>\n”;
+}
+if ($batch_output_data != “”){
+ print $batch_output_data;
+ print “<p>\n”;
+}
+?>
+
<?php print($lang_text_lists_updated); ?>
</td>
</tr>

And won!

At work, we’re looking to replace our existing radius server (merit, for which support is being discontinued, and also for which our guest users and blocked users are just entries in the flat file) with something more capable.

We like the look of freeradius, and it’s pretty easy to write new modules for– for example, I whipped something together to check our PH server for current status, etc.

But what we really want is to chain two or more Auth-Types together; if the first doesn’t find the user, try the second, then the third, etc.

It turns out this actually is well documented but this was super hard to find (I didn’t think of this as “failover”), but it’s documented in doc/configurable_failover in the freeradius distribution.

Specifically, all you need to do is this:

in radiusd.conf:

  Auth-Type MyMultiAuth{
           redundant {
              krb5 {
                   fail     = 1
                   notfound = 2
                   reject   = 3  # required because krb5 returns reject on notfound
              }
              sql {
                   fail     = return
                   notfound = 1
              }
              next_module{
                     fail= return
                     notfound=1
              }
           }
        }

and in users:

DEFAULT Auth-Type = MyMultiAuth

Easy enough. Just obscure.

Below, I hope the following keywords will help the next guy:

two auth-types multiple auth-types chain auth-types two authentication sources

I’m a beer snob. (hi, mark!). I admit it.

And lunch, today, was at murphy’s. On the UIUC campus. And, you know, we have this winning basketball team and the final game is tonight, blah blah orange tshirts as far as the eye can see, etc.

But with lunch, I might occasionally choose to have a Blue Moon, a most excellent beer.

And because of the game, and the expected customer loads and the expected rioting and stuff, beer is being served in plastic glasses. Blue Moon should not be in a cheapo plastic cup!

Blue Moon in a Plastic Cup

At least it came with an orange.

Mar 28 2005

Tivo, the new enemy?

notarus | General | 0 Comments

I saw this billboard this morning, and my jaw practically dropped.

Sure, Tivo is awesome, and probably “the guy to beat”. But they’re certainly not the volume unit leader in the DVR market, what with every cable/satellite system out there selling (or about to sell in DirecTV’s case) their own feature poor DVR.

But Tivo, Inc has to be very, very excited by this new ad campaign:

Tivo Is It

Btw: IMO, Tivo is not that expensive. And since DISH network charges you a little extra for additional satellite recievers in your house anyway, it’s kinda the pot calling the kettle black, eh?