There's lots of other subtle biases. For example, in the "grep" example, the sh code simply called grep. If he wanted to be pure about the scripting he'd not have had any way of doing a RE in sh (since it doesn't have true RE handling builtin, it only has globs through 'case') and if he was going to use external calls then why didn't he just do 'exec grep "$@"' or otherwise afford the use of external command execution to the other languages too?
Also, in a lot of the Tcl scripts he added in a bunch of "good practice" verbosity which he didn't afford to, say, Perl (similar to the C# vs Java disparities you noticed). For example, in tclsh you don't have to explicitly call 'exec' to call an external function since tclsh provides that as an unknown function handler, and he also used the longhand form of checking for a successful execution (namely 'catch') rather than just doing an if on its result.
Personally, I just use the right tool for the job. I mostly use sh, PHP, and Tcl, depending on which sorts of things I'm scripting, though sometimes I'll also use perl and awk as appropriate (of course, I do often use awk as an external tool from sh).
Polygon rendering is also log(N) if you give it the same affordances for visibility preprocessing that you're apparently providing for raytracing, or use a hybrid approach like raycasted visibility for polygon rendering.
IMO, the best approach would be a hybrid of polygon+raytracing; use polygon rendering with shaders (and subdivision surfaces or some other form of arbitrary-precision surface tesselation) for most things, and then raytracing for reflections/refractions. There's a lot of things which pixel shaders make easy which are still damned difficult in raytracing, such as painterly/cartoon/etc. rendering, even if you do allow for programmable surface/illumination/etc. functions (which is what shaders boil down to anyway).
Also, a lot of photon mapping renderers are hybrid forward/backwards raytracers (pure photon mapping would be purely forward tracing, while traditional raytracers are backward tracing I know you probably know this, I'm just defining the particular instance of the terms I'm using since some people use them the other way around!) where they do direct and reflected illumination with backward tracing and caustics with forward tracing. IIRC, even Henrik Waan-Jensen's original photonmapping tracer did it this way.
Then to make things even more fun, there's path tracing which (again, IIRC) does a backwards trace from the screen to the lightsource then does a forward trace from that, which also produces pretty nice results, much more quickly than a traditional photonmapper.
Also, there has been some work on realtime radiosity, where basically it just iteratively solves the global illumination in parallel to a traditional polygon-pusher. When I was a grad student I implemented something like that and it produced pretty okay results. I was also going to eventually adapt it for lumigraph rendering (which is an adaptation of radiosity which can also handle reflections and refraction, by basically storing an environment map per vertex) but I never got around to implementing anything.
But the graphics are pretty special, if you're a graphics programmer anyway. The use of vertex shaders to produce the shadow volumes and motion blur really opened up my eyes to how powerful GPUs have gotten.
All of the SQL I write is embedded into other languages, mostly PHP and C++. It'd probably be pretty annoying to have SQL keywords hilighted in all of my strings.
You could just provide the pipe and an 802.11 access point and have it up to the renters to just bring their own laptop or whatever. Then you also don't have to worry about the hardware getting messed up (since you could just lock the access point and modem up in the crawlspace or whatever).
Or, you could do as another poster suggested and just make an install image for periodic recovery using Ghost.
Or, you could just figure that any renters who *need* a computer will be able to provide for themselves.
I have one of those! My grandpa gave it to me when he was cleaning out his basement a few years ago. I haven't put it together, though, since I'm afraid of losing/breaking the parts...
I did scan the manual though. Hm.
By the same token, you have to actually look at how Minix implements its message-passing. I hacked on Minix quite a bit for an undergraduate project, and IIRC all of the kernel processes still run in a single address space anyway. It's a microkernel API still running like a monolithic kernel. The only real difference between Linux and Minix at that point is the API used, since Minix makes it obvious that it's at least pretending to make message calls while Linux is just removing the smoke and mirrors.
Okay. I was just going based on the recent spate of articles in Wired.
FWIW, my Toyota Echo gets around 40MPG with my city/highway blend (about half and half), though I have also optimized my driving style to not waste fuel (shifting into neutral whenever I'm coasting for example) and traffic here moves pretty steadily so there's not as much starting/stopping as in most cities. The EPA rated it at 33/40, but its actual mileage seems to be more like 38/45.
Because nobody ever eats anything which was grown on a farm, so rural comms are useful and necessary for society as a whole. 'coz order fulfillment and shipping tracking and supply-side management and so on are only useful for computer parts, not for food.
I"ve been on quite a few networks where the ONLY ports available to me were 25, 110, 143, and 80, and 25 was filtered to ONLY allow sending through a specific SMTP server, which of course didn't allow smtpauth on my domain. So how does port 587 or smtpauth or whatever help me there?
It's cable which is rated for use in ventilation ducts and externally and so on, since its casing won't degrade or put out all sorts of fun toxic stuff into the air.
Yeah, but guess what: The environmental impact of you keeping your car running is way less than the environmental impact of manufacturing a new car.
I just wonder how much energy this oil production plant needs to keep going if it wouldn't be able to run itself on the products of its refinement process, then it's not a net gain.
Also, in a lot of the Tcl scripts he added in a bunch of "good practice" verbosity which he didn't afford to, say, Perl (similar to the C# vs Java disparities you noticed). For example, in tclsh you don't have to explicitly call 'exec' to call an external function since tclsh provides that as an unknown function handler, and he also used the longhand form of checking for a successful execution (namely 'catch') rather than just doing an if on its result.
Personally, I just use the right tool for the job. I mostly use sh, PHP, and Tcl, depending on which sorts of things I'm scripting, though sometimes I'll also use perl and awk as appropriate (of course, I do often use awk as an external tool from sh).
They're wherever developers are putting them.
IMO, the best approach would be a hybrid of polygon+raytracing; use polygon rendering with shaders (and subdivision surfaces or some other form of arbitrary-precision surface tesselation) for most things, and then raytracing for reflections/refractions. There's a lot of things which pixel shaders make easy which are still damned difficult in raytracing, such as painterly/cartoon/etc. rendering, even if you do allow for programmable surface/illumination/etc. functions (which is what shaders boil down to anyway).
Also, a lot of photon mapping renderers are hybrid forward/backwards raytracers (pure photon mapping would be purely forward tracing, while traditional raytracers are backward tracing I know you probably know this, I'm just defining the particular instance of the terms I'm using since some people use them the other way around!) where they do direct and reflected illumination with backward tracing and caustics with forward tracing. IIRC, even Henrik Waan-Jensen's original photonmapping tracer did it this way.
Then to make things even more fun, there's path tracing which (again, IIRC) does a backwards trace from the screen to the lightsource then does a forward trace from that, which also produces pretty nice results, much more quickly than a traditional photonmapper.
Also, there has been some work on realtime radiosity, where basically it just iteratively solves the global illumination in parallel to a traditional polygon-pusher. When I was a grad student I implemented something like that and it produced pretty okay results. I was also going to eventually adapt it for lumigraph rendering (which is an adaptation of radiosity which can also handle reflections and refraction, by basically storing an environment map per vertex) but I never got around to implementing anything.
But the graphics are pretty special, if you're a graphics programmer anyway. The use of vertex shaders to produce the shadow volumes and motion blur really opened up my eyes to how powerful GPUs have gotten.
All of the SQL I write is embedded into other languages, mostly PHP and C++. It'd probably be pretty annoying to have SQL keywords hilighted in all of my strings.
Overpriced? It costs $0, including shipping and handling, and you don't even have to provide real personal information.
They want their business model back.
Or, you could do as another poster suggested and just make an install image for periodic recovery using Ghost.
Or, you could just figure that any renters who *need* a computer will be able to provide for themselves.
Do you want to have any hearing left in three years?
14 words: badger badger badger badger badger badger badger badger badger badger badger badger MUSHROOM MUSHROOM
I wasn't planning on getting rid of it anytime soon.
I have one of those! My grandpa gave it to me when he was cleaning out his basement a few years ago. I haven't put it together, though, since I'm afraid of losing/breaking the parts... I did scan the manual though. Hm.
They did that in the very first episode of Enterprise already. (Destroying the need for continuity, I mean.)
By the same token, you have to actually look at how Minix implements its message-passing. I hacked on Minix quite a bit for an undergraduate project, and IIRC all of the kernel processes still run in a single address space anyway. It's a microkernel API still running like a monolithic kernel. The only real difference between Linux and Minix at that point is the API used, since Minix makes it obvious that it's at least pretending to make message calls while Linux is just removing the smoke and mirrors.
Yeah, like you're the only one who has a nick which is supposed to be ironically inaccurate. (Only in my case I'm afraid it's actually true...)
FWIW, my Toyota Echo gets around 40MPG with my city/highway blend (about half and half), though I have also optimized my driving style to not waste fuel (shifting into neutral whenever I'm coasting for example) and traffic here moves pretty steadily so there's not as much starting/stopping as in most cities. The EPA rated it at 33/40, but its actual mileage seems to be more like 38/45.
Because nobody ever eats anything which was grown on a farm, so rural comms are useful and necessary for society as a whole. 'coz order fulfillment and shipping tracking and supply-side management and so on are only useful for computer parts, not for food.
Have you actually measured the mileage, or are you just quoting the EPA sticker as a basis for what you expect to get once the engine "breaks in?"
I"ve been on quite a few networks where the ONLY ports available to me were 25, 110, 143, and 80, and 25 was filtered to ONLY allow sending through a specific SMTP server, which of course didn't allow smtpauth on my domain. So how does port 587 or smtpauth or whatever help me there?
Damnit! I thought I was being funny about bad phrasing. Oh well.
Wal-Mart carries rackmount cases? Wow!
It's cable which is rated for use in ventilation ducts and externally and so on, since its casing won't degrade or put out all sorts of fun toxic stuff into the air.
I just wonder how much energy this oil production plant needs to keep going if it wouldn't be able to run itself on the products of its refinement process, then it's not a net gain.
It's been done.