I spent a few years working as a software engineer for two electronic medical records companies. The second company certified some of its software with CCHIT. From that experience I can tell you that the CCHIT requirements are idiotic, and don't lead to better patient care, or better software for that matter. They are a hoop businesses jump through (both software companies and clinics). There are states that offer tax incentives for physicians that use CCHIT certified software. I know we spent a lot of time and effort implementing stupid features that were supposed to enhance security around patient data, help the physician provide better patient care, etc. In many cases these "CCHIT features" did just the opposite.
Its really disheartening when you write software all year to provide useful tools for doctors that improve the standard of care, and then have a bunch of useless and counterproductive features slapped on because of an upcoming CCHIT certification.
One app using 171 threads out of 256? What about the other programs? I have 62 processes running on my quad core right now. That is 62 processes all wanting to run threads. Most of those are background, but I count 10 foreground apps. If each one of those was to use 171 threads, my system would probably get hosed fast. Hell, if each one used just half that my desktop would be screwed. I don't mean to come down on you so hard, but if one of my junior programmers had said what you just said I would probably come down hard on them. I don't take Richter's opinion blindly, even though he has threading patents and I don't. It has been my experience that he is correct. Limiting the number of threads is good programming. I don't mean, "don't use threads." I mean, "don't use a lot of threads." It makes your program less complex, easier to debug, and usually speeds up the application. Throwing more threads at a problem without careful consideration of the consequences to the system at large can cause diminishing returns.
Without proper thread management by programmers, even machines with many pipelines will flounder. For an analogy, there used to be a local two-lane road that took me from my neighborhood out to the local highway. The road had a few cars on it so traffic was easy. Once I got to the 4-lane highway (4 north, 4 south) there was more traffic but I could drive to work fairly easy because of the extra lanes. Why? Because every other program errr neighborhood had a *little* road leading to the main highway, so there was never too much traffic dumped onto the road. Then the state decided to widen the highway to eight lanes each way to handle more traffic. When this happened a couple of local software errr real estate developers got greedy and expanded their real-estate and widened the local roads - more people in more cars driving in more lanes. So even though we have a new, wider highway it is now packed, and it now takes for ever for me to thrash errr drive my way to work.
So you see Outlook doing 50 things, at exactly the same time as a good thing? I have used the product for a number of years and am aware that is is more than just email. But seriously, how do you need more than a few threads to run Outlook? On top of that, why 50 separate threads instead of borrowing from the thread pool and reusing threads? In my desktop apps I usually have the GUI thread, and maybe one or two long running background threads if the desktop app is receiving push data, etc. Everything else is fired in very short lived, thread-pool threads. I am thinking of a particularly complex editor I wrote a couple of years ago that was get about 10 threads running at the same time.
I have done quite of bit of desktop and server programming in my time on the Microsoft development stack. I cannot imagine *ever* needing 171 threads unless you are writing a server application. Seriously, what the hell are the developers are Microsoft doing? Even in beta! There should be some better programming practices in place from day one.
I went to a conference a few years ago where threading guru Jeffrey Richter basically ripped Microsoft developers for being bad at thread management. He brought up Outlook on his demo machine, and showed 50-some threads running (if memory serves). Over 50 threads to, umm, check email.
I would think that even a year one developer would remember concepts like thrashing and memory management from their computer science classes.
Debugging multi-threaded code is tough. I cannot imagine the task MS will have if they wish to refactor some of these threads out of the product (which they should).
increasing the programmer comfort.
I do not get this statement. What the heck does anyting in this article have to do with my comfort? Since this is a compiler, do you speak of my comfort at compile time? That would be helped by code that is better checked at compile time. Errrr! Not Pascal! You need a managed language like Java or C#. I understand that there is a.Net Pascal out there, but this announcement just does not interest me. It is 2007, not 1997! We are building big, complex systems with our software, and we need languages that are type safe and can help achieve more predictable results than C++.
WTF does this have to do with that?
I have to agree. If I did not know this in high school, I certainly knew it in the first week or two of the first CompSci class I took my first semester at school. Not trying to be snotty, but this is really obvious stuff in the CompSci world.
I think this "argument" has come up 10 times since I started reading slashdot. I had a recent opportunity to test what my certifications did for me. I believe they helped me, and please follow along as I explain.
When I first decided to get certs, I was a college dropout. I had reached mid-junior level in a CompSci track, and taken a local developer job. I was working at a local company doing web application development. This was in the same small town (50k pop) in which I went to school, and was looking to be a well paid fish in a bigger pond. My route was the MCSD (Microsoft Certified Solution Developer) track. In 1999, that meant doing a track with 5 tests, two of which would be VB or C++ centric, a couple of electives, and the two hour "solutions architecture" test. Since I had done of ton of C++ in college but no MS C++, and had a lot of VB and ASP experience, I went the VB route. After passing all of the tests (self study), I soon found a well paying job out of state and took it. I was told that my certs got my foot in the door, and my interview and technical skills I demonstrated got me the job.
Now it is 2006, and I have almost 9 years of professional software development experience under my belt. I take pride in the fact that I have continued my self education sans BS CompSci. Recently, things got craptacular at work and I decided I needed to look for new employment. I pulled the old.doc resume files out, and seriously thought about removing all of the old MCSD crap. However, I left it in. And it worked really well for me. I found that recruiters still look for this stuff. I cannot believe how many interviews started with questions or comments on my certs. It got my foot in the door, again.
In the end, I am more than certain that it was my experience and my answers to some tough technical questions that got me my new job. However, I would recommend certs to anyone looking to prove their technical merit.
I went to a small engineering/technology school in a rural state, starting in 92. When I started I don't think any of my professors would have allowed a video recording of class. By the time I left, I had actually been in a few classes that were taped by the school and those tapes could be checked out at the AV center. I imagine that those tapes would be encoded to a digital video format like mpeg and available on a school server for today's students. I cannot imagine a school today that would not allow recording of lectures, but I imagine that some professors may.
Take notes later, pay attention in class? Sounds like a good idea. If nothing else, bring a $30 tape deck with a good microphone and record the lecture discreetly.
The parent post is on-target. And it is not like Dell is not supporting Linux at all. Plus, they offer a lot of resources for those machines that do not come with Linux installed:
http://linux.dell.com/
This exact book was reviewed a couple of months ago on Slashdot. Based on the strength of that review I went out and purchased this book. I was really unimpressed with it. It is much less a primer on how to program "AI" types of apps with.NET, and much more a manual of how to use Microsoft applications like their speech services and data mining. I do.NET for a living, which is to say that I am probably not an expert but am proficient. This book was not really aimed at.NET programming. It was aimed at "look at these cool MS apps" and "here is how to right click to enable data cubes". This book was really sub-par compared to many of the other tech books I have purchased in general. This is not to troll or to be flamebait; IMHO this book just is not very good and I have to wonder why it keeps being posted here.
My personal experience is that it is faster than IE. I just tested a few pages on my two laptops and on my desktop. Firefox would bring up even simple pages like Google faster. And from experience, I have had very few Google crashes. I have had a lot more trouble with IE.
I guess there could be a screen during the setup wizard, "Do you want this cool stuff?", with a list of top extensions. It would then download each one requested.
Who says it was US Citizens ? I've not seen that anywhere.
You are kidding, right? I mean, are you just trolling or are you serious? I am not even going to provide a link. Just go to Google News a enter "NSA Wiretapping". There is a ton of information that US Citizens were the subject of wiretaps, sans warrant. Man, I am a conservative, and even I think that your statement is like saying, "There Earth is flat. Where has anyone said it is round?"
There are four reasons I like Firefox better than IE:
1) Its faster,
2) Tabbed browsing,
3) Adblock,
4) More secure.
Items 1 & 4 are difficult to present to new users. Item 2 is also in IE7. Item 3 does not come standard with Firefox.
In addition to Adblock, there are several other really great extensions that make Firefox the browser for me. I use other extensions to sync my bookmarks between computers, provide thumbnails of all open tabs (available in IE7), and to more tightly lock-down pop-ups and javascript.
What Firefox needs is a bundle that includes several "essential" extensions pre-installed. As MS plays catch-up with where Firefox was a year ago, the Mozilla Foundation could stay way ahead bundling these great tools. The average user is not going to go out and find these free additions on their own. By adding only a couple of MBs for the initial download, I bet you could bundle several great extensions and market the additional functionality.
At a past company I worked at, we ran ASP pages on an NT machine which connected to MySQL databases on a Linux machine. We used dual NICs on the NT machine, one that was connected to the database machine on a privately addresses network and one faced into the DMZ. This seemed to work fairly well as we were able to use an older server with Linux. All we really needed was a minimal Linux install and plenty of RAM and disk. Back then we also used IPFW to firewall up the database machine. It only allowed SSH connections from a few IP addresses, and database port connections only from the web server. I thought it performed well, but this was a few years ago. I guess a modern solution would probably use something faster that the full-duplex 100 mb NIC we were using. You could probably hook up gigabit over copper with something as simple as a crossover cable from the NT machine to the Linux machine.
No matter the harware, keeping your database on a different machine than your public-facing web server is always a good idea.
I think point #1 makes the most sense. However, those surrender jokes never do seem to get very old with me.
Personally, I really started to dislike the French as a whole after a trip to Europe. Spaniards, Enlgishmen, Germans, and Italians were all so much nicer than the French. It seemed like the French looked down their noses at us. The Germans seemed a little distant, but that is just how Germans are. I think many French people really think they are better than Americans, and probably everyone else. My wife had the same impression after a recent trip to Paris.
It is too bad that we are not closer with the French, considering our past history.
So, does your comment have anything to do with what I said? I was not speaking of the good or evil of switching to c#. I was trying to make the point that I really doubt all the Java people are beating a path straight to ruby and python. I thought that the wording of the Slashdot article was a bit silly. Do you disagree with this? Are you making any comment other than beating the FOSS drum? Notice I am not anti-FOSS, not even in the least. But what do you have relevant to say here?
I was not a stellar student in college, but I really seemed to nail Physics I and Physics II. For the Physics II final we got a copy of the previous semester's final from a friend. We studied it head to toe. And for once I actually went through all of my previous exams, quizzes and homework and redid every problem.
When it came time for the final, I went in with a felt-tip pen (not pencil), was the first finished, and aced the f@#cker, 100%. I did not have to cross out a single thing, I just did all 8 pages of it straight through. I did not miss a single point on any of my equations, drawings, answers, nada! It is one of the few shining moments in my academic career. Whenever someone brings up that I took Calc III three times (I dropped it twice), I recite this story.
I would imagine that.NET is gaining much more of the Java base of applications than Ruby and Python combined. That is no disprespect to those two fine languages. Microsoft wrote.NET to compete with Java, and that is exactly what it is doing. I am working on a project right now where the last version of the app was written in Java, and the new in C#. When interviewing for jobs a couple of years ago, I think I interviewed with at least 5 companies that were doing the same. This is hardly scientific evidence, but I have a much easier time believing that companies would switch from Java to C# than to other languages, if they are going to switch.
I am very much opposed to the way that the Bush administration has violated our rights.
But you have to know that PeTA and Greenpeace both have sponsored organizations that have used violence as a means to their ends. PeTA has funded a couple of extremist organizations, such as the one that burned down a ski resort a couple of years ago. They denied contributing to these types of groups, but their public IRS records gave them away. Not only did they donate to groups that committed violence only days before their violent acts, but PeTA donated to the defense funds for those charged after the fact. My opposition to PeTA is for many reasons, but most importantly that they DO SUPPORT VIOLENT ORGANIZATIONS. Do I want to use the "terrorist" buzzword here? Hell yes.
Greenpeace's links to violent means is well documented. Do a google search, and you will find many cases.
PeTA and Greenpeace should be investigated and suspected of terrorism. They are both horrible, deceitful organizations. You should not use such extremist groups to highlight the fact that Bush and his cronies are going way too far.
Already using CVS with WinCVS, so way ahead of you there. How do you have two (or 10) people authoring the same MS Project file at the same time with CVS, or the same word doc, etc, etc, etc. Merge does not work very well in these cases. How can people see updates ASAP with CVS? You cannot expect the team to run update several times a day just to get the latest changes close to when they happend. This is why I am hoping to find something else - that is not to say CVS (or subversion - I recommend the a few months back) will not be a core piece of our ongoing solution.
You have a valid point of your own. The growth of the Internet and bandwidth both follow the same model as I discussed. I am not making an argument against the increase in bandwidth in my previous comments, so I am not sure how to take your comment. A more generalized version of the comment I was making extends to bandwidth.
To address your question about benefits to mankind, I think you will soon find that a number of huge questions will be answered via distibuted computing. Project like SETI's screensaver require no more than a dial-up connection, but they do count on the processing power of each node. Other projects have followed this model, including analysis of cancer via the huge processing power of millions of desktop machines. Personally, I would also take the 386 with broadband, but for the benefits of curing any number of diseases, I would go for the other approach. In our world, we do not need to make this choice.
Actually clock speeds really have done just as much in the last 2-3 years, but let me explain in more detail exactly what my point is.
I only use Moore's Law as a side note here, so don't let that old argument take you away from my real point. I am talking about the PC you can buy for a fixed prices, $500 in my case. I wish my scanner was not borked, or I would scan in a chart I have sitting right in front of me proving that this trend of being able to purchase twice the machine for the same price every two years is dead on correct. I did some googles, and only came up with opinion pieces so I cannot provide a link. I am sure this data is out there somewhere, as the author is quoting a number of technical sources including Intel. The chart quotes real data through 2004. I cannot defend anything through 2005 with the data I have in front of me, but I believe, from looking at the prices earlier this year I have scribbled down for my new desktop (built in late Jan - I called that spring in my earlier post) I believe that trend has also continued through this year. But I will stand firm on 2003 & 2004, 2 of the 3 years you mention. I have hard data in front of me from a very respected author, Ray Kurzweil, proving my point.
Its really disheartening when you write software all year to provide useful tools for doctors that improve the standard of care, and then have a bunch of useless and counterproductive features slapped on because of an upcoming CCHIT certification.
One app using 171 threads out of 256? What about the other programs? I have 62 processes running on my quad core right now. That is 62 processes all wanting to run threads. Most of those are background, but I count 10 foreground apps. If each one of those was to use 171 threads, my system would probably get hosed fast. Hell, if each one used just half that my desktop would be screwed. I don't mean to come down on you so hard, but if one of my junior programmers had said what you just said I would probably come down hard on them. I don't take Richter's opinion blindly, even though he has threading patents and I don't. It has been my experience that he is correct. Limiting the number of threads is good programming. I don't mean, "don't use threads." I mean, "don't use a lot of threads." It makes your program less complex, easier to debug, and usually speeds up the application. Throwing more threads at a problem without careful consideration of the consequences to the system at large can cause diminishing returns.
Without proper thread management by programmers, even machines with many pipelines will flounder. For an analogy, there used to be a local two-lane road that took me from my neighborhood out to the local highway. The road had a few cars on it so traffic was easy. Once I got to the 4-lane highway (4 north, 4 south) there was more traffic but I could drive to work fairly easy because of the extra lanes. Why? Because every other program errr neighborhood had a *little* road leading to the main highway, so there was never too much traffic dumped onto the road. Then the state decided to widen the highway to eight lanes each way to handle more traffic. When this happened a couple of local software errr real estate developers got greedy and expanded their real-estate and widened the local roads - more people in more cars driving in more lanes. So even though we have a new, wider highway it is now packed, and it now takes for ever for me to thrash errr drive my way to work.
So you see Outlook doing 50 things, at exactly the same time as a good thing? I have used the product for a number of years and am aware that is is more than just email. But seriously, how do you need more than a few threads to run Outlook? On top of that, why 50 separate threads instead of borrowing from the thread pool and reusing threads? In my desktop apps I usually have the GUI thread, and maybe one or two long running background threads if the desktop app is receiving push data, etc. Everything else is fired in very short lived, thread-pool threads. I am thinking of a particularly complex editor I wrote a couple of years ago that was get about 10 threads running at the same time.
I have done quite of bit of desktop and server programming in my time on the Microsoft development stack. I cannot imagine *ever* needing 171 threads unless you are writing a server application. Seriously, what the hell are the developers are Microsoft doing? Even in beta! There should be some better programming practices in place from day one.
I went to a conference a few years ago where threading guru Jeffrey Richter basically ripped Microsoft developers for being bad at thread management. He brought up Outlook on his demo machine, and showed 50-some threads running (if memory serves). Over 50 threads to, umm, check email.
I would think that even a year one developer would remember concepts like thrashing and memory management from their computer science classes.
Debugging multi-threaded code is tough. I cannot imagine the task MS will have if they wish to refactor some of these threads out of the product (which they should).
I thought you were joking until I did a whois. Time to do my own experiment.
increasing the programmer comfort. I do not get this statement. What the heck does anyting in this article have to do with my comfort? Since this is a compiler, do you speak of my comfort at compile time? That would be helped by code that is better checked at compile time. Errrr! Not Pascal! You need a managed language like Java or C#. I understand that there is a .Net Pascal out there, but this announcement just does not interest me. It is 2007, not 1997! We are building big, complex systems with our software, and we need languages that are type safe and can help achieve more predictable results than C++.
WTF does this have to do with that?
I have to agree. If I did not know this in high school, I certainly knew it in the first week or two of the first CompSci class I took my first semester at school. Not trying to be snotty, but this is really obvious stuff in the CompSci world.
When I first decided to get certs, I was a college dropout. I had reached mid-junior level in a CompSci track, and taken a local developer job. I was working at a local company doing web application development. This was in the same small town (50k pop) in which I went to school, and was looking to be a well paid fish in a bigger pond. My route was the MCSD (Microsoft Certified Solution Developer) track. In 1999, that meant doing a track with 5 tests, two of which would be VB or C++ centric, a couple of electives, and the two hour "solutions architecture" test. Since I had done of ton of C++ in college but no MS C++, and had a lot of VB and ASP experience, I went the VB route. After passing all of the tests (self study), I soon found a well paying job out of state and took it. I was told that my certs got my foot in the door, and my interview and technical skills I demonstrated got me the job.
Now it is 2006, and I have almost 9 years of professional software development experience under my belt. I take pride in the fact that I have continued my self education sans BS CompSci. Recently, things got craptacular at work and I decided I needed to look for new employment. I pulled the old .doc resume files out, and seriously thought about removing all of the old MCSD crap. However, I left it in. And it worked really well for me. I found that recruiters still look for this stuff. I cannot believe how many interviews started with questions or comments on my certs. It got my foot in the door, again.
In the end, I am more than certain that it was my experience and my answers to some tough technical questions that got me my new job. However, I would recommend certs to anyone looking to prove their technical merit.
I went to a small engineering/technology school in a rural state, starting in 92. When I started I don't think any of my professors would have allowed a video recording of class. By the time I left, I had actually been in a few classes that were taped by the school and those tapes could be checked out at the AV center. I imagine that those tapes would be encoded to a digital video format like mpeg and available on a school server for today's students. I cannot imagine a school today that would not allow recording of lectures, but I imagine that some professors may. Take notes later, pay attention in class? Sounds like a good idea. If nothing else, bring a $30 tape deck with a good microphone and record the lecture discreetly.
The parent post is on-target. And it is not like Dell is not supporting Linux at all. Plus, they offer a lot of resources for those machines that do not come with Linux installed: http://linux.dell.com/
No waaaay!
This exact book was reviewed a couple of months ago on Slashdot. Based on the strength of that review I went out and purchased this book. I was really unimpressed with it. It is much less a primer on how to program "AI" types of apps with .NET, and much more a manual of how to use Microsoft applications like their speech services and data mining. I do .NET for a living, which is to say that I am probably not an expert but am proficient. This book was not really aimed at .NET programming. It was aimed at "look at these cool MS apps" and "here is how to right click to enable data cubes". This book was really sub-par compared to many of the other tech books I have purchased in general. This is not to troll or to be flamebait; IMHO this book just is not very good and I have to wonder why it keeps being posted here.
My personal experience is that it is faster than IE. I just tested a few pages on my two laptops and on my desktop. Firefox would bring up even simple pages like Google faster. And from experience, I have had very few Google crashes. I have had a lot more trouble with IE.
I guess there could be a screen during the setup wizard, "Do you want this cool stuff?", with a list of top extensions. It would then download each one requested.
You are kidding, right? I mean, are you just trolling or are you serious? I am not even going to provide a link. Just go to Google News a enter "NSA Wiretapping". There is a ton of information that US Citizens were the subject of wiretaps, sans warrant. Man, I am a conservative, and even I think that your statement is like saying, "There Earth is flat. Where has anyone said it is round?"
1) Its faster,
2) Tabbed browsing,
3) Adblock,
4) More secure.
Items 1 & 4 are difficult to present to new users. Item 2 is also in IE7. Item 3 does not come standard with Firefox.
In addition to Adblock, there are several other really great extensions that make Firefox the browser for me. I use other extensions to sync my bookmarks between computers, provide thumbnails of all open tabs (available in IE7), and to more tightly lock-down pop-ups and javascript.
What Firefox needs is a bundle that includes several "essential" extensions pre-installed. As MS plays catch-up with where Firefox was a year ago, the Mozilla Foundation could stay way ahead bundling these great tools. The average user is not going to go out and find these free additions on their own. By adding only a couple of MBs for the initial download, I bet you could bundle several great extensions and market the additional functionality.
No matter the harware, keeping your database on a different machine than your public-facing web server is always a good idea.
Personally, I really started to dislike the French as a whole after a trip to Europe. Spaniards, Enlgishmen, Germans, and Italians were all so much nicer than the French. It seemed like the French looked down their noses at us. The Germans seemed a little distant, but that is just how Germans are. I think many French people really think they are better than Americans, and probably everyone else. My wife had the same impression after a recent trip to Paris.
It is too bad that we are not closer with the French, considering our past history.
So, does your comment have anything to do with what I said? I was not speaking of the good or evil of switching to c#. I was trying to make the point that I really doubt all the Java people are beating a path straight to ruby and python. I thought that the wording of the Slashdot article was a bit silly. Do you disagree with this? Are you making any comment other than beating the FOSS drum? Notice I am not anti-FOSS, not even in the least. But what do you have relevant to say here?
When it came time for the final, I went in with a felt-tip pen (not pencil), was the first finished, and aced the f@#cker, 100%. I did not have to cross out a single thing, I just did all 8 pages of it straight through. I did not miss a single point on any of my equations, drawings, answers, nada! It is one of the few shining moments in my academic career. Whenever someone brings up that I took Calc III three times (I dropped it twice), I recite this story.
I would imagine that .NET is gaining much more of the Java base of applications than Ruby and Python combined. That is no disprespect to those two fine languages. Microsoft wrote .NET to compete with Java, and that is exactly what it is doing. I am working on a project right now where the last version of the app was written in Java, and the new in C#. When interviewing for jobs a couple of years ago, I think I interviewed with at least 5 companies that were doing the same. This is hardly scientific evidence, but I have a much easier time believing that companies would switch from Java to C# than to other languages, if they are going to switch.
But you have to know that PeTA and Greenpeace both have sponsored organizations that have used violence as a means to their ends. PeTA has funded a couple of extremist organizations, such as the one that burned down a ski resort a couple of years ago. They denied contributing to these types of groups, but their public IRS records gave them away. Not only did they donate to groups that committed violence only days before their violent acts, but PeTA donated to the defense funds for those charged after the fact. My opposition to PeTA is for many reasons, but most importantly that they DO SUPPORT VIOLENT ORGANIZATIONS. Do I want to use the "terrorist" buzzword here? Hell yes.
Greenpeace's links to violent means is well documented. Do a google search, and you will find many cases.
PeTA and Greenpeace should be investigated and suspected of terrorism. They are both horrible, deceitful organizations. You should not use such extremist groups to highlight the fact that Bush and his cronies are going way too far.
Already using CVS with WinCVS, so way ahead of you there. How do you have two (or 10) people authoring the same MS Project file at the same time with CVS, or the same word doc, etc, etc, etc. Merge does not work very well in these cases. How can people see updates ASAP with CVS? You cannot expect the team to run update several times a day just to get the latest changes close to when they happend. This is why I am hoping to find something else - that is not to say CVS (or subversion - I recommend the a few months back) will not be a core piece of our ongoing solution.
To address your question about benefits to mankind, I think you will soon find that a number of huge questions will be answered via distibuted computing. Project like SETI's screensaver require no more than a dial-up connection, but they do count on the processing power of each node. Other projects have followed this model, including analysis of cancer via the huge processing power of millions of desktop machines. Personally, I would also take the 386 with broadband, but for the benefits of curing any number of diseases, I would go for the other approach. In our world, we do not need to make this choice.
I only use Moore's Law as a side note here, so don't let that old argument take you away from my real point. I am talking about the PC you can buy for a fixed prices, $500 in my case. I wish my scanner was not borked, or I would scan in a chart I have sitting right in front of me proving that this trend of being able to purchase twice the machine for the same price every two years is dead on correct. I did some googles, and only came up with opinion pieces so I cannot provide a link. I am sure this data is out there somewhere, as the author is quoting a number of technical sources including Intel. The chart quotes real data through 2004. I cannot defend anything through 2005 with the data I have in front of me, but I believe, from looking at the prices earlier this year I have scribbled down for my new desktop (built in late Jan - I called that spring in my earlier post) I believe that trend has also continued through this year. But I will stand firm on 2003 & 2004, 2 of the 3 years you mention. I have hard data in front of me from a very respected author, Ray Kurzweil, proving my point.