These are just numeric representations of vague statements. Using the sample values:
- HTML : 80%
- CSS : 75%
- Javascript : 50%
- PHP : 30%
Could mean:
- I know what HTML is. I work with common HTML tags, like A and BR and SPAN and DIV... I don't have it all memorized, though, so I may not be able to tell you that the BLOCKQUOTE tag has a CITE attribute (particularly without looking it up). I am more comfortable with CSS. Maybe I've mastered (X)HTML 4.01 but just haven't caught up with some of the HTML 5 changes.
- I know how to create a stylesheet and know many of the common tags. However, I would say my CSS prowess isn't quite as good as my HTML skill.
- I am familiar enough with JavaScript that I am not confused by it. I can do some things.
- I know PHP well enough to recognize that the code is PHP. I may be able to make some simple changes to code without breaking stuff. I would probably be better off with a help guide.
All of this is basic conjecture. As you can tell by glancing at the other answers, there is no real formal process for precisely calculating the numbers. So what this means is that we must take these numbers as rough estimates, and possibly guesses.
* I have been known to spend roughly 80% of a standard-length work day in HTML, but only 30% of my career was doing PHP-related stuff.
We don't know, just based off of the numbers, what 100% means. It may mean any one of these things:
- 100% mastery of the every common part of the language and many uncommon parts
- 100% ability to understand the language and understand every detail with quick scans of relevant documentation
- 100% ability to be able to work on this professionally, alone
- a high likelihood to get 100% on an exam (college level exam for an entry-level class, or entry-level industry certification)
- length of a work day
- length of a career
- any other thing that the person might be thinking as "100%"
I can think of multiple reasons why a person uses numbers instead of clear sentences that have more meaning. One is that percentages may be much faster to read, which may be a benefit.
On the other hand, rather than trying to respect the time of a hiring staff, the person might be intentionally being a bit vague, so that specific and verifiable claims don't go on record in a way that could be the basis of taking formal/legal action against them (such as terminating employment on the basis of provably false statements on the resume).
Another possibility is that percentages may show some relative strengths, just trying to show HTML is better than PHP. (In fact, with many people these days, they might even be forgetting that 80% means four fifths of something, and might just be giving themselves scores using numbers that they see more frequently, like progress in a video game.)
Ultimately, this is failing to communicate with some people. One of the key principles of successful communication is that the message must be successfully understood, not just transmitted/delivered. Proof that this method is failing can be seen by looking at the chorus of other answers to this question. So far, they aren't offering anything more specific either. However, the author may not be realizing how much struggle people have with interpreting whatever they are intending to communicate.
So, don't do what they did. Don't provide meaningless numbers (without any other details that provide sufficient context to understand them).