Still using IE6? Update to the latest version of IE or Firefox to get the most out of this site!



Designing for Too Many Browsers

Making internet technology and Website designs that work has become increasing more challenging due to the plethora of browsers available today; in particular, quality assurance testing has become extremely challenging and time consuming.  One important consideration for saving time, is to design and program based on your targeted browser community.   So…how do you know what features are supported by each browser?

The Can I Use Website located  here or the Web Designer’s Checklist located here are both tremendously useful tools because they help you determine if a particular HTML or CSS feature is supported by a specific browser type and version level.   For example, how many of you have heard of Web Sockets which instead of using http://  URL addresses you would have a ws:// starting URL?  Web Sockets will eventually allow browsers to support persistent connections on servers and improve performance; however, this feature is not yet supported until IE version 10 although FF, Chrome, and Safari partially support it for some time now.  Needless to say,  it’s a good idea to avoid Web Sockets if IE 6,7, 8, or even version 9 are part of your visitor’s web profile.

Bottom Line:  http://caniuse.com  and http://findmebyip.com/litmus are very helpful design planning tools that can help make sure that your code will be compatible with your visitor’s targeted browser types and versions.  Check them out…

 

Posted in Technology that works | Leave a comment

A Tale of Two Cities

I was reading this Blog post from one of our colleagues, Steve Poppe, and the essence of what Steve writes about is truly what we strive to achieve each day at Millennium; providing our clients with a truly integrated and exceptional creative and technology experience.

Posted in Creative that works | Tagged , , , , , , , , , , , , | Leave a comment

Bre.ad: a fresh new link-shortening site that rises to change how you share links

If you’re familiar with Twitter or Facebook, then you’re also familiar with link shortening sites such as bit.ly and tinyurl.com. These sites are great because they allow you to shorten a link from lots of characters, to one link with only a few characters. A short link is pretty crucial today when your total message can only be 140 (Twitter) or 420 (Facebook) characters. Thanks to link-shortening sites, we can focus on the content of our tweet rather than a long url string.

But what if these tiny links could provide a bigger opportunity? What if they allowed you to serve up a message in-between a user’s click and the final destination? Enter Bre.ad. This site (now in beta testing) shortens links like bit.y and tinyurl, but goes one step further. Bre.ad provides an interstitial page or billboard before the user lands at the shortened url. Bre.ad calls this interstitial page a “toast.” Get it?

The Bre.ad link and its “toast” can provide advertisers an additional opportunity to message their consumer. Think about when you “toast” someone at a party. Your toast brings attention to them and highlights something great. And, unlike some champagne toasts that drag on for way too long, bre.ad toasts are only 5 seconds long, which is just enough time for a consumer to get the message but not too long for them to get annoyed.

Think of this “toast” billboard as the one punch and the landing page as the two punch. Advertisers could have fun with this new experience by posing a quick question on the billboard and paying it off on the landing page. For example,

Example: check out our portfolio page for a campaign we launched for Ronzoni Garden Delight Pasta.

Setting up a “toast” is extremely easy. Just upload an image and a short (of course) message (140 max characters) and you’re all set. After that, shorten the link and share it with friends. If you want to get really crazy, make multiple billboards for different sites.

So, here’s to bre.ad, a short way to make a big impression.

Posted in Creative that works | Tagged , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , | Leave a comment

High Performance Websites

requirements

This was a great read. Certainly learned a lot of useful lessons on front-end optimizations. Written by Steve Souders (previously lead Optimization efforts at Yahoo!), who also developed YSlow! – a Firefox add-on (actually an add-on to the Firefox add-on called Firebug) that gives your web pages a grade from A through F and tells you how to make them faster.

If you have a build script, you may be able to automate a lot of what he mentions in the book, like combining JS and CSS files, and optimize PNG files (check out http://www.phpied.com/give-png-a-chance/ to see how to optimize from the command line). If you’re going to optimize JavaScript, I would recommend YUI Compressor (http://developer.yahoo.com/yui/compressor/) since it’s not as greedy as Google’s Closure Compiler for JavaScript. The Closure compiler (http://code.google.com/closure/compiler/) is relatively new and you may get even smaller files, but if your JavaScript is complex, it may have bugs because it’s a greedy compiler.

Anywho, here’s what I got from it:

  1. Reduce as many HTTP requests as possible.
  2. Minify JavaScript (don’t obfuscate, because it’s more trouble than it’s worth for the benefits you get)
  3. Minify CSS and optimize it (reduce duplication).
  4. Future-expire resources for caching (PNG, JPG, GIF, JavaScript and CSS).
  5. Minify HTML (get away from tables)
  6. Put CSS at the top, put JavaScript at the bottom.
  7. For design components (background images, button images, nav images), use CSS sprites.
  8. Use PNG for design components (they compress better than GIF, have partial transparency, and can have greater color palettes).
  9. Gzip non-binary data like HTML.
  10. Combine CSS and JavaScript into single files to reduce HTTP requests.

A summary of his optimization rules are found here, but of course, it’s not as detailed as the book: http://stevesouders.com/hpws/rules.php .

Stoyan Stefanov, another prominent developer who’s written tons on JavaScript and optimization, published 24 articles this month on optimization. I find these articles invaluable. It’s recent and he does actual optimization tests and tells you what tools he uses. Here’s the site: http://www.phpied.com/performance-advent-calendar-2009/

Posted in Technology that works | Tagged , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , | Leave a comment

What is an advertising agency?

Years ago, when Napster arrived and the record companies froze, a college student was asked about the music business.  He posed a question:  “why is there something called a record company that profits from the music I like?”  He wasn’t opposed to artists making money on their music. Quite the contrary.  He was asking, “what is the music business?” Apple quickly answered that question.

Today, brands are asking, “what’s an advertising agency?”

As agency work has expanded into labor intensive “free media” how should an agency be paid?

What is a “creative team?”  (Hint: it’s not simply a copywriter/art director)

Is there still a place for the long-running campaign or should it be replaced  by the long running strategy/positioning?

When will the words “traditional agency” fade away?

I like the way Theresa Lezzi attacks conventions in her new book, “The Idea Writers.”

“First, forget about making an ad; instead focus on creating something useful, entertaining or beautiful (or all of the above) on behalf of a brand.”

Who will create these things? If they are not advertising, what’s an advertising agency?

Posted in Creative that works | Tagged , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , | Leave a comment

Why Facebook Pages are different than Profiles?

Recently, Facebook added a feature that allows brands, small businesses, and organizations with older “profile-based” user accounts to migrate their Facebook accounts into Facebook Pages.

Prior to this feature, businesses were afraid to lose fans when creating a new Facebook Page; however, it’s now advisable that any Business, Company, Brand, Artist, Entertainment, or Non-Profit Communities convert their old profiles to Facebook Pages.  Below, is a snapshot of the choices available for page categories:

Top reasons why Facebook Pages are better:

  • FB Pages can have an unlimited number of fans while profiles are limited.  There is an active petition located here to remove what is thought to be a 5000 friend limit.  FB pages are intended for larger quantities of fans.
  • Facebook offers helpful admin features to administer your pages which improve your control over the user experience.
  • Purchase or Add Facebook applications — built using developer APIs – to customize your visitor experiences and add viral features to your community.
  • Gain access to meaningful analytics about how users are interacting with the page.
  • Pages can have multiple administrator accounts assigned which enables multiple people to help manage the Facebook Content.
  • FB Pages facilitate running promotions, contests, games, and e-couponing through Facebook’s Deals features.
  • Pages are supported by Facebook’s Advertising system so you can promote your Page using Facebook Ad campaigns.

How do you get started with Facebook Pages?

1.   Read the Help Section located here.

2.   To create a new page, visit here .

3.   To convert an existing profile, begin by clicking this link.

Posted in Technology that works | Tagged , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , | Leave a comment

Have you heard of WAC – Wholesale Application Community for Mobile?

Is there a simple way to develop for every mobile platform?
The Wholesale Applications Community has been established to answer this very important consideration. In particular, their mission is to increase mobile applications market by enabling cross-platform and carrier-impendent developer support.

The WAC initiative has approximately 70 members, which are mostly mobile operators such as AT&T, China Mobile, MTS, Orange, Smart, Telefonica, Telenor, Verizon Wireless, and Vodafone. These mobile carriers are trying to avoid just becoming the plumbing behind the success of companies like Apple, Google, Microsoft, and other companies that have quickly entered the smart phone mobile industry.

At this month’s Mobile World Congress meeting, WAC 2.0 was released with support for HTML5′s built-in multimedia abilities. WAC technology is essentially a close variation of Web application programming. To be a compliant phone, there is “runtime engine” which becomes the software foundation needed to run the apps. This “runtime engine” is intended to enable developers to write native mobile applications across multiple mobile device platforms, using web-based programming techniques.

Furthermore, WAC is promising to enable applications that can be deployed across the connected retail application stores. The end result of the WAC approach will be to significantly increase the number of applications which are available to users by simplifying and lowering the cost of their development, testing and deployment by developers. WAC wants to be the vehicle to bring the mobile industry together to achieve this goal. Version 3 will be release by Sept 2011 and you can get all the software development kits here.

I don’t know about you but this sounds too good to be true…  Why would Apple, Google, Microsoft, and other Mobile innovators get behind this standard?

Posted in Technology that works | Tagged , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , | Leave a comment

Requirement Analysis: Asking the Right Questions

requirements

Many times when you’re eliciting requirements, you may be asked the question:

“We need to add a textbox on this page. How long will it take?”

That’s when your brain starts firing off neurons and begins synthesizing questions so you’ll be able to best meet the demands of the task. To aid your requirements analysis journey, here’s a checklist that may help you predict the effort involved.

To start off, let’s take a simple task, such as “add a textbox on this page” and see what it could potentionally involve. These requirements may apply to other web components of a web page.

Usability Requirements

  • Should the TextBox have a label? Above it? To the left of it?
  • Is it a required field?
  • Should it be pre-populated?
  • Does it require AJAX functionality? Autocomplete? Retrieved from a defined set of data?
  • Is the TextBox already conveyed somewhere else in the form? (I’ve had times where the stakeholder didn’t know that the field was already in there. )
  • Where on the form should it be? (This is particularly important if you’re dealing with a form wizard. )
  • Should the data be tracked via some analytics tool?
  • How many characters are allowed?
  • Inline validation or validation after form submission? Error message at the top of the form?
  • JavaScript validation or server-side validation? Both?
  • Should the TextBox have inline help?
  • How prominent should it be? Above the fold?

Business Requirements

  • Does this TextBox show up to all users or just Administrators? (Depending if there’s a user privilege hierarchy in a CMS. ) What user roles are allowed to see this?
  • Does the data gathered in this TextBox go against the business rules of another product in the company? (For example, the TextBox could be prompting for your social security number, while Finance’s policy strictly forbids it. The stakeholder you may be dealing with may not know this.)
  • Does this have to be conveyed through reporting?

Content Requirements

  • What should the microcopy be for the label, for the error message, or text in the TextBox if it’s prepopulated?
  • What’s the translation in another language? (Ideally, find a native speaker; Google Translator may not be sufficient. )

Engineering Requirements

  • Do you need to modify application code to fit this TextBox in? Which class/file? New method? New property?
  • Do you need to add a new database column for this TextBox? Is there a column that you can reuse? Which table should you put it in?
  • Does this database column need an index? A new table? Referential integrity?
  • What data type is it? Varchar? NVarchar? Text?
  • Does it need to be indexed via a Full-Text Search Engine?
  • Does the data from the TextBox need to be in the user’s session?
  • Will you need to create new language tokens in your resource file to add the copy for the TextBox and label? Can you repurpose (or should you) existing ones?
  • Do you need to use JavaScript framework to validate it? Use an existing JavaScript validation function or roll your own?
  • Use CSS3 for styling? HTML5?
  • Should any API’s/Web Services be updated because of this?
  • Because this is a new field that was not introduced at the birth of the system, what should existing records that now have this new field, be set by default? Null? Empty string? Default text value? ID?
  • Does it impact any unit tests? Create new ones?

Testing Requirements

  • Are the Usability, Content, and Business requirements (shown above) met?
  • How does it display in various web browsers?
  • How well does it do in usability testing?

Deployment Requirements

  • Are the changes for this TextBox small enough so that it can be rolled out with the normal scheduled builds?
  • If not, when can it be deployed?
  • Does the build script or process need to be modified to roll out these changes?

Project Resource Requirements

  • Do you have the human resources (developer, designer, usability tester, etc.) to work on this?
  • Do you have to update documents (requirements document, project plan, etc.)?
  • What is the priority and risk for this project?
  • How much will it cost?

That’s just a high-level summary. I didn’t even mention SEM/SEO, branding or design requirements (if applicable). I’m sure you can go to a QA engineer, a content strategist, a designer, or a DBA, and get a breakdown of even more details. No doubt that you can dig deeper, but this should put you on the right track.

Posted in Technology that works | Tagged , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , | Comments closed

“Don’t be scared.”

Millennium Communications helps a nervous businessman overcome his fears.

Posted in Creative that works | Tagged , , , , , , , , , , , | Leave a comment

Happy Hanukkah from our conference room

Posted in Creative that works | Tagged , , , | Leave a comment