I Live in a Web Browser

I don’t know why I keep eying quad-core systems. With the exception of playing music, copying files from my camera, some word processing, and IM, I live in a web browser. Here are some of the big uses:

  • GMail, my mail client. When I’m at my computer, I almost always have GMail up. I have a client for my Treo that lets me check it there. My school e-mail forwards to GMail. My ttwagner.com and n1zyy.com mail forwards to there.
  • Google and Wikipedia. I rely on Wikipedia way too much. But between Google and Wikipedia, I feel like I can do anything.
  • Google Docs is slowly winning me over. I move between my laptop, ‘public’ Office 2007 computers, and an office computer with Office 2003, so I’m hardly sold on any one particular interface. Google Docs is word processing (and spreadsheets) without the crap, although sometimes I do prefer to have it locally. But honestly, my life depends on the Internet, so ‘safety’ of files (in case I lose Internet access) really isn’t even one of the big issues.
  • Google Calendar has proved way more useful than I expected. It integrates nicely with GMail, sending me reminders and offering to let me schedule things that get e-mailed to me. And Goosync gives me an app on the Treo to sync my Treo calendar with my Google calendar. Bliss!
  • All my good photos end up on Flickr, and I buy and sell stuff on eBay often. I get my news through BBC and Google News.
  • I run a private Wiki. This is more useful than I ever imagined. I’m not quite as committed to it as I’d like, but I’m trying to keep all my class notes up there, which has a lot of benefits. During research, it’s a handy link dump. When drafting a constitution for a club here, I used that to allow collaborative editing.
  • I host a few mailing lists. Trying to keep a text file with 90 names and e-mail them and remove bounces and find people is a pain. Mailman is a savior.
  • I host multiple blogs. These are obvious, but there are some more I’m starting.
    • One, that never caught on, takes a pretty literal definition: a web log. I wanted a way for us to keep track of petty things that were going on, and have everything logged somewhere and searchable.
    • I’m also drafting one for the Democrats. A big part of what we do is outreach/publicity, and a blog is ideal for this.
  • Tonight I realized that none of my ‘task management’ systems worked. So I set up Mantis. It’s not perfect, but it works pretty well. Setting up Bugzilla is pretty intense, but no so with Mantis. The “problem” is that it was intended for software bug tracking, not keeping track of work I have to do, so I have fields like “Reproducibility” and other holdovers from software. I may do a little tweaking. But my plan is that anything I have to do should end up in there. Everything is in one place, and I can slice the data a million different ways, by priority, by category (one for each class, one for each club, one for each major class project, one for “Life”), etc.

Truly, without Firefox and a browser on my Treo, I don’t think I could get by. And I sometimes wonder if it’s worth paying monthly for a dedicated server. But I get so much benefit from the services I host for myself that it definitely is.

Homes to Consider

Today’s real estate market is in a slump. What this means, clearly, is that you should be buying.

If you’re willing to live in the middle of nowhere, here are a few very interesting ideas for homes:

  • $320,000 buys this ~3,000 sq. ft. building, a former railroad station. With just a tiny bit of work, it would be a nice home. Check out the living-room-to-be; mount an LCD TV right over the fireplace and put down carpeting over most of the floor (except for right by the fireplace). There’s a bookcase off to the right, although I’d paint it white. Breakfast nook anyone? Just put down a carpet. This view is pretty inviting, too. (And check out the palm trees outside: it’s Georgia, after all.)
  • If you’re more of an athlete, how about this school in Kansas? $325,000 buys you 24,500 square feet on 5 acres. The gym looks ready to use. Read “17 classrooms” as “17 palatial bedrooms” after you renovate them a bit. (Carpet + less-hideous ceiling + ditch the fluorescent lights.) And tell me that library wouldn’t make a nice home theater.
  • This place in Missouri is ridiculously nice. Tell me the third picture isn’t what you want to see as you walk home. It sets high expectations for what’s inside, but it’s even nicer than you might expect.
  • This old Montana bank is dirt cheap. 6,200 square feet for $140,000. I’d want to totally gut the interior, and the location is probably not desirable, but still… Oh, and put a nice fence up on the roof for safety, and then you have a pretty sweet ‘outdoor’ area. And it has a vault!
  • This place is totally undesirable but ohhh so cheap. It looks like it’s ready to fall down, and the power substation in the front yard destroys whatever value the place may have had. The good news is you may never lose power.
  • Cheap place in Indiana with an associated business.
  • This building is butt-ugly but is situated on a nice dam. I want to live here!
  • Whoa! 40,000 square feet of amazing office space? Might make a nice home.

Granted, you’d be an idiot to buy any of these places without looking carefully into all the costs and zoning laws, and I’m not sure any are in good locations.

A Partial Upgrade

My AthlonMP system is aging. Actually, it’s aged. It’s down to 512MB RAM (the other 512MB went bad a long time ago). BIOS updates ended 4 years ago, and the thing doesn’t seem to support drives over 137 GB or USB keyboards, two things that have worked for a long time. (Hint: it seems like a good idea at the time, but don’t buy a server-grade motherboard for your desktop. It seems better, but it’s all these little things that will get you.)

I have a decent enough graphics card, a nice HDTV tuner, a DVD burner, 500/200/60/40 GB drives, a nice keyboard, and a monitor. So all I need, really, is a new motherboard, CPU, and RAM.

So here’s a motherboard. Here’s the processor. Here’s the RAM, times two. Net cost? A little under $500. For a quad-core processor, 4 GB RAM, and a motherboard with GigE. Assuming, of course, that all you need is motherboard + processor + RAM. Which is the case for me. Granted, it also assumes that you have $500 to spend on computer upgrades….

Edit: Seems that the RAM might not be the best. Don’t take my word on it being the right thing.

How the Republicans Can Win

Let the Democrats continue bashing each other in public, ensuring that, post-primaries, whoever wins from the Democrats already has egg on their face, thrown by another Democrat. The Republicans won’t even have to run attack ads.

And Republicans, don’t worry. It seems that we’re well on way with this plan. Just sit back and watch as we talk ourselves out of the White House.

Long-term Planning

In business, and really just life, it’s important to plan for the long-term.  In a lot of publicly-traded companies, managers have incentives to manage for the short-term: if they boost the company’s numbers for the year, they get huge bonuses. The plan doesn’t account for the fact that they may well have gotten there by sabotaging the company’s future.

But the long term is different from the absurdly long term. I’m sitting here reading an article about how Merrimack needs to replace its manhole covers. There are two plans; one is very expensive but will last us 50 years. The other is significantly cheaper, but there’s a chance that, in a couple of decades, they might need to be replaced again.

I guess the right way to look at it is the total cost over time. But frankly, in 20-25 years, I’m going to be in my 40’s, and probably not living in Merrimack. I’m not going to think, “Man, I wish we’d spend more on manhole covers.” I won’t even remember that we replaced them 20 years ago.

One of my classes this semester is called Strategic Management. Some classmates presented their “strategic recommendations” for a golf company. One of their plans was aimed at growing the company’s market share over 100 years. I had to choke back my laughter when they said this.

It’s important to plan for the future. Doing something that you know will endanger your company in the future is a bad idea. You always want to be thinking of the future. But how can you know what the golf industry is going to be like in 50 years? How can you know what the economy will be like? For a five-year plan you can infer that it won’t change too much, besides a little technological advancement. But if anyone ever gives you a 100-year plan for their company, I encourage you to crack up laughing. I almost did, at least.

Not Compact

The one “problem” with my 10D is that you can’t possibly fit the thing in your pocket. I’m buying a “grip” for it from Andrew, which is going to make it even larger.

So I don’t feel as bad about tacking a huge lens onto it. Heck, the lenses I use are small compared to what the real pros shoot with.

But here’s what I need. Canon made a 1200mm lens. This thing is ridiculously large. At f/5.6, it’s as fast as my camera at 200mm. This is n amazing lens. This is the only lens where photos of the lens are routinely more interesting than photos taken with the lens. I knew for a long time that the lens was very expensive. But I wasn’t aware of the definition of “very” expensive, nor that Wikipedia had a page on it. It apparently cost just shy of $90,000, and was available only by special order.

So then I found this article about Nikon’s ‘version’ of that lens, a 1200-1700mm lens. Of course, being a Nikon, it’s black instead of white. Linked to from that page is this article on Reuters, written by one of their photographers in France who took the agency’s 1200-1700mm lens to an event this July to get some shorts of the new President of France. The situation is one in which most pro photographers would weep and give up, and the lens is barely long enough. (He jokes that next year he’ll put a 2x TC on it.)

I’ll gladly accept donations.

San Diego

I haven’t paid all that much attention to the fires in California, especially after discovering that my family out there wasn’t anywhere near the blaze. But take a look at this. This family just got back from their honeymoon and their house was burned to the ground. Very literally. There’s a small pile of ash left.

AT&T is coming after them trying to collect $300 for the receiver that was damaged in the fire. The guy on the phone at AT&T had the audacity to suggest that they should have taken the rented satellite receiver with them when they evacuated.

Way to go, AT&T. Short of changing your logo to a swastika or making fun of 9/11 victims, I’m not sure you could possibly have made yourself look more foolish than this.

Helping Kids

I feel like no one in politics can ever agree, and that if a bill were introduced to, say, ban child abuse, someone would come out against it. But still, I feel like this is something everyone should support. There’s a strong correlation between kids whose families aren’t there for them and kids who end up in jail. And there’s a strong correlation between kids who can’t finish high school and kids who end up in jail. Or selling drugs. Or homeless. Or shot by peers. Take a wild gander at how much keeping children locked up costs us each year. An estimated $1 billion. Why do we make it so hard for these kids to get help? Why don’t we offer GEDs and the like to people in jail? (And not just the kids, although they need it most.) Why are we not doing more job training? We spoke tonight with someone who runs a bookstore. It’s run entirely by kids who were referred there by the Department of Social Services and by probation officers. They learn job skills. “It takes them a long time to see that they matter,” she told us. Soon they come to realize that, and she praised their work ethic after that. One kid came in to talk to us. He didn’t want to speak about his past, so I don’t know the story, but he’s 17 and in this program. He’s working on finishing up high school, and is not just working in this business, but is one of the people helping to run it. After a while, the kids “graduate” out of the program and get real jobs, or go to college. It’s impressive, but it gets exponentially more impressive when you realize that every single person in this program is someone who would be in jail, committing crimes, homeless, or some other miserable fate that’s not just bad for them, but a drain on society as a whole. Why is this program an anomaly? Why are we not trying to place every kid who’s in jail in programs like this? It’s costing us $1 billion to keep them in jail. They’re wasting their lives away there and, when they get out, they’re almost certainly not going to be any different. The recidivism rate in the US is at about 60%. That is to say that 2 out of 3 people release from jail will end up in jail again. It sounds like the system is very broken. I’m not saying that we shouldn’t lock violent criminals up. If you commit a crime you should go to jail. But it seems incredibly short-sighted to not educate these people and help them get jobs. If you come out of jail with the help of drug crime defense attorneys from Missouri and the government helps place you in a job, you’re going to have less incentive to sell drugs or hold up convenience stores. And if you get an education and/or job training? Even better! Of course it’s not a cure-all. People will always do stupid things because they’re drunk, or stab someone because they’re angry. But when two-thirds of people who go to jail get trapped in a downward spiral of crime, I think it’s time that we do something to try to help. By all means, we need other stuff too. But I’m fed up with people giving the ax to plans for petty reasons like, “There would still be some criminals.” Of course there will. But let’s at least start to do something!

Bans for Fun & Profit

The way I use this server gives me a luxury that bigger sites don’t: my visitors come from a select range, and I don’t have to worry much about blocking people erroneously. Therefore I can be quite aggressive in blocking IPs. /etc/hosts.deny is my new favorite file.

When I moderate comments here, I have a few choices… I can approve it, delete it, or mark it as spam. I never got what marking it as spam did… Apparently it doesn’t do much but set a ‘spam’ bit. (I’d hoped it trained Bayesian filters or something, but no such luck.) But what it does do is make it super-simple to construct an SQL query to pull out all the IPs that have posted spam. Add a little more and you get just the IPs this month that had posts flagged as spam. And you drop them in /etc/hosts.deny.

But then I was watching the system log file, and noticed lots of spam coming in. I’m not running much of a mailserver, so most addresses are bouncing. (Especially since they’re spamming addresses that have never existed?)

This is good news, though, for the IP-banhappy out there. Here’s my latest concoction:

grep NOQUEUE /var/log/messages | awk '{print $10}' | \
sed "s/[/ /g" | sed "s/]/ /g" | awk '{print "ALL", $2}' | \
sort | uniq -c | sort | tail

In a nutshell, we look for “NOQUEUE” in the log files, pull out the 10th column (IP), split out the junk so it’s just a numeric IP, sort it, weed out the dupes with uniq and pass it the -c flag, which has it count the number of times each line occurs, and then we sort that, so that the list is now sorted by the number of bounces. It defaults to ascending order, so that the top of the file is all people who’ve only e-mailed one invalid address. So the ‘juicy’ part is the end of the file. So we pipe it to tail, which, by default, shows the last ten lines. So the output looks like:

      5 ALL 219.140.194.117
      5 ALL 85.130.84.9
      6 ALL 86.152.15.119
      7 ALL 83.182.186.224
      8 ALL 125.181.70.135
      8 ALL 207.144.11.87
     10 ALL 125.212.188.156
     15 ALL 88.238.145.22
     17 ALL 217.26.169.66
     17 ALL 62.149.197.247

You could use a little more magic to automatically add the second and third columns to /etc/hosts.deny, but I prefer to do it this way… The reason is that sometimes (not in this example) you’ll see posts from a range of similar IPs. It’s more of a judgment call where you draw the line, so I like to give it the once-over.