Category Archives: Technology

1 Super Rare Sign That Proves You Are Meant to Lead People (But It May Cause a Gag Reflex for Most) |

Not sure how well this works, but it sure is not intuitive for anyone who’s been in business for more than a couple of years.

I have not worked for a “kind” company, since leaving KAI in 1994. They were a tiny company where you knew everyone, and had a personal relationship with everyone in the company, boss, subordinate, or peer. The ability to relate to others mattered, and affected progress. When I announced my departure, the president told me he really thought I would be one of the “last to leave”. That struck a chord with me, because it sounded to me like he thought that company would go under eventually.

Where I work now, I’ve spoken to my department head a grand total of 4 times. One phone interview, one face-to-face interview, one post-hire visit (3 months later), and one phone call attempt to calm my fears about the uncertainty of the future, where he instructed me to apply for the full time position they will hire for next month. I don’t feel like I have an effective communication channel to management, to provide any feedback at all.

I’ve begun applying for other jobs, which I probably should have started last month. Even though I was hired on a “six month try before you buy” contract, they will be terminating anyone they don’t want to keep in November, before my 6 month contract ends. I’m not even really sure what a six month contract means anymore.

Even if I had any legal way to guarantee my income for the last month of my 6 month contract, they haven’t been “kind” in any way they dealt with any of us contractors competing for the last three full-time positions they announced in September. They deliberately choose NOT tell us which of us they were going to keep, and after four weeks, they appear to be being blindsided because most of the contractors have accepted positions elsewhere, and announced they are leaving. Because of their lousy management skills, there are more people leaving than there are positions to fill now.

What a incredibly stupid move NOT announcing hiring decisions ASAP turned out to be. For two months, we have had to work with lame ducks who are unmotivated, and are only still there because they want the severance pay they get if they hang out until the end. This does not improve anyone’s employee moral. Even if I really am eventually offered one of the few full-time positions left, as I’ve been verbally promised, we’ll still be short-handled on third shift, for the near future.

How do I honestly tell the next guy we hire he can rely on having a job when his/her six month contract ends? When I applied for this position, the contracting firm told me it was a “good company” that hired most contractors. I no longer believe think that was true, then, or now. A good company doesn’t outsource their entire IT department to an Indian contracting firm, and, at the same time, ask you to stick around, just in case that deal doesn’t work out. That sounds like an awful spot to be stuck in. If the Indian company works out (which I have heard it generally never does), we’re liekly out of a job in a year or two anyway, and if it doesn’t, we’re left to pick up the pieces with far fewer talented IT people who understand how anything works. Ugh.

If you think this practice is reserved for weak leaders, nothing could be further from the truth.

Source: 1 Super Rare Sign That Proves You Are Meant to Lead People (But It May Cause a Gag Reflex for Most) |

Virtualbox problem

I could not start up VirtualBox software on my Ubuntu laptop tonight. It displayed an error trying to load a share object file, and suggested reinstalling as a potential solution. So I did that. Deleted the software I had, and downloaded and installed a newer version. Same error.

Off to Google, and after a little poking around, I found someone who discovered the root of that error message. The owner of my laptop’s /usr filesystem was not root. That’s all. Apparently, VirtualBox won’t load modules from an untrusted filesystem, and it doesn’t trust anyone other than root to own the entire directory tree below VB’s module directory.

I found an unknown user 998 owned a bunch of system directories. I ran a find command to list all files owned by user 998, and the culprit became apparent. Yesterday, I installed the flash plugin for my Firefox browser, and did it by extracting files from a compressed tar archive, which I did as the superuser, but I forgot to include the –no-same-owner option, so tar happily set each file and directory to the same owner number as the folks to created the tar archive. Whoops.  Another find command that calls chown on all the affected directories and file, and the problem was resolved.

Sure would be nice if Virtualbox printed a more meaningful message, like “failed to load owner not trusted for path /usr”, but VB is owned by Oracle, and they give it away still, so I guess they are not in a hurry to make it any more user friendly.

WordPress Changes Needed

My blog runs on WordPress software, which is probably the most popular Blog software package in use.n That’s good, because bugs get found and fixed very quickly. That’s bad, because the comment spammers and hackers know all the ins and outs of the most popular blog software out there.

I currently allow people to sign up for an account on my blog, but access to commenting and posting is never granted until I manually approve your account request. That’s because the hackers and comment spammers have automated the process of requesting WordPress accounts, and I get a dozen or more new account requests each day, with a large number of them from people using email addresses ending in “.ru” (Russia). I check the list regularly, and delete the accounts from random people, and only approve the ones from people I know, or who have contacted me out-of-band.

What I’d REALLY like to see, is the Sign up function check a list I setup of email domains to block. I don’t know anyone in Russia, China, or Taiwan, and I really doubt I’ll ever want to grant access to anyone from those countries. If I only ever had to deal with American and European comment spammers, that’d be half the battle right there.

I’d love to be able to see some kind of an Akismet anti-spam question, or Captcha challenge, as part of the signup process, to eliminate the weakest automated account requests.

The automated part could also be reduced if WordPress had a built-in method of confirming the requesters email address, and optionally, cell phone number, in an automated fashion. If you don’t copy the code my site emails you or text you, and enter into into the prompt, and your new account request gets silently deleted after a day. Less hassle for me.

Also, new subscribers shouldn’t be able to post more than one comment total, until their membership is confirmed.

More anti-spam controls, that’s what WordPress needs. Maybe I need to learn more about PHP, and start contributing my own idea to the WordPress project.

Appd’s response

Appdynamics got back to me over the weekend, about my report that their machine agent process was keeping hundreds of deleted app log files open on thousands of our cloud servers. They indicated their core daemon doesn’t ever open logfiles for other applications, that someone within our organization must have configured a plugin to scan those logs. I mentioned that to the powers that be, and was admonished for not working further with them, because the plugin in fact comes from them, and we’ve not changed our configuration in the past year ( I’m new, how would I know that?). Apparently all we did to trigger this problem was upgrade to a new version of Appd.

Now our IT dept needs to figure out whether to roll back to the previous version to avoid the current flood of disk full tickets we’re dealing with daily, or wait until Appdynamics isolates the cause and sends us a patch.

I’m satisfied the problem has been roughly isolated to this service, and that the problem is being addressed, so our unnecessary busywork will eventually be reduced. I probably closed 30 disk getting full tickets at work tonight where bouncing that daemon dropped disk utilization from 90-100% to 30-50% instantly.

Some of this problem can also be attributed to poor Unix System Architecture choices pertaining to filesystem layout and size. I came into this employer this year, and although I used to be a Unix System Architect, I’m not at this job. Here. different applications have different configurations of filesystems. Many VMs have additional disks beyond just the root partition, to store databases, applications, and related files, but plenty have gone the lazy route, and just created between 40 GB, up to 1 TB, root filesystems, with no additional application filesystems at all.

I learned decades ago that standardizing on a reasonable size root (eg 16 GB), a separate /var partition, and separate /opt partition for application installation, makes for far more stable systems. Nothing your application writes to constantly should be located in a system’s root filesystem.

Why have a single volatile 1 TB root filesystem that could corrupt the filesystem and crash the server when it becomes 100% full, when you could instead use a 16 GB root (/), 40 GB /var, and 1 TB /opt. If /opt fills up, only the local applications won’t be able to write logs. If /var fills up, some system logs won’t be written, and the system may stop working, but it shouldn’t corrupt the root fs, and crash the server. By separating /var and application filesystems from root (/), you tremendously reduce the number of writes occurring on the root filesystem, greatly reducing the risk of disk corruption leading to a crashed server. Bad things can happen to a UNIX/Linux server when root is full.

And if you need a 1 TB /opt (or whatever), don’t be so naive as to allocate a single 1 TB virtual disk in VMware. You’ll get far better system and I/O performance if you create 16 volumes of 64 GB each, and merge them into a single logical volume at the server level, using LVM or MD-RAID. The reason for the improvement, is that with a single volume, all I/O on that volume goes to a single UNIX device name, so all the I/O is handled one at a time. When you have a single LVM Volume Group with 16 Physical Volumes, the I/O will become spread out across all 16 device names, so you get up to 16 I/O operations occurring in parallel. This is also a common mistake Linux SAN users make too, because they often think the SAN will magically make I/O happen faster.It won’t. You need multiple SAN controllers, multipath and multiple volumes spread it out. It’s not a SAN limitation, it’s a fiber channel and UNIX limitation, and it’s not difficult to solve.

LVM makes future growth of your volumes so much easier too. If next year you realize you need an addition 512 GB, you can just add 8 more 64 GB volumes, and throw those volume into the LVM volume(s) you want. Oh, and don’t ever grow enormous disks slowly, one volume at a time. When you do that, all new files will end up being written to a single volume, limiting your system performance again. If you add 8 at a time, you’re back to winning I/O performance.