You can have buffer overflow problems in many languages. You can also prevent buffer overflow problems using good programming practices. I picked C, because it's a well-established high-level language, but there are others out there that would also be suitable
And this thing is only 6x faster than spinning media? That seems much slower than it ought to be, considering that it is solid-state. I suppose if that's only continuous throughput, and doesn't take latency into effect it might be okay, but still. How about 100x faster?
Sure, you can hack together a BIOS with the options you want using the rag-tag assortment of "tools" for doing such a thing that've been developed over the years. If the OEM decided to include their own proprietary checksums and anti-modification checks to the BIOS (which does happen quite a bit) you're up poop creek without a paddle. If you have a large cluster of PCs, they're probably not all fully functional PCs with floppy drives / CD roms / accessable USB connectors, so there's that as well. I'm not saying that the current Award/AMI bios aren't adequate for most people, but then again, so is Windows. But there are much better ways out there of doing things.
I'd write it in C, with some assembly hooks for the immediate boot process. The BIOS for modern PCs has to do a lot more than it used to: It has to initialize the hardware (which was the original intent, and is fine in assembly), but even that is getting much more complicated now, with networking, wireless, and video. Imagine having to edit BIOS options on a cluster of 300 PCs, it'd take you weeks using Award/AMI BIOS that don't have anything like serial or network console controllability. The big big use I see for something that isn't assembly is the booting process. That's the Achilles' Heel of the BIOS. Ever tried to boot off of a PCI-based SCSI adapter/drive? You probably can do that, but if you have two SCSI cards, you're screwed. The BIOS doesn't know or care how to tell the difference. USB boot is sketchy at best, and even CD-boot varies from manufacturer-to-manufacturer. The Award-BIOS source code is full of patches upon patches to support different quirky hardware that would be much better implemented in C. Things like large hard drive support would almost be trivial in C, but in assembly, you've go to change large swaths of code for larger bit-amounts for drive size. The newest size is 48-bit, which is a large number of TB, but drives keep getting bigger. The code itself is a gigantic mess of thousands of files with a loose grip on reality. There are circular dependencies from hell and code that just shouldn't exist.
At the mercy of the board manufacturer if you need features outside of what is provided
etc, etc.
Believe me, I love assembly, and use it at any chance I get, but for something that is as complicated as a BIOS has become, it just isn't the right way to do it.
Your average customer hasn't ever even HEARD of a BIOS, so they don't know WTF it is. They just hear "three point too giga flops prints faster, faster internet, faster faster" from the sales droids. They don't care if it's Intel, AMD, Dell, Gateway, or a steaming pile of poo in a box, as long as they hear big numbers at the shop where they buy it. They don't know, don't care. Then when 90% of all "computer-users" have bought these trusted-computing Longhorn-lockdowns, there won't be any choices, even if everybody does realize "hey, I can't watch these pirated movies anymore" they'll be complacent sheep, because that's what they always do: look at viruses, spyware, etc. People don't know enough to be able to care.
It helps me sleep because it helps to drown out the ringing in my ears. I have a pretty bad case of tinnitus from going to too many loud shows without ear protection (wear those earplugs, kids), and either standing too close to the speakers, or getting caught up too close to them. It's about as loud as a cooking microwave at a couple of feet away (except it's high pitch ringing instead of soothing microwavey sounds), the fan noise is a lot more pleasant than the ringing, and gives something else for my hearing to keen in on.
If you don't mind a little downtime every once in a while, you could buy a set of hard disks to swap in and out, or spend a little more cash and get some hot-swap drives to interchange. Then you could just set up a mirrored raid, and swap out the backup drive every so often, and have the raid controller card do all the work of rebuilding the new drive. Although, that might end up actually being more expensive than tapes, I don't know how much hot-swap stuff runs.
If you just want backup to a separate machine, incase that one kicks the bucket, you could always do a network backup to another machine on-site. Not as redundant as taking home tapes (incase of big fire), but if your building burns down, it's probably going to be a while to get back up and running regardless.
Unless you're stuck with an older version of CF that has _broken_ reg-exp functionality, asinine use of input to builtin functions (sometimes requires variable names to be in quotes, sometimes not, sometimes requires the # symbols, sometimes not, even between different inputs in the same function!), inability to create custom functions, the custom tags require you to jump through hoops and use things like global variables to pass data to, and the damn fact that every tag starts with "CF" so the glossary for the letter "C" is goddamn gigantic. I'm aware that many of these things have been fixed in newer versions, but holy crap what a shoddy language to evolve from.
Yeah, that does sound a little odd to me. I've worked in some not-tiny-but-not-small-either corporate environments (200-300 people) and I never saw one Mac. Is that just a function of the size of the company, where a few hundred hasn't broken the barrier of whatever-it-is yet?
I didn't invent them, that's one way how session variables can be implemented in the (shoddy) web scripting language we use (coldfusion, blah blah gag). The other (default) option is by using cookies to store the session variables, which is what had to be changed.
user 17.123.23.5 might be 30,000 computers, that's why. IP addresses are not a good way of tracking individual users because of network routing / NAT etc.
I have a similar story. I design / manage the website for a company, and we had a reasonably big problem with using cookies for internal "tracking" purposes. Not to track customers in the "evil" way, but just to keep track of things in their shopping cart, and other similar info to what you stated. The problem we had was with people having cookies shut off. At first, we'd just not track them at all, and the shopping cart would ask them to turn on their cookies, and gave some quick directions, and links to detailed directions for different browsers. A lot of people seemed to be totally turned off by this, based on the amount of people that read the instructions and then didn't even start shopping.
What we ended up doing was using alternate methods for tracking users as they browse around our site, mainly using links with generated tails attached to them that were unique to each visitor. Like, instead of linking to index.cfm in the navigation window, It would be index.cfm?user=5012345, and we'd keep track internally. Obviously this isn't a safe use for a shopping cart type thing, but we used other methods to secure that.
Mainly, I just wanted to say that there are methods other than cookies that work just as well.
I'm fairly sure it does constitute irony in this situation. www.m-w.com expresses irony as:
3 a (1) : incongruity between the actual result of a sequence of events and the normal or expected result
The actual result is the poster is shown to be stupid, instead of IBM, which is an incongruity between the expected result (showing IBM being stupid) and the actual result (the poster is stupid).
Unless I'm missing something fundamental. By all means, let me know if I am, I enjoy learning.
Yeah, it's confusing. TFS says it's 30% less energy out than in, but then states that other groups have found it's 50% more energy out than in. WHICH IS IT?
Electricity as powerful as lightning doesn't care about rubber tires, it'll just go right around them. If lightning travels miles through the sky, and through your car it's not just going to stop there because there are some rubber tires. The equipment on the rovers is no doubt designed to be hearty (It's survived more than a year on another planet with much harsher conditions than earth). But a lightning strike is fairly difficult to route away from electronics without causing some collateral damage.
I'm just wondering if they're going to use the "new" transformers as their character / plot base, or if it's going to be the classic ones all of us "grown-ups" know and love. Have any of you guys seen the new series?
The worst part is that people don't seem to take into consideration the cost of incarceration, which is HUGE. If they're so worried about the cost to society someone causes, they should kill _all_ criminals, that's much cheaper than keeping them housed in a prison, paying for the building, guards, food, etc... People are dumb.
You can always make more later, but you only have one life. Murders and rapists get less penalty for messing up / ending people's lives than these people want for hackers who screwed up a bunch of businesses? Whatever happened to life being important, and when did the almighty dollar take precedence over human lives? Admittedly it is a _lot_ of dollars, but I still think one life outweighs how many cars some rich people can buy. Besides, other businesses like anti-virus companies, and IT companies MADE a lot of money due to things like viruses / spyware / spam, etc. So it's not like it was a total loss for businesses.
Well, it's a matter of perspective. It's also the equivalent to a 300 foot screen 900 feet away, or a 1 millimeter screen 3 millimeters away. A 1 inch screen on a phone 3 inches away is what this'd look like, which is close, but definitely easy to read.
You can have buffer overflow problems in many languages. You can also prevent buffer overflow problems using good programming practices. I picked C, because it's a well-established high-level language, but there are others out there that would also be suitable
-Jesse
Launch = success
Mission = in-progress
Landing = hasn't happened yet, obviously
-Jesse
And this thing is only 6x faster than spinning media? That seems much slower than it ought to be, considering that it is solid-state. I suppose if that's only continuous throughput, and doesn't take latency into effect it might be okay, but still. How about 100x faster?
-Jesse
Sure, you can hack together a BIOS with the options you want using the rag-tag assortment of "tools" for doing such a thing that've been developed over the years. If the OEM decided to include their own proprietary checksums and anti-modification checks to the BIOS (which does happen quite a bit) you're up poop creek without a paddle. If you have a large cluster of PCs, they're probably not all fully functional PCs with floppy drives / CD roms / accessable USB connectors, so there's that as well. I'm not saying that the current Award/AMI bios aren't adequate for most people, but then again, so is Windows. But there are much better ways out there of doing things.
-Jesse
I'd write it in C, with some assembly hooks for the immediate boot process. The BIOS for modern PCs has to do a lot more than it used to: It has to initialize the hardware (which was the original intent, and is fine in assembly), but even that is getting much more complicated now, with networking, wireless, and video. Imagine having to edit BIOS options on a cluster of 300 PCs, it'd take you weeks using Award/AMI BIOS that don't have anything like serial or network console controllability. The big big use I see for something that isn't assembly is the booting process. That's the Achilles' Heel of the BIOS. Ever tried to boot off of a PCI-based SCSI adapter/drive? You probably can do that, but if you have two SCSI cards, you're screwed. The BIOS doesn't know or care how to tell the difference. USB boot is sketchy at best, and even CD-boot varies from manufacturer-to-manufacturer. The Award-BIOS source code is full of patches upon patches to support different quirky hardware that would be much better implemented in C. Things like large hard drive support would almost be trivial in C, but in assembly, you've go to change large swaths of code for larger bit-amounts for drive size. The newest size is 48-bit, which is a large number of TB, but drives keep getting bigger. The code itself is a gigantic mess of thousands of files with a loose grip on reality. There are circular dependencies from hell and code that just shouldn't exist.
-Jesse
- Written in Assembly
- Not modularized
- Extremely craptistic source code
- Stuck with ancient ways of doing things
- At the mercy of the board manufacturer if you need features outside of what is provided
- etc, etc.
Believe me, I love assembly, and use it at any chance I get, but for something that is as complicated as a BIOS has become, it just isn't the right way to do it.-Jesse
Your average customer hasn't ever even HEARD of a BIOS, so they don't know WTF it is. They just hear "three point too giga flops prints faster, faster internet, faster faster" from the sales droids. They don't care if it's Intel, AMD, Dell, Gateway, or a steaming pile of poo in a box, as long as they hear big numbers at the shop where they buy it. They don't know, don't care. Then when 90% of all "computer-users" have bought these trusted-computing Longhorn-lockdowns, there won't be any choices, even if everybody does realize "hey, I can't watch these pirated movies anymore" they'll be complacent sheep, because that's what they always do: look at viruses, spyware, etc. People don't know enough to be able to care.
-Jesse
It helps me sleep because it helps to drown out the ringing in my ears. I have a pretty bad case of tinnitus from going to too many loud shows without ear protection (wear those earplugs, kids), and either standing too close to the speakers, or getting caught up too close to them. It's about as loud as a cooking microwave at a couple of feet away (except it's high pitch ringing instead of soothing microwavey sounds), the fan noise is a lot more pleasant than the ringing, and gives something else for my hearing to keen in on.
-Jesse
If you don't mind a little downtime every once in a while, you could buy a set of hard disks to swap in and out, or spend a little more cash and get some hot-swap drives to interchange. Then you could just set up a mirrored raid, and swap out the backup drive every so often, and have the raid controller card do all the work of rebuilding the new drive. Although, that might end up actually being more expensive than tapes, I don't know how much hot-swap stuff runs.
If you just want backup to a separate machine, incase that one kicks the bucket, you could always do a network backup to another machine on-site. Not as redundant as taking home tapes (incase of big fire), but if your building burns down, it's probably going to be a while to get back up and running regardless.
-Jesse
How can you be a ninja and a pirate, pirates and ninjas hate eachother.
-Jesse
Unless you're stuck with an older version of CF that has _broken_ reg-exp functionality, asinine use of input to builtin functions (sometimes requires variable names to be in quotes, sometimes not, sometimes requires the # symbols, sometimes not, even between different inputs in the same function!), inability to create custom functions, the custom tags require you to jump through hoops and use things like global variables to pass data to, and the damn fact that every tag starts with "CF" so the glossary for the letter "C" is goddamn gigantic. I'm aware that many of these things have been fixed in newer versions, but holy crap what a shoddy language to evolve from.
-Jesse
Yeah, that does sound a little odd to me. I've worked in some not-tiny-but-not-small-either corporate environments (200-300 people) and I never saw one Mac. Is that just a function of the size of the company, where a few hundred hasn't broken the barrier of whatever-it-is yet?
-Jesse
I didn't invent them, that's one way how session variables can be implemented in the (shoddy) web scripting language we use (coldfusion, blah blah gag). The other (default) option is by using cookies to store the session variables, which is what had to be changed.
-Jesse
user 17.123.23.5 might be 30,000 computers, that's why. IP addresses are not a good way of tracking individual users because of network routing / NAT etc.
-Jesse
I have a similar story. I design / manage the website for a company, and we had a reasonably big problem with using cookies for internal "tracking" purposes. Not to track customers in the "evil" way, but just to keep track of things in their shopping cart, and other similar info to what you stated. The problem we had was with people having cookies shut off. At first, we'd just not track them at all, and the shopping cart would ask them to turn on their cookies, and gave some quick directions, and links to detailed directions for different browsers. A lot of people seemed to be totally turned off by this, based on the amount of people that read the instructions and then didn't even start shopping.
What we ended up doing was using alternate methods for tracking users as they browse around our site, mainly using links with generated tails attached to them that were unique to each visitor. Like, instead of linking to index.cfm in the navigation window, It would be index.cfm?user=5012345, and we'd keep track internally. Obviously this isn't a safe use for a shopping cart type thing, but we used other methods to secure that.
Mainly, I just wanted to say that there are methods other than cookies that work just as well.
-Jesse
Ditto here on the Niven vs. Crichton, but Crichton's Terminal-Man was a really good read nonetheless.
-Jesse
burnt cookies?
The actual result is the poster is shown to be stupid, instead of IBM, which is an incongruity between the expected result (showing IBM being stupid) and the actual result (the poster is stupid).
Unless I'm missing something fundamental. By all means, let me know if I am, I enjoy learning.
-Jesse
I'm thinking Whibble, or Boffle.
Yeah, it's confusing. TFS says it's 30% less energy out than in, but then states that other groups have found it's 50% more energy out than in. WHICH IS IT?
-Jesse
Electricity as powerful as lightning doesn't care about rubber tires, it'll just go right around them. If lightning travels miles through the sky, and through your car it's not just going to stop there because there are some rubber tires. The equipment on the rovers is no doubt designed to be hearty (It's survived more than a year on another planet with much harsher conditions than earth). But a lightning strike is fairly difficult to route away from electronics without causing some collateral damage.
-Jesse
I'm just wondering if they're going to use the "new" transformers as their character / plot base, or if it's going to be the classic ones all of us "grown-ups" know and love. Have any of you guys seen the new series?
-Jesse
The worst part is that people don't seem to take into consideration the cost of incarceration, which is HUGE. If they're so worried about the cost to society someone causes, they should kill _all_ criminals, that's much cheaper than keeping them housed in a prison, paying for the building, guards, food, etc... People are dumb.
-Jesse
You can always make more later, but you only have one life. Murders and rapists get less penalty for messing up / ending people's lives than these people want for hackers who screwed up a bunch of businesses? Whatever happened to life being important, and when did the almighty dollar take precedence over human lives? Admittedly it is a _lot_ of dollars, but I still think one life outweighs how many cars some rich people can buy. Besides, other businesses like anti-virus companies, and IT companies MADE a lot of money due to things like viruses / spyware / spam, etc. So it's not like it was a total loss for businesses.
-Jesse
Well, it's a matter of perspective. It's also the equivalent to a 300 foot screen 900 feet away, or a 1 millimeter screen 3 millimeters away. A 1 inch screen on a phone 3 inches away is what this'd look like, which is close, but definitely easy to read.
-Jesse