I teach a class to non-hacker non-lawyers which includes a little bit on free software / open source / copyleft. I keep wanting to illustrate the difference between a "liberal" license like the BSD license and a copyleft license like GPL by showing what Apple did with BSD to get iOS and what Google did with Linux to get Android. Unfortunately, I haven't been able to disentangle a clean story.
Is there a clean story? If so, how can I find it? Or is Apple's being as liberal as they want with BSD and Google's pushing the to limits of copyleft (or beyond) with Android making it truly too messy to use as an illustrative case?
Sorry to hear it sounds bad, because I think that's the best explanation if not the best sales pitch. While people play for different reasons, I think the most common element is the fun of playing make-believe. The trouble is for many people (including me) as we grow up we lose some of our ability to do ad-hoc make-believe. We want to be able to have some restrictions on what's appropriate in a given game, how to get around the [I shot you! Did not!] problem and so forth. So, D&D-style RPG's provide enough framework that we can play make-believe even with more adult minds.
We can argue for a lot of the benefits that come from that (good social interaction, creativity, maps, math, blah-blah) and all of that's fun, but why RPG's instead of book clubs, poker games, or jam sessions? I think it's the make-believe.
First, it might not be important, but the title bugs me: statistics isn't a natural science.
I teach economics, and the biggest thing I note about my students is the heterogeneity in mathematical capabilities. I always need to keep on my toes about who I'm boring because they can handle that math in their sleep and who I'm leaving in the dust so that they're not even close to learning what I'm talking about. In a hard science program, there will presumably be some of that, but a bit more pressure on the low end which will make the students more homogeneous.
What to teach depends partly on whether you imagine this is a terminal class for a lot of the students. If so, teach general ideas which they'll be able to dredge up 6 years from now when the ideas are relevant, because they'll forget the details. If it's not a terminal class, try to teach some of the example applications which they might see in future classes.
Behavioral economics is pretty hip these days. Pulling examples from that literature (such as the popular stuff by Dan Ariely) is likely to interest a lot of students and be directly applicable for psychology students (since lots of behavioral economics is more about psychology than economics).
I have a strong bias about how statistics should be taught these days, though I've never tried it and could be proven wrong. I think that statistics should be taught as (1) probability theory, followed by (2) monte carlo methods, and then follow that up with more classical statistics and nonparametric tests. Monte carlo testing gets at the core concepts of what rejecting a null hypothesis means, what confidence is all about, etc and it's straightforward to do these days. Once the ideas are clear, then you could move on to the standard t-tests and so forth. But if you start with monte carlo, the students will grok the notion without knowing calculus as opposed to spending all their time trying to memorize formulas.
...just opened up a dead LCD monitor, and replaced 4 capacitors, and it's good as new. That was HOT (in the figurative and literal sense, since there was soldering involved). She wasn't wearing heels or make-up while doing it, however. And it wasn't really science, I guess, since the electronics is a bit of a sideline for her, but anyway...
There's nothing wrong with sexy scientists, but if you're trying to show sexy scientists, you should try to show how doing the "STEM" (wow, I hate that abbreviation) is sexy itself.
A bunch of commenters are saying that superhero comics are too grown-up now. That's an obvious real trend but Marvel at least--and probably DC, though I don't know for sure--knows there's a market and aims at it. So there are versions of Marvel comics aimed specifically at younger kids which have more funny stuff, less angst and less blood and grittiness. But they still have the same characters.
Your best way to test these is to go to a local comic shop (if you have one). There will likely be a kid's-comics section and helpful, knowledgeable folks, and you can browse a few different ones.
That said: 1) I think the superhero comics aimed at the kids are total schlock (but my 8-year-old loves them). 2) I think comics are a read-to-yourself medium, not a read-to-your-kid medium, and would stick to reading other kinds of stories to your kid.
I've been on the reading-to side of that, and I hated reading comics to my kid, for exactly the reasons you mention. It's (when well-done) a nonlinear medium that doesn't take well to a linear reading. So, in our house, I would happily read lots of things with my kids, but left comics as a "you have to read it yourself" medium, and possibly therefore encouraging reading skills.
How much per hour does it cost to get an OK Cobol programmer to come fix stuff versus an OK Java programmer?
There are lots of possible reasons for the disparity, including, as others have pointed out, that a "line of code" doesn't mean the same thing between Cobol and Java, but if it's going to be reported in dollars instead of hours, then it needs to be made meaningful by the difference in costs for the two languages.
"Economic models are always wrong", geez. So, when interest rates fell people didn't take out more loans? When unemployment is high, overall demand doesn't tend to drop? When cellphone service is provided by just a few carriers prices don't rise?
*Some* models are very sensitive to their parameterizations. And yeah, they'll be really tricky. Lots of economic models are really, basically, correct.
At my university, I own the copyright by default, but when I tried to either do it public domain OR creative commons, the office which handles such things flipped out. They weren't angry or anything, they just didn't get it. It came down to doing things the usual way OR being late submitting and so not graduating. So, I have a typical copyright on my thesis.
However, now that I think about it (and you could do the same thing), since it's my copyright, there's nothing to stop me (or you) from re-publishing with a Creative Commons license after-the-fact. Hmmm....
It turns out not to be needed for our kid, who loves a bunch of different books, but I tried to motivate learning to read by nearly refusing to read him comics. That wasn't because I think they're bad, but because comics (once that use the medium well, at least) don't read aloud easily. As the reader, you constantly have to be deciding the chronology of which sounds/thoughts/voices come when, and whether to whisper, and when to say, "and Batman's thinking..." or whatever. And then you've got maybe a bunch of panels with no words at all, and do you say anything for them or let the pictures speak for themselves?
Blah, It's just not fun for me reading those aloud. So, they're reserved for solo reading.
OK, maybe overstated. But I think it was 2 years ago or so that I saw Conan O'Brien interviewing Quentin Tarantino, and WOW, those are two enormous nerds. From what I've seen of Tarantino, he can't help himself, and maybe O'Brien can but instead makes fun of himself for it. These are the people defining pop culture, and they're us (well, except they're a lot better at it than me, but...)
Stick to short stories, exclusively or almost exclusively. Short stories have always been the medium which best captures SF, gets to the point the, "here's an idea, let's explore it some" nature of SF, while when things expand out to novel size it loses some of that (in spite of many great SF novels).
Plus, doing short stories makes it easier to keep people's attention, and less likely to lose people who've fallen a few chapters behind in the reading. Either you've read the story or you haven't. Changing stories day by day / week by week / whatever means you can get different styles in that appeal to different kids and break any monotony. It also gives you more flexibility to change your mind about course direction in the middle-if it seems like a good time to change direction, you don't have to finish slogging through the current novel first.
Also, you're not going to be able to cover the span of what you'd like to cover in one class, you'll have to leave things out. If you go with novels, you'll have to leave more things out.
It seems to me that one doesn't need to solve some grand philosophical question to resolve this. The developer who objects would be within their rights to simply take the source, build the app, and put it at the App Store for free. No?
If you've got a good (meaning clear and predictive) mathematical model and it turns out wrong, then that's also useful to know. If you've got intuitions and stories and pictures of data which seem good when explained by the right person, and those turn out wrong--well, that could just be that you were misunderstanding, couldn't it? Can you prove that the approach was wrong when it's fuzzy?
Math will always have an important place in finance, because it can be understood and judged. The alternative way to judge results is by looking at who makes the most money, but even that can be very noisy and misleading at times.
The question isn't whether math will be important in finance. It's (a) whether the particular tools/models commonly used will change a little or a lot, and (b) whether the people using the models will have the understanding and wisdom to apply them only as appropriate.
(a) means if you want to be involved in financial math, try to be broad enough that very different approaches won't be completely alien to you, and (b) means you should study some economics / psychology / business so you can connect the models to the reality.
I fall into the scared shit about global climate change thinking we should get on the ball with a vengeance to try to fix it camp.
BUT, I don't entirely trust my own motivations in this regard. Partly it's risk-aversion--if there's a reasonable chance of the nasty predictions, it's worth trying to fix it. Largely it's accepting that the authorities who understand this shit mostly agree. I DON'T understand this shit.
That's different than, for instance, the role of vaccines in causing autism. There's really clear data that it doesn't. Even if I don't understand the mechanisms, all I have to trust is the studies weren't fraudulent and I can be quite comfortable that getting my kids vaccinated won't give them autism.
I haven't seen the equivalent for climate change. Our sample size is awfully small, even if you try to convince yourself different eras are separate samples.
I might be missing something, but if I am, I REALLY want someone to point it out to me, and to the skeptics. Where's the climate change equivalent of the vaccine studies?
No, it's not funny to be the person who's third in a series of quoting "dead parrot" skit lines. Yes, it's only about showing how "in" you are. That's what everyone spends most of their time doing in social situations. What, did you think conversation was about exchanging information?
This isn't a "geeky" thing to do. Jazz buffs would be talking to each other about some recording they both know by heart. Sports fans would be high-fiving when telling each other that the Packers won. It's just what people do.
The DNC list worked wonderfully for me for a bit more than a year. Now, I average about two spam calls per day. I can try to complain, but first I have to get the spammers to identify themselves, which for some reason they aren't eager to do.
When I sent an email to the feds (using the link at the site) asking them what to do when I couldn't get the phone # or company name, it took them a month to respond with a form email which didn't say anything about my question.
This is just about the worst approach to configuration I can think of.
Good: UI tools provided to configure behaviors ("Control Panel") Bad: must use a text editor to modify a config file Ugly: must edit the source code of the application itself That makes perfect sense, but I still think it's wrong (in this context).
It's a DIY thing. Being able to futz with the code makes what you've done more personal and gives you a whole lot more understanding of what's going on. It also shows you that you can mess with things beyond the 10 options a pop-up box might give you.
You can walk an 11-year-old through the process, but is there any chance an 11-year-old would discover how to do it without your guidance? Depends on the kid. This kid, no, they've never done any programming at all. Being "walked through the process" is how you start to get familiar with almost anything, whether you're walked through by a book, teacher, or another kid.
You're right. Hacking Sugar can be a mess because it's nearly impossible to figure out what does what. Comments and documentation would be really nice, and the overall model that Sugar uses for things like communication is pretty baffling.
I might be looking too much at the bright side. Having it all in Python makes it much more feasible that it *will* be hackable. Comments can be added to Python, and documentation can be put on a wiki, but making changes to make C++ easily hackable after the fact--I don't think that would have been possible.
Once you can figure out a bit of code, though, making changes is easy. I've modified Block Party to make it playable in eBook mode: http://wiki.laptop.org/go/User:Tdang/XO_Setup#Adding_Right-Hand_Gamepad_keys_to_BlockParty
These are things which are feasible with Python. I think it's worth it. I read your page, and I agree that we aren't looking to make every kid a programmer. But I think it's worth a lot to have kids get familiar enough with programming that they don't see it all as "magic box!".
This turns out to be a matter of taste, for users like us. And I'll defer to the folks using them with kids to decide what's better with the kids.
Anyway, a lot of what you say as negatives, I like. I don't know this for sure, but I attribute the slowness to two things about Sugar--it's in Python, and it's handling communication. The communication is a major feature. The fact that it's in Python means it's hackable.
So, for instance, you & I (and almost everyone else) gets annoyed with the frame popping up when the cursor gets near the corner. It's an easy fix in the code to stop that from happening. I can go in with a non-programmer 11-year-old, and show them how to change that! That's so cool.
I've also decided that Journal rocks (well, OK, rocks except for some bugginess). I'd switch to that over my directory tree on my Mac if it was possible.
The reason they went with Gnash in the first place was because the Adobe Flash player needs more CPU power than the entire damn machine had available. Flash runs fine on my XO. It's easy to install it and use it instead of Gnash.
The lack of Flash is a really stupid argument against OLPC design, though. I don't think there's anything--legal or technical--to keep a school or country from mass-installing Flash for themselves, even if OLPC doesn't.
I teach a class to non-hacker non-lawyers which includes a little bit on free software / open source / copyleft. I keep wanting to illustrate the difference between a "liberal" license like the BSD license and a copyleft license like GPL by showing what Apple did with BSD to get iOS and what Google did with Linux to get Android. Unfortunately, I haven't been able to disentangle a clean story.
Is there a clean story? If so, how can I find it? Or is Apple's being as liberal as they want with BSD and Google's pushing the to limits of copyleft (or beyond) with Android making it truly too messy to use as an illustrative case?
Sorry to hear it sounds bad, because I think that's the best explanation if not the best sales pitch. While people play for different reasons, I think the most common element is the fun of playing make-believe. The trouble is for many people (including me) as we grow up we lose some of our ability to do ad-hoc make-believe. We want to be able to have some restrictions on what's appropriate in a given game, how to get around the [I shot you! Did not!] problem and so forth. So, D&D-style RPG's provide enough framework that we can play make-believe even with more adult minds.
We can argue for a lot of the benefits that come from that (good social interaction, creativity, maps, math, blah-blah) and all of that's fun, but why RPG's instead of book clubs, poker games, or jam sessions? I think it's the make-believe.
First, it might not be important, but the title bugs me: statistics isn't a natural science.
I teach economics, and the biggest thing I note about my students is the heterogeneity in mathematical capabilities. I always need to keep on my toes about who I'm boring because they can handle that math in their sleep and who I'm leaving in the dust so that they're not even close to learning what I'm talking about. In a hard science program, there will presumably be some of that, but a bit more pressure on the low end which will make the students more homogeneous.
What to teach depends partly on whether you imagine this is a terminal class for a lot of the students. If so, teach general ideas which they'll be able to dredge up 6 years from now when the ideas are relevant, because they'll forget the details. If it's not a terminal class, try to teach some of the example applications which they might see in future classes.
Behavioral economics is pretty hip these days. Pulling examples from that literature (such as the popular stuff by Dan Ariely) is likely to interest a lot of students and be directly applicable for psychology students (since lots of behavioral economics is more about psychology than economics).
I have a strong bias about how statistics should be taught these days, though I've never tried it and could be proven wrong. I think that statistics should be taught as (1) probability theory, followed by (2) monte carlo methods, and then follow that up with more classical statistics and nonparametric tests. Monte carlo testing gets at the core concepts of what rejecting a null hypothesis means, what confidence is all about, etc and it's straightforward to do these days. Once the ideas are clear, then you could move on to the standard t-tests and so forth. But if you start with monte carlo, the students will grok the notion without knowing calculus as opposed to spending all their time trying to memorize formulas.
I don't watch Mythbusters, so I have no opinion of Byron. But those pictures of Ellsworth working the circuit boards are HOT.
...just opened up a dead LCD monitor, and replaced 4 capacitors, and it's good as new. That was HOT (in the figurative and literal sense, since there was soldering involved). She wasn't wearing heels or make-up while doing it, however. And it wasn't really science, I guess, since the electronics is a bit of a sideline for her, but anyway...
There's nothing wrong with sexy scientists, but if you're trying to show sexy scientists, you should try to show how doing the "STEM" (wow, I hate that abbreviation) is sexy itself.
A bunch of commenters are saying that superhero comics are too grown-up now. That's an obvious real trend but Marvel at least--and probably DC, though I don't know for sure--knows there's a market and aims at it. So there are versions of Marvel comics aimed specifically at younger kids which have more funny stuff, less angst and less blood and grittiness. But they still have the same characters.
Your best way to test these is to go to a local comic shop (if you have one). There will likely be a kid's-comics section and helpful, knowledgeable folks, and you can browse a few different ones.
That said:
1) I think the superhero comics aimed at the kids are total schlock (but my 8-year-old loves them).
2) I think comics are a read-to-yourself medium, not a read-to-your-kid medium, and would stick to reading other kinds of stories to your kid.
I've been on the reading-to side of that, and I hated reading comics to my kid, for exactly the reasons you mention. It's (when well-done) a nonlinear medium that doesn't take well to a linear reading. So, in our house, I would happily read lots of things with my kids, but left comics as a "you have to read it yourself" medium, and possibly therefore encouraging reading skills.
The US is one of the few countries, unlike Europe, where social mobility is very possible.
You apparently missed the news: Harder for Americans to Rise From Lower Rungs
How much per hour does it cost to get an OK Cobol programmer to come fix stuff versus an OK Java programmer?
There are lots of possible reasons for the disparity, including, as others have pointed out, that a "line of code" doesn't mean the same thing between Cobol and Java, but if it's going to be reported in dollars instead of hours, then it needs to be made meaningful by the difference in costs for the two languages.
O wait, no I don't.
"Economic models are always wrong", geez. So, when interest rates fell people didn't take out more loans? When unemployment is high, overall demand doesn't tend to drop? When cellphone service is provided by just a few carriers prices don't rise?
*Some* models are very sensitive to their parameterizations. And yeah, they'll be really tricky. Lots of economic models are really, basically, correct.
At my university, I own the copyright by default, but when I tried to either do it public domain OR creative commons, the office which handles such things flipped out. They weren't angry or anything, they just didn't get it. It came down to doing things the usual way OR being late submitting and so not graduating. So, I have a typical copyright on my thesis.
However, now that I think about it (and you could do the same thing), since it's my copyright, there's nothing to stop me (or you) from re-publishing with a Creative Commons license after-the-fact. Hmmm....
Ben Goldacre talks about these "equation for the perfect X" stories which turn up regularly: formula for fame, equation for a neckline, perfect "wiggle", a particularly bad propagator.
It's bullshit non-science to generate publicity.
It turns out not to be needed for our kid, who loves a bunch of different books, but I tried to motivate learning to read by nearly refusing to read him comics. That wasn't because I think they're bad, but because comics (once that use the medium well, at least) don't read aloud easily. As the reader, you constantly have to be deciding the chronology of which sounds/thoughts/voices come when, and whether to whisper, and when to say, "and Batman's thinking..." or whatever. And then you've got maybe a bunch of panels with no words at all, and do you say anything for them or let the pictures speak for themselves?
Blah, It's just not fun for me reading those aloud. So, they're reserved for solo reading.
OK, maybe overstated. But I think it was 2 years ago or so that I saw Conan O'Brien interviewing Quentin Tarantino, and WOW, those are two enormous nerds. From what I've seen of Tarantino, he can't help himself, and maybe O'Brien can but instead makes fun of himself for it. These are the people defining pop culture, and they're us (well, except they're a lot better at it than me, but...)
Stick to short stories, exclusively or almost exclusively. Short stories have always been the medium which best captures SF, gets to the point the, "here's an idea, let's explore it some" nature of SF, while when things expand out to novel size it loses some of that (in spite of many great SF novels).
Plus, doing short stories makes it easier to keep people's attention, and less likely to lose people who've fallen a few chapters behind in the reading. Either you've read the story or you haven't. Changing stories day by day / week by week / whatever means you can get different styles in that appeal to different kids and break any monotony. It also gives you more flexibility to change your mind about course direction in the middle-if it seems like a good time to change direction, you don't have to finish slogging through the current novel first.
Also, you're not going to be able to cover the span of what you'd like to cover in one class, you'll have to leave things out. If you go with novels, you'll have to leave more things out.
It seems to me that one doesn't need to solve some grand philosophical question to resolve this. The developer who objects would be within their rights to simply take the source, build the app, and put it at the App Store for free. No?
If you've got a good (meaning clear and predictive) mathematical model and it turns out wrong, then that's also useful to know. If you've got intuitions and stories and pictures of data which seem good when explained by the right person, and those turn out wrong--well, that could just be that you were misunderstanding, couldn't it? Can you prove that the approach was wrong when it's fuzzy?
Math will always have an important place in finance, because it can be understood and judged. The alternative way to judge results is by looking at who makes the most money, but even that can be very noisy and misleading at times.
The question isn't whether math will be important in finance. It's (a) whether the particular tools/models commonly used will change a little or a lot, and (b) whether the people using the models will have the understanding and wisdom to apply them only as appropriate.
(a) means if you want to be involved in financial math, try to be broad enough that very different approaches won't be completely alien to you, and (b) means you should study some economics / psychology / business so you can connect the models to the reality.
A rule for assigning a value to something--when you come right down to it, an arbitrary rule, even if it turns out to be useful--is not a law. Sheesh!
I fall into the scared shit about global climate change thinking we should get on the ball with a vengeance to try to fix it camp.
BUT, I don't entirely trust my own motivations in this regard. Partly it's risk-aversion--if there's a reasonable chance of the nasty predictions, it's worth trying to fix it. Largely it's accepting that the authorities who understand this shit mostly agree. I DON'T understand this shit.
That's different than, for instance, the role of vaccines in causing autism. There's really clear data that it doesn't. Even if I don't understand the mechanisms, all I have to trust is the studies weren't fraudulent and I can be quite comfortable that getting my kids vaccinated won't give them autism.
I haven't seen the equivalent for climate change. Our sample size is awfully small, even if you try to convince yourself different eras are separate samples.
I might be missing something, but if I am, I REALLY want someone to point it out to me, and to the skeptics. Where's the climate change equivalent of the vaccine studies?
Yeah, so geeks are human.
No, it's not funny to be the person who's third in a series of quoting "dead parrot" skit lines. Yes, it's only about showing how "in" you are. That's what everyone spends most of their time doing in social situations. What, did you think conversation was about exchanging information?
This isn't a "geeky" thing to do. Jazz buffs would be talking to each other about some recording they both know by heart. Sports fans would be high-fiving when telling each other that the Packers won. It's just what people do.
It's not geeks that suck. It's humanity.
The DNC list worked wonderfully for me for a bit more than a year. Now, I average about two spam calls per day. I can try to complain, but first I have to get the spammers to identify themselves, which for some reason they aren't eager to do.
When I sent an email to the feds (using the link at the site) asking them what to do when I couldn't get the phone # or company name, it took them a month to respond with a form email which didn't say anything about my question.
No glowing review here.
Good: UI tools provided to configure behaviors ("Control Panel")
Bad: must use a text editor to modify a config file
Ugly: must edit the source code of the application itself That makes perfect sense, but I still think it's wrong (in this context).
It's a DIY thing. Being able to futz with the code makes what you've done more personal and gives you a whole lot more understanding of what's going on. It also shows you that you can mess with things beyond the 10 options a pop-up box might give you. You can walk an 11-year-old through the process, but is there any chance an 11-year-old would discover how to do it without your guidance? Depends on the kid. This kid, no, they've never done any programming at all. Being "walked through the process" is how you start to get familiar with almost anything, whether you're walked through by a book, teacher, or another kid.
You're right. Hacking Sugar can be a mess because it's nearly impossible to figure out what does what. Comments and documentation would be really nice, and the overall model that Sugar uses for things like communication is pretty baffling.
I might be looking too much at the bright side. Having it all in Python makes it much more feasible that it *will* be hackable. Comments can be added to Python, and documentation can be put on a wiki, but making changes to make C++ easily hackable after the fact--I don't think that would have been possible.
Once you can figure out a bit of code, though, making changes is easy. I've modified Block Party to make it playable in eBook mode:
http://wiki.laptop.org/go/User:Tdang/XO_Setup#Adding_Right-Hand_Gamepad_keys_to_BlockParty
These are things which are feasible with Python. I think it's worth it. I read your page, and I agree that we aren't looking to make every kid a programmer. But I think it's worth a lot to have kids get familiar enough with programming that they don't see it all as "magic box!".
This turns out to be a matter of taste, for users like us. And I'll defer to the folks using them with kids to decide what's better with the kids.
Anyway, a lot of what you say as negatives, I like. I don't know this for sure, but I attribute the slowness to two things about Sugar--it's in Python, and it's handling communication. The communication is a major feature. The fact that it's in Python means it's hackable.
So, for instance, you & I (and almost everyone else) gets annoyed with the frame popping up when the cursor gets near the corner. It's an easy fix in the code to stop that from happening. I can go in with a non-programmer 11-year-old, and show them how to change that! That's so cool.
I've also decided that Journal rocks (well, OK, rocks except for some bugginess). I'd switch to that over my directory tree on my Mac if it was possible.
The lack of Flash is a really stupid argument against OLPC design, though. I don't think there's anything--legal or technical--to keep a school or country from mass-installing Flash for themselves, even if OLPC doesn't.