Archive for the 'Web Design' Category

Live Chat on your Website

AJAX, Customer Service, Marketing, Web Design No Comments »

Many people hear the words ‘Live Chat’ and think ‘Expensive’.  However, it is possible to have a live chat service installed on your website that will allow you to communicate directly with your clients, and potential clients.  The costs do vary depending on the business and the level of customization involved.  That being said, with your input, you can have a ‘Live Chat’ option available on your site within a day or two, not weeks as you might have assumed.

There are many benefits to having a ‘Live Chat’ option available to your clients.  First and foremost,  it allows them to contact one of your representatives quickly, and with little effort.  If no representatives are available (lets say it’s the middle of the night), then they have the option of leaving a message (which is then e-mailed to an address of your choosing).

Aside from the initial cost of setting up the ‘Live Chat’, there are very little, if any, maintenance costs.  At Storm Code, our ‘Live Chat’ setup allows you to manage the Online Support you provide to your customers from any computer.  You don’t need to outsource your technical support.  You can run it easily from within your office.

In times of economic trouble such as this, it’s important to keep costs low.  Take for example phone support.  Not only does it tie up a phone line, but the person who is giving the support is pretty much incapacitated.  They have to give their full and undivided attention to the person they are speaking with.  With online chat support that is not the case.  Computer users are used to multitasking and switching between several chat windows and e-mails.  A user giving ‘Live Chat’ support can handle multiple chats at the same time, there-by increasing the amount of support available.

Demonstrations of the ‘Live Chat’ are available.  Feel free to e-mail us with any questions, or if you would like a demonstration.

A Digital Office

CSS, Customer Service, Marketing, Web Design 1 Comment »

In this time of economic turmoil everyone is feeling the pinch.  Your customers are spending less money, which in turn leaves your business with less money to spend.   No company can stop spending entirely even in the most dire of times, which leads you to reanalyze what you are spending your money on.  Where is it going to generate the most sales, or be otherwise profitable?

No one can say that having a strong web presence will protect you entirely from recession, the dot-com bubble burst is evidence enough of that.  However, a strong web presence can increase your local customer base as well as increase your global customer base.  It allows you to market your product all across the globe without the need for old fashioned paper and print marketing.

That doesn’t mean you should run out and spend all your money buying ad space on Google and Yahoo.   Having a strong web presence isn’t all about getting people to your site.  You have to consider what happens after you get people to your site.

Are you offering up to date information about your products and services?  Is all the contact information current?  Is your website easy to navigate?  Does it have the functionality that will help drive your business in the 21st Century?  Is it capable of handling a large stream of visitors or will it fold under the pressure of more hits?

If you answered no to any of those questions or you were unsure of any of your answers, then it’s time to contact a professional.  Gone are the days when you could pick up a book on HTML and setup and maintain your company website.

You should be treating your website like a digital version of your Office.  It is representative of your business as a whole.  If it is well designed and developed then you instill confidence into your clients or potential clients.  Just like you would if you had a well put together and clean Office that you met clients in.  If a client were to walk into your office and it were to be a disaster, with half a wall missing and a ‘Dummies Guide to Office Renovations’ sitting on your desk, what impression would you be giving?

You need to have that same mindset when thinking about your website.

Portfolio

Customer Service, Marketing, Web Design 1 Comment »

Our portfolio is very important.  It helps our clients and potential clients to get an idea of what we are all about at Storm Code.  We try to keep our portfolio fresh, with our most recent projects and our crowning achievements.  We have just updated our portfolio with four fresh websites.

How did we decide on which websites out of many we should showcase?  It’s very simple.  We wanted to pick the most diverse websites we could.  If our portfolio was full of Real Estate sites, that wouldn’t tell our clients much at all about the other areas we have developed sites.  So we decided on four websites from different areas.

Real Estate, Construction, Automotive, and Social Networking.  This gives anyone viewing it a very broad view of the type of website development projects we take on at Storm Code.   If you haven’t already taken a look at our portfolio, check it out now!

PHP Code Optimization

Customer Service, PHP, Web Design 1 Comment »

In the past ten years computers have become so powerful that small performance tweaks and good coding standards and practices are overlooked. The reason for this is because coders have very little reason to care about coding standards and practices these days. It used to be that if you wrote sloppy code or didn’t take the time to optimize your code, you saw a drastic decrease in the performance of your program or script. Now that computers are as powerful as they are, even sloppy unoptimized code performs at such a high speed the loss of performance is barely noticeable.

At least that is what someone who writes code like that will tell you. At Storm Code we follow a best practices formula for writing optimized, performance driven code. If you run a small website with just a few scripts that are not often used, then you would notice very little difference (if any) between optimized code and unoptimized code. However, as your website grows in users and complexity the performance gap between unoptimized and optimized code grows larger quickly.

Several performance enhancing techniques can be used while coding. One of these examples is the use of single quotes instead of double quotes. An Example String using single quotes and double quotes in PHP:

echo ‘Hello World!’; // Single Quotes

echo “Hello World!”; // Double Quotes

In PHP, when using double quotes the parser looks for variables and formating information inside the String while using single quotes tells the parser not to look for variables and formatting information. Many coders use double quotes all the time for simplicity however this can cause a decrease in performance especially in large scripts that output a lot of information. Double quotes should only be used when formatting or variable matching is needed. This is one of many performance increasing best practices for PHP that Storm Code employs.

The main thing to remember is that doing something right the first time will save you having to redo it again down the road. Just because a website does not have a large user base or complex functionality right now, does not mean that it will not in the future and keeping performance and optimization in mind when coding, or hiring coders will not only save you money, but also headaches.

Content: Be prepared.

Customer Service, Marketing, Web Design 1 Comment »

Content is the most important part of any website.  It can be the text, audio, video and images that appear on each page.  At a very basic level Web Design can be broken into two different parts.  On one side you have the development of the actual pages, be it HTML, JavaScript, PHP, ASP, AJAX, Ruby on Rails, etc.  On the other side you have the creation of the Content.  Most Web Design companies handle only the first part which is the development of the actual pages.  It’s usually up to the Client to develop the content that will appear on the pages.

Content can be a HUGE bottleneck.   At different times during the development of the actual code for the pages, Content needs to be taken into account.  That is why creating the Content for a website before hiring a developer is a great idea.  It allows the developer to take into account the Content when designing the web site or web application.  The Content that is provided to the web developer should not be considered the final copy.  It’s just a guideline that the developer can use to better create the site.

It also means that the Project Managers on both side (client and developer) do not have to go back and forth as much with regards to the content that will be appearing on each page.  The client will not need to scramble to create content that the developer needs in order to continue or finish development of the site.  When the project leaves the design phase and the web site or web application has been tested, the client won’t need to begin creating the content at that time.  This means the web site or web application can be released sooner.

Many times, the Client does not take into account that actual Content that will be appearing on the web site or web application until the entire development of the site has been finished.  As stated above, this means that the release date of the project has to be pushed back while that Content is created.  This can lead to poorly thought out Content.  The Web Design company should be offering the Client suggestions about the Content.  It should be optimized for Search Engines, and it should be as jargon free as possible.

Jargon Free.  That’s a very important part of content.  When writing Content for a website you want to make it as simple as possible.  The Client knows and understand the business they are promoting but that does not mean that the users that come to the website will understand.  Web sites exist whose Content is full of Jargon and overly complex text that can confuse the user.  In some cases a dictionary of terms is provided somewhere on the web site or web application to help new users under the Jargon.  If you find yourself needing or thinking about a dictionary of terms, then you are using Jargon.  A dictionary of terms is almost an afterthought to make up for badly thought out Content.   As with any rule there are always exceptions.  If Content is being designed for a specific audience, then using Jargon may be the necessary, as it would be if you were writing a technical document.

Writing good, thought out, jargon free content is just as important as having a well designed web site or web application.  It’s just as important and as having a site that is optimized for search engines.  It’s as important as any other part of designing a good web site or web application.  It should get the same time, planning and effort that the other aspects of web design and development do.

Creeping Functionality

Customer Service, Marketing, Web Design 1 Comment »

Creeping Functionality, also known as Scope Creep is often described as “Death by a thousand cuts.”. It occurs when new functionality and features are constantly being added to a project that is already in progress. It can increase cost, push back the completion date, and severely damage development strategy for a project.

How does Creeping Functionality occur? After the Information Gathering phase of a project is completed with the Project Specifications and/or Proposal having been drafted and a contract is signed to develop and complete the project. During the Development Phase the client asks the Developer to make a negligible change. The change is so small compared to the entire scope of the project that it doesn’t seem to warrant a Change Order. These changes pile up during the Development Phase and after awhile the full scope of the negligible changes becomes apparent. The idea of writing twenty or thirty or a hundred change orders to account for the total time spent on changes outside the scope of the project becomes in and of itself a daunting and time consuming task.

Why does Creeping Functionality occur? One of the reasons that Creeping Functionality occurs is improper scoping of the project during the Information Gathering phase. Features and Functionality that are considered important were forgotten or not conceived during the Information Gathering phase and are now trying to find their way into the project after a contract has been signed.

Another reason that Creeping Functionality can occur is perceived value. Everyone wants the most bang for their buck and will try to slip in added functionality or cool features that will raise the perceived value of the finished product. At times individuals that were not involved in the Information Gathering phase of the project will begin to take an interest in the project and attempt to interject their own opinions and ideas into the project scope. Developers want to keep the Client happy and making small changes that allow them to look flexible can be a persuasive path to take. However, it comes at a cost.

Creeping Functionality can go unnoticed by Project Managers on both sides of the ball until budget and scheduling problems arise and bring the problem into the light. The budget can increase exponentially as hours worked on features and functionality outside the project scope pile up. Those hours that should have been spent on building the features and functionality inside the project scope push back the completion date of the project.

This is where perceived value and actual value come into play. It’s great to get the most out of your money, but at what other costs? Is the actual value of adding a negligible feature to a project more then having the project completed on time and within budget? The answer is a resounding no.

Creeping Functionality also taints any Development Plan that was put into place in order to keep the project on schedule and within budget. It divides developer/client attention between completing the project as defined by the contract and making the website as cool and feature packed as possible. It can be overwhelming and also cause tension. It can be very hard for a developer to say no to making a small change, and hard for a client to understand why when the developer does say no.

Managing Creeping Functionality is a very important part of Project Management. Getting the Project Scope right the first time and regular reviews of the Project Scope can keep it under control as to prevent problems.

It is important for both the Client and the Developer to be aware of Creeping Functionality and how to prevent it. At Storm Code we use a phased approach to development that can not only help prevent Creeping Functionality but also increases Actual Value, as opposed to Perceived Value.

Consider the original features and functionality of the project to be List A. Any features and functionality that were discussed during the Information Gathering phase that were seen as unnecessary or outside the current project scope, budget or time line are added to List B. List A has a deadline and a budget. After the deadline the website, or web application is released and the client makes it known that they have a new website or web application and people begin going to the site to check it out. This results in exposure, sales, leads, and much more. If Creeping Functionality had been allowed into the project then the release date would be pushed back and that exposure and everything that goes along with it would not exist.

List B consists of everything discussed during the Information Gathering phase that was not inside the original project scope, as discussed above. List B also consists of all the features and functionality that were thought up during the Development phase. In other words, all of the Creeping Functionality that could have effected the budget and time line. List B is considered to be Phase 2 of the project. After the website or web application is released, work on Phase 2 can begin. A new project proposal is drafted and contract signed. A new deadline and budget is created and work begins again anew. When the Phase 2 project is completed the Client can then spread the word that their website or web application (that is now no longer considered new) has some cool new features and functionality that everyone should come check out. If everything had been piled onto List A, it’s possible that the original project may not even have been completed by this time, and if it had, that would be it. No opportunity to invite users and potential clients back to the website or web application because no new features would be coming along.

A website or application is a marketing tool and nothing speaks better about a company or individual then if they keep their website or application up to date and constantly evolving with new, thought out, features.

For more information on Creeping Functionality please read this article by Steve Holder How to Keep Scope Creep from Sapping Project Profit

Why CSS?

CSS, Marketing, Web Design 1 Comment »

CSS (Cascading Style Sheets) has been a buzz word in the web design and development market since it’s inception in 1997. Since it’s creation it has been adopted and standardized by all the major web browsers. It’s nothing magical or hard to understand so lets break down exactly what CSS is and how it can save you on time, money, and headaches.

HTML (Hyper Text Markup Language) was designed to display information in a structured manner. It wasn’t designed with fancy images and layouts in mind. It also wasn’t designed to be used as an advertisement tool. What most web developers do when designing a purely HTML website would be considered ‘hacking’ the language. They use workarounds and techniques that are not standardized to create dynamic and great looking sites using a language that was not meant for that purpose. It’s akin to using lipstick to leave a message on a mirror for lack of the proper pen and paper. Web Developers took what they were given and used it to the best of their ability. However, the Web Community understood that the lipstick and mirror of HTML could only be used for so long.

CSS was designed to take the strain of styling a page off of HTML in order to let HTML do the job it was intended and developed for, which is organizing the content on the page. A simple example would be the HTML font tag. The font tag was used in order to change the size, color, or font face of text included inside the tag. So it may have looked something like this: <font size=”10px”>This is font size of 10px!</font>. To this day, browsers still support the font tag and many sites that have not made the change to CSS still use it to help style the page. If you wished to use CSS to change the font size of a specific piece of text you would include it in span tags like this: <span id=”myFontSize”>This is font size of 10px!</span> then in your style sheet you would define the myFontSize id as: .myFontSize { font-size: 10px; }.

Now, you might be thinking that the CSS example took more code, and hence more time. In this specific case you would be correct. However, once a style is defined in a style sheet, it can be reused. You could create another span tag <span id=”myFontSize”>This is another font Size example!</span> and that would also be given the font size of 10px that was defined in the style sheet. To better explain what this benefit can actually mean, let’s imagine a 25 page website was created for a company. The comapny President is very fond of the courier font and tells the developer to use it everywhere on the site. If the site was developed in HTML without CSS, a font tag would be used to surround every different piece of text that needed to be in the courier font, and the font name would be hard coded into every page, most likely multiple times. Now lets say the President retires and a new President takes over that prefers Times New Roman. In order to change something as simple as the font used on the site the developer would have to go through each page and change multiple font tags from courier to Times New Roman. That’s a headache and a time waster. If the site had been done in CSS, all relevant text would have been included in span or div tags that referred to a single entry in the style sheet. That means changing the font for the entire site would be as easy as changing Courier to Times New Roman in one place.

CSS not only allows you to easily style a website in a way that separates content and style, but it also allows you to easily re-style the website quickly, without having to dig through any of the actual pages. It also allows you much more control over the style of the website then simple HTML does. CSS is the future of web design. Most companies with a major web presence have already made the transition. Have you?

Why AJAX is right for You

AJAX, Marketing, PHP, Web Design 1 Comment »

AJAX stands for Asynchronous JavaScript and XML. It’s not a new technology, but a new way of using existing technology. When AJAX is properly used it allows normal web applications to function in a way more consistent with desktop applications. It allows the web application to pass or request information from the web server without reloading the entire page. This makes web applications faster and more dynamic.

Two examples of websites that rely heavily on AJAX are Google’s Gmail (www.gmail.com) and Facebook (www.facebook.com). Without AJAX, it wouldn’t be possible for Gmail to update your inbox at the rate it does and Facebook wouldn’t be able to list completions to your friend search before you hit search.

Not only does AJAX allow you to create more dynamic pages, but it saves on load time. Instead of sending a request to the web server and then displaying the page the server returns, AJAX allows you to make small requests from the web server and then use Javascript to display that information on the page without having to reload it.

Load time isn’t the only thing you save by not having to reload the entire page every time a users wants to interact, it also saves you bandwidth. If your website was created with AJAX in mind the reduction in bandwidth usage compared to the same site without AJAX support would be significant. There are no figures to offer on actual bandwidth saved as every website is different. However, if a web page that is five kilobytes is reloading itself every time a user has to send one kilobyte of information, and the page that is reloaded is the same with the addition of just a success or failure message based on the users input, you would be saving four kilobytes of bandwidth every single time a user enters said information. If you have a thousand users that all use that page a single time using AJAX would save you roughly four megabytes of bandwidth and save your users precious time.

Price Versus Quality

Customer Service, Marketing, Web Design 1 Comment »

Getting the best possible service for your money if very important. However, thinking that the lowest price means the best deal will land you nothing but headaches. One thing you should ask yourself before taking the lowest price service or product is why is it so cheap? Let me use Linux as an example. You can download many different versions of the operating system for free, and you wouldn’t be doing anything illegal! It is offered for free by the various companies that develop the builds. However, when you encounter a problem you have no support system to turn to for answers.

If you plan on paying $10 a month for web hosting, you have to ask yourself, when I have a problem, who is going to help me? Is it going to be someone that is knowledgeable and invested in my company? Or is it more likely going to be someone in a call center over-seas who may or may not be interested in actually helping you. In this business, like most others, you get what you pay for. So while the cheapest product or service may benefit you in the short term, that all goes out the window when you have to spend hours of your time trying to get someone who does not understand your business to help you fix a problem.

Another real world example would be car insurance. If you buy a brand new car do you purchase an insurance policy that only covers the bare minimum, or do you purchase comprehensive insurance so that if something were to happen you have the peace of mind of knowing that you are totally covered. Do you go with a company that’s cheaper, or a company that you know is going to make filing a claim as easy as possible if an accident does happen?

No one wants to be in a position where the company they have been paying is doing everything in their power to get out of helping. That’s why at Storm Code no matter what product or service you purchase from us, you get a Project Manager that you can call or e-mail personally. Someone that knows your business and your name. Someone who wants to help you. Someone invested.

The importance of a dynamic website

Marketing, MySQL, Web Design 1 Comment »

Have you ever been to a website several times over a period of time and not noticed any changes in the content? What did you think about that website and the company or person(s) that it represents? Would you go into work everyday wearing the same clothes? Would you answer the same question in exactly the same way and carry on the same dialog with peers and potential clients regardless of the situation or present state of affairs? If you did, do you think that would make you more or less productive? More or less interesting? More or less likely to secure that client, close that deal, or gain repeat business?

A static website with nothing new gives the user no reason to return, aside from referencing data that they already know exists. It offers no insight into your business or life. In some minds it might even be seen as lazy or boring. Surely if you went into every business meeting with the same attitude and the same canned responses to questions, you would not be successful. Being adaptable and offering new, useful, or interesting information is something we all do on a daily basis. It’s what drives business through our doors.

In a world where more and more business is being conducted on the web, the same strategies that apply to real world business can be applied to the web presence of a business. A dynamic website gives the user, be it a client, employee, or potential sale a reason to keep coming back to visit with each visit being another potential sale.

A dynamic website does not need to be a drain on your time or your resources if it is setup properly. Content can be setup before hand and automatically made visible on a certain date. Features and functionality can be created that add a dynamic look and feel to your website without actually requiring you do any additional work.

As an example let me use a Real Estate Brokerage. Many Brokerages have found that storing their information in a web based database accessible through an easy to use back-end management system increases productivity as well as the availability of information. Instead of endless printouts of listing sheets and folders (virtual or physical) containing pictures of properties, you have a central point at which to enter and maintain the data. Any Agent can access the system and view compiled property information. Why stop with just allowing employees access to the information? What about the clients? By adding a search for properties page to the front-end of the website (the area of the website accessible by clients or potential clients) you create a dynamic website that requires nothing more then business as usual to keep it updated.

The information being made available to the web surfer is just a scaled down version of what is already available to Agents through the back-end system. Now the Brokerage has a dynamic website with properties that are updated at the same instant an Agent enters or updates them in the back-end database. It’s killing two birds with one stone and creating a website that users will want to come back to in the future.

This is just one example of how to take a static website and turn it into an ever changing marketing tool to drive in business.