summaryrefslogtreecommitdiff
path: root/src/When_Innovation_is_Appropriate.ascii
blob: f24fbf5b8819bb2cab90d9064ed7c78cfcdd7bb3 (plain)
    1 When Innovation is Appropriate
    2 ==============================
    3 :author: Aaron Ball
    4 :email: nullspoon@iohq.net
    5 
    6 == {doctitle}
    7 
    8 I have recently found myself very burned out on IT. Don't get me wrong, I love
    9 doing anything related to building systems of any kind. I love to design
   10 systems and I love programming (not that those two are very distinguishable).
   11 Modular design that implements seperation of concerns well is like poetry to
   12 me. All that goes to say that I still enjoy working with computers in most
   13 capacities. What's really burned me out is the constant fight.
   14 
   15 I work in a heavily regulated industry with a team that is made up of half
   16 Linux guys and half AIX/IBM guys. I find that the Linux engineers are fighting
   17 with the AIX guys about ways to do things. They don't want to use any product
   18 that doesn't come with an enterprise support package (IBM support is
   19 preferable). They always give the excuse "Well do you want to be the one at
   20 3:00 in the morning who's trying to figure out some obscure problem by yourself
   21 with management breathing down your neck, or do you want a third party who you
   22 can point the finger at and send a ticket to?". The thing about that mentality
   23 though is that pointing the finger at a vendor doesn't get your systems up any
   24 faster, nor does it better you as an engineer.
   25 
   26 I disagree with this mentality (as evidenced with this post). My feelings on
   27 the matter are that my employer is paying me money to be the best at my job
   28 that I can be. That goes without saying that it brings me tremendous
   29 satisfaction to be great at my job. That means learning to support whatever
   30 weird stuff is already in place and engineering better solutions for the ones
   31 that break. After all, why bandage a problem when you can solve the problem all
   32 together.
   33 
   34 
   35 [[two-schools-of-thought]]
   36 == Two Schools of Thought
   37 
   38 All this goes to highlight two different mentalities (yes, I know how cliche
   39 this sounds). One group of people asks "why", and the other asks "why not".
   40 
   41 The "why" people will often look at a problem and think only inside the box the
   42 problem's circumstances provide. If an outside the box solution is considered,
   43 that solution is likely only inside of another box (from one proprietary
   44 solution to another). They consider outside the box thinkers to be reckless and
   45 "cowboy" because outside the box in many cases entails making ones own
   46 solution.
   47 
   48 The other group, the "why not" folks, tend to view the "why" people as closed
   49 minded and paralyzed with indecision. They mentally roll their eyes when they
   50 hear the phrase "enterprise support" and often look at budgets and say "Why are
   51 we paying so much money when we can do such simple work for free".
   52 
   53 Granted, these are generalizations of course. Not all of the above mentalities
   54 apply globally and neither do they apply in their implied levels. These
   55 attitudes are spectrums and do not accurately describe everyone in either
   56 group.
   57 
   58 
   59 [[i-personally...]]
   60 == I Personally...
   61 
   62 When I see a problem at work, my first reaction is not to look for a paid
   63 solution that's going to cost loads of money and make finding employees with
   64 experience with the solution harder. The way I view it, if you pay for a
   65 software so expensive that only a fortune 200 has the resources to buy it, you
   66 are limiting your pool of hireable people down to those who have ever worked at
   67 a fortune 200. Instead I go in search of an open source product that is
   68 established well enough to be able to handle the problems we throw at it (eg:
   69 puppet, apache, clustered mariadb, openstack, kvm, native Linux tools, etc). If
   70 one does not exist and the problem is still surmountable without needing an
   71 entire development team, I try to build my own solution using design best
   72 practice and then I document it like my job depends on it (code comments, class
   73 architecture design documents, database schema design documents, etc). The way
   74 I see it, building my own solutions gives me better understanding of how
   75 already existing solutions work. It also helps because it gets me to research
   76 better ways to do something. From the business' perspective though, they need
   77 to find a developer to maintain my product when I am gone, so in these cases an
   78 enterprise solution might be better.
   79 
   80 
   81 [[a-short-list]]
   82 == A Short List
   83 
   84 Here's a short list of people and companies who have asked why not (notice how
   85 they're all world renound innovators)...
   86 
   87 Google is [seemingly] one of those companies who has a lot of people working
   88 for it that ask why not. They are experimenting with low traffic server farms
   89 that use ARM processors to save on electricity. Twitter is built on Ruby, an
   90 open source language, because it actually can do the job and do it well (why
   91 not when the alternative is licensing IIS, Windows, MsSql and using .Net).
   92 Facebook (despite the problems I have with them) is built on PHP and when that
   93 wasn't fast enough for them, they built their own php to c++ converter. The
   94 Linux kernel which now runs the majority of the servers on planet earth is
   95 built by people sitting at their jobs and at home, donating their time because
   96 the alternatives aren't good enough, and again, why not? OpenStack is used and
   97 developed by NASA, an organization who has safely sent people to space and
   98 back, and Rackspace, one of the biggest hosting providers in the world.
   99 Wikipedia, one of most frequently visited websites in the world, is built for
  100 free on PHP and MariaDB because again, why not? Have you ever seen Wikipedia
  101 crash? The http://en.wikipedia.org/wiki/Lustre_%28file_system%29[Lustre
  102 filesystem] is an open source load balanced filesystem that runs 60 of the
  103 world's top 100 super computers and 6 of the top 10. NASA also uses it.
  104 
  105 
  106 [[in-conclusion]]
  107 == In Conclusion
  108 
  109 It's people asking "why not" that brought us things like HTTP, SSH, Apache, pgp
  110 encryption, multithreading, fiber and copper communications, radio-based
  111 networking (WiFi), and so much more. I seriously doubt that I will ever make
  112 anything nearly as cool or world shaping as
  113 http://www.goodreads.com/quotes/10286-if-i-have-seen-further-it-is-by-standing-on[the
  114 work upon which everything I have made is built], but I can at least try in the
  115 effort to not perpetuate bad methodologies and maybe contribute if even a
  116 little to the knowledge base that is so readily available to all of us.
  117 
  118 
  119 // vim: set syntax=asciidoc:

Generated by cgit