Traditionally software development has begun with gathering the requirements. This is and always will be a very important step in software design. How can you ever hope to build a successful application unless you first know what the client wants? So you start meeting with different users and stakeholders slowly collecting requirements and features that the new application should have. More times than not this process produces a list of requirements or sometimes a multilevel list showing the different areas of the application and how they may relate to one another. Now the architect takes the requirements and, using his or her experience in software design, starts to decide just how the application should be built, what structured and what foundations it may need for today and in the future. At this point the developers can start coding up the new application following the structure the architect has provided while meeting all of the requirements from the clients. Now we have a functioning application but it just doesn't look real pretty. Coders are usually more concerned about the esthetics of the code rather than that of the screens. So the process of applying look-and-feel begins.

But instead of waiting until the end of the project cycle to apply the look-and-feel why not start with that. Making mockups can be fast and simply, sometimes as simple as paper and pencil. But there can be a big difference from drawing what you would like to have verse trying to make a list of what you would like. When listing items and features out it is all too easy to miss things. With a visual mock everything is right there in front of you. If you don't see it, it's not included. Also the usability of the application is addressed up front. Not only are you defining how everything should look, you are also defining how the different pieces should work with each other. Usability is often the most important thing to the end users. Whereas the code is the most import thing to the developers. Now the architect and developers can work from the mockups and deliver exactly what the client wants and nothing else. Because for better or worse a lot of code is written because you may need it later or in order to make extending the application easier in the future. But truth be told often this extra code is never truly needed. Start with a good visual design and everything else will fall into place.

Simply put web hosting is basically renting a place to hold your website, either an existing one or very commonly a new one created with tools provided by the web hosting company. Web hosting companies own large server farms and lease space on those servers to companies and individuals to host their websites. Beyond just providing bandwidth and storage on the physical servers they provide a wide variety of services such as website builder tools, domain name services (DNS), content management systems (CMS), shopping carts, security certificates (SSL), and many others. So what should you look for in a hosting company? Most importantly you should look for company that can help you understand and utilize all of the different services they offer.

One of the primary services is a website builder tool. The website builders are useful for people who have little to no knowledge of coding languages such as HTML5, JavaScript, and CSS. If you are planning on using their website builder you may want to consider what is the ease of use and how much control do you have over the site. These two things are usually inverse of each other. The easier the tool is to use the less control you may have, tools that give you the most control tend to be more complicated. What templates and themes do they offer? I am sure you have noticed that a lot of websites these days are looking very similar to each other. This is because so many people are using the same templates or templates that are very similar to each other. There are benefits on either side though, having a standardized look that people are familiar and comfortable with vs being different, original, and standing out from the crowd.

How much storage space are you going to get, how many different pages and/or sites are you allowed, and what is the bandwidth. Bandwidth is basically the volume of people that can use your website at the same time and the amount of information you can send back and forth with them. DNS, which stands for Domain Name Service, is another commonly offered service. It is like the yellow pages of the internet. In order to request a web page you have to know its address. DNS is what converts those friendly website names, like mygreatsite.com to a numerical address. Most hosting companies will provide you with a free address but it will be something like mygreatsite.theHostingProviderName.com. But they will also help you register your own unique name.

The types of services offered is growing all the time adding to the importance of working with a provider that will help you through the process, not simply sign you up and leave you to figure it all out on your own.

If you are considering hosting a new website or maybe replacing an older outdated site please contact us. We provide all of the services mentioned above and many more including Search Engine Optimization (SEO) and social media services. At Excedeo we are proud to offer a comprehensive web consulting service.

There was a time when surfing the Internet meant you would type the address of a web page, a web server sends the first page to you and your web browser would then display it. If you click on a link or some other content a new request is sent to the web server and a new page is sent back to you. This works great if the pages of the website seldom changes and each page is unique. But if there are small sections of the page which change often –for example, a constantly-updating section like a news stream or stock ticker - the web server has to send the entire page every time any of the information changes. Another common example is if the web page allows you to enter information or make selections and then updates the information on the page based on what you selections. Sending all these pages to the web server can end up with a lot of time and bandwidth used.

Let’s imagine a web site that lets you customize a new car.

First, you go to the Acme Car website and the home page of the website is sent to your browser. You select the option to design your own new Acme car, so a page with all the available models is sent to you. You select a model and a page with information about that base model and base price is sent to you. What color do you want? A new page showing the car painted that color is sent to you. Which interior fabric do you want? A new page with that interior and an updated price is sent to you. What trim package would you like? A new page with a new price is sent. You add an option, but wait a minute - that option requires a change to the package you selected earlier. The web server has to send another page telling you this and asking if that is ok. Once you agree a new page with the updated price and options is sent to you. Each time you select or change anything the web server has to process that change and send back an entire page again. Now image trying to do all of this on a slow internet connection or on a mobile device (where you are paying for all of the data that is being sent back and forth).

One solution could be to just send all of the possible options and combinations with the first page. Then let a script running in your web browser decide what information should be displayed and update it according to your choices. This would eliminate sending all the pages back and forth, but the size of such a page would be huge and any user waiting for it to load would most likely just give up and go somewhere else.

This is where single page applications become very useful. They are designed to minimize all of this back and forth traffic and create web sites that are interactive, constantly show the latest information, all the while still being fast and responsive. They accomplish this by using asynchronous communication and partial page updates. When the first page of the web site loads, a script is also loaded to handle all the changes. This script, or “manager,” acts as a middle man handling all of the communications with the web server. It can request data to update only what needs to be updated. It also handles a process called “routing.” When you click on an option it may seem like an entirely new page has loaded, but it hasn’t; the manager has simply loaded in the new content. Because a lot of information like headers, navigation bars, side bars, and footers don’t vary from page to page, only the main content has to be sent from the web server.

If you are looking for a responsive, engaging, and highly interactive website, a single page application may be exactly what you need. AngularJS is a very popular framework for building such single page apps, and I will discuss some of its features in a future blog.

You've just started your own small business, and your head is swimming with ideas that you want to share with the entire world. You create a blog and publish a few articles, but only get a few hits. You sigh, write another entry, and then shut down your computer for the night. This happens for a few days, which turn into weeks, and months, and something doesn't feel right to you. Why aren't you getting any viewers?

Latest Blog Entry

Windows 10 is a great option for businesses that want to get the most out of their computers, but it can be a bit slow at times. This week’s tip is dedicated to helping you get the most out of your Windows 10 PC and speed up certain tasks....