On 20/12/13 07:41 PM, Aemilianus Kehler wrote:
Good price for a language plaqued with vulnerabilities :p

Thanks for trolling with your tongue out. :p

We sort of earned it. First we put out a very wide open call for expressions of interest and got a lot more responses from people like yourself who already have a programming background who are looking for something more topical (which we invited).

Python* (my favourite!), got the most mentions.

But, Sara and I always had a bias for starting with a beginner course though. Our chat with Brittany and Alex on Tuesday convinced us ignore the feedback out of a sense that half the members and a large amount of non-members out there don't have any formal programming background and are ready to try a small course in it. (even though Alex and Brittany themselves would also like something more topical)

Help us scratch our itch to start with beginner material by bringing the neophytes you know to us.

Once we've done that we'll be a little more confident in our teaching abilities and move on to offering something more specific to existing programmers (probably python).

Such a future course will be more appealing to those of you advanced enough to understand that embedding a special "sandboxed" programmable environment in a web browser (e.g. Sun/Oracle Java, Direct X, Adobe Flash, Adobe Acrobat, Microsoft Silverlight...), regardless of what programming language is involved is a bad idea.

Thank Guido that nobody ever tainted Python's reputation by "sandbox" embedding it into a web browser and popularizing it as a "must-download!" to turn it into the first (bad) impression of Python for the masses.

I think Sara was just a little sensitive to your troll attempt getting this all off to a bad start, see:
http://www.popsci.com/science/article/2013-09/why-were-shutting-our-comments

New programmers don't understand the distinction between
language, standard libraries, execution environment (web browser "sandbox"), and independent implementations thereof. To those not versed in the distinction, it isn't obvious that the core java language and minimal use of standard libraries (stdio) used in a beginner programming course are unrelated to the epic security fails of web browser sandboxes.

Your troll makes me laugh, but I worry that some newbies are going see it and ask if they should really start with the bad java language that everyone (me included) loves to hate.

And, I don't think new programmers truly appreciate the idea that choice of first language doesn't matter until they actually move on to their second language and discover how much knowledge about programming they are taking with them. The word "language" contributes somewhat to this, human languages are very hard to learn after puberty -- an epic struggle to learn French as an adult is only going to help you a little when you move on to tackling Mandarin.

Even learning a new programming paradigmn is an easier leap.

Which brings me to the Python* note I had above.

If I ever teach a course using Python, it will be called "everything you should be doing with list comprehensions, generator expressions, dictionary comprehensions, and set comprehensions".

You aspiring pythonists shouldn't wait for that. Go off and read about these. You can find them spread out in the standard python2 and python3 tutorials
http://docs.python.org/2/tutorial/
http://docs.python.org/3/tutorial/

or look at this introduction:
http://www.diveintopython3.net/comprehensions.html

Here's a simple example from my successful efforts to crack Ian's Bitcoin encryption password:
https://gist.github.com/markjenkins/7036740

I wrote:

def is_all_ascii(plaintext):
    # 2 ** 7 meaning, only first 7 bits used, e.g. < 128
    return all( ord(char) < (2**7) for char in plaintext )


Instead of:

def is_all_ascii(plaintext):
    for char in plaintext:
        # 2 ** 7 meaning, only first 7 bits used, e.g. < 128
        if ord(char) >= 2**7:
            return False
    return True

_______________________________________________
SkullSpace Discuss Mailing List
Help: http://www.skullspace.ca/wiki/index.php/Mailing_List#Discuss
Archive: https://groups.google.com/group/skullspace-discuss-archive/

Reply via email to