I will try to explore my relationship with IT / software / computers / computer science / software engineering or whatever the best term is to describe it. I am in a mode of looking back with content, and making small changes, learning a bit more.
As often, thinking in 'opposites' comes most natural to me:
Self-study versus formal education. The IT and software industry is young and - I believe - had originally been populated by people without a formal training in computer science as this did not yet exist as an academic discipline. The community was open to outsiders with no formal training or unrelated experience. As a former colleague with a psychology background put it: In the old times, anybody who knew how to hold a computer mouse correctly, was suddenly considered an expert.
I absorbed the hacker ethics of demonstrating your skills rather than showing off papers, and I am grateful about the surprisingly easy start I had in the late 1990s. I just put up a sign in a sense, saying Will Do Computers, and people put trust in me.
I am not 'against' formal education though. Today I enjoy catching up on computer science basics by reading classics like Structure and Interpretation of Computer Programs.
Breaking versus building things. I have been accountable for 'systems' for a long time, and I have built stuff that lasted for longer than I expected. Sometimes I feel like a COBOL programmer in the year of 2000.
But I believe what interested me most is always to find out how stuff works - which also involves breaking things. Debugging. Reverse Engineering. Troubleshooting. All this had always been useful when building things, especially when building on top of or interfacing with existing things - often semi-abandoned blackboxes. This reverse engineering mentality is what provided the connection between physics and IT for me in the first place.
It was neither the mathematical underpinnings of physics and computer science, or my alleged training in programming - I had one class Programming for physicists, using FORTRAN. It was the way an experimental physicist watches and debugs a system 'of nature', like: the growth of thin films in a vacuum chamber, from a plasma cloud generated by evaporating a ceramic target bombarded with laser pulses. Which parameter to change to find out what is the root cause or what triggers a system to change its state? How to minimize the steps to trace out the parameter space most efficiently?
Good-enough approach versus perfectionism. 80/20 or maybe 99/1. You never know or need to know anything. I remember the first time I troubleshooted a client's computer problem. I solved it. Despite knowing any details of what was going on. I am sort of embarrassed by my ignorance and proud at the same time when I look back.
In moment like this I felt the contrast between the hands-on / good-enough approach and the perfectionism I applied in my pervious (academic) life. I remember the endless cycles of refinement of academic papers. Prefixing a sentence with Tentatively, we assume,... just to be sure and not too pretentious though I was working in a narrow niche as a specialist.
But then - as a computer consultant - I simply focused on solving a client's problem in a pragmatic way. I had to think on my feet, and find the most efficient way to rule out potential root causes - using whatever approach worked best: Digging deep into a system, clever googling, or asking a colleague in the community (The latter is only an option if you are able to give back someday).
Top-down, bottom-up, or starting somewhere in the middle. I was not a typical computer nerd as a student. I had no computer in high school except a programmable calculator - where you could see one line of a BASIC program at a time. I remember I had fun with implementating of the Simplex algorithm on that device.
However, I was rather a user of systems, until I inherited (parts of) an experimental setup for measuring electrical properties of samples cooled down by liquid nitrogen and helium. I had to append the existing patchwork of software by learning Turbo Pascal on the job.
Later, I moved to the top level of the ladder of abstraction by using *shock, horror* Visual Basic for Applications, ASP, and VBScript. In am only moving down to lower levels now, finally learning C++, getting closer to assembler and thus touching the interface between hardware and software. Which is perhaps where a one should be, as a physicist.
Green-field or renovation (refactoring). I hardly ever had the chance to or wanted to develop something really from scratch. Constraints and tough limiting requirements come with an allure of their own. This applies to anything - from software to building and construction.
So I enjoy systems' archaeology, including things I have originally created myself, but not touched in a while. Again the love for debugging complements the desire to build something.
From a professionals' point of view, this is a great and useful urge to have: Usually not many people enjoy fiddling with the old stuff, painstakingly researching and migrating it. It's the opposite of having a chance to implement the last shiny tool you learned about in school or in your inhouse presentation (if you work for a software vendor).
In awe of the philosophy of fundamentals versus mundane implementation. I blogged about it recently: Joel Spolsky recommended, tongue-in-cheek, to mention that Structure and Interpretation of Computer Programs brought you to tears - when applying for a job as a software developer.
But indeed: I have hardly attended a class or read a textbook that was at the same time so profoundly and philosophically compelling but also so useful for any programming job I was involved in right now.
Perhaps half of older internet writing reflects my craving for theses philosophical depths versus the hard truth of pragmatism that is required in a real job. At the university I had been offered to work on a project for optimizing something about fluid dynamics related to the manufacturing of plastic window frames. The Horror, after I had read Gödel, Escher, Bach and wanted to decode the universe and solve the most critical problems of humanity via science and technology.
I smile at that now, with hindsight. I found, in a very unspectacular way, that you get passionate about what you are good at and what you know in depth, not the other way round. I was able to possibly reconnect with some of my loftier aspirations, like I could say I Work In Renewable Energy. However, truth is that I simply enjoy the engineering and debugging challenge, and every mundane piece of code refverberates fundamental truths as the ones described in Gödel, Escher, Bach or Structure and Interpretation.
This is actually a translation of the title of a German piece I had written long ago (1998) on request of my high school
For better or for worse - those positions I defended back then did not change a lot. Today I probably hold even stronger opinions - however I rather declare them my personal opinions only. I sincerely do understand that there are people who are happy to play the game - and don't read any irony or critique into this.
I mean it. I have met academics who indulge happily and mischievously in optimizing their track record (tweak metrics) - just in the same way as a minority of corporate workers who have fun with metrics in the corporate world.
In 2012 I have blogged about my trading academia for being a computer consultant for small businesses here:
It’s a small-talk question, innocent and harmless. I have worked in the IT sector for about 15 years, about 10 years specialized in a very specific niche in IT security.
In the coffee-break during the workshop or when indulging in the late night pizza after 14 hours in the datacenter … you start talking about random stuff, including education and hobbies. And then you are asked:
But why is a *physicist* working in *IT security*?
Emphasis may be put on physicist (Flattering: Somebody so smart) or on IT security (Derogatory: Something so mundane). The profession of a physicist might be associated primarily with Stephen-Hawking-type theoretical research. In this case the hidden aside is: Why did you leave the ivory tower for heaven’s sake? Or simply put:
Young Jedi, why Did You – The Chosen One – Succumb to the Dark Side of the Force?
I have probably given different and inconsistent answers, depending on details as the concentration of caffeine or if the client was an MBA or a former scientist.
The gist of my story was (and still is - concluding from those many stories shared by contemporay post-ac / alt-ac movement):
- Simply ignore people who explain to you that they had such high hopes for you, you missed your true vocation.
- Degrees in fundamental science are fun and mind-altering in a sense. You hone your analytical and mathematical skills (Yes, now I am using that pitch, too!) - but this does not mean they can be translated to real-world jobs in an easy way. At least not in a way that can be explained the HR consultant with a degree in sociology.
- You are accountable for doing that translation to the real world - you better to do that start while studying. I didn't - and I know I was lucky.
- Expect your not fitting in (academia, global corporations...) as a matter of fact in life to be dealt with through doing something. You may blog about it but better take action first.
- The same goes for: Your not being fond of working long hours. There are people - academics as well as corporate colleagues who either like it or feel over-working is forced upon them. Which is their pleasure or problem - not yours.
Though I still agree with my own post it sound a tad too justifying myself. We should be more unapologetic about our life-style choices. Just do it - as the well-known brand told us.
But it seems a point of equilibrium has been reached. Peace and quiet. As an engineer 'in the making', focused on renewable energies, I am reconciling 'anything with anything'. Finally.
I have still not decided what 'science' means to me: Is it a world view, a collection of disciplines (I am biased in favor of natural sciences) or is it defined by the social system called scientific community?
I have left academia more than 15 years ago, trying to avoid the nomadic post-doc's lifestyle. It was a negative decision and not at all an easy one, I was not yet drawn to something new. I cannot leave blog posts on 'Leaving Academia' uncommented, see the following articles (highly recommended reading): The Cult of Academia und A Nerdy Break-Up: Leaving the Academic Life.
Here is my take on this: The Dark Side Was Strong in Me.
Fast-forward: I have finally found out, that
my destiny was to start a business of my own and
that I am not comfortable with being part of any large organization or system - be it academia or a global corporation.
But it took me some years to realize that, because academia was not igniting my entrepreneurial spirits yet. Rather the opposite: Though you have been trained to become a very specialized expert for many years - more trained or more specialized than any other professional, 'the system' still makes you feel you are still 'a student' who has to jump through more hoops, do more post-docs, write more papers, apply for more grants etc.
Adding more trivial conclusions: Nice to analyze all this in hindsight, but I could have got there in an easier way. Maybe. And if you have problems with systems (sample n > 1) you should not blame it on the systems.
In December 2012 I was able to report on a milestone - not because something has changed dramatically in 2012, but because I have finally reached a Zen-ny state of contentment: 2012: The Year We Make Contact.