Entrepreneur and blogger extraordinaire Neil Patel just wrote a post called "You're the reason why you don't have a job". I saw the tweet, and clicked over, expecting him to talk about your lack of passion, innovative thinking, creativity and the like.
Instead, he covered the mundane basics -- things like having a 2-page (or shorter resume), personalizing your cover letters/intro mails, being on time, networking, etc.
Personally, I think the stuff he covered are the oxygen of job-hunting and interviewing -- that is, if you aren't doing those, you really are going to be out of luck forEVER in today's economy.
I think the real reasons that most people don't have jobs go far beyond his list -- these are the types of things that really get the door opened, and people paying attention:
1) Show Passion! Your cover letter should contain your login/profile for the website (if it's a consumer web company), your top idea(s) as to how to improve the experience, questions you have about things that puzzle you about the company, and more -- show that you've dug in and are willing to question the status quo.
2) Go beyond networking. Have back-channel feedback loops installed (i.e. ask a friend to introduce you, even if you've already made an initial outreach). Get active on blog comments and/or tweet streams. Show passion in user communities (i.e. if you're an active Twilio-an, you're much more likely to be noticed in the interview loop)
3) Volunteer/make a bold offer. No one wants people to work for free (at least, ethical employers don't want that), but we DO appreciate people who are willing to make us offers we can't refuse. That, plus a strong background, passion for our work, and social justification (#2 above), make it much easier to pull the trigger.
4) Get off your ass! So many people sit around 'waiting for people to hire them'; they're the same people who bitch and moan about being asked to put in extra effort once they're hired. Get used to selling yourself, your skills, your abilities, and your passions -- no one else is going to do it for you.
Also, refer to my 'how to hire/fire at startups' -- focus on the inverse of many of my examples -- look for things that are trigger points in the relationship, and then just think the inverse.