It comes and goes. The Romans had indoor plumbing. They didn't have toilet paper, but they had a sponge that sat in a stream of water that you would use and then put back (and hope had been sitting there long enough to be clean when you picked it up). They also had under-floor heating, which many homes today lack.
On the other hand, in the French Royal Court at Versailles in the late 17th century, which was regarded as the height of decadence in Europe (to a level that counts as one of the causes of the French revolution), had only 9 functioning toilets, reserved for the king. Everyone else used chamberpots, which were emptied as infrequently as once per week. Peasants certainly didn't have indoor plumbing (although they probably didn't in Rome either - most of what we think of as Roman life was really the life of the patrician class, the original 1%).
The wheel has been reinvented quite successfully several times. The most successful reinvention was the addition of spokes using the tensile, rather than compressive, strength of the material for support. A modern bike wheel is more similar to an arch than a pillar in terms of support, while earlier wheels are the opposite - you can make a bike wheel using elastic bands as spokes. Pneumatic tyres probably also count as reinventing the wheel.
The problem is not that people try to reinvent the wheel, the problem is that they try to make it square.
Really? Because the wheelbarrows that were in common use a little over a century ago had pretty crappy wheels - just a circle of wood. Apparently people found them useful...
Really? So where can I download the GoogleFS in-kernel filesystem that they use on several million machines worldwide? Oh, right, I can't because they don't distribute it.
I'm thinking of the modifications for their Android OS which they distribute, rather than their server/filesystem modifications for their own own in-house use.
As I said in the post that you replied to which used Google as the example, companies that use GPL'd software in-house and don't distribute it are not required to share their changes.
Oh, and you're wrong about the GNUstep runtime--it's included as part of the gnustep libraries (probably libgnustep-base).
I just had a look on packages.debian.com. The gnustep-base package links against the GCC Objective-C runtime (package named libobjc2, which is confusing to a lot of people because libobjc2 is the informal name for the GNUstep Objective-C [2] runtime, while the Debian libobjc2 package actually contains GCC's libobjc.so.3). The GNUstep runtime is not packaged at all.
Add to that: 3D brings in limitations from the real world. I worked with a project a few years ago that used a 3D interface for displaying pictures online. You could walk around a virtual art gallery with the pictures all on the walls. What was the difference between this and a simple page of pictures? Several things:
First, there was the issue of distortion. You had to stand directly in front of a picture to see it without distortion from perspective. Zooming was also harder - you could zoom in and out by walking towards the picture, but panning up and down was not possible without implementing some kind of levitation mechanic.
Second, there was the problem of spacial location. By restricting yourself to 3D space, rather than the n-dimensional space of arbitrary hyperlinks, you increase the distance between any two points in the site. Even with 20 pictures per floor and instant teleporting elevators, users spent a lot longer walking between pictures than they spent navigating a 2D site.
For me, one of the main benefits of online shopping over a real shop is that I can search and get a list of items matching my criteria that I can quickly compare. 3D adds nothing to this, and takes several things away.
I can't speak for the grandparent, but I seem to have drifted into compiler implementation over the last few years. There's a massive skills shortage here. And this isn't a local thing - I work on project for companies all around the world and they all have difficulty finding competent people.
IMO, if you're writing or releasing software, the GPL is preferrable. You benefit from patches, even being able to take those people don't intentionally contribute
Speaking as someone who has released well over a hundred thousand lines of BSDL code, I strongly disagree. The GPL rarely forces people to contribute. It doesn't, for example, force Google to contribute back any of the changes they made to the Linux kernel. 90% of all software is developed for in-house use and either GPL or BSDL code forces people to contribute changes back when used in this way. More importantly, the fact that code is GPL'd is often a show stopper for companies wanting to use it. The GPL is a complex legal document and a lot of companies are nervous about it, especially GPLv3. They will happily take BSDL code and, when it's cheaper than maintaining a fork, they will push fixes and new features upstream.
Their numbers are still skewed. For example, consider the difference between GCC (GPL'd) and LLVM / Clang (BSDL). Let's ignore multiple versions (the study did, I hope!) and just look at the core packages for the same level of support. For GCC, you have:
gcc-base
gcc-locales
cpp
gcc-doc
gcc-multilib
gobjc
gobjc-multilib
gobjc++
g++
gcc
Some of these (e.g. gcc) are metapackages, but the others are just parts of gcc. In contrast, for LLVM/Clang, we have:
clang
llvm
libllvm
And that's not even counting the number of GCC-based cross-compile versions, which are not needed with clang (which doesn't need recompiling for each target and works as a cross compiler out of the box). If you count all of those packages, then you'll see about ten times as many GPL'd projects as BSDL projects, yet really we just have one of each - gcc and clang - unless you could count LLVM and clang as separate projects (since they're relatively independent and other projects use one but not the other), in which case you have twice as many BSDL projects as GPL.
And, while we're on the subject of compilers, Debian has three packages for the GCC Objective-C runtime library (GPL'd) but no package for the more capable GNUstep Objective-C runtime (MIT licensed).
I don't know how representative this is of Debian, since I don't use it, but in relation to projects that I contribute Debian is package counts are heavily GPL-biased.
I had a really great maths teacher when I was 9. Sadly, she died of cancer a year later. She made the point that mathematicians were lazy. The entire point of most of maths is to reduce the amount of work that you have to do and to solve problems in the simplest way possible. Maths isn't hard, maths is for avoiding doing stuff that's hard...
Less folks for my kids to compete against when they finish university.
Your kids will either be in some vaguely intellectual occupation, in which case they will be competing with people worldwide, or they will be in purely menial jobs, in which case they will be competing with robots. More importantly, however, most of the people that they will be collaborating closely with will be people geographically close to them. If they have no competent local collaborators, then they will find it very difficult to compete with teams in china and the rest of the world.
That actually seems like a pretty good idea. You're paying $200/month to live in a $1.5m house - pretty cheap rent! - and after five years you either move or remortgage. Sounds great to me...
If you do that, then you should also provide error bars. When you do that, you see that the error margin in your nice elegant curve is so great that it's basically meaningless. Overfitting works when you have a strong correlation. When you have data like this, all it does is provide an example for How to Lie With Statistics.
I was actually really surprised to hear that you can stop mathematics at the end of middleschool and that you can go into section like computer science without doing a bachelor in maths.
That depends on the university. The reason why some don't require it is that none of the maths covered in the A-level syllabus is really relevant for computer science. At A-Level I learned how to calculate orbital paths and work out the trajectory of a rocket launched from the surface of a planet. Great for people doing engineering and physics, but there was no discrete maths at all. No game theory, no graph theory, no number theory, so little set theory that there may as well have been none. Certainly nothing like lambda calculus. The only real advantage that A-Level maths give you in a computer science degree is that you are still in the habit of working with mathematical notation when you get to university.
There was a case in the national lottery in the UK some years ago where so many people guessed six numbers correctly that the payout for guessing five was more than the payout for guessing all six. The total was greater, but only one person got just five, and the amount allocated to jackpot winners divided by the number of jackpot winners was lower.
If a calculator is any help, then it's not maths, it's arithmetic. Another good rule of thumb: if the question doesn't start 'prove that...' then it's probably not maths either.
Is that necessarily wrong? Can you calculate optimal the way of giving change (using the smallest number of notes / coins) from any given number faster than a machine?
My 8086 booted in about 20 seconds, however my school's BBC B and my friends' C64s booted in about a second. As the grandparent said: click, beep! The system software was all in ROM, so there was no delay to load it, it was just mapped directly into the system address space and the processor had to execute under 1KB of code to get to the initial prompt.
Services like this, and the French minitel (which was popular) weren't relying on client computers so much as dumb terminals. You dialed in to a remote machine and it just pushed text to your screen and took text from your keyboard. I am not aware of any dumb terminal that took more than a second to turn on in the '80s (although earlier ones required a few seconds for the CRT to warm up). The time it took to dial the modem and establish a connection was almost certainly longer.
Spoken like someone who has never left the USA. The house where I grew up had 4 acres of its own garden and was largely surrounded by farmland. I went to school in the nearest city, my father worked there, and my mother worked in a smaller town. Neither had to drive more than 20 minutes to work each day. Lots of space and short commutes are not mutually exclusive. Now I live near the edge of the centre of a small town. I have a twenty minute walk to the countryside, where I can easily spend a day walking without encountering any habitation in one direction and a 15 minute walk to the city centre on the other. If I don't feel like walking that far, the beach is 10 minutes walk away and a large park is just across the road.
It comes and goes. The Romans had indoor plumbing. They didn't have toilet paper, but they had a sponge that sat in a stream of water that you would use and then put back (and hope had been sitting there long enough to be clean when you picked it up). They also had under-floor heating, which many homes today lack.
On the other hand, in the French Royal Court at Versailles in the late 17th century, which was regarded as the height of decadence in Europe (to a level that counts as one of the causes of the French revolution), had only 9 functioning toilets, reserved for the king. Everyone else used chamberpots, which were emptied as infrequently as once per week. Peasants certainly didn't have indoor plumbing (although they probably didn't in Rome either - most of what we think of as Roman life was really the life of the patrician class, the original 1%).
The wheel has been reinvented quite successfully several times. The most successful reinvention was the addition of spokes using the tensile, rather than compressive, strength of the material for support. A modern bike wheel is more similar to an arch than a pillar in terms of support, while earlier wheels are the opposite - you can make a bike wheel using elastic bands as spokes. Pneumatic tyres probably also count as reinventing the wheel.
The problem is not that people try to reinvent the wheel, the problem is that they try to make it square.
Really? Because the wheelbarrows that were in common use a little over a century ago had pretty crappy wheels - just a circle of wood. Apparently people found them useful...
Erm, it does. Which is why they did it.
Really? So where can I download the GoogleFS in-kernel filesystem that they use on several million machines worldwide? Oh, right, I can't because they don't distribute it.
I'm thinking of the modifications for their Android OS which they distribute, rather than their server/filesystem modifications for their own own in-house use.
As I said in the post that you replied to which used Google as the example, companies that use GPL'd software in-house and don't distribute it are not required to share their changes.
Oh, and you're wrong about the GNUstep runtime--it's included as part of the gnustep libraries (probably libgnustep-base).
I just had a look on packages.debian.com. The gnustep-base package links against the GCC Objective-C runtime (package named libobjc2, which is confusing to a lot of people because libobjc2 is the informal name for the GNUstep Objective-C [2] runtime, while the Debian libobjc2 package actually contains GCC's libobjc.so.3). The GNUstep runtime is not packaged at all.
I work freelance, so I don't have a manager. Per hour, I'd be very surprised if I made less than the salaried people authorising my payment though.
Add to that: 3D brings in limitations from the real world. I worked with a project a few years ago that used a 3D interface for displaying pictures online. You could walk around a virtual art gallery with the pictures all on the walls. What was the difference between this and a simple page of pictures? Several things:
First, there was the issue of distortion. You had to stand directly in front of a picture to see it without distortion from perspective. Zooming was also harder - you could zoom in and out by walking towards the picture, but panning up and down was not possible without implementing some kind of levitation mechanic.
Second, there was the problem of spacial location. By restricting yourself to 3D space, rather than the n-dimensional space of arbitrary hyperlinks, you increase the distance between any two points in the site. Even with 20 pictures per floor and instant teleporting elevators, users spent a lot longer walking between pictures than they spent navigating a 2D site.
For me, one of the main benefits of online shopping over a real shop is that I can search and get a list of items matching my criteria that I can quickly compare. 3D adds nothing to this, and takes several things away.
I can't speak for the grandparent, but I seem to have drifted into compiler implementation over the last few years. There's a massive skills shortage here. And this isn't a local thing - I work on project for companies all around the world and they all have difficulty finding competent people.
IMO, if you're writing or releasing software, the GPL is preferrable. You benefit from patches, even being able to take those people don't intentionally contribute
Speaking as someone who has released well over a hundred thousand lines of BSDL code, I strongly disagree. The GPL rarely forces people to contribute. It doesn't, for example, force Google to contribute back any of the changes they made to the Linux kernel. 90% of all software is developed for in-house use and either GPL or BSDL code forces people to contribute changes back when used in this way. More importantly, the fact that code is GPL'd is often a show stopper for companies wanting to use it. The GPL is a complex legal document and a lot of companies are nervous about it, especially GPLv3. They will happily take BSDL code and, when it's cheaper than maintaining a fork, they will push fixes and new features upstream.
Some of these (e.g. gcc) are metapackages, but the others are just parts of gcc. In contrast, for LLVM/Clang, we have:
And that's not even counting the number of GCC-based cross-compile versions, which are not needed with clang (which doesn't need recompiling for each target and works as a cross compiler out of the box). If you count all of those packages, then you'll see about ten times as many GPL'd projects as BSDL projects, yet really we just have one of each - gcc and clang - unless you could count LLVM and clang as separate projects (since they're relatively independent and other projects use one but not the other), in which case you have twice as many BSDL projects as GPL.
And, while we're on the subject of compilers, Debian has three packages for the GCC Objective-C runtime library (GPL'd) but no package for the more capable GNUstep Objective-C runtime (MIT licensed).
I don't know how representative this is of Debian, since I don't use it, but in relation to projects that I contribute Debian is package counts are heavily GPL-biased.
Check how many packages GCC is in Debian...
Either that, or come and wipe us out for memetic pollution...
That's why I took computer science. We only need to count to 1...
I had a really great maths teacher when I was 9. Sadly, she died of cancer a year later. She made the point that mathematicians were lazy. The entire point of most of maths is to reduce the amount of work that you have to do and to solve problems in the simplest way possible. Maths isn't hard, maths is for avoiding doing stuff that's hard...
Less folks for my kids to compete against when they finish university.
Your kids will either be in some vaguely intellectual occupation, in which case they will be competing with people worldwide, or they will be in purely menial jobs, in which case they will be competing with robots. More importantly, however, most of the people that they will be collaborating closely with will be people geographically close to them. If they have no competent local collaborators, then they will find it very difficult to compete with teams in china and the rest of the world.
That actually seems like a pretty good idea. You're paying $200/month to live in a $1.5m house - pretty cheap rent! - and after five years you either move or remortgage. Sounds great to me...
If you do that, then you should also provide error bars. When you do that, you see that the error margin in your nice elegant curve is so great that it's basically meaningless. Overfitting works when you have a strong correlation. When you have data like this, all it does is provide an example for How to Lie With Statistics.
I was actually really surprised to hear that you can stop mathematics at the end of middleschool and that you can go into section like computer science without doing a bachelor in maths.
That depends on the university. The reason why some don't require it is that none of the maths covered in the A-level syllabus is really relevant for computer science. At A-Level I learned how to calculate orbital paths and work out the trajectory of a rocket launched from the surface of a planet. Great for people doing engineering and physics, but there was no discrete maths at all. No game theory, no graph theory, no number theory, so little set theory that there may as well have been none. Certainly nothing like lambda calculus. The only real advantage that A-Level maths give you in a computer science degree is that you are still in the habit of working with mathematical notation when you get to university.
I can't imagine how anyone could call themselves a physicist without having the ability to analyse the damn data that they're collecting
Clearly you have not spent much time reading arxiv.org...
There was a case in the national lottery in the UK some years ago where so many people guessed six numbers correctly that the payout for guessing five was more than the payout for guessing all six. The total was greater, but only one person got just five, and the amount allocated to jackpot winners divided by the number of jackpot winners was lower.
If a calculator is any help, then it's not maths, it's arithmetic. Another good rule of thumb: if the question doesn't start 'prove that...' then it's probably not maths either.
Is that necessarily wrong? Can you calculate optimal the way of giving change (using the smallest number of notes / coins) from any given number faster than a machine?
My 8086 booted in about 20 seconds, however my school's BBC B and my friends' C64s booted in about a second. As the grandparent said: click, beep! The system software was all in ROM, so there was no delay to load it, it was just mapped directly into the system address space and the processor had to execute under 1KB of code to get to the initial prompt.
Services like this, and the French minitel (which was popular) weren't relying on client computers so much as dumb terminals. You dialed in to a remote machine and it just pushed text to your screen and took text from your keyboard. I am not aware of any dumb terminal that took more than a second to turn on in the '80s (although earlier ones required a few seconds for the CRT to warm up). The time it took to dial the modem and establish a connection was almost certainly longer.
Spoken like someone who has never left the USA. The house where I grew up had 4 acres of its own garden and was largely surrounded by farmland. I went to school in the nearest city, my father worked there, and my mother worked in a smaller town. Neither had to drive more than 20 minutes to work each day. Lots of space and short commutes are not mutually exclusive. Now I live near the edge of the centre of a small town. I have a twenty minute walk to the countryside, where I can easily spend a day walking without encountering any habitation in one direction and a 15 minute walk to the city centre on the other. If I don't feel like walking that far, the beach is 10 minutes walk away and a large park is just across the road.
I don't remember hearing about low yield problems. Sony took delivery of quite a few chips ...
The ones Sony got only had 7 of the 8 SPUs working...