Archive for August, 2008
No Way! Is Microsoft getting it?
A recent story came about Microsoft putting together a blog to openly discuss features and concerns of Windows 7 with the public. My hat is off.
With Vista struggling and people (especially me) often being unhappy with it, Microsoft needed a shift in strategy and it looks like they are at least doing something, which is much better than pretending that everything is all aces. I’m not sure if they will stick with it, but I sure hope so, for everyone’s sake. It’s not about Microsoft and their bank account. It’s about the victims (like me) who are stuck using Vista and hating it.
Apparently (and this makes me happy) Microsoft realized that adding fancy features takes second place to getting the OS to work. They could have just asked me. Also, I’m hearing that they are trying to avoid all the hoopla of a launch date. It didn’t turn out well with Vista where delay after delay simply made their date announcements into punch lines.
I’m hoping this Vista mess gets resolved with Windows 7 fast enough, since there is a massive anti-Microsoft movement that is gaining momentum. IBM, the computer technology giant, has stepped up its MS bashing by openly promoting Linux as an alternative to Windows on its machines. Also, IT firms and community groups worldwide are forming alliances to create products that would chip at Microsoft’s market share, especially in the business sector. Already there are more and more servers being run on open source software (this has a lot to do with the fact that the licenses cost a whopping $0) and this signals that even the corporate minds are starting to put their trust in the likes of Linux and MySQL to support critical business processes, and they are usually the slowest ones to adapt. Microsoft would take a huge financial hit if, for example, businesses worldwide gain the same level of trust in OpenOffice and stop buying corporate MS Office licenses. With Big Blue leading the way in the OS cause, Google owning the online advertising market, and the mobile industry being a wide open field, Microsoft is in danger of losing their title of top dog.
1 commentSearch Engine Optimization on a Budget
The hot topic in online marketing today is search engine optimization, or SEO, so I decided to jump into the mix with my two cents. First, there are very many SEO articles on the web, and a lot of them are full of garbage that can throw people off, while others are strangely trying to remain mysterious (”Optimize for keywords”? How?!?). Before I start, note that I’ll be using a fictional Montreal Chinese food restaurant called Zuzu throughout this article when giving examples on topics I will be discussing. Kapish? Great. Let’s begin.
First, you need to assess your competition. Pick a few keywords related to your (future?) website and look them up on Google, Yahoo, and MSN. A simple way to see what you will be up against is to check the PageRank of the top sites listed in the results, or you can use the Google AdWords Keyword Tool, if you get the concept. To easily check PageRanks, get the Google Toolbar. It doesn’t measure up your competition to a 100% accuracy (PageRank isn’t as important as some make it out to be), but it will give you a good idea. In Zuzu’s case, I would type in “chinese restaurant” and open up the first couple of results, then I would try “Montreal chinese restaurant”, and open up the first couple of results. Keep all open results organized according to searched keywords, as this is important for a topic discussed below. If I see that “Montreal chinese restaurant” returns some highly ranked pages, I will need to get more specific in my keyword selection to target a smaller audience. This way I at least have a chance to get Zuzu ranked at the top of the search results, and so I try “inexpensive Montreal chinese restaurant”, which returns some low ranked websites as the first few results. This is where I will claim my territory, and remember, this is SEO on a budget. If you have the dough, you can spend your way to the top for more generic search keywords.
Now that you have your main keyword set, you need to list a few secondary keywords you want to work with. In Zuzu’s case, I would include the neighborhood where the restaurant is located, as well as some specialty dish types if people search by this criteria. Moving on.
Now it is time to optimize your website for the keywords you picked. Don’t stress over your business’ name, as its uniqueness will get you at the top of the search rankings if people are specifically looking for you. In Zuzu’s case, the word “Zuzu” will most definitely bring up the restaurant as the first search result (maybe not zuzu specifically, as it is widely used, but any distinctive business name). Here is the bad news, and you won’t find this in the SEO articles on the web, there isn’t a bullet proof way to optimize your site for specific keywords. The basics always apply, such as the page titles, which you should keep distinct and not too long, as well as the “alt” tags of pictures, but the rest is quite fuzzy.
I can give you the following advice. From the search results you previously saved, look at those from the most generic search, which is Zuzu’s case would be “chinese restaurant”. Find one search result that is ranked high but has a lower PageRank than one with a higher PageRank that is ranked lower in the results. In Zuzu’s case, if result #2 of the “chinese restaurant” search has a PageRank of 3, and #3 has a PageRank of 5, #2 is well optimized for the search terms, which gives it the high ranking it has (not entirely true, but you can’t go wrong), so this website should be your study case. Find a couple of these, and open up their source codes. Look at all the keyword positioning and formatting you find. Try to notice a pattern. Are they always bold? Are they in links to subsections of the site? Do they run around and yell “STELLA!”? A combination of the first two? Whatever you find, take note and try to apply the same strategy to your site. If you expected a how-to guide, I apologize. There is no such thing, even if many claim there to be one. However, with this strategy you can find out what will work best in outranking your competition, and in the end that’s what matters. Be sure to sprinkle around your secondary keywords in the same way you did for the primary ones, but less frequently to avoid taking the focus away from your main website topic. I would prefer people finding Zuzu with “Montreal chinese restaurant” rather than with “fancy asian dishes” because the former search will bring me more customers, but the latter could be from people half way around the world, and I am focusing on a small niche (SEO on a budget, remember?).
Alright, so the website is optimized for keywords and ready to be seen around the world wide web. To get good rankings in search engines, you need to raise your site’s presence on the Internet, which means that you need links from other high traffic sites to point to yours. This can be achieved by submitting the website to numerous online directories, but be careful. I found that most SEO articles don’t address this issue, and people wind up hurting their rankings more than anything else. You must submit your website to online directories that search engines won’t consider to be hazardous. There is a process used to find out which ones are or aren’t, but that’s too complex, so instead use a simple rule of thumb. If a directory has a PageRank of 3 or higher, that means search engines (especially Google) considers it to be legit, and so should you. The obvious one to submit to is DMOZ, and that will boost your rankings up a notch, but it’s difficult to get into, so you will have to labor through lower class directories. If you are serious about your business and Internet traffic is a key element for you, then submit it to the Yahoo Business Directory or BOTW. I will cost you some money ($99-$299 per year), but your search rankings improve significantly.
However, you should also be careful when submitting your website to all of these directories. Search engines look at the text in the link pointing to your website, so avoid repeating the same thing for all directories, or you might be labeled a link spammer and penalized in search rankings. In Zuzu’s case, I would variate the link keywords between “Montreal’s Zuzu Restaurant”, “Chinese Restaurant Zuzu”, and so on, in order to avoid being too repetitive.
After some time your PageRank will rise and you will have more leverage on the Internet scene. If your PageRank reached 3, you can offer other high ranking websites with similar but non-competitive content to exchange links. In Zuzu’s case, I would exchange links with websites about Chinese recipes, cookware, etc.
This is all there really is in terms of SEO. There are other things you should consider, but that’s getting too specific and the results are marginal. You can pay someone (like me) to do it for you, but if you’re reading this, you probably decided to do it yourself, so I spill the beans. Just remember one important thing: the website’s content should first and foremost be pleasant to the eye of the human reader, so if your site is super-duper optimized for search engines but the text on it has major grammatical errors, then you messed up. In Zuzu’s case, I don’t want visitors to read “Zuzu Chinese food restaurant good food low price” since the point of SEO is to drive traffic to your website, and keep it there, not scare it away. Also, SEO is a continuous process, so keep monitoring your rankings and don’t stop trying to improve. The minute you do, your competition will outrank you. That is all, so congrats, you are now a SEO expert, relatively speaking…
5 commentsNetfirms sucks
Netfirms sucks. That’s as simple as it gets. Having dealt with them on numerous occasions, I can safely say that they simply suck. I can try to find a more sophisticated way of saying it, but it would be sugarcoating it.
I dealt with them on numerous occasions because of their low cost Windows IIS hosting, but that caused me nothing but trouble, and I wound up transferring all hosted websites to other companies at my own cost. I helped a number of my clients set up their hosting account with Netfirms after putting together a web application, and almost all of them came back with complaints. There were frequent down times, cron jobs stopped working for days at a time, their database servers often denied access or simply fell off the map only to come back online a few days later.
But the meat of my discontent with them is their customer service. After a quick search I found that I am by far not the only one having dealt with this disaster of a company (check this out). First, any email request for tech support took days or a week to get an initial reply, and most of the time things were somehow back to normal by then. I of course still tried to explain what happened to insure that it doesn’t repeat itself, but all I got as a reply was that they couldn’t reproduce the issue. Really? No way! I tried dozens of times to explain that everything was back to normal, but I was concerned that things will go bad for days in the near future (they always did). All I got from them was that they need to reproduce the problem in order to deal with it. Funny enough, their website states that their “Industry-leading response times” work as follows:
“Typically 70-80% of enquiries are responded to within 1-4 hours and 90% within 8 hours
Over 95% of all initial enquiries are resolved during the first contact with us”
Wow, I don’t think I have ever seen this much BS stuffed into two short sentences. The BS to word ration here is astounding. I submitted over 50 requests for support, and never got a reply within less than 2 days. One reply took two weeks. By then the issue magically disappeared and I have even forgotten what happened in the first place. Other times I never got a reply, which made me resubmit the same request two or three times before they showed signs of life. Mind you most of the accounts I helped set up were business accounts. Business!
I can claim one victory. I once got them to admit there was a problem and they fixed it. They had a bug in the webmail application, and one of my clients kept running into it. A week later it was fixed, so bravo to them on that. However, another one of my clients saw her website vanish. They ran a restore, and it came back blank. To this day nobody knows what happened, and after numerous attempts from my part to get some kind of explanation, I never received a response so I dropped it.
I dodged a bullet by not getting a stand-alone server with them to run client information systems, and I was quite close to committing on the switch. It could have literally ruined me. The overhead costs I had to cover because of their incompetence and lack of giving a rat’s ass were substantial, and the damage done to my reputation in the eyes of some of my clients is irreparable, but I’m glad to be done with them. Hopefully my story will save a few headaches.
No commentsThe Future of Software
About 6 years ago, when I started thinking of software development as a career, I had a conversation with a friend, a C programmer working for a local firm, about the future of software. My opinion was that desktop applications (what we know them as today) will be run on remote servers in the future. My argument was that with the advancement of technology, we wouldn’t need to install software and run it locally. He thought I was silly.
Today, with the growing popularity of Google Docs (and there are lesser known others), my silly projections are starting to look more and more like reality. I think it’s important for anyone thinking of going into software development to at least be aware of this. Software and web development are slowly merging into one. Going back to Google Docs, you can edit text, spreadsheet, and presentation files purely online with no necessary installation, and then save the files locally once done. No, this isn’t a Google Docs promotional ad (I actually used it a couple of times, and it didn’t take my breath away), but this is just the tip of the iceberg when it comes to user applications.
Let me present a hypothetical example of a popular application being run remotely. Suppose Photoshop, a graphics editing application, ran on servers administered by Adobe. To use it, I would purchase a license (just as I do now when I buy the CD), and use the software through a browser (or client application). I would perform some tasks, each one firing off a request to the server, and see the results on my screen. While the computing power required from the servers would be massive, technology can only improve, so it’s a matter of time. In addition, the current cost of distribution could instead be invested in needed hardware. Is this example far fetched? I don’t think so. The cost of hardware keeps dropping, while the cost of distribution can only rise. Eventually, due to the need to stay competitive and technological progress, companies will consider going remote.
This concept can even include operating systems. There are a number of big companies that use diskless computers that load the OS from the main server through the network, so why can’t the network be the Internet? I can even see a world where I can load up Windows one day, and Linux the next. There are sure to be quirks to work out, but that no longer requires a miracle, but an investment.
There are massive advantages for such a concept to become reality. First, it would mean the end of software piracy, which I’m guessing is important to development companies. Second, we wouldn’t have as much of a performance barrier due to open competition among developers. I’m confident Microsoft would think twice before asking me to buy a new machine in order to use their software since I could easily switch to their competition. Also, the virus and spyware issues wouldn’t be the problem of the user, and I trust that companies running the servers would do a better job in dealing with it than individuals as it is the case today.
We would have to deal with numerous issues such as the users being dependent on remote servers, but the advantages far outweigh any inconveniences, and tech support would be much easier to deal with as companies would have to resolve issues with their servers, and not with individual user machines.
This is my view of the future, and while it might be far fetched, it is definitely an idea to be explored further.
No commentsStart-up Magic
Many in the field of software and web development fantasize about kicking off a start-up and racking in the dough while enjoying endless vacations and absurdly flexible working hours. I know because I’m one of those people. However most of the time (well, almost all of the time), you actually have to pray to break even, have no vacation time, and work absurdly packed schedules, at least until your business gets off the ground. Over 90% of businesses fail to make it past the first couple of years for various reasons. The initial idea might have been flawed, planning and operations might have failed, or the people simply gave up after getting overwhelmed with all that comes with starting a business in the field of technology.
Then again, a number of people made it. I am running Davai Design for over four years now, and while it isn’t my primary concern (school is), I did manage to keep it afloat, pay the bills, and ride a bike (GSXR-1000, out of this world), and it sure beats working for somebody else. Along the way I learned a lot by personal experience or from someone who was in my position and succeeded, and I realized that successful start-ups have a few things in common, so I decided to write’em up here for those looking for a ray of hope.
#1) Perseverance
Of all the people I know living off a start-up, the first thing that jumps out is tenacity. You have to endure failure after failure after failure, learning from each one and applying newly acquired knowledge to your next attempt at stardom. A lot of people I met who run working start-ups have previously filed for bankruptcy due to past failures, which is astounding, and yet they just chugged along until things got better.
#2) Let Go
People often fail in their attempts at entrepreneurship because of personal attachment and unwillingness to admit failure. The idea flopped, but they keep hoping it somehow comes back to life, thus wasting time and resources. The sooner you realize you failed and cut your losses, the sooner you can move on to something else with new knowledge in hand.
#3) Focus your focus
When starting a business, there are tons of factors to consider, such as legal and financial issues, product and/or service, marketing, and customers, among others. It is easy to get overwhelmed with everything. In addition, you have articles such as this one telling you tons of things you should do, each different from the next. With all this information overload people tend to try and absorb it all, never having time to actually spring into action. It’s important to focus on specific topics. Do some research, find one or a few places to get information regarding your own business, and stick to it. It is also important to hire an expert when needed, such as an accountant or lawyer. It is costly, but it lets you focus on what you can actually do (run your business) while avoiding potential legal trouble due to your lack of knowledge in certain areas of expertise.
#4) Grow Your Network
Everyone knows networking is important, but few know how to do it effectively. Besides the standard methods which I won’t list here (Google it), you can get creative. For example, in my case, I often do very small projects (web sites) at a loss, meaning I make no profit, if the customer is well connected. My goal is to make sure the product or service I deliver is top notch and at a very low price (hence a loss on my part). Keeping up with this practice landed me several referrals to work on large projects on which I made profits that compensated for earlier losses, and I greatly expanded my network. Simple, yet effective.
#5) Get the Word Out
Finally, you need people to know you exist, and that necessitates some serious thinking. Depending on your business, you need to pick a marketing strategy that suits your business. However, one important rule applies. Focus your products and advertising on one small market niche at a time. If you try to appeal to a broad audience from the start, you will be up against large mainstream corporations. Good luck with that. Work a niche and see what works and what doesn’t. It saves you money while giving you valuable knowledge about how you should market your business. Don’t try to explode onto the scene unless you have that kind of capital behind you. Small-scale marketing will get you much further, unless of course your product doesn’t live up to the hype.
These are my observations after four years of navigating the shark tank that is entrepreneurship. I hope it helps.
No commentsThe Vista rant
I have forever been a user of PC. Like many, I just can’t switch to a Mac and its cyclops mouse, but I have to admit, it is becoming more and more tempting. Why? Vista.
I was forced to leave XP behind as I needed a new computer to satisfy the growing needs of a software developer due to the heavy development environments we now use. I loved XP because it was like an American car. It broke down on occasion, but it was inexpensive to fix, and you can do it yourself.
Along came Vista, which made my new HP laptop into a clock with web surfing ability. I could have just gotten an iPhone and enjoyed it on the go, but I let my love affair with PC cloud my judgment, and I am waiting for Linux to have number of features I need before considering a switch.
Update: I just stumbled across this, which definitely says something about the worldwide Vista love.
So where did Vista go wrong? We constantly get clues from the Mac VS PC commercials they keep running on TV, but the problem lies much deeper. Microsoft screwed up because of their greed and arrogance. They chose to focus on the fancy stuff instead of making sure the OS actually worked. My laptop recovers “from a serious error” every time I wake it from its sleep, but I have floating transparent windows with Aero. How nice. I used to wonder how can such large corporations with unlimited brain power make mistakes that are obvious to children who still believe in Santa. The answer? Shortsightedness. Yes, I was very impressed with some of the user interface features they added, and I still love the search feature, which in XP was useless, but a month into my Vista experience, I got used to the things I was impressed with, which is natural, but was still highly annoyed with all the deficiencies. I’m thinking the developers didn’t foresee past the first month of usage.
How does this happen? How can something this obvious get by levels of management and supervision all the way to BestBuy? Frustration. Vista was scheduled for release way before it all actually went down due to numerous scrapping and redoing of the work, and in the end pressure mounted to release the damn thing, so they did. It didn’t take me a month to find critical flaws in the system, and I am one man on one computer. Mr. Gates has a team of testers getting six figure salaries, and I am supposed to believe they missed all of this? They didn’t realize that the security features get annoying after a week and the users might tend to simply turn them off? Wasn’t the whole purpose of releasing Vista to fix critical security flaws and improve the Windows experience? This could have been done with a Service Pack, but Microsoft decided to go all the way instead. And the whole requirement to buy a new computer if you wish to run Vista really got under a lot of people’s skin. However, Microsoft had no choice, Vista eats up over 500 MB of RAM just past start-up, while most systems running XP had 512, and that was with the integrated graphics card. Forcing people to spend big money on new computers is a big no-no.
So who’s fault is all of this exactly? Simple. Steve Jobs. The guy oversaw Mac go from weird to cool, and Mr. Gates got jealous, so he decided to “out-cool” Mac, which made MS developers lose sight of the most important aspect of an operating system: it has to work. If it doesn’t work, no amount of cool features can mask that. They were so busy fancying up Vista that they ignored the basics, and now the people are lashing out and Mac is taking advantage.
We all know Microsoft doesn’t employ idiots. Their hiring process is legendary. It’s like a game where you advance from one level to the next without getting axed along the way. Very few reach their goal, but those that do are greatly rewarded. So then how can all those people with all that thinking power let something like Vista escape into the world? Simple. Work culture. I know many people who got hired to work for Microsoft, and many more who didn’t, and I noticed a pattern. Microsoft prefers pure coders over all-around candidates. Pure coders are geniuses that can sort an array in hundreds of different ways, but when it comes time to tell the manager that what everyone is working on is flawed and will eventually blow up, they are nowhere to be found. I’m not saying that is the case for everyone hired, but the work culture absorbs the exceptions eventually.
Microsoft banked on the fact that PC users will be forced to live with and adapt to Vista regardless of its flaws, which is mostly true because they own the market, but this is a great shift in business strategy for a company that used to be known as operating with the mindset of a start-up concerned with being annihilated by the competition. Maybe Microsoft learned their lesson, since they scheduled the release of Windows 7 for 2009, less than three years after the release of Vista. By comparison, XP was out for six years before Vista came along. Although they will obviously not admit it, it’s a sign that even they know they screwed up. A lot of people still use XP, and they are already scheduling a new version of Windows. If it all works out, the lucky ones will go from XP to 7, but I’m not one of them. I’m just hoping Microsoft changed their approach for Windows 7, otherwise I’ll be among many taking a bite out of the apple. Not a good sign though that they are giving us Seinfeld and Porn Mode. How about that?
Speaking of Apple, they took great advantage of Microsoft’s mishap to lure away customers, but their business sense is a little lacking. The reason most people hesitate about switching to Mac is the fear of adapting to a new system. That is certainly my case. It’s not that I think I won’t be able to, it’s just that I naturally don’t want to. What Mac should have done is make their system resemble Windows just a tiny bit to give that feeling of familiarity to people looking to escape Vista (maybe a skin?). When Lindows came out (now known as Linspire), I was really tempted to switch because of the seemingly quick transition period. If Linspire had all the programs I needed then, I would have never had to use Vista. Mac does have the software most people need, but they need to give potential customers a sens of trust in that going from Vista to Leopard will be a smooth transition. I’m not talking about the hardcore crowd, but the average user.
Well, my little rant is over, and my firewall just stopped working, with Vista wondering why and pretending to look for a solution. I’ll help it out by restarting the system.
No commentsUser Interfaces - The what, where, and how.
I often times get questions about user interface design, so I might as well lay out what I know. This is in no way a UI guide, and a lot of it is based on opinion and personal experience, but I put together quite a few control panels, and lately the feedback on them has been positive. I will admit to many UI mishaps in the past, but spotting and analyzing them is the only way to learn. Like most things in life, the more you do, the better you are at it.
Ok, so first off, to me a user interface can be for a particular software or web application, as well as for a simple brochure website (some people see it differently, but hey, this is my blog). In all cases, you want the user to do whatever you planned out flawlessly. That’s a biggie to achieve (how many times have you used a software and wanted to instead go hunting with Dick Cheney?) so I’ll break down the process I follow every time I build a UI.
Step 1: Know your audience
I often see people jump to the design stage without a thought about who will be using the UI. I’ll be frank. These people are idiots. The UI is like a shoe: it has to fit. The trick is to profile your future common users and set a lowest common denominator. This means that if half of your users can reprogram Vista to work, while the other half types only with their index fingers, you must design a UI for the latter user group, otherwise half of your audience will be wishing they went hunting with Dick instead of working with your application.
Now, it may seem you will upset the Uber users by forcing them to do the baby steps when working with the UI, but that can be solved with some ingenuity. For example, the browser you are currently using allows you to select and copy this text in multiple ways. You can either select->right click->Copy, select->Edit->Copy, or select->Ctrl+C, all of which do the same thing, but are created for different types of users. The index typing folks often use the Edit menu (from my experience) and have never heard of keyboard shortcuts, but the tech experts are not as mouse dependent.
Step 2: Put together a prototype
This step involves a number of important topics, so I’ll split it into subsections. Note that parts of this step must often times be repeated over and over until you get it right. Until you develop your knack, this is the pain you must endure.
- Start with your lowest common denominator
At first, create a sample UI to be used by the least tech-savvy group of users, and then add the functionality for the more sophisticated ones. If you do it the other way around, you will never be able to seamlessly water down from complex to simple.
A task can be performed in many ways, so make the choice wisely. Do you use big bright buttons with text and icons for the navigation menu, or do you simply have drop down boxes? It all depends on your lowest common denominator group.
- Use common conventions
We are all used to the drop-down menu on the top left, the status bar at the bottom, the page menu organized on top or on the side, certain icon images associated with certain actions (the [X] button always closes the window, regardless of the software you are using), etc. Use it to your advantage. You can try to get fancy and creative, which is sometimes necessary, but the more you can stick to known conventions, the less time users will spend learning to use the UI.
- Easy to learn, not easy to use
The heading says it all. Don’t try to get the user to “get it” at first glance, unless you know they won’t be coming back. The problem with the UI being easy to use right away is that you won’t pack the necessary functionality into it, and if you try to do so, the UI will become increasingly complex. Think of it as driving. The first time you drive a car is for the purpose of learning. It seems difficult and you suck at it. Years later you get into a car without thinking twice about what you have to do to get all that metal rolling, and driving is a breeze. The same concept can be applied to your UI, but with a shorter learning curve. You want your users to think the first time, but quickly become comfortable with all the functionality as they keep playing around with it.
- Usability wins over “cool” every time
I have noticed that many UI designers try really hard to impress the user with some fancy additions to the UI, which often makes them forget the real purpose of their work. The UI has to allow the user to perform certain tasks, and that’s it. If I’m working with a program that generates reports, and a chicken on the screen lays an egg every time I press a button (exaggerating, I know), someone somewhere lost direction. The developer might have thought that the user will be amused by the gimmick, and that might be true for the first 25 reports generated, but for number 26 and beyond, that chicken’s approval rating starts to drop considerably. This is more important than you can imagine, since the best form of advertising is word of mouth, and your work won’t profit much from it. As a reinforcing example, Google has forever been a text field and a button, and everybody loves it.
- Limit user input
This aspect of the design process is a little tricky and takes a few UI disasters to really master. The simple definition of it is not to force the user to click twice if something can be done with one click (unless it is of crucial importance, like deletion confirmations). The tricky part is to stray from common thinking. Suppose you are designing a website, and you require the user to perform two mouse clicks for some functionality to work because you fear that if you reduce it to one click, someone can accidentally fire off the feature and get redirected someplace they didn’t mean to go. That is true, but consider that if 1000 different users navigate the site, and two of them make this mistake, but the other 998 are quite happy with the quick process, you are much better off than with two users who are glad to have to click a second time, and 998 people wondering why are they being annoyed. A developer’s errors in judgment like these are what often causes the users to want to go hunting with Dick without them even understanding it. A user might be annoyed by the UI without really being able to pinpoint the exact cause (say, useless clicks). Also, often times the users that do make the mistake realize it, go back, and not reproduce that mistake in the future. This concept can be applied to any other aspect of UI design, such as if you are collecting information about your website visitors, don’t ask them for their name and phone number if you don’t need it. Just because many others do it doesn’t mean you have to. As a user, I want to be in and out when getting something done. Keep that in mind.
- Test, test, test
This is probably the most important part of the learning process, and yet most developers, especially during small-scale projects, completely ignore it. Rule of thumb: never assume anything. If you are sure that your navigation menu will be a blast to use and move on, you are likely shooting yourself in the foot. Try the following: find a few people in your inner circle that match the profile of your future users, present them with your prototype, list a few tasks you want them to accomplish, and observe what they do. Do not explain anything about your UI, not even a word. Note any struggles or delays in finding what they need. See if these are repeated as they move along the list of tasks. If they aren’t and the user is moving along much smoother, that means you are on the right track as your UI is easy to learn. If that isn’t the case (which is often the case), you screwed up and need to rethink your strategy, which is good, since screwing up and witnessing it first hand (preferably before launch) is the best learning process there is.
Step 3: Design it
Well, now that the prototype taught you a few things, you can finally put the UI together. It’s important to stick to the original plan, even as you find various things you believe you can add. If it is crucial, then redo the prototype step, but otherwise get the UI done. I live by the popular saying that better is the enemy of done, especially in any kind of design work, where no outcome is perfect and doesn’t have room for improvement. If your UI does what it is supposed to without annoying the user, you did your job, so be happy with it (unless of course the project is a hobby, in which case go nuts).
Also, you must finalize the minor details of the look and feel, such as colors and fonts. This doesn’t require much prototyping as there are guidelines you could follow, such as a bright yellow screen will most likely be difficult to work with.
Well, there you have it. Of course the user interface design process is much more detailed and complex, which is why tons of books exist on the subject, but if you follow these basic guidelines you will be alright as you learn the trade. Also, my word count says I’m past 1600, which is longer than anything I ever wrote without filling it up with quotes (for school purposes), so I’m in unfamiliar territory! Good luck and let me know what you think.
1 comment