This is an old talk from 2003/4, but I was asked to post it in 2012.
Perhaps the outsourcing issues have changed, but the idea of investing in yourself is as important now as ever.
7. at
hre e
T n
O Things Move Too Fast
“The half-life of engineering
knowledge, the time it takes
for something to become
obsolete, is from 7 to 2.5
years”
William Wulf, President,
National Academy of Engineering
8. The Graying Developer
• Younger folks:
– grow up with the new technologies
– are cheaper
– say “no” less often
– don’t have as many other commitments
•
11. at
Thre o
TwReliance on a Sector
• I’m an XYZ programmer.
12. at
Thre o
TwReliance on a Sector
• I’m an XYZ programmer.
• Or, the special case:
• I’m a Java programmer.
• Start depending on technologies and the
companies that back them
13. Reliance on a Company
• Companies such as:
• Digital Equipment
• Tandem
• Honeywell
• and Sun...
14. Reliance on a Sector
Two Year Historical - Sun Microsystems. 01/06/03
15. Reliance on a Sector
Two Year Historical - Sun Microsystems. 01/06/03
16. Reliance on a Sector
Two Year Historical - Sun Microsystems. 01/06/03
17. Reliance on a Sector
Two Year Historical - Sun Microsystems. 01/06/03
18. Reliance on a Sector
Two Year Historical - Sun vs. Microsoft
20. at
hre e
T re
Th The Market
(CNN) -- Just as Friday's new Labor Department
report shows the United States unemployment rate
soaring in August to 4.9 percent from 4.6 percent, a
newly released, federally funded study reveals that
a significant number of production jobs are shifting
from the American workplace to China.
21. at
hre e
T re
Th The Market
(CNN) -- Just as Friday's new Labor Department
report shows the United States unemployment rate
soaring in August to 4.9 percent from 4.6 percent, a
newly released, federally funded study reveals that
a significant number of production jobs are shifting
from the American workplace to China.
"What makes it worse," she says, "is that some of
these are higher-wage jobs, the type jobs that U.S.
cities have been fighting to win. And now they're
leaving. Many of those jobs were held by people
who'd been working in them for many years, and
in some cases their whole lifetimes."
22.
23. Nearly 1 million IT-related jobs
will move offshore over the course
of the next 15 years, according to
a new report released by Forrester
Research, Inc.
Source: http://itmanagement.earthweb.com/career/article.php/1503461
32. Capability Maturity Model
• Measures sophistication of software
development organizations
• Acts as a set of targets, each better than the
last
33. Capability Maturity Model
• Measures sophistication of software
development organizations
• Acts as a set of targets, each better than the
last
• Five “CMM Levels”
36. CMM Levels
• Level 1 (initial): little or no rules. Heroic effort
• Level 2 (repeatable): Basic project
management, differs between projects.
37. CMM Levels
• Level 1 (initial): little or no rules. Heroic effort
• Level 2 (repeatable): Basic project
management, differs between projects.
• Level 3 (defined): Development across the
organization follows same rules
39. CMM Levels
• Level 4 (managed): Management use precise
measurements for effective control of
development.
40. CMM Levels
• Level 4 (managed): Management use precise
measurements for effective control of
development.
• Level 5 (optimizing): Quantitative feedback
from previous projects used to improve next
generation of projects,
41. CMM Level 4
USA
41%
Overseas
59%
Source: http://www.sei.cmu.edu/sema/profile.html
42. CMM Level 5
USA
17%
Overseas
83%
Source: http://www.sei.cmu.edu/sema/profile.html
43. This is the new world, and failing to
recognize it is no different than IBM failing to
recognize in the 80’s how important PCs and
commodity hardware were going to be…or
failing to recognize for some time that they
had “lost” the PC market and forging ahead
with OS/2 and the PowerPC chip.
-- a senior manager...
44. I think it's largely an arrogance problem:
“They” can't be better than “us”.
We're too smart.
48. tion
olu :
ne Rely on Government
S
O
• Legislate against outsourcing
– e.g. NJ Senate bill 1349
49. tion
olu :
ne Rely on Government
S
O
• Legislate against outsourcing
– e.g. NJ Senate bill 1349
• Reduce H1B cap
50. tion
olu :
ne Rely on Government
S
O
• Legislate against outsourcing
– e.g. NJ Senate bill 1349
• Reduce H1B cap
• Perhaps…
• Tariffs on imported software
• Legislate randomly
54. Protectionism
• Doesn’t work!
• Economic reasons: protectionism hurts us as
a country
• Practical reasons:
– companies such as GE, EDS, IBM have
offices around the world
– how could it be enforced anyway?
55. H1B Quotas
• 195,000 H1B’s in 2003
• 65,000 thereafter
• Failed to reach cap this year
•
56. H1B Quotas
• What happens if we dramatically cut the
quota?
– jobs move abroad
– we lose access to experience
•
58. tion
olu :
S
Two Rely on our Companies
• What is their motivation?
– new graduates are cheaper, and will work
longer hours
– offshore programmers are cheaper, and
offer good quality
– tools are more reliable than those funky
people anyway
67. Have a Plan
• Consider pace of change
• Look beyond current fads
•
! √! have a plan
diversify
look for value
active, not passive
do it regularly
68. Have a Plan: Example 1
• You believe:
– outsourcing will increase over time
– your technical skills may become eclipsed
69. Have a Plan: Example 1
• You plan:
– Now: to become familiar with distributed
project implementation tools
– Next Year: to look at becoming involved
with outsourced project management
– Coming Years: learn a foreign language
70. Have a Plan: Example 2
• You believe:
– coding will be gradually eclipsed by
modeling
– you have better than average
communications skills
– you like a varied job
71. Have a Plan: Example 2
• You plan:
– Now: start learning about MDA. Read
books, subscribe to ML
– Next Year: find an angle. Start
contributing articles to management press.
Implement a simple trial project.
– Coming Years: speak at management
conferences on MDA. Become high-paid
international consultant on MDA
application
72. Have a Plan: Example 3
• You believe:
– you are an great, intuitive, developer
– you enjoy coding challenges
– you want to stay technical
73. Have a Plan: Example 3
• You plan:
– Now: identify areas that will not be
outsourced (core business, emerging
technologies, defense, embedded,
infrastructure). Research technologies and
players.
– Next Year: start developing code in these
areas (open source if no jobs available).
– Coming Years: write articles, speak at
conferences, become recognized expert
74. Diversify
• Don’t have all your eggs in one technology
basket
• Across multiple dimensions
– languages
– techniques
– industries
– non-technical
! ! have a plan
√ diversify
look for value
active, not passive
do it regularly
75. Diversify
• Mixture of risk/return profiles
– have some low risk, low return
• e.g.: .NET, Web Services, mobile
devices, MDA
– have some high risk, high return
• e.g.. Aspects/Intentional programming,
functional programming
• spend time identifying (and join the
effort early)
76. Diversify
• Remember:
– almost all investments have some return
– learning AOP, Haskell, … will always
make you a better developer
– don’t forget the non-technical axis
77. Look for Value
• Value is long term
• Time ≠ value
– the EverQuest syndrome
• Applicability
– but don’t forget diversity
• Not just theoretical
– look for opportunities to apply and get
feedback ! ! have a plan
diversify
√ look for value
active, not passive
do it regularly
78. Active Investor
• Periodically evaluate your (knowledge)
portfolio
– performing as you’d planned?
– have external circumstances changed?
– is it time to rebalance?
! ! have a plan
diversify
look for value
√ active, not passive
do it regularly
79. Invest Regularly
• Invest a minimum amount of time each
month
• Helps to have a ritual
– whatever works for you
• Plan time in advance
– don’t just sit down and wonder
what to do
! ! have a plan
diversify
look for value
active, not passive
√ do it regularly
80. Pragmatic Investment Plan
• Invest minimum two hours each week
– good times and bad
• Combines individual and group work
• Growing national community
R
CEM BE
DE •
8
81. PIP: Possible Schedule
• One week/month:
– spend the time in a user group meeting
– plan to give talk every two years
• set aside 6-8 weeks of PIP time to
prepare
82. PIP: Possible Schedule
• One week/month:
– spend the time learning a new language or
environment
• make it different (e.g. Java folks could
learn C# and .NET)
• free software is available for many
languages and environments
• see if you can put together a local study
group
83. PIP: Possible Schedule
• One week/month:
– spend the time reading a high-quality
book.
– avoid low-level recipe books
• look for concept books
• don’t forget non-technical books
84. Non-Technical Books
Gold-mine of applicable information. Eg:
• How to Open Locks with Improvised Tools. Hans
Conkel.
• From Novice to Expert: Excellence and Power in
Clinical Nursing Practice. Patricia Benner.
• And the old favorite: Zen and the Art of Motorcycle
Maintenance. Robert M. Pirsig.
86. Pragmatic Investment Plan
• Work with others
• Reflect on your plan every 4-6 months
• More time is better than less
• See if you can get your company to agree to
alternate Friday afternoons as study time:
– show them a plan
87. In The Long Term…
• Things will continue to get more complicated
• Competition for work will increase
• Externally imposed constraints won’t help
88. In the Long Term
• We have to look out for ourselves
• We have to invest in ourselves
• We have to plan 5-10 years out
•
89. In the Long Term
• We have the control
• We have the responsibility
• We have the opportunity
90. How to Keep
Your Job
Dave Thomas
The Pragmatic Programmers, LLC
www.pragmaticprogrammer.com
What’s the difference between a roomful of programmers and a box of last years Christmas lights? Next year some of the lights may still be working.\n\nClearly there’s a current downturn, but all the bad news is helping us to ignore even worse underlying news. \n\nNext slide: talk outline\n
Make no mistake. Our current careers are under threat. There’s a good chance that half the folks in this room won’t be developers in five years, and the ten year outlook is even worse.\n\nAnd yet we still have mortgages to pay, families to support, and shiny new toys to buy. What can we do? That’s what this talk is about.\n\nNext\n
\n
We’ll look at three big threats. There are many, many more. \n\nEg don’t consider the glut of ex dot com developers, the folks with no real development background who got sucked in during the crazed times and now dilute the job pool for the rest of us. \n\nInstead we’ll look at longer term threats: threats that stay with us \n
Ignore the interesting definition of half-life...\n\nWe work hard to learn something, only to have it become obsolete in a handful of years. \n\nShh.. listen to that ticking. That’s the sound of our knowledge becoming less and less valuable.\n\nAnd, to make it worse, there are folks who are cheating...\n
People coming along behind us start further down the curve. They grow up with the new technologies. They don’t carry the baggage of the older stuff. And then to add insult to injury, they don’t expect to be paid as much.\n
At this point some of the younger programmers out there may be feeling pretty smug.\n\nFolks, you’ll be old programmers in five years.\n\nOK, so we’re struggling to keep up with all this new technology. What other threats are we facing?\n\n
Specialization is for insects...\n\n but still we&#x2019;re forced to specialize. Lazy employers push us to specialize with their ridiculous job ads. The sheer size of the field forces us into obscure corners. \n\nSo after a while we give in and accept it. We no longer say &#x201C;we&#x2019;re developers&#x201D;, but we proudly say\n\n<transition>\n\nWe pin our careers and our futures to technologies and the companies that underly them. \n\nNext slide: list of companies\n
Specialization is for insects...\n\n but still we&#x2019;re forced to specialize. Lazy employers push us to specialize with their ridiculous job ads. The sheer size of the field forces us into obscure corners. \n\nSo after a while we give in and accept it. We no longer say &#x201C;we&#x2019;re developers&#x201D;, but we proudly say\n\n<transition>\n\nWe pin our careers and our futures to technologies and the companies that underly them. \n\nNext slide: list of companies\n
\n
Magic share price is around $1.75 - that values Sun at its bank balance. Explain...\n\nSuddenly, Java doesn&#x2019;t seem quite so safe. There are folks who&#x2019;d step in: IBM, for example.\nBut this of the impact of managers: CTOs and CIOs making the .NET vs. Java decision. How much does Sun going out of business affect their perception of the risk of Java? \n\nSometimes people say &#x201C;well, Microsoft got hit badly too&#x201D; <slide>\n\n
Magic share price is around $1.75 - that values Sun at its bank balance. Explain...\n\nSuddenly, Java doesn&#x2019;t seem quite so safe. There are folks who&#x2019;d step in: IBM, for example.\nBut this of the impact of managers: CTOs and CIOs making the .NET vs. Java decision. How much does Sun going out of business affect their perception of the risk of Java? \n\nSometimes people say &#x201C;well, Microsoft got hit badly too&#x201D; <slide>\n\n
Magic share price is around $1.75 - that values Sun at its bank balance. Explain...\n\nSuddenly, Java doesn&#x2019;t seem quite so safe. There are folks who&#x2019;d step in: IBM, for example.\nBut this of the impact of managers: CTOs and CIOs making the .NET vs. Java decision. How much does Sun going out of business affect their perception of the risk of Java? \n\nSometimes people say &#x201C;well, Microsoft got hit badly too&#x201D; <slide>\n\n
\nSo, we&#x2019;ve talked about technical obsolescence, and we&#x2019;re talked now about the risks of putting all your eggs in one basket (a choice we&#x2019;re almost forced to make).\n\nThere&#x2019;s one more threat we&#x2019;re going to talk about. \n\n\n
We live in a capitalist world. The market is king. Particularly in the US, we leave the market to regulate much of what we do. We vote with our dollars and our feet. If domestic car manufacturers start producing models we don&#x2019;t like, or that aren&#x2019;t reliable, some folks shift to buying imports. That gradual pressure forces Ford and Chevrolet to rethink what they do, until they start to recapture market share. The market is a kind of Darwinian pool in which we all float, and in which the customer&#x2019;s judgment is the determiner of who survives.\n\nThere&#x2019;s a market in software development. As developers, we&#x2019;re part of it.\n\nAnd that market is now world-wide.\n<transition>\nNow we&#x2019;re all used to this trend. As stuff becomes commoditized (shoes, clothing, manufacturing, electronics, ...) it moves to where the labor is cheaper. In general this is a good thing for the economy (although it sucks if you work in that industry): we move on, adding value at a higher and higher level. But now we&#x2019;re seeing something new.\n<transition>\nRead quote - stress &#x201C;working in them for many years, an in come cases their whole lifetimes&#x201D; High tech jobs are moving abroad. Much software development has become a commodity. And we&#x2019;re the people who whom it sucks. Don&#x2019;t believe me?\n\n\n
We live in a capitalist world. The market is king. Particularly in the US, we leave the market to regulate much of what we do. We vote with our dollars and our feet. If domestic car manufacturers start producing models we don&#x2019;t like, or that aren&#x2019;t reliable, some folks shift to buying imports. That gradual pressure forces Ford and Chevrolet to rethink what they do, until they start to recapture market share. The market is a kind of Darwinian pool in which we all float, and in which the customer&#x2019;s judgment is the determiner of who survives.\n\nThere&#x2019;s a market in software development. As developers, we&#x2019;re part of it.\n\nAnd that market is now world-wide.\n<transition>\nNow we&#x2019;re all used to this trend. As stuff becomes commoditized (shoes, clothing, manufacturing, electronics, ...) it moves to where the labor is cheaper. In general this is a good thing for the economy (although it sucks if you work in that industry): we move on, adding value at a higher and higher level. But now we&#x2019;re seeing something new.\n<transition>\nRead quote - stress &#x201C;working in them for many years, an in come cases their whole lifetimes&#x201D; High tech jobs are moving abroad. Much software development has become a commodity. And we&#x2019;re the people who whom it sucks. Don&#x2019;t believe me?\n\n\n
Electronics/electrical is the faster migrator to all areas: Chin, Mexico, Asia, and Latin America. Jobs we&#x2019;re used to losing (such as apparel, footwear, and autoparts) have already left the building.\n\nHow big is this problem?\n
This is out of a total of roughly 3 million jobs that will be lost to overseas workers.\n\n\n
\n
Political: if you want to sell in our country, x% of your product must be made here\n\nCost: Foreign companies have lower overhead\n\nBut never make the mistake of assuming that because it&#x2019;s cheaper, software produced abroad is lower quality. Sometimes companies outsource work because the quality is higher.\n\nLet me emphasize this: <transition>\n
Political: if you want to sell in our country, x% of your product must be made here\n\nCost: Foreign companies have lower overhead\n\nBut never make the mistake of assuming that because it&#x2019;s cheaper, software produced abroad is lower quality. Sometimes companies outsource work because the quality is higher.\n\nLet me emphasize this: <transition>\n
Political: if you want to sell in our country, x% of your product must be made here\n\nCost: Foreign companies have lower overhead\n\nBut never make the mistake of assuming that because it&#x2019;s cheaper, software produced abroad is lower quality. Sometimes companies outsource work because the quality is higher.\n\nLet me emphasize this: <transition>\n
They don&#x2019;t all write good code, but most countries that have been handling outsourcing for 7-10 years are capable of delivering standard commercial applications of high quality. There&#x2019;s strong evidence for this.\n
Ask audience:\n\nHow many folks have heard of CMM\n\nHow many of your companies participate in the CMM program (keep you hands up)\n\nLower you hand if you company is CMM level 2 or lower\n\n3\n4\n5\n\nWhat&#x2019;s all this business with levels?\n
Ask audience:\n\nHow many folks have heard of CMM\n\nHow many of your companies participate in the CMM program (keep you hands up)\n\nLower you hand if you company is CMM level 2 or lower\n\n3\n4\n5\n\nWhat&#x2019;s all this business with levels?\n
Ask audience:\n\nHow many folks have heard of CMM\n\nHow many of your companies participate in the CMM program (keep you hands up)\n\nLower you hand if you company is CMM level 2 or lower\n\n3\n4\n5\n\nWhat&#x2019;s all this business with levels?\n
&#x201C;Heroic Effort&#x201D; means developers constantly stepping in to fight fires and get the job done. CMM is not just concerned with the outcome, but how you got there.\n\nLevel two is &#x201C;hmm - it&#x2019;d be a good idea to manage this mess somehow&#x201D;\n\nLevel three is senior management banging heads together to try to get some consistency.\n
&#x201C;Heroic Effort&#x201D; means developers constantly stepping in to fight fires and get the job done. CMM is not just concerned with the outcome, but how you got there.\n\nLevel two is &#x201C;hmm - it&#x2019;d be a good idea to manage this mess somehow&#x201D;\n\nLevel three is senior management banging heads together to try to get some consistency.\n
&#x201C;Heroic Effort&#x201D; means developers constantly stepping in to fight fires and get the job done. CMM is not just concerned with the outcome, but how you got there.\n\nLevel two is &#x201C;hmm - it&#x2019;d be a good idea to manage this mess somehow&#x201D;\n\nLevel three is senior management banging heads together to try to get some consistency.\n
Here we start trying to be objective about what we&#x2019;re doing, measuring so that we can control\n\n<transition>\n\nand finally using this information as feedback to improve the process.\n\nOn average, a company that&#x2019;s serious about the CMM takes about 2-2.5 years to transition between levels.\n\nSo, how many CMM companies are there out there? Let&#x2019;s look at the upper levels, starting with level four\n
Here we start trying to be objective about what we&#x2019;re doing, measuring so that we can control\n\n<transition>\n\nand finally using this information as feedback to improve the process.\n\nOn average, a company that&#x2019;s serious about the CMM takes about 2-2.5 years to transition between levels.\n\nSo, how many CMM companies are there out there? Let&#x2019;s look at the upper levels, starting with level four\n
These are the August 2002 numbers, the latest survey from the SEI. There are 82 level 4 companies, 34 in the US and 48 overseas.\n\nNow let&#x2019;s look at CMM level 5\n
There are 76 CMM level 5 companies in the world. Of them, 13 are US-based. The remaining 63 are overseas, with the majority in India.\n\nCould be argued that this is a marketing ploy by overseas outsourcing companies: they feel they need CMM level 4 or 5 as a way of convincing US buyers of their commitment to quality. Perhaps that&#x2019;s true. But given the choice between a CMM level 5 company that can work for $40/hour and a domestic one unable to prove any quality standards that charges $200/hr, where will the work flow?\n\nAnd this isn&#x2019;t a future. This is now. Let&#x2019;s look at what a senior manager in one of the world&#x2019;s top-five companies said in a private e-mail.\n
Read..\n\nAnd just to drive the point home, he went on to say\n
Pause...\n\nSo, we&#x2019;ve looked at three kinds of threat: technical obsolescence, eggs in one basket, and now the commoditization of software development, with the attendant migration to cheaper countries.\n\nLet&#x2019;s summarize\n
Life is going to change.\n\nWhat can we do about it?\n
Let&#x2019;s look at some solutions. The first two just plain won&#x2019;t work (but they are still what people want). The last is our only hope.\n
NJ bill says that money spent on public projects must result in work in the US.\n\nThen there&#x2019;s the hoary H1B issue. The issue here is that developers from other countries come to the US to fill perceived shortfalls in the availability of US workers.\n\nThen we get to the wilder stuff. Perhaps we slap punitive tariffs on imported software. Or we fall back on the governments favorite strategy and legislate randomly.\n\nEconomists call this protectionism. And there&#x2019;s bad news...\n
NJ bill says that money spent on public projects must result in work in the US.\n\nThen there&#x2019;s the hoary H1B issue. The issue here is that developers from other countries come to the US to fill perceived shortfalls in the availability of US workers.\n\nThen we get to the wilder stuff. Perhaps we slap punitive tariffs on imported software. Or we fall back on the governments favorite strategy and legislate randomly.\n\nEconomists call this protectionism. And there&#x2019;s bad news...\n
NJ bill says that money spent on public projects must result in work in the US.\n\nThen there&#x2019;s the hoary H1B issue. The issue here is that developers from other countries come to the US to fill perceived shortfalls in the availability of US workers.\n\nThen we get to the wilder stuff. Perhaps we slap punitive tariffs on imported software. Or we fall back on the governments favorite strategy and legislate randomly.\n\nEconomists call this protectionism. And there&#x2019;s bad news...\n
How can we put tariffs on information when $100M of software development can be sent in an e-mail or carried on DVD? \n\nAnd if we do find a way to make it work, who suffers? We lose access to cheap software while the rest of the world benefits. How long will that last?\n\nThe inconveniences of individual developers who lose their jobs is not as significant as the ongoing competitiveness of the country as a whole. The history of other industries tell us this.\n\nAnd then there&#x2019;s the H1B issue.\n\nAt this point in the presentation, there are normally some H1B folks in the audience looking very nervous. So far I seem to be blaming foreign workers for many of our woes. So let&#x2019;s look at H1B&#x2019;s in more detail.\n\n
How can we put tariffs on information when $100M of software development can be sent in an e-mail or carried on DVD? \n\nAnd if we do find a way to make it work, who suffers? We lose access to cheap software while the rest of the world benefits. How long will that last?\n\nThe inconveniences of individual developers who lose their jobs is not as significant as the ongoing competitiveness of the country as a whole. The history of other industries tell us this.\n\nAnd then there&#x2019;s the H1B issue.\n\nAt this point in the presentation, there are normally some H1B folks in the audience looking very nervous. So far I seem to be blaming foreign workers for many of our woes. So let&#x2019;s look at H1B&#x2019;s in more detail.\n\n
How can we put tariffs on information when $100M of software development can be sent in an e-mail or carried on DVD? \n\nAnd if we do find a way to make it work, who suffers? We lose access to cheap software while the rest of the world benefits. How long will that last?\n\nThe inconveniences of individual developers who lose their jobs is not as significant as the ongoing competitiveness of the country as a whole. The history of other industries tell us this.\n\nAnd then there&#x2019;s the H1B issue.\n\nAt this point in the presentation, there are normally some H1B folks in the audience looking very nervous. So far I seem to be blaming foreign workers for many of our woes. So let&#x2019;s look at H1B&#x2019;s in more detail.\n\n
H1Bs were introduced with the intent of filling an apparent shortage of skilled workers. The majority of H1Bs are in IT. H1Bs can stay in the US for up to six years. They have to have an accredited degree or significant corresponding work experience. They have to be sponsored by a company here, which has to prove a need, and prove that the H1B will be paid a wage comparable to an equivalent US worker. The legislation tries to prevent H1B workers from displacing local workers.\n\nDuring the dotcom boom, the H1B cap was raised to 195k visas pa, but it will drop back to 65k next year. This year it failed to reach the cap.\n\nThe H1B program is deeply flawed. But the problem doesn&#x2019;t lie with the concept, nor with the programmers we invite to the US. The problem lies with corruption at the corporate level. Some employers misstate salaries, lie about their needs and a particular job&#x2019;s requirements, and fire local workers 90 days after hiring an H1B. \n\nThese companies should be prosecuted. But the system should not be scrapped.\n\nThe truth is I believe philosophically that work should go abroad, and that we should encourage the best of the world&#x2019;s programmers to come to the US. We can&#x2019;t stop the former, and the wealth of this country was built on foreign experts. \n\nBut even if you disagree with this, what would happen if we scrapped the program?\n
We hurt ourselves. If we accept that H1B workers currently offer the US cheap programmers, then eliminating the program will simply accelerate the outsourcing of entire projects overseas. After all, the pressures that lead to the corruption of the H1B program won&#x2019;t go away.\n\nThere&#x2019;s a secondary effect: by isolating ourselves from the rest of the world, we stop learning from some truly great programmers.\n\nSo -- end of rant.\n\nIt looks like there&#x2019;s not much the government can do. Who else could help?\n
Some folks might argue that companies help by providing training: many folks companies will pay for them to come to Jay&#x2019;s symposium, which is great.\n\nBut ultimately companies train developers to satisfy specific short-term needs. These are for the company&#x2019;s benefit, and only indirectly benefit the developer. \n\nSo let&#x2019;s summarize the solutions so far\n
So who&#x2019;s going to help?\n\nWe can summarize this in three words: <next slide>\n
So who&#x2019;s going to help?\n\nWe can summarize this in three words: <next slide>\n
So who&#x2019;s going to help?\n\nWe can summarize this in three words: <next slide>\n
So who&#x2019;s going to help?\n\nWe can summarize this in three words: <next slide>\n
If you take nothing else away from this talk, please remember these three words.\n\nBut what does it mean to invest in yourself?\n\nCan we learn from other areas that talk about investing?\n\n I believe so...\n
Financial planners keep berating us with tips for handling our investments\n\nHave a plan: am I investing for my retirement, for kid&#x2019;s college, to buy a new boat.. the objective changes what you do. Classic example is investment term: long term you can afford riskier investments\n\nDiversify: Enron\n\nValue: Look at the fundamentals of your investments. Is there something solid there, or is it just hype?\n\nActive, not passive: keep monitoring your portfolio - rebalance when necessary. NOT THE SAME AS THRASHING\n\nRegular investing: investing has to be a habit, otherwise thing slip.\n\nThis is all sound financial advice. How does it apply to computer programming.\n\n
In finance your portfolio is the basket of stocks, bonds, cash, and other investments you own. Their value comes from how much other people think they&#x2019;re worth.\n\nIn your career, your portfolio is the stuff you know, and, more importantly, your talent at applying it. Its value comes from how well people think you can do this.\n
Own judgment: where will industry be. Need to do some research: look for trends, talk with people, read papers, magazines, and books. What are emerging trends?\n\nLook for solid trends, not just fads.\n\nSee where you want to fit in to this.\n\nIdentify the gap, and plan to fill it.\n\nFor example...\n
\n
\n
\n
\n
\n
\n
Your don&#x2019;t want to be left being the expert in an Enron technology\n\nThere are lots of aspects of the stuff we know. Remember them all while diversifying.\n\n\nDon&#x2019;t talk too much about this one - subsequent slides cover it\n\nDiversification lowers risk by spreading investment.\n\nDiversity also allows you to increase return by including some higher risk/higher reward knowledge in your portfolio. <next slide>\n
If you catch a wave, it can accelerate you dramatically. There are fewer early adopters, so if something becomes hot, you can command more money.\n\nDon&#x2019;t give up your day job...\n
Unlike financial investing, knowledge portfolios always accumulate some return.\n
In financial investing, so spend money to accumulate more money.\n\nIn your professional portfolio, you expend time to accumulate more wisdom.\n\nIn financial investing, look for investments with strong fundamentals. It&#x2019;s the same with knowledge investing. Just spending time isn&#x2019;t the same as building value.\n\nNot just theoretical: how do you know the knowledge you&#x2019;re accumulating is valuable? LOOK FOR FEEDBACK. Apply it.\n\nAdvice to people just starting out: look for quality of experience, not just salary.\n\n
Feedback is important in everything we do. Don&#x2019;t forget to gather feedback on your investment plan: \n* how well is it doing\n* is it still applicable\n* is it time to rebalance\n\nAm I doing the right thing\nAm I doing it the right way\nDoes it have to be done at all\n\n
Norm Kerth - ritual helps when we&#x2019;re doing something that doesn&#x2019;t come naturally\n\nMake a commitment to spend at least n hours per month.\n\nThen plan that time: set up a schedule for investment\n
Two hours? Where can I find two hours?\n\nInvest it now, or you&#x2019;ll have all the time in the world to invest it later..\n\nDon&#x2019;t try to do it alone. Mix group and individual learning opportunities (go into on later slides)\n\nBuild a community.\n\nEmphasis here is on the plan. So what might a typical plan look like\n
Obviously you folks are already doing this.\n\nBut to what extent are you actively participating. If you haven&#x2019;t yet given a talk, seriously consider giving one. While you&#x2019;re working, look for technologies you&#x2019;re using that are not as common, or techniques that others might find interesting. \n\nunit testing\na Java API\na database\na design technique\ndeploying applications\n...\n\n
\n
\n
\n
Work towards the objective in your individual plan\n