Tuesday, 28 June 2011

I am starting to have real trouble with the BBC and their editorial staff, being British they are pretty much the de-facto source for news for vast swathes of the British public, indeed within my rather large extended family I have never known a national event to be watched on ITV.  It is always the BBD one reached for in time of need.  The death and funeral of Princess Dianna, the World Trade Centre Attack, the recent Royal Wedding, even the archives I've ever watched are of BBC source.

So, why is it that such a megalith, this pillar of our information community are publishing such utterly wrong statements, bad spelling, implausible grammar and just plain bad typographical mistakes is beyond me.

I'm just a blogger, I'm just a bloke in an office, but I sit and read these little short articles from the BBC and I'm amazed at how many mistakes, of all kinds, there are in them.

Here's one from today.  An interesting historical piece, I believe written by jobbing historian Dan Snow.  As the son of the man famous for his opinion poll swing arm during election nights you'd think Dan would have a grounding not only in history, but in even mindedness, but it seems he's slipped up... he states... and with the BBC logo above him this might become de-facto information used by other sources (who knows by someone's school report or a project) he speaks of the Spitfire fighter from World War II and states:

"Its [the Spitfire] design was so advanced that it became the only fighter aircraft in WWII that served on the front line from the first to the last day of the war."
What utter poppycock, other fighters faught throughout the war and had arguably the same basic design.  The Messerschmitt 109 for example, fought as part of the Luftwaffe and their Condor Legion in the Spanish Civil War right through to the fall of Germany and beyond with other nations.  You might say "ah, but there were many different models of the 109... yes, yes there were... and just as many different models of the Spitfire, the MkI Spitfire of 1939 was certainly not the model being flown by Ronald Wolfe when it crashed in Ireland.

So, Mr Snow has mad a cock up there, big deal you may ask.  And I do ask, who vets, or more importantly veto's these statements?  It seems Auntie's favourite internal activity - censure and correctness - has been forced roughly into a back seat with the dawning of this our new digital information driven age.

And what's suffering?  All the things the nay sayers and technofeebles of the past said would happen, peoples spelling and attention to detail is getting too fleeting, too transient.  And I for one don't think that's a good thing.

Maybe its just me, as I'm on a personal drive to improve the standard of work I produce professionally, but if I can aim higher than usual surely people like Dan Snow with the BBC as their sounding post can aim that bit higher too.  Check your facts, proof read make your statements concise and contiguous.  And for goodness sake make sure what you've written is worth reading... I don't have to bother, I'm just a blogger... but maybe I should care...

Saturday, 18 June 2011

Online Spelling....

I'm aware of their being a very varied, and a very international, bunch of folks on the internet... but I'm worried about us, about all of us out here on the interwebs... our spelling.  Sometimes the speaker/writer has been of a foreign (to myself a native English speaker) so I have forgiven them, as they should forgive our trespasses against them.  Examples have been extracted from sources such as YouTube posts, Forum posts and e-mail archive lists.  They have also all been used more than once, they are therefore judged not to be typing mistakes but are literal intentional uses of the given word.  Please also bare, or indeed bear, in mind all the following examples are by people who are above 16 years of age, are of at least average intelligence and whom are all native English speakers.

Epersods... Episodes.  (This one was pointed out to me by someone looking for an old TV show on YouTube).

Kayos... Chaos.  (Gah, this comes up so often).

Obergene... Aubergine. (This guy was complaining about Tesco not having any in stock... I don't blame Tesco for this one).

Segway... Segue.  (No he wasn't talking about this giro-stabilized scooter).

Inglond.... England.  (He could have said UK, but then maybe that'd end up as US... but then, we are already the 53rd State).

Intergestion.... Indigestion.  (He must not work for Gaviscon).

Farter... Father.  (This chap clearly was trying to make a different point than he did with 'my farter used to make me breakfast every morning').

Amareican.... American.   (This chap listed his world location as Chicago, and used the spelling no fewer than thirteen times in his forum post).

Disclaimer: No Dictionaries were hurt in the production of this post.

Friday, 17 June 2011

Natural Selection of Elitism Online

Being a long time game player and now considered a veteran of the internet age (having been online in one form of another since 1994), not to mention being a programmer by profession.  I've come to the conclusion that computer games, like World of Warcraft, World of Tanks and even Starcraft II are becoming a Darwinian style battleground naturally selecting for the most obnoxious, self-righteous, selfcentered, dictatorial, demanding elitist jerks.

Its been many moons since I was a competitive player in any online game, not because I can't dedicate the hours, not because I'm shite or have a crap PC.  I'm in fact tooled up to fuck and have been a member not only of large successful WoW raiding guilds but also been a member of a Top 10 placed UK Clan playing the Day of Defeat FPS.

Years ago I played these games and the impact others had on me was minimised, either through the fact that games weren't very social, or that if push came to shove they were communities of people who knew one another.

But, with the vast numbers needed to sustain raiding, with the vast numbers needed to prop up the chosen few I believe people are turning the idea of an online community, which by tradition has always been free, into a money making idea.  But acting snobbish, by being rude, by basically forcing their will on others.  And these are the jerks, the ones who either think they are the community, or whom actually do pull the strings behind the green curtain.

And all these people, in my experience, are just as rude, annoying and selfish as I am describing, they have to be to keep order, they have to be to keep themselves in power.  It's all becoming rather like the playground bully mentality, each day you log onto your game just to make sure there is a clan/guild channel into which you can say "hi".

So why are these people running their own little universes behind games?  Well, some are clearly doing it because they want to be part of the game itself.  Certainly that's how things were around most all half Life modder communities paying DoD and CS.  But, now-a-days their seems to be other avenues... such as money making.

With the advent of gold buying/selling, with the advent of accepting paypal (for example) donations often clan leaders are pushing their members to make purchases (in such games that allow purchases - e.g. World of Tanks) through certain suppliers.  They even sometimes barefacedly ask for money.  Sometimes one can understand this, such as clans needing to run voice servers.  But with the cost of servers and bandwidth out there being relatively low what is going on behind the scenes?

I have an example (which I am allowed to share with you, so long as I keep is annonimous) where a player of a game was a member of a large guild.  They wanted a certain item from a certain boss, and had been with their guild for sometime trying to raid and receive the item. They had the points needed to claim it, and to their viewing they had put their time in, been a social member of the group and had earned the right to say "hey, i have the points, I'd like that item".

You know what the loot master said to them?... $50 and its yours.  And you know what... my friend sent him the paypal transfer... and the guy never gave the chap the item.

He has sinced stopped playing that game, and like me is in MMO limbo.

That is just one example of how bad situations can get; and for a gamer that chaps story brings him out pretty low.  At the end of the day he's stopped playing that game.  Yes he did something stupid, he did something crazy.  But he did it out of desparation, to turn the hours upon hour he'd sunk into doing nothing (aka playing this game) mean something to him.  That time meant nothing to me.  It clearly meant nothing to the guy in charge of the looting that night.

But it meant something to the player, and it means something to the game providers bottom line, because that chap has stopped subscribing to that game.

So, I wonder whether there is not room in the MMO space for a game which does away with the seeming law of the jungle that is the current social interaction channels.

An example of that need came up long ago (some what tongue in cheek) but during the fiasco which was Perpetual Entertainment going bust and the rights of Star Trek online being passed to market.  There was an MMO live blog, reported at the time by the great Jeff Green.  It was fun, and one chap was reported to ask whether him being who he was (i.e. a Star Trek officianado - aka nerd/geek/whatever) would equip him to survive better in that game?  The answer upon release was a resounding "NO".

However, that person sounded slightly above average in intelligence, he sounded like he had a select group of people with whom he would end up playing Star Treck Online with... I wonder which way his group went?  Elitist Jerks, or nice guys?  Which way did their jungle drive their social interaction in that game?

Because that is the other selection pressure on these Elitists, it feels to me that the younger they are, the more then want, and the more they want the faster they want it... this is maybe a good explanation of the current generation of Teenagers out there... consequently though this speeds up the elitism.  Because whenever something good arrives, say an item drop, they want it before anyone else can have it.

So, why do I bring this all up?  Well, I've just been thrown out of a clan.  Well, when I say thrown I mean, when I logged on last night I no longer had the clan tag after my name, and when I went to the Forum - the place to talk about the game - I was told not to ask... Pretty arrogant if you ask me... And the only reason they can get away with it is because I'm just a name, just a bit of text on a screen, I am nothing to their every climbing the ladder of achievement, I am a rung onto which they can stand.

And you know what, I don't like it.  I'd prefer to stay at a low/mid level at something than to tread on someone else to climb higher.  This is true both in games and in real life.  Unfortunately I am in a minority... but hey ho, lets see what the next half of 2011 brings... might there be a new game out there with a more be and do, than achieve and go, mentality??

Monday, 13 June 2011

Step by step: setting up SVN Server on Ubuntu Server 11.04

Update (May 2012) - You can find a new fuller tutorial on this blog here.

So, I've been playing about with setting up SVN quickly and semi secure on a Ubuntu server recently.  SVN, because I don't mind it as a server technology, it has its benefits over nothing, and it of course has its own faults compared to other source and revision control software.  Indeed, its major selling point for me was simply that I have been using it commercially at work for the best part of four years.

However, previously I've always set it up on Kubuntu, with KDE to help me out, what became apparent recently (on my Dell servers) was that I had no GUI, I needed to get back to the command line to install this software.

Also some of the examples out there on the Internet already make a real mess of using CHMOD and other tricks to move the folders around, and some of them reference htpasswd2, when you need to use htpasswd2 on Ubuntu Server 10.04 and above.

So, here are my set of commands, each with a little blurb about them, to help you use just the command line on Ubuntu Server to set up SVN via Apache2.

1. Ubuntu Server ISO (on CD or DVD) to install onto your server or Virtual Machine.
2. Internet connection.
3. If you want to use SSH to lock your noisy server in a cupboard and administer it from a PC get Putty and follow step XX below.

Set the server up
Install your server.  I chose Ubuntu 11.04 64bit for my machines and installed from a CD.  I set it up as I wanted, the only thing I did was when prompted to choose to install LAMP or Apache etc etc, I chose nothing, I just started from the blank server.

Hmm looks like Visual Studio stuck a comment into my screen shot - ignore that,
make sure you have nothing picked in the DOS looking terminal style text.

Also, remember to set your password and username for root... and at this point... make sure the root password and username is NOT going to be one of the usernames which can access SVN [that's just a bit of basic security common sense].

So, my root for this demo has a username "mega" and my password is "maniac".

Once your server is up, and you are presented with the log in prompt come back to the sequence below.

Set up SSH
Log into your server, physically in front of it, so i type "mega" and then "maniac" and I get into the prompt, and the first thing I need to do is install the SSH server, so I can get to the machine over the LAN, or WAN.

Now, I don't want this service to automatically start, so we're just going to start is here once its installed.  So, to install the open SSH server type:

sudo apt-get install openssh-server
This will tell the system to act as the super user to use aptitude to install the package we want.  Type that in and when is asked for the sudo password for your root type in your password, so I now type "maniac".

The system will remember your sudo password for a short while now, so for the next few commands you won't be asked for the sudo password, but after that duration you will start to be asked for the sudo/root password again.  Don't worry, this is normal.

Once you've entered your password the system will go out onto the Internet and look for the open ssh server package, for me this tells me it needs to download just over 1megabyte of data, so I select yes and let it complete.

Once that is all complete, you need to start the server with the command:

sudo /etc/init.d/ssh start

When it is complete you should see the message:

* Starting OpenBSD Secure Shell server sshd     [ OK ]

If not, then you'll need to go out onto the Internet and see who can help you.  But if you're lucky enough to see the "OK" its time to exit from your shell in front of your noisy server, close the server room door and nip up to your quiet PC somewhere else.  Before you go though you may want to use the command "ifconfig" to tell you the IP address your new server is on.

So, once you're back at your desk, you need to run an SSH capable terminal program, I prefer "PuTTy" from http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html because you can scroll up and down in your prompt window, where as from the actual machine you'll find stuff disappearing off the top.

So, fire up the terminal program of your choice and connect to the server SSH server you set running.

Installing Apache & Subversion
Now we need to install the three packages which allow us to use and host SVN on the machine, these are SVN itself, Apache2 as our web server and the library to link apache to SVN.  So type:

sudo apt-get install apache2 subversion libapache2-svn

This should be just shy of 18 megabytes in size, depending on your situation, so let it complete.

Now, fire up a web browser and just check the apache server is running, you should have seen "* Starting wen server apache2   [ OK ]" scroll past, so we'll just check.

Type into the browser address bar "http://" and the IP address of the server and hit Go.  You should see the standard "It works!" message from apache2.  If not, well something went wrong, again I'm not trying to trouble shoot for you just show you a way that works, and has worked, multiple times for Ubuntu Server.

Create your Repository
The next thing we need to do is set up the subversion repository.  Lots of other tutorials and examples on the internet recommend putting the repository in strange exotic paths, which require CHMOD and alsorts of stuff being performed on the folders to give Apache access to them.  We're not going to bother with that, we're just going to stop the folders being accessed from the browser by NOT creating our repository in the www folder.  Don't ever do that!

So, now create the repository with:

sudo svnadmin create /svn

This will create our svn repository in /svn off of the root of the disk.  Remember that path, we'll need it in a moment.

Set apache to host Subversion
Now we need to edit the apache2 module which points to SVN for us to point at this new repository.  So we need to do some editing of text, other places use other tools, but I prefer nano as my text editor.

So, lets edit the first file, which is the config file:

sudo nano /etc/apache2/mods-enabled/dav_svn.conf

And it should come up looking just like this:

Now, the lines of text in this file can be "commented out" by adding a # at the front of them, as you see everything in this file is commented out... so we need to uncomment some lines by removing the # from the front.

So the lines to uncomment are:

< Location /svn >
DAV svn

SVNPath /var/lib/svn

And with this path line, change this to the path we created earlier.  So I'm changing mine to read:

SVNPath /svn

The next items to uncomment are:

AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn.passwrd

This path for the user file is important, it is the file to the list of users able to access your repository, so we'll be using that in a moment!

And the final things to uncomment are:

Require valid-user


< / Location >

(Ignore the spaces in the / Location stuff, they're only there as blogger thinks they're tags in the HTML)

You may see the Limit Except items around the require valid-user, I however am putting my SVN on the Internet, so I do not want to allow anonymous read, I therefore just want all users no-matter what they do, to have to enter their username and password.

So, with all that edited, you need to press "CTRL+O" to Write out the file in nano, you'll be presented with the filename you are writing, press enter if it is /etc/apache2/mods-enabled/dav_svn.conf.  And then press "CTRL+X" to exit.

Create SVN Users
Next we need to create at least one user who can access our repository.  So back on the command line again we need to type:

sudo htpasswd -cm /etc/apache2/dav_svn.passwd < USERNAME >

Where the "< USERNAME >" is the username they want, it will then ask you to enter a password for this person twice.  Remember, make this password something different to your root/sudo user.  For my SVN this is "svnguy".

sudo htpasswd -cm /etc/apache2/dav_svn.passwd svnguy

The parameter -cm means to "Create" and to encrypt the file as "md5".

Later, if you just want to add a user do not specify the "c" flag, as you do not want to create the file again, you just want to encrypt the password file, so you do:

sudo htpasswd -m /etc/apache2/dav_svn.passwd < USERNAME >

Restart Apache
Lastly we need to restart Apache, so type:

sudo /etc/init.d/apache2 restart

Finally, check its working
Now, we need to check our repository is working you need to jump back to your browser and where you had "http://" you need to add /svn onto the end of the URL.  You should be prompted for the secure logon, so enter one of the people you added with htpasswd and their paddword.  And voila, you should see your working SVN server ready for you to checkout and add code to.