16 June, 2007

Strange output from ps(1)


alex 537 8.5 -25.0 549672 524864 ?? R 1:48PM 0:16.28 /usr/bin/perl -I/Applications/TextMate.app/Contents/SharedSupp
alex 509 0.4 -36.9 1042488 774576 ?? S 1:45PM 0:36.49 /usr/bin/perl -I/Applications/TextMate.app/Contents/SharedSupp



So this is actually kind of funny. Perl was dutifully creating objects, when all of a sudden, it runs out of memory. Oh noes, here comes the swap. So it alternated between using 100% cpu and swapping the shit out of my disk. Darwin, for those of you who do not know, allocates swap as it goes along. In this case, it was seven gigs. This is a laptop, and I have two gigs of ram, but I do not have endless quantities of disk from which to pull swap.

Anyhow, I think the fourth column is the most interesting in this example.

I remember when I worked at AOL, I had data structures that were too big to fit into memory, and I can't for the life of me remember how I got around the "2gb series" limit. If you serialize to disk, that's just as bad as swapping.

So I guess I'm just going to kind of sit on TDMA until I figure out how to get around the fact that you can't approach it a whole day at a time, and I don't know how I'd keep sync between new instantiations (the military use dedicated time boxes).

You can only fuck with a man so much.


I know what industry I work in, I know the schedules we work with, and what's at stake. I know all that. I really do. So when you tell me I need to work an eighty hour week so a Kidd destroyer is fully operational, I say, sure, I'll do that. It's work ethic, it's pride in what I do, and it's also the joy of learning new systems.

But when we reach the intersection of hurting my wife, and we cross that threshold with very clearly communicated anger about it, it's too far. She doesn't work for anything national security. She doesn't even want to, because she sees what it does to me: the nightmares, the late hours, etc.

It is unconscionable the things that are going on right now that are really hurting Sandy, and she signed up for none of this.

So, kick my ass, tell me to work harder, work longer hours, work on more and more dangerous and deadly shit, threat briefings and the whole nine yards.

But, you don't fuck with my wife. There's a man out there who will never have my respect due to the way he's treating her. He says it's all part of my job. No, actually, my job ends when I leave the office. I go home to my wife. I miss her. I miss my bed. I miss the Subaru. This whole thing disgusts me, and at the same time I'm trying to spin up on it and get comfortable. Irony. Send me home for a day, or for a week, and I will come back twice as effective.

What do you think I'll be thinking about this week?

14 June, 2007

CPUs not fast enough

If I take a time sample at the instantiation of the first object (a "day" in TDMA), and there are subsequently 11,059,200 sub-objects created, the fact it will take me more than 7 miliseconds to actually create the objects means that they will be inaccurate as created. Their own clocks will be right, but they will be "slow" compared to the battlespace whatever the users does with them. It could be very serious (I want that Su-37 to blow up that unknown target please) or very mundane ("Could you verify that's that asshole tuna boat who keeps entering our kill zone?"). But I'm starting to think that creating the objects for a TDMA day, I should start with the smallest units and work backwards. That would make "days" and possibly "epochs" out of sync, but they are much less important than frames, which contain data.

Thank you everyone who has mailed me about this project. I had no idea there was so much interest. Note that with small modifications TDMA could be multicast and it rapidly starts to look like bittorrent.

Please, if you're working on stuff like this, or you want to know more details, let me know. I am close to done. There will be a CPAN release in June. There, I've said it, and thusly it must happen. Extra points to the first guy to send me a USB radio that can talk on telco TDMA frequencies.

The future of education and credentials

I am now "taking" an MIT, graduate level course, on Aeronautics. It's twenty-two times two hour lectures. This is normally (40h) how long a class takes over a semester. I'm also starting again on math again, approximately where I left off in high school (I'm a dropout). The algebra, at least the high school stuff, I figure I'll come up on pretty quickly. From there I need to teach myself calculus, and then on to differential calculus (I may have the term wrong), and linear algebra. I'm expecting it to take a year or two (by the time I get back from Taipei). I also plan to be in school, in physical classes where I can (language will be an issue).

But what, then do I list for my having listened to forty hours of the aeronautics course? The forty more of linear algebra?

It seems to me that as more and more education moves online, the more skills are going to be important as compared to somebody's background.

Picture a mechanical engineer with a masters', quizzing me on aeronautics. If I pass muster, does it matter whether I'm an autodidact or at least can listen and learn?

12 June, 2007

Encryption versus Communication

I am finding it interesting to notice the difference between encryption and jam-proofing or making things harder to listen in on. Let us say that I have 1024 open channels (tcp ports for example), but only you and I know which order they will be used to communicate upon and how much data will be exchanged, how can you possibly know what I am saying if I add jitter and/or propagation (google's define: fails here. propagation is the tail end of a message. If I have 256 bits in a message, and the first 0-16 can be jitter, and the last 32-128 can be propagation – dead signal or misleading signal – detecting the payload between the propagation and the jitter is hard)?

So what I am writing right now (for release to CPAN actually, my 2nd module, whee) is a highly jam-resistant protocol (how do you decide which ports to block? blocking all 1024 amounts to a DOS, and I can always "notice" jamming and switch to higher ports or the signature of the communication), and can be a very high-bandwidth protocol as well. Normally, it's applied over radio waves, but if you run it across "the wire" so to speak I think my original estimate was about 40 gigabytes a day. This from a near-unblockable, near-un-listenable, crypto-pluggable protocol.

It would be a cinch to make the software so crypted that it was un-listenable even by the people who get paid to listen (their TLD's rhyme with "pill"). All you'd have to do is come up with reasonable jitter, propagation, and crypto. It would be untouchable, even with "over the counter" crypto or with tokens like RSA keys.

But, anyways, that's what I'm getting at. It's really interesting that I can write a protocol that can support jitter, frequency/port hopping, and crypto, but the crypto is its own separate component. That's all math. And if the math is broken, it's only a matter of time before your jittering propagating hopping protocol is cleartext to the red team.

The Yossarian take on HR


This photo was taken at a "beer bash" at an ISP. The man in question is in HR. What's he drinking? Bottled water. What's he looking for? People drinking too much so they can politely be told to behave. He's not your friend. Shit, he's almost a sort of HR-looking Agent Smith. You gotta love the glasses.

Anyone who's read Catch-22 by Joseph Heller (incidentally, a close friend of Kurt Vonnegut, Jr.'s) will recall the tale of Yossarian. I would like to analogize here, and inject from Yossarian the feeling of despondence and sheer hopelessness – our kitchen staff are bombing us here, and it's business as usual.

Human Resources is a good organization to have around. For example, they do a lot of the recruiting, which management doesn't want to do. They can answer questions about 401(k)'s. They can tell me which form I need to submit to my health carrier to get reimbursed for the out-of-network office visit I had. These are all very simple, pedestrian tasks (because even with recruiting, they're searching for keywords, screening out the felons, and providing management with a stack of resumes; porpoises could do this).

But, somewhere in the late 80's or maybe early 90's, HR grew into a policy organization too. It makes sense, because they need to be able to tell me that getting acupuncture with "full release" is not covered under our insurance.

Now, HR provides guidance on morals and ethics, career development, performance evaluation, and they build these enormously complex websites which are completely unnavigable. So people whose real majors were sociology or psych wind up making what they think are very good judgments based either other policies they've made, or on whatever moral or ethical sense they rely on. The problem is thus.

The whole system is broken.

The more questions you ask of HR, the more they start to think that you're not a "team player," because you obviously don't understand or don't like the rules that are in place. Or you might have the audacity to suggest that the policy be changed to allow something not presently allowed (like coverage of a domestic partner). So, more and more, you become the problem for doing exactly what HR asked you to do – use their processes to resolve requests, conflicts, or job-related issues (career development/performance review).

The telescopes on Haleakala which are run by MHPCC. These are not astronomical telescopes; their focal lengths are more in the neighborhood of 300 miles.

I'm going to provide a real example here of how this becomes a problem.

I was working for Microsoft, and had properly taken leave, applying months in advance, stating that I was going for my wedding anniversary (and also because I wanted to see the MHPCC). The hotel we were staying at, the Marriott Renaissance Wailea was undergoing renovations (so we got the waterfront room as a complimentary upgrade), but unfortunately due to the renovations had no internet access. Not wired, not wireless. I had brought on the trip my powerbook because we take so many pictures on vacation it requires "dumping" the CF card frequently (sometimes 3-4 times a day).

We had produced so many pictures of so many wondrous things that I went to an internet cafe and uploaded my photos to flickr. I'm not sure what inspired me to check my work email, but I did through Outlook Web Access. I had a reminder from my boss, Lance Horne, to turn in some document by COB the next day (A friday; Hawaii is six hours behind DC). I replied and told him I had it about 1/2 to 2/3 done, and that I'd get it to him when I got back. He insisted that it wasn't a valid excuse to miss a deadline simply because I was on vacation.

"But I didn't even bring a work laptop with me! I can't actually go and complete it!"

He told me that I must not be very serious about my career if I wasn't willing to do the work assigned to me.

So this is a manager-employee conflict. Who comes in? HR. What I did was call the woman I knew at HR, who had handled some health stuff for me previously, and said "can he make me work on vacation? I thought the rule was you didn't work on vacation because you're supposed to rest. I've been working like a dog, and accrued six weeks of vacation."

Her answer was murky. She said that no, paid vacation means I do not have to work, and he cannot "make" me work. What he can do is "ask" that I work, and if I do not thusly work that it will be counted negatively against me on my performance review.

She then immediately called Lance. Lance was livid to be receiving a call from HR telling him how to manage his employee. I then got another call from Lance that was roughly equivalent to (shaking fist) "why you little..."

What do we learn from this parable? That HR exists to create and follow its own policies, as well as provide them to others. We also learn that HR are sort of the "hall monitor" in a company (different than ops sec), and can tell your boss that you are right, they are wrong, and that they should change their behavior to more closely match company policy. But in so doing, you do nothing but irritate the supervisor, who then starts looking for a way to either get out of the HR "ruling," or simply firing you.

By the time I got back from Maui, Lance and I had so poisoned our relationship that there was absolutely no way we could work together. All this because I followed HR policy, and then asked HR for "backup" when my boss was unaware of (or didn't care about) the same policies.

11 June, 2007

iTunes U

iTunes U is a new product from Apple, offering what Harvard and MIT have already been offering. The notion is that the video lectures they get (or audio lectures) during the course of presenting the class, they can put online for free. Which is neat because there are "universities" like DeVry and University of Phoenix which are charging people for the same service. That is, to provide you with course material. Of course, they also provide you with a professor, but in my experience this professor has been just this side of the spear-wielding carnivorous chimps we've recently heard so much about. Things like "you mis-spelled 'particular'" (I had used the word 'particulate').

So I have a bunch of issues with it, of course. But it's newish software and I am guessing it will get better. Sort of like Apple's initial managing of audiobooks or recently of music videos and movies. As soon as they figure shit like that out, I think we'll be doing okay.

But first, there's this giant bug really bothering me. Look at this:


Anyone who's spent time with iTunes knows that this means it is ready to shit the bed. Which is normally okay because I can bounce the app, and all that stuff comes back, ready to be downloaded. In this case, both pause and resume are greyed out, my files have failed to download, and I'm just stuck.

Note also how small the scrolly is there. That's like a hundred and fifty items (I fly a lot). Unfortunately because they're not purchases, Apple has no real record that I've downloaded them. I have no idea how they track it. So, if I were to kill iTunes, restart it, and look for my downloads, it'd be tabula rasa, baby. I'd have to go and re-find all of those in all those different hard to find places that took me 2-3 hours to actually get into my download queue.

This is now the second time I've done this, and it's pissing me off. iTunes needs to handle network interruptions a lot more robustly, and it really needs to understand and support features like iTunes U.

The other gripe I have with iTU is the utter lack of anything below undergraduate. There's no Algebra II. I would bet that a huge fraction of Apple's iTunes Store patrons are children, on their parent's credit cards or allowances or whatever. Maybe they need help, or maybe they want to place into pre-calc in ninth grade.

It's painfully missing. A lot of the stuff there is great, there's a lot of garbage too, but what there isn't is material for anyone under about 20 years old.

The only other thing I have to say is there is a ton of Christian material. There's a seminary, and a bunch of religious business from Seattle Pacific University, and that kind of bugs me. I don't know that I want a seminary on iTU. Let's keep the ideology out, and have secular courses. I don't think we need to have "a fundamentalist view on [ noun ]" (offending noun removed, but an actual topic of a 54 minute video), any more than we need to have video courses on using cell phones and remote door locks to detonate IEDs. (meta-godwin, nyah)

10 June, 2007

Here's your chance

For all of you who continually ask me, "what are you listening to?", or want some kind of recommendation or a playlist out of me, I suggest (again) you check out last.fm. A few of these artists I picked up through last.fm, but a few of them I haven't gotten to yet. It looks like I'll be buying a lot of The Tea Party because it's right up my alley, and I need a tiny break from being panjabi. By the by, astute readers of both this weblog and my preferences on last.fm will note that I like Transglobal Underground. A lot. One of my favorite tracks (and I may go on, some time, to say one of my favorite tracks ever) is Drinking in Gomorra. Do yourself the favor, spend the $1.07 and buy that track. Then use Apple's handy "complete album" feature if you like it (I'm pretty sure you will). If not, it's hardly much of a loss.

If you manage to do this correctly, you could actually be listening to music I like before I ever listen to it and you could, you know, recommend it to me. Wouldn't that be novel?