From lucychili at gmail.com Wed Mar 7 12:22:40 2007 From: lucychili at gmail.com (Janet Hawtin) Date: Wed, 7 Mar 2007 21:52:40 +1030 Subject: [sapug] competition idea Message-ID: Hi folks There is an idea to have a competition to encourage girls to get into programming and IT. It has been suggested that using python for a competition in schools might be a good way to do this. Wondering if you all have ideas about what kinds of projects and tools might work well for this kind of competition. Ideas welcome Janet From michael.cohen at netspeed.com.au Wed Mar 7 13:44:16 2007 From: michael.cohen at netspeed.com.au (Michael Cohen) Date: Wed, 7 Mar 2007 23:44:16 +1100 Subject: [sapug] competition idea In-Reply-To: References: Message-ID: <20070307124416.GR660@OpenWrt> Janet, This is a great idea, and I think python is a good first language to learn too. I usually find that people get motivated most by projects that are practical and produce results quickly. I dont personally like things that are too competitive - some people would always be able to invest more time than me. Maybe a web based project would be good - its easy to get somewhere quickly and the possibilities are truely endless. Maybe use python or php (python is obviously better - but mod_php is easier to set up than mod_python). mod_python has a parsed python handler which you can use to embed python code in html kind of like php. Unfortunately this (like php in general) encourages sloppy coding (tying up code with presentation) but its easier for people to get started in. I think prizes should be awarded for creativity as well - so web design should be nice because people can really get stuck into the graphic design side of it as well. Maybe a bit of lobbying can get sponsor companies to help award more prizes - maybe web design firms could use some of the winning entries / award vacation employment etc. Otherwise maybe wxpython/pygtk/pyqt for some gui stuff (i dont normally work with GUIs so i have no idea which would be simpler to get going). Michael. On Wed, Mar 07, 2007 at 09:52:40PM +1030, Janet Hawtin wrote: > Hi folks > > There is an idea to have a competition to encourage girls to get into > programming and IT. It has been suggested that using python for a > competition in schools might be a good way to do this. > > Wondering if you all have ideas about what kinds of projects and tools > might work well for this kind of competition. > > Ideas welcome > > Janet > _______________________________________________ > sapug mailing list > sapug at python.org > http://mail.python.org/mailman/listinfo/sapug > From steve at adam.com.au Thu Mar 8 04:31:10 2007 From: steve at adam.com.au (stephen white) Date: Thu, 8 Mar 2007 14:01:10 +1030 Subject: [sapug] competition idea In-Reply-To: References: Message-ID: <115FFA1A-0369-4164-9CBB-36568BE3787B@adam.com.au> On 07/03/2007, at 9:52 PM, Janet Hawtin wrote: > There is an idea to have a competition to encourage girls to get into > programming and IT. It has been suggested that using python for a > competition in schools might be a good way to do this. I don't think Python is a good choice since it's mainly text, and has very little in the way of graphics and sound without some complicated libraries. I would have suggested Flash and ActionScript, except that's also far too complicated for confidence boosting results. Ironically, even Objective C with embedded Smalltalk and Cocoa is much simpler than either of the above two, even though I also wouldn't recommend this option as it's too complicated as well. It starts easy but extending crosses too many different domains. Something like this combination of Scheme and Cocoa would be great, except I doubt that you have Macs: http://impromptu.moso.com.au/ Unfortunately, I can't think of anything I would suggest for Windows or Linux as those environments suck major shit for multimedia, sinc you have to jump in the deep end for any results. The simplest environment is ironically just C and OpenGL plus a bit of GLUT. I think you've got a snowball's chance in hell of attracting interest in IT and programming without a decent setup, so you should throw your PCs away (and delete Python while you're at it!). -- steve at adam.com.au From Matthew.Naylor at adpro.com.au Fri Mar 9 00:54:10 2007 From: Matthew.Naylor at adpro.com.au (Matthew Naylor) Date: Fri, 9 Mar 2007 10:24:10 +1030 Subject: [sapug] competition idea Message-ID: <21E1E750F7A66649A99576799021BBD859093B@zulu.adpro.com.au> Janet, I am not sure what age group your programmers are, but what about using "pygame" and running a competition to produce games for preschool children? I am sure it's been done before but it has a very practical outcome for future parents (both male and female). To help things along you could provide a working game as a template so that the students can immediately see how their changes affect results. The challenge for you will be to prevent or detect plagiarism of any of the many existing games that can be downloaded! With the same pygame framework, if you are up to the task yourself, you could knock up a robot/car/flight simulator with an API that the kids can interface to and control. Their task might be to automatically navigate some terrain based on feedback from your simulated sensors. Matthew Naylor From lucychili at gmail.com Fri Mar 9 10:11:52 2007 From: lucychili at gmail.com (Janet Hawtin) Date: Fri, 9 Mar 2007 19:41:52 +1030 Subject: [sapug] competition idea In-Reply-To: <21E1E750F7A66649A99576799021BBD859093B@zulu.adpro.com.au> References: <21E1E750F7A66649A99576799021BBD859093B@zulu.adpro.com.au> Message-ID: On 3/9/07, Matthew Naylor wrote: > Janet, > > I am not sure what age group your programmers are, but > what about using "pygame" and running a competition to > produce games for preschool children? I am sure it's > been done before but it has a very practical outcome > for future parents (both male and female). Thanks Matthew I am going to have a go at a few of these myself and see if I can think of ways to make it simple to use in a learning situation. Pygame, Squeak, Blender, Enlightenment, there must be something we can develop some howtos or tutes for to make something workable. Thanks all for the input, last thing I want to do is make life difficult. Janet From steve at adam.com.au Sat Mar 10 03:36:35 2007 From: steve at adam.com.au (stephen white) Date: Sat, 10 Mar 2007 13:06:35 +1030 Subject: [sapug] competition idea In-Reply-To: References: <21E1E750F7A66649A99576799021BBD859093B@zulu.adpro.com.au> Message-ID: On 09/03/2007, at 7:41 PM, Janet Hawtin wrote: > Pygame, Squeak, Blender, Enlightenment, there must be something we can > develop some howtos or tutes for to make something workable. What? Blender? For beginners?! It looks to me like you're intent on using free software, which makes you a solution in search of a problem. When you front up with these ideas, it's going to be readily apparent that these are not good answers for making IT an attractive and appealing field. Inappropriate avocation -- steve at adam.com.au From steve at adam.com.au Sat Mar 10 03:40:26 2007 From: steve at adam.com.au (stephen white) Date: Sat, 10 Mar 2007 13:10:26 +1030 Subject: [sapug] competition idea In-Reply-To: References: <21E1E750F7A66649A99576799021BBD859093B@zulu.adpro.com.au> Message-ID: <9489B775-5255-4E21-AD1D-91F8B76E07B8@adam.com.au> On 09/03/2007, at 7:41 PM, Janet Hawtin wrote: > Pygame, Squeak, Blender, Enlightenment, there must be something we can > develop some howtos or tutes for to make something workable. What? Blender? For beginners?! It looks to me like you're intent on using free software, which makes you a solution in search of a problem. When you front up with these ideas, it's going to be readily apparent that these are not good answers for making IT an attractive and appealing field. Inappropriate advocation does more damage to the objectives of GNU and free software, as it causes people who are otherwise receptive to examine the proposed solutions and conclude that people are more enthusiastic than the products really warrant. I would advise that you only propose an option when it is a real solution, and I'm not seeing that Python, Blender, Enlightenment or Squeak are valid answers to the problem of making programming appealing to those who haven't experienced it before. Steve. PS. Sorry about the prior message, I was trying to dictionary check and hit deliver! -- steve at adam.com.au From michael.cohen at netspeed.com.au Sat Mar 10 04:22:15 2007 From: michael.cohen at netspeed.com.au (Michael Cohen) Date: Sat, 10 Mar 2007 14:22:15 +1100 Subject: [sapug] competition idea In-Reply-To: <9489B775-5255-4E21-AD1D-91F8B76E07B8@adam.com.au> References: <21E1E750F7A66649A99576799021BBD859093B@zulu.adpro.com.au> <9489B775-5255-4E21-AD1D-91F8B76E07B8@adam.com.au> Message-ID: <20070310032215.GA660@OpenWrt> Stephen, I guess it depends what you are trying to achieve by encouraging people to play with programming. People either enjoy the challenge of making something work and creating something new, or they dont. In reality there is no difference between learning to program and learning how to use a new application - after all even open office has a full programming language built in. Unfortunately 95% of poeople could not care less about it, and only use the functions which are obviously available through menus etc. This brings us to the fundamental issue of are people enclined to create or are they happy to use the program. In many cases people would pick up programming as they are making the transition from users to power users to programmers. That is why so many people use VB, ASP etc because they started off using word/excel whatever, and they wrote a couple of macros and they did a quick gui and it just went on from there. Real programmers (those who are inclined to learn about progamming) already know a set of problems which they are interested in and look for languages/tools/techniques to solve those. For example to do the web problem there is php,python and java to a lesser extent (large learning curve). Some people start off with specialised fields (e.g. maths) and learn languages in those domains first (e.g. matlab/R/octave/python). As people get more experience they realise that all languages are basically turning equivalent so there is no "best" language. Some are just better suited for certain problem domains (and worst for other problem domains). The more problem domains a person has, the more they tend to settle on a language which suits better on the whole. I guess the point of what im saying is that there is definitely a process which one goes through when becoming interested (addicted?) to programming - its a process of empowerment. The more experience you have, the more you can do - which is more rewarding and so on. Sure you can get people to play with toy languages like Visual Basic or PyGame etc as a starting point but very quickly things become very limited - simply because these lanaguages are designed for specific problem domains (VB is designed as a way to script ms office and is very complex to write and especially maintain general purpose code in). In the open source world, there is a very large level of code reuse, and so code tends to be written in languages which are designed to solve a wide range of problems - for example you dont see many people using R as a general purpose language or post script etc. Although it may appear that there is more of a learning curve to get started its actually lower in the long term because you dont tend to hit a capability ceiling very quickly. For example I one used a language called G which is a graphical programming environment for labview - it seems like it makes life easy because you draw your program on a gui instead of an editor - if you do the couple of examples they give in the book its very quick to get going. Unfortunately as soon as you do something just a little bit more involved it gets real messy real quickly (you can generally understand a program drawing as quickly as code so maintainance is horrible). Although its possible to implement anything with this its pretty much a waste of time. Depending of the skills of the target audience, it may be better to aim for simple empowerment first, like power use of open office - write some JS or OO macros to do something simple etc. This simple empowerment allows people to see that computers _can_ be bent to _your_ will. This is the pre-requisite of programming - the imagination of seeing how a program behaves or looks like before you ever wrote it. Michael. On Sat, Mar 10, 2007 at 01:10:26PM +1030, stephen white wrote: > On 09/03/2007, at 7:41 PM, Janet Hawtin wrote: > > Pygame, Squeak, Blender, Enlightenment, there must be something we can > > develop some howtos or tutes for to make something workable. > > What? Blender? For beginners?! > > It looks to me like you're intent on using free software, which makes > you a solution in search of a problem. When you front up with these > ideas, it's going to be readily apparent that these are not good > answers for making IT an attractive and appealing field. > > Inappropriate advocation does more damage to the objectives of GNU > and free software, as it causes people who are otherwise receptive to > examine the proposed solutions and conclude that people are more > enthusiastic than the products really warrant. > > I would advise that you only propose an option when it is a real > solution, and I'm not seeing that Python, Blender, Enlightenment or > Squeak are valid answers to the problem of making programming > appealing to those who haven't experienced it before. > > Steve. > > PS. Sorry about the prior message, I was trying to dictionary check > and hit deliver! > > -- > steve at adam.com.au > > > _______________________________________________ > sapug mailing list > sapug at python.org > http://mail.python.org/mailman/listinfo/sapug > From steve at adam.com.au Sat Mar 10 04:58:23 2007 From: steve at adam.com.au (stephen white) Date: Sat, 10 Mar 2007 14:28:23 +1030 Subject: [sapug] competition idea In-Reply-To: <20070310032215.GA660@OpenWrt> References: <21E1E750F7A66649A99576799021BBD859093B@zulu.adpro.com.au> <9489B775-5255-4E21-AD1D-91F8B76E07B8@adam.com.au> <20070310032215.GA660@OpenWrt> Message-ID: <40A7491B-1AD3-43DD-8768-99431B883C05@adam.com.au> On 10/03/2007, at 1:52 PM, Michael Cohen wrote: > purpose language or post script etc. Although it may appear that > there is more > of a learning curve to get started its actually lower in the long > term because > you dont tend to hit a capability ceiling very quickly. For > example I one used I agree, which is why I use Objective C with OpenGL and Cocoa, along with Smalltalk. This is the simplest and most functional combination of tools that I can find to cover a wide range of requirements - from hardware speed (via ASM in C) to flexible and realtime (scripting layer). I eye other languages like Ruby with some envy for their ease of use, but my overall need is speed where I need it. > Depending of the skills of the target audience, it may be better > to aim for > simple empowerment first, like power use of open office - write > some JS or OO > macros to do something simple etc. This simple empowerment allows > people to > see that computers _can_ be bent to _your_ will. This is the pre- > requisite of The difficulty of using free software for education is that most available (and well written) code is by professionals for professionals, so they're too far up the abstraction ladder. There needs to be a few rungs down for those making the climb... to quickly realise the link between what you want, and seeing it happen. Unfortunately, this mainly belongs in the commercial domain, as money is used to incite professional programmers to create and polish a limited product to the levels where it is appealing to those who are (temporarily) limited. The other problem is too many half-done free solutions for the same problem, so we end up with toolkits like Gtk (bllleeeyyurrch, and I say that as a C programmer so I have every reason for trying to like it), and Qt which has the disadvantages of being commercial where it matters and free where it doesn't matter. In contrast, Cocoa is a single toolkit for the OS X platform, done well and enabling the easy creation of things like Impromptu, as programmer effort can be spent on developing the new features of interest rather than the majority of time being spent re-inventing the wheel. Free software is still in the wheel re-invention stage as there's nobody with enough authority to say "this is what everyone should use"... as Steve Jobs did with Cocoa. For that reason alone, there isn't enough support around free libraries to make them definitive reference material. The disparity is readily apparent as soon as you look at the documentation. With Gtk, I spent a year Googling around at random to find documentation that referred to old versions, trying to extract the parts that were still relevant and going through Gtk source code and struggling against bad decisions deeply buried in their code. I burnt out and nearly stopped programming altogether, and that's speaking as someone who already had the skills trying to be taught to these school aged people. There does need to be a proportionate amount of reward for exerted effort, and using a stable commercial environment gives me the ability to click on any type or constant in my code and immediately access 1GB of professionally written documentation about the exact version of libraries and tools that I'm using. Everything I read is relevant, everything I see is up to date, and nothing that I see is about something that no longer exists (unless flagged as deprecated). So, despite 15 years of free software, I'm forced to conclude that when something matters... you pay for it. Free software is very valuable as raw material, but I'd rather have a screwdriver or a pair of pliers than a raw lump of ore and a Wikipedia page telling me how to refine it. Since education is very important as it creates the next generation (who will hopefully be empowered enough to lovingly take care of us in rest homes as we die!), we need to pay where needed to give them what they need. I would expect very very very very very, and pathologically insane, few programmers if Gtk were used to teach them about computers. I would expect far more, and comparatively sane, programmers resulting from approachable and rewarding environments. The fact that Daryl is completely insane is from trying to build half a computer (Arthur) with a blown up 600MB drive. :) -- steve at adam.com.au From lucychili at gmail.com Sat Mar 10 06:41:31 2007 From: lucychili at gmail.com (Janet Hawtin) Date: Sat, 10 Mar 2007 16:11:31 +1030 Subject: [sapug] competition idea In-Reply-To: <40A7491B-1AD3-43DD-8768-99431B883C05@adam.com.au> References: <21E1E750F7A66649A99576799021BBD859093B@zulu.adpro.com.au> <9489B775-5255-4E21-AD1D-91F8B76E07B8@adam.com.au> <20070310032215.GA660@OpenWrt> <40A7491B-1AD3-43DD-8768-99431B883C05@adam.com.au> Message-ID: I am going to work with some teachers who are currently doing game programming in schools to look at the open source options and see what kinds of things we can do with free languages. Will see how we go. Janet From chris at inetd.com.au Sat Mar 10 08:27:43 2007 From: chris at inetd.com.au (Chris Foote) Date: Sat, 10 Mar 2007 17:57:43 +1030 (CST) Subject: [sapug] competition idea In-Reply-To: <20070310032215.GA660@OpenWrt> References: <21E1E750F7A66649A99576799021BBD859093B@zulu.adpro.com.au> <9489B775-5255-4E21-AD1D-91F8B76E07B8@adam.com.au> <20070310032215.GA660@OpenWrt> Message-ID: On Sat, 10 Mar 2007, Michael Cohen wrote: > Stephen, > I guess it depends what you are trying to achieve by encouraging people to > play with programming. People either enjoy the challenge of making something > work and creating something new, or they dont. Hi Michael. Unfortunately you're just feeding a troll. -- Chris Foote Inetd Pty Ltd T/A HostExpress Web: http://www.hostexpress.com.au Blog: http://www.hostexpress.com.au/drupal/chris Phone: (08) 8410 4566 From chris at inetd.com.au Sat Mar 10 08:27:01 2007 From: chris at inetd.com.au (Chris Foote) Date: Sat, 10 Mar 2007 17:57:01 +1030 (CST) Subject: [sapug] competition idea In-Reply-To: <9489B775-5255-4E21-AD1D-91F8B76E07B8@adam.com.au> References: <21E1E750F7A66649A99576799021BBD859093B@zulu.adpro.com.au> <9489B775-5255-4E21-AD1D-91F8B76E07B8@adam.com.au> Message-ID: On Sat, 10 Mar 2007, stephen white wrote: > On 09/03/2007, at 7:41 PM, Janet Hawtin wrote: >> Pygame, Squeak, Blender, Enlightenment, there must be something we can >> develop some howtos or tutes for to make something workable. > > What? Blender? For beginners?! hmm... you advocated the use of Impromptu[1] for music! [1] http://impromptu.moso.com.au -- Chris Foote Inetd Pty Ltd T/A HostExpress Web: http://www.hostexpress.com.au Blog: http://www.hostexpress.com.au/drupal/chris Phone: (08) 8410 4566 From steve at adam.com.au Sat Mar 10 10:11:02 2007 From: steve at adam.com.au (stephen white) Date: Sat, 10 Mar 2007 19:41:02 +1030 Subject: [sapug] competition idea In-Reply-To: References: <21E1E750F7A66649A99576799021BBD859093B@zulu.adpro.com.au> <9489B775-5255-4E21-AD1D-91F8B76E07B8@adam.com.au> <20070310032215.GA660@OpenWrt> Message-ID: On 10/03/2007, at 5:57 PM, Chris Foote wrote: > Unfortunately you're just feeding a troll. Ah, but what makes me a very good troll is that I'm right. I just say it in a way that makes people want to believe I'm wrong. :) -- steve at adam.com.au From nicholas.samuel at gmail.com Tue Mar 13 01:49:23 2007 From: nicholas.samuel at gmail.com (Samuel Nicholas) Date: Mon, 12 Mar 2007 16:49:23 -0800 Subject: [sapug] competition idea In-Reply-To: References: <21E1E750F7A66649A99576799021BBD859093B@zulu.adpro.com.au> Message-ID: <89e03f2d0703121749i42497323q9a073164f6cd531d@mail.gmail.com> On 09/03/07, stephen white wrote: > On 09/03/2007, at 7:41 PM, Janet Hawtin wrote: > > Pygame, Squeak, Blender, Enlightenment, there must be something we can > > develop some howtos or tutes for to make something workable. > > What? Blender? For beginners?! having tried loads of 3d applications in my lifetime, i find blender to be on par with the learning curve. I really don't understand why it has a reputation for being difficult. its just as confusing as the rest of them to start with. > It looks to me like you're intent on using free software, which makes > you a solution in search of a problem. When you front up with these > ideas, it's going to be readily apparent that these are not good > answers for making IT an attractive and appealing field. > > Inappropriate avocation > > > -- > steve at adam.com.au > > > _______________________________________________ > sapug mailing list > sapug at python.org > http://mail.python.org/mailman/listinfo/sapug > From dt-sapug at handcraftedcomputers.com.au Tue Mar 13 19:32:04 2007 From: dt-sapug at handcraftedcomputers.com.au (Daryl Tester) Date: Wed, 14 Mar 2007 05:02:04 +1030 Subject: [sapug] competition idea In-Reply-To: References: Message-ID: <45F6EE24.5000204@handcraftedcomputers.com.au> Sorry for the late reply. Janet Hawtin wrote: > There is an idea to have a competition to encourage girls to get into > programming and IT. It has been suggested that using python for a > competition in schools might be a good way to do this. Not that this is specifically aimed at women, but there is a "Python in Education" SIG hosted at python.org under that are certainly attempting to address issues of Python in general education, including "non-programmers". > Wondering if you all have ideas about what kinds of projects and tools > might work well for this kind of competition. I would have suggested PyGame, but the last time I used it (6 months ago?) I found it difficult to use for lack of documentation. -- Regards, Daryl Tester