3 ms·
I'm not sure I agree with the premise that a beginning programming language needs to be all that accessible or easy. My boss (I'm a developer on a Data Science
by ianamartin 10y ago
I'm not sure I agree with the premise that a beginning programming language needs to be all that accessible or easy.
My boss (I'm a developer on a Data Science team. And my boss doesn't suck as a developer. But I do the heavy lifting for the team) just put his 6 year old girl in a google code camp for young girls. They started out with assembly, for crying out loud.
That young girl is as engaged and excited as you could ever expect.
I think that we might find over time that involvement in the nerdy things of life really comes down to environment more than it does aptitude.
Could be entirely wrong. But, you know, I'd like to see a theory that was testable before we toss that out completely.
- dragonwriter 10y ago> I'm not sure I agree with the premise that a beginning programming language needs to be all that accessible or easy. It needs to be accessible with the teaching resources (whatever combination of teachers/tutors/mentors, books, or what have you) with which it is exposed to neophytes. Language features can make a big difference in the ease of achieving this, but the right teachers/materials can achieve it with any language.
- shriramkmurthi 10y agoI'm really delighted to hear your boss's daughter is having so much fun. That's a great outcome. I don't expect everyone using Pyret to turn into a professional programmer. In fact, I don't want everyone to do so, because the world also needs electrical engineers and materials scientists and poets and painters and plumbers and everything else. So I'm not out to create a planet full of nothing but nerds (in your sense). But I do think computing is a fundamentally different way of approaching problems. It is not universal, and even where it applies, it is not the only approach. But it's a powerful and new one. I still think nobody has put it better than Abelson and Sussman, who called this “procedural epistemology”. I would like as many people as possible to have access to this epistemology. Bringing computing to a wide population requires designing something that works for them. I don't claim we have the perfect answer; maybe assembly would work well too, though I have serious doubts (but hey, there's an easy way to prove me wrong: I'm not standing in anyone's way…). Over a decade ago, long before “big data” was a thing, I created a course called “Introduction to Computing for Humanities and Social Sciences” that was essentially an intro to big data. It's been a very successful course at Brown, and part of its successes, I believe, was my stubborn adherence to teaching the first month entirely in Excel. That attracted, retained, and empowered a whole group of students who by their own admission did not dream of taking computing. So, the tool does make a difference. Pyret is a tool to tackle our goals. We as a discipline are in the midst of a huge explosion of computing education interest in many countries. A lot of these are _losing track_ of who they are for and what it takes to get there [http://cacm.acm.org/blogs/blog-cacm/200936-qualify-your-quantifiersor-exactly-who-all-is-cs4/fulltext http://cacm.acm.org/blogs/blog-cacm/200936-qualify-your-quan...]. That's a problem we're deep in the midst of trying to address, and Pyret is central to how we are going about it. Others who think they can get to “all” [modulo the above article] can and will take other bets. It's all good so long as they are actually clear about their goals and then honestly evaluate them later.