What classes you should pursue for a career in web design

I have been teaching technology classes for a local college for over 9 years now. Each semester, I have students asking me what classes they should pursue to for career in web design. This is not easy question to answer without talking about front-end web development and back-end development. I am writing this article in hopes that I can remove the confusion for those of you who have an interest in web development.

What you need to know is that there is front-end web development, this is what the user sees when they go to a web site, and back-end development, which is programs running in the back ground of the web site.  Fact is front-end development is referred to as client-side and back-end development as server-side. When you hear, someone talking about a static web site they are talking about front-end environment, with no server generated programs. You can look at this way, there no moving parts. The site does not change.

What I tell my students is to first learn HTML, then learn HTML5, after you catch onto HTML5, move into Cascading Style Sheet (CSS), then make the move into learning JavaScript. What happen is that along the way of learning HTML, you will fall into learning HTML5. The same is true when you learn HTML5, you will start to understand CSS.  You should know that JavaScript can be both used in front-end development and in the back-end environment.  JavaScript is an object-oriented language, used to create some action or interaction between the user, and the server. You may hear this action ref to as event.

An example of this is when the user fills out an online form, and submits that form, the information is collected into a database such as MySQL.  For back-end development, you may want to learn, in this order, Python, Ruby, and MySQL. Many students go from JavaScript right into MySQL without any problems.

I understand that this may generate some questions from some? Like what about ASP, or PHP ?  One of the reasons why I am advocating these programs or languages is that technology changes rapidly.  What is popular for coding today may change within a year or two, or it seems that way.  Learning HTML5, CSS3 and JavaScript will give you a great foundation to start working in web development.  You need to understand that you will always been learning new programs throughout your career in web design.


Plugin Manage did not install for Notepad++

Working with a student we discovered that Newest Version of Notepad++ will not install the Plugin Manager. Installing the older version of Notepad++ Version 7.4.2 fixed the issue. So go to Notepad++ under Download install v7.4.2. DO NOT install v7.5


I encourage my students to install the following Plugins for Notepad++.

Install the following Plugins using the Plugin Manager under Plugins/ Plugins Manager/ Show Plugins Manager

Check and install the following:

  • HTML Tags
  • ImgTag
  • Preview HTML
  • Quick Color Picker ++
  • Webedit

Installing Apache2 Server, MySQL DB, and PHP on Ubuntu 14.04

First thing we need to do is run updates, so login as root.

sudo apt-get update

Second step is to install apache2

sudo apt-get install apache2

Test apache2 server

To see if apache2 was successfully installed

Open web browser and type in 127.0.01

Note to view IP address and local loop back address run ifconfig

You should see Apache2 Ubuntu Default Page

“It Works!”

This maybe the best time to go over with you stopping, reload, and starting apache2 server.


To start, reload or stop apache2 server.

There are couple different methods to doing this. I like and want my students to use;

sudo service apache2 stop

sudo service apache2 start

sudo service apache2 reload

Note this is different for other OS so you should look up those methods that work for you Linux OS.

Third Step is to install MySQL Server

sudo apt-get install mysql-server

Now run this mysql_secure_installation which is a program step to create root password and remove or keep the test database.

It will ask you for your root password. THEN ask you to set a root password into MYSQL! SAYING N to keep the current root password or Y to change the password.  I recommend that my students take No.

Next question is to Remove anonymous users? I always select Yes.

Next question is to Disallow root login remotely? For class, NO.

However, in working environment this maybe yes or no, you need to confirm with your company IT Directors or Admin.

Remove test database and access to it?  (Again, for my students in my class let’s remove the mark this one as YES.)

Next question Reload privilege tables now? Here we want to say YES.

Note the message reads, Reloading the privilege tables will ensure that all changes made so far will take effect immediately.

After taking Yes you should see a message for …Success! Follow up by Cleaning up….

Forth Step install PHP

sudo apt-get install php5 libapache2-mod-php5

By default, the web site directory path is /var/www/html

With that in mind, create and save info.php to html  

To do this open and create new document




Note to create this you can use Web Editor such as Bluefish or use vi editor

vi   /var/www/html/info.php

Remember to save it to the html directory as info.php (not info.php.php)

Now to test it and see if PHP is working

Go to http://yourserveripaddress/info.php

This is what you should see:

What if it fails to work!

You may be getting a message that you don’t have permission to the directory var/www

You can see the permission of /var/www has, by this command ls -l /var/www. You will see like this (this only for example): (That’s Lower Case L not 1.)

Again, If there is a permission issue when trying to view the info.php complete the following:

Run ls -l /var/www to view who currently has rights to that directory.

To add yourself as having rights to that directory do the following:

sudo adduser yourusername www-data

After you completed this task you need to give yourself  “R“  rights permission and ownership to  your name.

sudo chown yourusername:www-data -R /var/www

 How to install Bluefish Web Editor Ubuntu 14.04


To add User account in Ubuntu 14.04


Ubuntu 14.04

Add User. In directory home, Lock User, Unlock User, Kill User Session, Delete User, and Remove User Directory

To Add User

 sudo useradd -m -s /bin/bash  username

 sudo passwd username

It will prompt you to enter the password once then again to confirm

 cd  /home

ls  (lower case L)

To view the users in the home directory

Then you should see new user home directory

To disable (lock account) user:  sudo passwd – l username     (lower case L)

To unlock the accountsudo passwd -u username

Will be prompt admin password to complete the task.

To delete a user: sudo userdel username

If you get a message that the user is in a session;

Then you do:  sudo pkill -KILL -u username

Then perform the:  sudo userdel username

If you were to do ls to view the users in the home directory you will still see there is a directory for the user. To remove the user’s directory do the following:

sudo rm -r /home/username

Looking again with command ls you now see that user’s directory has been remove.



Install Dropbox, kdenlive video editor and recordMyDesktop in Ubuntu 14.04

  1. Installing Dropbox

sudo apt-get install nautilus-dropbox

Now we can look in Ubuntu Software Center and looked at installed, selected Internet to see that Dropbox has been installed on today’s date. After you have logged on Dropbox you will see the Dropbox folder icon appear in the upper right hand corner of your desktop.

  1. Installing kdenlive video editor (lower case K)

sudo apt-get install kdenlive

Now we can look in Ubuntu Software Center and looked at installed, selected Sound & Video to see that Kdenlive has been installed on today’s date. Selecting kdenlive More info button you will see that many of the optional add-ons have also been installed that work with kdenlive.

You can find out more about kdenlive at their web site. https://kdenlive.org/

Be sure to check out their ToolBox for training videos on using kdenlive. https://kdenlive.org/toolbox/

  1. Installing “recordMyDesktop”

One of the problems I have is recording my desktop. After some searching I found and installed “recordMyDesktop”

To install using terminal run the following command:

sudo apt-get install gtk-recordmydesktop

  1. Again run sudo apt-get update when you have completed all installs.





How to install Bluefish Web Editor Ubuntu 14.04

Using Terminal complete the following…

It’s always a good practice to do update first before installing a new packages.

sudo apt-get update

How to install Bluefish Editor run this command in terminal

sudo apt-get install bluefish

At this point I like to do another update.

sudo apt-get update

Now we can look in Ubuntu Software Center and look at installed, selected Developer Tools to see that Blue Fish has been installed on today’s date.

Now I want to take full advantage of all the utilities offer that works with Bluefish so let install the following:

XML utilities run

sudo apt-get install libxml2-utils

                HTML Syntax checker and formatter tidy

sudo apt-get install tidy

                Syntax minimal Style checker for HTML

sudo apt-get install weblint-perl

Command-line interpreter for the php5 script language

sudo apt-get install php5-cli

At this point run again

sudo apt-get update

Now you should once again get back into Ubuntu Software Center and look at installed, selected Developer Tools, now select Bluefish Development Editor, to see that all the above utilities have been installed on today’s date select the More Info button. You will see all the Optional Add-on that had been installed today these are the ones with red checkbox.  You will see that three of the four appears, the php5-cli appears on the under the Developer Tools.


Let’s talk about Responsive Web Design for a minute.

Recently I attended a meeting with some IT and HR employees from different companies. The goal was to get a better understanding of what they are looking for in new employees, and recent graduates from the college.  A couple of things about the meeting that were of interest to me, which will help me to adjust my syllabus and teaching in some of my classes.  Currently, I’m teaching HTML, HTML5, CSS3 and JavaScript in Advance Web Design. I also teach Linux Admin and Python at local college and for small training center.

One of the comments, was the need to have their current employees who are currently doing web development, to get training on creating web pages for mobile devices. There’s problem with this statement, if you are trained and working with HTML, HTML5, CSS3, and JavaScript then you should be able to make the transition to Responsive Web Design and Bootstrap.

Let’s talk about Responsive Web Design for a minute. Understand that you are creating a web site that is responsive to the user’s behavior and to the mobile device, or table that user is using.  How you do this is by using proven coding and practices that works for the different screen size and platform.  This means to coding for the resolutions and size of images that have proven to work for the different devices. This is done by using proven CSS3 coding, standards, and proven HTML5 coding standards, and some scripting, which has  been tested and proven to work.  Most of this is done with the Cascading Style sheet that designed to work for all devices.

If the current employee is trained in HTML, HTML5. CSS3, and has some scripting knowledge that employee should be able to work in and expand their knowledge into Responsive Web Design.

Bootstrap is known for “one framework, every device” solution for creating web site using HTML, CSS3, and some jQuery plugins. I don’t want to dig any deeper into this but to say again if you have knowledge in front-end development then you can make the transition to responsive web design within a couple of weeks.  My plan for the Fall is to introduce to my students using Bootstrap web design.  You can find more information about this by going to getbootstrap.com.

One of the things I tell my students repeatedly is, when working in IT that the training, “going to school” never stops. You as the employee, you need to be willing to always learn and expand your knowledge in the field. As the employer, you need to encourage your employees to make the transition into responsive web designs such as Bootstrap and Responsive Web Design.