That would explain why every modern game is so GPU limited that you see virtually no fps difference from the top Core 2 Duo to a mid-range AMD A64 x2 paired with the top video cards on the market...
I bet you'll find dropping the FSB speed on the CPU makes a significant difference. It's not about raw processor power. It's about communication between components; that's the biggest current bottleneck.
I've been using a telnet bbs on & off since 95. The numbers there dropped substantially for a while around the end of the 90s, but seem to have been stable since.
But the dialup BBS may come back to life as a secure email route -- as a method where you are NOT sending packets through a gov't interception point at your local ISP.
I think secure webmail (e.g. hushmail) will be a more popular approach than that. It's hard to know for sure how secure either method is, unless you know the folks running the system, but the webmail is simply easier to use.
Intel chips sets are still behind Nvidia and Ati. The best that Intel has is x8 x8 or x1 x16 while Nvidia has x16 x16 one 590 board even has x16 x8 x16 and most 590 boards have with duel gig-e with ip/tpc offload. These are for amd 590 as the Intel ones are not out yet.
My understanding is that the nvidia chipsets only have 20 pcie channels, so when you have two x16 cards in there, it behaves as though those slots were x8s.
Still:
(1) at least the slots are there, which they aren't on intel based boards;
(2) 20 channels is better than the 16 that the best intel boards offer; and
(3) 8 pcie channels gives you an equivalent bandwidth (32 gb/s) to the FSB on current processors (~33 gb/s for a core 2 duo), so why would you want more than 8 anyway?
makes me all the more curious as to why, despite still outperforming directX OpenGL (which I DID know was still fully supported and very much visually alive) is not used more extensively. All major OSes, all major cards support it, but noone uses it even though it has been around WAY longer than and apparently is even more supported (hardware wise) than directx?
Well, I ain't in the industry, but having done a little programming with both Direct3D and OpenGL, I can perhaps shed some light on it.
1. OpenGL may have been initially shunned because it wasn't installed by default on Win95, whereas Direct3D was. 2. Direct3D uses an object-oriented API, whereas the OpenGL API is procedural. Most programmers prefer OO APIs. 3. Many programmers started out using DirectDraw (DirectX's old 2D graphics API); moving up to Direct3D was the obvious next step for them, whereas moving to OpenGL would have meant relearning existing stuff (e.g., how to draw on 2D surfaces that are rendered into the 3D scene). 4. For a programmer starting out using the APIs, it's easier to find info on how to use Direct3D. The documentation that comes with the SDK is good, as are the demos included. 5. (I'm not certain on this one, but I believe it's true) OpenGL isn't supported on the XBox, but Direct3D is.
All major hardware supports Direct3D, so hardware compatibility isn't really an issue. *Software* compatibility (i.e., that it is doesn't work under Linux) is a little more of an issue, but then there are solutions to that, too.
I wonder how much longer the CPU will be able to keep up with increases in GPU speed. Beyond a certain point, returns will be small or non-existant.
Look at it this way: the current 'hot' CPU, the Core 2 Duo, has a bus connection that allows it to transfer 1066 Mwords of data per second. Typical applications require a complete refresh of vertex buffer data for each frame. Even for a really well optimised application that runs mostly out of cache, the CPU's likely to need to hit system memory several times for each vertex it outputs, so it's probably putting at most 400 Mwords of vertex data per second into the GPU's buffers (at 100fps, that's around 2 million vertices per frame, which is quite a lot).
The card quoted has 8 vertex shaders running at 650MHz, so it can already afford roughly 25 cycles per vertex, which is probably more than enough to perform any reasonable transformation on those vertices.
But then it's the pixel shaders and texturizers that get really stressed in most applications. This card has 24 of each. Per frame, that allows the same application 156 million pixel shader cycles and the same number of texturizer cycles. The highest resolution monitor I'm aware of has a max resolution of 2560x1600. That's roughly 4 megapixels, meaning that the shaders get 39 cycles per pixel. Given that these beasts are vector processors (i.e. they can process R, G, B, & A in a single cycle), that's just about enough to perform any realistic transformation on the pixels.
Yes, I think there are applications for faster GPUs. And certainly, improving the speed of the memory attached to the GPUs will continue yielding improvements for a while yet -- there's simply no way 1600 MWord/s memory access speeds can keep up with data transfer requirements to all of the 72x650MHz pipelines on this card. But I'm not sure how many generations of card we'll see before they match the performance of even the most demanding application current generation CPUs are capable of instructing them to perform.
And for gaming applications: there's already enough power in these GPUs to process as many vertices as the CPU can provide in any exotic way you can find a realistic need for, and produce high-resolution textured, realistically lit, bump-mapped, fogged, rasterized output overlayed with transparency over static controls, HUDs and background images at the highest resolution supported by 99% of monitors.
The internet lacks that -- chat rooms are far less personal-feeling than even the most primitive BBS (your cable across the room trick almost qualifies!:)
There are a few out there that capture it. But you have to look hard to find them, and if you don't spend some time checking each one out, you can easily miss it. The quality's kind of hard to define, because it's about the people and working out who they are. But it's still there, in places.
The resolution of a CCTV security camera is typically somewhere around 352x240. A *really* good one might get you 720x480, but they're *very* thin on the ground. OK, it's set up so that the monitor takes up most of the shot, you can see that from the caps they show on the site. Maybe you've got 600 pixels horizontally and perhaps 300 vertically. Because it's from a bad angle, its better at the top and worse at the bottom.
Now, the computer's outputting text onto that screen, looking at the capture probably at a size that'll get at least 100 characters horizontally. That suggests a character is maybe 6x4 pixels.
Try OCRing a 6x4 pixel distorted image some day. I bet you'll get less than 50% success rate.
It's a sad fact, but plenty of people who ought to know better regard stuff as "not-SF" if its not set in the distant future when people have spaceships and/or robots.
My assumptions are that 10-year old girls back in 1993 would not likely have access to UNIX since it was almost entirely only available at universities, government offices and large businesses.
Recall that (if I remember the story correctly) this a 10-year old kid whose parents were university lecturers. What's the betting she'd hung around campus with them a little? "Here, play with this computer while I finish reading this paper..."
who cares `bout XSS when we have IE 0dayz around...
People who only browse trusted sites and are suddenly having their IE installations exploited via those 0-days because somebody used an XSS attack to insert them into those sites.
I think the point is, though, that you don't need to encode for typical AJAX usage patterns. You want to put content into a document? Grab it out of an XML document (browser decodes it from that encoding for you) and call "document.createTextNode(variableThatYouStoredItIn )" (browser doesn't interpret content as HTML).
The flaw that gives rise to XSS is the idea that pasting user-submitted content into a text serialisation of a web page is a good idea. You can fix it by using an API that doesn't do that, the same as you can fix SQL injection vulnerabilities by using prepared statements. It's the same idea. The issues are pretty much the same. The same solution works for both of them.
The point is, though, that browser developers could have made script filtering substantially easier. If you want to accept HTML-formatted input to a web application, you have little choice but to try to filter out any scripts a malicious user may have inserted. And doing so is hard, because there are so many different ways scripts can be inserted into HTML. Script tags, event handler attributes, any attribute that can take a URL (e.g. src, href in many different elements), style attributes, style tags,...
And it *is* a fairly common requirement, because of the existence of technlogies like 'contenteditable' and 'designmode' that allows sites to embed WYSIWYG HTML editors into a web browser, and the lack of alternatives that produce non-HTML results.
But forget that for a second: even if all you want to do is accept a URL and create a link to it, you need to do non-trivial filtering. Basically, you can either require that the URL is in a known good scheme (i.e. it begins with a substring from a list of good ones like "http:", "https:", "ftp:", "gopher:", "magnet:", etc.) or you can try to filter out URLs that invoke javascript. Start with anything that looks like "javascript:". Make it case insenstive. Now account for the fact that you can encode a URL with HTML entities for some or any characters (e.g. javscript), and that some browsers are rather permissivie with what they accept, and will accept embedded whitespace or null characters inside the javascript URL scheme.
Basically, the javascript URL scheme was a mistake that never should have been made. It has made filtering javascript out of HTML source code a nightmare. It has turned otherwise safe tags (like A and IMG) and attributes (style) into something that you *must* strip or examine closely to determine if there is a security issue.
If you're think about the site whose domain name's MD5 hash is "c6af41da42ae8a500747c2c920106c98" (or "7574dff77b3e597ee2e337984c8a27ce" without no LF at the end of it), I reported it to them some time around 2003 or so. They just don't care.
There's plenty of open source software for Windows. [...] Apps like the Gimp (yes, I fully know it's no replacement for PS, but it's better than many other expensive graphics apps)
My experience is that the Gimp is actively offputting to people new to free software. It just doesn't work right on Windows. It installs its files in a fucked-up location that plays hell with roaming profiles, the user interface is confusing (it might be fine for those familiar with Macs, but people in the windows world expect to find commands associated with a window on a menu attached to that window, not on a window that's floating somewhere else), and the dialog boxes just look wrong (why can't it use the standard Windows file open/save dialogs?).
CdEx, Audacity,
Audacity's a great app, but one most people have no need for. I'm afraid I have no experience with CdEx, so can't comment on it.
7-Zip,
Frankly, unless it has improved in the last year, most people will think 7-zip is a joke. Why? It has the most ugly user interface I've ever seen on Windows. It looks like a 7-year old put it together without paying much attention to it.
open Office,
OO is a great piece of software, but I have a lot of concerns over resource usage. On an average PC (which probably has less than 1GHz/256MB) it's sluggish and a memory hog. It makes Office 97 look positively lightweight and efficient. So for the average user it's probably not the best poster child for free software.
AbiWord
Been a while since I tried it, but my recollection of it is that the user interface wasn't very friendly to newcomers. Maybe they've fixed that by now, at which point this is possibly the best option you've mentioned.
I'm surprised you missed Firefox off that list, BTW.
No. I'm posting this from a PII-400 (admittedly it has 384MB of RAM and runs XP, so it's not quite the same sort of system he was talking about, but then I *am* a power user). The 300-400MHz mark was roughly where PCs passed the threshold that many users still find them perfectly adequate. A 400 MHz machine can run a web browser with no perceptable delays most of the time; mine's a bit slow at the moment because it happens to be downloading a file that I'm getting over 100KB/s on, which taxes it a little, and advanced content (e.g. flash sites) slow it down a bit too. It can play most video files (although not DVDs, those are just a little beyond its capability) and can cope with audio playback easily. It'll run a file sharing app in the background with little slowdown to the foreground app, and instant messaging is flawless. Word processing is no problem at all, especially if you're still using Office97 (and what possible reason is there to upgrade?). And that is probably all that 90%+ of people do with their computers. And you can pick one of these machines up second-hand for next to nothing. In fact, if you look in the right place, they're giving them away, because it's cheaper than recycling them any other way. Just pick up a few, amalgamate the RAM, install bigger hard disks, and you're away.
Most analysts in any field aren't worth shit when it comes to making predictions. That's why [...] for every winner in the stock market, there's at least one loser.
No, that's because the stock market is a zero-sum game. For somebody to make a profit on the stock market, somebody else must lose. Otherwise, where's the money coming from?
Costco pays their employees about three times as much as WalMart, and since their sales volume per employee is about three times that of WalMart, it seems they extract that much more labor out of each employee.
Costco = wholesale, Walmart = retail. This distinction is unsurprising, seeing as wholesalers work by making smaller margins on larger volums of goods. The fact that the margin will be substantially lower per unit sold completely invalidates the rest of your point. Apples, oranges.
Sports betting is a completely different thing to casino gambling though. To avoid losing horribly at sports betting, you have to study the field, know the form of the competitors, get a feel for how a particular match will go... to avoid losing horribly at casino gambling you have to LEAVE THE CASINO.
Note that the quad cores have a faster FSB, so you probably would see some improvement with them.
That would explain why every modern game is so GPU limited that you see virtually no fps difference from the top Core 2 Duo to a mid-range AMD A64 x2 paired with the top video cards on the market...
I bet you'll find dropping the FSB speed on the CPU makes a significant difference. It's not about raw processor power. It's about communication between components; that's the biggest current bottleneck.
Intel just announced 50 core CPUs in the next 5 years. We already have 4 and 8 core CPUs coming. What do you want?
Faster FSB speeds and faster memory. More raw processing power will achieve little without either of those.
I've been using a telnet bbs on & off since 95. The numbers there dropped substantially for a while around the end of the 90s, but seem to have been stable since.
But the dialup BBS may come back to life as a secure email route -- as a method where you are NOT sending packets through a gov't interception point at your local ISP.
I think secure webmail (e.g. hushmail) will be a more popular approach than that. It's hard to know for sure how secure either method is, unless you know the folks running the system, but the webmail is simply easier to use.
Intel chips sets are still behind Nvidia and Ati. The best that Intel has is x8 x8 or x1 x16 while Nvidia has x16 x16 one 590 board even has x16 x8 x16 and most 590 boards have with duel gig-e with ip/tpc offload. These are for amd 590 as the Intel ones are not out yet.
My understanding is that the nvidia chipsets only have 20 pcie channels, so when you have two x16 cards in there, it behaves as though those slots were x8s.
Still:
(1) at least the slots are there, which they aren't on intel based boards;
(2) 20 channels is better than the 16 that the best intel boards offer; and
(3) 8 pcie channels gives you an equivalent bandwidth (32 gb/s) to the FSB on current processors (~33 gb/s for a core 2 duo), so why would you want more than 8 anyway?
makes me all the more curious as to why, despite still outperforming directX OpenGL (which I DID know was still fully supported and very much visually alive) is not used more extensively. All major OSes, all major cards support it, but noone uses it even though it has been around WAY longer than and apparently is even more supported (hardware wise) than directx?
Well, I ain't in the industry, but having done a little programming with both Direct3D and OpenGL, I can perhaps shed some light on it.
1. OpenGL may have been initially shunned because it wasn't installed by default on Win95, whereas Direct3D was.
2. Direct3D uses an object-oriented API, whereas the OpenGL API is procedural. Most programmers prefer OO APIs.
3. Many programmers started out using DirectDraw (DirectX's old 2D graphics API); moving up to Direct3D was the obvious next step for them, whereas moving to OpenGL would have meant relearning existing stuff (e.g., how to draw on 2D surfaces that are rendered into the 3D scene).
4. For a programmer starting out using the APIs, it's easier to find info on how to use Direct3D. The documentation that comes with the SDK is good, as are the demos included.
5. (I'm not certain on this one, but I believe it's true) OpenGL isn't supported on the XBox, but Direct3D is.
All major hardware supports Direct3D, so hardware compatibility isn't really an issue. *Software* compatibility (i.e., that it is doesn't work under Linux) is a little more of an issue, but then there are solutions to that, too.
I learned how useful following the left wall can be playing repton. Does that make me old?
I wonder how much longer the CPU will be able to keep up with increases in GPU speed. Beyond a certain point, returns will be small or non-existant.
Look at it this way: the current 'hot' CPU, the Core 2 Duo, has a bus connection that allows it to transfer 1066 Mwords of data per second. Typical applications require a complete refresh of vertex buffer data for each frame. Even for a really well optimised application that runs mostly out of cache, the CPU's likely to need to hit system memory several times for each vertex it outputs, so it's probably putting at most 400 Mwords of vertex data per second into the GPU's buffers (at 100fps, that's around 2 million vertices per frame, which is quite a lot).
The card quoted has 8 vertex shaders running at 650MHz, so it can already afford roughly 25 cycles per vertex, which is probably more than enough to perform any reasonable transformation on those vertices.
But then it's the pixel shaders and texturizers that get really stressed in most applications. This card has 24 of each. Per frame, that allows the same application 156 million pixel shader cycles and the same number of texturizer cycles. The highest resolution monitor I'm aware of has a max resolution of 2560x1600. That's roughly 4 megapixels, meaning that the shaders get 39 cycles per pixel. Given that these beasts are vector processors (i.e. they can process R, G, B, & A in a single cycle), that's just about enough to perform any realistic transformation on the pixels.
Yes, I think there are applications for faster GPUs. And certainly, improving the speed of the memory attached to the GPUs will continue yielding improvements for a while yet -- there's simply no way 1600 MWord/s memory access speeds can keep up with data transfer requirements to all of the 72x650MHz pipelines on this card. But I'm not sure how many generations of card we'll see before they match the performance of even the most demanding application current generation CPUs are capable of instructing them to perform.
And for gaming applications: there's already enough power in these GPUs to process as many vertices as the CPU can provide in any exotic way you can find a realistic need for, and produce high-resolution textured, realistically lit, bump-mapped, fogged, rasterized output overlayed with transparency over static controls, HUDs and background images at the highest resolution supported by 99% of monitors.
What more do you want?
The internet lacks that -- chat rooms are far less personal-feeling than even the most primitive BBS (your cable across the room trick almost qualifies! :)
There are a few out there that capture it. But you have to look hard to find them, and if you don't spend some time checking each one out, you can easily miss it. The quality's kind of hard to define, because it's about the people and working out who they are. But it's still there, in places.
Sorry. "Old days" now is anything before WWW. You're probably thinking of the "old old days", which ended when "WarGames" was released.
Mono's great. But it ain't what it used to be; back in 96 or 97, I guess was the best times.
The resolution of a CCTV security camera is typically somewhere around 352x240. A *really* good one might get you 720x480, but they're *very* thin on the ground. OK, it's set up so that the monitor takes up most of the shot, you can see that from the caps they show on the site. Maybe you've got 600 pixels horizontally and perhaps 300 vertically. Because it's from a bad angle, its better at the top and worse at the bottom.
Now, the computer's outputting text onto that screen, looking at the capture probably at a size that'll get at least 100 characters horizontally. That suggests a character is maybe 6x4 pixels.
Try OCRing a 6x4 pixel distorted image some day. I bet you'll get less than 50% success rate.
It's a sad fact, but plenty of people who ought to know better regard stuff as "not-SF" if its not set in the distant future when people have spaceships and/or robots.
My assumptions are that 10-year old girls back in 1993 would not likely have access to UNIX since it was almost entirely only available at universities, government offices and large businesses.
Recall that (if I remember the story correctly) this a 10-year old kid whose parents were university lecturers. What's the betting she'd hung around campus with them a little? "Here, play with this computer while I finish reading this paper..."
who cares `bout XSS when we have IE 0dayz around...
People who only browse trusted sites and are suddenly having their IE installations exploited via those 0-days because somebody used an XSS attack to insert them into those sites.
I think the point is, though, that you don't need to encode for typical AJAX usage patterns. You want to put content into a document? Grab it out of an XML document (browser decodes it from that encoding for you) and call "document.createTextNode(variableThatYouStoredItIn )" (browser doesn't interpret content as HTML).
The flaw that gives rise to XSS is the idea that pasting user-submitted content into a text serialisation of a web page is a good idea. You can fix it by using an API that doesn't do that, the same as you can fix SQL injection vulnerabilities by using prepared statements. It's the same idea. The issues are pretty much the same. The same solution works for both of them.
The point is, though, that browser developers could have made script filtering substantially easier. If you want to accept HTML-formatted input to a web application, you have little choice but to try to filter out any scripts a malicious user may have inserted. And doing so is hard, because there are so many different ways scripts can be inserted into HTML. Script tags, event handler attributes, any attribute that can take a URL (e.g. src, href in many different elements), style attributes, style tags, ...
And it *is* a fairly common requirement, because of the existence of technlogies like 'contenteditable' and 'designmode' that allows sites to embed WYSIWYG HTML editors into a web browser, and the lack of alternatives that produce non-HTML results.
But forget that for a second: even if all you want to do is accept a URL and create a link to it, you need to do non-trivial filtering. Basically, you can either require that the URL is in a known good scheme (i.e. it begins with a substring from a list of good ones like "http:", "https:", "ftp:", "gopher:", "magnet:", etc.) or you can try to filter out URLs that invoke javascript. Start with anything that looks like "javascript:". Make it case insenstive. Now account for the fact that you can encode a URL with HTML entities for some or any characters (e.g. javscript), and that some browsers are rather permissivie with what they accept, and will accept embedded whitespace or null characters inside the javascript URL scheme.
Basically, the javascript URL scheme was a mistake that never should have been made. It has made filtering javascript out of HTML source code a nightmare. It has turned otherwise safe tags (like A and IMG) and attributes (style) into something that you *must* strip or examine closely to determine if there is a security issue.
If you're think about the site whose domain name's MD5 hash is "c6af41da42ae8a500747c2c920106c98" (or "7574dff77b3e597ee2e337984c8a27ce" without no LF at the end of it), I reported it to them some time around 2003 or so. They just don't care.
There's plenty of open source software for Windows. [...] Apps like the Gimp (yes, I fully know it's no replacement for PS, but it's better than many other expensive graphics apps)
My experience is that the Gimp is actively offputting to people new to free software. It just doesn't work right on Windows. It installs its files in a fucked-up location that plays hell with roaming profiles, the user interface is confusing (it might be fine for those familiar with Macs, but people in the windows world expect to find commands associated with a window on a menu attached to that window, not on a window that's floating somewhere else), and the dialog boxes just look wrong (why can't it use the standard Windows file open/save dialogs?).
CdEx, Audacity,
Audacity's a great app, but one most people have no need for. I'm afraid I have no experience with CdEx, so can't comment on it.
7-Zip,
Frankly, unless it has improved in the last year, most people will think 7-zip is a joke. Why? It has the most ugly user interface I've ever seen on Windows. It looks like a 7-year old put it together without paying much attention to it.
open Office,
OO is a great piece of software, but I have a lot of concerns over resource usage. On an average PC (which probably has less than 1GHz/256MB) it's sluggish and a memory hog. It makes Office 97 look positively lightweight and efficient. So for the average user it's probably not the best poster child for free software.
AbiWord
Been a while since I tried it, but my recollection of it is that the user interface wasn't very friendly to newcomers. Maybe they've fixed that by now, at which point this is possibly the best option you've mentioned.
I'm surprised you missed Firefox off that list, BTW.
No. I'm posting this from a PII-400 (admittedly it has 384MB of RAM and runs XP, so it's not quite the same sort of system he was talking about, but then I *am* a power user). The 300-400MHz mark was roughly where PCs passed the threshold that many users still find them perfectly adequate. A 400 MHz machine can run a web browser with no perceptable delays most of the time; mine's a bit slow at the moment because it happens to be downloading a file that I'm getting over 100KB/s on, which taxes it a little, and advanced content (e.g. flash sites) slow it down a bit too. It can play most video files (although not DVDs, those are just a little beyond its capability) and can cope with audio playback easily. It'll run a file sharing app in the background with little slowdown to the foreground app, and instant messaging is flawless. Word processing is no problem at all, especially if you're still using Office97 (and what possible reason is there to upgrade?). And that is probably all that 90%+ of people do with their computers. And you can pick one of these machines up second-hand for next to nothing. In fact, if you look in the right place, they're giving them away, because it's cheaper than recycling them any other way. Just pick up a few, amalgamate the RAM, install bigger hard disks, and you're away.
Most analysts in any field aren't worth shit when it comes to making predictions. That's why [...] for every winner in the stock market, there's at least one loser.
No, that's because the stock market is a zero-sum game. For somebody to make a profit on the stock market, somebody else must lose. Otherwise, where's the money coming from?
Costco pays their employees about three times as much as WalMart, and since their sales volume per employee is about three times that of WalMart, it seems they extract that much more labor out of each employee.
Costco = wholesale, Walmart = retail. This distinction is unsurprising, seeing as wholesalers work by making smaller margins on larger volums of goods. The fact that the margin will be substantially lower per unit sold completely invalidates the rest of your point.
Apples, oranges.
Err... thats supposed to be a euro symbol on alt gr+4. Guess slashcode filters them out. :(
Yes, we have $ on shift+4 (and on alt gr+4). £ is on shift 3, with # on a key next to enter.
Sports betting is a completely different thing to casino gambling though. To avoid losing horribly at sports betting, you have to study the field, know the form of the competitors, get a feel for how a particular match will go... to avoid losing horribly at casino gambling you have to LEAVE THE CASINO.