Damian Conway Sex and Violence, technical and social lessons from the perl6 development process Damian thinks a title lke this is often ether going to be suit/marketing talk or academic talks about the mythical man month Damian thinks he needs a different approach so he does not start dreaming about Xena, Lara Croft and himself or some variation there of. Python not a direct competitor, python too restricted compared to perl accroding to damien Part 1, why did they bother to do perl 6 Funny stuff, but then he is a great speaker 18th December 1987 Perl 1.000 released It came out with most of the stuff we recognise in perl today A year later perl 2.000 released A year later perl 3.000 released 21 May 1991 Perl 4.000 released 2000 Perl 6 announced Part 2 What have we learned 7 technical lessons, 7 social lessons social lesson 1, you have no idea how long the project will take no way to estimate turnover of participants, or a wayto estimate the size of the workforce Social lesson 2 Have pithy goals far too easy to stray from objectives easiest way to keep on track was to have slogas "Easy things to be trivial and hard things to be easy" "Optomise for the common case" "Huffmanise" "Find the unifying metaphor" "All is fair if you predeclare" "Larry gets the colon", Almost every language feature suggested used the colon to use that feature. So they eventually said no submissions using hte colon character were accepted. Technical lesson 1 One of the most useful things, what do people really do with perl? they analysed cpan for what people did all the time, and made things easier if they were done often (huffmanising) Social lesson 3 Volunteer are voluntary amazin how many benficiaries forget it. Be nice to your vluteers, appreciate them Social lesson 4 Oly contrubutors get a say No right to say they should, maybe get the right to say we shoulgn the only definite right is to say I should, thus work on the project to have any input into it. Make valid contributions Social lesson 5Endless supply of people willing to bitch and moan ortell you how badly you are doing, how misgided the whole project is. You will never please the haters, they are born whiners anyway, you may pleasantly surprise some people who have not used it in the past. Damian found and loved inkscape at the conference. For example perl 6 criticism, its a hoax and if itsnt then I am leaving perl forever. Why is it taking so long was the second year. Third year, I dont like the direction they are taking. year 4, why hasnt there been more progress this year. 5th year, its a scam. sixth year, Perl 6 has missed its niche. Their secret plan rename it Perl on Rails. Techncal lesson 2 Design first, the desireis always to code immediately. Desire so strong some people make a religion out of it. But prototyping approach almmost always produces an organic design. Technical lesson 3 Stay humble Larry was humbe enough to back out of many initial decisions Technical lesson 4 Dont ask for submissions, they got too many ignored the likes of XML instead of POD make a print operator (<> for read, so >text< for print) conservation of feature density, can not put anything into the lanuguage unless 2 things come in, the new thing has to do three really cool things ~~ was put in as a generalised comparison operator, which also gave the a switch statement, it also gave them OO exception handling Technical lesson 5 Kill all the theorists, type thery for example is too ocomplex for most people Technical lesson 6 Dont let the users design Even if they are great at using your software, do not discount them entirely, so use themir suggestions and work out what they want detect the underlying problem a user has, come up with a sane solution to a problem they have the reflexive operatr, s .= works on arrays or objects, Data .= sort does sort in place Social lesson 5 report on the progress often, they did not Tecnical lesson 7 discipline and project management are good things have to back up and write own information in developers headds Signle poiints of failure are disasters make sure a benevolent dictator is backed up social lesson 7 Just do it, do not talk about it, argue about it, boast about it, just get working on it, keep doing it. Ignore the outsiders Do not give up, if ou believe in the project, keep going at it Biggest mistake Shoudl not have called it perl 6, call it something else, could reduce the expectations reduces FUD Biggest success, not rushing, too many projects rush