call:0141 881 8915
email: info@moreclickmarketing.co.uk

Our Work

  • click to learn more about MCM-Hotels project
  • click to learn more about Ocean-Village-Reviews project
  • click to learn more about Find-that-Hotel project
  • click to learn more about Thomson-Ships project
  • click to learn more about Ninja-Battle project
  • click to learn more about Jolly-Soft-Toys project
  • click to learn more about J-%26-S-Painters project
  • click to learn more about MIG-Contracts project

Web Development Basics Part 1: The Tools

Note: This series assumes you are knowledgeable in HTML

vim editor and code

Web development is a fun field to work in, it can also be one of the most difficult to break into and it is not always clear where to start. While the industry may be fun, it is also very fast paced and you have to willing to learn and re-learn things constantly, there is always better and more efficient technologies and practices to adopt and research.

One of the most common questions about web development is “What is the best language for coding?” to which the answer is none. There  is no “better” scripting language, just more suitable ones.  While at More Click Marketing I mainly develop in PHP, it is fast, open source and free, I dabble in other technologies such as Ruby-on-Rails and ASP.NET.  The most important thing to learn isn’t a language, it’s how to program.

 

What is web development? what is programming?

Learning how a computer uses information and is able to control & manipulate it is a fundamental part of creating web applications or websites.  When humans think our brains use common sense to achieve the task quickly and what seems like to us as one fluent motion, you give commands to your brain but all that is in your concious mind is “do this entire task”, computers must be instructed at every step to complete a task e.g. your boss asks you to make tea you understand what you need to do and you can do it with no further instructions; whereas instructing a computer to make tea would look more like this:

  • prepare a cup
  • add teabag
  • if boss likes sugar: add sugar
  • check the kettle has water
  • if the kettle has no water: move it to the sink, fill it with water and replace it in the original position
  • switch on the kettle
  • while water is boiling: do nothing,
  • when the water is finished boiling, pour into the cup
  • while tea is less strong than boss’s preference: wait
  • when if reaches boss’s preference: remove teabag
  • if boss likes milk: add milk
  • stir the contents
  • serve – this is the result of the computer instructions

If you wanted to make 5 cups of tea you would have to run through the instructions each time and change the preferences for boss with whoever that cup was currently for,  getting a computer to repeat tasks without error is what makes them so valuable.

 

Great! I am still interested. What do I need to begin my web-development journey?

 

There are many popular setups for what we call a local development environment, a local development environment will allow you to run websites without a connection to the Internet, your computer does all the processing and behaves like a real website.  A local development environment consists of:

  • Operating System  – this means Windows, Mac, Linux etc there are plenty of operating systems and some developers use multiple OS’s for testing to ensure that their product will work in those environments.
  • Server SoftwareApache is the most common web server in the world this is the software that takes your program and renders the output(results) of your script/application
  • Databases Software – Not essential but if you want to repeat the same tasks effectively you need to provide information the computer can process, a database is a collection of data that your script/application can do the same thing to over and over again but yield different results because the input data is different e.g. a database of people in your work and their tea preferences would mean the computer program above would make different cups of tea depending on that users preferences(more on databases later).  A few notable databases are MySQL, MS-SQL, Oracle.
  • Text Editor/IDE – this is what you write your programs in, an IDE is a program written so you can develop and test a program in it and see it’s results, depending on the language an IDE might be a hinderance.  Text Editors come in all shapes and sizes and many support the languages by colouring different parts of the program, the one in the example above is vim which is powerful but has a very steep learning curve.
  • FTP Program – this is a program that moves your files from your local computer to a remote location that people can access the program and see it working live.
My setup is as follows:
  • Windows Vista for More Click Marketing development, Mac & Ubuntu(Linux) for personal development.
  • I use a program called  XAMPP(Windows) and MAMP as they comes packaged with the Server(Apache), Database (MySQL) and PHP
  • I use vim, coda, notepad2 and Dreamweaver, I like to switch it up now and then for a change, but vim & coda have excellent themes and make it easy to change the look and feel of your text editor.
  • I use smart FTP to put my websites live, but there are free programs that are just as good.

That is my introduction to web development basics part 1.  Next part will outlining how to set up an example environment.

August 18th, 2011 by | 4 Comments

4 Responses to “Web Development Basics Part 1: The Tools”

  1. matt says:

    Why are you capitalizing vim like that? Its vi (an old Unix text editor) improved. Xampp comes with MySQL as a DB backend, phpmyadmin is just a script for manipulating it visually. Why FTP to transfer when scp destroys it? I know this is for newbies but I think you’re doing them an injustice by not providing enough information or clarity here.

    • Liam says:

      Hello Matt,

      I have a really bad habit of capitalising vim as vIM, I always thought it would emphasise the fact it is improved. I am aware of it’s history but I don’t think the people this post is targeted to need to. I would rather use FTP over scp because FTP is far simpler, but thanks to your comment they now have the possibility to investigate these technologies. The phpMyadmin being a database was purely an error and I have resolved it and changed it to MySQL.

      Thanks for your input Matt.

  2. Deangelo Geraldes says:

    I’m sorry to bother you like this but I just came across your website and have to say it’s very professional. Something which I think would help you out however is the SEO Pressor plugin for wordpress. It is honestly the most effective SEO plugin for wp that is out there today. Within just Five days my website exploded from obscurity to the first page of google after using the SEOpressor plugin.

  3. [...] Development Basics Part 2: Setting Up a Webserver Last week in Web Development Basics: Part 1, I explained what the kinds of tools required to begin developing websites that can respond to a [...]

Leave a Reply

 

Testimonials testimonials icon

More Click Marketing provided a really professional service and I was kept up to date with the progress of my design.

J&S Painters

Fast service. I was using my website in two weeks and a week after that I received my first order for work. Websites look very clean, fresh and professional. I recommend MoreClick Marketing to everyone.

MIG Contracts

Twitter Updates twitter icon