Archive for Lee Aplin

Final Proposal

Project Summary

The main goal of my project is to produce all of the main elements required to build a small community based website. While my initial idea was to build a similar website/application to Last.FM, after researching PHP, and frequently using the website, I have decided that Last.FM is probably the leader in online music communities and would be extremely difficult to rival.

The website will hopefully be a prototype of an online music community. I would like to be able to give users the chance to sign up to my website and from their individual user areas, upload and share files, and discuss music. I have done a lot of research into online communities and how they function. The PHP is the focus of the site, and will take the most time to develop; whereas the actual HTML part of the website will take much less time to develop and I can put together the website in a short period of time. I would like to focus most of my attention on the development of solid PHP.This will also be beneficial to me in my final year project which will also be mostly based on functions which are made in PHP.

Target Audience/Users

The target audience of my website will preferably be music fans, possibly the same sort of audience of PitchforkMedia.com, or DrownedinSound.com. These websites are focused on music which is not generally in the charts, and have a very specific fan base. These users might be interested in such a website because Pitchfork and Drowned in Sound are mostly news websites, and do not provide much interactivity. This is where my website will differ, as it will give the users more freedom.

PHP Research

In order to understand PHP and how PHP websites are used, I joined many interactive web 2.0 websites. These include Myspace.com and Facebook.com, which are the two prominent current online communities. While these websites are two of the most popular web 2.0 sites (and possibly amongst the most popular websites online in general), they are by no means the only online communities.

A personal favourite is the music based website Last.FM. I have been a member of this website for over a year now and frequently use it to find new music and share my interests with other like-minded people. I think that this is a big factor concerning online communities; the fact that they can find a website specific to their needs despite what their interests may be. There are always like minded people, no matter how niche the subject.Popular functions of online communities tend to be the following:

·        The ability to add a picture or avatar

·        The chance to edit your own profile somehow

·        Being able to add other members 

Although this is just three functions, they appear to be the things that users expect when they join an online community. However, adjustments could be made for the fact that my site will be about music, as it will not necessarily be a social networking website.

Because I have spent a lot of time on Last.FM, I have a good understanding of the habits of the community. Music communities are different to the other social networking websites such as Myspace and Facebook, because activities are not as focused on chatting and meeting new people. Users are more interested in seeing each others musical tastes, comparing and sharing new music, and generally discovering music they would not have known about.  

Personal Goals 

This will be my first venture with PHP, and therefore I will gain all my experience with the programming language merely during this project. Due to this one of my main goals will be to create a working prototype of the website within the time limit. As previously stated, this project will help me greatly during my final year production project, which will run in the same vein. 

The first section of the PHP programming that I will focus on will be the Login section. Despite the fact that the tutorials for this are quite straight-forward, it is still a large part of the project, and testing this section will be very important. Another of my goals is to get the login PHP as close to perfect as possible so that I can reuse it again if necessary.  

A Gap in the Market? 

Although there are several different social networking websites on the internet, there are not many focused around online music. The website Last.FM is the leader in combining music and social networking, but as previously mentioned, it is very different from other social networking websites. I plan to make my site more like Pitchfork media in terms of the information it provides, but with a social networking feel to it, providing interactive content as well as letting the users have some control over their own user areas. I think that this could be popular because of the merging of two popular types of websites.  

Conclusion 

To conclude, I think that this project will be extremely useful to me in terms of learning new technical skills which are required to advance in the industry. I hope to greatly improve my knowledge of PHP, and become efficient in creating many of the elements used in online community websites. The final product should at the very least, be a partly working prototype of my community website, but I am hopeful that I will be able to take the website live onto the Internet and maintain it after the module is over.

Proposal (draft)

Below I will introduce the ideas I have had for my project. I will build upon these ideas in order to write the final proposal.

The main idea

My initial idea was to produce a website similar to Last.FM, the online music community. After doing extensive research and testing of Last.FM, I have decided that although there are elements of the website which could be improved or changed, there is not enough wrong with it to justify building a competition website. Also, I do not yet have the abilities to produce a fully working PHP website.

Therefore, my idea is to produce a more basic website, but still based around online music. I hope to produce a smaller and simpler online community, allowing users to create an account and hopefully upload music or files to share with each other. The main focus to start this project will be creating the user login in PHP. If I can successfully create this, along with the database required to make this work, then I will also consider making the website more elaborate, with other aspects of PHP included such as a forum.

Research 

Research into other online communities such as Myspace.com or Facebook.com have shown me which areas of online communities are most popular. The ability to interact, for example, is very important, as users tend to use the website more if there is more for them to do. User generated content is also very important. In social networking websites such as those stated above, most of the content is actually user generated, with the option to change photos, write blogs, chat to one another and share files or pictures. Due to the fact that I am new to PHP, I strongly doubt that my website will have these elements included, but any useful information I pick up on the way might help me to expand the website and include some of this interactive content.

There have been many different inspirations for this project. Obviously the main inspiration is Last.FM. I have been a fan of this website for over a year and frequently use it, and it has heavily inspired many of my projects. However, other inspirations have been websites which are not online communities as such. For example, Pitchfork Media is a music news website which provides up to date information about music as well as reviewing lots of new releases. I would like to combine this news element with the online community idea.

PHP Resources

Below is a list of PHP resources I have accumulated which have helped me in my understanding of PHP, and hopefully will help anybody else who wishes to pursue this area. Some of these resources are websites, and some are books. I will update the list as I find more tutorials and useful information.

PHP 5 in easy steps, by Mike McGrath – A good starting point, as mentioned in another post.

http://php.resourceindex.com/ – A portal site which gives links to hundreds of useful tutorials. Perhaps more useful to someone who has a basic knowledge of PHP, as I have found that beginners tutorials are often somewhat confusing.

http://www.phpbuilder.com/ – Another useful site for finding tutorials, with a good search facility leading to many helpful tutorials.

http://evolt.org/article/comment/17/60265/index.html – A great tutorial for a PHP login section with Remember Me features. Remember Me is a good feature to have on a login area and makes the users experience more enjoyable and easier. A more advanced tutorial.

PHP Project

After spending a couple of weeks looking into PHP in some detail, obtaining materials to help me get started, and getting all the necessary knowledge, I have decided that I would like to do my project in PHP.

I feel that I have a good base to work on for learning PHP, with good knowledge of HTML and CSS. I also think that learning PHP will be a good advancement of my skills. With more and more websites becoming increasingly interactive, users may feel cheated to visit a website which has no interactive content at all.

This experience with PHP will also be extremely useful to contribute towards my final year project which is a PHP heavy online community.

My idea for this module is to build a small PHP based website which will have a user login option where users can enter their own areas and upload material such as music or small files. This will mean I will also have to learn and gain experience using MySQL. As I mentioned in a previous post, MySQL has given my problems from the installing stage, but I hope that when everything is working properly, there will be less problems.

The subject of my website, I have yet to decide, but I think that it will be easy to base the website on anything I choose closer to the deadline. The HTML element of my website should not pose too many problems, so I am free to experiment with PHP a little more. This means I may be able to add small extras to my PHP script which makes the website that little bit better. For example, adding a remember me feature onto the login section makes the website easier to access for regular users. Small additions such as this encourage people to visit the site more often, as well as making the experience easier and more enjoyable for them.

My next step will be to further research online communities and see how they work, in order to begin planning my own project. Hopefully I will be able to lift a lot of the work from this project and save myself time in my production project.

Experiences with PHP and Setting Up

In the last couple of weeks I have started to research PHP in more detail in order to find out more about how I can make use of it in my future projects. However, so far, despite reading claims that PHP is as easy to pick up as HTML once you get past the basics, I have seen no evidence of simplicity at all.

Merely installing the programs required to use PHP is a gargantuan task in itself, and by no means user friendly. Although PHP is the most popular programming language because of its simplicity, I find it hard to understand how so many people could work out how to get it installed on their systems in the first place.

Code is required from the get go. To use PHP and test it on your home system, you are required to run a server in the background. Many people prefer to use Apache, which is what I have installed, but other servers can be used such as Microsoft Internet Information Server. Installing Apache was the first hurdle to getting PHP working, and it wasnt too difficult to locate and install. Get Apache from http://httpd.apache.org, by downloading the stable windows version. If you cannot find it, do what I did and type “apache-1.3.31-win32-x86-no_src.msi” into google. The first link that comes up should download the correct version.

The next part of the PHP environment to obtain is a database server such as MySQL . MySQL is free to download so it is a popular choice amongst web developers. I have had problems with this from the moment I downloaded it, and at the time of writing this blog I still dont have MySQL working alongside my server and PHP. MySQL can be downloaded from http://www.mysql.com, and the latest version can be found in the community download area. Again, MySQL is free to download and use, which makes it popular.

The final item needed is PHP itself. I downloaded PHP 5 from the PHP website. Actually finding the correct version is hard enough as the website is difficult to navigate and quite confusing. After eventually downloading a no-install version, I consulted my PHP in easy steps book to work out how to install it manually. To do this a file called PHP.ini needs to be copied into your windows folder, and then edited to contain several lines of code which make it compatible with Apache and MySQL. Tests can then be carried out by typing simple html code including some lines of PHP code, which determine if the environment is correctly set up.

Suffice to say, mine wasnt, and as I mentioned before, I am still having troubles getting MySQL to connect to my Apache server. Anyone who has any interest in learning PHP, I strongly suggest getting a book to start you off, which has clear instructions on how to set up the working environment before launching you into tutorials. The book which I have does this quite well, but it doesnt tell you how to correct errors if something doesnt work.

If you would like to check it out, its called PHP 5 in easy steps, by Mike McGrath.

PHP Introduction

PHP in brief

PHP is a widely used scripting language commonly used in web development, which is often embedded in HTML. Similar to Javascript and C, PHP utilises some of its own features to make it one of the more popular ways of making websites richer in interactive content.

PHP stands for Hypertext PreProcessor. It was originally designed as a way of organising material on webpages (in particular, the Resume of Rasmus Lerdorf, its creator) but soon evolved into a tool used by many web developers to make dynamic web applications. The popularity amongst developers helped PHP to quickly become one of the most useful scripting languages, and being open source, it is also more stable, with few bugs affecting it.

PHP has become considered one of the most important scripting languages on the internet at this time, and due to its popularity, over 19 million internet domains are now hosted on servers with PHP installed.

Lee Aplin

My name is Lee Aplin

I am a third year Web and New Media student at UCE, Birmingham. I am 22 years old and have been studying web design for about 4 years now.

My main interest is in Online Music, and I am hoping to develop a new music application or website, which can move the field of Online Music on somehow. To begin this project I will need to expand my knowledge of Web 2.0 and PHP.

The main appeal of Web 2.0 is the highly rich interactive content which it utilises. By giving the user the opportunity to fully customise the appearance of pages on the website, the overall experience is more rewarding and personal. Websites such as Myspace and Facebook are particularly popular, and execute this interactivity very well.

My biggest inspiration for this is the online music community Last.FM, and I hope to develop something similar to this, but also innovative or different. While Last.FM is very good at showing people what music users have listened to, and linking people with similar tastes together using the Neighbour function, there are things missing from the website which I think could give scope to a competing website of similar nature. I plan to expand on these ideas in the coming weeks.