12 ms·
80 front-end job applications – nearly no one had basic HTML/CSS/A11y skills
- edimaudo 11y agoProvide an example you saw.
- FilterSweep 11y agoI agree with this. I don't believe 80 would fail if he reconsidered his metrics. To pinpoint one of his major gripes - I've moved further "back" down the stack since, but when I was doing strictly front-end I had to make a fully accessible page for some clients, but not others. If anything this post gets me aware that portfolio content is also judged for accessibility, so it provided me that benefit should I take on front-end projects in the future. Some may call it lazy, but I tend to focus on "bigger picture" accessibility issues such as contrast and font scaling. Also with clearfix - many times its actually abused and painted on every element including ones that don't need to clear its children. It's also not the only way to solve the problem - soon display: flow-root will be adopted across browsers.
- grabcocque 11y agoAnd almost no backend developers can write assembler either! It's almost like we've spent decades layering abstractions on this stuff so we don't have to wrangle it ourselves, isn't it.
- mkozlows 11y agoThere are no useful abstractions that will let you fail to understand how HTML and CSS work.
- grabcocque 11y agoNobody wants to understand how CSS works. Sometimes we have to, but it's rarely by choice.
- Silhouette 11y agoI respectfully disagree. I'd much prefer to understand the real technologies that run the web -- HTML, CSS, HTTP, and so on -- and then use tools and build abstractions on top when it's useful. Starting with some specific framework or tool set inevitably limits what you can achieve. Surely the recent emphasis on frameworks over fundamentals has been a major contributor to the Web full of bland, practically identical sites that we see today.
- saulrh 11y agoA lot of these objections to abstraction sound like the objections to abstraction that we had back when we first invented interpreters and compilers. Are you sure that you want to be objecting to abstraction itself, rather than to our current, potentially inferior, implementations of abstractions?
- Silhouette 11y agoI'm not objecting to abstractions at all. I'm just advocating understanding the fundamentals first. I want to use abstractions and tools where they offer an additional benefit, but without being limited to whatever some predetermined choice of tools or abstractions can do.
- FLUX-YOU 11y ago>Surely the recent emphasis on frameworks over fundamentals has been a major contributor to the Web full of bland, practically identical sites that we see today. It used to be mostly plaintext and basic colors with no responsiveness, under construction gifs, basic images, and flashing text. Before that, just text. We're still learning as an industry. Web technology has not (and may never) settled like the hardware in your toolbox. Those frameworks are geared for productivity, not possibility. Productivity is where the money is.
- Silhouette 11y agoI think you overlooked about a decade where we'd moved well beyond slightly annotated text but hadn't yet entered the era of framework dominance. The Web was a smaller place then, but IMHO a much more interesting one in terms of trying out different designs and interaction styles. As for productivity vs. possibility, I certainly don't dispute that productivity is one place where the money is[1]. However, that doesn't mean there isn't also room for innovation, and it certainly doesn't mean there's no money in doing things better than what you can achieve with Bootstrap, Angular, and a couple of junior developers who don't know much else. In an increasingly monotone and commoditised technology field, more interesting and/or effective presentation can certainly be a USP. [1] I might question how sustainable that productivity proves to be over the longer term with many framework-heavy projects, but that's a separate issue and probably not worth getting distracted here.
- Lawtonfogle 11y agoI'm still not sure CSS works. I think it just sometimes accidentally does what I want it to.
- n00b101 11y ago> There are no useful abstractions that will let you fail to understand how HTML and CSS work WebGL, WebAssembly, emscripten
- Avshalom 11y agoHTML and CSS are the abstractions instead of reimplementing layout/display in GL
- no_wave 11y agoDo you think any of those things are difficult to learn? You certainly don't seem to think so. It's like you're looking for reasons to throw up your hands and not hire anyone.
- smrtinsert 11y agoI'm not sure why you are downvoted for being so clear about why the test is insufficient.
- daleharvey 11y agoAt 80 people it might start being the time to question whether its really everyone else thats unskilled or your approach to evaluation is wrong. Asking a pop quiz of arbitrary tools / techniques that you happen to have remember really isn't a good way to evaluate if someone is a good developer. I am a good developer and I only just remember what clearfix is, I most certainly couldnt explain how it works.
- daiwei 11y agoTotally agree. I see front end job descriptions asking for understanding of Java and .Net but no mentioning of JS, CSS or any HTML. There could be easily a miscommunication of misunderstanding what the company want. Not saying the job description used here is wrong, just an example of miscommunication.
- pkinchla 11y agoI recently saw an Ad for a front end job requiring: "strong Java Scripts" skills.
- at-fates-hands 11y agoJust got an email yesterday from a corporate recruiter with the line "must have strong JAVA script" skills. My instant reaction was, "You keep using that word, I do not think it means, what you think it means."
- mchahn 11y ago10 points for who can name the movie that has the quote... "Well, you told me I have a plethora. And I just would like to know if you know what a plethora is. I would not like to think that a person would tell someone he has a plethora, and then find out that that person has no idea what it means to have a plethora".
- tex0gen 11y agoI think that would be down to the recruitment agencies most of the time. Truth is they have a phone call and assume it's 2 separate words.
- anm89 11y agoVery seriously doubt this. It seems that his gripe is more with people being unfamiliar with certain accessibility tools that he likes. That doesn't grab headlines like claiming nobody knows basic html and css so though, so he threw that in front.
- jakozaur 11y agoJust use some automated coding test like Codility: https://codility.com/ https://codility.com/ Even an easy JavaScript programming tasks can filter a lot of applications so you can concentrate on best candidates.
- desireco42 11y agoI could not figure out what exactly they are doing and how much it costs. Would you mind clarifying that.
- jakozaur 11y agoYou can send link to candidates asking them to do some coding tests. From as simple as reverse a string, FizzBuzz to more difficult ones. That way you can pick the best ones by technical merit, not be their ability to write nice resume. I don't remember the exact price, but when my company used them it was something in range of $100-500 / month.
- desireco42 11y agoThank you.
- tomjen3 11y agoExcept the best candidates have other options and so probably won't spend time on your test.
- FLUX-YOU 11y ago>Nearly no one could show off solid markup skills Because there's not a well known standard of what solid markup skills are. It's not really a surprise that people come to you without knowledge you claim as necessary when they had no idea it was necessary. The same is basically true for any position in any area of software.
- jimminy 11y agoThere used to be a decent standard with (x)HTML 4.1, and the commonly followed process of designing with progressive-enhancement. HTML 5 added the semantic tags, which are great, but there is less clear decisions for deciding section/article/div that the prior selection of just using div. There are other cases where it has introduced more confusion into the process where the semantics aren't straightforward to determine. And progressive-enhancement is pretty much forgotten anymore. All the Javascript frameworks and pushing to work on the cutting edge of what's available, have forced a huge portion of effort to be spent on graceful-degradation instead. And working at the edge means that everyone is already working off any adopted standard, and just shimming everything to do what they want. The front-end development out there is just kind of dumb at the moment in those regards.
- daiwei 11y agoI've used `nav` or `section` for a long time, never found of the difference from `div`. Screen readers? Maybe for `nav`, what about `section` and other 1000 tags with subtle different semantics?
- bluejekyll 11y agothis is all about default CSS values associated with the tag, you can override them as you like which is probably what your relying on.
- estefan 11y agoBut obviously when you use your reset.css that all goes out the window anyway... I thought it was some semantic thing for screen readers.
- FilterSweep 11y agoCorrect me if I'm wrong but I believe there are aria attributes (e.g.: role="navigation") that can also be used as well for this same purpose. Nav is probably safer, but agreed on the CSS reset.
- bluejekyll 11y agoNot a direct response to this, but I don't work with CSS enough (backend stuff mostly) to always get things right. I love this site as a crutch for most of these kind of specific things: http://learnlayout.com/ http://learnlayout.com/ It finally got me to understand where I was screwing up my understanding of things.
- lkrubner 11y agoThe contrarian argument is that this signifies an important truth, that HTML never worked the way it was suppose to. In the same way that we might argue that a misunderstood product is the fault of the designer, not the user, we could argue that developers moving away from HTML is the fault of HTML, not the developers. This has been discussed many times, both here on Hacker News as well as elsewhere. To recap that argument, HTML started life with 2 competing and conflicting goals. One goal was to become a GUI for TCP/IP packets. The other was to provide structured information, as SGML had done for publishing. The conflict was obvious by the late 90s, and then for awhile the good folks at W3 thought that XML would provide the answer. And XML did work at providing structured data, much as SGML had for printing (though the criticism arose that attributes should have been left out of XML, as they were only useful for printing). But when XML was stretched to again try to be a GUI for TCP/IP, the system broke. Somewhere around 2006, Sam Ruby (W3C working group co-chair) shared a wonderful anecdote on his blog that revealed how broken XHTML was. He said that he had sent his daughter an SVG image, and she wanted to share it with her friends on MySpace. But she couldn't. Because MySpace was not XHTML compliant, and SVG could only render on XHTML compliant pages. And yet if he had sent her a gif or a jpeg, she would have been able to share it. Draconian error checking might be great for an information exchange system such as XML, but it did not work for a GUI that had to be somewhat informal. In 2004 Mark Pilgrim wrote the great piece "XML on the Web Has Failed": http://www.xml.com/pub/a/2004/07/21/dive.html http://www.xml.com/pub/a/2004/07/21/dive.html Now it is 2016. We are looking back at 25 years of failed experience. We can clearly see that HTML and XML both failed, completely, as GUIs for TCP/IP packets. So developers are being rational. They are "voting with their feet" (actually their minds). They don't learn HTML because they know HTML has failed. What is the best way to create a GUI for TCP/IP packets? I don't know, but nearly all developers agree that Javascript is a better way to get there than HTML. There might be something even better than Javascript, and we should all keep experimenting and learning and trying new things. But HTML has failed, and it is good that developers recognize that.
- mediocrejoker 11y agoI'm not sure I understand what you mean by a "GUI for TCP/IP" yet it seems central to your argument. I didn't realize HTML was ever intended to be anything other than structured information.
- iends 11y agoYou're probably not paying enough.
- pekk 11y agoIs there a reason it is not possible to train new employees in these very specific things you want?
- erod86 11y agoHR and recruitment techniques are outdated. You reap what you sow...
- radicalbyte 11y agoIf these are skills that you can gain in 2 days reading as the post claims, then I suggest that the interviewer needs to reconsider his perspective..
- giaour 11y agoIf the skills you're looking for are that basic, why wouldn't you just hire one of those 80 applicants and spend an hour teaching them what aria attributes are?
- sharms 11y agoOne has to wonder how much time was spent dismissing applicants, and if that time would be better spent showing the new hire his personal preferences (which are only preferences, there wouldn't be 100+ comments on this thread if it was standard)
- ForHackernews 11y agoWhat the heck is "A11y"? I've never heard of that.
- bmj 11y ago"Accessibility" Kinda like i18n for "internationalization."
- _asdf_asdf 11y ago...or globalization = g11n
- MAGZine 11y agoKnowing i11n and i18n, I'm fairly sure I could've figured out g11n, since they all share a similiar context.
- tigeba 11y agoApparently a non-accessible way of writing Accessibility.
- deleted 11y ago[deleted]
- wmil 11y ago$ grep -c '^a.\{11\}y$' /usr/share/dict/words < 162 162 results, but I'm going with "aboriginality" skills.
- fouadf 11y agoWith so many frameworks that do almost everything out of the box, and stackoverflow, why would you even care?
- jevgeni 11y agoWhat's the value of a developer then, if his/hers only job is to cobble together frameworks and snippets?
- klibertp 11y agoMaybe the value lies in knowing which frameworks to combine with which snippets and in what way?
- dsp1234 11y agoThe value of a developer is managing complexity and solving business needs. If that can be done with a framework and stackoverflow, then what's the problem? The one off occasion where something doesn't go right? That's why you have the one "goes deep" person on the team that you throw that issue to.
- smrtinsert 11y agoWhat a ridiculous set of requirements and self aggrandizement. I've read about aria attributes more than a few times, but do I care to remember them? No, because you set them up once and move on. Hiring people, don't confuse route memorization with job performance. It's an absolute ridiculous requirement. Thankfully not one of those applicaments would have wanted to work there.
- davidpatrick 11y agoThis is the most important point. This guy did these applicants a favor. Nobody wants to work for somebody like this. It sounds like these applicants wasted their time to help the Author write some bait click article to attract traffic.
- deleted 11y ago[deleted]
- jplur 11y agoTook me a minute to get that this is a mailing list newsletter with a random selection of interesting links from the past week, not a blog post listing things front end developers should know.
- rifung 11y agoIf you get 80 applications and none of them have what you are looking for, this seems like the issue is being able to get the right candidates to apply. Or, perhaps it's just not possible to find enough people who have the skills in which case, I suppose you should train them? Alternatively it seems like a good case for putting some sort of earlier filtering mechanism, like giving a short quiz or coding exercise to see if they know what you want them to know. I remember reading an article by TripleByte on how their quiz actually was a better filtering mechanism than a coding exercise though. > After reviewing a lot of applications in the past days, I can only agree with Kristian Glass here and say: “If you get the chance, always send a cover letter”. It’s your opportunity to say something about yourself and make clear why you apply for the job. I can understand why employers feel this way, but from an applicant's perspective, the reason someone applies to your company most likely is that they need to make a living. Frankly I don't think there's anything wrong with that and it's not something I would think stops people from being good employees. After all, it's difficult to know how much you'd like to work somewhere unless you've actually been there.
- rgbrenner 11y agoAlthough I only had the chance to review their personal websites or github profiles and then Many are not able to choose the right HTML elements, to explain why and how a clearfix works, or what ARIA roles are for, but they can use React and Angular. No kidding. They couldn't explain clearfix because you never asked them any questions. You want to talk about incompetence, and your "application review" consists of browsing the web.
- estefan 11y agoThis guy's gold! Someone can learn react and angular but he thinks they're incapable of learning some accessibility attributes? I wonder how competent he is with angular/react...
- y-c-o-m-b 11y agoI would bet good money you're part of the problem. Most devs I know maintain other people's applications and don't get the opportunity to create new HTML or CSS often. It doesn't take long to get up to speed, especially with all the great online resources available. As long as the person understands the concept, give them a chance!
- LukeB_UK 11y agoYou've extrapolated from incomplete and inaccurate data.
- ivanhoe 11y agoSolution is very simple, hire one HTML/CSS/Accessibility expert and one js/angular/react dev...
- danso 11y agoReminds me of a fullstack bootcamp graduate I once worked with. I asked him to make a javascript interactive map (literally, copying an example from bl.ocks, but change the data file) just as a test...and after a whole day, he couldn't get it to work. But when he instantiated an entire Rails project and copy-paste the HTML inside of it as its own page, he was able to get it to work.
- elliotec 11y agoSounds like there was no problem with him at all.
- gotchange 11y agoFunny that he's criticizing applicants for the perceived lack of knowledge of web accessibility and the neglect of aria usage and yet in the same post, not a single reference to either « aria-labelledby » or « aria-describedby » could be found in the markup. "People living in glass houses, ...."
- raverbashing 11y ago"Candidates don't know the details I like most as much as I do so I reject them" That's like you alienate people
- Hambonetasty 11y agoDemanding candidates understand the specifics of HTML/CSS use in your particular business context does not afford you the podium you've given yourself to castigate all the new developers starting/learning the vast world of web architecture. Have some sympathy, buddy.
- throwaway420 11y agoEvery developer has a specific set of tools/technologies/techniques/focuses that they really like and appreciate and that gives them a technical boner. For this guy it's HTML markup and accessibility stuff. For me it might be something like frontend performance and minimal design. For another dude it might be writing abstract and clever code that's as short as conceivably possible. For another guy it might be writing the most readable and documented code possible that eschews all cleverness. Another guy might be focused on writing 100% tests. Etc. While every developer has things that they really like and appreciate, projecting this focus onto others and focusing on this one fetish point to the exclusion of everything else is detrimental to a project. Your job should be to build a team of smart developers who bring complementary skills to a project and who can learn things that are important to the project, not to build a clone army of yourself. If the author was a comic book store owner interviewing prospective workers, the equivalent to this would be him rejecting hundreds of job applicants because they didn't know the thematic development and character interaction in issue #431 of Gunsmith Cats or some other random obscure anime or whatever.
- jnbiche 11y agoIf you use proper semantic HTML, ARIA attributes are rarely needed. It's a good idea to validate nonetheless, but there's no point in writing: <button role="button">Sign in</button> or <h1 role="heading">Heading</h1> I can think of only a handful of aria attributes that would be helpful if you use proper HTML, such as `search`, maybe `toolbar` and a few others. But it's good to validate the markup regardless, to be sure.
- acbabis 11y agoStyleable versions of components that aren't natively styleable (<option>, checkbox <input>, radio <input>) are another example of where ARIA attributes are helpful. jQuery's Menu demonstrates this: https://jqueryui.com/menu/ https://jqueryui.com/menu/ (Inspect the DOM)
- cobaltblue 11y agoBesides, all the ARIA stuff isn't free. It only benefits screen readers and bots that aren't Google's. The rejection from lack of accessibility is as strange as rejection from lack of functionality in IE 8 or less (which has perhaps 2-4x as much market share as that of all screen readers). For any website or webapp you should know your market and make the call whether you need to spend time upfront, burn the time now, or delay indefinitely or forever, on supporting these low market share alternatives.
- steveax 11y agoPosts like this give me the sads. Equating disabled users with a browser that has been EOLed? Wow, just wow. Also aside from being the right thing to do, depending on who you are and where you are, it may be the law... https://en.m.wikipedia.org/wiki/National_Federation_of_the_Blind_v._Target_Corp https://en.m.wikipedia.org/wiki/National_Federation_of_the_B....
- asfarley 11y agod-d-d-d-d-douuuuuchebag
- diego_moita 11y agoAnd so what? Did you write "HTML/CSS is mandatory" in the job description? As a developer I have grown a tough skin to managers that keep complaining that "these JS/Python kids today don't know anything about register allocation and data segments in assembly!" Workers unable to fully understand your technology stack is an universal problem, goes far beyond computers and web. There are only 2 options for you to deal with it: 1. The Silicon Valley approach: pay top dollars to whoever knows the technology you want. 2. The German Mittelstand approach: nurture, train and develop your own experts. Make deals with technical schools, offer a viable career path to young students and help them learn.
- sosuke 11y agoHow did the article make the jump from the author being unable to find their perfect candidate to the rejection of trickle down economic and asking for donations? I'd say you're looking for a very specific skill set and you'd have better luck teaching a capable candidate how you want your toast buttered than expecting one to walk in with your ideal breakfast.
- acbabis 11y agoWhile I agree that the writer's interviewing (or lack thereof) focused too much specifics, I still have to agree with the conclusion in the title (Good HTML/CSS/A11y skills are hard to find). The majority of candidates I interview struggle to explain the difference between `.a.b` and `.a .b`. Kind of hard to write maintainable CSS without that knowledge.
- collyw 11y agoWhere can a back end dev learn that stuff? Any good tutorials, as that is the sort of thing that always confuses me when I need to do some front end.
- ultim8k 11y agoFront-end development is broken. Just consider how shitty html and css (and their browser support) is. Also just think about all these favicons, aria, microformats, sitemaps, sass, frameworks, cdn, you-name-it and the 10k different screen sizes. Most of the times you get a bloody design and you have to fit it in all screens, even in a bloody watch (2 years ago I was asked to support the symbian browser!). You get asked to make the features and functionality to work everywhere. And also you have to deliver that yesterday.
- elliotec 11y agoI don't believe this for one second. 80 applications, seriously? You didn't even interview any of them? They don't know semantic HTML5 tags but they can wrap their head around the React ecosystem? I'm calling BS. Also what the hell is the rest of the article even about? Is he trying to teach these apparently clueless developers what they should know? Unclear. What does inequality have to do with his point? Geez.
- deleted 11y ago[deleted]
- lutusp 11y agoA quote: "We have an ongoing problem with growing inequality around the world and a few super rich people (latest numbers say it’s down to 65) have as much money as the rest of the world now. If we don’t change anything and do not oblige people to pay their taxes in their own countries or reject trickle-down economics as the World Bank officially declared just recently, this system will break and our own lives are likely to be affected by this." This is so ironic. This working developer, not born with a silver spoon in his mouth, rightly suggests that there's too much economic inequality, too great a gap between the wealthiest and poorest people. Many influential people have expressed the same sentiment -- as just one example, in a NY Times op-ed piece, billionaire Warren Buffett said, "My friends and I have been coddled long enough by a billionaire-friendly Congress. It’s time for our government to get serious about shared sacrifice." http://www.nytimes.com/2011/08/15/opinion/stop-coddling-the-super-rich.html?_r=0 http://www.nytimes.com/2011/08/15/opinion/stop-coddling-the-... Some inequality is inevitable, indeed it can be argued that some economic inequality inspires people to try harder to raise themselves up. But when the middle class disappears, when those below the glass ceiling realize they're permanently trapped, this can be dangerous for all of us. The irony is that the very poor and the very rich both see the problem, the danger, caused by extreme inequality, but congress refuses to see it.
- darylfritz 11y ago> I only had the chance to review their personal websites or github profiles > Many are not able [..] to explain why and how a clearfix works, or what ARIA roles are for I don't understand what the author expected to learn by browsing someone's hobby projects/personal homepages, without seemingly engaging in a discussion with the person who wrote the code.
- jqm 11y agoSounds like 80 people dodged a bullet....
- z3t4 11y agoHTML takes like five minutes to learn. CSS is a lot harder, but give someone a few hours and they will also master CSS, or at least be able to Google what they are looking for. JavaScript is a beast though. But if you use only the good parts and stay away from the quirks, someone should be able to code JavaScript within a few days. What you should look for instead: Do they like learning new stuff? Are they humble and prestige-less? Are they intelligent and can think in abstract?