hpatel
One of the main premises is that innovation is stifled because employees in the position to innovate are chained to their jobs via the H1 visa in their prime years.
What if besides having a disproportionately high number of points on HN, you had the power to influence the creators of HN so that a percentage of all the points on HN went to you? Or, what if you had millions of points on HN and were able to convince the makers of HN that you should be able to vote on HN with only 0.5 points per vote?
The problem is that the selfish actions of some actors(the figurative 1%) count for overwhelmingly more than others. And a lot of actors don't have any say at all(those below the poverty line). In such a system, the selfish 'demands' of most other actors don't matter.
Say on HN, there were a few people (type A) that could instantly give 1,000,000 points to any comment or post and everybody else could give only 1(type B). A post could provide value for 100,000 type Bs and yet some other post that type A liked would always rise to the top. If this were true, HN would be a very boring place to be.
The goal should be to empower all actors to act selfishly - perhaps not equally, but atleast in a 'reasonably' proportionate fashion.
We are already beginning to see the early stages of such a system. All freemium services are in essence an example of such a system and therefore by extension most startups.
Gmail satisfies the demand of millions of customers for an email service but doesn't ask them to pay. This doesn't mean gmail doesn't make gains.
Currently, the primary funder of such services are ad and brand agencies.
What if we lived in a world where any individual could basically play the role that ad/brand agencies play in supporting freemium services today?
What if we divorced 'demand'(what creates value for each person) from money (payment for value created) and gave all actors an equal right to determine demand irrespective of their ability to pay? We are working on building such a world.
1. How do we reduce the costs of drug R&D? Can we crowdsource the process?
2. How can we change the system for getting credit(money) for creating a new drug?
3. Given that antibiotics continually require to be made in stronger/different strains, is the use of antibiotics a flawed way of treating patients?
4. Why are people falling sick?
They are worth it if your 'customer' (employer, actual customer, other) cares. But, thinking about acquiring social proof rather than certifications leads to a more interesting set of ideas.
For eg., you can acquire Salesforce certification for their platform or you can build a Salesforce app that customers use and rate highly. In turn, you would use the app to generate revenue or give it away for free so you can get multi million consulting contracts(slight exaggeration).
If you are looking to be cool with the tech crowd, no they are never worth it. If you want to provide a service to customers, social proof matters.
Though, I did like the other PhD article(http://www.pgbovine.net/PhD-memoir/pguo-PhD-grind.pdf) on HN better as it provides a more balanced story.
Extremely nerve wracking for new startups like ours.
Regardless, it does suck to have to maintain/extend apps written by #3.
Attitude is exactly what companies look for when they hire people with less experience. Even for more advanced programmers in a sense it is essential because you never stop learning. This is why there is some bias towards younger people as they are supposed to be more willing to learn.
But, as with any behavior, attitude becomes less necessary if a clearly defined system for mentoring/acquiring the necessary mental models is in place. Someone who graduates from a top school and ends up working at a company where a) types mentor new hires has to try significantly less than someone who graduates from a less well known school and has to figure out some way to learn from a) types.
Btw, the way a lot of the best companies bypass the HR problem is they hire based on employee recommendations. This is another contributing factor to 'talent shortage'. There is a hiring channel at any company that is much better at recognizing potential - existing employees. The high effectiveness and limited reach of this channel adds to perceived 'talent shortage'.
Most people against patents have a problem with 3). But, what if we figured out a way to standardize 2)... i.e. rather than preventing everyone else from using the patent, we figured out a standard system to proportionally reward the inventor with the value created by the application of the invention. Say 10% of all money made by application of patent (via direct/indirect monetization).
In such a system, the original intent behind patents of rewarding the inventor is maintained, society as a whole is able to benefit from the invention, and pace of innovation is accelerated.
* you can replace code with almost any other employable skill
"Talent shortage" usually refers to people who fall in a).
Every company claims to want to hire only a) but most companies need b) or c). Very early stage startups ideally need a), but they don't always manage to hire people in that category. They can temporarily bypass this requirement by hiring people in b) and using frameworks like (Rails, Django, etc) built by other people who fall in a) until they get to a point where a) types will be willing to join.
When people talk about shortage of talent, they usually mean shortage of a) people. This is mostly because two of the three things that people in b) and c) need to become a) are hard to acquire and come with 'experience'(for those who try).
3 things you need to become a):
1. Acquiring a good base - data structures, algorithms, design patterns etc - learning languages/specific skills - interview skills
2. Acquiring good mental models - working with smart programmers - reading code by smart programmers - learning to make tradeoffs - actually building stuff
3. Acquiring reputation - Building stuff - Talking about stuff you build - Having other people talk about you - Collecting badges that other people recognize i.e. working at well known startups/companies, winning programming competitions, going to Berkeley, etc.
Most people manage to succeed in 1) eventually. 1) is also where most college/other training programs focus. But, 2) and 3) are much harder to acquire.
If a company is big enough they will assign an a) to mentor someone who is a b) or c), but this is often not viable for startups (and, imho, slightly unreasonable to expect from a lot of startups).
If we figure out a way for b) and c) people to learn 2), we can solve a lot of the talent shortage. But, this requires either a b) or c) person to spend time on their own looking at work by a) people (not always possible and extremely time consuming), or an a) person mentoring the b)/c) person outside companies (100x faster, imho).
Until we build social systems that enable b) and c) to transition to a) easily, the alarms for 'talent shortage' will continue to ring.
Caveats: 1. A lot of jobs only need b) or c). Employers could adjust expectations. 2. Luck is a huge factor. You don't actually have to be a) to be hired or considered a) because perception(3) plays a big role.