What Kind of Books do You Want? 942
ctrimble asks: "I'm the acquisitions editor for a technical publishing company (not the one with the animals, but we have had six of our books reviewed favourably, here on Slashdot) and part of my job is to determine what books my company should publish. This consists, mainly, of me sitting in my apartment eating peanut butter sandwiches, reading Slashdot,
and writing perl scripts that generate titles in a Madlibs type fashion: "Hacking Ruby for Midgets" (forthcoming in July). Unfortunately, there's a bit of an impedance mismatch between my methodology and filling the needs of the programming community. Market research is tough to do in tech books since you need to forcast about a year in advance. So, let me pose the question to you -- what kind of books do you want? What spots do you see as needing to be filled? For that matter, do you even want dead-tree books, or are eBooks and/or online documentation sufficient?"
Good ones (Score:3, Insightful)
dead tree books (Score:5, Insightful)
On a side note, ancedotes are good. Most topics are usually pretty dry, so adding in a little humor can make the books more fun.
thanks
Dead trees are the only way to go (Score:2, Insightful)
Books I want (Score:5, Insightful)
I use java as an example, but I really would like it in all languages.
jakarta books? (Score:2, Insightful)
OK here goes... :) (Score:3, Insightful)
1. Learning VB.Net for Java Programmers
2. Migrating from Linux to Windows
3. basically anything on
ebooks (Score:3, Insightful)
Speaking personally, I am more than happy to continue buying the occasional dead tree computer book, provided that it is really up to date (not easy with fast moving topics like Linux).
something to keep tabs on those jakarta people (Score:2, Insightful)
there are a lot of exciting things going on with the jakarta people, we need more documentation on that stuff, including ant, jMeter, log4j, tomcat, etc...
this [http://www.rickhightower.com/JavaXPToolkit/] book does a pretty good job but we need more.
THINNER books (Score:5, Insightful)
Keep the books coming (Score:2, Insightful)
There are lots of times when i just want to see some good examples of code use, and that can be really hard to find online.
plus, i don't have a network connection in the bathroom...
What I want (Score:3, Insightful)
What I want is the Linux Application Guide. Basically, a book that says "Here are the major Word Processors. These are the key features of each. We suggest you decide based on whether you need to do this, that or the other." Ditto browsers, Desktops, mail clients, DVD players, Instant Messaging, p2p.
Basically, I use Linux. I use KDE because I tried it and I like it. pine because I tried it and liked it. Ditto Konq, Kword, mplayer, and others. They may or may not be the best there is. They're just the first I tried that was good enough. So... help me pick my applications.
I know you don't write the books... but I've been waiting for that book, and haven't heard anything about it. I know there are problems -- time frame, distro, etc. Just try to make it distro-independent, maybe list easy distros for each app. Also, it would need a brief bit about configuration. I'm thinking two to three pages per app plus a couple screen shots. Order of five to ten apps in less than a dozen categories.
Short, specific, inexpensive, and (Score:5, Insightful)
If it claims to be a "Bible". I'm not going to buy it.
If it has source code it had better come with a CD or a link to a well-designed and fast web site.
If it doesn't have source code, I'd rather save $5 and not get a CD instead of getting a CD with demo software that is already 6 monthes out-of-date by the time the book is published.
Also, any book that begins with a "history of the computer" introduction goes back on the shelf down at Borders.
Re:dead tree books (Score:3, Insightful)
Re:Definitely want dead tree books (Score:2, Insightful)
As for content: there's only one thing worse than humourless books, it's books with badly-written, forced humour. Especially if the book is a reference book; something that seems quite funny the first time really gets on your tits when you've to flick through the chapter for the nth time. So no jokes in chapters on regular expressions, please.
Other than that: the real-life example is far too underutilised, in my experience. How I Configured Apache And Why My httpd.conf Looks Like This and Leaves These Options Out is a trifle unwieldy for a title, but it'd be a very handy book to have.
Dead Tree Books Rule (Score:3, Insightful)
Whatever subject I am currently interested in gets my money. Lately it's been OpenGL and game programming (especially math). In the last 3 months I've purchased or recieved for X-mas (by request):
OpenGL Game Programming
Programming Linux Games
3D Math For Game Programmers
Physics For Game Programmers
Tk/TCL For Real Programmers
3D Game Engine Design
DNS and BIND
SSH (the O'Reilly one)
Game Programming Gems 2
and a few more.
So, what am I looking for?
It depends what I am interested in today. Right now I need a really good C++ STL reference book.
I also need a math primer. I haven't thought about math since my aborted attempt at college 12 years ago. While I did get an A in Calculus, that was 12 years ago and I remember nothing. The 3D Math book I mentioned above pretty much assumes you already know Calc.
It seems to me that there are alot of beginning programming books, especially about game design and C++, but few advanced books.
Also, there are few game AI books out there, but I see on Amazon that there are 2 promising titles to be released in the next few months.
One of my favorite programming books of all time is The Perl Cookbook. Now, I make my living programming Perl on Linux, and this book gets cracked open by me at least once a week. I've even seem comments in other people's code that said "If you don't understand this next bit, see the Cookbook page xxx". A Cookbook type thing for C++ would really be cool.
Alright. Lunchtime. Off to Fry's.
-geekd
dead trees (Score:3, Insightful)
With that said, it's also useful to make the content available online if possible, as an abridged reference if nothing else. It's really handy for when you don't have the book handy and just want to look up "hey, how did they do that trick again?"
As for subjects I'd like to see? I prefer books that don't neccesarily focus on a single library (everything you ever needed to know about gtk!). While useful as reference manuals, the same thing is generally online. Focus instead on using some combination of libraries to come up with a useful working environment for whatever it is you're aiming for, be that quick apps, huge apps, games, or what have you.
J2EE books (Score:3, Insightful)
Books vs. Ebooks (Score:2, Insightful)
Why does it have to be an either-or?
The advantages of a book are:
The advantages of an e-book are:
The advantages of online material are:
Can't these all just "get along"???
JavaDoc (Score:2, Insightful)
A dead-tree version would be great, provided it was full of accurate cross-indexes (pages numbers, etc). I would love something like this for C++.
The php.net documentation isn't half bad either.
Lastly, my one major gripe about books and references in general is their lack of examples, or the over-complication of examples. For instance, Sun's examples for threading all involve Swing, which accounts for 90% of the code. If you don't understand Swing, you're lost. A lot of little, simple, relevant examples and an explanation of what's happening would be great.
And this applies to more than just programming languages. I would have killed for something like this when I was learning Bind and OpenLDAP.
Make it comprehensive--full disclosure of APIs down to protected fields and methods, and examples, examples, examples. Make stuff easy to find, and make it worthwhile, and you've got my money.
Dead Tree Books (Score:2, Insightful)
Given the current controversy with 'digital rights management' and the stability, availability, and durability of various electronic media, I much prefer hardcopy paper books to ebooks. Paper is more convenient, can be photocopied when I need a snippet from a manual, and does not depend on expensive hardware, spotty power supplies, or the largess of a publishing company that wants me to pay for each time I read the book.
As for which books I'll be looking for, that varies a lot. My current interest list includes:
Is any of this helpful?
A grand encyclopedia of neat algorithms... (Score:4, Insightful)
One of these days I'll write that encyclopedia.
Type of Books: Well-written (Score:2, Insightful)
That attitude does not inspire my confidence in the content of the books.
Also useful would be requiring that someone (not the author) actually follow the instructions in a book, to insure that the instructions actually lead to the correct result. I'm just now reading a book where it's clear that this was not done, because the instructions leave out important information; which information I then had to acquire through research, in order to reach the desired result. Very annoying.
mp
books for the kids who were lazy back in school.. (Score:5, Insightful)
My problem whenever I involve myself with coding something is getting knowledge about all the other vital pieces to programming, various algorithms, methods of structuring a program, stuff like that.
See, for those kids who managed to push themselves through college all think this is easy stuff.. linked lists, random numbers, event based programming, hashing, and so on (have a firm grasp of these concepts, just using them as examples). That's what they paid to go to school for. But for the rest of us who're trying to cut a living and can't easily do the school thing anymore, a "teach yourself" book or books educating the more abstract parts of programming would be a major help.
Some of this is documented, slightly, on the web or in existing open sourced projects. But most of it reads like class notes at best, and I have yet to find good books that go over these sorts of things. The information is there, but it's not presented in a manner that's easy to absorb.
As an example, oreilly did a book a while back called 'Practical Programming in C'. That was a step in the right direction. It was an easy read, but taught a lot of really useful C concepts that most people take for granted. As far as it went, it was immensely valuable to me both as a reference and a tutor.
Basically, there's a niche between API references and language syntax books that seems horribly unfilled. I'd buy books immediatley if they seemed to fall in that category.
Re:dead tree books (Score:2, Insightful)
Re:regardless of what the subject ... (Score:2, Insightful)
spots to be filled. (Score:2, Insightful)
First of all: God-yes we want dead trees!
There's a famous saying "you can't grep dead trees", but it's not really true. A good index will have every single word that's not one of the few thousand most common glue words in English listed with all references, in order of appropriateness. Basically, the only real need I've ever had for grepping a dead tree is when I remember a piece of humor or funny wording in a definition, example, etc., and would like to see it again.
Otherwise, if I've read an O'Reilly book (or most others) once, I can find any spot of it again, even without a table of contents.
And with a table of contents, man, oh man, does my productivity skyrocket.
Now to answer your bigger question:
What spots do you see as needing to be filled?
This is a difficult question, because as you know, there's an animal out there for anythign you want to do.
Some time ago I was learning Perl from Programming Perl by Larry Wall (et al.) and was about to implement a crude ascii text database (one entry per line) into a data.txt when I stopped myself, did two and a half minutes of googling, and soon had Programming the Perl DBI on the way to my house from amazon.com.
After a lot of fun messing around, I got MySQL interfaced with three lines (not literally) of Perl code and painlessly had a nice, robust "database" representing what I could have coded in ten minutes (not elegantly) using little more than opening a file. But look, no race conditions!
Anyway, the moral of this story is: If you want to cover an existing technology (even something as small as the DBI in Perl!), and O'Reilly has a book out, don't. Period. And if O'Reilly doestn't have a book out, you need to ask yourself: "why not?"
Because O'Reilly covers technologies. And they cover them well.
Sorry, I will not buy from you what I can get elsewhere, better. And I have reason to believe O'Reilly will be better.
I bought the Perl Blackbook, but only because it had information on CGI with respect to Perl that O'Reilly didn't. The moral: mix and cater.
If I want to code up the look of a piece of architecture without CAD, to show someone what it might look like from the inside, then the easiest, cheapest, fastest way to do this is with the Quake engine. Period. There are hundreds of people who use it to design "levels" (or however, I'm not into that) with whatever they want to show/model, etc. Sure, there aren't real physics. The software won't tell you whether that kind of building can really sustain itself. But it looks damn pretty.
In other words: find a need and fill it. If you "ask slashdot", you will get 50 intelligent responses serving 50 different needs. Each one of these responses will show you what someone would buy if you wrote a book for them about that. But what you really want to know is how many other people will buy it.
Solution? Troll the newsgroups.
I will pay you money to show me how to painlessly set up an external USB modem under Linux. Even if it's just one or two models that you can do that with.
This includes recompiling the kernel with the proper package (some extra usb standard), but I've never bothered to see how I can get a recompiled kernel to work with Red Hat, which is what I use, and which uses it's own special kernels, packages, whatever, point is it didn't boot right with the recompiled kernel. I fscked around a bit, asked a few newsgroup questions, and it didn't work out.
There are lots of repetitive newsgroup questions that begin "I read the FAQ, but...".
Take a survey (I mean, manually count). Whatever of these is most popular will be your ticket to gold.
People will PAY to be told in a clearer, better fashion what the FAQ doesn't allow them to understand easily.
Steps to gold:
Hope this helps.
~
Support the AC initiative. Copy this message when posting insightfully or wittily as AC.
That's one of the reasons (Score:3, Insightful)
Thinner, cheaper books. (Score:4, Insightful)
I'd also like to see more in the way of method books, rather than subject books. ie, something that teaches how to program rather than how to program in a specific language. possibly case books, that show how to get around certain problems. I'd like to see books less revolved around programs, and more to the topic of methods and strategies. It might not require a person to buy a new $50 book every week for every different program, but it will make a better book.
Suggestions, Opinions (Score:5, Insightful)
I'd like to see:
- More books with the flexible bindings (ala Oreilly). Books that don't lay flat suck.
- More "Cookbook" style books, as long as they are truly thorough and diverse (see Perl Cookbook for a good example).
Essentially, system engineers like to see short code snippets of how to accomplish odd tasks in a quick, easy manner. Again, when stuff's broken, or data needs to be pulled pronto, I'm not going to wade through man pages, etc.
- I don't favor the Nutshell style books, they're usually poorly organized and don't comprise enough of the "right" information.
- More quality assurance. Too many books these days are rushed out to market way too quickly. I'd rather buy a book that's good quality, rather than "quickest out". Most of us customers read Amazon.com reviews to get an idea of what books to buy on a particular subject. Keep that in mind.
- Topics I'd like to see? more advanced-level BSD stuff, more kernel hacking stuff, LDAP, you can never have too many Perl books. Think about stuff your target audience would love to see. Oreilly is great for doing this, see: "CGI Programming with Perl", "Perl for System Administration", etc
Programming Under Linux (Score:1, Insightful)
Information Rich... Academic... Textbooks (Score:0, Insightful)
I tend to buy graduate-level textbooks focussing on difficult topics. Tired of the commodity books about commodity topics.
Plus, I hate wasting money and trees on books that include 150 pages of 'API Reference'. I have a web-browser and the tarball of javadocs, I don't need a printed version of them, or any other API, for that matter.
Re:THINNER books (Score:2, Insightful)
'The C Programming Language' is one of the most expensive computer books around....
Re:Dead trees are the only way to go (Score:3, Insightful)
I like to see books with a lot of meat and less fluff. There needs to be more books with good examples, and not just books where the examples are taken from the online text. I want the code examples to demostrate the concept(s) being learned. I am sick of reading a book only to learn the program examples to demonstrate the concept(s) were taken from online text provided with the code and/or libraries. These examples tend to be out of date and/or very simple examples that a monkey could figure out.
Another topic would be ODBC 3.x on Unix platforms. I have a general book on ODBC, but it isn't a good resource for programming ODBC on Unix platforms.
Re:regardless of what the subject ... (Score:3, Insightful)
This is an excellent suggetion and I hope Cliff pays attention to this one and can have some influence here. Regular soft bound books that I actually use fall apart after awhile. Sure, a few pages might get ripped out of a very roughly used spiral book, especially if the covers are not heavy enough (please have covers of sufficiet weight not to be ripped off when being yanked out of backpack) but that is nothing like having the binding of the book disintegrate. Also, being able to have book lie flat is a big plus.
Re:dead tree books (Score:5, Insightful)
Re:What book do I need? (Score:1, Insightful)
www.fastseduction.com
also there's a newsletter that's pretty good.
www.geocities.com/cliff604/CliffsList.html
Try it! It works
Basically the whole thing with women is to realize that they have sexual desires too. To sleep with a woman, all you have to do is find out what she wants and figure out a way to give her what she needs, in a way that makes her feel comfortable.
You accomplish this with framing.
Seduction is an art but it can be learned.
Re:dead tree books (Score:4, Insightful)
Add these books to the list! (Score:4, Insightful)
GCC Internals: How it works/How to modify it. - Have you ever looked at this heaping mess of code? I would love to play around with it, but the learning curve is too high to just jump in.
Linux/Unix Lowlevel Programming: Ok there are bunchs of crappy assembly programming books out there... by chapter 12 they have covered what a register is. I don't want the most basic stuff I wanna know exactly how the linker works, I wanna know how stack frames are setup. How ELF binaries are loaded. What assembly code is needed to bind it all together. Sure I can piece most of it together from web sites, the kernel and other sites, but it is hard to put it all together.
Programming KDE 3: QT and KDE are awsome, I do a little bit of development with QT/KDE now, but there is just some documentation that cannot be found...
Architectures of Popular Linux Apps: A book that does an overview of the architectures behind popular linux applications, with a little bit of discussion about thier architecture and implementation, maybe mixed with a little theroy. For instance an chapter on apache, X11, SSH, postfix, php, konqueror, mozilla... This would be really good at helping linux developers dive into existing projects. You could even solicit open-source authors to provide an overview of thier project architecture and ask them to discuss how what thier biggest challenges where, why the did so and so.. This could really boost participation in certain projects.
Using GNU Development Tools: A book that details how to use GDB, gprof, gcov, ld, ar, and etc. effectively with all the options and do-dads. Maybe cover other tools like DDD, Electric Fence, etc.
Oh yeah! These need to be in paper form! Screw electronic form, it sucks to read.
celer
User annotation... (Score:3, Insightful)
While it runs just fine and dandy, quite a bit of the documentation is geared toward users running Linux/Apache/MySQL
It was a very pleasant experience to see, down below the 'approved' text, a series of users who had already solved problems of how to get PHP to talk to MS SQL over ODBC, which dll's you needed, how to edit your php.ini so that it works *just* right, etc...
Shared user annotation is a very wonderful thing for technical manuals of any kind. All online resources should at least consider doing things like PHP.Net has done.
I want the books with the animals (Score:2, Insightful)
O'Reilly makes the kinds of books I want. I don't mean to say that I only want O'Reilly books, because there are a lot of topics they don't cover, like software engineering, general theory, etc. I also don't mean to say that a publisher is the determining factor of a good book, but generally O'Reilly has a reputation for publishing good ones. What I mean to say is that there are some factors that generally make the books with the animals good:
Generally, these factors show that O'Reilly knows their audience. A single book won't give a programmer everything one can know about the subject, but it will give a programmer most of what one needs to know and a good foundation to learn more.
Re:dead tree books (Score:3, Insightful)
Re:Dead trees are the greatest! (Score:2, Insightful)
For the record, O'Reilley does one heck of a job,
and they are the player to beat. The Perl series
alone is outstanding.
Re:Yes, I want DEAD TREES! (Score:5, Insightful)
Hear! Hear! Paper is:
Electronic formats are okay when you need to provide documentation to a whole bunch of people but most people I know still like having a paper copy and cite the reasons above as why.
Re:A short list: (Score:5, Insightful)
Also, MORE LDAP BOOKS PLEASE.
More CISSP options would be great too.
"$SKILL for $SKILL" Books and More Real Use (Score:2, Insightful)
On the same vein, development: "COBOL for C++ programmers", "Flat File Database Design for Relational Database Developers", "Perl for Visual Basic Programmers". Something that presents to similar ideas (Programming) that have very different approaches (COBOL uses Verbs and Paragraphs where C++ users functions and reserved words) and presents them in a way the reader can understand.
Also, Practical Approaches to setting up a system. We just got Sun V880s, and we've had a bunch of Netras and smaller systems, we've used Veritas Volume Manager before, and we've setup big Alpha systems before, but we've never setup a big Sun. It'd be nice to pick up a book that walked through best practices of how to setup a system from beginning to end in all aspects, not just Alternate Pathing or just disk quotas or just security. A big picture book, with big pictures.
Reference vs. Learning books (Score:3, Insightful)
As for "learning" books, if it has to be 1200 pages, I'd rather it was broken up into smaller books in a boxed set. That way I only have to carry around a 1lb book instead of a 8lb one.
You don't need to include pictures of everything- we're smart enough that if we're not at a computer and we can't picture it in our heads, we'll come back to it when we are near a computer.
And those "HINTS", "SECRETS", "WARNINGS"- yeah, yeah, they're important, but we're not idiots- you don't need to waste so much space with fancy borders and colors and icons so it attracts our attention.
Re:dead tree books (Score:2, Insightful)
Practical functional programming (Score:5, Insightful)
While the audience may be limited, I think there's a screaming need for such a book within that audience; almost all existing FP texts are way off in theory-land, and most predate the huge boom of the web, which is a natural environment for functional languages.
An added benefit for a publisher is that this particular technology landscape changes slowly, so the book will have a long shelf life, and is at no risk of being obsolete before it's released.
Books for Non-Dummies (Score:3, Insightful)
When I pick a new language (especially if it's just YAPL -- Yet Another Procedural Language -- of the C/C++/Perl/Java/etc. variety) I don't want to wade through pages and pages explaing basics of syntax -- I can pick it up quicky on my own. I also don't want to have if..then..else construct explained to me for the nth time, unless there is something fancy about it.
What I want is a conscise explanation of the mode of thinking that the language was designed to go with. I want to know which idioms people who write in that language use, and why *this* way of doing things is cooler/neater/a win. I want to get a feel for the language.
For example, in Perl the camel book, besides reference stuff, provides a lot of advice and examples of Ways Things Are Usually Done In Perl, along with explanations or at least hints why this is generally accepted to be The Right Thing. The camel book (and writings by Larry Wall in general) provide a wonderful feel for the flavor of Perl and why it's not just interpreted C with a loose syntax (we'll leave the fine distinction between Perl and line noise for another time).
I've been looking for a similar book about Java with utter lack of success. Either it's introduction to programming for novices, or a libraries' reference guide. The closest I've found was a book by Bruce Eckel -- Thinking in Java, I think it was called -- but even that wasn't all that good.
Lisp people understand perfectly that thinking while coding in Lisp is radically different from thinking while coding in C/C++/etc. I want these differences in thinking, in flavor, in idiom, to be shown to me for many different languages, starting from Java and Python and Eiffel, and ending with Haskell and Oberon and Intercal.
Re:Practical functional programming (Score:3, Insightful)
I don't just want to know how to program with functional languages in the real world. I'd like to be able to link C/C++ code with functional code. I've discovered that functional languages are great for the things imperative languages are terrible for, and vice versa.
If I could link the two together, I might actually succeed in being able to use the Right tools for the Job.
Re:i hear you (Score:2, Insightful)
_The Pragmatic Programmer_ by Andrew Hunt. Lots of "well, duh" stuff after you've been programming for several years and have the scars to prove it. None of the stuff in this book was covered in my CS program. I wish I could force my younger co-workers to read AND FOLLOW this book.
I'm up to my eyes in beginner's and slightly beyond beginner's books on a myriad of subjects. I'd like to see more advanced PRACTICAL (no theory) software engineering books like the above.
How about _Massive Scale Server Design_; i.e., how to design and code scalable server software (I don't have time to go through Apache's source and learn the hard way).
_Super Advanced C Tricks_ How to do interesting and completely useful things in the world's most portable assembly language.
In particular I'd like a book on everything I don't know.
I am NOT an idiot!!! (Score:0, Insightful)
Personally I am very sick of all the programming books that treat me like an idiot! And NO I'm not just talking about "Complete Idiot's Guide" stuff.
Say for instance I buy a beginners guide to Java. The second or third chapter will be about loops, and instead of just explaining the syntax of a Java loop, it spends an ENTIRE chapter explaining what a loop is, and the difference between an UNTIL loop and a WHILE loop.
Give be a break!
Just because I don't know Java doesn't mean that I don't understand basic programming conventions. Isn't it safe to assume that if a person is going to buy a huge "bible" of a book, that they know at least one other language!
The best example of what I want to see more of in books is in "PHP and MySQL" by sams publishing. Not only does it NOT assume that you are an idiot, the CD included all the code used in the book, AND the entire book in PDF.
this is perfect! It saves me so much time when I am trying to look something up because if I forget how to make an array in PHP, if I go to the array chapter, I don't have to sift through 20 pages of crap explaining to me what an array is, the first page of the chapter is a brief explanation of an array, and the second page shows the syntax. I love it! AND I can keep the PDA file around for quick reference in case I don't have the book with me!
I hope more books will follow that example.
Book wish list (Score:1, Insightful)
Show generic examples and possible / probable elaborations. Show reasoning and alternatives. Don't fudge.
Be very careful about both ordinary proofreading and technical accuracy. Don't skimp in either department. Best is to have a techie work in a team with the grammarian. And then have the techies work in teams, too. And then have a different grammarian go back over it and unobfuscate it. Simple words, short sentences wherever possible. NO unidentified TLA's or FLA's less than 10 years old.
Put the most important code in the book.
Keep code snippets short and highlight the point being illustrated with easy to see color.
Make the book lay flat. Comb binding is acceptable. Spiral is acceptable. Perfect binding is acceptable Cheap glue jobs don't cut it. I can't wrestle the book and type at the same time.
Use a font face that is EASY TO READ when showing code snippets. Don't make me guess if punctuation is a period/comma, colon/semi-colon, single-quote/back-tick/double-quote. Make certain I can tell the difference between {Il1i}, eh? I don't always have a loupe with me.
Do not rely on examples using advanced programs (such as Photoshop or Quark) to teach entry level subjects. If I see one more entry level book explaining how to use a $600 program to solve a design problem that HUNDREDS of free, shareware and open-source programs can solve, I think I am going to scream.
Make up your mind
You are going to charge me $40 and up. Last year I bought over $300 worth of tech books. Two of them get near-daily use. A couple others get occaisional use. The rest are shelf decoration. If you want your book read, don't skimp. If you want me to prefer your book on a topic over another publisher's offering, don't skimp. Do everything you can to make that book worth $40 or more. To me.
Good books for the clueless. (Score:2, Insightful)
A good example is O'Reilly's "Learning Python" by Lutz and Ascher. The text is good, but often gets off track with references to C, or assuming that the reader knows about object oriented programming, dragging down people new to OO coding and slowing the read. Keep the extra crap in obvious sidebars.
Also, please have the books looked over for errors and stupidity. A while back I picked up a book on Perl, in the interests of kindness I will not list the title. Many of the example Perl scripts found in the first chapters failed to execute properly, so I decided to check out the included CD which contained all the example code. Many filenames and directories on the CD included spaces; sort of moronic for a book intended for UNIX users (And yes, the examples on CD failed to execute properly, even with the supplied version of Perl that I compiled/installed.). This is not the only book I have seen like this.
As for paper/ebooks, offer the book online in PDF format at a discount, and include a copy of the book on CD-ROM with the paper copy. My favorite computer book of all time is "The UNIX System Administration Handbook." by Evi Nemeth and others. Unfortunately, it comes only in a paperback edition, and I had to start leaving my copy on the shelf above my desk because after falling in love with the book and hauling all over the place, it started falling apart. A heavy duty hardbound edition with a CDROM version supplied would have been such a better option.
Anyway, if you got this far, hope you enjoyed my $.02.
Dearth of *Entry Level* Books for Programming (Score:3, Insightful)
Two decades ago, computer user and programmer were pretty much synonmous. But today, things are different. Believe it or not, there are a lot newbies that are just now getting interested in software development after being computer users for quite a while. Looking for a book on Java programming that assumes no programming experience? You can probably find it, but it's not exactly easy.
Want a book to learn Mac OS X Cocoa programming? You better hope you have C++ or Java experience, otherwise you're simply out of luck. There are no entry-level Cocoa books. Same for WebObjects. Developers themselves aren't at all concerned about this, of course. They expect everyone to follow the same path they did.
Believe it or not, a lot of people do not want to read a *full* book before even cracking the book actually pertains to Mac OS X development. Additionally, not everyone is interested in become career software developers. They may just want to try it out as a hobby first. I hear from all sorts of people that just got Mac OS X and want to learn how to use those free development tools that Apple provides. There's no well-suited path for that. Why should you have to learn all sorts of general C theory when all you want to do is learn the stuff that pertains to Mac OS X development? This turns potential developers off, which is sad.
The Visual QuickStart series by Peachpit Press [peachpit.com] is the only series that I have seen that is consistently good at addressing this problem. As far as I can tell, the series is rapidly expanding.
Here's a crazy idea: how about a book that teaches you Java or C with the intention of writing Mac OS X apps? How about a Java servlet book that doesn't assume you're transitioning from C++? How about making this books readible and more practical than theory-oriented?
Lower the barrier to entry.
- Scott
Re:No no no - Dating with SQL (Score:3, Insightful)
Books for intelligent amateurs (Score:2, Insightful)
Why not publish the ultimate recursive manual, "How to Write Documentation (That is Interesting to Read, Informative and Does Not Insult Intelligence)"?
"Use Your Old Hardware" - what you really can do with old pc's, macs, routers, switches, printers etc. With honest advice of when to give it to a deserving cause or just chuck it. Lots of DLable binaries on the website for this book.
And ebooks? Wait till the hardware is
Paradigms of the Computing World... (Score:2, Insightful)
HIGHLY RECOMMENDED BOOKS TO FOLLOW:
--Rebel Code: by Glen Moody [Story of GNU]
--Any book by W. Richard Stevens is a must have!!!
--The Art of Computer Programming: by Donald Knuth
The book Rebel Code teaches me about how Richard Stallman started the whole GNU Project. This greatly inspires me and gives me ideas for my own project. Not to mention that it also talks about how Andrew Tanenbaum wrote Minix OS and a book that came along with it called Operating Systems: Design and Implementation,and how Linus Torvalds ended up taking a class using Minix, which greatly influenced his creation of Linux.
Donald Knuth's book (enough said), goes very far in depth in algorithm efficiency and after reading that, you'll be writing your own STL classes, and creating new data structures yet to be invented.
Richard Stevens writes the best Unix books I've ever seen in my life, I'm sure you know him.
UNIX Network Programming, Advanced Programming in the UNIX Environment, etc.
I recommend you take a look at the way these guys developed books.
A really good book on multi-layered architectures (Score:2, Insightful)
For the last ten years or so, I've rarely worked on a system that was monolithic. The typical modern project, in my world at least, looks like several classic client-server systems tangled together.
Some layers that we built in the current one:
While I don't expect any book to deal with our architecture, I would like a really solid book that encompasses the wit and wisdom of building this kind of thing, in a repeatable fashion. I'm thinking of something like the patterns model, but applied to the making science out of the art of knowing where the right place to put a function is. Considerations like elegance and efficiency, and so on.
Is it unrealistic to think of a book on this? Are there no general principles learned yet?
Reference - Both paper & electronic (Score:2, Insightful)
Complete Reference Books: I've got a great little C/C++ programmer's reference, but it doesn't tell me what include file I need to get the thing I just looked up. This hinders its usefulness greatly.
Complex examples: Simple examples can be good, but often a simple example leaves you with no clue how to implement the more complex real-world task before you.
Paper: I may have two monitors, but I still don't have enough screen real estate. Paper has a lot going for it.
Electronic: The value of a reference book increases by an order of magnitude if it is paper and electronic. But the electronic version can't have any copy protection. (That's DRM for the younger generation.) I need to be able to slice and dice the content and build a custom search & extract program. A copy protected ebook is about as useful to me as an x86 binary on an Apple ][.