"Why rely solely on a book? If so inclined I could probably contact a few reputable PERL devs online and get real feedback and samples."
Books are great and have their place, but they pale very quickly when compared to the possibilities the internet offers.
Not really. Imagine having to learn PERL. Bad enough.:)
Now imagine having the choice between a very well-written book about PERL and something like Usenet or email exchanges on the topic with PERL gurus. These are obviously not alternatives. But please do not underestimate the value of good, stuctured training material. Writing this stuff well is so difficult that most coders instinctively know they would fail trying, thus avoid writing that - or good documentation...
And yet more and more books (especially computer science related textbooks) are becoming easily and freely available online (sometimes legally, sometimes via rapidshare or torrents) for anyone who knows where to look...
Aha... Now explain why kicking over an author's rice bowl is a good thing. Some people are making aliving selling their stories, articles, books, photographs or music. If the business model they decide to use involves dead trees, it is THEIR decision. But I suppose it's also OK to steal from supermarkets.
Look at the Baen Free Library. That one is a generous idea - not a right.
Bradbury . . . says it is . . . a story about how television destroys interest in reading literature.
So? He is definitely right, if you look at the majority of people in the industrialized world. Most twens (is that word still in use?) most likely read less than their parents did. TV in it's current form is information junk food.
I would expect a science fiction writer to have a decent enough understanding that the information is the important thing, not the medium in which it is stored.
Nope... Not all SF writers write technical SF.
Books are heavy, clumsy things. They say the Library of Congress is about ten terabytes of information. That could be stored in a briefcase, instead of taking up over 500 miles of shelf space, in three separate buildings.
Great. If people like you ever have anything to say regarding the LoC, I'll turn up with 100TB of hard disk space and trade it for as many books and manuscripts as I can carry. Let's see. A Gutenberg Bible in reasonable condition. A rought draft of something called the Declaration of Independence. And some other nice stuff worth having. Of course, I will provide high quality scans of everything I take with me - because, according to you, the medium is irrelevant.:)
In a way that culture is what the clinic takes off the tip of your penis if you slept around with the wrong people and have this weird, burning sensation? True.
The problem with modern CS students is that they do not understand that, for some people, a computer is not much more than a BIG pocket calculator. A modern high energy physics experinemnt can create a staggering amount of VERY simple data (so serial file access might be all that's needed) - and we are not even talking Monte Carlo.
Who in physics would need most of the concepts of non-FORTRAN programming languages?
(Besides, people succeeding in physics will easily be intelligent enough to pick up some other language when there is a need. Remember that a lot of the INTERESTING developments in CS came from someone with a background in physics...)
Err...
Prime time TV in China beats both, bandwidth-wise.
But what do I care? My wine emulator is sold by a company named Microsoft - and they do a brilliant job running Windows software.
And with discussions like these, you wonder why Linux on Desktop isn't as popular as you'd want to?
Being (or at least appearing to be) sociable is a management skill.
Running a major software project, open source or not, is (at a certain level) more about people than about code - and where a lot of projects do worse than they probably could.
Rememeber the Cathedral model of software development? Utterly failed, because the person behind it was (and is) a bit on the egocentric side. (I won't go so far to invoke a certain law connected to a certain political movement in WWII Germany:) ). Brilliant mind, just not anything I'd call management material.
Linux IS a success because Linus knows about people AND code.
But if you disagree, let your daughter marry Hans Reiser when he comes back. Just make sure she doesn't disagree with him...
Want to be a code monkey when you are 50?
Cram as much formal education into the part of life where it is easiest.
You'll have to study all your life. In addition to your day job. So get a head start, get something that looks good on a job application and will pay for itself. Then concentrate on stuff you WANT to learn or NEED to learn for the rest of your life - because a lot of the stuff you are just learning will be utterly meaningless in 20 years time.
So... While work experience might be OK and most things you are going to learn will be obsolete rather quickly, a good choice of topics will allow you to have a better foundation later on.
That means theory and useless-looking stuff. OSI layers instead of HTTP implementation details. Knuth instead of C++ for Dummies. And Knuth is still very much a practical guy.:)
You are unlikely to spend much time on theory after starting to work. So concentrate on it now, while you can.
This revived some slightly old memories.
I remember a talk by the local FORTRAN compiler guru in the mid-70s.
After talking about some intricacies of the IBM FORTRAN H compiler, he gave some examples of the compiler's abilities.
Summarizing it with:
Don't try too hard to optimize. Leave it to the compiler. It usually knows what it is doing.
And that sums it up rather nicely.
I'd rather work on code written by someone else who concentrated on writing readable code than on code written by someone trying to be clever.
(Note to people born after around 1980: Yes, we too believed it would be cool to write cool, complex code, with the odd assembler routine thrown in for good measure (which, btw. didn't really save much time), badly documented and demonstrating our superiour coding abilities. Looking back, we were idiots who should have been fired. Don't repeat our mistakes, OK?)
The difference between engineering and math is that engineering focusses on real-world problems and the bit of math required to solve them. Because there are too many other things to learn - and engineering centers on practical applications. A lot of math appears to be intellectual masturbation unless you have proper training - and lacks any trivial practical application. Until suddenly, someone might find use for it to describe something in physics. Or not. A lot of the riddles you solve as a geek are applied math. Think topology. Why would an engineer have to bother with abstract algebra? Or why should he be able to derive about everything in math from aimple set of axioms?:)
Engineers don't know math. Much.
(Disclaimer: Here speaks a CS guy who used to date a lovely Math PHD. And I thought MY mind was warped...)
Now... As a former COBOL programmer - this is not just switching one outdated language to something new. For one, COBOL is actually excellent when it comes to doign things it was meant to do, which is commercial software. Need a choice of storing numbers in characters, BCD or float? Reasonable string handling (UNSTRING comes to mind) and a gazillion of other useful features? COBOL is somewhat limited, but very powerful for a certain, limited set of applications. PL/I can do about everything COBOL can - and better, but for some reason, it never became THAT popular.
(Now if it COBOL only had an ALTER... TO PROCEED TO... DEPENDING ON... )
I doubt that you can translate it automatically into somewhat readable code in whatever language of choice you might have in mind. That, plus the fact that a lot of COBOL code in use today has been working (and been improved) for more years than Linus Torvalds spent on this planet so far, makes it difficult to replace. (Not to mention the side effects. Imagine rewriting - from scratch - a complex insurance application which comes with CICS (no problem, runs under loads of platforms nowadays), VSAM (you don't want to know) and other file access methods and tons of JCL written for a JES3 environment. Trust me - Unix is trivial by comparison. And you need to understand both to migrate the stuff.
The thing is - most mainframe custoemrs kept up with hardware changes. Old code written on a 370 will still run (as binary) on modern mainframe hardware, which will, of course, run circles around the usual unix box and floss it's teeth with ripped-off heads of web designers.
Oh, it is a toy - nice to play with, but nowadays, a bit outdated. Imagine a steam engine.
People used them a lot, nowadays, it is somewhat a geek toy.
Hey, I *like* telepathic sex! If only my partners were aware of it....
They are. You most likely just suck at it :)
"Why rely solely on a book? If so inclined I could probably contact a few reputable PERL devs online and get real feedback and samples."
Books are great and have their place, but they pale very quickly when compared to the possibilities the internet offers.
Not really. Imagine having to learn PERL. Bad enough. :)
Now imagine having the choice between a very well-written book about PERL and something like Usenet or email exchanges on the topic with PERL gurus. These are obviously not alternatives. But please do not underestimate the value of good, stuctured training material. Writing this stuff well is so difficult that most coders instinctively know they would fail trying, thus avoid writing that - or good documentation...
And yet more and more books (especially computer science related textbooks) are becoming easily and freely available online (sometimes legally, sometimes via rapidshare or torrents) for anyone who knows where to look...
Aha... Now explain why kicking over an author's rice bowl is a good thing. Some people are making aliving selling their stories, articles, books, photographs or music. If the business model they decide to use involves dead trees, it is THEIR decision. But I suppose it's also OK to steal from supermarkets.
Look at the Baen Free Library. That one is a generous idea - not a right.
Just because you can't seem to find your way out of the trashy romance novels, it doesn't mean that a particular "library" is complete trash.
Ah. I think they call it the "blogosphere".
Bradbury . . . says it is . . . a story about how television destroys interest in reading literature.
So? He is definitely right, if you look at the majority of people in the industrialized world. Most twens (is that word still in use?) most likely read less than their parents did.
TV in it's current form is information junk food.
I would expect a science fiction writer to have a decent enough understanding that the information is the important thing, not the medium in which it is stored.
Nope... Not all SF writers write technical SF.
Books are heavy, clumsy things. They say the Library of Congress is about ten terabytes of information. That could be stored in a briefcase, instead of taking up over 500 miles of shelf space, in three separate buildings.
Great. If people like you ever have anything to say regarding the LoC, I'll turn up with 100TB of hard disk space and trade it for as many books and manuscripts as I can carry. Let's see. A Gutenberg Bible in reasonable condition. A rought draft of something called the Declaration of Independence. And some other nice stuff worth having. Of course, I will provide high quality scans of everything I take with me - because, according to you, the medium is irrelevant. :)
He sees the fluff that people waste their time on...
That is indeed the point. If you look at what most people seem to look at, it is difficult to find value in that.
Hmm...
Not really. SF isn't all about Rockets, Robots and Rayguns.
The bible is online, too.
So are tons of other religious works.
Due to better filtering, the actual ratio might be closer to 10:1 - and I am not even including this post :)
In a way that culture is what the clinic takes off the tip of your penis if you slept around with the wrong people and have this weird, burning sensation? True.
The problem with modern CS students is that they do not understand that, for some people, a computer is not much more than a BIG pocket calculator. A modern high energy physics experinemnt can create a staggering amount of VERY simple data (so serial file access might be all that's needed) - and we are not even talking Monte Carlo. Who in physics would need most of the concepts of non-FORTRAN programming languages? (Besides, people succeeding in physics will easily be intelligent enough to pick up some other language when there is a need. Remember that a lot of the INTERESTING developments in CS came from someone with a background in physics...)
Almost everything you need ready-made.
http://diydrones.com/profiles/blog/show?id=705844%3ABlogPost%3A44814
Err...
Prime time TV in China beats both, bandwidth-wise.
But what do I care? My wine emulator is sold by a company named Microsoft - and they do a brilliant job running Windows software.
And with discussions like these, you wonder why Linux on Desktop isn't as popular as you'd want to?
Running a major software project, open source or not, is (at a certain level) more about people than about code - and where a lot of projects do worse than they probably could.
Rememeber the Cathedral model of software development? Utterly failed, because the person behind it was (and is) a bit on the egocentric side. (I won't go so far to invoke a certain law connected to a certain political movement in WWII Germany :) ). Brilliant mind, just not anything I'd call management material.
Linux IS a success because Linus knows about people AND code.
But if you disagree, let your daughter marry Hans Reiser when he comes back. Just make sure she doesn't disagree with him...
Cram as much formal education into the part of life where it is easiest.
You'll have to study all your life. In addition to your day job. So get a head start, get something that looks good on a job application and will pay for itself. Then concentrate on stuff you WANT to learn or NEED to learn for the rest of your life - because a lot of the stuff you are just learning will be utterly meaningless in 20 years time.
So... While work experience might be OK and most things you are going to learn will be obsolete rather quickly, a good choice of topics will allow you to have a better foundation later on.
That means theory and useless-looking stuff. OSI layers instead of HTTP implementation details. Knuth instead of C++ for Dummies. And Knuth is still very much a practical guy. :)
You are unlikely to spend much time on theory after starting to work. So concentrate on it now, while you can.
http://www.nasa.gov/topics/moonmars/features/LOIRP/index.html http://www.nasa.gov/topics/moonmars/features/LOIRP/loirp-gallery-index.html
This revived some slightly old memories.
I remember a talk by the local FORTRAN compiler guru in the mid-70s.
After talking about some intricacies of the IBM FORTRAN H compiler, he gave some examples of the compiler's abilities. Summarizing it with: Don't try too hard to optimize. Leave it to the compiler. It usually knows what it is doing.
And that sums it up rather nicely.
I'd rather work on code written by someone else who concentrated on writing readable code than on code written by someone trying to be clever.
(Note to people born after around 1980: Yes, we too believed it would be cool to write cool, complex code, with the odd assembler routine thrown in for good measure (which, btw. didn't really save much time), badly documented and demonstrating our superiour coding abilities. Looking back, we were idiots who should have been fired. Don't repeat our mistakes, OK?)
Nice one :)
Now... If floating ice melts, how will this affect the water level? :)
(No liberal arts majors, please...)
The difference between engineering and math is that engineering focusses on real-world problems and the bit of math required to solve them. Because there are too many other things to learn - and engineering centers on practical applications. A lot of math appears to be intellectual masturbation unless you have proper training - and lacks any trivial practical application. Until suddenly, someone might find use for it to describe something in physics. Or not. A lot of the riddles you solve as a geek are applied math. Think topology. :)
Why would an engineer have to bother with abstract algebra? Or why should he be able to derive about everything in math from aimple set of axioms?
Engineers don't know math. Much.
(Disclaimer: Here speaks a CS guy who used to date a lovely Math PHD. And I thought MY mind was warped...)
I second that recommendation.
They are the best set of general physics books you will fond - even if they are decades old.
(Mechanics are easy? Yes, until you reach friction, which isn't really understood.)
You'll have to like math, though. :)
Now... As a former COBOL programmer - this is not just switching one outdated language to something new. For one, COBOL is actually excellent when it comes to doign things it was meant to do, which is commercial software. Need a choice of storing numbers in characters, BCD or float? Reasonable string handling (UNSTRING comes to mind) and a gazillion of other useful features? COBOL is somewhat limited, but very powerful for a certain, limited set of applications. PL/I can do about everything COBOL can - and better, but for some reason, it never became THAT popular.
(Now if it COBOL only had an ALTER ... TO PROCEED TO ... DEPENDING ON ... )
I doubt that you can translate it automatically into somewhat readable code in whatever language of choice you might have in mind. That, plus the fact that a lot of COBOL code in use today has been working (and been improved) for more years than Linus Torvalds spent on this planet so far, makes it difficult to replace. (Not to mention the side effects. Imagine rewriting - from scratch - a complex insurance application which comes with CICS (no problem, runs under loads of platforms nowadays), VSAM (you don't want to know) and other file access methods and tons of JCL written for a JES3 environment. Trust me - Unix is trivial by comparison. And you need to understand both to migrate the stuff.
The thing is - most mainframe custoemrs kept up with hardware changes. Old code written on a 370 will still run (as binary) on modern mainframe hardware, which will, of course, run circles around the usual unix box and floss it's teeth with ripped-off heads of web designers.
Oh, it is a toy - nice to play with, but nowadays, a bit outdated. Imagine a steam engine. People used them a lot, nowadays, it is somewhat a geek toy.
*shrug* There might be some people squeaking around, but Smalltalk is probably less popular than COBOL. Like Latin, a language way past it's prime.