How do you evaluate how much you feel you ought to be paid as a junior programmer?
How do you judge if you're paid enough?
skills
Ask yourself how much added value you are providing to your company Edit: Downvoters - skip to the end...Simple formula:How much you earn or save the company  per year / 3 = Gross salaryThis takes into account the fact that your employer will want to exploit you (you will always be underpaid), and allows for the overheads of having an employee on the books (training, heating the office, health and safety, equipment purchase etc).How to work out your added valueHere are some scenarios that may help with your application of the above formula. These have been left in as an illustration of thought processes, you may want to simply skip to the end.Internal softwareLet's assume you do some work on an internal software product that helps to automate a previously manual process. Instead of that process taking an admin worker in Accounts all day to complete, they can now do it with a click of a mouse. The admin worker is now freed up to do other work and the Accounts department don't have to hire a new person to handle that manual process. This is why they stumped up the cash from their budget to pay for you to develop this code for them in the first place. You have saved the company the employer cost of a permanent admin worker - say $30,000. Therefore, you have justified your salary up to $10,000. In order to earn more, you need to provide more solutions that reduce the companies outgoings. As the company grows your contribution may affect a larger group of people, and as such your salary may increase (or you may be exploited more). External softwareLet's say you've just written a killer feature for your company's new commercial product. It retails at $3000, and the feature has caused an extra 100 units to be sold. (Your company is remarkable in that the sales force and developers get to chat freely by the water cooler). From that you deduce that your contribution was worth $300,000 to the company. But... you didn't do it alone, did you? The entire company exists to sell this product and everyone has made some kind of input -  from the person who came up with the idea of the feature you implemented to you doing the coding to the marketing and the salesmanship that neatly cleaved the cash from the customer. For argument's sake, let's assume that 10 other people were principal in making this feature a success. Therefore, by the formula above you justify $10,000 of your gross salary.Open-source softwareYou work for free, don't you?Only joking. Assuming that you mean that your company provides free and open-source software (e.g. Ubuntu) then your company's income is dependent on alternative revenue streams (service contracts, advertising, philanthropist funding etc). As a result, matching your contribution to your salary is going to be hard. The final word (read first)From this article (provided by @Macneil) Using a labour theory of value is just  a red herringwhich essentially states that you will never be able to work out directly what you are worth because you need to take into account a large number of contributing factors that are not available to you.Realistically, you will have to compare yourself to others doing similar programming jobs in the same country. The problem there is that you are averaging out your individual contributions over the entire country which means that you won't be reaching your maximum earnings potential. 