9 Signs You Shouldn’t Hire THAT Web Guy – 2013 Edition

By  on  
Web Guy

Back in February 2008, this blog arguably hit its peak (/me weeps). I was still a bit of a noob web developer and I cringe when I see some of my older code, but it's back then when I wrote 9 Signs Not to Hire THAT Web Guy. The post blew up the internet, being featured on the Reddit homepage, Digg homepage, and even got featured (picked by Kevin Rose) on Diggnation. It was an incredibly proud time and the post adequately depicted the type of webmaster that no one should hire.

Times have changed but that simply means that the ... qualities ... we look for in ruling out a developer ... have changed. Here are today's nine signs that you shouldn't hire THAT web guy.

Mobile Sites Only Work in Mobile WebKit

iOS-based devices and Android devices dominate the mobile market share and use WebKit-based browsers, as do their native-wrapped HTML5 apps. That has led developers to exclusively use -webkit- prefixes in the mobile code, ignoring the fact that Opera, Mozilla, and Internet Explorer have a growing internet presence. It's the equivalent of coding only for Internet Explorer back in the 4, 5, and 6 days. Mozilla has unprefixed most CSS properties so as long as you're using standard CSS you'll be fine, but it still pays off to use -moz- prefixes for edge properties. The important thing to remember is that there's more to mobile than WebKit, and the upcoming Firefox OS launch will prove that (if Firefox for Android hasn't already).

They're a "{{ js framework}} Developer"

I've given dozens of technical interviews over the past few years and it becomes apparent quite quickly if the candidate is a knower of a framework or a developer that knows JavaScript -- two vastly different stories. I'll ask something as simple as "How do you get the child nodes of an given element," almost spelling out the answer, and I'll hear something like "I use the children() method." Not good enough.

They're a "lump.js" Developer

Tools like RequireJS and curlJS make JavaScript module loading so easy that there really isn't much of an excuse to not write modular code. If your site only uses a bit of JS, that's fine, but there's no point in creating massive .js files out of laziness or lack of skill.

Their Design Isn't Responsive

Very few websites and web applications are desktop-only, so clients should expect their modern-day designs to be, at the very least, presentable on mobile devices. Media queries are so easy to use and implement that there's no excuse not to use a few of them to modify structure and content display. The mobile display of this site took little effort and looks great, so why shouldn't every dev do so?

They Know "HTML5"

Knowing "HTML5" is the equivalent of yesteryear's "Web 2.0" . HTML5 is somewhat of a marketing term and a blanket statement that you know HTML5 is probably a sign that...you may not know its components. Press anyone claiming to know HTML5, asking them about specific APIs. Don't know much? Don't hire THAT web guy!

They Don't Use Feature Detection

Every seasoned developer knows that using UA sniffing can bite you in the ass but even worse is not using feature detection in the first place, simply assuming that all browsers have the given feature. Or not backing up your CSS properties with browsers prefixes. THAT type of web guy will get you in trouble quick.

They Include Unnecessary Libraries

JavaScript libraries and micro-libraries are incredibly useful but oftentimes incredibly overused. If I had a dollar for every time I've seen jQuery within a page for just the purpose of a quick animation or a bit of DOM use, I'd be a millionaire. I'll also see all of Modernizr included for one feature test, when simply grabbing the code for that test will do. That type of laziness bloats the page and executes loads of unnecessary processing.

They Still Think "Mobile" Means iPhone and iPad (iOS)

iPhone ands iPads weren't the original mobile devices but they were the first to take off, so for a short time they were all you really needed to account for. Unfortunately THAT web guy is still living in the past, while Android and Firefox OS devices are becoming more and more popular.

They Think HTML Apps are a Fad

THAT web guy still thinks that HTML-based apps are a fad and that PhoneGap is the only route to making them. Enter Firefox OS and the numerous other web OS' hitting the market. If it works in your browser it will work on the new OS', so a negative HTML app attitude will get you in trouble in a hurry.

While the definition of THAT web guy has changed over the years, you can always spot him. Be on the look out -- this dude can put you down the wrong path in a heartbeat!

Recent Features

  • By
    fetch API

    One of the worst kept secrets about AJAX on the web is that the underlying API for it, XMLHttpRequest, wasn't really made for what we've been using it for.  We've done well to create elegant APIs around XHR but we know we can do better.  Our effort to...

  • By
    CSS vs. JS Animation: Which is Faster?

    How is it possible that JavaScript-based animation has secretly always been as fast — or faster — than CSS transitions? And, how is it possible that Adobe and Google consistently release media-rich mobile sites that rival the performance of native apps? This article serves as a point-by-point...

Incredible Demos

  • By
    Create a 3D Panorama Image with A-Frame

    In the five years I've been at Mozilla I've seen some awesome projects.  Some of them very popular, some of them very niche, but none of them has inspired me the way the MozVR team's work with WebVR and A-Frame project have. A-Frame is a community project...

  • By
    Build a Slick and Simple MooTools Accordion

    Last week I covered a smooth, subtle MooTools effect called Kwicks. Another great MooTools creation is the Accordion, which acts like...wait for it...an accordion! Now I've never been a huge Weird Al fan so this is as close to playing an accordion as...

Discussion

  1. About the responsive part:

    http://xkcd.com/1174/

  2. Luiz Paulo

    I agree with everything expect the {{ js framework }}’s example. I would be satisfied, for example, if he understands closures and object inheritance rather than remembering a specific function of the DOM API.

    Other than that, I couldn’t agree more :D

  3. “If I had a dollar for every time I’ve seen jQuery within a page…”

    I can’t tell if that was on purpose or not. *:^)

  4. on the point of He’s a “lump.js” Developer.
    Require.js can be used in combination of modular / non modular patterns in javascript.
    Modular pattern are not always the solution, but nonetheless Requirejs will certainly help load javascript files faster and organize structure.
    also on the point of he is a {{js developer}} he should have a good foundation of javascript, but javascript itself is not enough, he should KNOW how to use javascript frameworks to speed up development

  5. Steve

    Replace the generic Developer with Front-End Developer and the article makes more sense…

  6. Matt Johnson

    Regarding your point about “Feature Detection” – it is possible to write good HTML(5) and CSS(3) without relying on a JS crutch to tell you which CSS keywords to use. I think in that scenario, it’s desirable to not have CSS styling dependant on JS load/wait/domready/check.
    If a dev came to me and wasn’t aware of feature detection, I would likely never teach them it, and instead favour only good/stable CSS keywords

  7. That has led developers to exclusively use -webkit- prefixes in the mobile code, ignoring the fact that Opera

    Opera switched to Webkit recently

  8. Dinko

    He’s a “{{ js framework}} Developer”.

    I don’t get this one. Is it bad to use jQ even for small projects? It will be an overhead? Do I need to create my own framework and method for selecting child nodes? Re-event a wheel?

    I can say that I handle OOP in JS way very good but for manipulating DOM I always use jQ.

    • No no no. I mean that you want a developer who knows “JavaScript”, not just “[insert framework here]”.

  9. Jo

    #10: He thinks that developers can only be guys.

    Come on, it’s 2013 – be gender inspecific already!

    • I’ve always used “that guy” as inspecific. Girls can be “that guy” too!

  10. I’m glad to see the “framework developer” point.

    Libraries will come and go, but it’s all just JavaScript and knowing that will go a long way in all situations.

  11. Jo

    @David Walsh: “He” – is NOT gender inspecific.

    • My understanding of English is that you write assuming male if you don’t want to write “he/she” or “he or she” everywhere. Sorry if you’re offended.

    • It’s modern and accepted for “guy” to be gender neutral. But assuming male gender in pronouns is falling out of style. “They” and “Their” are acceptable substitutes for the clumsy “He/She” and “His/Her”, respectively, in many cases, including in the article’s section headings. This especially holds true in a field looking to encourage and empower more women.

    • Chris

      Comments like this will always break gender equality. I wish we can get past this and realize that David is not being sexist or bi-est but just making his life easier than being all “PC”

    • Jeremy

      “They” and “their” are not grammatically acceptable replacements for “he/she” and “his/her”. “They” is strictly plural. English does not have a gender-neutral singular pronoun. In the same vein, “myself” is not an acceptable replacement for “I” or “me”. People do that all the time to make themselves sound more “professional”. But in reality, it makes them sound stupid.

    • Totally agree Jeremy.

  12. Temitayo Akeem

    This article said “He’s a “{{ js framework}} Developer”
    Well I run alert(window.$ ? "He uses jQuery" : "He reinvented the wheel") on this page and the answer is simple, “He uses jQuery”. Looks like as if the writer downgrades others but hey, he is not reinventing the wheel as well. ENOUGH SAID.

    • This site does not use jQuery. And I’m not saying you shouldn’t frameworks, I’m saying you should know basic JavaScript.

    • Terry Roe

      Temitayo,

      If you did your alert code in the Chrome developer console, it will always say “He uses jQuery” because Chrome makes $ and $$ available in the console even if your not using a framework or other code that uses $. (And $ is just an identifier that anyone can reuse if they want to.)

      TR

    • Man, do not use window.$ to detect the presence of jQuery in a website, not just the $ and $$ available in Chrome, Firebug, etc, also any variable can be named $.

    • Temitayo Akeem

      Sorry, chrome’s and my bad ran it again and hey, you guys reinvented the wheel. not bad, at least there are something I’d love to do with jQuery but are available here, well I see you guys eats and sleep js. I had a change of mind about the paragraph and I have added it to the comment thread.

      Thanks for the tip, see why we should keep leaning learning and knowing the odd language. Thanks again

  13. João Antunes

    Well, regarding the JavaScript part, definitely, if jQuery was already loaded (and needed) on the page, I would prefer him to use .children(). I wouldn’t use that to assert his knowledge of JS. I would go for the caveats/pitfalls of JS like:

    – the change of what ‘this’ refers to when inside or outside a function;
    – the == conversion weirdness (and assert he knows about ===);
    – the || for var attribution;
    etc.

    Regarding the “He Thinks HTML Apps are a Fad” you are meaning HTML apps for mobile or HTML apps in general?

  14. Engineer

    Mobile does only include iOS devices…. because android is a feature phone operating system and android users are people who don’t browse the web (pretty much at all). Windows is barely a blip of marketshare and everyone else has dropped off the map.

    So, if you don’t hire someone because he recognizes reality, that says more about you than him.

    • This is the most ignorant, myopic, and most importantly, absolutely false bit of apple fanboi-ism I’ve read on the internet. Pull your head out of the sand, buddy. It’s 2013 and apple has about 25% of the mobile market-share, with about 40% belonging to Android. To say they don’t browse the web is pretty much the stupidest thing ever. You should look at yourself in the webcam of one of your gratuitously expensive idevices and re-evaluate your life decisions.

    • david

      To be honest, I agree with Engineer in some way. I work with iOS and Android and the difference in performances is unbearable. If you want to develop something something for desktop, we should all definitely take in consideration Firefox, IE, Chrome, Safari. When developing for mobile, TODAY, I’m more focused on iOS because Chrome on Android is still very buggy and Firefox has a very tiny market share.

      In any case, when developing like a website, we make it compatible for most of the browsers out there, therefore they should (sigh) simply work on mobile too :)

  15. About #3 I have some apps that has one big JS file. One big file doesn’t mean that
    you don’t write modular code (see Sprockets or grunt-concat).

  16. The percentage of visitors coming to any given site form Firefox Mobile or OS will likely be perishingly small. Is optimizing for those browsers really a productive use of time?

    http://allthingsd.com/20130403/safari-still-winning-the-mobile-browser-war/

    • Chris

      Yes, but David works for Mozilla so of course he’ll be pushing Firefox OS as if it were the next big thing.

    • Same was said about Firefox ;)

      Trust me — Firefox OS *will* be big.

    • Your enthusiasm is appreciated, but the fact remains that optimizing for edge case browsers simply doesn’t make sense for most developers, as there are usually a pile of other requests that are needed *now*, as opposed to possibly in a year from now.

  17. Lucas

    Yeh…and become the happiest geek in the graveyard!

  18. He Knows “HTML5”
    Love this, but I have a different take on it.

    They Want “HTML5” When employers *want* HTML5, and I ask them what features of HTML5 they are interested in, I hear crickets…

    • HTML5 knowledge is the new `DHTML/AJAX` developer spec. Alas, asking something like ‘Which particular features of HTML5 do you find most useful’ that can be discussed for hours normally renders a blanket response of ‘er. shadows. and round corners. GRADIENTS (looking proud). New form elements. And a more semantic mark-up’. So far, of 10+ interviews, 1 person mentioned sockets, 2 storage (and they did not know IE had this before nor about storage events). Super lucky if they know of `transitionend` or `RAF` w/o having ‘just heard of it but not had a chance to play with it because… you know. I need to support IE’. Don’t get me started on feature detection. eg. How would you test if an element supports `placeholder`? A: by using modernizr (look of pride for knowing a right answer).

  19. I interviewed someone once who put HTML5 and CSS3 on their resume, so I asked “what is your favorite new feature in HTML5?” and later “what is a new rule in CSS3?”, he was unable to answer both of them…

  20. THAT webguy also thinks there is only iOS, Android and an upcoming-not-yet-released Firefox OS in the mobile market ;) *heheh*

  21. Kostas Loupasakis

    The “{{js framework}}” part reminded me of the classic “endorsed for jQuery in LinkedIn by people I don’t know”.

    All I can think of is “So, when you go to an expensive restaurant you compliment the chef on their french fries? Or hard boiled eggs?” Urgh!

  22. Jo

    @David Walsh Thank you.

  23. Temitayo Akeem

    Really much concerned with the framework thing. I believe, jQuery for example is just a plus to speed up work. If you dont know core javascript, you cant even finish your own work let alone getting employment. If you dont have a good understanding of javascript object for instance, I dont see how you want to use a tool like backbone.js, if you dont know want modular scripting is all about, require.js will look like magic. so frame work or no framework, it is not a matter of “you need to know core javascript”, it is a matter of “you MUST know core javascript”. Many times I have tried to use jQuery to manipulate some complex thing but the library just look at me like dummy, that is where the js knowledge comes in. An experienced friend once said, just use jQuery, and do not make it your base, it was made to make life easier and not to take over life.

    In conclusion, framework is good, find one and stick to it, BUT, before you can be an Einstein in the field, start leaning that odd but widely used language, javascript.

    I was against that paragraph at first, but i think he (Walsh) is right. at least there is a clarification in the comment thread.

  24. Trevor

    A bit misleading article… ‘that front-end web developer guy’ is more appropriate

    Also, to measure skills by asking about a specific javascript function, like the child node… peewwww that’s just OLD SCHOOL. You can just google it and find the answer… no need to memorize. The important thing is having the basic idea of how to approach the problem. Besides… there is no ONE way of solving the problem.

  25. davide

    My testcase usually is to ask: ‘How can I maintain the scope in a setTimeout function without using bind()’ . This should be enough, anyway it’s really impossible to describe good web developer and bad ones. Just like JavaScript, truthy or falsy :)

    • Ohhhhh, that’s a good one. I’ll remember that.

  26. Vedran

    Good list of things to watch out for.
    However, for the “They’re a {{ js framework}} Developer” section, if someone was to say use the “children()” method, it’s not too far off from saying they would use “.children”. I don’t think you can judge somebody based on that considering it’s basically the correct answer.

    • I guess he meant the answer to be .childNodes… I don’t have a problem with jQuery – right tool for the job sometimes you just don’t have time to mess around and write tons of js when jQuery can provide answer out of the box in one simple line.

  27. Dani

    Could you please include double tap function to zoom in the text.

    Thanks for share your thoughts with us. Great blog!

  28. Sean

    I’m not sure I agree with some of these things. The part about using a js framework just doesn’t jive with me. I understand that you’re saying the person should know basic javascript and for the most part I do agree with that itself but the thing about some of these js frameworks is that they were designed to make doing various things in a web page easier than using regular javascript. If that’s the case, then why not use them?

    I don’t really agree with the idea that every site should be responsive. Some sites simply do not look good on smaller screens no matter how much you manipulate them to display on those smaller screens. Then there’s also the fact that some sites just don’t want/care to be viewed on smaller screens, so in those cases the extra css (media queries) are just overkill.

    Then the fact that someone says they know HTML5 but really don’t know all of HTML5, how many web developers out there can say that they really truly know all of HTML5? Not to mention the fact that everyone starts out not knowing diddly squat about any programming language. Sure you can go and get books and read tutorials on the internet and end up with a general knowledge of a lot of things about HTML5 (or any language for that matter) but without actual first hand experience using that language and all of it’s pieces and parts chances are you are never really going to know HTML5. Therefore, if the person you’re interviewing knows enough about HTML5 to at least get going and they seem like a person that can easily learn, then automatically discounting just because they don’t really know various aspects of the language just isn’t very real in my opinion.

    I’m a self-taught web developer that came from a background of mainframe programming. If any of my past employers (or even my present really) had discounted me and decided immediately to not hire me just because I didn’t know all of the aspects of a given language that they use, I would’ve ended up working at some low minimum wage job a long time ago. Since those employers chose to give me a chance and learn on-the-job I can say that I have a really good web developer job now and I am fairly knowledgeable about the web dev languages I do use on a regular basis. However I know that there is always a ton more to learn.

  29. Gavin

    Their Design Isn’t Responsive – thats harsh no?

    In most cases, the developers we hire have been given the design (website or app) and asked to.. well develop it.

    The designer is responsible for the design, on all devices. Judging a developer on design is not really fair. Unless you are hiring that ‘guy’ who does it all.. you know, they are JS, PHP, Design and HTML ‘experts’

    Thats a big ask, especially when I visit the personal pages of the developers I like. Yeah the sites look ok, but they are clearly not designers and I dont judge them based in it.

  30. Nicolas

    about : Their Design Isn’t Responsive

    I agree it’s a bit aggressive against web dev, Many time i have been asked to not “waste” time on making a site responsive, simply because the web designer didn’t made the site to be responsive ready or because my boss don’t want me to pass extra time on it.

    Also, you should add a point about developers who don’t understand semantic coding and the difference between block and inline elements ^^

  31. I’m extremely pleased to uncover this web site. I want to to thank you for ones time for this fantastic read!! I definitely really liked every bit of it and I have you saved to fav to see new information on your web site.

  32. Temitayo Akeem

    Sorry for being here again but I want to ask, does it really make sense to be a know-it-all developer/designer at the same time. I am or I should say I am trying to be because there are no hands that understand OOP, design pattern and semantic coding/design around me. But in the right sense, is jack of all trade good in web development.

  33. Ted

    Agree except for the Modernizr comment. Proper CDNs remove the network overhead of pulling the library, and copy-pasting code is wrong 90% of the time, if not more.

  34. As the OWNER of thatwebguy.ca, I could really easily dislike you.

    23 years in Graphics, and 20 online building for clients that include DivX, City of Brampton, Hunter Douglas and the list just goes on and on…..

    Try looking at things from a different viewpoint:
    1. Clients dictate EVERYTHING, including responsive and stand alone mobile.
    2. MONEY dictates HOW far ANY project goes and what level of love is put in
    3. Please rename your blog.
    4. My lawyer agrees with point 3.

    Ranting about the “other” guy NEVER gets you anywhere. Frankly, you do yourself a BIG disfavor by slagging anyone (fictitious or not) in the manor in which you do. Everyone is entitled to an opinion, and entitled to pay for shitty design and code – if that’s what they want. Look around at the majority of sites online…. any questions?

  35. Saying you know HTML5 is completely different from saying you know Web 2.0, because HTML5 is actually a technology…

  36. Giavani DeFranco

    Where are you getting your statistics on FF OS in market share? as far as I can tell its barely on the map.
    as far as picking on or the other [native/other] there are lots of good articles out there and it all really depends on your needs. (*http://venturebeat.com/2013/07/29/native-v-web-chart/). Can’t help but notice those apps looking for rich features tend to become native ones. Facebook, now Outlook(http://www.zdnet.com/microsoft-delivers-native-outlook-web-app-clients-for-iphone-ipad-7000018143/). Then factor in that kids/grandparents tend to interact much more with native apps…. then there is more to think about.(http://www.huffingtonpost.co.uk/graham-barlow/why-web-apps-are-still-not-the-future_b_2614298.html)

  37. I need a master web-developer. My company is based in Cleveland, Ohio. I’m looking for somebody with prior experience and has extreme knowledge of their craft. In-house…Call me 2/644-2204

  38. Huge difference in native and web apps..huuuuge…but this article is talking about a web developer not an app developer so I do not see how this is relevant because the difference is pretty big..I’ve worked with native apps

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!