Category Archives: Web Development

Defining Mobile

By | Marketing, Mobile, Web Development | No Comments

Something unique about our company is that we all like each other. In fact, many of us are close friends and participate in many activities together (running, Tae Kwon Do and workshops on practical enlightenment, for example). On the car ride into a workshop one evening, a conversation arose about making websites mobile-friendly where I walked the others through an exploration of the question What does it mean for a web site to be “mobile”? I liked the Socratic Dialog nature of the discussion, and it evolved into this article, which is likely to be the first in a series continuing the discussion on this very relevant and important topic for anyone considering their website.

Starting with the Answer

As mobile devices have proliferated, we as web developers have been asked with increasing frequency to develop mobile sites or to assure that more generic sites are mobile friendly. This request often originates with someone who is aware that mobile devices are increasingly ubiquitous in our culture, especially in more affluent and/or younger subcultures. The request comes from the perspective that this audience exists, and must therefore be served.

As far as that goes, the perspective is quite accurate. However, we often find very quickly that the definition of mobile friendly in these requests is vague or incomplete. While there’s an awareness that something must be done, there’s less consensus regarding what that something should be. The answer of having a mobile ready site is clear, but the question being solved by this answer is often given little consideration.

This article is derived from a conversation among some people in our company where we helped explore the question being answered. Our aim in publishing it is to offer a framework for how to best approach the conversation about, and eventually the implementation of, building a mobile-friendly website.

What Should It Do?

When we hear “we need a mobile site,” the first question we ask is “what must it do?” That is, what is expected of a mobile site that is different from a more generic web site? This question is often the beginning of an exploration of what mobile means to the client.

The Easy Answers

The immediate answer is almost always some form of “it needs to work on a small screen”. Another display-based aspect of a mobile site is that it must work well in either landscape or portrait modes.

Another very common quick response is “it needs to be easy to use on a phone”. I tend to express this in the short, if not entirely accurate, form: usable w/o keyboard or mouse. Nested menus may work very well with a precise pointing device like a mouse, and might even work well on a phone that is very stable. However, phones are often used as people walk. A user interface that requires too precise a touch on a phone is one where a lot of errors will occur, especially if the user is walking or otherwise performing some other activity while using the web site. If it is sufficiently difficult, the user will give up.

Another consideration for both screen size and keyboard is use of a virtual keyboard: if one is required for any data entry, that consumes screen space, leaving even less than “normal” for the display of the page. Anything that needs to be visible to the user as the data entry occurs must not be obscured by a virtual keyboard. Again, landscape vs. portrait modes must both be supported.

As Freud would say: Sometimes, a Mobile Phone is a Mobile Phone

A consideration regarding how people use the site that often takes more time for people to realize is what I call using the phone. Many websites have buttons or links for Contact Us. Some even have Live Chat within this.

A mobile site, though is very often being displayed on a telephone. Though it is often forgotten in a world of smart phones, mobile browsers, and SMS messaging, phones are quite capable of a very effective form of voice communication! In addition to the other forms of contact, a mobile site being displayed on a phone should include a Call Us button or link that uses the phone to make a call.

Not Everyone has 4G or Wireless Ethernet

Not everyone thinks of the feature: demands little bandwidth. Many people today, especially in metropolitan markets, are used to a landscape littered with hotspots and 4G performance in between. Much of the US, however, operates with more severe bandwidth limits. More, an increasing number of smartphone contracts are imposing data limits with overage penalties.
Mobile sites, therefore, must keep their bandwidth needs to a minimum.

A Mobile Device is a Device

Rarely does the conversation get to this next point without help. Yet this point is right there in the name of the device. The defining aspect of a mobile device is that it is mobile: It moves from place to place, and is usable in any location. Every point above, excluding Call Us, involves accommodating one or another limitation imposed on mobile devices. That these devices are mobile, however, is a differentiator that can be used to provide great added value to the site’s users.

Google’s search mechanism is an example of a generic service that can be greatly enhanced by taking advantage of location. On any web browser on any device, one can search for coffee shops Montclair NJ to locate coffee shops in or around Montclair, New Jersey. On a location aware browser, however, one can ask merely for coffee shops and be given those that are nearby.

Another example of a web site that takes advantage of location awareness is one that reports on the state of a trip. It can use the current location of the mobile device to present the current state of the trip: the time spent and time remaining, the directions for the remainder of the trip, etc. This can be a straightforward application such as Google Maps, or it can be one that supports an itinerary of shopping at a planned set of stores or exploring a planned set of historic landmarks.
Considering these trip-oriented sites, though, takes us a step beyond a website that takes advantage of location in our understanding of mobile friendly. (That is another post entirely.)

A Mobile Device is used While Mobile

Above was presented a website that provided the state of an ongoing trip. However, a site that presents the state of a trip also requires that the trip be entered into the website. In addition to the portion of the web site reporting on the trip as it is undertaken, there must be some portion of the site where the trip is planned and entered.

This suggests the next level of a mobile friendly web site: one which organizes tasks based upon whether one is using a mobile device or not. The site can use the type of browser as a suggestion: is a trip under way, or is a trip being planned? Of course, this can only be a suggestion. Someone may plan a trip from their phone, and someone can take a trip with an open laptop.

But regardless of the device being used, the site includes both the while planning portion of the site and the while traveling portion of the site.

Finishing With The Question

The features above explore some possible fashions in which a website can be mobile friendly. Different applications, and different clients, will seek to make use of some different subset of these. It is critical for the success of any mobile friendly project that all parties share an understanding of just how mobile friendly is to be implemented for this project.

The Importance of Having a Good Website

By | Marketing, Web Design, Web Development | No Comments

For business owners these days, having a website is as essential as having a computer. If you own your own business or have any type of product or service to offer consumers, you need an outlet to promote your brand and connect with people. Having your own website is an extremely effective way to market your brand, expand your network and drive business.

It’s also important to realize that there’s a difference between having a website and having a good website. Your website is a representation of you and your business. You wouldn’t attend a meeting with a possible new client dressed in a stained t-shirt and ripped jeans would you? Having a professional, attractive and well-crafted website that’s easy to navigate lets the visitor feel comfortable during their visit to your site, which in turn increases the chance of them choosing to work with or refer you over a competitor.

Client Showcase – Johnnie M. Jackson

By | Client Spotlight, Testimonials, Web Design, Web Development | No Comments

How often do you change your cell phone? Every year? Two years? More than that? What about your wardrobe? Running shoes? Handbag?

Like mobile technology, fashion, performance gear and personal style, online technology and tools used on the web are constantly changing and evolving. Part of having a good website [link those words to the post “The Importance of Having a Good Website”] means that your site reflects those relevant changes not only in technology and the web, but in your business. That requires the dreaded word most people resist…change. People often assume that changing or updating their site will be expensive, time consuming, demanding of their creative writing skills and a general pain in the neck. But, like most fears, the thoughts are much worse than the reality. Having a passion for creating elegant and powerful web solutions since 1992, we make the process easy, simple and even fun.

We’ve recently made a significant facelift to the website of Johnnie M. Jackson, a seasoned Executive Coach Mentor and Independent Consultant that resulted in a large client within two weeks after the redesign.

Here’s a testimonial from Johnnie M. Jackson:

“I’ve been working with TAG for more than 8 years and they recently gave my site a facelift. The site has been very well received and, thanks to their expert guidance, it is much more of a marketing tool for me now. Not only was the whole process fun, easy and well-managed but, almost immediately after the site went live, new prospects and new clients started showing up because they were attracted to what they saw on the site. Awesome!”

– Johnnie M. Jackson, Jr., Executive Coach, Mentor and Independent Consultant

Converting Flash Websites

By | Web Design, Web Development | No Comments

Flash is a special program that allows for animation on your website. It was once very popular, however, it is not as prevalent as it used to be.

Some important things to know about Flash:

  • Cannot be viewed on iPhones, iPads or any devices without Flash software installed.
  • Requires a programmer with knowledge of Flash software to make updates. This can be expensive, cause delays and, not to mention, requires having a good Flash programmer available when you need him or her.
  • Are generally not visible by search engines.

Flash sites have some nice features, like elegant slideshows, animated eye-catching graphics and visual consistency across browsers, however, these features can be accomplished by other means that do not have any downsides.

Many of our clients have come to us to convert their sites – or flash elements of their sites – to straight HTML, the basic, universal programming language of all websites.

If your website is still using Flash, you’re missing out on interaction from people who use iPhones, iPads or other non-flash compatible devices. We can work with you to make your site more accessible by converting it to HTML.

Give us a call for a free 15 minute consultation! (973) 783-5583.

“Measure Twice, Cut Once” by Andrew Gideon, CTO/VP

By | News, Project Management, Web Development | No Comments

I’ve been writing software professionally since 1982. Over years of employment and education, I’ve learned a lot about how to build software well. Unfortunately, I’ve also learned a lot about how to fail. Some of the lessons I’ve learned along the way seem obvious. They should be obvious! Yet being obvious is apparently not enough. How many people reading this have regular and confirmed backups of all their important data. Their email? The videos of their children? Their medical records?

I’ve come to the belief that software development suffers from a problem of abstraction. A person can see a piece of wood, can feel the weight of a table, can admire the size and structure of a building. Software has no such physical representation, weight or apparent size. To most people, it is an invisible abstraction that only barely exists. That it represents a significant investment of man-hours or that it may rival or exceed the complexity of many physical projects is counter-intuitive to many.

Because software is something without apparent weight or physical heft, it tends to be seen as having no weight or heft. Because the complexity and size cannot be gazed upon, it is presumed to be simple and small. The end result: people think that software is easy. This causes unreasonable expectations of time and cost for projects.

Making the situation worse is that the increasing pace of ever-growing need for new software means a steady stream of new and inexperienced professionals. To use a metaphor, these are people that have become experienced in building log cabins. When asked to build a skyscraper, through no malice on their part they simply assume that they can scale up the techniques they use for building log cabins. If they know how to build a one-story building, they can just do the same thing 40 times for a 40 story building.

I’ve just caused all the architects and construction engineers in the audience to shudder and/or laugh.

Imagine being told to skip the design process, and immediately begin construction of a skyscraper. Imagine being someone that was going to be working or living in the resulting building. Yet this is precisely the situation in which too many businesses find themselves: using software that was put together like a log cabin, but which has the complexity and stability requirements of a skyscraper.

Through office politics and pressure, even those that know better can find themselves forced into this position. A person with whom I used to work recently had to show physical progress on a project despite the fact that there wasn’t yet a complete understanding of what the project was supposed to achieve. His bosses weren’t interested in the planning process, the analysis being done, or the plan for implementation being formed. Actual machines doing actual things were their only measure of progress.

It’s no wonder that his professional life includes so many emergency responses.

This problem is not insurmountable, but it does require some investment in education. We’ve a client forwhom we’ve been developing an ongoing project for a couple of years. The first few releases were painful. He expected things to be done immediately, and didn’t understand why we kept pestering him with question after question about how he wanted the software to behave. His idea is that we should just get the software working pretty close to how he operated his business, and then tweak as necessary. And the software should be done now.

But after a number of rather expensive tweaks for details he’d omitted, he began to understand that the more information we had about his business needs before we began, the better a job we could do in satisfying those needs.

Today, the process followed with this client is incredibly smooth.

Education is just as important on the other side. There is simply no way that we could produce software for his business if we weren’t willing to invest the time and effort in understanding his business. Too many people have a love for developing software but resist learning the businesses of our clients. But we cannot truly provide our best value unless we know and understand what the software we’re building is supposed to do.

Another example may be found in a new client of ours. This client had software for their web site developed by a firm in India. More than $120,000 later, they still lacked software that did what was wanted. The problem is apparently that nobody on the software development team actually understood what the client wanted. There was a project manager responsible for progress being made, but nobody responsible for the direction of that progress. In a way, it was like that old cartoon of the railroad lines from the Atlantic and Pacific coasts meeting in the mid-United States…a few meters offset from one another. Lots of trackthat ended up not meeting.

This new client is my favorite type of client. Having seen how a project can go wrong, they become far more interested in what it takes to have a project go well. They’re willing to accept that, despite its lack of visual and physical manifestation, software has size and complexity and that we need to engineer solutions that work well. They’re willing to be educated in what this takes, and willing to invest in educating us in what they want the software to do.

That education is the key. Without it, success becomes a hit or miss thing, perhaps ultimately homing in -if we’re all lucky – on a workable solution. With that education, however, we can deliver well engineered solutions which meet our clients’ needs at reasonable investments of time and money.