Category Archives: Science/Tech Stuff

Inside baseball, Linux edition

I love the title of this article: “
¿Por qué SystemD es una mierda?

Too tired tonight to read the whole thing in Spanish — I’ll feel dumb if the implications of the title aren’t their point — but wanted to share somewhere. Disabling the FB/Twitter publicize for this one for obvious reasons if you can follow the literal translation.

A fascinating article on evolution.

On the PLOS blog (found via Medium) there was a really interesting post discussing the intersection of environmental conditions and genetics, and their impact on human evolution. The title may be either off-putting or funny to some, but it’s worth a read both on general interest or to those who have a particular interest in either human evolution or environmental science. Other than using the clinical term for the male genitalia, totally safe for work:

Plastics, tiny penises, and human evolution

An Italian study in 2012 found that men’s penises were growing smaller over time — two centimetres lost from grandfather to grandson in the twentieth century. Conservative radio bloviator Rush Limbaugh knew who to blame: ‘feminazis, the chickification, and everything else’ linked to feminism. Other commentators, a bit more scientific, pointed the finger at endocrine disrupting chemicals, such as pesticides and hormones fed to cattle, as likely culprits.
To anticipate how xenoestrogens or any other synthetic chemical that influences fertility might affect human evolution, it helps to consider niche construction theory.

It goes on from there. Go read it.

Fun with Gentoo

Nightly auto-upgrades are great, except when they aren’t. In this case, going from app-misc/screen-4.0.3-r7 to app-misc/screen-4.2.1-r2 changed the default SCREENDIR from /run/screen to /tmp/screen. Normally wouldn’t care, but I had running screen sessions and couldn’t get in; oops!

Only realized about the SCREENDIR variable after I’d already downgraded back to 4.0.3-r7.

What I was doing at age 18

I recently realized that a very important aspect of what I have done for the past year in my day job is echoing how I got started in my career. That is, I spent a bunch of time last year and this year justifying a large technical project — in writing for a less-technical audience — and then working with other people to get it organized and deployed. I’ve also recently in my work gone back to that project — documenting the project so that other folks could finish it, and a non-IT PM could manage it — so that I can get back to programming.

Realizing that, it inspired me to see if I still had the documents I’d written for that original project. It turns out, I did — both the original proposal, and a mid-year budget for the actual ordering once we got the project approved.

So, what was this project? Getting my high school computer lab on a LAN, and on the internet — the latter isn’t mentioned in the original proposal, so I guess it was scope creep, but it was awesome. The project lead to my first full-time summer job and my first full-time job when I took my break from Dartmouth (both doing Novell server admin work plus some desktop support) and I’m pretty sure the project itself — still underway — made a difference in my college applications.

A PDF reconstructing the original documents is here: Networking Computer Resources for Hunter College High School: A Modest Proposal Below the break, reminiscences and a text version of the document itself.

Continue reading What I was doing at age 18

Parts from my old (failed) attempt to build a small computer


Finally inventoried the parts after years in storage. Lot of chips, though nothing that rare or interesting. Somewhere I have the schematics I designed. Will scan them when I find them. I doubt it really would have worked, and I never got an EPROM programmer working. Very tempted to try to figure out how to reuse some of this building something like N8VEM.

List below the fold. Continue reading Parts from my old (failed) attempt to build a small computer

A quick bit of FFMPEG magic to improve VHS rips

fmpeg -i Old_VHS_copy.avi -threads 0 -aspect 4:3 -vf "pp=ac/lb/ha/va/dr/al,frei0r=brightness:0.625,frei0r=contrast0r:1.05,frei0r=saturat0r:0.10,hqdn3d=4:4:7,scale=480:-1,unsharp" -codec:a libfaac -b:a 64k -codec:v libx264 -profile:v high444 -preset:v placebo Much_Better.mkv

Found the frei0r contrast/brightness/saturation controls MUCH better than the MP2 ones.

Amount of de-noise (before downsize) and sharpening (after) is to taste, obviously, as is the amount of brightness/contrast improvement. This source was AWFUL!

The coolest way yet to “clean” a hard drive

We finally decided that the only sure way to thwart data recovery was to melt down all the aluminum contained in the platters. Slagging the drive would have two effects on the medium. First off it would convert it from a readable disk to any shape we decided to pour it into. Secondly it would nullify the magnetic properties of the coated aluminum.

via Slashdot comments.

Manually cleaning an Intel (or other TRIM-able) SSD with hdparm

Figured this might be a useful snippet of perl for other folks. When I rebuild my system last Nov, I wiped the drive with the following:
my $a = 0;
while ($a < 312581808) { my $b = 60000; if (($a + 60000) >= 312581808) { $b = ($a % 60000) - 1; }
print "\n$a: ";
`hdparm --trim-sector-ranges $a:$b --please-destroy-my-drive /dev/sdh`;
$a = $a + 60000;

To use, mount your SSD on another system (or use a system rescue CD or LiveCD with a new enough version of hdparm) and replace “312581808” with your actual number of sectors (check with fdisk -l or similar) and /dev/sdh with your actual drive.

The tricky parts were:
(1) Figuring out the syntax, although I suspect that it’s better documented now.
(2) Figuring out the 60,000 sector limit (actually 64k/65,536? Dunno. 60,000 exactly worked.) I’m not sure if this is an hdparm limit or an Intel X25M limit.

Manually installing JDKs on Gentoo

In case it’s useful for anyone else, if you run the ___.bin installer and see this:

bin/java -version
Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/Object

Check if rt.jar exists in the unpacked directory. If it does not, check if rt.pack exists. If it does, it means that the installer is missing a step.

Rerunning with the command-line options:

"____.bin --accept-license --unpack"

…will fix what ails you by making it unpack those files. If you no longer have the installer, google indicates that there is a program out there called “unpack200” to unpack the .pack files to .jar, but I have not had a chance to try it.