Domain: oreilly.com
Stories and comments across the archive that link to oreilly.com.
Comments · 2,454
-
Linux books
My first Linux book was Linux Unleashed, 1st edition, published by Sams Publishing. This book included Slackware with it. I'm afraid to think what verion, as this book is (c) 1995. It was good for a start. It's been read, borrowed, and stolen over the years. Hopefully it has a good home now.
I still highly recommend Slackware for a distribution. It's what we use on all our servers, and my workstations (Home, Work, and Laptop)
I bought a co-worker Linux System Administration: A User's Guide by Marcel Gagne. Published by Addison Wesley. Flipping through it, this seems like a very good book. It seems to be working out. He's coming to me with very intelligent questions after reading chapters, rather than "What do I do at the prompt".
After the Unleashed book, I personally got into the O'Reilly books. If you do this, go to the store with the company credit card, it'll be expensive. Oddly enough, most bosses are ok with paying for books, even when they're being tight with equipment. You can't get a new $5 CPU fan, but you can spend $500 on books. Hmmmm.. Well, buy more books. :) Borders and Barnes & Noble frequently have sales on previous edition books. If you flip through both, sometimes you'll see there were only very subtle changes, or chapters which aren't important to you. For a $40 price difference, it's worth getting the older one. :)
O'Reilly Essential Systems Administration
Learning
the Unix Operating System (got it for my girlfriend, so she'd understand what I was doing all night)
vi Pocket Reference. It seems none of my coworkers could use vi before I got to this office. Now they're all using it. [esc][esc]:wq!
Programming Perl. If you're going to play with Unix, you should learn Perl.
Then you should read up on what you're working with. If you're networking or on the Internet, TCP/IP is good to know.
TCP/IP Network Administration
DNS and BIND very definately, unless you want to be clueless about what happens between typing in "yahoo.com" and it coming up in your browser. Having a good understanding there definately helps you debug problems.
Sendmail This is the perfect book to spin your head, and leave you with a headache for months. But it's the topic, not the book, that's so complicated. If it didn't do absolutely everything, I'm sure it would be simpler to use.
O'Reilly has a lot of great books.
"Learning" books are for beginners.
"Nutshell" books are usually to help you figure out something if you don't really know it.
The rest of the books have various degrees of learning to them. On my desk at work, for O'Reilly books, I have 3 different PERL books, the JavaScript book, and a few others that I reference on a regular basis.
I recommend going to book stores, and flipping through everything they have (restock it to the proper places). See what your comprehension level is. If you have no clue what they're talking about, you need an easier book. If you almost understand, buy it, read it, and then share it with a friend (especially on the company expense account! hehe).
When you're ready to get out of the books, and into the real world, the most valuable reference you'll ever have is dejanews.com. If you don't know an answer, search it there. Probably someone in the last 20 years has already asked it. It's the quickest way to look smart and impress your friends, even if you're stupid. :)
Having the stack of O'Reilly books is always good though. I recently changed offices (same company), and while riding in the elevator, I was offered a job because I looked educated and had a big stack of O'Reilly books in my arms.. Little did she know that was only 1/3 of them. The rest were still in my car.. -
Linux books
My first Linux book was Linux Unleashed, 1st edition, published by Sams Publishing. This book included Slackware with it. I'm afraid to think what verion, as this book is (c) 1995. It was good for a start. It's been read, borrowed, and stolen over the years. Hopefully it has a good home now.
I still highly recommend Slackware for a distribution. It's what we use on all our servers, and my workstations (Home, Work, and Laptop)
I bought a co-worker Linux System Administration: A User's Guide by Marcel Gagne. Published by Addison Wesley. Flipping through it, this seems like a very good book. It seems to be working out. He's coming to me with very intelligent questions after reading chapters, rather than "What do I do at the prompt".
After the Unleashed book, I personally got into the O'Reilly books. If you do this, go to the store with the company credit card, it'll be expensive. Oddly enough, most bosses are ok with paying for books, even when they're being tight with equipment. You can't get a new $5 CPU fan, but you can spend $500 on books. Hmmmm.. Well, buy more books. :) Borders and Barnes & Noble frequently have sales on previous edition books. If you flip through both, sometimes you'll see there were only very subtle changes, or chapters which aren't important to you. For a $40 price difference, it's worth getting the older one. :)
O'Reilly Essential Systems Administration
Learning
the Unix Operating System (got it for my girlfriend, so she'd understand what I was doing all night)
vi Pocket Reference. It seems none of my coworkers could use vi before I got to this office. Now they're all using it. [esc][esc]:wq!
Programming Perl. If you're going to play with Unix, you should learn Perl.
Then you should read up on what you're working with. If you're networking or on the Internet, TCP/IP is good to know.
TCP/IP Network Administration
DNS and BIND very definately, unless you want to be clueless about what happens between typing in "yahoo.com" and it coming up in your browser. Having a good understanding there definately helps you debug problems.
Sendmail This is the perfect book to spin your head, and leave you with a headache for months. But it's the topic, not the book, that's so complicated. If it didn't do absolutely everything, I'm sure it would be simpler to use.
O'Reilly has a lot of great books.
"Learning" books are for beginners.
"Nutshell" books are usually to help you figure out something if you don't really know it.
The rest of the books have various degrees of learning to them. On my desk at work, for O'Reilly books, I have 3 different PERL books, the JavaScript book, and a few others that I reference on a regular basis.
I recommend going to book stores, and flipping through everything they have (restock it to the proper places). See what your comprehension level is. If you have no clue what they're talking about, you need an easier book. If you almost understand, buy it, read it, and then share it with a friend (especially on the company expense account! hehe).
When you're ready to get out of the books, and into the real world, the most valuable reference you'll ever have is dejanews.com. If you don't know an answer, search it there. Probably someone in the last 20 years has already asked it. It's the quickest way to look smart and impress your friends, even if you're stupid. :)
Having the stack of O'Reilly books is always good though. I recently changed offices (same company), and while riding in the elevator, I was offered a job because I looked educated and had a big stack of O'Reilly books in my arms.. Little did she know that was only 1/3 of them. The rest were still in my car.. -
Linux books
My first Linux book was Linux Unleashed, 1st edition, published by Sams Publishing. This book included Slackware with it. I'm afraid to think what verion, as this book is (c) 1995. It was good for a start. It's been read, borrowed, and stolen over the years. Hopefully it has a good home now.
I still highly recommend Slackware for a distribution. It's what we use on all our servers, and my workstations (Home, Work, and Laptop)
I bought a co-worker Linux System Administration: A User's Guide by Marcel Gagne. Published by Addison Wesley. Flipping through it, this seems like a very good book. It seems to be working out. He's coming to me with very intelligent questions after reading chapters, rather than "What do I do at the prompt".
After the Unleashed book, I personally got into the O'Reilly books. If you do this, go to the store with the company credit card, it'll be expensive. Oddly enough, most bosses are ok with paying for books, even when they're being tight with equipment. You can't get a new $5 CPU fan, but you can spend $500 on books. Hmmmm.. Well, buy more books. :) Borders and Barnes & Noble frequently have sales on previous edition books. If you flip through both, sometimes you'll see there were only very subtle changes, or chapters which aren't important to you. For a $40 price difference, it's worth getting the older one. :)
O'Reilly Essential Systems Administration
Learning
the Unix Operating System (got it for my girlfriend, so she'd understand what I was doing all night)
vi Pocket Reference. It seems none of my coworkers could use vi before I got to this office. Now they're all using it. [esc][esc]:wq!
Programming Perl. If you're going to play with Unix, you should learn Perl.
Then you should read up on what you're working with. If you're networking or on the Internet, TCP/IP is good to know.
TCP/IP Network Administration
DNS and BIND very definately, unless you want to be clueless about what happens between typing in "yahoo.com" and it coming up in your browser. Having a good understanding there definately helps you debug problems.
Sendmail This is the perfect book to spin your head, and leave you with a headache for months. But it's the topic, not the book, that's so complicated. If it didn't do absolutely everything, I'm sure it would be simpler to use.
O'Reilly has a lot of great books.
"Learning" books are for beginners.
"Nutshell" books are usually to help you figure out something if you don't really know it.
The rest of the books have various degrees of learning to them. On my desk at work, for O'Reilly books, I have 3 different PERL books, the JavaScript book, and a few others that I reference on a regular basis.
I recommend going to book stores, and flipping through everything they have (restock it to the proper places). See what your comprehension level is. If you have no clue what they're talking about, you need an easier book. If you almost understand, buy it, read it, and then share it with a friend (especially on the company expense account! hehe).
When you're ready to get out of the books, and into the real world, the most valuable reference you'll ever have is dejanews.com. If you don't know an answer, search it there. Probably someone in the last 20 years has already asked it. It's the quickest way to look smart and impress your friends, even if you're stupid. :)
Having the stack of O'Reilly books is always good though. I recently changed offices (same company), and while riding in the elevator, I was offered a job because I looked educated and had a big stack of O'Reilly books in my arms.. Little did she know that was only 1/3 of them. The rest were still in my car.. -
Linux books
My first Linux book was Linux Unleashed, 1st edition, published by Sams Publishing. This book included Slackware with it. I'm afraid to think what verion, as this book is (c) 1995. It was good for a start. It's been read, borrowed, and stolen over the years. Hopefully it has a good home now.
I still highly recommend Slackware for a distribution. It's what we use on all our servers, and my workstations (Home, Work, and Laptop)
I bought a co-worker Linux System Administration: A User's Guide by Marcel Gagne. Published by Addison Wesley. Flipping through it, this seems like a very good book. It seems to be working out. He's coming to me with very intelligent questions after reading chapters, rather than "What do I do at the prompt".
After the Unleashed book, I personally got into the O'Reilly books. If you do this, go to the store with the company credit card, it'll be expensive. Oddly enough, most bosses are ok with paying for books, even when they're being tight with equipment. You can't get a new $5 CPU fan, but you can spend $500 on books. Hmmmm.. Well, buy more books. :) Borders and Barnes & Noble frequently have sales on previous edition books. If you flip through both, sometimes you'll see there were only very subtle changes, or chapters which aren't important to you. For a $40 price difference, it's worth getting the older one. :)
O'Reilly Essential Systems Administration
Learning
the Unix Operating System (got it for my girlfriend, so she'd understand what I was doing all night)
vi Pocket Reference. It seems none of my coworkers could use vi before I got to this office. Now they're all using it. [esc][esc]:wq!
Programming Perl. If you're going to play with Unix, you should learn Perl.
Then you should read up on what you're working with. If you're networking or on the Internet, TCP/IP is good to know.
TCP/IP Network Administration
DNS and BIND very definately, unless you want to be clueless about what happens between typing in "yahoo.com" and it coming up in your browser. Having a good understanding there definately helps you debug problems.
Sendmail This is the perfect book to spin your head, and leave you with a headache for months. But it's the topic, not the book, that's so complicated. If it didn't do absolutely everything, I'm sure it would be simpler to use.
O'Reilly has a lot of great books.
"Learning" books are for beginners.
"Nutshell" books are usually to help you figure out something if you don't really know it.
The rest of the books have various degrees of learning to them. On my desk at work, for O'Reilly books, I have 3 different PERL books, the JavaScript book, and a few others that I reference on a regular basis.
I recommend going to book stores, and flipping through everything they have (restock it to the proper places). See what your comprehension level is. If you have no clue what they're talking about, you need an easier book. If you almost understand, buy it, read it, and then share it with a friend (especially on the company expense account! hehe).
When you're ready to get out of the books, and into the real world, the most valuable reference you'll ever have is dejanews.com. If you don't know an answer, search it there. Probably someone in the last 20 years has already asked it. It's the quickest way to look smart and impress your friends, even if you're stupid. :)
Having the stack of O'Reilly books is always good though. I recently changed offices (same company), and while riding in the elevator, I was offered a job because I looked educated and had a big stack of O'Reilly books in my arms.. Little did she know that was only 1/3 of them. The rest were still in my car.. -
Linux books
My first Linux book was Linux Unleashed, 1st edition, published by Sams Publishing. This book included Slackware with it. I'm afraid to think what verion, as this book is (c) 1995. It was good for a start. It's been read, borrowed, and stolen over the years. Hopefully it has a good home now.
I still highly recommend Slackware for a distribution. It's what we use on all our servers, and my workstations (Home, Work, and Laptop)
I bought a co-worker Linux System Administration: A User's Guide by Marcel Gagne. Published by Addison Wesley. Flipping through it, this seems like a very good book. It seems to be working out. He's coming to me with very intelligent questions after reading chapters, rather than "What do I do at the prompt".
After the Unleashed book, I personally got into the O'Reilly books. If you do this, go to the store with the company credit card, it'll be expensive. Oddly enough, most bosses are ok with paying for books, even when they're being tight with equipment. You can't get a new $5 CPU fan, but you can spend $500 on books. Hmmmm.. Well, buy more books. :) Borders and Barnes & Noble frequently have sales on previous edition books. If you flip through both, sometimes you'll see there were only very subtle changes, or chapters which aren't important to you. For a $40 price difference, it's worth getting the older one. :)
O'Reilly Essential Systems Administration
Learning
the Unix Operating System (got it for my girlfriend, so she'd understand what I was doing all night)
vi Pocket Reference. It seems none of my coworkers could use vi before I got to this office. Now they're all using it. [esc][esc]:wq!
Programming Perl. If you're going to play with Unix, you should learn Perl.
Then you should read up on what you're working with. If you're networking or on the Internet, TCP/IP is good to know.
TCP/IP Network Administration
DNS and BIND very definately, unless you want to be clueless about what happens between typing in "yahoo.com" and it coming up in your browser. Having a good understanding there definately helps you debug problems.
Sendmail This is the perfect book to spin your head, and leave you with a headache for months. But it's the topic, not the book, that's so complicated. If it didn't do absolutely everything, I'm sure it would be simpler to use.
O'Reilly has a lot of great books.
"Learning" books are for beginners.
"Nutshell" books are usually to help you figure out something if you don't really know it.
The rest of the books have various degrees of learning to them. On my desk at work, for O'Reilly books, I have 3 different PERL books, the JavaScript book, and a few others that I reference on a regular basis.
I recommend going to book stores, and flipping through everything they have (restock it to the proper places). See what your comprehension level is. If you have no clue what they're talking about, you need an easier book. If you almost understand, buy it, read it, and then share it with a friend (especially on the company expense account! hehe).
When you're ready to get out of the books, and into the real world, the most valuable reference you'll ever have is dejanews.com. If you don't know an answer, search it there. Probably someone in the last 20 years has already asked it. It's the quickest way to look smart and impress your friends, even if you're stupid. :)
Having the stack of O'Reilly books is always good though. I recently changed offices (same company), and while riding in the elevator, I was offered a job because I looked educated and had a big stack of O'Reilly books in my arms.. Little did she know that was only 1/3 of them. The rest were still in my car.. -
Linux books
My first Linux book was Linux Unleashed, 1st edition, published by Sams Publishing. This book included Slackware with it. I'm afraid to think what verion, as this book is (c) 1995. It was good for a start. It's been read, borrowed, and stolen over the years. Hopefully it has a good home now.
I still highly recommend Slackware for a distribution. It's what we use on all our servers, and my workstations (Home, Work, and Laptop)
I bought a co-worker Linux System Administration: A User's Guide by Marcel Gagne. Published by Addison Wesley. Flipping through it, this seems like a very good book. It seems to be working out. He's coming to me with very intelligent questions after reading chapters, rather than "What do I do at the prompt".
After the Unleashed book, I personally got into the O'Reilly books. If you do this, go to the store with the company credit card, it'll be expensive. Oddly enough, most bosses are ok with paying for books, even when they're being tight with equipment. You can't get a new $5 CPU fan, but you can spend $500 on books. Hmmmm.. Well, buy more books. :) Borders and Barnes & Noble frequently have sales on previous edition books. If you flip through both, sometimes you'll see there were only very subtle changes, or chapters which aren't important to you. For a $40 price difference, it's worth getting the older one. :)
O'Reilly Essential Systems Administration
Learning
the Unix Operating System (got it for my girlfriend, so she'd understand what I was doing all night)
vi Pocket Reference. It seems none of my coworkers could use vi before I got to this office. Now they're all using it. [esc][esc]:wq!
Programming Perl. If you're going to play with Unix, you should learn Perl.
Then you should read up on what you're working with. If you're networking or on the Internet, TCP/IP is good to know.
TCP/IP Network Administration
DNS and BIND very definately, unless you want to be clueless about what happens between typing in "yahoo.com" and it coming up in your browser. Having a good understanding there definately helps you debug problems.
Sendmail This is the perfect book to spin your head, and leave you with a headache for months. But it's the topic, not the book, that's so complicated. If it didn't do absolutely everything, I'm sure it would be simpler to use.
O'Reilly has a lot of great books.
"Learning" books are for beginners.
"Nutshell" books are usually to help you figure out something if you don't really know it.
The rest of the books have various degrees of learning to them. On my desk at work, for O'Reilly books, I have 3 different PERL books, the JavaScript book, and a few others that I reference on a regular basis.
I recommend going to book stores, and flipping through everything they have (restock it to the proper places). See what your comprehension level is. If you have no clue what they're talking about, you need an easier book. If you almost understand, buy it, read it, and then share it with a friend (especially on the company expense account! hehe).
When you're ready to get out of the books, and into the real world, the most valuable reference you'll ever have is dejanews.com. If you don't know an answer, search it there. Probably someone in the last 20 years has already asked it. It's the quickest way to look smart and impress your friends, even if you're stupid. :)
Having the stack of O'Reilly books is always good though. I recently changed offices (same company), and while riding in the elevator, I was offered a job because I looked educated and had a big stack of O'Reilly books in my arms.. Little did she know that was only 1/3 of them. The rest were still in my car.. -
Linux books
My first Linux book was Linux Unleashed, 1st edition, published by Sams Publishing. This book included Slackware with it. I'm afraid to think what verion, as this book is (c) 1995. It was good for a start. It's been read, borrowed, and stolen over the years. Hopefully it has a good home now.
I still highly recommend Slackware for a distribution. It's what we use on all our servers, and my workstations (Home, Work, and Laptop)
I bought a co-worker Linux System Administration: A User's Guide by Marcel Gagne. Published by Addison Wesley. Flipping through it, this seems like a very good book. It seems to be working out. He's coming to me with very intelligent questions after reading chapters, rather than "What do I do at the prompt".
After the Unleashed book, I personally got into the O'Reilly books. If you do this, go to the store with the company credit card, it'll be expensive. Oddly enough, most bosses are ok with paying for books, even when they're being tight with equipment. You can't get a new $5 CPU fan, but you can spend $500 on books. Hmmmm.. Well, buy more books. :) Borders and Barnes & Noble frequently have sales on previous edition books. If you flip through both, sometimes you'll see there were only very subtle changes, or chapters which aren't important to you. For a $40 price difference, it's worth getting the older one. :)
O'Reilly Essential Systems Administration
Learning
the Unix Operating System (got it for my girlfriend, so she'd understand what I was doing all night)
vi Pocket Reference. It seems none of my coworkers could use vi before I got to this office. Now they're all using it. [esc][esc]:wq!
Programming Perl. If you're going to play with Unix, you should learn Perl.
Then you should read up on what you're working with. If you're networking or on the Internet, TCP/IP is good to know.
TCP/IP Network Administration
DNS and BIND very definately, unless you want to be clueless about what happens between typing in "yahoo.com" and it coming up in your browser. Having a good understanding there definately helps you debug problems.
Sendmail This is the perfect book to spin your head, and leave you with a headache for months. But it's the topic, not the book, that's so complicated. If it didn't do absolutely everything, I'm sure it would be simpler to use.
O'Reilly has a lot of great books.
"Learning" books are for beginners.
"Nutshell" books are usually to help you figure out something if you don't really know it.
The rest of the books have various degrees of learning to them. On my desk at work, for O'Reilly books, I have 3 different PERL books, the JavaScript book, and a few others that I reference on a regular basis.
I recommend going to book stores, and flipping through everything they have (restock it to the proper places). See what your comprehension level is. If you have no clue what they're talking about, you need an easier book. If you almost understand, buy it, read it, and then share it with a friend (especially on the company expense account! hehe).
When you're ready to get out of the books, and into the real world, the most valuable reference you'll ever have is dejanews.com. If you don't know an answer, search it there. Probably someone in the last 20 years has already asked it. It's the quickest way to look smart and impress your friends, even if you're stupid. :)
Having the stack of O'Reilly books is always good though. I recently changed offices (same company), and while riding in the elevator, I was offered a job because I looked educated and had a big stack of O'Reilly books in my arms.. Little did she know that was only 1/3 of them. The rest were still in my car.. -
Linux books
My first Linux book was Linux Unleashed, 1st edition, published by Sams Publishing. This book included Slackware with it. I'm afraid to think what verion, as this book is (c) 1995. It was good for a start. It's been read, borrowed, and stolen over the years. Hopefully it has a good home now.
I still highly recommend Slackware for a distribution. It's what we use on all our servers, and my workstations (Home, Work, and Laptop)
I bought a co-worker Linux System Administration: A User's Guide by Marcel Gagne. Published by Addison Wesley. Flipping through it, this seems like a very good book. It seems to be working out. He's coming to me with very intelligent questions after reading chapters, rather than "What do I do at the prompt".
After the Unleashed book, I personally got into the O'Reilly books. If you do this, go to the store with the company credit card, it'll be expensive. Oddly enough, most bosses are ok with paying for books, even when they're being tight with equipment. You can't get a new $5 CPU fan, but you can spend $500 on books. Hmmmm.. Well, buy more books. :) Borders and Barnes & Noble frequently have sales on previous edition books. If you flip through both, sometimes you'll see there were only very subtle changes, or chapters which aren't important to you. For a $40 price difference, it's worth getting the older one. :)
O'Reilly Essential Systems Administration
Learning
the Unix Operating System (got it for my girlfriend, so she'd understand what I was doing all night)
vi Pocket Reference. It seems none of my coworkers could use vi before I got to this office. Now they're all using it. [esc][esc]:wq!
Programming Perl. If you're going to play with Unix, you should learn Perl.
Then you should read up on what you're working with. If you're networking or on the Internet, TCP/IP is good to know.
TCP/IP Network Administration
DNS and BIND very definately, unless you want to be clueless about what happens between typing in "yahoo.com" and it coming up in your browser. Having a good understanding there definately helps you debug problems.
Sendmail This is the perfect book to spin your head, and leave you with a headache for months. But it's the topic, not the book, that's so complicated. If it didn't do absolutely everything, I'm sure it would be simpler to use.
O'Reilly has a lot of great books.
"Learning" books are for beginners.
"Nutshell" books are usually to help you figure out something if you don't really know it.
The rest of the books have various degrees of learning to them. On my desk at work, for O'Reilly books, I have 3 different PERL books, the JavaScript book, and a few others that I reference on a regular basis.
I recommend going to book stores, and flipping through everything they have (restock it to the proper places). See what your comprehension level is. If you have no clue what they're talking about, you need an easier book. If you almost understand, buy it, read it, and then share it with a friend (especially on the company expense account! hehe).
When you're ready to get out of the books, and into the real world, the most valuable reference you'll ever have is dejanews.com. If you don't know an answer, search it there. Probably someone in the last 20 years has already asked it. It's the quickest way to look smart and impress your friends, even if you're stupid. :)
Having the stack of O'Reilly books is always good though. I recently changed offices (same company), and while riding in the elevator, I was offered a job because I looked educated and had a big stack of O'Reilly books in my arms.. Little did she know that was only 1/3 of them. The rest were still in my car.. -
Re:Start with Rute!
Rute is an excellent step by step introduction and it also contains a reasonable level of detail for those of us who care. It is available for download, in a variety of formats, for free, from the link in the parent post. I believe you can also buy the book in dead-tree format.I also have been reading Running Linux (which others have linked to in earlier comments). This has very in-depth chapters describing things in detail. The detail might scare the average newbie away though
:).Also worth considering, though it's probably not for beginners, is UNIX Power Tools
. -
Re:Start with Rute!
Rute is an excellent step by step introduction and it also contains a reasonable level of detail for those of us who care. It is available for download, in a variety of formats, for free, from the link in the parent post. I believe you can also buy the book in dead-tree format.I also have been reading Running Linux (which others have linked to in earlier comments). This has very in-depth chapters describing things in detail. The detail might scare the average newbie away though
:).Also worth considering, though it's probably not for beginners, is UNIX Power Tools
. -
The title belies its true value
Aside from whatever Linux-specific books get recommended here, one of the best investments you can make in the transition out of rank UNIX-beginner status is "UNIX Power Tools" published by O'Reilly. Its title is really a misnomer as it's actually an excellent book that teaches you all the finer points (which are not really all that "fine" if you really want to make UNIX work for you) about using UNIX. You don't at all have to be an "advanced"/"power" user and in fact, I'd argue that the greatest benefit from reading can be derived by those less experienced with UNIX. If you want to *understand* what you're doing in a UNIX system, with information that most certainly applies to Linux, get/read a copy of this book.
-
My first Linux Book:Oreilly's Running Linux
This was the book I read before even touching a Linux terminal. It was an invaluable lesson in the ways of Linux and provides a nice gentle intro for new users (and by new, I mean new to Linux, not computing. A good deal of technical understanding is required to appreciate this book. Not for Grandma is what I'm trying to say...). The 4th Edition just came out so it's all up to date again, and I would reccomened it to anyone interested in, well, Running Linux. This book is much more useful to a new user than Linux in a Nutshell since it is a narrative guide to learning Linux, and not a reference book like Nutshell.
-
Running Linux
The fourth edition of Running Linux came out this month. Great for beginners.
-
Favorite book
Linux in a Nutshell, concise, to the point, reference manual for just getting stuff done.
-
Open source philosophy?!
From the What is TheOpenCD website:
"It also includes a selection of essays about Open Source philosophy, and links to other programs that might be of interest."
I'm sorry, but what is exactly open source philosophy? Open source is about technical and economical advantages. Free software is about philosophy. Please do not flame me for saying the obvious. When Eric Raymond took Debian Free Software Guidelines and published them as Open Source Definition in 1998 he did it exactly because he wanted free software without the strong philosophy associated with the "free software" term since at least the announcement of the GNU Project in 1983.
I think that TheOpenCD project should not talk about philosophy if they want to promote the open source movement. But if they think that the philosophy is important, then they should promote the free software movement and change their name to TheFreeCD. Because the philosophy is exactly the difference between free software and open source movements. If they talk about "open source philosophy" they are being against the main priciples of both movements.
TheOpenCD project people should read these books:
- The Cathedral and the Bazaar: Musings on Linux and Open Source by an Accidental Revolutionary by Eric S. Raymond (online version)
- Free as in Freedom: Richard Stallman's Crusade for Free Software by Sam Williams (online version)
- Free Software, Free Society: Selected Essays of Richard M. Stallman by Richard M. Stallman (GNU philosophy website, book CVS source)
Those books are not very long, but they provide enough background to let avoid using such unfortunate oxymorons like "open source philosophy." I strongly respect both free software and open source movements and I can not stay ignorant when people insult any of them, while the term "open source philosophy" insults both.
-
Open source philosophy?!
From the What is TheOpenCD website:
"It also includes a selection of essays about Open Source philosophy, and links to other programs that might be of interest."
I'm sorry, but what is exactly open source philosophy? Open source is about technical and economical advantages. Free software is about philosophy. Please do not flame me for saying the obvious. When Eric Raymond took Debian Free Software Guidelines and published them as Open Source Definition in 1998 he did it exactly because he wanted free software without the strong philosophy associated with the "free software" term since at least the announcement of the GNU Project in 1983.
I think that TheOpenCD project should not talk about philosophy if they want to promote the open source movement. But if they think that the philosophy is important, then they should promote the free software movement and change their name to TheFreeCD. Because the philosophy is exactly the difference between free software and open source movements. If they talk about "open source philosophy" they are being against the main priciples of both movements.
TheOpenCD project people should read these books:
- The Cathedral and the Bazaar: Musings on Linux and Open Source by an Accidental Revolutionary by Eric S. Raymond (online version)
- Free as in Freedom: Richard Stallman's Crusade for Free Software by Sam Williams (online version)
- Free Software, Free Society: Selected Essays of Richard M. Stallman by Richard M. Stallman (GNU philosophy website, book CVS source)
Those books are not very long, but they provide enough background to let avoid using such unfortunate oxymorons like "open source philosophy." I strongly respect both free software and open source movements and I can not stay ignorant when people insult any of them, while the term "open source philosophy" insults both.
-
Open source philosophy?!
From the What is TheOpenCD website:
"It also includes a selection of essays about Open Source philosophy, and links to other programs that might be of interest."
I'm sorry, but what is exactly open source philosophy? Open source is about technical and economical advantages. Free software is about philosophy. Please do not flame me for saying the obvious. When Eric Raymond took Debian Free Software Guidelines and published them as Open Source Definition in 1998 he did it exactly because he wanted free software without the strong philosophy associated with the "free software" term since at least the announcement of the GNU Project in 1983.
I think that TheOpenCD project should not talk about philosophy if they want to promote the open source movement. But if they think that the philosophy is important, then they should promote the free software movement and change their name to TheFreeCD. Because the philosophy is exactly the difference between free software and open source movements. If they talk about "open source philosophy" they are being against the main priciples of both movements.
TheOpenCD project people should read these books:
- The Cathedral and the Bazaar: Musings on Linux and Open Source by an Accidental Revolutionary by Eric S. Raymond (online version)
- Free as in Freedom: Richard Stallman's Crusade for Free Software by Sam Williams (online version)
- Free Software, Free Society: Selected Essays of Richard M. Stallman by Richard M. Stallman (GNU philosophy website, book CVS source)
Those books are not very long, but they provide enough background to let avoid using such unfortunate oxymorons like "open source philosophy." I strongly respect both free software and open source movements and I can not stay ignorant when people insult any of them, while the term "open source philosophy" insults both.
-
This book is a far better optimization guide...
I was disappointed with the depth of this article. I expected lots of little hints and tricks that I didn't know about but instead found most of the material was common sense stuff for anyone who had been around computers for any amount of time.
If you *really* want to get deep inside the guts of optimizing a Windows box I can think of no better guide than O'reilly's.
Optimizing Windows for Games, Graphics and Multimedia by David L. Farquhar
This book is currently out of print and is getting a little long in the tooth (published in 1999) but the internals for Windows doesn't really change that radically from a tuner's perspective. This book isn't a mere collection of little tricks but gives you a more fundamental understanding of Windows and how to trim the fat. The Amazon user rating system gives it 5 stars and rightfully so. To top it off you can pick up a used copy for about $8 or so at half.com among other places.
This is really a great book for anyone looking to get the most out of their Windows machine or just trying to understand the black box that is Windows. I used some of the tricks mentioned in this book on my wife's old p233 laptop w/96MBs RAM. Her Win98SE box has been going for almost two years now w/o any serious stability or performance problems. Granted, she's not a niddler and only does a certain set number of tasks on this laptop but I think that's pretty darn good for a Windows 98 box. -
Tim O'Reilly
Well, I'd expect nothing else from Tim O'Reilly
-
Re:And there was me...Of course you can. You can't have a blanket trademark on a word in all areas, but you can certainly trademark a word or association in an area of buisness. Computing for example.
For example, I recently wanted to use a Camel on a Perl website (not completed yet) and I had to consult O'Reilly, since they have a trademark on associating a camel with Perl. Other people can use camels for whaterver they want, it's just that they have a trademark when using it in conjunction with Perl. See the FAQ for more info.
-
Controlling use of free software
It's interesting that the Open Source Definition says specifically you can't refuse to sell software to a country or government because you don't like their policies. Quoting from a chapter in a book by Bruce Perens:
The license must not discriminate against any person or group of persons.
A license provided by the Regents of the University of California, Berkeley, prohibited an electronic design program from being used by the police of South Africa. While this was a laudable sentiment in the time of apartheid, it makes little sense today. Some people are still stuck with software that they acquired under that license, and their derived versions must carry the same restriction. Open Source licenses may not contain such provisions, no matter how laudable their intent.
No Discrimination Against Fields of Endeavor
The license must not restrict anyone from making use of the program in a specific field of endeavor. For example, it may not restrict the program from being used in a business, or from being used for genetic research.
Your software must be equally usable in an abortion clinic, or by an anti-abortion organization. These political arguments belong on the floor of Congress, not in software licenses. Some people find this lack of discrimination extremely offensive!
I wonder how people's reactions might be different if Amnesty were trying to put pressure on RedHat, the Free Software Foundation, authors of kernel IP filtering tools, or authoring of Web filtering tools. All of these can be used for censorship; in fact, Web filtering tools are designed for this specifically!
-
Thinking along these linesI agree that something like this is needed. I could not think of a good name but something like Community Source might work. I had even started writing a proposal for it with a view towards creating a site to extoll the idea....
The benefits of Open Source or Free software to its users are undeniable. If the software has a bug, or the software does not do something you want it to do, you can change it. There are many advantages, and they have been explained at length by various people. If you are going to be using software, you are definitely better off if you have access to the source code.
Trust
The fundamental difference between open source software and closed source software is the level of trust required. For a business to use closed source software, the level of trust required is enormous. It is not simply a question of whether the money spent purchasing the software is a good investment. The time invested using the software is far more significant. Almost inevitably your own business information becomes tied up in a format that is specific to the software you are using. In order to buy software from a closed source company, you have to take the following on trust:
- They have not left gaping security holes in the code.
- They will fix bugs in a timely manner.
- They will eventually add the features you want.
- They are not using your computing resources to do things which are not in your interest.
- They will not increase the price unreasonably once you depend on them.
- They will not go bust.
Business Models Having access to the source code makes good sense to the users. However the business case for the software vendor is far less convincing. In fact, the dangers of closed source from the user's perspective can be considered opportunities from the vendor's perspective.
The open source foundation proposes "4 ways to win" which is reproduced here: Four Ways To Win
Now for a higher-level, investor's point of view. There are at least four known business models for making money with open source:
- Support Sellers (otherwise known as "Give Away the Recipe, Open A Restaurant"): In this model, you (effectively) give away the software product, but sell distribution, branding, and after-sale service. This is what (for example) Red Hat does.
- Loss Leader: In this model, you give away open-source as a loss-leader and market positioner for closed software. This is what Netscape is doing.
- Widget Frosting : In this model, a hardware company (for which software is a necessary adjunct but strictly a cost rather than profit center) goes open-source in order to get better drivers and interface tools cheaper. Silicon Graphics, for example, supports and ships Samba.
- Accessorizing: Selling accessories books, compatible hardware, complete systems with open-source software pre-installed. It's easy to trivialize this (open-source T-shirts, coffee mugs, Linux penguin dolls) but at least the books and hardware underly some clear successes: O'Reilly Associates, SSC, and VA Research are among them.
In fact, the number of companies that have had success with any of these models is miniscule. This is hardly surprising, they are simply not very good business models for software companies.
Taking each in turn... Selling Support The better documented and more reliable the product is, the less support it needs. A business model where the more perfect your product, the less money you can make has got something fundamentally wrong with it. Loss Leader The very fact that this can be advanced as a viable business model for OpenSource shows desperation. What it comes down to is an admission that the best way to make money from software is by selling it. Widget Frosting This makes perfect sense if you are a hardware company, or when the software is a side issue. However, its no use at all for a business whose main product is software. Accessorizing Selling accessories is fine, but there is no pressing need to actually develop the software when one is in the accessories business.
There are of course other business models for Open Source. For instance, the one adopted by the Perl foundation and several others is begging. This is not a business model that many companies would find appealing though.
The basic problem is that for a business whose primary function is to make software, then the primary reward has to come from selling the software. We need a business model that actually works and we have one, it's called capitalism. It works like this: make something that people want and sell it to them. This model works for software too, and there is no reason why this model cannot work even when source code is available. Closed source vendors are relying on something a little closer to the business model of a heroin pusher. It starts off like capitalism, but there is the added feature that the user gets addicted and has to carry on buying the same thing even if he does not really want to. The more he uses the same vendor, the more reliant he is upon it.
The Solution Community software is software where the vendor can be paid a fair price for the software he creates, but where the buyer does not end up in a similar position to a junkie.
Community Source is software that guarantees the following:
- The right to see what the software is doing, ie access to unobfuscated source code.
- The right to add enhancements.
- The right to fix bugs.
- The right to sell his enhancements to other companies. This does not mean the right to the sell software without the original vendor receiving any money. The buyer still needs a license from the original vendor, but he does not have to rely on a single vendor for upgrades and enhancements.
- The right to buy enhanced versions from 3rd parties.
-
Quality, not quantity
I honestly will not buy a technical book in the 1,000+ page range, especially if the title:
- Includes the words "bible", "unleashed", or "secrets"
- Is entitled Learn x in y days/hours
Why? Because I know I'm unlikely digest the contents of 1000+ pages of text on one subject, if I manage to finish it. I also generally suspect large books of rehashing FAQs or other widely-available docs just to fill pages.
I don't consider myself an O'Reilly bigot, though I do lean towards their books since they tend to publish smaller, focused books. If a book is pure reference, I may consider buying it if it's 1000+ pages. Following are examples of some great books I've bought that I found very useful and readable due to their small size:
- Mastering Regular Expressions, 484 pages
- Linux Routing, 350 pages
- A Programmer's Introduction to PHP 4.0, 453 pages
The Internet already offers me an overwhelming, disorganized pile of information on any subject--and at least it's searchable via Google. Dead tree books have use when they're usable and organized, and I've found that generally translates into a smaller book.
-
minix is parent ? i doubt it!!Tanenbaum-Torvalds Debate
chances are that Tanenbaum wont let minix claim the parenthood of linux, nor would linus want it,,, -
Re:C# is a nice language
Very robust and well thought out language. Yes, Yes, I know blah blah blah M$ this and M$ that. But ya know what? I could give a flying crap about everyone's predisposition against Microsoft.
I'm not sure Microsoft should be thanked for the greatness of the C# language on it's own, which I'm sure most of us agree is the best thing of .NET -- not it's Windows-specific libraries.
Thank Anders Hejlsberg, chief architect of the C# language, instead.
While I'm on the topic...
Anders Hejlsberg interviewed about C# #1
Anders Hejlsberg interviewed about C# #2
Pretty interesting, where he discuss the design goals of C#, how satisfied he is with what C# became, etc. -
Curse you Copy and Paste! You win again!sorry, it's late where I am.
http://www.geekculture.com/geekculturestore/webst
o re/prints.html is what I meant to type.I was thinking of picking up one of the linux anatomy charts that my google search picked up, but apparently they're only available at trade shows.
-
some arguable classics
I keep a bunch of "classic" bookmarks around. Some are undisputed gems, others are, well, to my taste. Bytes being cheap here's a batch.
- Ars Technica: The PC enthusiast's resource
- AmbySoft Inc. White Papers: Scott Ambler's Online Writings
- windows.oreilly.com -- Deep Inside C#: An Interview with Microsoft Chief Architect Anders Hejlsberg
- TQ
- The Rise of ``Worse is Better''
- A Whirlwind Tutorial on Creating Really Teensy ELF Executables for Linux
- Theist Hall of Shame
- Internetworking Technology Overview
- Software Technology Review
Eric Weisstein's World of Mathematics - P.S.: More Than Just Words
- Welcome to the On-Line Encyclopedia of Integer Sequences
- John McCarthy
- Slashdot | Net Translations of Dead-Tree IT Classics
- advICE
- 0xdeadbeef archives
-
Nice to seeJust remember "Professional Apache Tomcat" is aimed purely at Sys-admins, not programmers. Programmers will learn everything they need to know about configuring Tomcat from the de-facto standard text of "Java Servlet Programming 2nd Edition", which every Servlet programmer will or should have in their reference collection. The documentation of Tomcat is good, but for Sys-admins, being able to just flick to a page and copy down an example is much quicker and easier than hunting around the online documentation. Not to mention the benefits of printed text over online text...especially if your notebook battery runs out when your trying to have a read in a secluded place. Tomcat is a complicated application, and the need for a good printed text is much needed. A lot of functionality of Tomcat can be long and tedious to setup (e.g. Authentication), and it's great to see a text addressing these issues.
All in all, good work Wrox!
-
scanrand and paratraceI don't quite follow what scanrand does that a normal SYN-based scanner does not except that it is broken into two parts so that potentially a different system could be used to receive the packets sent by the first system. Why would this be useful?
I guess he refers to embedding a code in each packet sent out to validate that only "real" packets are accepted by the receiver as "Inverse SYN Cookie". I don't understand why this is important, tho.
The "paratrace" program is quite interesting-- from the README:
paratrace
Paratrace traces the path between a client and a server, much like "traceroute", but with a major twist: Rather than iterate the TTLs of UDP, ICMP, or even TCP SYN packets, paratrace attaches itself to an existing, stateful-firewall-approved TCP flow, statelessly releasing as many TCP Keepalive messages as the software estimates the remote host is hop-distant. The resultant ICMP Time Exceeded replies are analyzed, with their original hop count "tattooed" in the IPID field copied into the returned packets by so many helpful routers. Through this process, paratrace can trace a route without modulating a single byte of TCP/Layer 4, and thus delivers fully valid (if occasionally redundant) segments at Layer 4 -- segments generated by another processe ntirely.
Nutshell summary: this uses an existing open TCP connection to run a traceroute through a firewall that would otherwise tell you to take off. I could certainly see this being useful.
Some good background reading on O'Reilly's Safari online books site if your TCP/IP internals are a bit rusty:
Internet Core Protocols: The Definitive Guide
TCP/IP Illustrated, Volume 1: The Protocols -
scanrand and paratraceI don't quite follow what scanrand does that a normal SYN-based scanner does not except that it is broken into two parts so that potentially a different system could be used to receive the packets sent by the first system. Why would this be useful?
I guess he refers to embedding a code in each packet sent out to validate that only "real" packets are accepted by the receiver as "Inverse SYN Cookie". I don't understand why this is important, tho.
The "paratrace" program is quite interesting-- from the README:
paratrace
Paratrace traces the path between a client and a server, much like "traceroute", but with a major twist: Rather than iterate the TTLs of UDP, ICMP, or even TCP SYN packets, paratrace attaches itself to an existing, stateful-firewall-approved TCP flow, statelessly releasing as many TCP Keepalive messages as the software estimates the remote host is hop-distant. The resultant ICMP Time Exceeded replies are analyzed, with their original hop count "tattooed" in the IPID field copied into the returned packets by so many helpful routers. Through this process, paratrace can trace a route without modulating a single byte of TCP/Layer 4, and thus delivers fully valid (if occasionally redundant) segments at Layer 4 -- segments generated by another processe ntirely.
Nutshell summary: this uses an existing open TCP connection to run a traceroute through a firewall that would otherwise tell you to take off. I could certainly see this being useful.
Some good background reading on O'Reilly's Safari online books site if your TCP/IP internals are a bit rusty:
Internet Core Protocols: The Definitive Guide
TCP/IP Illustrated, Volume 1: The Protocols -
Set Expires
-
If you want to build a business around Linux...
...first read "The Cathedral & the Bazaar: Musings on Linux and Open Source by an Accidental Revolutionary" by Eric S. Raymond. There's also an online version, but I urge you to buy a paper one, becuase it's really a great book, and you seem to be exactly the kind of person who needs to read it. (Of course, I'm talking to smelroy, the original poster of "How Do You Sell Linux Software?" question.)
-
If you want to build a business around Linux...
...first read "The Cathedral & the Bazaar: Musings on Linux and Open Source by an Accidental Revolutionary" by Eric S. Raymond. There's also an online version, but I urge you to buy a paper one, becuase it's really a great book, and you seem to be exactly the kind of person who needs to read it. (Of course, I'm talking to smelroy, the original poster of "How Do You Sell Linux Software?" question.)
-
Re:Meaningless drivel
Well, P3P has been on my radar since 1998, when I first read about it, I think this was the article. There are many things that you can blame M$ for, and I'm personally M$-free, but developers should be paying minimal attention.
-
So, Linus was rfight?From Open Sources: Voices from the Open Source Revolution
So at the time I started work on Linux in 1991, people assumed portability would come from a microkernel approach. You see, this was sort of the research darling at the time for computer scientists. However, I am a pragmatic person, and at the time I felt that microkernels (a) were experimental, (b) were obviously more complex than monolithic Kernels, and (c) executed notably slower than monolithic kernels. Speed matters a lot in a real-world operating system, and so a lot of the research dollars at the time were spent on examining optimization for microkernels to make it so they could run as fast as a normal kernel. The funny thing is if you actually read those papers, you find that, while the researchers were applying their optimizational tricks on a microkernel, in fact those same tricks could just as easily be applied to traditional kernels to accelerate their execution.
-
Re:Evil licensing..
Consider Amazon's one-click patent. Clearly their innovation was not obvious before they created it, but it's pretty obvious now.
"One click", is in my opinion, and I believe the vast majority of the software development community, representative of the exact type of software patent that should not be granted. I'll defer to Tim O'Reilly as to exactly why, as he composed a well-written piece offering a tidy explanation:
http://www.oreilly.com/ask_tim/amazon_patent.html -
are you sure?
pages 800 Fundamentals?
Mabye it should be called a Bible! SQL in a Nutshell is a book about fundamentals. -
good book on the subject...
-
Knowledge Assumptions and LDAP
To meta-quote Apple's guide to interact with Active Directory Services:
"Mac OS X uses the LDAP protocol, not Microsoft's proprietary Active Directory Services Interface (ADSI), to connect to Microsoft's Active Directory. This .. assumes that you have in-depth knowledge of Active Directory, especially the ways in which it need s to be configured to support standard LDAP schema definitions. Because the primary means of accessing Active Directory is ADSI, using LDAP as an alternative implies a thorough working understanding of the use and limitations of the LDAP support provided by Active Directory."
It sounds like someone didn't know Active Directory sufficiently, hence the pain. Otherwise, setting up things on the Mac side is very simple and strait-forward. O'Reilly has a great book " Mac OS X for UNIX Geeks " that goes into great detail on explaining not only what to do, but what is going on behind the scenes.
In this case, I would be Active Directory Services is making things the most difficult for you (and the fact that OS X uses LDAP instead of ADSI). -
From O'Reilly Press
Have you tried this?
-
Re:Other books?
speaking of which... has anyone subscribed to safari books online (or the o'reilly flavor of it)? what do you think of it? is it worth the cash? i like to have a book in hand, so i'm on the fence w/ this, however i like the fact that i have access to lots of books...
-
Other books?
What other books would people recommend for someone interested in network security (specifically using Open Source tools)? I'm currently reading Building Internet Firewalls which has been extremely helpful to my understanding of architecture issues. Any other jems I should be looking at?
Thanks. -
Mail size limits everywhere!As many other postings suggested, 2 megs is a widely deployed limit. Whenever you think about your own corperate mail size limit, keep in mind that even a 100 meg limit won't help you if the sites you send mail to have a way smaller limit. Since you never know what limit your mails will hit on the recipients' (or forwarding) servers, always keep it considerably small, or it will be rejected by the recipent's server... Better have it being rejected within your own network, so you don't waste precious bandwidth to the outer world...
I saw people sending out their whole mp3 collections in 30 meg-sized mails, I saw others suffer from 5 megs holiday pics in their mailboxes accessed by humble 56k modems and having to give them a POP3 primer on the phone to have them delete that stuff
... Yes, mail isn't ment for big files, and besides this orthodox opinion, it still isn't very practical to send huge files per mail.I would go for the send-links-in-mails-to-files-on-{web,file}servers idea, maybe protected through SSL, temporary passwords and having the files auto-deleted after three days or when having been fullydownloaded one or two times or whatever... (Proposing some minor access security for the files being made available, I wonder how many of these suits 'needing' unlimited mail sizes protect their files when sent by mail? I have never seen a single member of this demandish breed (being subject to this publication) being able to handle PGP/GnuPG/whatever, they often consider that as another evil trick by notorious sysadmins, since security measures hinder them in doing their work properly, just as mail size limits do... So much for ranting
:) -
Speeding toward meaninglessness
...when computers are so smart, cheap, and ubiquitous that they do many ordinary chores to help ordinary people. When things talk to things, human beings are set free to do work they find more appealing.
This is the same old nonsense that's been touted ever since the age of the washing machine. Considering the thousands of labor-saving devices we've acquired throughout the 20th century, by this logic we ought to be living lives of perfect leisure now. But this isn't what happens. In industrial societies, "labor-saving" devices don't. Work expands to fill the time available. When things think, I'm sure you and I will be freed from the tedious chores of cooking, driving, cleaning, and living. We can become machines ourselves, consumed with work until we burn out or die.
(More at Talbot's Netfuture, if you're interested.)
-
Re:haha!
(never mind that anyone who knows what + actually does there will tell you not to use it anyhow because it's slow...)
String foo = "This " + "is " + "a " + "segmented " + "string.";
and
String foo = "This is a segmented string.";
are equivalent in recent (the last few years) Java compilers. Like any good compiler technology, better choices are made over time. It's not a blanket performance dog.
It's also useful for simple cases like:
for (int i=0; i<5; ++i){
String foo = "String" + i; // Do something with it
}
The only real case where you should avoid it is where you are concatenating multiple variables whose contents can only been found at runtime:
Date d = new Date();
int x = 10;
String foo = "String" + x + ": " + d;
In cases like this, you should be using StringBuffers explicitly. Then again, this is common knowledge for Java programmers. Might I suggest the book Java Performance Tuning to help with your speed issues in Java. I consider it in the same league as Meyer's "Effective C++" series for avoiding common language pitfalls. It talks about common usage of containers, string manipulation, threads, and other nice tidbits.
As for numerics, use the right tool for the job. In many cases, it isn't Java. But then, neither is C.
I have often wondered why Java programmers can't seem to indent their code properly. I've even had trouble finding a good program to (re-)indent Java code. The main reason why I'd like to see programmers stick to 80 columns (or 120 even? please??) is because sometimes I might want to PRINT SOMETHING OUT.
Define "properly." C and C++ programmers are hardly a breed to talk. As for code beautifiers, try this one. I've never used it as I'm fine with my and my team's formatting habits, but it was the first link in a Google search for me. :-/
Try searching for 'Java "code beatifier"'. Worked for me.
As for printing, every printer I've used in the last ten years handled more than 80 characters per column. Mmmmm... Progress...
However I realize that when you have code that looks like
fooObject.barSomething( blahSomethingElse.stuffInstantiator(aVariable, bObject).toString()).bazMemberFunction()
it might be difficult to indent without introducing awkward spaces or unnecessary temporary variables, and you wouldn't want to disrupt the straightforward purity of the Java code itself!
Or it could be written as:
BlahSomethingElse bse = BlahSomethingElse.getInstance(aVariable, bObject);
BazMember bm = fooObject.barSomething(bse.toString());
bm.bazMem berFunction();
Is this what you were talking about? Or were you talking about the "getInstance()" static method commonly found in the Java API. It is of course for instantiation with singletons and the like just as it is in C++. I'm surprised this is new for you. In addition, what you see is what you get. It is actually harder to have object instantiations happen without noticing in Java than it is in C++. Incidentally, Java compilers make the same bytecode for this as for your example, and mine is (a) easier to read and (b) prints just fine in 80 columns. And no, I don't advocate 10,000 character lines. I also don't think the 80 column hard limit is necessary anymore either.
And I said nothing about enforcing specific editors or IDEs. Please point out where I did. All I said was that specifically console-based vi and emacs were at issue. Actually, now that I think of it, you can usually stretch console windows out. Or is 80 columns the one true width? Quick quiz: Why is 80 columns such a magic number? Answer: Because that's how many characters fix on the terminal screens and early line printer pattens. Move on.
And while we're on the topic of printing stuff out, you know all of those automatic documentation generators for C and C++? They weren't quite so popular until javadoc came out were they? Show me one for C and C++ that predates Java. Go on. I dare you.
For what it's worth, I have used gvim, vim, emacs, xemacs, moleskine, textpad, BBEdit, Visual Studio, JBuilder, and many others for development. I have even written Java in notepad although I don't recommend the experience to others. -
Embedding language X in Other Language Y
Though it really depends on what kind of system you're trying to make, generally speaking, embedding any serious amount of code into code in a different language often becomes very difficult to maintain. For quick things, it's usually the easiest. For moderately complex things, it's usually a push either way. But for any sizeable website, especially one that is going to be maintained over an extended period of time by multiple people, keeping as much -separate- as possible is a better approach.
Whether you use ASP, JSP, TT, Mason, .NET, or anything else, you likely will have a lot more going on than simply displaying some simple words, maybe wrapped in some kind of if statement or while loop. You'll need to do some kind of data lookup, perform some kind of transformation of that data, apply a few business rules, then, finally, spit it out in HTML. By far, it is easier to maintain code that isn't mixed with html; like wise, it's easier to maintain html that isn't mixed with code. Plus you then have the option of using that same code to manipulate the data differently, perhaps a GUI application, set of command line utilities, or under a different embedding technology. Decoupling presentation from logic is always a win as complexity increases.
Mason is terrific technology, though, and I'm very glad to see a book dedicated to it finally on the market. It is especially good to finally see some quality documentation on application frameworks that run under mod_perl; before now, there wasn't much besides the excellent wrapmod book and the equally excellent mod_perl cookbook. -
Here's what i did
I've got a Nokia 3410, which is MIDP1.0 compliant, and this book from O'Reilly which i found helpful. I'm using the J2ME toolkit to help package and test the apps I write (it has an emulator).
To get them onto my phone is a moderate pain. I have apache running on my machine, and added the following into mime.types:
text/vnd.sun.j2me.app-descriptor jad
application/java-archive jar
-
Re:ok so its not free but...In general O'Reilly has been one of the best publishers when it comes to free books. Their open book program has a lot of books in it that, unlike the Safari books, are free as in beer.
However, they also seem to be contributing to this disturbing trend of ``un-freeing'' free books. This book used to be free at the author's web page. If you click on the link, you'll find that it no longer exists. The book is no longer free, and you can only get the electronic version through Safari.
-
ok so its not free but...
I really love the safari service at oreilly. You can basically check out 5 books for 10$ per month. Pretty nice, because I really love oreilly books, but couldn't afford to buy hard copies of them all. Unfortunately, the bastard company that runs this has a pretty crappy pricing model (automatic billing, and when you cancel your account, it is inactive immediately rather than at the end of the billing period).
Still, I think this is a good compromise, in the same way that if artists sold their cd's online for a reasonabele amount of money, people would be less tempted to pirate their respective work. -
database applicationsI wonder if it's possible to create database clients similar to MS Access based on Mozilla/Gecko/XPCOM code. And if the answer is positive then why I can not find anything like that?
The book is good and interesting, but it reminds me another book, Programming Jabber: a lot of examples in the book, and no available examples in real life (besides Jabberd itself).