759 karma · joined September 23, 2012
That's pretty unfair to people coming from history or psychology who actually can write good code. Just because you don't have a degree in CS doesn't mean your code is shit. This is purely anecdotal, but my predecessor at my current job was a CS graduate and wrote code like in the OP.
http://github.com/jbaiter/spreads
http://spreads.readthedocs.org
With it, going from a physical book to a digitized, postprocessed and OCRed PDF takes around 30-40 minutes for an average 300-400pg book with no pictures/illustrations.
My (rather lofty, I ad mit) motivation was to make it as easy as possible for people to free printed information from their pyhsical shackles and enable them to share it (I'm currently working on a plugin that allows the user to directly upload a scanned book to the Internet Archive).
The inspiration for it came after I purchased a kit for Daniel Reeds' incredible DIYBookScanner[1] and built it on a free weekend. Upon toying with it, I realized that, while there was a lot of great software available for helping with the scanning and postprocessing, using it required a lot of often tedious manual interactions that could easily be automated.
The tool basically handles all communication with the capture devices (cameras, but the code is kept rather general as to allow for the usage of mobile phones or flatbed scanners) and calls a bunch of 3rd party applications to deal with postprocessing and output generation.
I learned a lot about multithreading/multiprocessing in Python, got to brush up my PySide knowledge and am currently learning AngularJS by developing a webinterface for it, to allow the headless control of Raspberry Pi-connected scanners.
Well, it's great for what it was intended for: structured documents. I work at a library, where I'm dealing with thousands of digitized books and I haven't yet found a proper non-XML alternative to something like TEI.
Is/was my degree useless? No way. Those 4 years of studying history and doing lots of research (I think I wrote around 15 papers in those years, around 70% of which were on subjects with little previous research done before) have taught me to choose my sources wisely, to reflect on my own thinking critically (this is a prime asset as a historian, you cannot uncritically let your own preconceptions of the world direct your decisions) and to generally try to see things (and especially abstractions and thought-systems) from as many different sides as possible. All great skills to have if you code for a living.
I might not be as well versed in theoretical computer science as a CS graduate from a good(!) program, but I am familiar enough with the territory that I can pick up new areas/technologies/algorithms rather quickly and it prevents me from getting the "I graduated in CS, I know everything and do not have to make any effort any more"-attitude that I've e.g. seen in my predecessor at the current job I have (he used unsalted md5-hashes for passwords, wrote Java classes that are >10k lines long and used a mix of zip-archives of his Eclipse-workbench and hundreds of commented-out LOCs as a form of version control)
So far there hasn't been an English translation, although Ars Technica, Wired and the English edition of the Spiegel carried good reviews/summaries[2][3][4]
[1] Eckhard Höffner: Geschichte und Wesen des Urheberrechts. Verlag Europäische Wirtschaft, 2010, ISBN 978-3930893164 (2 Tomes).
[2] http://arstechnica.com/tech-policy/2010/08/drool-britannia-d...
[3] http://www.wired.com/business/2010/08/copyright-germany-brit...
[4] http://www.spiegel.de/international/zeitgeist/no-copyright-l...