Thursday, April 30, 2009

CASD and Career Trajectory

Some recently added responsibility* at work includes looking after the 2000+ 73GB fiber channel drives in a SAN farm -- 1084 are 2Gbps and the others are 4Gbps. I would find the initial configuration of the arrays and fabric an interesting project, all I really do is monitor the controllers with a GUI that operates out-of-band, and replace failed drives, which are all under a support contract. It's all pretty simple, in theory.

It's a 10 minute hike from my office to the raised floor where these live, and I'm lazy -- so, where the previous guy would find an error on the Storage Manager GUI, wander down, note the drive position and enclosure serial number, then call it in to the support, get the replacement and wander down again to swap the drive -- I made a list of all the enclosures and serial numbers and call in the drive using this info only making the one trip to physically swap drives.

For some reason (no, there is no firmware fix for this), in the bigger, faster controllers, when you remove and replace a failed drive, the failed drive remains listed in the array until you replace it manually in the list with the new drive. Annoying, but ok, fine. I just had to replace a hot spare. In a lot of ways, the hot spare pool acts like an array, but I don't have all the same options -- in particular, there seems to be no way to remove a failed drive from the hot spare pool without powering down the whole system (recycling each of the redundant controllers doesn't do the trick) to have it re-ident the drives**. When I add the new drive to the hot spare pool, that enclosure/slot shows up on the hot spare list twice, once as "Optimal" and once as "Missing". So we see an error at the controller level, but no discreet device is in an error state: all the drives are fine, all the arrays are good and we have all eight hot spares in service.

The fun part was getting through the layers of support to someone who A) gets that this is a problem and B) knows more than me, and hopefully C) can fix it. In retrospect, I should have just lied to the first level of support. They're really just there to confirm that we have a support contract and forward us on to the next level. Second level really does know more about these systems than me, but I have just been doing this a couple months. The guy at third level I really have high hopes for, if I can get him interested. "Have you power-cycled the system?" "No, it's linked to manufacturing -- there's slack, but if something goes wrong and it won't come back up, it costs over $1M/minute that the line stops." Plus, I didn't set it up, I don't know what systems it feeds, etc.

So during a low traffic window, we cycled each of the two controllers which back each other up. First take down 1, 2 takes over and handles all traffic, bring 1 back up, wait for it to stabilize and bring down two, 1 takes over all traffic while we bring 2 back up. No change. I sent this to my level 3 guy and get this:

send me a new CASD - the phydev # change on the power cycle and let me see what i can find out

You're probably thinking that this is terminology we've used before. Nope! I've send a bunch of screen shots showing the error, but the other thing I sent was a zip file of logs which the management gui creates. Sure enough of the screen that makes that, the top of the window says "Capture All System Diagnostics". Regarding, "the phydev[physical device?] # change on the power cycle", this is a statement I hope. If he wants a list of "phydev #" that changed, I got nothing. Punctuation would help me here.

One thing about being at the mature level in my career that I am is that I can easily tell when I just don't have the knowledge to follow what's being discussed and when someone is being intentionally obscure.

Of course, he could just have poor communication skills. I had someone ask me once what the difference was between a password and an email address. He was trying to ask if the ISP dialup account password was the same or different than their ISP email password.

--==<<>>==--

* - Read: they got rid of someone but their job still needed doing.

** - If that even works. Since these SAN arrays are integral to the manufacturing line, shutting one down over a false positive storage system error is not our first choice.

Labels:

Wednesday, April 29, 2009

IFR lite

http://www.freewebs.com/riddleracers/n39702522_31093246_7887.jpg
It's less than a year since I finally finished my Private Pilot, but I'm already thinking Instrument Rating.

My plane is IFR equipped, although a biennial transponder check for IFR is needed. But it's a just barely equipped situation. My '63 Cherokee actually has a Loran system. I've got two nav/com's and a VOR/Glideslope display, but one of the nav/com's really needs the antenna wire checked out or the whole radio replaced for preference. If I'm replacing the radio, should I spring for a Garmin 430W which includes a radio with a GPS I can use for IFR? If I'm looking at a big ticket item like the 430, should I be thinking about some kind of aircraft upgrade*?

Here's my issue with the IFR rating itself. There are a lot of things they teach you for IFR that I have no interest in doing. Don't get me wrong, they are valuable skills, but I sincerely hope I never have to make a landing to minimums or even come close to decision height without seeing the runway. It's a given that you will be flying low and slow -- so limited maneuverability -- in conditions of poor visibility ... no thanks!

And I get that if you're flying cargo or passengers for a charter or airline, this level of expertise is needed; however, a lot of us (or at least me) will just decide this is not when we should go flying.

http://www.fsstation.com/customimages/app/vertical.jpg

I think there is a big niche for something I propose as Private IFR. You would still get training in how to read IFR charts, perform a missed approach, use instruments to avoid becoming disoriented, but all take offs and landings require the ceiling to be at least 500' above pattern altitude and you only transition** through clouds to reach another VFR condition area while in two-way radio contact with ATC and on their scopes.

If we arbitrarily divide weather conditions from 1 (CAVU) to 10 (ATP's stay on the ground), VFR covers 1-3, then IFR covers down to 7, then you reserve 8 and 9 for known icing and other extreme hazards requiring special gear to fly safely. I want Private IFR to cover 4 and 5. If you never trained in conditions worse than 5 and you fly occasional IFR but avoid 6 and 7, having an IFR cert that covers those situations is just a temptation to folly.

--==<<>>==--

* - Links: Velocity, Piper Comanche, Van's RV-10

** - Let's say a max of 5000' vertically or 5 miles horizontally.

Labels:

Tuesday, April 28, 2009

MythTV

http://www.mythtv.org/img/screenshots/tv_epg.png
Personally, I live in the boodocks and it's only since the local cable company got bought out by a national provider that we can even get a cable box with s-video out and they're still working on high-def. So, I'm still getting along with my old, and slightly flaky 30" RCA. It's bulky, it's heavy and some day I won't be able to resist getting one of those shiny LED flatscreens.

When that day comes, I may make a lot of changes all at once. I think with HD, it's time to ditch my series one Tivo. I've added a network card and more hard-drive space, but it's just getting old. I'm also downloading more tv-shows and watching them on my PC (watching on the TV would be better). Finally, the new cable company is bumping up their rates all the time, and dumping them and getting DSL to get Internet and getting all my TV via downloads is an option.
http://www.mythtv.org/img/screenshots/tv_mainscreen.jpg
MythTV has been around since 2002, but they just keep getting better. Added to that is the recent popularity has resulted in a whole catagory of computer cases designed to be media servers for home entertainment systems -- some have included remotes. Due to legal issues, Zap2It no longer provides free program listings, but Schedules Direct is a very reasonable $20/yr compared to Tivo's $180/yr. There are many variants and competing projects, but the main MythTV seems to do everything I want, plus stuff that sounds pretty cool.

So, there would be a considerable up-front investment, but I would be trading $985 every year in TV, Internet and Tivo charges for $423 for DSL Internet and SD programming. Call it a savings, figure it as a raise in this economy or just apply it to the cost of the hardware -- it's tempting.

Labels:

Monday, April 27, 2009

You can no longer eat good food in a 747 ...


... because they closed this South Korean restaurant.

The outside doesn't look so good, but the interior still looks like a great place for a private function.
http://lh4.ggpht.com/_hVOW2U7K4-M/Se5a7OzJnzI/AAAAAAAA_eI/eWYrHmXt18c/s800/tukjryhjgfnfgd.jpg
http://lh6.ggpht.com/_hVOW2U7K4-M/Se5awxrwqOI/AAAAAAAA_ZA/LpRwKSSFH1o/s800/82.jpg

The most important piece of new knowledge (the vagaries of the dining industry is not new) I took away was a better feeling for the size of a 747. This view from google maps shows that if you draw a box around it (nose-wing-tail-wing-nose) it easily encloses a whole city block.

It's obvious that they're big, but sitting out in the big flat runways or next to those weird baggage loaders, I never got a real feel for the size.

Labels:

Friday, April 24, 2009

MS relationship with XP: on again, off again.

Recently, MS announced that for Windows 7, Pro and better, will be able to load a free virtual system running XP SP3. It's a kind of marketing and technological shuffle-step. The virtual system will also 'share' the desktop so that your XP application will just show up on your Windows 7 desktop as native application instances.

I can't imagine that they don't really have a complete virtual PC running, which means that you will need to run anti-virus and anti-spyware on both the Win7 host and the WinXP client -- although you could, there's no need for a web browser on the XP client, so that helps security-wise.

Win7 is still going to be offered in 32 bit, and 32bit is still limited to an effective 3 to 3-.5 GB of RAM, so running a XP SP3 as a VM on top is going to going to make Win7 a real pig when it comes to RAM.

On the other hand, there is a 64 bit Win7* and a 6 or 8GB desktop system is probably and extra $100 over a 4GB since about everything has 64bit dual processors these days and extra RAM is the only change needed. I would expect Win7 and XP to run smoothly on this type of setup.

In retrospect, I wonder now if this was the plan all along and why they're making XP full licences so hard to get these days. It's mighty short step from this to getting a 64 bit Linux for free on the same hardware** and running an XP instance (you need an XP license) on free Player or Server from VMware.

This is a good chance for MS users to migrate to 64 bit painlessly, but the same chance is there for them to move to 64 bit Linux.

--==<<>>==--

* - No indication that I've found about this being a premium price or not.

** - After a search of a couple minutes, I found this quad-core with 8GB of RAM, add your own HDD and DVD for $580. Add 64 bit Linux and the license key off a dead XP system, and you're gold.

Labels:

Thursday, April 23, 2009

Drones

http://sitelife.aviationweek.com/ver1.0/Content/images/store/9/7/69f21636-ee3e-4524-a72c-e3833cc84f4f.Large.jpg

There are some new pics of the Predator C "Avenger" up. It looks cool, and I'd enjoy controlling one without firing missiles (which would be awesome!)

However, as a VFR pilot, there are concerns about drones. Less about military use -- they use them in war zones (where I have no desire to fly) or inside their own, known Military Use and Restricted air spaces (where I avoid flying). It's local law enforcement and DEA that are using these things to scout for MJ growers that scares me.

These flights aren't scheduled, no NOTAM's are issued, they mostly work on clear days or nights when VFR pilots fly, but their controllers are looking down for surveillance instead of scanning for air traffic. VFR pilots scan for traffic, but the whole idea is to make the drones hard to see.

It seems like a sideband feed to regional ATC (if a call to ATC and a Mode C transponder aren't feasible) wouldn't be too hard to accomplish putting these things on their scopes so that IFR aircraft and those under VFR with flight following would at least get alerts, if not vectors, if they flew too close.

The Predator C at the top is bigger and heavier than my plane, and even the smallest surveillance drones are bigger than birds which have broken planes in the past when struck.

Labels:

Wednesday, April 22, 2009

Making an Computer Playspace for the Kids

http://blogs.liblime.com/open-sesame/wp-content/uploads/2009/03/whatisqimo.jpg
Qimo is a kids/educational version of Ubuntu*. A coworker brought Qimo to my attention through this link. It runs smoothly on limited hardware. Being Linux-based, Qimo is free. There is also an educational version of Ubuntu called Edubuntu, but it's not nearly as fun or cute as Qimo.

Here's where I get fancy. The usual problem with running VM's from your home PC is that you don't have enough memory. The usual effective upper limit is 3.5GB, XP with SP3 wants 1GB and Vista is even more of a pig. Qimo on the other hand will get by on 256MB of RAM and a 400MHz processor. You can easily run this on top of your working windows system with little or no impact. Both VMware Player and Server will allow you to create a desktop icon to launch the VM and open a console window like it's just another application.

Both VMware Player and Server are free with registration. Server has more options but is more complicated to configure. Player is pretty dead simple, but you'll have to have someone create the initial VM for you, or use EasyVMX to spec out your system**. Since Qimo is actually faster, more secure and kid friendly as a live-cd, we can just run it from the iso image. This means that when we configure the VM, we can just give it 384MB of RAM and tell it to skip the VM hard-drive and NIC. When it asks you about the CD, change it from the local device to load the Qimo iso (which I saved into the Qimo Virtual Machine directory.)

This means that, aside from time to download the Qimo iso and your choice of VMware program, in about a half and hour***, you can have a safe PC for your child to play on -- no worrying about Internet access and no futzing around getting an old PC working and loading the OS, not to mention setting up a space for the new-old PC. If they spend a lot of time with Qimo and really like it, you can always go back and add a drive and do a full install, updates, etc. If they play it once to humor you and then ignore it, the process didn't cost much but time, and not much of that.

--==<<>>==--

* - Ubuntu is my current choice for a friendly Linux environment. If you're thinking about giving Linux a try, I think this is the way to go.

** - Since EasyVMX assumes you will have at least one harddrive, are using the host system's cd/dvd drive and a nic, you'll need to edit the .vmx file created. It's just a text ini file. Just change scsi0:0.present = "TRUE" to "FALSE" and the hd is gone, change ide1:0.fileName = "D:" to the path to the Qimo iso file, and change ide1:0.deviceType = "cdrom-raw" to "cdrom-image" to boot to the iso. As you should suspect by now, changing Ethernet0.present = "TRUE" to "FALSE" will remove the nic.

*** - If you've never used any VMware product before, be prepared to spend some time getting this part working. There's a lot of complex questions, but you're pretty safe in just taking the defaults -- as galling as that may be.

Labels:

Tuesday, April 21, 2009

AOPA, ASF and FAA Wings

http://www.geocities.com/semco_inc/aviation-pdfs/faa.jpg

First, if you're a pilot or want to learn, an AOPA membership is a great idea. Unless you're in an intensive training program to get an airline job -- then your plate is already full.
http://www.contentedits.com/clientimages/1465/AOPAasfLogo.gif
For the rest of us, a short weekly email of news keeps you focused and the links to new ASF online courses are a great way to keep learning when the weather isn't cooperating. Have you noticed that the nice weather seems to happen in the middle of the week and the weekends are full of blustery, low ceilings and low visibility?
A number of the ASF courses provide credit toward the FAA Wings program. You don't need to use the online courses (and you can't qualify by them alone), but when you live in the boonies, it's a great way to pick up free points and learn a little something.

People who aren't currently participating in Wings should know it changed in 2008. It is more complicated, but once you get setup, a lot of the scut work of tracking qualifying courses, seminars and training is done for you. Basically, they reconfigured it so that it's an indicator of a more broad set of skills and training. It looks like half of your credits need to come from a CFI rating particular flight skills.

The FAA took away those fancy Wings Pins; although if you are an Avemco (insurance) customer, they will give you lapel pins if you keep up your Wings status. A less tangible, but more significant benefit is their discounted rate program for participating pilots.

I haven't been so much as ramp checked by the FAA, but there are a number of stories online about people who got into a conflict with the FAA found that participating in the Wings program got them a lot of slack. They've got regulations that clearly define the actions they take when a pilot breaks a reg, but they have some latitude and understand that sometimes bad luck happens. Being in the FAA's Wings program shows that you're making the effort to continually train and learn. I've heard cases where the FAA rep went from treating the pilot like an idiot child to a buddy who got in a jam when the pilot mentioned being in Wings.

Labels:

Tuesday, April 14, 2009

MS Abandons XP

Today, April 14th, 2009, Microsoft stops support (bug fixes) of their still popular Windows XP. They will still be providing security patches until 2014, however.

You can read an article here, but some of the highlights are XP is over 7 years old now and probably the most popular* Windows to date. It still has an estimated 63% compared to 24% for Vista of computers connected to the Internet.

People buying computers recently have discovered that getting one with XP has been difficult if not impossible for years now. I remember talking to a BestBuy tech when MS first cut off manufactures from selling systems with XP**, and he told me that the majority of their work requests were for removing Vista and installing XP on systems people purchased a week or two previous. Slowly it has become harder to get XP, first Home and Media editions disappeared and now Pro is a hassle. All the while MS was battling negative stories about Vista and launching ad campaigns to try to tell people that Vista is fine, just try it. The truth is that with good hardware (about double what is needed for XP), Vista is a good operating system -- it doesn't have the stability issues of 98 or ME, and the interface is pretty enough.

Vista's problem is that it's not XP, and far too many programs which people have gotten used to on XP stop working on Vista. When Vista first came on the scene, the PC's being built didn't really have the power to run it smoothly -- so people resisted. Admins remembered the flop that ME was. Software companies still were wull under their budgets and manpower from the dot-com bubble and they had to make choices. Most chose to improve their programs for XP or work on new projects altogether instead of pouring money into development to make thier old programs work with Vista, which no one ran if they could help it anyway. Today, the new PC's mostly have the horsepower to run Vista, but there are so few programs than need it and still some many good ones that people are used to, that people stilll want XP. So it could be argued that Vista's biggest flaw was really timing.

The simple question that occured to me this morning is this: why does Microsoft hate XP?

Seriously, I don't get it. They've already sunk in the development money, but why keep spending the advertising to sell Vista? It's not that nobody knows what it is, we just don't want it. Why keep upsetting customers and alienating vendors by taking away the Windows version they want -- XP? They made their nut to develop XP years ago. They even have a 64bit version of XP -- tho, the 64bit version of Vista is still rare. All they have to do is press new CD's and box them up at a cost of something like $2/box (maybe $0.50 for OEM packs), and they'll have people lined up to buy them at $120 each.

--==<<>>==--

* - It depends on who you ask. I'm sure other versions have had a greater market share, but I don't think any other version has been accepted as thoroughly by the users and admins.

** - Xp is still packaged with the new netbooks using Atom processors. These cute little guys just don't have the memory to run Vista.

Labels:

Sunday, April 12, 2009

Stolen Airplane News

http://cvillain.com/wp-content/uploads/cessna172.jpg
I'll admit most of my news I get from the comics. Cartoonists are looking to communicate through their medium and any big topic usually gets to the newspaper funny pages or one of the online comics that enjoy. The artists usually have something to say and it's funny. Reading the paper or watching the news is more timely, but I hate the breast-beating and smarmy gimmicks*.

I was almost pleasantly surprised by their coverage of Monday's stolen Cessna 172 from a Canadian flight school which flew into the US and was tracked by F-16's from NORAD. It turned into a nationally televised police chase -- a news item formerly only a staple for Los Angelenos. But to see it as a car chase, you have to picture a guy in a golf cart that will go maybe 20mph, and the police cars can't go below 40mph unless they ride their brakes. To form up next to the guy, the F16's pretty much had to reduce their power almost to nothing and then pitch up at an extreme angle. I'll bet the military pilots involved felt gung-ho and excited when the took off from Colorado to intercept and then kinda silly by the time they got there.

They guy evidently flew right over Lake Superior -- no ground clutter and great for radar. Then meandered over the Midwest going from 3000 feet up to 14,000 where every every radar station for hundereds of miles around could see him clearly. If he was sneaking into the country, he'd fly lower and through valleys where possible. No one has said, but I wouldn't be surpised to learn he had his transponder going.

Yeah, the F-16's could have shot him down at any point, but why? "Terrorist" is such and easy conclusion to jump to, but in the end, it turned into a kind of sad and stupid story. Tradionally, it will be six moonths or more before we hear the story from the FAA, but it sounds like the guy hoped to be shot down. I found some good articles online from GlobalTV in Vancouver, Canada and one at the Huffington Post, a Chicago based Internet news site.

There has been grumbling about how the airplane he stole was unlocked with the keys in it. And how he was able to get onto the field to the plane. Although denied at first, it sounds like he was a current student so field access is no problem. I guess the flight school habitually left their training planes open with keys inside, but that's less of problem than you might think. In 2006, there were six airplanes stolen in the US compared to 1.2 million cars in the same year. Six! in the whole country!

Locking light planes, as a security measure, is on par with a lock on a screen door. The door lock on GA planes is a joke (big screw driver and you're in) and the ignition lock is only slightly more complex -- the wires are all exposed behind the panel (the big screwdriver maybe easier here too).

Last August, a man in Virginia took a plane (again a Cessna 172) and flew so low** that he was only on radar erratically. In his case, he was shadowed by a police helicopter and they evacuated a mall. Again the story was pilot wanting to commit suicide, but he was going to ditch in a lake. Another difference from the first, was that the man was later found to be a part owner of the plane.

This guy was pretty close to D.C., so why no big news story? Because he was domestic and didn't cross a state line, much less an international border? Was his flight just too short for people to get worked into a tizzy? Maybe last Monday was just a slow news day.

Seriously, guys ... like 9/11 hasn't added enough regulations and BS to flying. We don't need pilots pulling stupid stunts giving the TSA an excuse to make our lives more miserable.

-----

* - The situations are usually complex, intentionally choosing to interview someone in tears for a three second sound bite ensures that they won't get any fasts that might oppose the story they decide to tell and just gets an emotional display. Worse are the commercial plugs with bites like "Is there rat poison in your child's drink box? We'll tell you more at 11."

** - The second article says that private planes can legally fly below 200 feet, but not around people and pretty much only for take-offs and landings. Maybe they meant 2000 feet.

Labels:

Friday, April 10, 2009

Kludgey Shell Scripts, Perl and VM Disk Access

The tech company I work for is absurdly huge. I was recently asked by a co-worker to write a quick script to merge four flat files (from different DB's) into one file to import into another DB. Each line of the four files starts out with an index field, so I start with the first list, and then append data from matching lines of the other files to the first file.

My first thought was to slap together a shell script with grep and cut to build the merged list line by line. Here's the kludgey script:
---

#!/bin/ksh
F1="big_file"
F2="linked_file"
F3="slg_file"
F4="ei_file"
F_OUT="new_master_file"

CAT="/bin/cat"
CUT="/bin/cut"
ECHO="/bin/echo"
GREP="/bin/grep"
HEAD="/usr/bin/head"
RM="/bin/rm"
SED="/bin/sed"
SORT="/bin/sort"
TR="/usr/bin/tr"
WC="/usr/bin/wc"

WORDS=`$CAT $F1 | $CUT -d, -f1 | $SORT -u | $TR "\n" " "`

loop_cnt=0
$RM $F_OUT

for loop in $WORDS; do
$ECHO -n "${loop}[$loop_cnt] "
out1=`$GREP "^${loop}," $F1 | $HEAD -1`
out2=`$GREP "^${loop}," $F2 | $HEAD -1 | $CUT -d, -f2`
if [[ $out2 = "" ]]; then
out2=" "
fi
out3=`$GREP "^${loop}," $F3 | $HEAD -1 | $CUT -d, -f2`
if [[ $out3 = "" ]]; then
out3=" "
fi
out4=`$GREP "^${loop}," $F4 | $HEAD -1 | $CUT -d, -f2`
if [[ $out4 = "" ]]; then
out4=" "
fi
$ECHO "${out1},${out2},${out3},${out4}" >> $F_OUT
loop_cnt="$(($loop_cnt+1))"
done

---
It works; however, since $F1 has 5456 lines, it reads each file once for each line in $F1, that's 21825 opens, scans and closes, plus 21824 appends to $F_OUT. It's worth noting that not all UNIX systems/shells will allow a $WORDS to be that big.

It took the linux VM with SAN drives almost 10 minutes and pegged the CPU the whole time. For a one-time thing, this would be fine (albeit ugly), but he needs to update every hour.

I didn't find this out until later, but for comparison, I copied all the files to an equivalent linux system with local drives. 24% CPU and done in just over 2 minutes. The high CPU overhead for storage access from a VM is kind of troubling. It does large file access fine, but lots of little requests seems hard on VM's.

For reference, I rewrote it in perl which runs in about a second. If also reads each input file once, loads them into arrays and then writes out the new file in once shot.

----

#!/usr/bin/perl -w

my $F1="big_file";
my $F2="linked_file";
my $F3="slg_file";
my $F4="ei_file";
my $F_OUT="new_master_file";

open (INPUT, "< $F1") or die "Can't open file $F1.\n";
@master_lines=<INPUT>;
close (INPUT) or die "Can't close $F1.\n";

open (INPUT, "< $F2") or die "Can't open file $F2.\n";
@linked_lines=<INPUT>;
close (INPUT) or die "Can't close $F2.\n";

open (INPUT, "< $F3") or die "Can't open file $F3.\n";
@slg_lines=<INPUT>;
close (INPUT) or die "Can't close $F3.\n";

open (INPUT, "< $F4") or die "Can't open file $F4.\n";
@ei_lines=<INPUT>;
close (INPUT) or die "Can't close $F4.\n";

my $loop=0;
my $last_tid="last_value";
@toolid = ();
@toolname = ();
@nodeid = ();
@scmid = ();
@toollinked = ();
@slgserver = ();
@espapplication = ();
%tid_hash = ();

foreach $line (@master_lines)
{
($toolid[$loop],$toolname[$loop],$nodeid[$loop],$scmid[$loop])=split (/,/,$line);
chomp ($scmid[$loop]);
$toollinked[$loop]=" ";
$slgserver[$loop]=" ";
$espapplication[$loop]=" ";
$tid_hash{$toolid[$loop]}=$loop;
if ($loop==0)
{
$loop++;
} else {
$last_loop=$loop-1;
if ($toolid[$loop] ne $toolid[$last_loop])
$loop++;
$last_tid=$toolid[$loop];
}
}
}

$this_toolid="";
$this_linked="";
foreach $line (@linked_lines)
{
($this_toolid,$this_linked)=split (/,/,$line);
chomp ($this_linked);
if (exists ($tid_hash{$this_toolid}))
{
$toollinked[$tid_hash{$this_toolid}]=$this_linked;
}
}

$this_toolid="";
$this_slgserver="";
foreach $line (@slg_lines)
{
($this_toolid,$this_slgserver)=split (/,/,$line);
chomp ($this_slgserver);
if (exists ($tid_hash{$this_toolid}))
{
$slgserver[$tid_hash{$this_toolid}]=$this_slgserver;
}
}

$this_toolid="";
$this_espapplication="";
foreach $line (@ei_lines)
{
($this_toolid,$this_espapplication)=split (/,/,$line);
chomp ($this_espapplication);
if (exists ($tid_hash{$this_toolid}))
{
$espapplication[$tid_hash{$this_toolid}]=$this_espapplication;
}
}

open (OUTPUT, "> $F_OUT") or die "Can't write to file $F_OUT.\n";
foreach $key (keys %tid_hash)
{
$loop=$tid_hash{$key};
print OUTPUT "$toolid[$loop],$toolname[$loop],$nodeid[$loop],$scmid[$loop],$toollinked[$loop],$slgserver[$loop],$espapplication[$loop]\n";
}
close (OUTPUT) or die "Can't write to $F_OUT.\n";

----
I stripped out the comments, but it's still a lot longer than the shell script. Programming historians will recognize the old-school blocking, but I find it easier to see where I forgot to close a block.

The interesting thing about this exercise is the indicated scale. One or two hundred indexes and the shell script would have just taken a second or two. It still would have tied up the CPU, but it would have been a blip. I tested with a subset of 50 and never noticed a delay. It would still be a kludge, but it would have saved me from having to dust off my books to remember how to manipulate arrays and hashes in perl ... it's been years.

And a truly large flat file would have obviously demanded a smarter solution. I was surprised at how big an impact merging a 5400 line file with three others with a few hundred lines each had on an otherwise zippy little system.

Labels:

Wednesday, April 8, 2009

Tiny Gems of Aikido Wisdom



I may never know enough about Aikido to give real advice, but this kind of smart-assery is right up my alley.

Don't break your uke. You should get years of wear out of a good uke.

When taking ukemi, always follow the direction your head is moving. Doing otherwise never works out.

The higher kyu tests will always be scheduled for the hottest day of the year.

On those hot days, the thoughtful nage with pin her uke in front of the fan. The smart uke will take his time tapping out.

New aikidoka can sense any sore joints or bruises which are activated during waza automatically countering your ukemi attempts to avoid this. This sense fades with training.

You lose one rank worth of skill when visiting another dojo due to differences in how techniques are practiced. Two if the dojo visited is affiliated with a different national organization.

As you progress in ranks, you will gain new Aikido skills and techniques -- one of the most useful in your day-to-day life will be repairing quarter-sized holes in drywall.

Also gained as you study is knowledge -- most will be Japanese terms for the dojo, but some will be useful elsewhere. In particular, medical terminology like "rotator cuff injury."

Aikido will teach you new communication tools like how to answer the question "What is Aikido" a dozen different ways. Unfortunately, none will give the listener a clue.

Labels:

Tuesday, April 7, 2009

Kit Planes (Experimental)


There is a sharp dichotomy between experimental and certified aircraft. With a certified airplane, you have consistent construction techiniques and standards. Planes built from kits run a spectrum from more precise and detailed than factory built planes to sloppy surface joins and uneven surfaces.

The FAA requires kit planes to have "EXPERIMENTAL" prominently displayed and other regulations which slight these machines and tend to make the public wary. On the other hand, the FAA is more hands-off allowing equipment, particularly avionics, which is newer and less expensive not requiring TSO. If you build the plane yourself, the FAA says you're qualified to do the annual inspections yourself, but even if you didn't, any A&P can do the annual for you -- you don't need to go to a IA.

These aircraft also act as a kind of safety valve to let off steam for the flying community. It lets people try out new materials, technology and designs and skips the certification step which is prohibitively expensive for all but the biggest manufacturers.

Above is a Velocity XL-RG, which incorporates a lot of recent improvements. It has a composite (mostly fiberglass) body, a rear 'pusher' prop, and canard winglets instead of a tail.

The composite body is a lot more slippery and produces less drag. The Ravin (below) is very close to a duplicate of a discontinued certified aircraft (the Piper Comanche); however, replacing the metal skin with all those rivets for a composite structure resulted in huge gains in lift and speed. The first commercial passenger aircraft are starting to be made with composite instead of aluminum bodies.

The pusher prop gives the lifting surfaces of the wings smoother air to work with. It's an interesting concept which isn't very popular yet because, I think, of the radical balancing changes needed to put that heavy engine in the back of the plane.

Finally, the canards replace a tail -- a tail pushes down on the back of the plane partially negating lift from the wings. A canard instead lifts the front of the plane adding to the lift from the wings. Flying too slow on either will cause the nose to drop and hopefully an increase in airspeed recovering from the stall. The cost in complexity to losing the tail is that the rudder needs to be split into two and run to the tip of each wing -- not a huge problem, but another point of failure in control surfaces is never a good thing.


The fairly new Ravin below is almost identical to the old Piper Comanche with a composite body and some of the after-market improvements built-in -- particularly the wing-roots and retracted landing gear produce less drag. It has the same Marine flat-top look and the only way to tell them apart from a distance is that the door is on the left side instead of the right.

N654RA, 2005 Ravin Aircraft Usa RAVIN 500, Ravin 500
Flying it reveals more changes. It cruises at 40mph faster than the Comanche and has 160g fuel capacity (two tanks in each wing) giving it absurdly long legs -- 2000nm. Of course, shorter hops with less fuel means you can haul more passengers/cargo.


Van's RV series of planes is wildly popular. It's a metal 'spam-can' with no significant changes from traditional single engine aircraft like a Piper or Cessna -- from a distance, you might guess it to be a Grumman Tiger or Cheetah.
http://www.vansaircraft.com/images/7a/rv-7a_50_web.jpg
The differences are less obvious. First, they fly faster and farther with a similar engine, and second is the price.

The affordability of kit planes (even if someone else builds it) is not immediately apparent. They are, for the most part, newer planes. Glancing at trade-a-plane's listings for Tigers, I can find one for under $40k -- from 1979. For a 2005 Tiger, the price is $129k. For Van's RV's VFR bird from 2003 the price is under $50k with prices going up depending on the avionics installed.

One of the hidden costs for a kit plane is insurance. A neighbor and pilot has a couple experimental planes which he just can't afford to insure. He told me that for what they want for insurance, he could buy another plane every two years. He does primarily use them for acrobatics, which is likely a factor :)

The fact is that the aviation industry is very safety conscious and conservative. Canards have been around since Rutan's designs in the 70's -- and technically the Wright brothers original plane was a canard bi-plane design.

For really weird, I invite you to check out the Custer Channel Wing. It looks like a pusher, and is to some degree, but the important part of the design is rather that it pulls air over the wing channels to produce lift. Weird looking, but apparently it worked.

Top is a pic from the Mid-Atlantic Air Museum where the 5 person prototype is being restored. Just below that is a shot of an earlier model tethered to a pole and levitating from the lift produced by air being pulled over the wing instead of airspeed of the craft.

Somehow, after over 60 years years, it's still a contentious topic. As near as I can tell, it looks like the numbers Willard Custer was showing to people were literally unbelievable and his disdain for the engineers who questioned him didn't help. This coupled with financial issues culminating with a stock sale which was evidently not according to the rules for the stock exchange doomed the fledgling company.

There are some drawings about how this concept might be used for a single engine aircraft, but it seems like it relies on a twin engine design, which is also a hard sell for a first time design. Still, it looks pretty cool. I'd love to see one fly.

Labels:

Monday, April 6, 2009

My tricks for cleaning infections on XP

It's a good time to mention that one of my plans for this blog is to shoot for a middle ground. I'm not planning on describing computer topics for the basic user or the guru, but for folks who are fairly adept. Similarly, the flight topics assume that the reader either is a pilot, studying to be one, or maybe plays a lot of flight simulators.

The first thing which isn't immediately obvious about Windows even if you work with it a lot is that "System" is a authority level which is above "Administrator". "Administrator" is a little confusing since it is a default username as well as an authority level for users along with "Limited". The important bit is that a program or service running as "System" can override orders from Administrator.

Malware running as admin can promote itself to system, but scanning programs just run as the user that invoked them. As a security measure, the whole system authority isn't real hot.


PsExec by Mark Russinovich is described as a remote execution tool, and it does have many nifty features, but the cool part for us is that it lets you elevate your malware scanner to run as "System"

Personally, I have had the best luck with Spybot Search & Destroy. The batch file command I use to elevate and run Spybot S&D is simply:

C:\tekmoose\systernals\psexec\psexec -s -i "C:\Program Files\Spybot - Search & Destroy\SpybotSD.exe"

The first part is the full path to the psexec executable. Your path will probably differ.
[I have a whole suite of utilities I just copy into "C:\tekmoose" on every PC I work on -- it saves time if I find later I need this or that tool.]

-s runs command as "System"

-i runs interactively -- overwise you can't see it or tell it what to do

And then finish with the full path to your malware scanner - quoted because of the spaces.

If you want to make it easier on the scanner, after you get it started, start the task manager and start killing extraneous processes. You can even kill windows explorer and the scanner will keep on chugging without being distracted by malware that wraps itself around explorer.

Other problems I've used psexec to overcome include:
A] Service Pack failing to install because of locked files
C:\tekmoose\systernals\psexec\psexec -s -i c:\tekmoose\xpsp2.exe
B] Locked out of task manager
c:\tekmoose\systernals\PsExec\psexec -s -i taskmgr.exe
C] Cannot save the needed change in regedit
c:\tekmoose\systernals\PsExec\psexec -s -i regedit.exe

The newest version of PsExec claims to work on Vista, but I haven't tried it. The older versions did not.

Labels:

Friday, April 3, 2009

There's always one more detail

This happened over a year ago, but it's a good story. And, this blog is about flying, computers and Things They Don't Tell You.

I was getting ready for my night cross country flight as one of the qualifications for Private Pilot. I'd done a fair amount of dual instruction time flying after dark -- especially in the Winter when I leave straight from work and it's dark by the time I get to the airport and fully dark by the end of pre-flight.

The night x-country is with an instructor, but I knew that he was there to quiz me and evaluate me, not to lead me by the hand. He chose an airport I'd never visited before, but I chose the route and did my homework -- knowing the terrain and obstacles, knowing the radio frequencies, lighting, approach patterns and dimensions of the airport, and making sure I had a flash light, a backup flash light and even a glow stick.

At night you rarely have to worry about turbulence unless there is a front moving since the sun isn't creating any updrafts, but of course, you can't see all the visual cues you can in daylight. I thought I'd be clever and wait for as close to the full moon as I could get with light winds and clear skies.

Flying at night with a full moon overhead isn't like daylight, but it's still pretty good visibility when your night vision kicks in. I flew down from my homebase at FSO to BTV to pickup my instructor and go over my plans with him. I give good flight plan, so that wasn't an issue, but BTV being a Class C International airport as well as an Air National Guard base has a lot of lights. I knew it was going to be a few minutes before my vision adjusted.

After take off and leaving controlled airspace, it was still dark. But by this time, I was demonstrating how I could follow the highway below, the VOR stations and my Garmin GPS (296) to stay on course and find the gap in the mountains that leads to Rutland. Rutland airport is more or less surrounded on three sides by hills and mountainsides -- which were effectively invisible at night. There were a few cell and radio towers with beacons that I could see and steer clear of, but mostly it was a matter on lining up with the runway on the open end and then offsetting just enough to fly the pattern and trust that a mountain hadn't been snuck into the pattern when no one was looking.

The one part of my flight plan that the instructor changed was getting more fuel before we left BTV. Since I knew the FBO was open late at BTV, I knew I could get fuel there about anytime I would be flying, and my dinky home airport has a self-service pump for avgas usable 24x7, I just assumed that I could get some more fuel and stretch my legs at Rutland, but not true. You can get avgas most anytime at small and big airports, but Rutland is in between and they just close up after business hours and there's no way to get fuel. On the plus side, while waiting for the fuel truck at BTV, we saw a pair of F16's take off with full afterburners at night, which is even cooler in person than in the pictures. Those concentric cones you see in the phots are really there and are just these bright blue standing waves that don't move so much as throb with power.

So, we just stopped at Rutland long enough to review the trip down and change out the prep paperwork on my clipboards and flew back to BTV. Because of the winds, we took off straight and over flat Rutland suburbs -- no hills to worry about. The flight back was easy even with the GPS turned off. The only issue came when we got into BTV airspace. I mentioned the lights before ... it was like a sea of lights. There were just too many, all different colors and I just couldn't pick out the smaller runway Approach assigned me.

I really missed my 296. The Garmin aviation GPS units will, when zoomed in enough, display runway centerline extensions which lets you line up even when you don't have the runway in sight, or in this case, identified. Later I found out that the Tower can brighten the runways lights if you know to ask them. The instructor helped get me oriented and we landed, I dropped him off and left again to get back to FSO, tie down the plane and eventually get home and to bed.

I followed the GPS home to FSO and clicked the mic seven times to activate the runway lights. I flew a normal three-sided pattern which is great for getting a better feel for your height and distance from the field, and especially useful in rural areas like this to make sure there weren't deer loitering on the runway.

I landed fine and was tying down my plane in the dark, dark apron when the moon rose.

I'd done all my flight planning and chosen a clear night with a full moon, but forgot to look up when the moon was rising.

Labels:

Thursday, April 2, 2009

Why my new laptop has 3GB of RAM

So, I got a new laptop (Acer 5630). The old one gradually accumulated more and more little issues, but the final straw is that both the Wifi and the Ethernet flake out (in different ways) after it's been up for a while.

Some of the reasons for choosing Acer was that there is a good bang/buck ratio and that Acer supplies XP drivers so I can 'downgrade' from Vista to XP which is fantastically quick and runs all the programs I'm used to.

With XP and 3GB or RAM from the factory, I'm not really hurting, but since I use a Virtual image of the laptop the company gave me for remote access (rather than lugging a laptop with me each way everyday) extra memory would be nice.

It gets kinda hairy, but essentially a 32bit OS (there are 64bit versions of XP and Vista, but they're rare) has a maximum numeric limit of bytes it can address/find/talk-to. 2^32 = 4,294,967,296 bytes, but that is not how much RAM Windows can use, once you subtract video RAM (even if it's on the video card, the OS still has to address it) and memory for PCI devices and such, you can pretty much figure on about 3GB as the max RAM that will actually get used.

Think of it like this: your medical computer scan form asks you for your street address and only gives you four boxes for your street number. Most people have street numbers that will fit in there and towns often restart the numbers at the town border, but with urban sprawl, there are more people with addresses like 11635 N Main St.

The 64bit OS's basically give your forms a lot more boxes. The numbers work out to 2^64 = 18,446,744,073,709,551,616 bytes. This is way more than the national debt, so we're talking a number way too big to visualize.

While there are a number of other reasons to dislike Vista, the big one is that I have a long list of programs I'm used to using on XP and many don't work with Vista. The transition from Vista to Xp is like an alloying speedbump compared to moving from 32bit to 64bit -- moving to 64bit is less like a speedbump and more like a muddy uphill track that requires a 4x4.

I said that 64bit gives you more boxes, but it would be more accurate to say that you still have four boxes, but more things can go into each box. Instead of just having 0-9, it can now have 0-9 AND A-J. So when the 32bit OS tells a program where to find data, it's going to tell it the equivalent of 3205 Main Memory Rd. -- when the same program asks for a data address from a 64bit OS, it could get an address like 01GH Main Memory Rd. If the program isn't expecting 64bit addresses, it will usually gibber briefly and lose it's mind.

The hardware on my laptop limits things too. It only has the standard two memory slots and they max out at 2GB modules. If they release a firmware upgrade that lets them use 4GB or larger modules, I may be tempted to crank up the RAM and put on 64bit linux -- I could use VMware Server to run a virtual copy of my current 32bit windows and start my uphill climb to living in 64bit land.

Still, I like my new laptop :)

Labels: