Slashdot Mirror


General IT Books?

Torulf would like to start an ongoing discussion on books that anyone in the IT field would benefit in having in their library: "Here's a topic that might generate some interesting discussions. I'm a student trying to get general knowledge of the IT business. The question here is about what is regarded 'basic knowledge' and where to find it. As we all know (I hope), a lot of knowledge can really only be learned through experience. In many cases, however, a read through the theory will save you a lot of time. As books are also easier to look up than experience, below is a suggestion of a reading list that might give a decent general knowledge in the field. Please fill out the gaps with what you think is required knowledge for anyone working in the industry. Mostly this is about a general overview of the different areas of the IT industry, but if you have suggestions of good material for becoming an expert in some particular field, by all means, share your knowledge." Torulf has compiled a fairly long list of books, below, however your own suggestions are always welcome.

"To start off the discussion, here are a few suggestions as to likely candidates. The books are linked to Amazon since they can provide a fairly quick and complete description of the books online.

Programming:
Learning a few languages certainly won't hurt. Here are some suggestions:

Design:
For any non-trivial task, it is suggested that you design before you code.
User Interfaces:
A lot of programmers are more than clueless in this area. These at least won't hurt:
Graphics:
Some general knowledge about graphics.
Business/Management:
Here's something about management and financing. I don't really know about a good reference for marketing applied to the IT industry. This is the area where the average geek is even more ignorant than concerning UI.
Security:
Alright, this list should be a lot longer.
Misc.
And last some stuff that didn't fit in any of the categories above.

Now that's a start to a comprehensive IT Library if I've ever seen one. How do you all feel about this list (if not the specific selections, then at least the material being covered)? If you were to make changes or additions, what would they be?

20 of 373 comments (clear)

  1. Non-Strict Languages by jcast · · Score: 3, Insightful

    You should definitely add a book on a non-strict language like Haskell. beta-contraction rocks!

    --
    There are reasons why democracy does not work nearly as well as capitalism.
    -- David D. Friedman
  2. I would add by spurious+cowherd · · Score: 5, Insightful
    --

    Time flies like an arrow, fruit flies like a banana.

    1. Re:I would add by debaere · · Score: 3, Insightful

      I whole heartedly agree with The Practice Of System and Network Administration. Its not *nix or MS centric, and full of great advice on anything you want or need to know.

      The sections on time management is saving my sanity as we speak :)

      If you are a System Admin, or want to be one, run, don't walk, to your nearest bookstore/site and get this book...

      what are you still doing here?

      --

      DOS is dead, and no one cares...
      If there's a Bourne Shell, I'll see you there
  3. Missing some math books by duckpoopy · · Score: 2, Insightful

    How about: "Numerical Analysis" Burden and Faires "Computational Geometry" deBerg, et. al. "Matrix Computations" Golub, van Loan

    --
    word.
  4. Reading books is better by AdamInParadise · · Score: 3, Insightful

    Having a nice library is good, but reading books is better. Do you know how long it takes to fully assimilate one of these books? At least weeks for some of them. So you don't really have time to understand them (unless you're 1) employed, 2) rich).

    My point is: pick something and get good at it. As you move to more complex projects, everything will come together and you will avoid the "why in hell did I learned that" feeling. Heck , my last project uses J2EE, PostgreSQL, a geographical information system, a graphic toolkit, some shells scripts and some C programs, plus the obvious OO design.

    --
    Nobox: Only simple products.
  5. Re:BofH books. by 4of12 · · Score: 4, Insightful

    But seriously, I cannot immagine anyone learning the "basics" better than fiddling around with things, and learning how they work (by breaking them more likely than not).

    My thoughts exactly.

    Find a crusty old 1995 vintage computer at a garage sale and force yourself to bring it to life where you can browse the internet, write a letter, print it out, and play your favorite CD. For good measure, read some files off a floppy created with an entirely different platform and application.

    At that point you will have an inestimable education on what most everyday IT is really all about.

    --
    "Provided by the management for your protection."
  6. Re:Slashvertisements by L.+VeGas · · Score: 3, Insightful

    I guess blatent referrer links in a story to a vendor we are all supposedly boycotting

    Gee, am I out of the loop. I didn't get the official authorized vendor list. Guess you're cooler than me.

  7. Depends on your definition of "IT" by Junks+Jerzey · · Score: 3, Insightful

    Every time I see that acronym used, it's in a context far and away from what I would call traditional software engineering. I think of it as somewhere between web programming and corporate database programmer. As such, it seems that the recommended books are lean too far away from what the typical IT worker needs to know.

  8. Re:BofH books. by Telastyn · · Score: 2, Insightful

    Or, even better yet, if you must force yourself to do such things, maybe you should continue your career search elsewhere...

  9. The only one that matters by saphena · · Score: 1, Insightful

    Alice in Wonderland by Lewis Carroll

  10. Re:Thinking in Java by Marcus+Green · · Score: 2, Insightful

    Ahh download for free sounds like a very nice price, then you start reading it off the screen and its a really horrible experience. So you decide to print it out, two hours of mucking around with your home laser printer and a whole pile of paper and you have a large messy not so portable version of the book. And there is the little business of the two hourse of your time (but perhaps your time is free and there is nothing else you would rather be doing with it)

    But perhaps you can do it at work where the paper and toner is "free", uh wait a minite it is not really free it belongs to someone else, now there is a name for that.

    Or you could just buy it and have something that looks good, is portable, readable, lendable and shelfable.

  11. databases, databases, databases! by Anonymous Coward · · Score: 1, Insightful

    I see you have a book on SQL, but no more on data modelling and concepts. A good grounding in subjects such as proper table structures, data integrity, indexes, views stored procs etc. (and their various advantages and disadvantages) is a MUST. I can't tell you how frustrating it is to work with someone without that basic knowledge...

  12. The Practice of System and Network Administration by gatekeep · · Score: 2, Insightful

    Slashdot had a review a while back of The Practice of System and Network Administration This is a really wonderful book about system administration methodoligies and best practices. It stays completely away from the technical aspects of administration, and instead focuses on the logical and organizational aspects. This should be required reading for all SAs. Many will think it's pretty basic, but even experienced SAs will pick up a nugget or two of information, and it's a great introduction to the career for newbies.

  13. Programming Pearls by anonymous_wombat · · Score: 3, Insightful

    The book Programming Pearls by Jon Bently is an excellent book on programming practices, interesting to read, not too heavy.

  14. Refactoring by djKing · · Score: 5, Insightful
    Refactoring: Improving the Design of Existing Code by Marting Fowler shows you how to take bad code and turn it into good code, and there is a lot of bad code out there.

    -Peace
    Dave

    --
    Free as in "the Truth shall set you..."
  15. Abelson and Sussman by chriscrick · · Score: 4, Insightful

    Hard to believe no one has mentioned Structure and Interpretation of Computer Programs. While Knuth is a great set of reference bibles, SICP is a perfect textbook. It's funny, well-written, incredibly comprehensive and appropriately mind-expanding. Work through all of the exercises in that book and you've got a solid grasp of programming fundamentals.

    Chris

  16. Rapid Development by Sir+Tandeth · · Score: 2, Insightful

    Rapid Development : Taming Wild Software Schedules by Steve McConnell. Teaches software project management through the avoidance of "classic mistakes". His list of classic mistakes reads like a diary of all the places I've been.

  17. What is IT? by Kageb · · Score: 2, Insightful

    I'm actually kind of interested to see what people say on this subject, as it's something I've been thinking about recently.

    Seems to me that "IT" is a much broader subject than what is suggested by this list, and that an "IT Professional" is much more than a programmer. To me, an IT Professional is someone who can walk into a business, assess their situation and needs, recommend a solution, and see through the implementation of that solution.

    This obviously requires solid programming skills, but it also requires real business knowledge, finance, operations, knowledge of the IT industry, people skills. Let alone software and hardware architecture.

    The fact is, that code is becoming largely a commodity. A growing percentage of business problems can be solved more cheaply using off-the-shelf components. So "implementing a solution" is more and more a matter of tying together pieces.

    What becomes valuable and in demand, then, is your integration skills, your knowledge of business needs, your experience dealing with vendors, and your ability to nurture your customer relationships.

    So I would conclude that yes, it's critical to have a solid tech background, and all that stuff should be on your bookshelf, but you really need to succeed as an IT Professional is a global view of the IT Industry and its relationship to business.

    What I'd like to see added to the list is recommendations of books that would help one achieve this sort of perspective.

  18. Really? by Anonymous+Brave+Guy · · Score: 5, Insightful

    Sorry, but I think Knuth's The Art Of Computer Programming is massively overrated as a general-purpose text. It's like that presentation edition of The Complete Works of Willy Wagglestick that sits on the shelf looking splendid and making you very proud that you own it, but never actually getting read.

    For most purposes, a good book on basic data structures and algorithms is far more useful in the real world than Knuth's complex explanations with examples implemented in MIX. Maybe I just don't need the deep stuff behind it regularly, but if I don't then surely neither do most other professional programmers, and that pretty clearly contradicts the "essential" status. If it was a choice between making computer science students read TAOCP or making them read Sedgewick, then I'm sorry, but I'm choosing Sedgewick every time.

    This is not to say Knuth's work doesn't have immense value as an authoritative academic treatise on its subject matter; clearly it does. But that's very different to calling it "absolutely essential" for just anyone.

    And to preempt the obvious replies... Yes, I've read several bits of TAOCP. Yes, I do like other things Knuth has written (notably his TeX-related stuff). And no, I don't much like Numerical Recipes either, for exactly the same reasons.

    --
    If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
  19. Re:The one required book for programmers by Mad+Marlin · · Score: 2, Insightful
    You must be kidding. Have you read these books? I can't say I know a single person who has read all of them.

    I have read all of volume 1 and about half of volume 2, excepting a few parts where the math was too complex (and I have around 60 semester hours of college math). One of my goals for this summer is to finish volume 2. I have found it to be a very well written text, but you need a good deal of math to understand it. These are not good books for anybody getting a mainly-business-oriented degree (called C.I.S. at my college). However, if you can understand the math, by all means read it all. There are quite a few items in computer science that I didn't understand fully (or at all) until I read it in Knuth. If I ever meet the guy in person, I would have to say thanks.