Anybody Home?
One day in 2009, I took my server down for a little routine maintenance…and never turned it on again. Spending time with my young children and helping make this startup a success has just been far more important.
I’ve found myself occasionally rising above the surface for a breath of air lately…and let’s face it, I was also itching to get my hands on a bash command line again
So, as part of my multi-pronged effort to return to both the real and virtual worlds, I got Wordpress set back up on this server today, and this is my test post to verify whether it’s all working.
See you in 2015!
Comment Bankruptcy
I’ve had a pretty busy year and I haven’t done much writing, and I entirely stopped cleaning out the comment spam. It all gets blocked before it hits a post, but I have to manually comb through it all to throw away the spam and approve the occasional “real” comment. I had to clear some space on this disk today but didn’ thave time to work through 8873 proposed comments (8872 of which are sure to be spam), so I declared Comment Bankruptcy and deleted them all.
delete from wp_comments where comment_approved = "0";
So if you tried to post a comment on a post and it never showed up, that’s why.
Star Trek
It suddenly occurred to me tonight that my son was born exactly as many years after TNG went off the air as I was born after TOS went off the air.
Comments Off
Indiana Jones
I watched Temple of Doom and Last Crusade tonight, for the first time since I was a teenager. A few weeks ago I saw Back to the Future for the first time in as many years as well. It’s funny how many things I notice these days that I never would have 15 years ago. Like the fact that the movie playing in the theater downtown in BTtF was a porno in pre-trip 1985 and a Christian speaker post-trip. Or Julian Glover’s comment as Walter Donovan in Last Crusade that the precious valuables paid for right to travel within Hatay were “donated by some of the finest families in all of Germany,” which almost certainly means they were looted from Jewish families. Forget college, though: that’s 10 years of The History Channel talking.
Comments Off
Clipboard Prioperception
Prioperception is your brain’s ability to know where parts of your body are. Even without seeing or feeling your hand, you generally know where it is, you can navigate through doorways without running into them with your shoulder, and you don’t typically fall down when you try to sit in a seat b/c you know generally where your hind-end is.
I’ve read somewhere that the concept of having five senses is pretty outdated given our current understanding of the brain, and that there are probably more like 25. Sure, there are the obvious external senses, but we also have psuedo-external senses like prioperception, and lots of internal senses that aren’t nearly as obvious but that nontheless control things like cravings and hunger (e.g., blood sugar).
One of the possible outcomes of human-computer interface advancement is to provide humans with totally new senses. I think I’ve developed at least one new sense already, though, after 15 years of using Windows: I know when there’s something in my clipboard. Now, of course if I cut something and then immediately paste it, I know, intellectually, that the text I just cut is in the clipboard, but this is more than that. Even if I copy the text, then get distracted and do something else for 15 minutes, I’ll still find myself with a feeling that there is something in my clipboard. I might not even remember what it is, but I’m almost never wrong: if I open a blank notepad and paste, I’ll find something that I had copied or cut and had not pasted. Of course, technically, the item often remains in the clipboard even after that point, but after pasting it where it’s supposed to go, the feeling goes away. Just like I may know that there’s something in my hand, even if I’ve forgotten having picked it up or even what it is (something that happens often when I’m cleaning the house), I just “know” that there’s something in my clipboard that I haven’t pasted yet. I’ve even had the feeling persist after getting up from the computer and coming back, after totally losing my context.
Comments Off
Computer Interfaces
On the holodeck, on the Enterprise or Voyager, when somebody says, “Computer, delete Medical Consultant program and all related files”, the medical consultant program and his lab disappear from the holodeck. The computer never says, “The file cannot be deleted because it is in use by the Holodeck.”
Comments Off
D3D Debug Output: Enable Unmanged Code Debugging
The title says it all. I spent a couple of hours thrashing around a while back before I realized that the reason I wasn’t getting debugging output from Managed Direct3D, even though I’d turned it on, is because I hadn’t enabled “Unmanaged Code Debugging” in the project properties for my main EXE project in Visual Studio 2005. So I thought I’d throw this post up here; maybe Google will pick it up and help the next poor guy.
Whether or how this applies to XNA I do not know yet.
Comments Off
Vista Explorer File Copy Sucks
Sorry, my eyes are still too crossed from a cold, seething rage to be more articulate than that headline.
You can’t delete whole directory structures — even small ones – b/c it sits and thinks forever and then maybe gives you Access Denied, but then when you drill down and delete individual files one at a time you can work your way up and finish deleting the whole structure by hand, all while the first delete that you tried still sits there working or complaining.
You can’t copy large amounts of data (several GB, say) b/c the file copy window simply chugs along inspecting for a while and then goes away, having copied nothing.
Did no one at MS test Vista’s explorer.exe with more than Mickey-Mouse tasks?
I’m so disappointed I want to cry…or order a Mac Mini.
Comments Off
Robocopy Backup on Vista
I run a nightly backup here using Robocopy. It worked great on XP. Since I switched to Vista, it hasn’t been working, and I finally was able to take a look at it today.
The Robocopy log file was showing that it was trying to copy files into C:\Users\All Users\Application Data\Application Data\Application Data\Application Data\Application Data\Application Data\Application Data\Application Data\Application Data\Application Data\… and so on …
As of Vista (well, NTFS 3.0), you can make Junction Points, which are essentially the same thing as symlinks in Unix. And apparently C:\Users\All Users\Application Data\Application Data is a symlink to…it’s parent. Good job!
The fix for my Robocopy backup was to add the /XJ flag. That tells Robocopy it to skip Junction Points. It means that a restore from that backup will be missing those links, but that’s better than not getting a backup at all.
Comments Off
Why, oh Why Not (Panel : ContainerControl)?
I think this bit of code that I just wrote (edited to remove any mention of what I’m actually doing for my current employer right now) says it all.
// Must disable automatic validation to keep, // e.g., the foo table from trying to validate // an incomplete current row just b/c we clicked // the frobinator over on the flogster. It would // be nice to be able to control this on a // per-control or just per-container basis, and // you sort-of can, except that Panel does not // derive from ContainerControl // (http://www.veridicus.com/tummy/programming/dotnetshame.asp), // so you have to use UserControls to get that // kind of control, which is a big-enough // pain-in-the-ass that we just make do without. AutoValidate = AutoValidate.Disable;
Phone Spam from Charter
My cable TV and Internet provider (Charter Communications) just spammed my home phone with a recorded message to advertise their On Demand channel. This kind of stuff is totally unacceptible. Just because it’s legal does not mean that you must do it — there is no “advertising imperative” that says that just because you can spam someone’s phone that you inevitably must. (The do-not-call list does not apply in this case because I have an existing business relationship with Charter, by being their customer. That’s a big loophole in my opinion — I get enough phone spam and unwanted calls from Bellsouth, Charter and various charities, all of which can legally call me as much as they want, to barely notice that the do not call list exists.)
Message to companies that want to keep their customers: don’t use my home phone for your recorded advertising. Just don’t do it. When the urge hits you, go take a cold shower and remember that respect for other people is not necessarily mutually exclusive with concern for the bottom line. Maybe there are cases where you could make a dollar but just shouldn’t do it… I mean, prostitution is legal in Nevada, so shouldn’t Charter be operating a few brothels, since it can?
Comments Off
Debugging in IE 7 in Vista
I wrestled some in the past few days with with trying to debug some code that is hosted in Internet Explorer 7 under Vista. I finally found the answer at http://blogs.msdn.com/webdevtools/archive/2006/09/18/761206.aspx, though they didn’t actually describe the same problem I saw. (So here’s the description for future Googlers).
Short answer: Start Visual Studio via “Run as Administrator”.
(more…)Comments Off
Ian’s Feet
So, my 5 month old discovered his feet last night. He’s only been using his hands in a manner that could be called non-accidental for like a month now, but last night he was sitting up (with some help), staring at his feet, and trying to reach them with his hands. Unsuccessfully, I might add — his coordination needs some work. But they definately had his interest.
Being a dad is great
iTunes on 64-bit Vista
I am running a beta of Windows Vista on my dual core AMD64 desktop. I had been running a 32-bit build of XP on it because I had read that 64-bit XP had some problems with driver support for some of the hardware I need for work. Everything seems to be working fine so far with this 64-bit Vista, but I ran across a problem installing iTunes that Google seems to think no one else has seen before. Hopefully it’ll pick up this page with my solution, in case someone else runs across this.
The problem: start the iTunes installer and get this error message after a few moments “iTunes could not be installed because Visual Basic Script (VBScript) is not installed or has been disabled”, and then a bunch of additional noise.
I found one hit on Google for that phrase, and it was a guy who didn’t have the Windows Scripting components installed at all (or whose installation had been corrupted, possibly); downloading them from Microsoft fixed his problem. Vista has all the Windows Scripting components preinstalled, of course, so that wasn’t the problem.
The problem was that, for some reason, the 32-bit version of VBScript.dll wasn’t registered on my machine. I don’t know if that’s by design (a security feature) or a bug in this beta build of Vista. The solution:
- Start Menu -> All Programs -> Accessories -> Right Click on Command Prompt -> Run As Administrator.
- Type “cd C:\Windows\SysWOW64″
- Type regsvr32 vbscript.dll
If you don’t do Run as Administrator, the regsvr32 will fail. Also, be careful to run the command in SysWOW64, not System32! System32 on a 64-bit system actually contains the 64-bit system libraries. The 32-bit versions are in (where else?) SysWOW64. Makes perfect sense, right? (From an engineering standpoint it probably does, but it’s going to be a source of confusion for a lot of people, no doubt).
Windows Live Writer - Test
This is a test of using Windows Live Writer to post to the blog. At first glance, I am impressed. The interface is clean (but, once again, seems to have been written with some custom set of UI widgets that Microsoft hasn’t made available to the rest of us in standard Windows Forms
).
“Save as Draft” didn’t work as expected…I had hoped that it would literally save the draft in WordPress, just as if I’d clicked “Save as Draft” while editing in the normal web-based WordPress editor, but it doesn’t appear to have done so. There is a “Post Draft to Weblog” option in the Publish menu which might do what I expected “Safe as Draft” to do, but there must be a configuration error, because I’m getting a network error when I try it.
On the plus side, inserting a picture is much easier with this tool than with the standard WordPress editor:
(Update: When I tried to actually post this, I kept getting a network error until I removed the image I had added right here. So my WordPress installation doesn’t like whatever Live Writer is doing to send the image up to the server. Will have to figure that out…)
The default editing view, Web Layout, is excellent. WLW inspected my blog automatically when I first set it up to find what the background of the site looks like, and shows that as the background while I type, so the results are much more WYSIWYG. (It got the formatting for that link correct, too). “Normal” view seems to be included just for completeness (though I suppose some people might like it). “HTML” view might sometimes come in handy, but what’s really nice is “Web Preview” view, which shows what the post will look like integrated with the rest of the content of the site’s front page.
So far, it looks like WLW is an excellent example of the kind of rich-client application that is much harder or impossible to do quite as well in HTML, even with AJAX. I don’t see anything in this UI that would be completely impossible with AJAX, but the application’s is just large enough that developing it in JavaScript could quickly turn nightmarish.
Comments Off
Transparent PuTTY Question
Got this question today:
I just downloaded your transparent putty program. It is great and it is just what I was looking for. I have a tranparent version of “aterm”, but was experiencing refresh issues with it. Anyway my reason for writing to you is that whenever I run the transparent putty program with “Desktop” selected in the Background option and Opacity set to 0, my putty cursor disappears. I think that the cursor transparency also depends on the opacity value you set. Would you know of a way that I might be missing to make the cursor independent of the opacity value? ThanksHis analysis is correct: the cursor transparency uses the opacity. That was a consequence of the way PuTTY draws the cursor. I never really experienced that as a problem b/c I always use an opacity of about 50 or 75. I am mostly posting this as a way to remind myself to try check out whether this will be easy to fix, the next time I’m able to work on my PuTTY transparency patch. (Which probably will be at least a few months still…being employee #2 at a new company and, more importantly, having a 3-month-old son, tends to eat up all of one’s time).
XP Firewall Script
My friend Matt come up with this little CMD script for when you need to open a whole bunch of ports in the Windows XP Firewall at one time. Might be useful.
FOR /L %I IN (7001,1,7201) DO netsh firewall add portopening TCP %I “FTP_Passive_Data_”%I
Now, whether actually running 200 passive FTP connections between two computers at the same time makes any sense is an open question…if you could theoretically fill the bandwidth with just 1 transfer, then 200 just adds TCP/IP and context switching overhead. If FTP pauses between files while it sends commands on its command port, then maybe having at least two or three going makes sense. But 200? Matt — any input on the performance you saw?
DataTable.Load & ReadOnly Columns
Whew. I spent several hours over the past couple of days trying to find a nasty bug in some ADO.Net code. Updates would fail, and I discovered the problem was that, before I ever got to the point of trying to save the current row, it had already somehow gotten an error in it. The RowError had this text:
ReadOnly Data is Modified
If you’re reading this sometime shortly after 2006-06-30, try that phrase in Google, with quotes. Nadda. Apparently, no one had ever encountered that particular error and lived to tell about it.
Read on for more.
(more…)
Scoop: Conversation in a Media Conglomerate’s Board Room
Voice1: The promise of cable TV is that we can air a number of different niche channels, thus better targetting individual consumers and providing a better value for our advertisers. And after all, that is our primary goal as an advertising service provider. That was the vision of the founders of this company, and we must stay true to it.
Voice2: You’re absolutely correct. Now, on to new business. Let’s look at this week’s numbers.
(A pause)
Voice3: As you can see, for the 456th week in a row, the Bland Miscellaneous Network has better numbers than any other. The question is, how can we make every other network exactly like BMN.
Voice1: Um…
Voice2: You’re speaking out of turn. Please let Wilson continue.
Voice3 (Wilson): To continue: the formula at BMN is to recycle old shows that got high ratings. Original content is too expensive, so we need to go find stuff that was popular with the kiddies in the 80s. They’re in their 20s and 30s now, and they’re not giving us enough of their money. So what I want each of you to do is to go out and find three unoriginal shows that we can start showing on our other niche networks. The criteira: nostolgic and cheap. It doesn’t actually have to fit the theme of the network…when they see the show people will be too surprised to notice.
Voice2: But doesn’t that…
Voice3: Jenkins, you’re fired.
Comments Off
2 Comments