Hey guys, we weren't actually ready for a lot of eyes to see this project. We were hoping to keep it small and get some feedback on important decisions about the project's trajectory.
The plan is to create a standard that developers worldwide are comfortable enough with to build upon.
To give the standard some traction, we have built tools to export to other formats such as pdf, txt and doc.
We also thought it would be cool and useful to have an NPM like system for resumes. So we built a CLI heavily inspired by NPM, to init and publish your resume to the jsonresume.org registry.
The themes right now are in bad shape, and we are looking for designers who would love to jump in during the early stages. We are thinking of building a theming version manager on top of NPM to take advantage of versions/distribution and also allow theme developers to implement their theming systems however they like (erb, mustache, md etc).
People with comments about the standard semantics and structure are encouraged to post their ideas to Github issues. -> http://github.com/jsonresume/resume-schema We also want to formalize the standard a lot more over the coming weeks.
If the project can be pulled off professionally and driven by the community, we believe that working with resumes will be fun!
Edit: Here are some of the reasons why I personally think JSON resumes will improve HR.
(trying to figure out bullet points)
- Better searching and filtering than PDF/doc. Making recruiting a tad easier.
- Applying themes will be a lot easier.
- Applying for jobs will be easier. Instead of filling out complex forms over and over again services might start allowing you to auto-fill with your JSON resume.
- There are many services that ask for your career history such as LinkedIn, Angel.co etc. These could be autopopulated or synced with your master copy.
- You can update your resume programatically so Github projects can be inserted and any other online certificates that you might want automatically added to your resume like Mozilla Open Badges -> http://openbadges.org/
- The comment section suggests that lots of innovation could arise from it.
----------
Make sure you try the CLI! sudo npm install -g resume-cli
I would just like to say that I think that this is a great idea(despite agreeing with others here that XML + XSLT would seem like a more logical choice). I hope it gets some traction in the long run.
I've posted an issue on github [0][1] mentioning that "firstName" and "lastName" is probably not a good representation of names. I don't actually know what the solution is, but this article [2] gives some great reasons why we tend to make incorrect assumptions about peoples names, which have the possibility of excluding some people form our tools based on their name alone.
Regarding names, I've heard of two solutions that cover enough edge cases to be suitable:
1. Asking for "Given Name" and "Surname" clears up most issues with cultures like Korea (where surname comes first).
2. Simply have a "Name" field. Accept any Unicode characters. Hope for the best.
If someone has a name that cannot be represented in written characters or cannot be rendered in Unicode (which would be amazing, since Unicode covers ancient dead languages and fictional languages like Klingon) they probably have more pressing issues than trying to serialize their resume.
Mostly, people ask for firstname and lastname because they want to call you by one of them. you can avoid this problems by having a "Full name" and a "what do we call you": my full name is "Paul Biggar" but you should call me "Paul".
In Germany it's not really common to call people by their first name (IT is an exception), but I would hardly put "Mr. Lastname" into "what do we call you". It all depends on the context, even in the limited scope of a resume.
If they're just looking for something to say on the other end of the phone when you answer, isn't "Mr. Lastname" the appropriate thing to enter in that box?
No, it's not, because calling someones phone is also culturally dependent. Because in Germany, when you are calling someone, it is expected that person picking up the call will speak up first and introduce themself. Something like: "Herr Mustermann, hallo!".
You see, if you are calling person from Germany, knowing how to address him is not enough, you shall still know how to make a call. If you don't know that, you'll be rude anyways, and if you know that, you'll also know a proper way of addressing persons in different cultures.
I agree with the names. Even just the ordering of first/last name can be difficult. I come from Korea where last name always comes before the first name in a formal setting.
Perhaps you should just require "full name" which the author of the resume would decide for him or herself.
or, have both fields, which the author needs to fill in. This makes it easy to parse the data, but also makes it readable by humans, by separating it into different fields, for different purposes.
> Make sure you try the CLI! sudo npm install -g resume-cli
Regarding that: I recently reached the fed-up point with sudo or not sudo to install nodejs app and the mess it leaves behind when using sudo for just installing some local binaries.
I stumbled upon nvm[0] when installing docpad:
> The above should not require sudo (the # means sudo). If it does, we recommend reinstalling Node.js so that it doesn't. Otherwise you're likely to run into permission problems in the future. Follow the Step 1 instructions to reinstall Node.js without requiring sudo.[1]
It makes npm installs everything under $HOME and never needs to be ran with escalated privileges. `nvm install X.X` and `nvm use X.X` allows switching between node versions and installed packages.
I built something similar a couple of years back when I was job hunting using a json and Angular.js, I called it modern resume [1]. Live example can be found here [2]. I got tired of having a resume for each format - plain text, html (website), word document, PDF. Every change had to be made in all the places. I wanted to have a single source of truth. This kind of standardization would be great!
I am very interested into your thoughts about LateX, why we need another "standard" if we have LateX? Do you provide something in addition which is not possible with LateX?
I've been working on a LaTeX-based resume builder (link in profile) and I could see something like this being useful for allowing users to take their data with them and move it between services. Anything that reduces the time it takes for people to input information and see the resulting image/pdf is worth looking into, so I'll be checking this out.
but is LaTeX machine readable - can i be given a latex document, and extract the essential data from it and transform it into some other format/structure that i can use elsewhere?
I think we might be conflating 'machine-readable' and 'well-formed/structured' here...
What they're proposing is structure, not machine readability... Technically, with the state of OCR and other methods, many things like LaTeX, PDFs, .DOCs, etc are all perfectly machine readable -- the problem is getting the information out in a meaningful way.... that's usually done by standardizing on structure.
When it comes to specifying structure, XML and JSON are pretty much the front-runners (at least I think so), and since XML isn't so popular lately (since it's so verbose), JSON is in the spotlight now
Machine readability, unless I and the dictionary are mistaken, is related to whether or not you can input the data from some physical medium into a computer. It's not the same as asking whether something you read in makes sense, or is easy to parse, or is well-structured, which is what their idea is related to.
Other than the fact that most of the things I noted are ALREADY in a state that is computer usable (whether it makes sense to humans looking at computers is another question), I was trying to point out that getting the information into a computer (A.K.A. Machine readability) is not the issue we're struggling with now, it's structuring, characterizing and understanding the information.
I mentioned OCR because it's used to parse resumes to find important bits when other methods fail (or someone submits something crazy like a scanned version of their resume instead of the file) -- something that wouldn't be necessary if there was a standard (like is being proposed) to adhere to, that people could semantically find what they wanted from.
Also, if you read closely, I said with the state of OCR AND OTHER METHODS... OCR does not have anything to do with the machine readability of other methods, it's just one method people use to extract data, or for machines to "read" the document.
It depends on the machine, if you're feeding your picture to a machine with image recognition capabilities, it might just be able to tell that it's your ass. Some pretty big companies are working on just that. (not on figuring out if it's your ass, but image recognition in the general sense)
The big picture is to make as many things as possible "machine readable" (things more difficult than resumes), and use machines to work faster than humans ever could.
Your References fields need a section for contact details - email or phone. Testimonials are worthless by themselves.
Edit: references should also have an optional 'organisation' field and a 'position title' field. "This reference was the technical lead at Foo Corp, my second-last job. Contactable here"
You could use the "correct" spelling of the word: Résumé.
It took me ages to figure out what this actually was, because your non-standard "lazy" spelling made me think this was about resuming interrupted downloads/transfers of generic JSON data. (Possibly by doing a partial parse of the data that you have got, or over a non-HTTP protocol, otherwise why not just use HTTP "Range:" headers?) I had to unlearn that before the light-bulb went off.
At least in the UK - and probably other countries in the Commonwealth - we almost exclusively say "CV" ("curriculum vitae", literally "course of [my] life"). "Résumé" is not well-understood here.
I'm also from the UK, and although I'm part of the "we" who normally use the term CV, due to the incredible pervasiveness of USA culture, I (and probably most of the people I know) am perfectly aware of what a résumé is. I just never expected to see it spelled "resume".
I mean, résumé and resume have the same French root, but in English - even American English as far as I can tell - they're totally different words! Even the pronounciation is completely different. So why would someone spell résumé as resume, especially in the name/title of a project about them?
How is that going to do anything except cause confusion?
Non-English loanwords enter the English language by a process of naturalization, [...] there is a tendency for accents and other diacritics that were present in the donor language to be dropped [1].
We have words with the same spelling but different meanings and pronunciations all the time - so called Heteronyms [2]. Doesn't seem that confusing to me. To me it'd be pretty weird if people who understood the word rôle were baffled by the word role.
Really? I've always thought of heteronyms as one of the most stand-out features of English that exemplify its confusing inconsistency. More so than the homophones, because it's harder to think of the "other" meanings if you've got the wrong pronunciation in your head.
In reference to the passage you quoted about diacritics, if only you had read as far as the next-but-one paragraph, you might have noticed: "Words that retain their accents often do so to help indicate pronunciation (e.g. frappé, naïve, soufflé), or to help distinguish them from an unaccented English word (e.g. exposé, résumé, rosé)."
Résumé, resume, and resumé are all accepted spellings in American English. As noted by others, many countries use the term C.V., which is likely to be a larger source of confusion for people.
Part of this is likely that many Americans do not have an easy way to type the accented 'e' character. (Short of copy/paste, I'm not even sure how I'd do it. Friends who have Macs have it easy.)
The plan is to create a standard that developers worldwide are comfortable enough with to build upon.
To give the standard some traction, we have built tools to export to other formats such as pdf, txt and doc.
We also thought it would be cool and useful to have an NPM like system for resumes. So we built a CLI heavily inspired by NPM, to init and publish your resume to the jsonresume.org registry.
The themes right now are in bad shape, and we are looking for designers who would love to jump in during the early stages. We are thinking of building a theming version manager on top of NPM to take advantage of versions/distribution and also allow theme developers to implement their theming systems however they like (erb, mustache, md etc).
All the code is open source and available at -> http://github.com/jsonresume
Theme developers should be looking at the resumeToHTML repo -> http://github.com/jsonresume/resumeToHTML
People with comments about the standard semantics and structure are encouraged to post their ideas to Github issues. -> http://github.com/jsonresume/resume-schema We also want to formalize the standard a lot more over the coming weeks.
If the project can be pulled off professionally and driven by the community, we believe that working with resumes will be fun!
Edit: Here are some of the reasons why I personally think JSON resumes will improve HR.
(trying to figure out bullet points)
- Better searching and filtering than PDF/doc. Making recruiting a tad easier.
- Applying themes will be a lot easier.
- Applying for jobs will be easier. Instead of filling out complex forms over and over again services might start allowing you to auto-fill with your JSON resume.
- There are many services that ask for your career history such as LinkedIn, Angel.co etc. These could be autopopulated or synced with your master copy.
- You can update your resume programatically so Github projects can be inserted and any other online certificates that you might want automatically added to your resume like Mozilla Open Badges -> http://openbadges.org/
- The comment section suggests that lots of innovation could arise from it.
----------
Make sure you try the CLI! sudo npm install -g resume-cli