That's funny, because on the bookshelf next to my desk 'Effective Java' is sitting right next to 'JavaScript: The Good Parts". They are both very similar in that they outline the common mistakes made in each language due to bad design choices and they both offer recipes on how to work around them. Just in case you were wondering, 'Effective Java' is about 4 times as long as 'JavaScript: The Good Parts'.
"JavaScript has inferior abstractions compared to what Java and C++ offer"
As someone who codes in both Java and JavaScript, I find Javascript much more flexible, and closer to a true OO language, as opposed to Java's sort-a-kind-a OO. Javascript has several well known design flaws, but so does Java. The flaws are generally well known, and experienced programmers form either language shouldn't have a problem avoiding them. Most people that I've worked with and who complain about Javascript haven't taken the time to learn how the language works, and instead just try to impose class based OO, which always fails miserably.
When using a prototype OO language (Javascript, Python, Ruby), OO principles such as 'interface composition instead of inheritance' that Java developers praise suddenly become much easier to apply without resorting to design patterns aimed at getting around Java's lack of multiple inheritance, or other shortcomings. Java's type checking can be helpful at times, but after many years developing with dynamic languages, I will tell you that mismatched-typing issues are a tiny minority of bugs I've seen make it to production.
I've done a lot of scientific coding in both Perl and Python, and I would pick Python any day of the week.
IMO whitespace issues are not a legitimate complaint about Python. I think whitespace delimited blocks are easier to read, and if you have problems with coders not getting it (never ran into this myself), a simple lint script that runs before commit/checkin will solve your tabs vs spaces mismatch.
Most Python-based scientific code uses numpy and/or C or Fortan for the computational bottlenecks, so memory and performance are often less of an issue than people assume. Much scientific code is designed to run on cluster/grid/cloud instead of a shared memory system, so the lack of concurrent threads is also often less of a concern.
Wireless bandwidth is still limited and expensive. AT+T tried to buy out T-Mobile to get access to their 4g bandwidth, but that was shot down by the feds, so maybe you should be blaming the gov.
Once Google's acquisition of Motorola Mobility is complete, they will be able to integrate their technology into Motorola cable boxes, which are the most common cable boxes in the US. Then things will really start to change.
eBook design: if there is a picture or chart please display it on a page by itself plus it's caption. Allow text sections to flow and be resizable. Minimize space between lines. eBook design finished. Thank you.
The reason that GPL is dying is because the situation is exactly the opposite of what you think. I've worked on several open source (non-GPLed) software projects, including one I started myself. I started working on open source software with goals of creating or enhancing tools required for other projects I was working on at the time. The software I worked on ultimately made those projects more successful, and I have since made a lot of money consulting for other companies that are using the open source software I helped create. The reason GPL is dying is because developers don't want to spend time working on software that they can't use for their own business, or profit from consulting work because the license is too restrictive.
The deficit and debt are two different things people confuse too often. Fixing the deficit does not fix the debt and the interest on the debt only compounds creating more deficit problems.
The interest we pay on current debt is included in the budget, so if we were to pass a break-even budget, we would be paying down debt.
I remember downloading.mp3s from Audio Galaxy over my dial up connection at 15 minutes per song, and then recording them to my portable MiniDisc player via a sound card with a digital optical cable port back in '97 or '98. Good times. I tried to listen to some of them a couple of years ago, but the format must not be very stable, cause the discs were all dead.
Everyone remembers Duke as being such an awesome game, but I always thought the only fun part was the 1st 2 levels. After that, they were all very similar, equal to other games of the generation, and generally pretty boring. I'm guessing these levels were offered for free to entice gamers into buying, and a lot of time was spent making them innovative, while the rest of the game was pretty lame.
It's not imaginary at all. When you buy shares of a company you actually, legally, own a slice of that company. You're entitled to attend share holder meetings, vote for board members, etc. Mature companies give you dividends which are your share of the company's profits. Less mature companies forgo dividends in the interest of reinvesting for future growth. These shares are then traded on a market which prices them in anticipation of future dividends/equity sales.
blah, blah, net present values, p/e ratio, these numbers are all meaningless and mostly tell you how the company has done in the past, not in the future. Never, ever use numbers to justify a stock purchase. There are only 2 reasons you should ever buy a stock.
1. the value of the company's product or service is better than their competitors.
2. People want to buy stuff in their market area.
These 2 reasons are often hard to judge for industries that you don't know anything about, so you need to stick to things you know. For example, Caterpillar has had a nice run. Do you think it's going to continue going up? You could make a reasonably guess that as long as commodities prices stay up, mining will keep going crazy, and Caterpillar will keep getting large new orders. But, unless you work in construction/mining, you probably have no idea if their 2011 models offer a good value compared to their competitors, and unless you work with raw materials, you probably don't know whether our current high commodity prices are real, or just another bubble.
Instead of investing in Caterpillar, invest in an industry where you know the answers to these questions, and you can make an informed decision. Obviously, the industry you work in is a good choice, unless of course your industry doesn't meet rule #2, then you're screwed.
To be fair, the manned program (i.e. the shuttle) launched Hubble and many of those Earth monitoring satellites.
Sadly, with the current budget, there will not be another outer solar system mission for at least a decade...
That's funny, because on the bookshelf next to my desk 'Effective Java' is sitting right next to 'JavaScript: The Good Parts". They are both very similar in that they outline the common mistakes made in each language due to bad design choices and they both offer recipes on how to work around them. Just in case you were wondering, 'Effective Java' is about 4 times as long as 'JavaScript: The Good Parts'.
"JavaScript has inferior abstractions compared to what Java and C++ offer" As someone who codes in both Java and JavaScript, I find Javascript much more flexible, and closer to a true OO language, as opposed to Java's sort-a-kind-a OO. Javascript has several well known design flaws, but so does Java. The flaws are generally well known, and experienced programmers form either language shouldn't have a problem avoiding them. Most people that I've worked with and who complain about Javascript haven't taken the time to learn how the language works, and instead just try to impose class based OO, which always fails miserably. When using a prototype OO language (Javascript, Python, Ruby), OO principles such as 'interface composition instead of inheritance' that Java developers praise suddenly become much easier to apply without resorting to design patterns aimed at getting around Java's lack of multiple inheritance, or other shortcomings. Java's type checking can be helpful at times, but after many years developing with dynamic languages, I will tell you that mismatched-typing issues are a tiny minority of bugs I've seen make it to production.
I've done a lot of scientific coding in both Perl and Python, and I would pick Python any day of the week. IMO whitespace issues are not a legitimate complaint about Python. I think whitespace delimited blocks are easier to read, and if you have problems with coders not getting it (never ran into this myself), a simple lint script that runs before commit/checkin will solve your tabs vs spaces mismatch. Most Python-based scientific code uses numpy and/or C or Fortan for the computational bottlenecks, so memory and performance are often less of an issue than people assume. Much scientific code is designed to run on cluster/grid/cloud instead of a shared memory system, so the lack of concurrent threads is also often less of a concern.
Wireless bandwidth is still limited and expensive. AT+T tried to buy out T-Mobile to get access to their 4g bandwidth, but that was shot down by the feds, so maybe you should be blaming the gov.
Once Google's acquisition of Motorola Mobility is complete, they will be able to integrate their technology into Motorola cable boxes, which are the most common cable boxes in the US. Then things will really start to change.
Anyone who works at a business that hires employees with the title 'Enterprise Architect' should probably quit their job.
eBook design: if there is a picture or chart please display it on a page by itself plus it's caption. Allow text sections to flow and be resizable. Minimize space between lines. eBook design finished. Thank you.
You can use console.log(), plus you have full debugging support with all the popular smartphone simulators.
The reason that GPL is dying is because the situation is exactly the opposite of what you think. I've worked on several open source (non-GPLed) software projects, including one I started myself. I started working on open source software with goals of creating or enhancing tools required for other projects I was working on at the time. The software I worked on ultimately made those projects more successful, and I have since made a lot of money consulting for other companies that are using the open source software I helped create. The reason GPL is dying is because developers don't want to spend time working on software that they can't use for their own business, or profit from consulting work because the license is too restrictive.
The deficit and debt are two different things people confuse too often. Fixing the deficit does not fix the debt and the interest on the debt only compounds creating more deficit problems.
The interest we pay on current debt is included in the budget, so if we were to pass a break-even budget, we would be paying down debt.
It should also be noted that those plans area actually $4 trillion and $2 trillion over 10 years, so a measly $200 billion per-year.
I remember downloading .mp3s from Audio Galaxy over my dial up connection at 15 minutes per song, and then recording them to my portable MiniDisc player via a sound card with a digital optical cable port back in '97 or '98. Good times. I tried to listen to some of them a couple of years ago, but the format must not be very stable, cause the discs were all dead.
Everyone remembers Duke as being such an awesome game, but I always thought the only fun part was the 1st 2 levels. After that, they were all very similar, equal to other games of the generation, and generally pretty boring. I'm guessing these levels were offered for free to entice gamers into buying, and a lot of time was spent making them innovative, while the rest of the game was pretty lame.
It's not imaginary at all. When you buy shares of a company you actually, legally, own a slice of that company. You're entitled to attend share holder meetings, vote for board members, etc. Mature companies give you dividends which are your share of the company's profits. Less mature companies forgo dividends in the interest of reinvesting for future growth. These shares are then traded on a market which prices them in anticipation of future dividends/equity sales.
blah, blah, net present values, p/e ratio, these numbers are all meaningless and mostly tell you how the company has done in the past, not in the future. Never, ever use numbers to justify a stock purchase. There are only 2 reasons you should ever buy a stock. 1. the value of the company's product or service is better than their competitors. 2. People want to buy stuff in their market area. These 2 reasons are often hard to judge for industries that you don't know anything about, so you need to stick to things you know. For example, Caterpillar has had a nice run. Do you think it's going to continue going up? You could make a reasonably guess that as long as commodities prices stay up, mining will keep going crazy, and Caterpillar will keep getting large new orders. But, unless you work in construction/mining, you probably have no idea if their 2011 models offer a good value compared to their competitors, and unless you work with raw materials, you probably don't know whether our current high commodity prices are real, or just another bubble. Instead of investing in Caterpillar, invest in an industry where you know the answers to these questions, and you can make an informed decision. Obviously, the industry you work in is a good choice, unless of course your industry doesn't meet rule #2, then you're screwed.