The Little (In-House) Shop Of Horrors

I’ve been a front-end web developer for nearly ten years. Like many of you, over that time, I’ve read many books, industry blogs, and online magazines, featuring the latest and greatest tutorials, theory, and practice. There’s a problem though: I haven’t been able to use much of what I’ve learned at my day job. My name is Jason Occhipinti, and I’m a recovering in-house web developer.


Ah, The Good Ol' Days...

My name is Jason Occhipinti, and I’m a recovering in-house web developer.

In web development terms, a decade feels more like a century. Let’s look at the state of things ten years ago:

  • In 2002, the now-infamous Internet Explorer 6 had just begun its long and dubious tenure.
  • Jeffrey Zeldman’s landmark book: “Designing with Web Standards” hadn’t been published yet.
  • Mobile browsing meant text-only experiences on feature phones, while the term “Responsive Web Design” wouldn’t be coined for nearly ten more years.
  • Heck, many of us were still designing our websites with non-semantic tables... and loving it!

Eventually, things changed. Web standards were introduced and widely adopted, while table-based layouts died out. Even our browsers improved immensely. Amid increasing competition, Microsoft finally decided to take implementing web standards seriously. Additionally, mobile browsing not only became a reality, but it legitimately exploded with popularity.

Yes, things sure did get better, didn’t they? Well, not for all of us.

I noted earlier that I’m an in-house web developer. What does this mean? This means that a good portion of in-house jobs may consist of designing websites and web interfaces for internal company purposes (typically on an internal network, or intranet). In other words, we’re generally not developing products directly for the consumer market, like someone in an agency might do.

In this environment, you will quickly become well acquainted with our new worst enemies: network policies, corporate intranets, and IT departments.


Network Policies

Imagine perpetually designing websites and web applications for Internet Explorer 6. This is the fate of some web designers working in-house.

For uniformity, ease of maintenance, and security, there may be a strong set of group policies applied to every machine in your organization, with few exceptions. In a Windows environment, this may mean that you and your customers are unable to install new software on your machines with ease, and are literally locked into using Internet Explorer (and possibly an older version at that….more on this later). Installing software unapproved by your organization for development purposes may take months of cutting through bureaucratic red tape.

Some of the most restrictive network policies can block the use of ActiveX content, as well as the loading of JavaScript and other external resources. In this type of environment, mundane tasks, such as adding functionality with JavaScript, or loading resources from CDNs, may prove to be impossible.

What’s more, strange/bizarre things may happen, while you’re trying to develop for a browser on a locked-down machine. Case-in-point, I have encountered browser restrictions that prevent something as simple as loading the HTML5 shiv externally, and conditional comments from being used with Internet Explorer.

Imagine perpetually designing websites and web applications for Internet Explorer 6. For many designers this may seem unsavory, but this is the fate of some web designers working in-house.


Corporate Intranets

The internal web world may look a lot different than the world of Wordpress, Drupal, and mySQL.

Corporate Intranets often contain a myriad of internal websites and web applications that people in your company or organization use. From time keeping applications, to other legacy content management systems and proprietary databases, the internal web world may look a lot different than the world of Wordpress, Drupal, and MySQL. Legacy applications may even be built with antiquated languages, like WebDNA.

There’s a secondary, more important, side effect to dealing with legacy, internal systems: web browsers. If your company has legacy-web applications that control vital internal functions (like, say, time keeping or expense-management software), then there’s a very good chance that those applications may break if they are viewed through a more modern browser, like Internet Explorer 9+, Chrome, or Firefox. Your IT department has probably tested those applications with newer browsers, and have recommended to management against using them within your company. This is very bad - but very much a reality!


Welcome to Blackberry-ville Baby. Population: You.

In this world, true responsive design isn’t really a reality. At least, not until RIM goes under.

After a lot of confusion earlier this year on RIM's future in the consumer market, the enterprise remains RIM's last bastion of hope after taking an amazing beating from Android and iOS handsets. Yes, it’s no surprise, with more robust security features, Blackberry’s remain a favorite of IT departments with strict security requirements. Some consumers still prefer Blackberry, as well. Heck, even President Obama has been known to enjoy a good Blackberry or two!

Blackberry introduced a bunch of new issues to deal with; issues that were unheard of from its Android and iOS counterparts. As an example, many Blackberry devices have slower processors, physical keyboards, and smaller, non-tactile screens. But, even worse, in the past, Blackberry browsers have had CSS and JavaScript turned off by default. True, we can have our users or IT departments enable these features, but for anyone who has actually had to work with the public directly, or have had to wade through red tape, you can imagine how bad this can get. In recent years, RIM's support for modern web standards (a listing of supported HTML, CSS, and JS properties can be found on RIM's site) has improved, but past browser issues and heavy-handed IT policies have soured the Blackberry experience for many designers.

With the combination of Blackberry’s and legacy versions of Internet Explorer, your life can get very difficult indeed. In this world, true tactile and responsive design wasn't and still may not really be a reality. At least, not until RIM goes under.


Moving On From Here

What can we do in the face of these problems?

So, one major question arises from all of this: “What can we do in the face of these problems?” For those of us who don’t want to quit our day jobs and run screaming into the night, or pick up binge-drinking as a hobby, the answer is simple: we do what we can, when we can…and prepare for the inevitable future.

When we discuss older browsers, like Internet Explorer 6 and 7, there are plenty of JavaScript tricks around to add functionality to your sites, including support for HTML5 tags, media queries, transparent PNGs, and much more. Working on internal networks, we may be able to leverage something that is normally a constraint when working in the outside world: bandwidth. Depending on the size of your organization, traffic, and setup, a high-speed internal network can give developers the opportunity to include more scripting assets than they normally would.

Also, when working in-house, you generally know which browser your company uses on its machines. Naturally, the non-purists among us can use CSS hacks and filters as workarounds for display issues. Yes…having your users locked into a certain browser does have its small advantages.

Have faith that things will get better

As an in-house developer, you also need to realize that, eventually, things will improve.

As an in-house developer, you should also realize that, eventually, things will improve. I admit, there is a lot of frustration to deal with, as many times, we cannot use the latest and greatest techniques at our day jobs. Temper these feelings with (what I hope is) the reason you’re in this field to begin with: passion. Read voraciously, do as much freelance as possible, take a class, or reach out to other web designers and developers. Do anything you can to keep your skills current. In this kind of environment, it's easy to get stuck in an innovationless, business-as-usual mindset. Fight those tendancies...stay focused and passionate.

Remember that, inevitably, machines reach the end of their lifecycles. Hard Drives crash, motherboards fail, and software makers like Microsoft stop supporting and releasing patches and service packs for older operating systems. With new machines come newer and better browsers.

As for mobile experiences, thankfully, iOS and Android phones are gradually getting better in the security department. Also, consumer appeal may leave many people in decision-making positions clamoring for these devices.

So, I guess if we’ve learned anything from these experiences, it's that creating websites in-house is a far different experience from that of an agency or outside customer.

I know my colleagues in agencies have a greater appreciation for the freedom (both creatively and technologically) that their industry affords them. As for us in-house folks…we’ve learned to be patient…perhaps more patient than we should be.

Tags:

Comments

Related Articles