I would check out How To Program by Chris Pine. It's very much for people who have no programming experience.
Also, for a very different, novel and fun approach you should check out Why's Poignant Guide to Ruby . Did I mention it was fun? It's also a great intro for someone who has never programmed before.
An unmitigated lie, which has been addressed time and time again.
You're sure about that? Consider all stages of producing ethanol in this way, including: plowing fields, applying fertilizers (which are often extracted from petroleum), pesticides, herbicides. Harvesting, transportation, fermentation (which require some energy to warm the mash/yeast mixture) and then distillation. I've seen analyses which show corn-based ethanol to be a net energy loser. That's not even considering the fact that land which was previously used to produce food is now going into energy production (and the potential ecological effects of transferring more land into farming) nor does it consider the fact that corn is a very resource-hungry crop (requires lots of fertilization, depletes soils) compared to yields. Perhaps ethanol produced from other crops may yeild a net energy gain, but not likely from corn.
Also, to address something in my original post: I said that biodiesel doesn't make sense from an energy standpoint unless it's recycled vegetable oil. I meant from an ecological standpoint it doesn't make sense. The people who are going to McD's and loading up on used vegetable oil to make their own biodiesel are doing a good thing both ecologically and energy wise (it would have been thrown out in the past anyway), however, growing soybeans (or genetically modified palms in Indonesia) doesn't seem to make as much sense ecologically (and perhaps not even from the standpoint of energy yield). Of course the amount of recycled biodiesel is pretty limited which makes it great for the small operators in their garages, but even with all of the McD's we have in the US (and Burger Kings, etc) we still couldn't create enough biodiesel by recycling to cover more than a few percentage points of our transportation energy usage.
Enter the Biodiesel industry which aims to use 'virgin' oils (non-recyled, crops grown for the purpose of producing oils) to create Biodiesel. Now what's beginning to happen? In Indonesia there are forests being cut down to grow one type of genetically modified palm that can be used to produce biodiesel to be sold in Europe. In Brazil huge areas which were never farmed before are being plowed up to grow soybeans. Biodiesel, ironically enough, could be driving ecological devestation.
Biodiesel only works (from an energy yield standpoint) if it is recycled from used vegetable oils. Ethanol from corn is a net energy loser: takes more energy to create than you get back (not to mention that it also depletes soils that could have been used to grow food).
So does C++: they're called virtual function tables.
true. However, this sort of dynamic dispatch is limited to objects which are members of a certain inheritance hierarchy. In Obj-C, when a message is sent to an object the determination of whether or not that receiver can respond to the message is determined at runtime. It doesn't matter that the receiver is a member of a particular class which inherits from some class which defined some virtual functions.
With virtual functions in C++ it's sort of a cross between compiletime and runtime: The receiving object must be a member of a certain class hierarchy with the virtual functions defined in a parent somewhere. If you try to pass a class pointer of the wrong class (meaning it's not part of an exclusive hierarchy) then you'll get a compile time error. In Obj-C on the otherhand, we don't care what the class pedigree of an object is as long as it can respond to the message being sent (or to put it another way, as long as it's interface matches the expectations of the user).
Perhaps it could also be said that virtual functions are C++'s hack to allow limited dynamic dispatch. But it's not as dynamic as what is possible in Obj-C (or other very dynamic OO languages like Smalltalk and Ruby).
...I fire back with the almost-certainly-true statement that "You don't know C++ well enough to judge its value as a language." I have been coding in C++ for about 15 years;
The problem is it takes about 15 years to really get to know C++.
With Objective-C, if you know C you only need to learn a couple of syntax additions. Objective-C does OO much more like Smalltalk: method dispatch is determined at runtime, not a compile time. This makes Objective-C much more dynamic than C++.
Personally, I'd much rather maintain the dynamically typed program/API. If you decide that some object in your statically typed system needs to be of a different class, then you've got to go through a lot of code to change that type (either that or you do a lot of casting and thus lose your type safety anyway). If I want to do that in, say Ruby, I don't need to change anything as long as the interface didn't change significantly.
All you guys out there who won't learn Ruby? You're days are numbered -- not because Ruby IS the next great thing -- but because it MIGHT be.
I learned Ruby (and am still learning more) five years ago, when I was 37. Now it seems that Ruby has arrived, so it's time to learn a new language now... otherwise my programming days might be numbered. Maybe Io or OCaml. Five years ago not many people thought that Ruby would be the next big thing, we learned it because we liked it. So maybe I would modify your recommendation: Learn langauge XYZ not because you think it is or might be the next big thing, learn language XYZ because you find it interesting and it will hopefully help you look at programming in a new way that you hadn't considered before. That will help advance your programming craft.
So when you've learned the language/technology that has become or seems destined to become the next great thing, it's time to learn something new because 'the next great thing's' longevity is 5 to 10 years (and shrinking all the time). Start getting ready for the next, next great thing otherwise you might as well check out...
Rails isn't the only Web app devel framework that Ruby has... It's just that Rails is getting all of the attention. Some folks prefer Nitro over Rails.
OK, so if I start building 'intelligent applications' (Intelligent Desgin, anyone?) using these new discoveries from Microsoft Labs will I be running the risk of a lawsuit?
That'll pretty much signal the end of the French tech sector.
This is BIZARRE. If anyplace should be supporting open source software it's France. As anti-American as France generally is, this move will hand a huge present to the American company Microsoft....or maybe they have some strange idea that this will bring the riots to an end.
By mandating that the state of Mass use the OpenDocument format the state is just saying that they want to be able to access documents in an open way. They don't wan their documents tied to proprietary software.
How is this stealing Microsoft's IP? How is this weakening IP laws?
This reality is not going to change. In fact it will only get worse as technology coverage is handed to newer, less-qualified observers who simply cannot use a Microsoft Windows computer.
So either Windows is so difficult to run that technology observers aren't able to run and maintain it correctly (and thus opt for the much easier OSX) or these less qualified observers have decided that they don't want to be bothered with Windows and it's assortment of viruses (apprently decisions like this make them less qualified in Dvorak's eyes).
DVORAK: Bill, did you see my latest column? BILL G.: Yeah. Great work. DVORAK: Where's this week's check?
I don't know how to say this gently, so I'll just say it: you need to seek professional help. You've been talking about your '6th birthday' or '6th makeover' or similar such for about 5 years now. For 5 years now all I've heard from you is how great things will be after you reach this milestone. The years have come and gone and nothing ever seems to change. At first I believed you and I was excited about the future. But how can I believe you anymore? You've lost all credibility.
Please, you've got to quit looking toward some pie-in-the-sky-in-the-sweet-by-and-by and learn to face reality.
Look, I know that we were an item for quite a few years.
You were my one and only. My true love. But I've gotta admit, when I saw your younger sister Ruby a few years back... well, I thought she was hot. But of course, she was too young then so I stayed away from her.
Now, more recently I have to confess that I went out with Ruby for a few dates and believe me, she is plenty mature now! Not only that but her library seems somehow more complete than yours and certainly better organized. And her object oriented features - OO la la! Look, you're a great gal, but you're certainly not anywhere near as well endowed in THAT department.
And now that Ruby's got transportation (ok, so she likes to ride the rails) we're really getting around.
So, dear Perl, I have to tell you that it's over between you and me. From now on it's me and Ruby. Please don't take it too hard. Maybe you'll find someone else after you're makeover.
Intel sucks. I spent a week at Intel ten years ago. I sure hope that I never have to go back there.
You spent a week at Intel 10 years ago (presumably in one group) and you can difinitively say that it's still like it was then all over the whole company?
I've been a 'perma-temp' a couple of times there in the last 4 years. There are good groups and there are bad groups. good managers and very bad managers.
Though I do agree with you that Intel's policies (and the policies of many other tech companies) are driving people out of engineering and driving young people away from even considering engineering. Why bust your rear to get an engineering degree only to have your job sent over seas when you can glide though an easier degree and basically end up about as well off as an engineering major does? The kids aren't dumb.
Unfortuneately, the money seems to have lost the scent. Maybe if I sit still for a while it'll catch up to me? I'm over here!
Serioulsy, though, I think this tired old platitude should either be retired or modified:
"Do what you love and you'll be happy even without much money"
That seems a lot more realistic. Why is it that people want a lot of money? Because they think it'll make them happy. Better to learn to be happy in any situation whether you have no money or a lot of it.
If you have any inclination at all to get back into development you should jump at this chance. The longer you stay in management, the less likely you will ever get back to development/design work.
Besides, it sounds like you've reached the local maxima of income where you currently are anyway.
If things have reached an impasse where management makes it difficult to get real work done, then it's time to escape and start your own lean, mean startup company. You can gather your technical folk in the Wifi enabled coffee shop down the street and do your plotting there. Of course after about 5 years your lean, mean startup will be just about as bureaucratic as the company you left... when that happens you must restart the cycle. And so it continues endlessly.
Seriously, depending on what kind of work you're doing it's never been easier (and less expensive) to start your own venture. There's so many great open source tools available these days and hardware is pretty cheap. The only problem is getting that income stream going... you'll probably have to live on ramen for a few months.
My preference would be that drivers should not be allowed to change lanes when approaching a red light unless they're going to turn at the intersection.
I'm not sure that would be enforcable. I would prefer that people would realize that not being in a hurry to get to a red light would help them save gas (and thus $$), but most people are so ignorant of simple physics, the laws of thermodynamics etc. that they just don't get it. Mostly, I think that those of us who are aware of physics should start setting the example. Like I said in the OP, it improves my milage by 5MPG. I'm sure it pisses off the people beind me who just don't get it, but that's their problem.
Maybe we just need a bumber sticker, something like: "I coast to red lights to save gas"
But there's no market for them. Too small, apparently...
Hopefully that's changing. It's a lot like 1973 right now. People are driving huge cars (SUVs) again. The emphasis has been on horsepower, not milage in the last few years. Speed limits were raised from 55 to 70 in many places over the last ten years. Now people are starting to realize the folly of those ways and the pendelum is swinging back to MPG as being the most important. Japanese cars became popular in the 70's because they got much better milage than the American dinosaur cars of the time. Now the Japanese companies are making huge cars as well (at least for the US market)...
I would check out How To Program by Chris Pine. It's very much for people who have no programming experience.
Also, for a very different, novel and fun approach you should check out Why's Poignant Guide to Ruby . Did I mention it was fun? It's also a great intro for someone who has never programmed before.
An unmitigated lie, which has been addressed time and time again.
You're sure about that?
Consider all stages of producing ethanol in this way, including: plowing fields, applying fertilizers (which are often extracted from petroleum), pesticides, herbicides. Harvesting, transportation, fermentation (which require some energy to warm the mash/yeast mixture) and then distillation. I've seen analyses which show corn-based ethanol to be a net energy loser. That's not even considering the fact that land which was previously used to produce food is now going into energy production (and the potential ecological effects of transferring more land into farming) nor does it consider the fact that corn is a very resource-hungry crop (requires lots of fertilization, depletes soils) compared to yields. Perhaps ethanol produced from other crops may yeild a net energy gain, but not likely from corn.
Also, to address something in my original post: I said that biodiesel doesn't make sense from an energy standpoint unless it's recycled vegetable oil. I meant from an ecological standpoint it doesn't make sense. The people who are going to McD's and loading up on used vegetable oil to make their own biodiesel are doing a good thing both ecologically and energy wise (it would have been thrown out in the past anyway), however, growing soybeans (or genetically modified palms in Indonesia) doesn't seem to make as much sense ecologically (and perhaps not even from the standpoint of energy yield). Of course the amount of recycled biodiesel is pretty limited which makes it great for the small operators in their garages, but even with all of the McD's we have in the US (and Burger Kings, etc) we still couldn't create enough biodiesel by recycling to cover more than a few percentage points of our transportation energy usage.
Enter the Biodiesel industry which aims to use 'virgin' oils (non-recyled, crops grown for the purpose of producing oils) to create Biodiesel. Now what's beginning to happen? In Indonesia there are forests being cut down to grow one type of genetically modified palm that can be used to produce biodiesel to be sold in Europe. In Brazil huge areas which were never farmed before are being plowed up to grow soybeans. Biodiesel, ironically enough, could be driving ecological devestation.
Biodiesel only works (from an energy yield standpoint) if it is recycled from used vegetable oils. Ethanol from corn is a net energy loser: takes more energy to create than you get back (not to mention that it also depletes soils that could have been used to grow food).
Sounds like the Power PC group tryin gto make themselves feel better about losing their biggest customer, Apple.
So does C++: they're called virtual function tables.
true. However, this sort of dynamic dispatch is limited to objects which are members of a certain inheritance hierarchy. In Obj-C, when a message is sent to an object the determination of whether or not that receiver can respond to the message is determined at runtime. It doesn't matter that the receiver is a member of a particular class which inherits from some class which defined some virtual functions.
With virtual functions in C++ it's sort of a cross between compiletime and runtime: The receiving object must be a member of a certain class hierarchy with the virtual functions defined in a parent somewhere. If you try to pass a class pointer of the wrong class (meaning it's not part of an exclusive hierarchy) then you'll get a compile time error. In Obj-C on the otherhand, we don't care what the class pedigree of an object is as long as it can respond to the message being sent (or to put it another way, as long as it's interface matches the expectations of the user).
Perhaps it could also be said that virtual functions are C++'s hack to allow limited dynamic dispatch. But it's not as dynamic as what is possible in Obj-C (or other very dynamic OO languages like Smalltalk and Ruby).
...I fire back with the almost-certainly-true statement that "You don't know C++ well enough to judge its value as a language."
I have been coding in C++ for about 15 years;
The problem is it takes about 15 years to really get to know C++.
With Objective-C, if you know C you only need to learn a couple of syntax additions. Objective-C does OO much more like Smalltalk: method dispatch is determined at runtime, not a compile time. This makes Objective-C much more dynamic than C++.
Personally, I'd much rather maintain the dynamically typed program/API. If you decide that some object in your statically typed system needs to be of a different class, then you've got to go through a lot of code to change that type (either that or you do a lot of casting and thus lose your type safety anyway). If I want to do that in, say Ruby, I don't need to change anything as long as the interface didn't change significantly.
All you guys out there who won't learn Ruby? You're days are numbered -- not because Ruby IS the next great thing -- but because it MIGHT be.
I learned Ruby (and am still learning more) five years ago, when I was 37. Now it seems that Ruby has arrived, so it's time to learn a new language now... otherwise my programming days might be numbered. Maybe Io or OCaml. Five years ago not many people thought that Ruby would be the next big thing, we learned it because we liked it. So maybe I would modify your recommendation: Learn langauge XYZ not because you think it is or might be the next big thing, learn language XYZ because you find it interesting and it will hopefully help you look at programming in a new way that you hadn't considered before. That will help advance your programming craft.
So when you've learned the language/technology that has become or seems destined to become the next great thing, it's time to learn something new because 'the next great thing's' longevity is 5 to 10 years (and shrinking all the time). Start getting ready for the next, next great thing otherwise you might as well check out...
Rails isn't the only Web app devel framework that Ruby has... It's just that Rails is getting all of the attention. Some folks prefer Nitro over Rails.
OK, so if I start building 'intelligent applications' (Intelligent Desgin, anyone?) using these new discoveries from Microsoft Labs will I be running the risk of a lawsuit?
That'll pretty much signal the end of the French tech sector.
...or maybe they have some strange idea that this will bring the riots to an end.
This is BIZARRE. If anyplace should be supporting open source software it's France. As anti-American as France generally is, this move will hand a huge present to the American company Microsoft.
By mandating that the state of Mass use the OpenDocument format the state is just saying that they want to be able to access documents in an open way. They don't wan their documents tied to proprietary software.
How is this stealing Microsoft's IP? How is this weakening IP laws?
OK, so I'll put 'AJAX', 'Ruby-on-Rails', and 'Web 2.0' in my business plan and I'm sure to win the jackpot!
This reality is not going to change. In fact it will only get worse as technology coverage is handed to newer, less-qualified observers who simply cannot use a Microsoft Windows computer.
So either Windows is so difficult to run that technology observers aren't able to run and maintain it correctly (and thus opt for the much easier OSX) or these less qualified observers have decided that they don't want to be bothered with Windows and it's assortment of viruses (apprently decisions like this make them less qualified in Dvorak's eyes).
DVORAK: Bill, did you see my latest column?
BILL G.: Yeah. Great work.
DVORAK: Where's this week's check?
Dear Perl,
I don't know how to say this gently, so I'll just say it: you need to seek professional help.
You've been talking about your '6th birthday' or '6th makeover' or similar such for about 5 years now. For 5 years now all I've heard from you is how great things will be after you reach this milestone. The years have come and gone and nothing ever seems to change. At first I believed you and I was excited about the future. But how can I believe you anymore? You've lost all credibility.
Please, you've got to quit looking toward some pie-in-the-sky-in-the-sweet-by-and-by and learn to face reality.
John
Dear Perl,
Look, I know that we were an item for quite a few years.
You were my one and only. My true love.
But I've gotta admit, when I saw your younger sister Ruby a few years back... well, I thought she was hot. But of course, she was too young then so I stayed away from her.
Now, more recently I have to confess that I went out with Ruby for a few dates and believe me, she is plenty mature now!
Not only that but her library seems somehow more complete than yours and certainly better organized. And her object oriented features - OO la la! Look, you're a great gal, but you're certainly not anywhere near as well endowed in THAT department.
And now that Ruby's got transportation (ok, so she likes to ride the rails) we're really getting around.
So, dear Perl, I have to tell you that it's over between you and me. From now on it's me and Ruby.
Please don't take it too hard. Maybe you'll find someone else after you're makeover.
John
Intel sucks. I spent a week at Intel ten years ago. I sure hope that I never have to go back there.
You spent a week at Intel 10 years ago (presumably in one group) and you can difinitively say that it's still like it was then all over the whole company?
I've been a 'perma-temp' a couple of times there in the last 4 years. There are good groups and there are bad groups. good managers and very bad managers.
Though I do agree with you that Intel's policies (and the policies of many other tech companies) are driving people out of engineering and driving young people away from even considering engineering. Why bust your rear to get an engineering degree only to have your job sent over seas when you can glide though an easier degree and basically end up about as well off as an engineering major does? The kids aren't dumb.
I love Nitro.
Only something dramatic, such as a major volcanic eruption, could cause enough cooling to miss setting a new record.
Given the track record for natural disasters this year, I wouldn't say that too loud.
...the money will follow.
Unfortuneately, the money seems to have lost the scent. Maybe if I sit still for a while it'll catch up to me? I'm over here!
Serioulsy, though, I think this tired old platitude should either be retired or modified:
"Do what you love and you'll be happy even without much money"
That seems a lot more realistic. Why is it that people want a lot of money? Because they think it'll make them happy. Better to learn to be happy in any situation whether you have no money or a lot of it.
If you have any inclination at all to get back into development you should jump at this chance. The longer you stay in management, the less likely you will ever get back to development/design work.
Besides, it sounds like you've reached the local maxima of income where you currently are anyway.
If things have reached an impasse where management makes it difficult to get real work done, then it's time to escape and start your own lean, mean startup company. You can gather your technical folk in the Wifi enabled coffee shop down the street and do your plotting there. Of course after about 5 years your lean, mean startup will be just about as bureaucratic as the company you left... when that happens you must restart the cycle. And so it continues endlessly.
Seriously, depending on what kind of work you're doing it's never been easier (and less expensive) to start your own venture. There's so many great open source tools available these days and hardware is pretty cheap. The only problem is getting that income stream going... you'll probably have to live on ramen for a few months.
My preference would be that drivers should not be allowed to change lanes when approaching a red light unless they're going to turn at the intersection.
I'm not sure that would be enforcable. I would prefer that people would realize that not being in a hurry to get to a red light would help them save gas (and thus $$), but most people are so ignorant of simple physics, the laws of thermodynamics etc. that they just don't get it. Mostly, I think that those of us who are aware of physics should start setting the example. Like I said in the OP, it improves my milage by 5MPG. I'm sure it pisses off the people beind me who just don't get it, but that's their problem.
Maybe we just need a bumber sticker, something like:
"I coast to red lights to save gas"
But there's no market for them. Too small, apparently...
Hopefully that's changing. It's a lot like 1973 right now. People are driving huge cars (SUVs) again. The emphasis has been on horsepower, not milage in the last few years. Speed limits were raised from 55 to 70 in many places over the last ten years. Now people are starting to realize the folly of those ways and the pendelum is swinging back to MPG as being the most important. Japanese cars became popular in the 70's because they got much better milage than the American dinosaur cars of the time. Now the Japanese companies are making huge cars as well (at least for the US market)...
and the diesel is cheaper than gasoline
Where I live diesel is about 25 cents/gallon higher than regular gasoline and it's been that way for a while.