Open source hobbyist devs are too rebellious to go for contracts
Is this actually true for any of the open source projects that have users? In most cases, the developers are entirely happy to work on the code for money, and in the case of larger projects many of them do full time. The problem is that a contract to fix a single bug is hard. This is why bug bounties administered via a simple mechanism are nice.
You're assuming that you'll use the same environment for debug and release builds. It's fairly common to use -O0 or -O1 for debug builds so that you get the fast turn-around, but -O2 or -O3 for release builds so you get the faster execution. It doesn't matter if the release build takes a lot longer to compile, because it's not going to be part of an iterative compile-test-debug cycle (at least, not for many iterations). There are some exceptions. For example, Apple strongly discourages developers (kernel developers, at least, not sure about the rest) from running code with debugging instrumentation enabled because it makes it easy for them to blame their build for slowdowns and not fix them, and by the time you get close to release everyone's introduced a few small performance regressions that all add up.
30,000 lines of code is a tiny project. I have codebases I wrote myself that are larger. Anything developed by a team is likely to be at least an order of magnitude larger. You're also comparing Fortran to C++, so you get a much faster compile because Fortran doesn't encourage large compile-time code generation in the way C++ templates do, which make parsing very slow, and makes alias analysis trivial, which makes a lot of optimisations easier.
Any chance of posting the code somewhere? I can well believe 8 hours for a C++ source file (technically, parsing C++ is a non-computable problem in the general case and there are some nice examples of fairly small C++ files where parsing and template instantiation will never terminate in a fully correct compiler, although in practice you'll hit stack limits), but for C it sounds quite improbable because parsing C is just not that complicated. The only thing I can think of is that you have a lot of nested macros (for accurate error reporting, you keep track of all macro instantiations so you can give helpful diagnostics. GCC 4.4 didn't do this), or lots of deeply nested scopes so that symbol resolutions are very slow. Or possibly a mixture of the two.
NewEgg also sells assembled machines. Want to take a guess at what proportion of their total sales each make up? If you don't believe me, go and look up the numbers. Last ones I read, well under 5% of all computers sold ever received an after-market upgrade, and most of those were just RAM upgrades.
When you're talking about a market with a billion or so sales every year, it's not surprising that there are companies that do well catering to a fraction of a percent of the total market, but that doesn't mean that they're statistically relevant to the overall shape of the market.
You are of course correct that desktop sales have slowed, but the question becomes, "how many people are just upgrading their desktops rather than replacing them?"
No it doesn't. Desktop upgrades were always a tiny niche for hobbyists.
That's why he's telling you to vote for a third party candidate, even if it's a write in. Your candidate almost certainly won't win, but now the winner will have one more vote against them and find it that little bit harder to claim that they have a mandate. It's easy to claim that you represent the people when 25% vote for you, 20% vote for you, and 55% don't bother to vote. It's much harder when 25% vote for you, 20% vote for the other guy, and 10% vote for write ins. Now only 45% of those that bothered to vote voted for you, not 55%.
I'd actually be happy with a quite small array of batteries that would power a DC main in my house for LED lighting and charging electronic devices. The big energy consuming appliances (fridge, washing machine, and so on) could stay on AC, but I'd love to have a separate DC main for all of the things that want to consume DV, and avoid generating DC, converting it to AC to transmit it a few tens of metres, and then converting it back into DC inefficiently at the socket.
Having the $10K isn't necessarily required for the person wanting to use the solar array. There are companies here that will install a solar array for free and give you the power you use for free and make money based on feeding the power you don't use back into the grid. Unfortunately, they're only viable because of the (quite large) government subsidies. About a fifth of the money they make comes from the electricity company paying for the power and the rest from the government paying them to produce it. Solar panels have been improving hugely over the last decade, but they still need a factor of four or five improvement in cost per Watt to be economically feasible for most people (and good luck keeping the price down as demand spikes), which is likely quite a few years away.
Wind is often a lot more feasible. A relatively small wind generator can give you 1-3kW for about a tenth of the price of the solar array. The problem is that the supply is even less reliable than the solar panels. An electricity grid needs either some big stable supplies or a lot of diversity and overprovisioning to be able to keep up with demand spikes.
I don't think it's overstated. The building I work in was designed in the late '90s, on the assumption that everyone would have a 17-19" CRT on their desk. Over the next decade, everyone switched to LCDs. Now everyone has a 24-30" TFT on their desk, and the heating system is struggling because the amount of waste heat from the displays is far less than the building was designed for.
Oh, and I think you're somewhat overestimating the efficiency of electron guns in your description of CRTs. If you could just stick a current across the phosphor and make it glow, that would be great, but the energy loss from heating up a cathode, sticking it near a magnet, and letting the electrons dump energy into the phosphor is huge.
Really? I didn't find any mention of open source on their site, except for an 'also open!' regarding Android 4.2. Do they ship a GPU with no proprietary drivers? What about the baseband processor?
For those not in the UK, that was a real ad campaign run by the Tories in the '90s. It is generally credited with losing them the election: when the only message you have is that your opponent is secretly Satan, you're not looking very electable.
I'm sure Intel is deeply disappointed to only have 60% of the GPU market. The board and shareholders must be crying all the way to the bank.
The problem with your line of reasoning is that it's exactly what SGI said in the mid '90s. That other companies were welcome to the low-end commodity GPU market, they'd keep the profitable high end graphical workstation market. Unfortunately for them, the cheaper parts kept improving and gradually passed a lot of people's thresholds for 'good enough'. Intel sells 4 GPUs for every one that nVidia sells and 3 for every one that AMD sells. That gives the a lot of money to spend on R&D.
Another relevant object lesson is FireWire vs USB. FireWire was better by almost every objective measure, except that it was a discrete part that added $1 to the cost of a motherboard, whereas USB came for free with the southbridge chip. For most people, the comparatively slow speed and high CPU usage of USB were still good enough. FireWire was relegated to a niche. FireWire was still faster than USB (in practice, if not on paper), and FireWire 800 was a lot faster, but by then the number of boards shipping with FireWire was small and so it lost on economies of scale and that $1 became closer to $5 for the smaller production runs. No one had to make a choice between FireWire or USB, they chose between USB or FireWire and USB, and for most users the extra cost of adding FireWire wasn't worth it. The same choice is happening today: do you want an Intel GPU, or an Intel GPU and an nVidia GPU? If the former is good enough, then why would you bother with both. In both cases, Intel gets some money for their R&D department to spend on the next generation. nVidia only does if you opt for both.
I don't know if you've noticed, but desktops are a niche market now. We're almost five years passed the point where laptop sales passed desktop sales, and that trend hasn't changed. Laptop parts are where the high volumes are and that's where the big profits come from. Ask SGI some time how focussing on the high end and ignoring the mass market works as a strategy in the GPU business.
There's likely to be a long plateau. Past a certain resolution, there's no visible difference and so you have a maximum size for a frame buffer. Past another threshold, there's no benefit in increasing geometry complexity because every polygon is smaller than a pixel in the final image, so you don't see any difference. No one cares about turning up the detail settings to maximum if they can't see that it's better. Then there are some small improvements, such as stereoscopic displays, but they just double the frame buffer size and do nothing much to the geometry complexity or lighting.
Rendering to a volumetric display (something that you can look inside, like a tank, or something that will fill the entire room with a projection) massively increases the size of the frame buffer and also the bandwidth required. Currently, the bandwidth for such displays is most of the problem. Even with a fairly low resolution 1024x1024x1024 with 24-bit colour, you're talking 65GB/s just to get 25 frames per second, which makes the 10Gb/s of Thunderbolt look somewhat anaemic.
I wonder if you could increase the NASA budget by describing these things as mechanisms for keeping track of large fusion reactors to check for signs of weaponisation...
That's sometimes blurry though. For older mobile phone operating systems, I wasn't the customer of the software vendor, but the hardware vendor that sold me the phone was. It's not obvious to someone buying an Android phone that the manufacturer is not the customer of the OS vendor, and therefore that they are not indirectly the customer. After all, they're handing over money for the device, they'd expect to be the customer.
The way Android is structured, some apps are in a read-write filesystem and can be uninstalled, some are in 'ROM' (a read-only filesystem in the flash that is only modified when you do a firmware update) and so can't be uninstalled. As of Android 4, they can be hidden from the UI, but they're still there (and there have been instances where 'disabled' apps still had exploitable vulnerabilities).
I'd love to be able to buy an Android tablet with an absolute minimum of things in the ROM image and everything else installed in an upgradeable form.
The second part is the problem. Sales tax in the USA can be charged by states, counties and cities. You may be paying sales tax to three nested jurisdictions with a cumulative rate of almost 20%, or you may be paying no sales tax at all, depending on where things take place.
That's not really true. Both sides had rifles. The British army had more artillery, but didn't have enough support infrastructure to effectively deploy it. About the only thing that the British did have was better training. And most of the British army was occupied in Europe - the USA was not considered a serious priority until long after it was too late.
When you're talking about completely independent jurisdictions then the tax is covered by trade treaties. You either need to pay import / export duties, or there is a treaty that waives them. Taxes in one jurisdiction don't apply to people in another. The situation in the EU, for example, is that member countries agree to waive all import duties on goods from each other, but in exchange they charge VAT on all sales, even those destined for export, at the same rate, and those rates are harmonised such that they don't differ enough between member states to provide a strong economic incentive to buy things from the cheapest one.
When you're talking about a single jurisdiction, it's somewhat different. The states in the USA are explicitly (by the constitution) prohibited from imposing import duties on things coming from other states, so there's no simple way for an individual states to work around the race to the bottom that happens when one state starts having lower sales taxes than another.
even though I enjoy it immensely, I still cannot fathom the existence of twitter.
Your link answers it:
It's like texting for people who don't have any friends to text
Open source hobbyist devs are too rebellious to go for contracts
Is this actually true for any of the open source projects that have users? In most cases, the developers are entirely happy to work on the code for money, and in the case of larger projects many of them do full time. The problem is that a contract to fix a single bug is hard. This is why bug bounties administered via a simple mechanism are nice.
You're assuming that you'll use the same environment for debug and release builds. It's fairly common to use -O0 or -O1 for debug builds so that you get the fast turn-around, but -O2 or -O3 for release builds so you get the faster execution. It doesn't matter if the release build takes a lot longer to compile, because it's not going to be part of an iterative compile-test-debug cycle (at least, not for many iterations). There are some exceptions. For example, Apple strongly discourages developers (kernel developers, at least, not sure about the rest) from running code with debugging instrumentation enabled because it makes it easy for them to blame their build for slowdowns and not fix them, and by the time you get close to release everyone's introduced a few small performance regressions that all add up.
30,000 lines of code is a tiny project. I have codebases I wrote myself that are larger. Anything developed by a team is likely to be at least an order of magnitude larger. You're also comparing Fortran to C++, so you get a much faster compile because Fortran doesn't encourage large compile-time code generation in the way C++ templates do, which make parsing very slow, and makes alias analysis trivial, which makes a lot of optimisations easier.
Any chance of posting the code somewhere? I can well believe 8 hours for a C++ source file (technically, parsing C++ is a non-computable problem in the general case and there are some nice examples of fairly small C++ files where parsing and template instantiation will never terminate in a fully correct compiler, although in practice you'll hit stack limits), but for C it sounds quite improbable because parsing C is just not that complicated. The only thing I can think of is that you have a lot of nested macros (for accurate error reporting, you keep track of all macro instantiations so you can give helpful diagnostics. GCC 4.4 didn't do this), or lots of deeply nested scopes so that symbol resolutions are very slow. Or possibly a mixture of the two.
NewEgg also sells assembled machines. Want to take a guess at what proportion of their total sales each make up? If you don't believe me, go and look up the numbers. Last ones I read, well under 5% of all computers sold ever received an after-market upgrade, and most of those were just RAM upgrades.
When you're talking about a market with a billion or so sales every year, it's not surprising that there are companies that do well catering to a fraction of a percent of the total market, but that doesn't mean that they're statistically relevant to the overall shape of the market.
You are of course correct that desktop sales have slowed, but the question becomes, "how many people are just upgrading their desktops rather than replacing them?"
No it doesn't. Desktop upgrades were always a tiny niche for hobbyists.
That's why he's telling you to vote for a third party candidate, even if it's a write in. Your candidate almost certainly won't win, but now the winner will have one more vote against them and find it that little bit harder to claim that they have a mandate. It's easy to claim that you represent the people when 25% vote for you, 20% vote for you, and 55% don't bother to vote. It's much harder when 25% vote for you, 20% vote for the other guy, and 10% vote for write ins. Now only 45% of those that bothered to vote voted for you, not 55%.
Let's give guns to a bunch of untrained overpaid mouthbreathers with power trip issues!
Yes, I've also wondered about the wisdom of allowing Americans to have guns.
Sorry, couldn't resist a setup like that...
Yup, your gun will keep you safe from the guy next to you with a bomb...
I'd actually be happy with a quite small array of batteries that would power a DC main in my house for LED lighting and charging electronic devices. The big energy consuming appliances (fridge, washing machine, and so on) could stay on AC, but I'd love to have a separate DC main for all of the things that want to consume DV, and avoid generating DC, converting it to AC to transmit it a few tens of metres, and then converting it back into DC inefficiently at the socket.
Having the $10K isn't necessarily required for the person wanting to use the solar array. There are companies here that will install a solar array for free and give you the power you use for free and make money based on feeding the power you don't use back into the grid. Unfortunately, they're only viable because of the (quite large) government subsidies. About a fifth of the money they make comes from the electricity company paying for the power and the rest from the government paying them to produce it. Solar panels have been improving hugely over the last decade, but they still need a factor of four or five improvement in cost per Watt to be economically feasible for most people (and good luck keeping the price down as demand spikes), which is likely quite a few years away.
Wind is often a lot more feasible. A relatively small wind generator can give you 1-3kW for about a tenth of the price of the solar array. The problem is that the supply is even less reliable than the solar panels. An electricity grid needs either some big stable supplies or a lot of diversity and overprovisioning to be able to keep up with demand spikes.
Oh, and I think you're somewhat overestimating the efficiency of electron guns in your description of CRTs. If you could just stick a current across the phosphor and make it glow, that would be great, but the energy loss from heating up a cathode, sticking it near a magnet, and letting the electrons dump energy into the phosphor is huge.
Really? I didn't find any mention of open source on their site, except for an 'also open!' regarding Android 4.2. Do they ship a GPU with no proprietary drivers? What about the baseband processor?
For those not in the UK, that was a real ad campaign run by the Tories in the '90s. It is generally credited with losing them the election: when the only message you have is that your opponent is secretly Satan, you're not looking very electable.
I'm sure Intel is deeply disappointed to only have 60% of the GPU market. The board and shareholders must be crying all the way to the bank.
The problem with your line of reasoning is that it's exactly what SGI said in the mid '90s. That other companies were welcome to the low-end commodity GPU market, they'd keep the profitable high end graphical workstation market. Unfortunately for them, the cheaper parts kept improving and gradually passed a lot of people's thresholds for 'good enough'. Intel sells 4 GPUs for every one that nVidia sells and 3 for every one that AMD sells. That gives the a lot of money to spend on R&D.
Another relevant object lesson is FireWire vs USB. FireWire was better by almost every objective measure, except that it was a discrete part that added $1 to the cost of a motherboard, whereas USB came for free with the southbridge chip. For most people, the comparatively slow speed and high CPU usage of USB were still good enough. FireWire was relegated to a niche. FireWire was still faster than USB (in practice, if not on paper), and FireWire 800 was a lot faster, but by then the number of boards shipping with FireWire was small and so it lost on economies of scale and that $1 became closer to $5 for the smaller production runs. No one had to make a choice between FireWire or USB, they chose between USB or FireWire and USB, and for most users the extra cost of adding FireWire wasn't worth it. The same choice is happening today: do you want an Intel GPU, or an Intel GPU and an nVidia GPU? If the former is good enough, then why would you bother with both. In both cases, Intel gets some money for their R&D department to spend on the next generation. nVidia only does if you opt for both.
I don't know if you've noticed, but desktops are a niche market now. We're almost five years passed the point where laptop sales passed desktop sales, and that trend hasn't changed. Laptop parts are where the high volumes are and that's where the big profits come from. Ask SGI some time how focussing on the high end and ignoring the mass market works as a strategy in the GPU business.
There's likely to be a long plateau. Past a certain resolution, there's no visible difference and so you have a maximum size for a frame buffer. Past another threshold, there's no benefit in increasing geometry complexity because every polygon is smaller than a pixel in the final image, so you don't see any difference. No one cares about turning up the detail settings to maximum if they can't see that it's better. Then there are some small improvements, such as stereoscopic displays, but they just double the frame buffer size and do nothing much to the geometry complexity or lighting.
Rendering to a volumetric display (something that you can look inside, like a tank, or something that will fill the entire room with a projection) massively increases the size of the frame buffer and also the bandwidth required. Currently, the bandwidth for such displays is most of the problem. Even with a fairly low resolution 1024x1024x1024 with 24-bit colour, you're talking 65GB/s just to get 25 frames per second, which makes the 10Gb/s of Thunderbolt look somewhat anaemic.
I wonder if you could increase the NASA budget by describing these things as mechanisms for keeping track of large fusion reactors to check for signs of weaponisation...
Jailing members of foreign governments is typically quite difficult until after you've won a war against them.
That's sometimes blurry though. For older mobile phone operating systems, I wasn't the customer of the software vendor, but the hardware vendor that sold me the phone was. It's not obvious to someone buying an Android phone that the manufacturer is not the customer of the OS vendor, and therefore that they are not indirectly the customer. After all, they're handing over money for the device, they'd expect to be the customer.
The way Android is structured, some apps are in a read-write filesystem and can be uninstalled, some are in 'ROM' (a read-only filesystem in the flash that is only modified when you do a firmware update) and so can't be uninstalled. As of Android 4, they can be hidden from the UI, but they're still there (and there have been instances where 'disabled' apps still had exploitable vulnerabilities).
I'd love to be able to buy an Android tablet with an absolute minimum of things in the ROM image and everything else installed in an upgradeable form.
The second part is the problem. Sales tax in the USA can be charged by states, counties and cities. You may be paying sales tax to three nested jurisdictions with a cumulative rate of almost 20%, or you may be paying no sales tax at all, depending on where things take place.
That's not really true. Both sides had rifles. The British army had more artillery, but didn't have enough support infrastructure to effectively deploy it. About the only thing that the British did have was better training. And most of the British army was occupied in Europe - the USA was not considered a serious priority until long after it was too late.
When you're talking about completely independent jurisdictions then the tax is covered by trade treaties. You either need to pay import / export duties, or there is a treaty that waives them. Taxes in one jurisdiction don't apply to people in another. The situation in the EU, for example, is that member countries agree to waive all import duties on goods from each other, but in exchange they charge VAT on all sales, even those destined for export, at the same rate, and those rates are harmonised such that they don't differ enough between member states to provide a strong economic incentive to buy things from the cheapest one.
When you're talking about a single jurisdiction, it's somewhat different. The states in the USA are explicitly (by the constitution) prohibited from imposing import duties on things coming from other states, so there's no simple way for an individual states to work around the race to the bottom that happens when one state starts having lower sales taxes than another.