Showing posts with label website. Show all posts
Showing posts with label website. Show all posts

Monday, 19 November 2012

The neverending awesomeness of Indiepop Eyespy

Days have past, hundreds have died elsewhere in the world, but still I keep on hammering away at my keyboard. I keep on pushing, keep on fighting for something I believe in, something I've fought for for years, and that is Indie Eyespy.

Here try this
London Indiepop Eyespy

What you've got there may look pretty basic, but under the hood I've pushed the envelope of my skills. Its got html, JavaScript, php and MySQL.

It even looks pretty good when you view the source.

The list of bands and band members comes from a database that's 5 Normal Form, so the same person can be worth more points depending on what band they're in.

Now I just need to add a few more bands, and use the magic of CSS3 to make it look pretty.

And also do something slightly different for dealing with scenesters, promoters and DJs who aren't necessarily in any bands.

And then maybe I can work on adding a highscore table, and maybe a page to add new bands and band members, and then a special thing that looks up how many listeners each band has on last.fm and splits them into divisions based on how popular they are.

Thursday, 15 November 2012

Order of the day


I've given some thought to what order to have the bands on the London Indiepop Eyespy website, this is another form over function problem.

Its got to be easy to use, easy to find the scensters that users want to claim points for.

This suggests alphabetical order for all the bands. This wouldn't be a problem if there were only two pages of bands. But if we're listing band members, that would be less than ten bands in total.

Besides, from my experience with the Skilmo site, people don't really want to work through a long list of bands, it puts people off using the site, their attention wanders and I've lost a scenester.

Back in the dusty days of Glasgow Indie Eyespy, the hundred or so bands of the Glasgow indie scene were split into about half a dozen divisions based on popularity, so in the premiership you'd find Franz Ferdinand, the Belles, the Obscuras, the Mogwai, in the first division you'd find the Felt Tips, The Plimptons, Wake The President etc. Scenesters could intuitively know where to look for the bands.

Which divisions the bands were in was a carefully calculated algorithm based on last.fm, technorati and MySpace data, but those vectors aren't really appropriate this decade for the twenty or so London Indiepop bands.

Sure I could work out some kind of popularity rankings, but having bands in divisions doesn't look nice if all the band members are listed. Alternatively, the site could list the bands and then expand to list the members once you've clicked on the name, but that's not very satisfactory.

I'm having real doubts about the viability of the website at this stage, I can't envisage people using it.

Doubts aside, if we look at the sort of sites I'm hoping to ape, like Last.fm and Songkick, they don't have alphabetical lists of bands, they intuitively know what band names you want to see, they don't have lists that you have to wade through.

So, with the tools I have available, what would Phil Cowans and Gideon Bullock do? What would Russ Garrett do?

Something like this?

Wednesday, 14 November 2012

Getting all Fifth Normal Form on your ass


I've been reading up on database normalisation and thinking about how the London Indiepop Eyespy website would work.

Data normalisation is incredibly interesting, but not quite as important as what the site looks like, form dictates function here.

In the original pub game of indie eyespy, you'd spot a band member then look up how many point they are worth.

There's Stuart Murdoch from Belle and Sebastian, four points!

As many of the bands are quite obscure, it would be less likely that you'd know the names of band members, but you could still get points for identifying the person.
There's wassisname the drummer from Camera Obscura, would be worth the same as correctly remembering his name was Lee. Although, if playing indie eyespy competitively with friends, the person who get his name would claim the points.

So here we have the dilema for a website, what should it list:-

  • Check boxes for each band member by name for each band
  • Check boxes for numbered members for each band
  • Text box for number of members spotted and leave the rest to banter

With the limitless possibilities of computing power, I'm tempted to go for option one, and make life easier for folk who can't remember names

As bands evolved and lineups changed so did the way points were allocated, for example spotting Gav from Camera Obscura would get you three points, but if you instead noted it was Gav the bass player from Stabiliser, it would be five points. However, you couldn't then claim eight points for identifying him as playing in both bands. You only get points for one person once.

So the website would need a way of dealing with the same person in many bands.

With the Skilmo website, this sort of problem was easily resolved when it processed the checklist page, each skill was only logged once, for example tunisian crochet only counted once if you clicked it in both the textile arts category and the crochet category because the program ignored categories when logging stuff.

But with indie eyespy, because of the different points values this isn't possible, and rather awesomely, this is precisely in what 5th Normal Form is about in database normalisation theory.

On the database side of things I'd need three tables:-

  • List of people and their nominal point values
  • List of bands and their points values
  • List of which people are in which bands

Then every time the website is accessed a list is constructed by SQL of bands and their members and points values.

Then with PHP an html page is generated which displays this list, with form checkboxes and also generates so neat JavaScript which greys out people who play in different bands when you select them.

Then submitting this form should post a list of people and their points values.

The next page would get a list of the people in the database, and run through the posted data, tote up the score, and log the score.

That seems to work in my head.

Of course the list of names will be normalised with id numbers to cover for there being more than one person with the same name, and same with the list of bands.

The list of bands also needs a status column for whether a band is currently active, on haitus or split up. Cos, of course, active bands are worth more points than bands that are on haitus, but not as much as a band who split up in 1989.

And the list of which people are in which bands needs a column indicating former band members. Because, as I'm sure you understand, spotting the original guitarist from Pocketbooks is worth more points than the current guitarist.

Tuesday, 13 November 2012

The mind-boggling complexity of a London Indiepop Eyespy Website


After the frankly unremarkable failure of my last website, despite our best efforts, I'm unable to persuade people to sign up, I've decided to devote my labours towards creating a dynamic London Indie Eyepsy website.

I don't need to remind you that the basics of London Indiepop Eyespy involve awarding yourself point for spotting well-known Indiepop music scene people at gigs and concerts in London.

At first I figured it would just be a static list of bands and scenesters with check boxes and I could re-use the old php code from my skilmo website. I know where I am with php and a nice MySQL table.

But the more I think about it, the more mind-boggling it gets.

Part of the joy of the original game was that extra points could be gains using various multipliers, for example you get extra points if the person you've spotted is wearing a hipster stripy top, or if they're shopping in Lidl, or double points if you assault, sleep with or have sex with the spyee. There could be different point value for people depending on which band you identify the spyee with, for example, Dan Chapman from Pocketbooks may only be worth 2 points, but Dan Chapman from Hot Booth would be worth 5 points.

So, to do a dynamic check-list where extra lines appear for checking off several band members, or with the stripy top and sleeping with multipliers as more check boxes or radio buttons  this would use JavaScript, which looks straightforward. I've never used JavaScript before, but after a cursory glance at online tutorials it doesn't seem too challenging. A little challenging maybe, but not too much.

However, my mind boggles when I try to figure out how to create a webpage that behaves correctly with Dan Chapman. How do I make it so if you claim your points for seeing him in stripy top as Pocketbooks bass player, you then can't claim points for him as Knickers bass player, or Hot Booth, One Fathom Down. I'm going to need to use php to generate JavaScript that creates check boxes that behave as radio buttons across almost the entire length of the page.

Or maybe the check boxes remain as check boxes but become greyed out when you chose one or other of them.

Then again, maybe starting with a list of bands and scenesters is the wrong start point, and instead the site relies on a list of people, and their band affiliations is on a separate table.

I'm uncomfortable with this.

Even back in the pre-London days of Glasgow Indie Eyespy,  where the scene was much richer and more diverse, the game was pretty much a stalkers charter, where the proximity of creepiness and fun on the indie eyespy spectrum could be easily laughed off or obscured. In London Indie Eyespy, the scene is different, whilst Dan Chapman is a ubiquitous figure in the scene and a great example a few paragraphs above, actually mapping all the bands that various people called Emma are in so that anyone can stalk them in supermarkets makes me uncomfortable.

Imagine, if you will, that I recreated Facebook, not all of it, but your Facebook newsfeed and that of most of your friends, and I did without any input from you. Its clearly at the wrong end of the creepy/fun indie eyespy spectrum.

And so likewise creating a list of people and then mapping with bands they're in, and have previously been in, thats still drifting towards the awkward end of the spectrum. Especially on the lowest levels where playing on stage at The Wilmington Arms is a small step from playing in your bedroom.

Very easily someone could take it the wrong way and demand their details to be removed from the site. There's no way to take into account people's desire for privacy if you're starting from individuals rather than starting with bands.

Back in the early days of Last.fm and Songkick, there was correspondence online of bands complaining that they were listed on the sites despite having not signed up themselves, and it had to be patiently explained that if you're in a band with music to be listened to, then the listening experience belongs to the listener, whoever they maybe.

With Indiepop Eyespy, getting points for spotting Dan from Pocketbooks is one thing, but getting points for spotting Sandy in the supermarket is another matter entirely.

I was at a gig the other night, at Power Lunches, and I saw Katesby, she's a popular scenester. We go back a long way, about 420 miles and half a dozen years, but being a shy sort of chap, I didn't say hi or anything, I just lurked in a corner listening to the bands on stage and concentraing intently on my Samsung Galaxy S3 LTE. I just didn't feel comfortable saying hi, I don't think she saw me.

Maybe that makes me anti-social and a little bit creepy, or maybe its an inherent character trait that's made me the man I am today. Its the same thing I referred to the first paragraph of this blogpost, and its the inherent fallacy in constructing a London Indiepop Eyespy website.

Never the less, I'll have to go and read up and fifth normal form database normalization and see what works.

Wednesday, 7 November 2012

I am a female Goffin’s cockatoo

Thrilling progress is being made on my awesome internet start-up website thing.

This is the main page, this is my profile page and this is where you can register all the skills what you can do and open an account.

Elsewhere on the internet a parrot in captivity has started to manufacture its own tools. Its pretty awesome as we already knew that crows and jays could fashion tools out of bits of wire, but this is the first time its been seen in a parrot.

The bit that interests me most in the story is about Heidi, a female cockatoo in the same cage:-
Heidi, the bird in question, attempted to insert sticks into the enclosure, as she had seen Figaro do. She did not, however, adjust their sizes or attempt to manipulate them once they were on the same side of the wire mesh as the nut. Perhaps if she had been given more time to observe Figaro at work (he chased her off), she might have had a greater sense of how to use the sticks.
Me, I love watching people do things I can't do, and then having a go myself. Its just in my nature to want to try everything.

The past days and weeks have been fraught with the website. I've been learning how to do stuff in php, then once it works, I show it off to my nearest and dearest who just don't seem very impressed, and I don't understand why not.

For example, the checklist page was a huge list of all the skills on the database, I could image people slowly working through it checking off everything they could do, bias knitting, chainsaw carving, programming in FORTRAN, getting little stabs of joy when they learn about the existence of a new skill that they've never heard off before, like punch needle embroidery.

I couldn't understand why no one was registering on the site, why no one was working through the list of 300 or so skills?

Luckily, thanks to some good constructive feedback, I've changed the checklist page so all the skills are in categories, and you can just pick the one you're interested in. Rather than having to read through dozens of random ones that you're not interested in.

Its so obvious, but it didn't occur to me the first time round.

Me, I'm like Heidi, learning new skills. But I'm better than her, with a bit of practise I get better and get it right.

So, the next bit of the site that I'm working on is how it deals with images that have been uploaded by users. I'll let you know how I get on. Awesomeness all round!

Saturday, 20 October 2012

Its alive!!

Crikey, I gotta say I'm surprised, but it was only a few hours ago that I'd figured out why my first forays into php had failed and now, now my skills website thing works.

Its all functional. It even has a background color!! I know!

Its still a work in progress, so don't get your hopes too high. At the moment it consists of two sections, the skill directory and the checkbox page.

The former is a crappy encyclopedia of skills, crafts and hobbies which are all linked together with tags, you can start navigating around from this page. If you click on Graphic arts, it'll take you to a brief description of the category and a list of the various types of Graphic arts, then if you click on one of those you'll get a more indepth description and a list of other associated tags.

The checkbox page is a list of all the skills in the database, you can check of the ones that you can do, then when you click the button at the bottom of the page, it logs all your selections with a random ID and counts them and presents this as your score.

There's still a long way to go, but it works, and I'm so proud, feel free to play around, its pretty robust.

Please don't tell other people about it yet.

Here's a list of features and pages I need to add:-
  • statcounter code in the page footers
  • sort out header and footer in all pages
  • a home/index page with statistics (most popular, least popular, untried skills, average score, median score)
  • an about page with me rambling
  • descriptions for all the the skills
  • statistics about your score
  • better ordering of skills on checklist page so its more intuitive
  • most popular skills on taginfo page
  • my own photos for skills
  • auto re-size photos
  • discipline page which calculates which tag are subdisciplines
  • scoring system based on popularity of skills
  • your score for each discipline
  • page to add new skills and tags
  • page to delete skills from all tables
  • page to delete photos
  • page of database errors like skills without descriptions, tags without skills, etc.
  • logos and stuff
  • amazon affiliate links to instruction books for each skill
  • links to tutorial websites for each skill
  • recommendation engine.

Wednesday, 17 October 2012

Further adventures in php and GeekSkills or whatever

Something unseen grabbed my throat and dragged me to google, my fingers danced over the keyboard and searched for php tutorials. Before me, on my screen, the aborted php script for my websitey idea appeared and my eyes were drawn to a typo.

I had spelt html wrong.

No sooner was it corrected, and ftp'ed across to chrisgilmour.co.uk, and it worked, a few lines of my database appeared in my browser, summoned from MySQL by my php script.

And so it began once more, resurrecting my ambitions and dreams of winning the internet with an arty, crafty, etsy, songkicky website.

I came up with a new name for it too, instead of GeekSkills. I needed something that wasn't in any dictionary, a new word that sounds a little like arts or crafts or skills. I came up with 'SKILMO', like more skills, but also like half hearing someone call my name.

Anyhoo, here are three pages I've crafted for the site:-

List of Skills - this is a list of all the skills on the database, there are hundreds of them
Skill information - this is the description and associated tags for one of the skills
Skills with a specific tag - This is a list of all the skills that have a specified tag

I want it all to work first, all the php, sql and MySQL stuff working together before I try to make it beautiful.

My next task is to make it so when you click on a Skill on the first page, it brings up the Skill information page for that skill.

And then some kind of form page where you click checkboxes for all the skills you have and crafts you can do, then it gives you an arbitary score and secretly saves your skillset.

Monday, 28 November 2011

CrimeTube.com and that woman being racist on the tram

Earlier today there was a tweet by Old Holborn on that twitter about the latest viral video, a woman having a racist rant on a crowded tram somewhere near Croydon. As is the norm these days the YouTube video became a news story and at around 6pm the BBC were reporting that the woman had been arrested. Some on twitter were calling for her kids to be taken away.

Anyhoo, as I am a completely normal user of the internet, well versed with porn websites, I've had this ace idea, a video website like RedTube, YouPorn, PornHub et al, but with youtube videos of people committing crimes. Viewers can submit ones they've found on YouTube, and people can watch and rate them. Then at around 6pm every day, the police can arrest the subjects of the top five most 'popular'.

It would be the greatest website since Hot Or Not. Everyone loves watching miscreants and rapscallions, remember the spectacle of the London Riots, now imagine a whole website of that sort of compelling footage. We may never again need the BBC or ITN for our crime porn.

Sure there'd be tawdry stuff, like burglary and assault, but cos its all ranked by views and ratings, the important stuff, like cat-trapping and racist rants, would float to the top.
Luckily the url crimetube.com is still available, but I can't do it, I've got no idea about websites, but anyhoo, I claim this website idea first, just like in that xkcd strip.