why don't they sell handsets in an honest fashion that aren't tied to a specific carrier
They do in much of the world, it's just due to the way your phone providers set things up in the US it's not really practical there. AIUI the CDMA networks won't let you bring your own phone at all and while AT&T will let you they won't give you any discount for doing so (so you are still paying for the subsidised phone you didn't take). I've heard T-Mobile USA will let you bring your own phone and give you a discount for it but they use different 3G frequencies to the rest of the world so if you bring a phone that wasn't intended for their network you are limited to EDGE.
There are two models, the A (which hasn't been released yet) has a nominal price of $25 while the B has a nominal price of $35.
However those nominal prices do not include shipping, tax or handling (the first two are understandable but the third seems a little slimy to me). The real all-in price here in the UK seems to be about £30.
When you are designing a laptop motherboard Intel gives you the choice between BGA parts (not pluggable) and uPGA parts (plugable). There are pros and cons to each approach, not socketing is probablly cheaper (one less part) and lets you make the laptop thinner but it increases repair costs (motherboard and CPU have to be replaced as a unit) and makes the inventory less flexible (it also stops user upgrades but I doubt laptop vendors really care about that).
Apple has been using BGA CPUs for years presumably because they place a high value on making thin and light laptops.
1: the dominant operating system has blurred the line between running executables and opening data files. Then they went even furher and introduced autorun to make users live's easier. They have tried to put theese genies back in the bottle but it's difficult to do without introducing a load of pain for users. 2: Even if the OS doesn't have the above problem a USB stick could be put together that enumerated as a keyboard as well as a mass storage device, it could then do pretty much anything the user can do (though it has to do it blind). 2: the natural assumption when finding a USB stick in the company parking lot is that a co-worker dropped it. Therefore the natural thing to do is to try and determine who owns it so it can be returned to it's rightful owner. Deternining who owns it generally requires looking at the contents
Sure they can handle them but can they handle them in a way that works sanely with them being the primary copy and stored in a VCS? can they open a csv created by another package, allow it to be editing and then save it back out again such that when the csv files are diffed the ONLY changes are the ones the user made. can they store stuff like column widths and other stuff thst csv doesn't support in a seperate file that sits alongside the csv?
Also even if you find tools that can handles csvs in a suitable manner csv puts a LOT of stuff on one line which makes diffs harder to read and increases the risk of conflicsts when merging.
What matters to electronics is relative humidity not absolute humidity (and the tolerable range is pretty wide 5% to 95% according to wikipedia) snd the absense of condensation. Condensation is generally caused by rapid changes in air temperature that leave solid objects colder than the surrounding air.
So as long as the following conditions hold I don't think humidity will be too much of a problem.
1:internal temperature is higher than outside temperature (it will be unless you are employing refridgeration techniques) 2:incoming air is mixed with recirculating air 3:no significant moisture is released inside the datacenter (e.g. humans are kept out as much as possible) 4:rapid changes in internal air temperature are avioded (this can be acheived by altering the mix ratios in response to outside air temperature)
In this way the absoloute humidity of air circulating in the datacenter will be about the same as the absoloute humidity outside and the relative humidity inside will be lower than the relative humidity outside.
1: two USB ports isn't really quite enough, I want enough ports to have a keyboard, a mouse and a USB flash drive plugged in at once. 2: i've had more trouble with the SMSC chip used on the Pi than with other USB ethernet chips
So i'd rather have a model A and pair it with http://cpc.farnell.com/1/1/56475-hub-3x-usb-ethernet-blkgrey-psg90189.html. Total cost is about the same when you consider that the USB hub with ethernet comes with a PSU that can supply the Pi (they don't mention that in the description but i've bought several and it comes with a 5V 2.5A power supply).
Had they gone with the original plan of having half the ram on the model A compared to the model B I would have thought so.
But they decided a while back to put the same ammount of ram on both. That leaves us in a situation where the core hardware that is important to software developers is the same between both models, the only difference is whether or not the USB hub with ethernet is present.
I'm told VGA input is less popular on European TVs because they have to make room for the SCART input.
Dunno where you heard that but it's not been my experiance in the UK. Every HDTV i've been involved in setting up has had one VGA input, one component input, 1-2 HDMI inputs, scart socket, 1-2 other SD inputs (an extra scart socket and/or a group of seperate connectors for composite/s-video) and an aerial input for the PAL and DVB-T tuners. Sometimes there is also a slot for a conditional access module for receiving encrypted DVB-T services.
It's very noticeable that HDTVs have a LOT more inputs than SDTVs did.
Pretty soon after the release of a new version of windows MS stops selling the old one (at least through normal channels).
If you want to keep using the old version on your new machines and you are either increasing the number of machines or you don't have existing transferable licenses you have to use downgrade rights. This can be tricky for a couple of reasons.
1: downgrade rights only apply to volume licenses and OEM versions of buisness editions, if you bought a machine with a home edition and are too small to buy a volume license then afaict you are officially SOL as far as downgrading goes. 2: With OEM version downgrades depending on what existing media you have and what bios keys your new machines have you may end up having to phone up and ask microsoft to activate every single machine you downgrade. 3: OEM downgrade rights typically only let you downgrade one version (though they made an exception for downgrades from 7 to XP) which may make your life difficult if you are trying to skip a release you see as a turd.
And of course when you use downgrade rights it still counts as a sale for the latest version of windows even if you have no intention of actually running the version you bought.
And how do you plan to achive that? Unless you are someone like ballmer or shuttleworth or whoever job's replacement is these days and can decide what goes into the default setup of a widely used system? Third party apps aren't much use when helping people unless it's in a completely controlled environment because you because you don't know if they will be installed or not.
IME typically if the dpkg database gets corrupted dpkg will forget some packages are installed. This usually results in a prompt to run "apt-get -f install" which reinstalls many of the packages that were forgotten about and things keep on working though possiblly with some leaf packages in an "installed but the package manager doesn't know they are installed" state (which could cause issues if libraries those packages depend on are removed during a later update, probablly nothing that can't easilly be fixed though).
UTC may date back that far but the present form with leap seconds didn't come until 1972 and I suspect it was some time after that before it was realised it was going to be a permanent arrangement.
And those implementing these libraries should take their work seriously
The problem with any convesion libraries is that if the format you are converting to can't represent what you are trying to convert it is simply not possible to convert without information loss. In particular there is simply no way to represent 23:59:60 in standard unix time becaue the assumption that there are 86400 seconds in a day is baked into the design of the format. Formats with seperate fields can in theory represent that time but whether application code written by people unaware that leap seconds exist (or aware that they exist but also aware that their OS doesn't support them) will handle it sanely is anyone's guess.
The "correct" fix is probablly to have two time APIs, a "legacy" API that continues to fudge things to support legacy time formats (unix time and HH:MM:SS with field ranges limited to 0-59) like computers do today and a "new" API that properly understands leap seconds and assumes the application's it is talking to do the same but even if the OS implements such a thing convincing people to care enough to move to the new API is likely to be very difficult.
There's a legally built binary in the Ubuntu repos, and presumably Debian, Fedora et al. as well
But it will be updated on the distributions schedule, typically for any rapidly developed software that means that the version in a stable release of the distribution will be a few versions out of date. Sometimes there are backports, sometimes there aren't. Sometimes even the development versions of distros can get quite a way behind upstream.
So depending on how quickly the software is developing and how inclined the distribution is to backport stuff binaries from upstream can be handy even on linux.
The copyrights only have significant value if two conditions hold
1: The company has retained the power to relicense the main parts of the codebase (e.g. they have been very careful about getting "contributor agreements" from any external contributors) and it's affordable* to replace any parts of the codebase that are incompatible with propietry licenses. 2: There is a group of people who will pay to use the code under terms other than those in the opensource license..
* What exactly affordable means depends on the size of the group mentioned in condition 2
If you don't allow insurers to price their services based on pre-existing conditions then insurance will become a good deal for those with pre-existing conditions and a poor deal for those without pre-existing conditions. So people without pre-existing conditions won't buy it until/unless they develop a condition. Of course once that happens the price will go up and health insurance will become a poor deal for those with minor pre-existing conditions. Repeat ad-nauseum until health insurance is not an option for most people.
Mandatory insurance combined with not allowing insurance to price their insurance based on pre-existing conditions is basically socialism by the back-door. Of course forcing hospital emergency rooms to take uninsured patients without paying them to do so is also socialism by the back-door.
Not that I think socialism is bad but if it is to be done it should be done by the front door and appear in the governments budgets.
IIRC if you only need one domain on the cert then startssl will do it for free. If you want wildcards or multiple names on the cert then you will have to pay a bit but IIRC it's not horiffically expensive.
The key with traditional landline phones is that once you make a call you get a reserved slice of bandwidth for the duration of the call. That means a known and stable call quality. With VOIP the quality may be very good (sometimes better than traditional landline) but it can be disrupted by other traffic. QOS can mitigate this but it can't really be used on the open internet (so VOIP with QOS is only really useful to large buisnesses who are trying to combine their phone and data infrastructure).
The truly bizarre part is they had labs where actual innovative and clever things were done all the time but the business side had no ability to actually do anything useful with the tech.
It's the cash cow mindset, when a buisness has one or two things that bring in the vast majority of their profit they will often avoid for as long as possible anything that could possiblly disprut that source of profit. Even if they could potentially get more profit from the new thing in the future.
The trouble is even if you win going to court is both expensive and a massive waste of time.
So people don't just comply with their understanding of the regulations, they put a large safety margin between themselves and any chance of being seen not to comply with the regulations.
For example the site you linked talked about "When a primary function area is altered, the path of travel to the altered area and the amenities serving the altered area must be made accessible, unless the costs for these changes are disproportionate. The costs for the added alterations are considered disproportionate if they exceed 20 percent of the cost of the overall alteration.", it also says that "There is no inspection process for the ADA. The building owner as well as those responsible for design and construction are responsible for complying with the ADA."
I'm not an american but there sounds to me like there is a lot of room for interpretation in there, who gets to decide what make the call as to what an alteration would have cost and as-such whether that cost was dispropotionate? will they have to defend that descision in a court of law?
C++'s complexity comes from the way it's designed. Rather than giging you things like smart pointers, strings etc as language builttins they give you the tools to build them yourself then build them in the standard libraries. Those tools are undoubtablly complex but most of the time application programmers don't need to worry about them. They can just use the smart pointers, strings etc that the libraries have built for them.
It really doesn't make much difference to an application programmer whether smart pointers are implemented as a library using complex language features or as a language feature in their own right.
What I really don't like about C++ is it's lack of a proper unit system which allows the compiler to avoid compiling the same shit loads of times and which allows the compiler to automatically work out what needs to be rebuilt. Yeah there are precompiled headers and tools like depcomp (from automake) which try to solve this but it's obvious they are hacks to make up for the lack of something that is a language feature in other languages (such as borland sytle pascal).
though snprintf has it's own hazard. It won't directly cause a buffer overflow but it will leave your buffer (which would normally contain a null-terminated string) unterminated so if you don't manually check for failure and either go down an error handling path or manually terminate the truncated string you are likely to get buffer overflows further down the code.
microsoft's _snprintf_s fixes this but I don't think it's supported outside their tools/libraries.
why don't they sell handsets in an honest fashion that aren't tied to a specific carrier
They do in much of the world, it's just due to the way your phone providers set things up in the US it's not really practical there. AIUI the CDMA networks won't let you bring your own phone at all and while AT&T will let you they won't give you any discount for doing so (so you are still paying for the subsidised phone you didn't take). I've heard T-Mobile USA will let you bring your own phone and give you a discount for it but they use different 3G frequencies to the rest of the world so if you bring a phone that wasn't intended for their network you are limited to EDGE.
There are two models, the A (which hasn't been released yet) has a nominal price of $25 while the B has a nominal price of $35.
However those nominal prices do not include shipping, tax or handling (the first two are understandable but the third seems a little slimy to me). The real all-in price here in the UK seems to be about £30.
Aren't CPU's even pluggable any more?
When you are designing a laptop motherboard Intel gives you the choice between BGA parts (not pluggable) and uPGA parts (plugable). There are pros and cons to each approach, not socketing is probablly cheaper (one less part) and lets you make the laptop thinner but it increases repair costs (motherboard and CPU have to be replaced as a unit) and makes the inventory less flexible (it also stops user upgrades but I doubt laptop vendors really care about that).
Apple has been using BGA CPUs for years presumably because they place a high value on making thin and light laptops.
but afaict to do so you have to
1: void your warranty
2: pay some shady guy to mod your box
3: risk getting your box banned from online gaming services
It is possible to pirate modern console games but the barrier is much higher than with open platforms.
There are a few factors
1: the dominant operating system has blurred the line between running executables and opening data files. Then they went even furher and introduced autorun to make users live's easier. They have tried to put theese genies back in the bottle but it's difficult to do without introducing a load of pain for users.
2: Even if the OS doesn't have the above problem a USB stick could be put together that enumerated as a keyboard as well as a mass storage device, it could then do pretty much anything the user can do (though it has to do it blind).
2: the natural assumption when finding a USB stick in the company parking lot is that a co-worker dropped it. Therefore the natural thing to do is to try and determine who owns it so it can be returned to it's rightful owner. Deternining who owns it generally requires looking at the contents
Yes you may be able to* generate a DB telling you what you have and how it's connected together.
What that autogenerated DB won't tell you is where it is, what it's for, who owns it, what the quirks of it's setup are and so-on.
* depending on whether your network was built with entirely managed enterprise gear, entirely soho gear or a mixture of the two.
Sure they can handle them but can they handle them in a way that works sanely with them being the primary copy and stored in a VCS? can they open a csv created by another package, allow it to be editing and then save it back out again such that when the csv files are diffed the ONLY changes are the ones the user made. can they store stuff like column widths and other stuff thst csv doesn't support in a seperate file that sits alongside the csv?
Also even if you find tools that can handles csvs in a suitable manner csv puts a LOT of stuff on one line which makes diffs harder to read and increases the risk of conflicsts when merging.
What matters to electronics is relative humidity not absolute humidity (and the tolerable range is pretty wide 5% to 95% according to wikipedia) snd the absense of condensation. Condensation is generally caused by rapid changes in air temperature that leave solid objects colder than the surrounding air.
So as long as the following conditions hold I don't think humidity will be too much of a problem.
1:internal temperature is higher than outside temperature (it will be unless you are employing refridgeration techniques)
2:incoming air is mixed with recirculating air
3:no significant moisture is released inside the datacenter (e.g. humans are kept out as much as possible)
4:rapid changes in internal air temperature are avioded (this can be acheived by altering the mix ratios in response to outside air temperature)
In this way the absoloute humidity of air circulating in the datacenter will be about the same as the absoloute humidity outside and the relative humidity inside will be lower than the relative humidity outside.
Two reasons
1: two USB ports isn't really quite enough, I want enough ports to have a keyboard, a mouse and a USB flash drive plugged in at once.
2: i've had more trouble with the SMSC chip used on the Pi than with other USB ethernet chips
So i'd rather have a model A and pair it with http://cpc.farnell.com/1/1/56475-hub-3x-usb-ethernet-blkgrey-psg90189.html. Total cost is about the same when you consider that the USB hub with ethernet comes with a PSU that can supply the Pi (they don't mention that in the description but i've bought several and it comes with a 5V 2.5A power supply).
So is this the same situation we're seeing here?
Had they gone with the original plan of having half the ram on the model A compared to the model B I would have thought so.
But they decided a while back to put the same ammount of ram on both. That leaves us in a situation where the core hardware that is important to software developers is the same between both models, the only difference is whether or not the USB hub with ethernet is present.
I'm told VGA input is less popular on European TVs because they have to make room for the SCART input.
Dunno where you heard that but it's not been my experiance in the UK. Every HDTV i've been involved in setting up has had one VGA input, one component input, 1-2 HDMI inputs, scart socket, 1-2 other SD inputs (an extra scart socket and/or a group of seperate connectors for composite/s-video) and an aerial input for the PAL and DVB-T tuners. Sometimes there is also a slot for a conditional access module for receiving encrypted DVB-T services.
It's very noticeable that HDTVs have a LOT more inputs than SDTVs did.
Pretty soon after the release of a new version of windows MS stops selling the old one (at least through normal channels).
If you want to keep using the old version on your new machines and you are either increasing the number of machines or you don't have existing transferable licenses you have to use downgrade rights. This can be tricky for a couple of reasons.
1: downgrade rights only apply to volume licenses and OEM versions of buisness editions, if you bought a machine with a home edition and are too small to buy a volume license then afaict you are officially SOL as far as downgrading goes.
2: With OEM version downgrades depending on what existing media you have and what bios keys your new machines have you may end up having to phone up and ask microsoft to activate every single machine you downgrade.
3: OEM downgrade rights typically only let you downgrade one version (though they made an exception for downgrades from 7 to XP) which may make your life difficult if you are trying to skip a release you see as a turd.
And of course when you use downgrade rights it still counts as a sale for the latest version of windows even if you have no intention of actually running the version you bought.
And how do you plan to achive that? Unless you are someone like ballmer or shuttleworth or whoever job's replacement is these days and can decide what goes into the default setup of a widely used system? Third party apps aren't much use when helping people unless it's in a completely controlled environment because you because you don't know if they will be installed or not.
Running ipconfig works on virtually every version of Windows.
well every NT based version. 9x had winipcfg instead.
IME typically if the dpkg database gets corrupted dpkg will forget some packages are installed. This usually results in a prompt to run "apt-get -f install" which reinstalls many of the packages that were forgotten about and things keep on working though possiblly with some leaf packages in an "installed but the package manager doesn't know they are installed" state (which could cause issues if libraries those packages depend on are removed during a later update, probablly nothing that can't easilly be fixed though).
Given that UTC dates from 1961
UTC may date back that far but the present form with leap seconds didn't come until 1972 and I suspect it was some time after that before it was realised it was going to be a permanent arrangement.
And those implementing these libraries should take their work seriously
The problem with any convesion libraries is that if the format you are converting to can't represent what you are trying to convert it is simply not possible to convert without information loss. In particular there is simply no way to represent 23:59:60 in standard unix time becaue the assumption that there are 86400 seconds in a day is baked into the design of the format. Formats with seperate fields can in theory represent that time but whether application code written by people unaware that leap seconds exist (or aware that they exist but also aware that their OS doesn't support them) will handle it sanely is anyone's guess.
The "correct" fix is probablly to have two time APIs, a "legacy" API that continues to fudge things to support legacy time formats (unix time and HH:MM:SS with field ranges limited to 0-59) like computers do today and a "new" API that properly understands leap seconds and assumes the application's it is talking to do the same but even if the OS implements such a thing convincing people to care enough to move to the new API is likely to be very difficult.
There's a legally built binary in the Ubuntu repos, and presumably Debian, Fedora et al. as well
But it will be updated on the distributions schedule, typically for any rapidly developed software that means that the version in a stable release of the distribution will be a few versions out of date. Sometimes there are backports, sometimes there aren't. Sometimes even the development versions of distros can get quite a way behind upstream.
So depending on how quickly the software is developing and how inclined the distribution is to backport stuff binaries from upstream can be handy even on linux.
The copyrights only have significant value if two conditions hold
1: The company has retained the power to relicense the main parts of the codebase (e.g. they have been very careful about getting "contributor agreements" from any external contributors) and it's affordable* to replace any parts of the codebase that are incompatible with propietry licenses.
2: There is a group of people who will pay to use the code under terms other than those in the opensource license..
* What exactly affordable means depends on the size of the group mentioned in condition 2
Heres the problem,
If you don't allow insurers to price their services based on pre-existing conditions then insurance will become a good deal for those with pre-existing conditions and a poor deal for those without pre-existing conditions. So people without pre-existing conditions won't buy it until/unless they develop a condition. Of course once that happens the price will go up and health insurance will become a poor deal for those with minor pre-existing conditions. Repeat ad-nauseum until health insurance is not an option for most people.
Mandatory insurance combined with not allowing insurance to price their insurance based on pre-existing conditions is basically socialism by the back-door. Of course forcing hospital emergency rooms to take uninsured patients without paying them to do so is also socialism by the back-door.
Not that I think socialism is bad but if it is to be done it should be done by the front door and appear in the governments budgets.
Have you seen how much that costs?
IIRC if you only need one domain on the cert then startssl will do it for free. If you want wildcards or multiple names on the cert then you will have to pay a bit but IIRC it's not horiffically expensive.
The key with traditional landline phones is that once you make a call you get a reserved slice of bandwidth for the duration of the call. That means a known and stable call quality. With VOIP the quality may be very good (sometimes better than traditional landline) but it can be disrupted by other traffic. QOS can mitigate this but it can't really be used on the open internet (so VOIP with QOS is only really useful to large buisnesses who are trying to combine their phone and data infrastructure).
The truly bizarre part is they had labs where actual innovative and clever things were done all the time but the business side had no ability to actually do anything useful with the tech.
It's the cash cow mindset, when a buisness has one or two things that bring in the vast majority of their profit they will often avoid for as long as possible anything that could possiblly disprut that source of profit. Even if they could potentially get more profit from the new thing in the future.
Frankly i'm surprised we got DSL at all.
The trouble is even if you win going to court is both expensive and a massive waste of time.
So people don't just comply with their understanding of the regulations, they put a large safety margin between themselves and any chance of being seen not to comply with the regulations.
For example the site you linked talked about "When a primary function area is altered, the path of travel to the altered area and the amenities serving the altered area must be made accessible, unless the costs for these changes are disproportionate. The costs for the added alterations are considered disproportionate if they exceed 20 percent of the cost of the overall alteration.", it also says that "There is no inspection process for the ADA. The building owner as well as those responsible for design and construction are responsible for complying with the ADA."
I'm not an american but there sounds to me like there is a lot of room for interpretation in there, who gets to decide what make the call as to what an alteration would have cost and as-such whether that cost was dispropotionate? will they have to defend that descision in a court of law?
C++'s complexity comes from the way it's designed. Rather than giging you things like smart pointers, strings etc as language builttins they give you the tools to build them yourself then build them in the standard libraries. Those tools are undoubtablly complex but most of the time application programmers don't need to worry about them. They can just use the smart pointers, strings etc that the libraries have built for them.
It really doesn't make much difference to an application programmer whether smart pointers are implemented as a library using complex language features or as a language feature in their own right.
What I really don't like about C++ is it's lack of a proper unit system which allows the compiler to avoid compiling the same shit loads of times and which allows the compiler to automatically work out what needs to be rebuilt. Yeah there are precompiled headers and tools like depcomp (from automake) which try to solve this but it's obvious they are hacks to make up for the lack of something that is a language feature in other languages (such as borland sytle pascal).
though snprintf has it's own hazard. It won't directly cause a buffer overflow but it will leave your buffer (which would normally contain a null-terminated string) unterminated so if you don't manually check for failure and either go down an error handling path or manually terminate the truncated string you are likely to get buffer overflows further down the code.
microsoft's _snprintf_s fixes this but I don't think it's supported outside their tools/libraries.