Surviving The Downturn

918 views

Published on

A lighthearted discussion regarding some pretty serious issues surrounding software development. Covers breadth of topics.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
918
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
15
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Surviving The Downturn

  1. 1. Surviving the Downturn Kirk Knoernschild Analyst, SDLC and Containers, Languages, & Frameworks Burton Group www.burtongroup.com kknoernschild@burtongroup.com Blog: http://apsblog.burtongroup.com Blog: http://techdistrict.kirkk.com Twitter: pragkirk All Contents © 2008 Burton Group. All rights reserved.
  2. 2. Surviving the Downturn Current State • The job market sucks • Outsourcing trend continues • IT is incompetent and arrogant • Enterprise software development is painful What do we do?
  3. 3. Surviving the Downturn Buy AAPL 36%
  4. 4. Surviving the Downturn Agenda • 5 Things You Shouldn’t Care About Now • 5 Things You Need To Do Now • 5 Things You Need To Learn Now • 5 Markets You Should Be Watching Now • The IT Labor Controversy •  The Education System •  The H-1B program •  The Job Market
  5. 5. Surviving the Downturn Agenda • 5 Things You Shouldn’t Care About Now • 5 Things You Need To Do Now • 5 Things You Need To Learn Now • 5 Markets You Should Be Watching Now • The IT Labor Controversy •  The Education System •  The H-1B program •  The Job Market
  6. 6. Surviving the Downturn Puzzler • Please Translate 1f u c4n r34d th1s u r34lly n33d t0 g37 4 l1f3 If you can read this you really need to get a life
  7. 7. Surviving the Downturn 5 Things You Shouldn’t Care About Now • IT Certifications • Java/Java EE • Software Process • Portals • SOA
  8. 8. 5 Things You Shouldn’t Care About Now 1.) IT Certifications • The Certification Process •  Spend $$ on course •  Spend $$ on exam •  Get a silly piece of paper • Organizations pay for skill, not knowledge What happens when the following code is compiled and executed? for(int i = 1; i < 3; i++) for(int j = 3; j >= 1; j--) assert i!=j : i;
  9. 9. 5 Things You Shouldn’t Care About Now 2.) Java/Java EE • Zero portability • Bloated programming model • JCP is a mockery • The Rebel frameworks are winning
  10. 10. 5 Things You Shouldn’t Care About Now 3.) Software Process • Focus on results, not methods • Too much time is spend improving process, not enough on delivering software
  11. 11. 5 Things You Shouldn’t Care About Now 4.) Portals • Proprietary & closed • Let’s focus on mashups
  12. 12. 5 Things You Shouldn’t Care About Now 5.) SOA • We’ve already used all the money •  We needed that ESB we still don’t use • Was once promising •  Reduce costs, increase agility, solve global warming • You cannot buy SOA •  It’s not a product, it’s an architectural style • IT got all giddy with technology •  WS-* or REST?
  13. 13. Surviving the Downturn Agenda • 5 Things You Shouldn’t Care About Now • 5 Things You Need To Do Now • 5 Things You Need To Learn Now • 5 Markets You Should Be Watching Now • The IT Labor Controversy •  The Education System •  The H-1B program •  The Job Market
  14. 14. Puzzler • Please Translate There’s no place like 127.0.0.1 There’s no place like home
  15. 15. Surviving the Downturn 5 Things You Need To Do Now • Continuous Integration • Java as a platform, not a language • Automate processes • Get involved with OSS • RIA
  16. 16. 5 Things You Need To Do Now 1.) Continuous Integration • Build & Test the system as frequently as possible • Feedback, Transparency, Alignment, Risk Mitigation
  17. 17. Continuous Integration
  18. 18. 5 Things You Need To Do Now 2.) Java as a Platform, Not a Language • Alternative languages and technologies can speed development • Groovy/Grails JVM Java API
  19. 19. 5 Things You Need To Do Now 3.) Automate Processes • We waste time performing mundane tasks • Need to make development more efficient •  Compilation, Database Integration and Migration, Testing, Code Inspection, Deployments, Install Scripts, Notifications, Documentation GO!
  20. 20. 5 Things You Need To Do Now 4.) Get Involved with OSS • Improve your development skills • Learn better ways of developing software • Connect with peers
  21. 21. 5 Things You Need To Do Now 5.) RIA • Improve the UXP Thin Client Fat Client Client Server Processing Processing Centrally Decentrally Stateful Stateless Managed Managed OS Integration Limited Ubuitous No OS Integration Rich UXP Rich Lacks Primitive Portable UXP Portability UXP Off-Line RIA On-Line
  22. 22. Surviving the Downturn Agenda • 5 Things You Shouldn’t Care About Now • 5 Things You Need To Do Now • 5 Things You Need To Learn Now • 5 Markets You Should Be Watching Now • The IT Labor Controversy •  The Education System •  The H-1B program •  The Job Market
  23. 23. Surviving the Downturn Puzzler • Please Translate There are 10 types of people in the world. Name them! Those who understand binary, and those who don’t!
  24. 24. Surviving the Downturn 5 Things You Need To Learn Now • OSGi • Learn a Functional language • Learn a Dynamic Language • Learn a fit client technology • Understand Domain Specific Languages
  25. 25. 5 Things You Need To Learn now 1.) OSGi • Dynamic module system for Java •  Versioning, Dynamic Provisioning, Modularity
  26. 26. 5 Things You Need To Learn now 2.) Learn a Functional Language • Eases concurrent programming through immutable state “The Future of Programming Languages”, Anders Hejlsberg. JAOO Aarhus 2008 Image Source:
  27. 27. 5 Things You Need To Learn now 3.) Learn a Dynamic Language • Type checking deferred to runtime, but there is still a type system Java “4” + 2 results in “42” “The Future of Programming Languages”, Anders Hejlsberg. Ruby “4” + 2 results in TypeError JAOO Aarhus 2008 Image Source:
  28. 28. 5 Things You Need To Learn now 4.) Learn a Fit Client Technology • AIR, Silverlight, Java FX Fit Client Thin Client Fat Client Client/Server Processing Client Server Processing Processing Centrally Decentrally Stateful Stateless Managed Managed OS Integration Limited Ubuitous No OS Integration Rich UXP Rich Lacks Primitive Portable UXP Portability UXP Off-Line On/Off-Line RIA On-Line
  29. 29. 5 Things You Need To Learn now 5.) Understand Domain Specific Languages • Mini-languages aimed at solving a specific type of problem • Popular DSLs today •  Make, Ant, SQL $:.unshift File.join(File.dirname(__FILE__), quot;appquot;) require 'rake/testtask' task :default => [:coverage] require 'rcov/rcovtask' Rcov::RcovTask.new(:coverage) do |t| t.test_files = FileList['test/AllTests.rb'] t.rcov_opts << quot;-I ./appquot; + File::PATH_SEPARATOR + quot;./testquot; t.output_dir = quot;coverageoutquot; end
  30. 30. Surviving the Downturn Agenda • 5 Things You Shouldn’t Care About Now • 5 Things You Need To Do Now • 5 Things You Need To Learn Now • 5 Markets You Should Be Watching Now • The IT Labor Controversy •  The Education System •  The H-1B program •  The Job Market
  31. 31. Puzzler • Please Translate PEBKAC Problem Exists Between Keyboard And Chair
  32. 32. 5 Markets You Should Be Watching Now • Microsoft • Eclipse Foundation • Mobile Development • The Cloud •  SaaS, PaaS, XaaS • Mozilla Labs
  33. 33. 5 Markets You Should Be Watching Now 1.) Microsoft • Azure, Oslo, Rosario •  Cloud Strategy, DSL, and Tool Suites • Evolution of CLR & DLR
  34. 34. 5 Markets You Should Be Watching Now 2.) Eclipse Foundation • From an IDE to an Ecosystem •  e4, EMF • Equinox OSGi runtime • IDE with alternative language support •  Ex. Scala • Cola •  Code collaboration and sharing • Ganymede • BIRT •  BI and Reporting Tools
  35. 35. 5 Markets You Should Be Watching Now 3.) Mobile Development • Smartphones •  iPhone captures 2/3 of mobile browsing • Fragmented market •  MIDP, CLDC, CDC, OS X, Android, Symbian, BlackBerry •  Device as a virtual gateway to enterprise applications •  Applications run on a central server •  Applications execute within resident run-time •  Applications themselves are non-resident •  Resident applications reside on the device •  Require an RMA Platform
  36. 36. 5 Markets You Should Be Watching Now 4.) The Cloud • Shared Infrastructure •  Better hardware utilization (more applications, users and transactions per machine) • Automation and dynamic re-configuration •  Facilitates self-service, provisioning, and flexible workload assignment • Elastic scalability •  Facilitates capacity and demand planning • Pay as you go •  Platform components procured and billed on subscription or usage basis • App Engine, Amazon, Azure, Force.com
  37. 37. 5 Markets You Should Be Watching Now 5.) Mozilla Labs • Project Bespin •  Web-Based framework for code editing and collaboration • Prism •  WebApps on the Desktop
  38. 38. Surviving the Downturn Agenda • 5 Things You Shouldn’t Care About Now • 5 Things You Need To Do Now • 5 Things You Need To Learn Now • 5 Markets You Should Be Watching Now • The IT Labor Controversy •  The Education System •  The H-1B program •  The Job Market
  39. 39. Surviving the Downturn Puzzler • Please Translate Mathematician tells his colleague his wife just had a baby. “Is it a boy or a girl?”, asks the colleague. “Yes”, replied the mathematician.
  40. 40. The IT Labor Controversy
  41. 41. The IT Labor Controversy IT Labor Shortage – Education • Increased enrollment by 20% between 2000 and 2005. • Number of CS undergrad majors declared increased 10% in 2007. • Number of degrees awarded in 2006 exceeded the number in 2001. • Number of degrees awarded since 2000 have exceeded that of the most awarded prior to 2000.
  42. 42. The IT Labor Controversy IT Labor Shortage – Industry • Projected 38% increase in software developers through 2016. • Annual job creation of 120,000 with 300,000 degrees conferred each year. • H-1B Visa Holders are paid between 12,500 and 20,000 less than American workers. • “The Fake Ads” Controversy There’s also a shortage of $2/6 pack micro brews
  43. 43. Surviving the Downturn Thank you! Kirk Knoernschild Analyst, SDLC and Containers, Languages, & Frameworks Burton Group www.burtongroup.com kknoernschild@burtongroup.com Blog: http://apsblog.burtongroup.com Blog: http://techdistrict.kirkk.com Twitter: pragkirk

×