Blog Work

I wanted to mention a few things I was thinking of / plan to do on the blogs, to invite comments / suggestions.

  • The /main interface…
    • Should be the main page. I’m hoping this will be easy to accomplish. (WP makes heavy use of mod_rewrite, something I haven’t used before.)
    • Should truncate posts at some reasonable length.
    • Should show the blog something was posted to, not the author of the blog.
      • This is more of a pedantic thing, but it’s correct.
      • I have this and /meta, a blog about the blog. Both show up as “n1zyy”
  • The timezone seems seriously screwed up?
  • Some of the templates need work
    • A few (nonzero, featured on Andrew’s site, in particular) have all sorts of random crap in them, such as ads / strangers’ Flickr galleries. These need to be removed.
  • home.php doesn’t exist, which results in errors beings spewed everywhere
    • I wonder if I can just touch it.
  • I really, really need some caching going on here
  • Should I import all the old posts?
    • Part of the problem is that there are lots of lingering links to exact pages. WP uses a new URL format, so even if I import everything, old links will be broken.
      • This would help spur people to remove ancient links?
    • I haven’t really had anyone ask. I don’t want to go importing someone else’s old content to my website if that person doesn’t want me to.
    • Many of the people haven’t yet indicated any interest in renewed activity here.
  • I want to play a bit with the concept of shared categories; e.g., we could have a “Computers” category at, say, /computers, where posts by any of us with the the category of “Computers” would show up.
    • This would be somewhat of a pain, as each of us has our own list of categories.
      • Coding around it is entirely possible, but would require multiple levels of queries… Which is fine if people are interested, which is what I’m wondering
    Oh, and one more–doing ordered lists in the “Visual” composer is really screwed up. I keep having to fix it in the Code view. But that’s one for the WP devs, not me.

    The Nokia 770

    Andrew posted about the Nokia 770 the other day.

    By chance,  I stumbled across Maemo-apps today, and am suddenly even more impressed. It doesn’t do a lot my phone doesn’t, but it does have WiFi and what seems to be an awesome LCD. And it includes a PDF viewer. It might be superb for reading eBooks. Or playing Sudoko. Or diagnosing my car. (Does “being eaten by chipmunks” have an OBD-II code?)

    Talk me out of it!

    Disk Space

    Today I fired up Photoshop, and it barfed up an error about insufficient scratch space and closed. “That’s odd,” I though, having had a couple gig free the other day. I checked, and was at about 400 MB of free space.

    About two minutes later, I was reminded of two things:

    • CCleaner is an absolute must-have for any Windows user.
    • Having 2GB of RAM results in really, really big core dumps when you bluescreen.

    CCleaner fixed the problem in literally seconds, and I’m back up and running with a few gig of free space. Although I think I’ll still get a new hard drive and plunk Ubuntu Studio onto it, too. With Sunbird. And some nice themes. And Beryl/Compiz. And maybe Crossover, although it looks like Office 2007 doesn’t work in it.

    Network Problems

    PuTTY tells me “No route to host” when I try to ssh into this machine, and ping gives a similar complaint. And yet I’m viewing the site, refreshing, and now posting just fine.

    What could possibly be going on to cause that? It’s not “Connection refused” as if sshd died, it’s “No route to host,” and yet I’m here at the exact same host just fine.

    Writing Code

    A few things I’ve learned in writing code:

    • $huge_array is a perfectly valid name for a large array… Until you realize that you were actually trying to create a hash, which is apparently not a PHP feature at all, in which case you suddenly realize that you’re going to need like six $huge_array’s… In which case I broke down and gave them decent names.
    • To determine if something is sound programming practice, try it and see if the program crashes, or, in my case, if PHP throws errors. If not, you’re golden.
    • The PHP.net manual is amazing. I just learned how to use foreach() tonight.
    • Coding is like swimming: even if you’ve gone years without exercising the skill, you can pick it up in no time. And also like swimming, if you’ve sucked at it all your life, you’ll still suck at it just as much later on.
    • When you can’t think of a good way to code in a feature, just put in a comment indicating what it should do. (So far, though, the PHP compiler hasn’t done a very good job with filling in code based on my comments…)

    Computer Pricing

    Back maybe in early high school, I decided to build a new desktop system, and scrapped together enough money to do so. I built what was then a monster of a system: dual 1.4 GHz Athlons, a gig of RAM, and a 40 GB hard drive.

    Today, my laptop is faster: Core2Duo 1.833 GHz, 2 GB RAM, and a 60 GB disk at 7200 RPM.

    But what interests me most is how cheap things are these days. Looking through this weekend’s CompUSA circular, I’ll point out a few interesting ones:

    • $400 (after a big rebate) buys a laptop with 15.4″ LCD, dual-core Pentium processor, 512 MB RAM (bah), an 80 GB disk, and Vista Home Basic. It’d be a bit of a downgrade for me, but to those who don’t have a relatively new, tricked-out machine, all that, in a laptop, for $400? It’d make a pretty good computer (juts upgrade that RAM!), and it’s only $400. That’s what I’d expect to spend on a peripheral or two.
    • $600 gets you a 17″ notebook, dual cores, 160 GB drive, Vista Home Premium, and a gig of RAM. Now you’ve got a nice machine. For $600.
    • I’m desperately trying to justify to myself a new desktop system: $1,000 buys a quad-core 2.4 GHz processor, 2 GB RAM, a 500 GB disk, a 22″ widescreen monitor, and Vista Home Premium. (With a 500 GB disk, I could say I had Vista and yet really run Linux. *grin*) If you asked me, without having looked at the circular, I’d have told you that such a machine would probably run $3,000 or more. (A printer is apparently also included, although since they scarcely mention it, I don’t have high hopes for it.)

    Anyone in the market for a dual 1.4 GHz AthlonMP system, 512 MB RAM, 120+60+40 GB drives, and a pair of 17″ LCDs? 😉

    PicLens

    Firefox plugin of the day: PicLens will let you launch a nice full-screen gallery of images from within Firefox, from many common sites. It seems to preload them, too, so moving between them is nice and fast.

    Delayed Processing

    Do you ever have a nonsensical thought, but take way too long to realize that it doesn’t make any sense?

    I just got some ice from the freezer, and noticed out of the corner of my eye that the tub of ice cream in there says, “Runs UNIX!” I thought it was really cool to see UNIX expanding to other markets, and was proud in some strange way.

    As I was pouring my drink, though, it suddenly dawned on me that despite the power and versatility of UNIX, it most certainly doesn’t power the cardboard tub of ice cream in my freezer. The tub of ice cream, as hard as it is to believe, doesn’t run any operating system, because it’s a cardboard tub of ice cream.

    FWIW, I went back in and looked, and the text isn’t even close to “Runs UNIX!”

    Security

    In the world of cryptography, people hate the concept of security through obscurity

    In a nutshell, they argue that using a ‘secret’ means of securing something is no good. On some level, they have a valid argument. On another level, it’s more of a zealous ideal that doesn’t make any sense in the real world.

    I’ve always preferred a more pragmatic approach: security through obscurity is a great way to buttress an already-secure system. If your non-obscurity approach (“security by design”) is complete rubbish, security through obscurity is only as good as your obscurity.

    The government used a mode of encryption called Fascinator. You sometimes see radios with Fascinator encryption modules for sale on eBay. It’s very, very illegal to own Fascinator equipment, because it’s somewhat of a classified mode of encryption. Not much is known about how it works. Isn’t that security by obscurity?

    Here’s a more simple argument: a business keeps its money in a safe. The safe is somewhat secure: you need the combination to open it, and you can’t really pick it. On the other hand, a stick of dynamite will also open it. I’m hardly a safe expert, but many businesses, at least in fiction and the olden days, kept their safes in pretty prominent locations, and, if not that, in easy-to-guess observations. If I visit an establishment a few times a week, I might become very familiar with where they keep their safe. If I decided to rob them, all I’d need was some dynamite.

    But now suppose that the business is owned by someone who thinks outside the box a little, and who places the safe somewhere bizarre: say, the employee restroom, or in a restaurant’s kitchen. Those who visit the business probably won’t even know that there’s a safe, so someone who’s planning on some safe heists might not even bother with their business.

    The argument against security through obscurity is that, if someone knew where the safe was kept–an employee, perhaps–would be able to get to it with no additional effort. And this is a valid point, but it misses what I think is the more important point: if you used it with a “secure by design” system (e.g., the safe), it’s far less likely that people would even know about it in order to break it.

    In a computer setting, I thought about (but haven’t taken the time to accomplish) running sshd on a nonstandard port. sshd is a very secure protocol and I use strong passwords. But running it on a nonstandard port: hiding it: security through obscurity would provide me with an additional layer of protection.

    In the past, I had an interface to directly manipulate the blog comments table, allowing mass deletion easily. It was something I hacked together one night, and never bothered password-protecting it. It was a ‘hidden URL’ with no links, and the URL was just a random, meaningless word. This is what the security through obscurity folks rightly condemn: anyone who looked through my browser history, or who guessed the URL (very unlikely?) would have been able to do serious damage to the database. But I was the only one who ever knew it existed, and the logs confirm that I was the only one who ever accessed it. Of course it’s a bad idea, and I agree that security through obscurity, as the only means of defense, is a horrible idea. (Despite it having worked perfectly for me.)

    But I can’t stand when people go against anything that includes security through obscurity in any sort. It can only help, just don’t rely on it exclusively.

    Computer Pricing

    So a coworker/friend is toying with starting an Internet cafe overseas. It looks like OSs such as Knoppix and Ubuntu are somewhat common in those setups, partially because they’re free, and partially because they’re easier to lock down.

    So I went to Dell’s site, and began playing around with their configuration utility, trying to put together the cheapest machine possible. I figure we need like a 700 MHz processor, 512 MB RAM, and a CD drive. A hard drive is nice, but not necessary. (In fact, more secure.) My findings:

    • The system ended up costing $529, but you can lease it for $16/month. (This may actually be beneficial in this situation.)
    • The cheapest processor I could find was a Sempron 3400+, but the website never defines what this is. Knowing a little bit about computers, the only thing I’m able to tell you is that it’s almost certainly slower than 3,400 MHz.
    • “Windows Vista Home Basic” is the cheapest OS I could select. (They apparently sell certain PCs pre-loaded with Ubuntu… I’ll have to try to find them.)
    • Only having 512 MB didn’t surprise me, but I didn’t expect a 160 GB hard drive to be the smallest.
    • Remember the old days when a CD-RW was the sign of a pricey system, and if you could read DVDs on it, too, it was cutting-edge? Now I had the choice between that and a DVD burner.
    • No speakers are included. Given that it’s for an Internet cafe, I think this may be a good thing.
    • I deviated from my “cheap as possible” plan and sprung for a 13-in-1 card reader for $20 or so, figuring it’d come in handy in an Internet cafe.
    • The 56kbps modem is basically free. I removed it, but it didn’t take anything off the price, so I included it again. Better safe than sorry?
    • MS Works 8 comes ‘free’ with this install. No one likes MS Works, but I digress.
    • 1 year of in-home service is included. Maybe I shouldn’t have gone with the “Consumer” machines.
    • It includes Yahoo! Media Jukebox and 6 months of AOL. Two things we’d get to uninstall as soon as we took delivery of them.

    Cynical rants about that stuff aside, though, it amazes me what you can get these days. I was reading through the circulars, and there are a lot of $800 laptops that can smoke any of my current machines. It’s hard to buy hard drives under 160 GB. (OTOH, it’s hard to buy hard drives over 160 GB for laptops…)