Mar 172013
 

I picked up an HP t5740e thin client off eBay, as I had deployed some at a prior job.  Window Embedded Standard 7 (32-bit), with 2GB RAM and 4GB flash.  Set it up the way I want it, re-enable the write filter, and Bob’s your uncle.   But the default HP build includes components that take up a lot of space, and I have no need for them — namely, the text-to-speech components, the natural language components, and the SAT performance tests (sample movies).

While logged in as Administrator, with the write filter disabled:

dism /online /Get-Packages

You’ll get a list of all packages installed in the running image. Find the ones you want to delete. Then delete them. Reboot.

dism /online /Get-Packages

dism /online /Get-PackageInfo /packagename:WinEmb-Natural-Language~31bf3856ad364e35~x86~~6.1.7601.17514

dism /online /Remove-Package /PackageName:WinEmb-Accessibility~31bf3856ad364e35~x86~~6.1.7601.17514
dism /online /Remove-Package /PackageName:WinEmb-Natural-Language~31bf3856ad364e35~x86~~6.1.7601.17514
dism /online /Remove-Package /PackageName:WinEmb-Speech-LP-ENU~31bf3856ad364e35~x86~~6.1.7600.16385
dism /online /Remove-Package /PackageName:WinEmb-Speech~31bf3856ad364e35~x86~~6.1.7601.17514
dism /online /Remove-Package /PackageName:WinEmb-Diagnostics-Performance~31bf3856ad364e35~x86~~6.1.7601.17514
Aug 142012
 

Went to extract email addresses from different Outlook .pst’s and other exported files to import into LinkedIn.  Any email client will export to text files.

To extract email addresses from Outlook, try this Visual Basic script.  That’s not just a Contacts export; it extracts Sender addresses from email messages.

Throw everything into one file.  Then extract email addresses, as:

$ egrep -io '[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]+' < input.txt | tr "[:upper:]" "[:lower:]" | sort -u >output.txt
May 072012
 

What perverse incentives exist to prevent Sun/Oracle from streamlining Java installations on Windows?  They have FAQ items that have been unresolved for years.  Don’t tell me you can’t reproduce them; I can.  You’d think that routine professional curiosity would impel them to troubleshoot a live customer issue.  Sheer laziness.

I had a workstation today that would not install the 6.0_update32 JRE, getting the error “error 2753 regutils.dll”.

Sun/Oracle’s ‘troubleshooting’ is worthless.  Nobody else’s was any help, either, though.  JavaRa gave it a good try. (Seriously, you just have a comprehensive list of registry keys and files/directories to delete.  That’s all.)

So, fire up procmon, include “msiexec.exe” and see what pops up….

Simple enough.  The installer thinks there’s another conflicting existing installation:

Delete the registry key (and subkeys):

HKEY_CLASSES_ROOT\Installer\Products\4EA42A62D9304AC4784BF238120632FF

Grand.

So, why can’t Sun/Oracle release a utility to clean up all traces of Java?  Laziness, pure and simple.  This has been a pain for admins for years.  Fix your installer.

cf the .NET Framework Cleanup Tool

The SAP Elf

 Main  Comments Off
Apr 132012
 

I laugh every time I see this screen in SAP …

… because I know what the girl on the right is thinking …

For posterity, here’s an edited picture that doesn’t make the girl on the left have pointy ears.

There went my lunch hour.

Mar 112012
 

DISCLAIMER – I DON’T DO C. And my Perl isn’t great, either.

I routinely browse the openbsd-cvs mailing list, and I saw this easy openbsd-cvs bug fix (“Fix a stupid bug in tcpdump print-bgp.c“) the other night when doing some really late-night, partial-involvement sysadmin work.  So I decided to pass the time (“stay awake”) by doing a regex exercise to find similar patterns in the OpenBSD source tree.

Continue reading »

John and Lillian

 Main  Comments Off
Mar 082012
 

Out of high school, I worked in a nursing home, in the diatetic department [which means "kitchen"].  I washed dishes and set up the tables for the residents.

Lillian was an old woman.  She had liver spots the size of quarters.  She had Coke-bottle glasses [Literally.  They were thick.].  She was diabetic and had one leg amputated above her knee, and she was, of course, in a wheelchair.  She was a very sweet woman, but her faculties had left her, for the most part, and she wasn’t too keen about what was going on.

Her husband John was an old, overall-wearing farmer, and he came in every day before lunch.  He’d wait while the nurses assistants got Lillian ready for lunch, sitting out by Lillian’s table.  He’d help her eat lunch, and then he’d spend the day with her.  She’d nap, or watch the kids come in for piano recitals, or play Bingo, or get her fingernails done, or roll her wheelchair around, or nap, or just watch Lawrence Welk, or just spend the afternoon doing nothing.

John helped Lillian eat supper, and when the nurses assistants came to take her to bed, John took his van and went home.

Every day.

One day, John was sitting out at the lunch table, waiting for the assistants to bring Lillian out, and one of the other women, Lenora, asked John, “John, you know she would never know if you didn’t come.  You have so many other things you could be doing.  Why on earth do you come here every day?”

And John said, “Because I said, ‘For better, or for worse.’  And I meant it.”

Well, Kristi, I said for better or for worse, and I meant it.  Happy 15th anniversary.  We’ll see who’s pushing who around the nursing home, later…..

 

Mar 032012
 

I was on a conference call last week, and there was a terrible echo.  It was oddly distracting and made it difficult for me to speak.  I was going to mention it to the other parties, but it sounded more like a cranky irritability than anything, and I was kind of embarassed to say anything.

Well, two days later, Drudge linked to “Japan invents speech-jamming gun that silences people mid-sentence“.

“The device works by recording its target’s speech then firing their words back at them with a 0.2-second delay, which affects the brain’s cognitive processes and causes speakers to stutter before silencing them completely.”

So I’m not some weirdo who gets distracted by echoes.  It’s science. I feel better.  (Unless it doesn’t actually work, of course.)

Now, wouldn’t it be funny to have some iPhone/Android/whatever malware that did the same thing, rendering people unable to speak into their own phones?  They could speak as long as they’re not listening, too, turning the phone into a walkie-talkie.

That’s as funny as my relative when 3-way calling first came out.  He’d call a Chinese restaurant and a Vietnamese restaurant at the same time and let them fight over who called who.  “You call me! I no call you!”

Catching Flies With Alice

 Main  Comments Off
Sep 192011
 

Back in the day, I worked in Alzheimer’s units in nursing homes.  My favorite patient — or ‘resident’ — was Alice, who couldn’t remember my name, though she recognized me and was very friendly.  Her medication had her manic, and she was forever walking restlessly.  She once had a cut on her knee, and she got in and out of bed so frequently that I could count the blood polka dots on the edge of the bed.

The Alzheimer’s unit had 8′ drop ceilings, and there were usually flies on the ceiling [classy joint].  So, I’d fill up a cup with water and add a little detergent.  Alice and I would walk up and down the long main hall, and when I saw a fly on the ceiling I’d lift the cup up slowly under the fly, and the fly would drop into the cup, get trapped by the detergent, and squirm to death.  I’d hold the cup down for Alice to watch, and she got a kick out of it.  We spent hours walking up and down that hall, holding hands and catching flies [the other residents decided to sleep].  It was the easiest way to keep her calm.

This weekend, my sleeping schedule got screwed up, and at midnight I ended up grabbing a book of the shelf for a good re-read.  The book is “God Bless You, Mr. Rosewater,” by Kurt Vonnegut Jr., of course, and I hadn’t read it since high school.  Plugging along, I got to page 78:

“The tumbler-and-soapsuds techniqe worked like this:  A woman would look for a fly hanging upside down.  She would then bring her tumbler of suds directly under the fly very slowly, taking advantage of the fact that an upside-down fly, when approached by danger, will drop striaght down two inches or more, in a free fall, before using his wings.  Ideally, the fly would not sense danger until it was directly below him, and he would obligingly drop into the suds to be caught, to work his way down through the bubbles, to drown.”

“Of this technique Eliot often said: ‘Nobody believes it until she tries it.  Once she finds out it works, she never wants to quit.’”

So that’s where I picked that up!  What an unexpected surprise!  Nostalgia …. catching flies with Alice……

Alice’s doctor played around with her medication, and there was about a two week period where Alice was lucid and could remember my name.  “Alice, do you know my name?”  “Jason,” and she’d smile like she was a six-year-old who just got a new bicycle.  Then she went downhill and ended up in the hospital.  I went to visit her every day, but she was near death and couldn’t even open her eyes.  The nurses put a respirator mask over her mouth, to keep out the flies.  She died pretty shortly after entering the hospital.

How strange that as I approach 40, one of my fondest memories is the hours spent with a 70-year-old woman with dementia, who couldn’t remember my name, walking up and down the hall, holding hands, catching flies in a cup of dishwater…..

 

Aug 222011
 

On UNIX, it’s simple to delete matching files in a directory, over a certain age (e.g., all .txt files over 2 days old):

find /some/directory -type f -ctime +2 -name \*.txt -exec rm -f '{}' \;

On Windows, it’s ridiculously complicated.  Here’s a PowerShell script, modified from somewhere….:

$a = Get-ChildItem 'C:\Temp\subdir\*' -include *.txt
if ($a.count -gt 1) {
    foreach($x in $a) {
        $y = ((Get-Date) - $x.CreationTime).Days
        if ($y -gt 7 -and $x.PsISContainer -ne $True) {
            #$x.Delete()  #uncomment here to delete
            Write-Host $x
        }
    }
}

 

Miscellany

 Main  Comments Off
Aug 192011
 

1) Rather odd to see a sickle and hammer on a Microsoft employee’s contact info:

 

 

 

2) When I see an ad for 5hourenergydrink.com, I think of RFC 1123 (http://www.faqs.org/rfcs/rfc1123.html).  Does that make me some sort of geek?

“The syntax of a legal Internet host name was specified in RFC-952 [DNS:4].  One aspect of host name syntax is hereby changed: the restriction on the first character is relaxed to allow either a       letter or a digit.  Host software MUST support this more liberal syntax.”  And 3com rejoiced.

3) In tuxedo pants, there’s a hole in the top of the pockets so you can pull down your shirt to unwrinkle it.  Why don’t they have those in other pants/jeans?  It’s mighty convenient.

4) You never see Frequently Unasked Questions.

 

 

DNS Load Balancing

 Main  Comments Off
Jul 032011
 

A “Poor Man’s Load Balancer” is just publishing multiple DNS records for the same resource. However, it doesn’t really work, and it certainly doesn’t work the way novices expect it to. The publishing DNS server can give them in any order, or it may give them in a specific order, or it might give different result sets to different clients, or any intervening caching server my truncate or reorder results, or your client OS may want to sort result sets its own way, or your application may cache and sort its own results. Different resolver libraries handle results differently, and you can get different results by which function your application calls (getaddrinfo? gethostbyname? IPv4 or IPv6?).

Relevant links

May 082011
 

File:  squid.zip

Miscellany.  Overview diagram in Visio and PNG.  adzapper postmatch.  squid examples to redirect based on source IP.  squid tee.  Wiki squid/adzapper template.  Wiki template for Java client config file (you’d be surprised how many people don’t know about it…).