Computer Guys, Computer Guise

Computers

Computers are everywhere. They’re so everywhere that we don’t even see them anymore.

Back in the day, when people talked about “computer scientists”, they were talking about stiff white guys in stiff white lab suits looking very serious about their clipboard and bowtie. Invariably, they would be standing in front of giant boxes with a large number of blinking lights and giant spinning wheels of tape. This is Quite Impressive, and a far stretch from today’s software engineers with their Fritos and Mountain Dew and the round bellies that follow.

It used to be impressive to be a computer sceintist. Now it’s so easy to use computers that it’s almost pointless to get a degree. To the Common Man, the bloke that spent eight years earning his Ph.D in Computer Science is “that guy who knows computers”. To which the Common Man’s friend, Bob, says “Oh, yes, I know a guy that knows computers too!”, by which he means some sixteen year old pimply faced kid who built a PC.

For those of you that are impressed by that last bit, rubbing your chin(s) saying “Oh my, sixteen? And building computers? Impressive!”, let me make this bold and simple statement:

Building a PC isn’t hard. It’s like legos: nothing fits where it’s not supposed to go.

For those of you who were furrowing your brows and saying “Sixteen? Feh, I was hacking gibsons at four!”, let’s not blow the straight’s minds okay? For those of you who contest there are things you fit where it’s not supposed to go, sure, but those things aren’t necessary to build a working computer. You really don’t need to futz with pin configuration. You just have a much easier time if you can read manuals and aren’t scared to look at the motherboard.

Computers are everywhere now. In your cars and phones and TVs. In your coffeemakers and traffic lights and moms. One EMP pulse and it’s the end of days for us! Some of them are even on desks and are called “a computer”. And this last kind, the computer-computer, is so unimpressive and common now that it’s surprising if you don’t have one.

So, who’s the true Computer Guy?

The sad truth is that to your dad, Linus Torvalds and Pimple-Faced-Billy are pretty much the same thing. The thirty-year-old who lives in his parent’s basement and knows how to run scripts is just considered a lazy, deadbeat version of a professional software engineer to the mundanes. “Bob could be Bill Gates if he just applied himself,” Bob’s parents say to each other.

But that’s okay! Walk it off, True Believers. They don’t matter; They aren’t in the club. As long as we know how to sniff each other’s asses to figure out who knows their shit and who is shit, does it matter if people who don’t need to know don’t know?

For example: assuming you’re not a Sports Guy, don’t all sports guys fall into the same bucket to you? The 30 year old high school hero and the professional Sportsball player are both in a world that just doesn’t matter to you. One of them is a Rockstar who gets wide acclaim, and one is a scrub who never did anything with his life, but the stereotypical nerd will still throw them both into the same bucket dismissively.

So be proud, Computer Guys*! We are our own deranged clan in this cold, lonely world. Come out of the Server Room and embrace your brothers high and low. Then get right back to making snarky holier-than-thou comments on Slashdot at each other.


*And be glad you’re not a Computer Girl! They’re invisible to the rest of the world, and get waaaay too much attention from us.

“Could not open the requested SVN filesystem”

“Could not open the requested SVN filesystem”

Sometimes problems happen.

Sometimes problems happen when you install svn with apache 2 and dav.

Sometimes after installing all the binaries and editing your apache configuration file (and, naturally, restart apache), you get the following error:

svn: Could not open the requested SVN filesystem

Sometimes this happens.

Usually it means “lol, you need to chown/chgrp the repos to your apache’s user”. Usually. And because this is the usual case, that’s what all the googles I check suggested.

However, it bears mention that I’m, in fact, somewhat experienced at this point in Linux administration. I chown. That’s not even a pun.

The rub is that’s a catch-all for any read problems. The error in my case was “lol, you’re pointing to the wrong directory with the wrong directive, noob.”

To wit, I was using (in my apache configuration file):

<Location /svn>
        DAV svn
        SVNPath /repos/svn
#...
</Location>

…when I actually wanted…

<Location /svn>
        DAV svn
        SVNParentPath /repos/svn
#...
</Location>

I wanted SVNParentPath because it was a directory containing many repositories, instead of a single repository. How simple. Yet, while doing 2 am hungover-style administration, somewhat frustrating.

An aside about Linux paths and URLs

This conf snip is a good example of something I find frustrating annoying understandable-but-sometimes-confusing. Unix filesystem paths, like http urls, use the forward-slash (/) instead of the backslash (\). This conflation of slashing makes them look like each other in configuration files. This mainly becomes an issue for neophytes tinkering with apache for the first (and perhaps subsequent) times.

For example, in the above conf-snippets, the /svn refers to http://www.verge-rpg.com/svn, a Location defined in apache saying “hey, I exist to teh internots!”

Meanwhile, /repos/svn refers to a folder on the server’s filesystem. It can be easy to think, in this context, that something might be at http://www.verge-rpg.com/repos/svn on the internet.

Anyone with any small grasp of the nature of what’s going on in this task will be able to separate the two mentally, since here’s we’re trying to make a bridge between clients via the internet and the svn repo files on the server, but the slashy-syntax can lead to confusion. I know back when I was a young adminling unwrapping his first local development install of apache this stuff caused no end of heartache and strife.

Anyway, I’m not saying MS-style backward-slashes are better. In fact, they have their own brand of obnoxiousness in the form of unintended escape sequences. But in this instance, backslashes would highlight the difference between a webpath and a filepath.

This digression is what happens when someone likes aphorisms and being long-winded.

Installing awffull on debian

Installing awffull on debian

I wanted the sexy newer beta version of awffull (because webalizer is… awful… and hasn’t been updated since 2002 and keeps spiders in your stats and stuff).

Unfortunatly, this meant I had to not use apt-get for the first time in months.

Here’s a redux of what a debian user needs to do to get Awffull running local (assuming you have superuser privileges):


#
# grab the recent build, at the time of this writing: 3.8.1 b3
#
wget http://www.stedee.id.au/files/awffull-3.8.1-beta3.tar.gz

#
# untar it and gunzip it
#
tar -xvvzf awffull-3.8.1-beta3.tar.gz

#
# climb into the newly minted directory (for you neophytes out there,
# it'll be different if the version/filename is different)
#
cd awffull-3.8.1-beta3

#
# Now you need to make sure you have the libpng libraries installed.
# So as superuser we'll grab ALL of the libpng libraries...
#
sudo apt-get install libpng*

#
# now the GD Lib... which had a somewhat esoteric name for apt-get.
# I found this by running a debian site:http://www.libgd.org google.
#
apt-get install libgd2-dev

#
# Next was the perl compatible regular expressions library.
# The google for this one was apt-get "Perl Compatible Regular Expressions"
#
apt-get install libpcre3-dev

#
# You may need to also install zlib.  I didn't, as it's a very common library... but
# if you do, you can get it with this command
#
apt-get install zlib*

#
# Now we're in the home stretch.  Run these commands, and you should be golden.
#

./configure

make

make install

And if all went well, you’ve compiled a delicious build of awffull. The binary will be sitting in the src directory, (in this case ~/awffull-3.8.1-beta3/src ) and should’ve been already copied to it’s new home at /usr/local/bin/awffull.

You can make a symbolic link to /usr/bin/awffull from /usr/local/bin/awffull if you want.