insight

A Developer's Perspective on Collaboration

by Josh Kemmerling January 15, 2010

Everyone knows that developers aren’t as creative as designers. Not even close. Which is why developers find it hard to work with designers … we’re afraid of having our ideas shot down. Instead of volunteering our ideas, we wait until the designer asks for a suggestion. (Actually, from what I‘ve learned, designers like to have our input. Who knew?) How do we break this cycle of fear? How do we get to a point where we can give designers suggestions that we feel are useful? If designers don’t know what developers are capable of, many potential features could be left out of a project.

The hard part about giving designers suggestions or ideas is trying to give a technical suggestion without making it a design suggestion. This can be hard to do because we don’t always know what the designer is looking for. As developers, we should strive to make suggestions that enhance the way a site functions, without directly impacting the site’s aesthetics.

I recently collaborated with a designer on a microsite, where I recognized an opportunity to streamline the user experience. I wasn’t trying to change the user flow or the way the site looked, I was trying to make the user experience faster. While working with Springbox Art Director Phil Coffman on the AMD Collateral Generator project, I offered suggestions on different technologies that would streamline performance. My idea was to make the site AJAX-based. This would keep the whole page from constantly refreshing, making the user experience a little faster. Much faster, actually. Without taking a chance and sharing my idea, I doubt Phil would have known that we could successfully use that technology.

So, as developers, we have to make sure we don’t cross the line into a designer’s territory. We want to give technical suggestions that aren’t design suggestions but rather complement the overall experience.

This post is first in a two-part series. Look for the second stanza, the Designer's perspective, next week. 

Watir: Take the Plunge

by Josh Kemmerling December 30, 2009

Watir, pronounced water, automates web browsers. It is an open-source library that simulates link clicks, presses buttons, fills out forms and more. If it takes place in a web browser, you can probably make it happen with Watir.

Although it’s a family of Ruby libraries, Watir is a little different to set up and use — but it still supports all web applications, regardless of what you use for development. The library can connect and query databases, read spreadsheets and export XML files. It’s hard to imagine what this looks like when it runs. After you use it once, you realize how nice it actually is.

You can use Watir to perform repetitive testing tasks normally handled by a human user. For example, it can repeatedly click around a page and generate a spreadsheet of results. It can also input data from an Excel spreadsheet into a form and submit it. While it was initially created as a testing tool, you can Watir to accomplish most tasks handled in a browser.

Watir will work on any system, and it works with most of the popular browsers out there, including Internet Explorer on Windows, Firefox on Windows, Firefox on Mac, Firefox on Linux, Safari on Mac, Chrome on Windows and even Flash testing in Firefox. That’s right, Flash testing.

So why Watir?
•    It’s free
•    It’s open-source
•    It supports any type of website or web application
•    It’s easy and fun to use
•    It’s very lightweight
•    It has multi-browser and multi-platform support
•    It allows you to test Flash applications

Why not install Watir now? If you already had, it could click the link for you!

 

WordPress Is Awesome!

by Josh Kemmerling May 15, 2009

You’ve probably heard of, perhaps even used, WordPress, a state-of-the-art publishing platform with a focus on aesthetics, web standards and usability (if you’re drawing a blank, read on). A self-hosting blogging tool written in PHP, Wordpress made its debut in 2003 and has seen steady growth and acceptance ever since.

WordPress is packed with very cool, very FREE features. Visit wordpress.org to download the latest version using their famous 5-minute installation. If you don’t have a web host, you can get a free blog at wordpress.com using the WordPress tool. 

While there are loads of features that make WordPress appealing to developers, designers and everyone in between, the main plus is the huge amount of support it gets. You don’t need to be a creative genius to have a nice site: there are free WordPress themes everywhere (try Free WordPress Themes directory and SmashingMagazine for starters). You can even find free plug-ins to do things like increase SEO per page, add security to your content or convert WordPress to a full blown CMS tool.

Other notable WordPress features include:

  • Built-in spam protection
  • Support for multiple authors
  • Comments section
  • Full user registration
  • Workflow
  • Full standards compliance
  • Search capability
  • and on, and on, and on…

Many hosting providers are setup and ready to install WordPress. It just couldn’t be easier.

5 Things You Should Know About MVC

by Josh Kemmerling April 17, 2009

Model-view-controller (MVC) is a programming pattern that is used in application developing and software engineering. Its most popular form of use is in web development. You can find a framework that utilizes the MVC pattern for almost any programming language, from Python to .Net to Ruby. That said, here is what you need to know about MVC:

  • Separation of interface and logic layers. This makes it easier to modify applications that are built with MVC because you only have to deal with one layer at a time, so fewer parts of the application are affected by changes during the editing process.
  • Preconfigured frameworks. MVC frameworks typically come pre-configured with the logic and presentation layers separated for a better organized and more efficient application. This helps make the code more testable, which ultimately leads to a higher quality and more reliable product.
  • Less code to write. Most developers write the same code over and over, repurposing it on different sites. MVC frameworks often provide a lot of the boilerplate code that developers find themselves writing and re-writing. That way, you can build the same application faster and with less code, which leads to quicker turnover.
  •  Serious flexibility. MVC frameworks can be added to a directory of any existing site for things like custom-built blog engines. They also come set up with the ability to add new technology to the application, or add any third-party software you desire.
  • URLs primed for SEO. MVC frameworks tend to use some form of URL rerouting, offering ways to create clean custom URLs and even add special URL treatments per site or page. Cleaner URLs lead to better search engine optimization. Who doesn’t like that?

A lot of applications are currently powered by some sort of MVC framework, and I’m willing to bet that one exists for your language of choice. Microsoft is coming out with a MVC framework soon called ASP.Net MVC, so rest assured you’ll be seeing much more MVC in the future.

Thanks to John French for contributing valuable insight to this article.

The way we see it, people who share insight with each other innovate, grow and succeed together.

Subscribe

Log in

The opinions contained in these pages do not necessarily reflect those of Springbox or its parent company, DG FastChannel.