Why I Do Not Develop Using Adobe Flash

I have been asked on occasion by clients, friends, and family if I would be willing to design a website that uses Adobe Flash. The short answer is no, the long answer is a tad more involved. Let’s break it down into a list, since I like lists.

Flash is standards free.

Flash is essentially exempt from any sort of standards oversight. It is an all-inclusive program that does little to encourage the development of a more open-standards web. Microsoft Silverlight suffers from this same problem.

Flash has a development entry fee.

For a person to develop a website using HTML, CSS, and Javascript (with images), all they need is a computer and a spark to learn the languages. This requires no capital, and there are many great programs and IDEs out there to make the job easier.

Flash, on the other hand, requires the purchase of Adobe’s Flash development software, which carries a hefty price tag. To a large development firm, this is a moot point. On the other hand, an at-home designer may struggle to justify the cost.

Adobe is slow to patch exploits & auto updates are non-intuitive.

Flash is known to be the target of many exploits, and Adobe is notoriously slow to address them. One of the more notorious in recent memory was the hacking of RSA Security, which was accomplished by taking advantage of an Adobe Flash zero-day exploit. Couple this paradigm with an unintuitive update notification system and you are begging for trouble.

Adobe desperately needs to accelerate their patch system, as well as implement a background-download auto update system to ensure their users are secure.

Flash is a resource burden.

Aside from requiring a ridiculously high 2.33ghz/1.8Ghz Dual Core processor, Flash is well known for sucking up resources and being a CPU hog in general. It is also crash-prone, which prompted Mozilla to put Flash content in a separate container process for their >3.6.4 versions of Firefox. This is so a crash in Flash wouldn’t take down the entire browsing session.

Flash prevents search engine indexing.

By and large, coding content in Flash excludes it from being indexed by search engine, because the text is not clearly formatting on the page and in the code. This often makes a designer resort to using a sitemap or some sort of non-compliant hack to make sure any content held in the Flash application is indexed by search engines.

It’s not all bad.

In general, I’m not saying that Flash is completely useless. Flash does a fine job of playing back video (the h.264 monopoly issue aside), as well as being a great setup for casual gaming. But, for the near future, I do not see my position changing much in regards to web design using Flash.

There are three major things I believe Adobe can do that will make Flash much easier to digest by HTML purists and open-web developers:

  1. Reduce the cost of the Flash Development kit, or release a free alternative.
  2. Create a background auto update system and accelerate the patching of zero-day and major exploits.
  3. Optimize performance by including more hardware acceleration and possibly speeding up the landing of multithreading support.
Posted in Web Design | Tagged , | Leave a comment

Offline Site Testing Using WAMPServer

One of the best applications I have found for testing PHP/MySQL web sites in an offline environment is WAMPServer. The program has served me beautifully over the years.

For a quick primer, WAMP is an acronym for Windows-Apache-MySQL-PHP.

  • Apache is a popular web server application that is commonly used to serve web pages on the internet.
  • MySQL is an oft-used database program that powers many web site backends.
  • PHP is a scripting language that is suited for creating dynamic web pages.

Using the three applications together is a powerful and popular combination for web developers. WAMPServer is a free Windows program that installs Apache, MySQL, and PHP together as a Windows Service, allowing your computer to run an AMP application locally. WAMPServer also allows you install nearly every release of Apache, PHP, and MySQL if you desire to match the exact production setup that you have deployed.

Getting WAMPServer up and running is simple as running the installer (32-bit & 64-bit versions are available) and starting the service.

WAMPServer Tray MenuOnce installed and started, WAMPServer runs in the Windows Tray, allowing quick access to configuration options.

WAMPServer LocalhostBy visiting http://localhost (or clicking the Localhost link in the WAMPServer Tray menu), you’ll be given a front end to browse the projects you are working on, which are contained in the x:/wamp/www directory.

For example, if you have a PHP website in the x:/wamp/www/PHPSite subdirectory, you would click the PHPSite link in the “Alias” section in the Localhost landing screen or visit x:/wamp/www/PHPSite in your web browser of choice.

I find WAMPServer is very useful for getting a MediaWiki or a WordPress test deployment running fairly easily. Once it is hosted under WAMPServer locally, you could, for example, create your WordPress theme offline then upload it your your actual web server when it is finished.

Overall, WAMPServer can easily become an invaluable addition to your development environment. If you are a professional PHP developer, or even just a casual user who wants to test a PHP app such as WordPress before taking it online, I urge you to download WAMPServer and give it a whirl!

Posted in Software, Web Design | Tagged , , , | Leave a comment

A Tale of Two Movie Trailer Sites

As a film lover, I find myself frequently visiting two sites to catch up on the latest movie trailers: Apple Movie Trailers and Yahoo HD Trailers. On their own, they each offer something that quickly draws me in, but I believe that if those features were combined, it could make for a truly pleasing end-user experience.

Yahoo TrailersI often find myself using Yahoo’s site if there is a specific trailer I am looking for. The site uses a traditional list style to display the trailers that they host. When you click on a text entry, it pops down and displays some information about the movie, such as release dates, stars, a synopsis, etc. It does this using JavaScript and does not require a separate page load. This is the feature of Yahoo’s site that I like.

Apple TrailersIf I feel like browsing through trailers and I’m not looking for anything in particular, I will visit Apple’s site. Apple’s trailer selection is setup like a poster aggregate. It is much more visual and allows me to get an idea of the potential style of the movies/trailers, much like browsing the covers at a rental store or library. By clicking on a poster, it takes you to a separate landing page (and thus requires another page load), where it displays all of the information about the film in particular.

If the best of both sites were combined, they could be amalgamated into an all-inclusive trailer super site. A site where a user can browse “covers” and quickly get information about the films without unneeded page loads or delaying the relay of information.

Apple and Yahoo Trailers CombinedUsing my mockup example above, you could easily combine the two design ideas and have a quick, easy to read, non-JavaScript reliant setup that gives quick and important info on the films. Clicking on the posters themselves could enlarge the poster in a lightbox-type preview and clicking the link could lead to a Apple Trailers-like landing page. A combination like this is really the best of both worlds and would be something I would like to see implemented.

Posted in Web Design | Tagged , , , , | Leave a comment

Software Spotlight: KeePass

I believe web security is something that most, if not all, web developers deal with when developing a site. While the burden of login and data security rests on the site and developers, the login details of the users rest on the users themselves. That’s why I recommend a free program for password management: KeePass.

KeePassKeePass is essentially a database program that allows you to create entries for your login details for websites, accounts, etc. These entries are then saved into a database file and secured by a master password and/or key file of your choice. The database file you create is itself encrypted using 256-bit AES, as well as created to protect the file from being hacked using a dictionary attack. So, you can be safe in the knowledge that if someone gets a hold of your database file, you are protected from it realistically ever being hacked.

Once you have your entries created and your master password chosen, all you need to do is simply open the database file with KeePass and use your master password to login. From there, you can open your web site login entries and simple drag and drop your usernames and passwords into the appropriate website inputs for easy use.

A portable version of KeePass is also available for download, which is standalone and does not require installation. The beauty of this particular setup allows a user to keep KeePass and their database file together for password retrieval on the go. For example,  you can carry KeePass and your database file on a flash drive together, or even sync your database file using Dropbox.

One feature of KeePass that I love is a simple one: random password generation. Using KeePass to create new entries encourages the use of random characters for passwords. Where a simple word password can easily be cracked, creating a truly long, randomly generated character string makes the password exponentially harder to crack.

Here are tips I recommend if you are going to jump into KeePass:

  1. Create a new database and select a long, easy to remember password that mixes letters, numbers, and synbols. This is the password that locks the whole thing down. Forget this and you’ll never be able to retrieve anything in the encrypted database. If you need extra security, consider creating a key file to accompany your password.
  2. When creating a new online account (and in turn creating a new entry), use the 256-bit Hex Key random password generator. If you can only use so many characters for your online password, consider using the 40-bit Hex Key random and deleting the last couple of characters if needed.
  3. Create multiple copies of your KeePass database file and store them elsewhere. In case of catastrophic emergency, such as a fire that destroys your PC, as well as all the burned backups in your house, you’ll have an off site copy. Also, consider emailing yourself a copy weekly or storing one in a flash drive away from your PC.

Using KeePass and its random password generator can strengthen your online accounts, as well as help you manage your passwords in one, consolidated place.

Posted in Software | Tagged , , | Leave a comment

So, it has come to this…

About 10 years too late, I think I’m going to jump on this whole blog thing.

Essentially, I wanted to have a place to post some interesting or helpful articles or tutorials related to web design or technology. I promise to make an earnest attempt to post semi-regularly, and I encourage visitors to jump in and comment!

Posted in Site Related | Tagged , , | Leave a comment