Files
2012-02-21 01:15:00 -05:00

1 line
12 KiB
JSON

[{"user_id": 1289, "stars": [], "topic_id": 11347, "date_created": 1299526907.8448229, "message": "Two professors at Michigan State seem to think it's a good first language -- they changed their CS1 course to it. http://us.pycon.org/2009/conference/schedule/event/8/ -- talk slides here: http://us.pycon.org/media/2009/talkdata/PyCon2009/008/pycon09-Punch_.pdf", "group_id": 292, "id": 290104}, {"user_id": 4219, "stars": [], "topic_id": 11347, "date_created": 1299526473.6649189, "message": "I guess c would have been the best so they understand all things internal, then go to managed code and then spoil them with python...what do you guys think?", "group_id": 292, "id": 290014}, {"user_id": 11990, "stars": [], "topic_id": 11347, "date_created": 1299527076.793144, "message": "It teaches you a lot of good habits, such as good indentation practice. I think that C or C++ are a bit much as first languages - you really want a language where they can get started quickly and get results fast, otherwise you risk them losing interest. C or C++ are good second or third languages to go on to once they've caught the coding bug though.", "group_id": 292, "id": 290142}, {"user_id": 4219, "stars": [], "topic_id": 11347, "date_created": 1299526435.9624209, "message": "teaching my neighbors son c# right now, wondering if python would have been a better choice.", "group_id": 292, "id": 290008}, {"user_id": 1243, "stars": [{"date_created": 1299914529.0689981, "user_id": 16058}, {"date_created": 1300114067.6957259, "user_id": 21493}], "topic_id": 11347, "date_created": 1299526588.9961319, "message": "MIT jumps straight to Python, fwiw.", "group_id": 292, "id": 290038}, {"user_id": 1243, "stars": [{"date_created": 1300033613.993959, "user_id": 2376}], "topic_id": 11347, "date_created": 1299527028.582978, "message": "I'd say go with something high-level that lets them build something interesting with a minimum of pain to get them hooked. Drop down to C/assembler stuff after they're already hooked. Slogging through core dumps and corrupted memory is likely to scare kids off.", "group_id": 292, "id": 290128}, {"user_id": 11990, "stars": [], "topic_id": 11347, "date_created": 1299527591.467392, "message": "Yeah, C# is too IDE-centric for my liking. That said there's a number of pretty good C# IDE's - besides Visual C# Express there's SharpDevelop and MonoDevelop.", "group_id": 292, "id": 290292}, {"user_id": 1243, "stars": [], "topic_id": 11347, "date_created": 1299527060.125443, "message": "If you go with CPython to start with, you can introduce C when he runs into a spot where Python is uncomfortable: GIL, missing bindings to a C library, etc.", "group_id": 292, "id": 290137}, {"user_id": 4219, "stars": [], "topic_id": 11347, "date_created": 1299527343.2551701, "message": "good points", "group_id": 292, "id": 290239}, {"user_id": 4219, "stars": [], "topic_id": 11347, "date_created": 1299527405.3738379, "message": "oh and another reason is that still cant' get a IDE installed b/c his vista is so far back in updates it's just not working!", "group_id": 292, "id": 290253}, {"user_id": 779, "stars": [], "topic_id": 11347, "date_created": 1299527400.651149, "message": "It really depends on the profile of the person you will be teaching. IMHO if you already see the hacker in the other person you can jump to something more low-level like C. But if it is a person who is amazed by the fact that you can tell a computer what to do by programming it, Python would be a good choice. And even your soon-to-be-hacker can be introduced to the world of inline C (with all the pros and cons)", "group_id": 292, "id": 290251}, {"user_id": 15977, "stars": [], "topic_id": 11347, "date_created": 1299527977.6461999, "message": "C# is a considerably more complex language than Python all told. It's a nice statically typed imperative language, but there's a huge amount of detail in it.", "group_id": 292, "id": 290370}, {"user_id": 2683, "stars": [{"date_created": 1299861659.980376, "user_id": 3580}], "topic_id": 11347, "date_created": 1299533342.4511211, "message": "Have you seen the book \"Invent with Python\" http://inventwithpython.com/", "group_id": 292, "id": 291519}, {"user_id": 2683, "stars": [], "topic_id": 11347, "date_created": 1299533356.4797211, "message": "Specifically designed to teach kids Python via games.", "group_id": 292, "id": 291521}, {"user_id": 3094, "stars": [], "topic_id": 11347, "date_created": 1299540123.1563821, "message": "My alma mater switched the first year engineering programming course to Python this year, after ~5 years of C# and who-knows-how-many years of C before that, and it's been a HUGE win. Students find it much *much* better.", "group_id": 292, "id": 292396}, {"user_id": 2723, "stars": [], "topic_id": 11347, "date_created": 1299553753.7448781, "message": "I've taught myself every language I know and after doing C-style languages Python was actually difficult to pick up. I still put semi-colons at the ends of lines and forget to pass self to instance method declarations. The problem is that I now try to define string literals using single quotes in C# and Objective-C. I would imagine that the reverse (going from Python to C-style languages) would be similar. So syntactically, yes it can confuse you but nothing that you won't recover from. ;-)", "group_id": 292, "id": 293132}, {"user_id": 19095, "stars": [], "topic_id": 11347, "date_created": 1299551907.744029, "message": "Python is going to be my first language. I just started looking at it about 2 weeks ago and it's definitely easier to figure out than C#, which confused me to no end, causing me to give up. Especially since I am self-teaching myself.", "group_id": 292, "id": 293078}, {"user_id": 13916, "stars": [], "topic_id": 11347, "date_created": 1299600028.33231, "message": "on the occasions that I implement some actual algorithm, the kind you find in the books written in C or similar, it's always the process of taking their reams of pointer arithmetic and linked lists and squashing it down into ten or twenty lines of sets and dicts in Python. Then you go to a job interview and you can solve any problem in two lines of Python - but of course, they want to see all the pointer/array iteration/plodding through crap ! I haven't had to do that since college (which was...a very...very... long time ago)! So yes Python spoils you.", "group_id": 292, "id": 297140}, {"user_id": 19095, "stars": [], "topic_id": 11347, "date_created": 1299825667.2184329, "message": "Thanks sstave. I've been working my way through that book, I'm learning a lot!", "group_id": 292, "id": 320046}, {"user_id": 5959, "stars": [], "topic_id": 11347, "date_created": 1299863512.9715159, "message": "I suggest learning something reasonable like python and learn some basic CS as well since good programming is not about mastery of one particular language. Get good at python, algorithms and math and you will be awesome. Then learn lots of other languages.", "group_id": 292, "id": 324721}, {"user_id": 16719, "stars": [], "topic_id": 11347, "date_created": 1299865634.9634891, "message": "@Aeonblue3 how was your experience when you did C after python ? i want know since i started with C and i learned Python a lot later.. still learning..", "group_id": 292, "id": 325124}, {"user_id": 17922, "stars": [], "topic_id": 11347, "date_created": 1299864834.6184671, "message": "At Georgia State University, they taught us python, then java, then C (with sed, awk, and a little shell scripting). I thought it was a nice gradual process. Made sense to me.", "group_id": 292, "id": 325020}, {"user_id": 18899, "stars": [{"date_created": 1299893698.578778, "user_id": 2712}], "topic_id": 11347, "date_created": 1299875321.2201769, "message": "python gives satistaction every day more than day later!!", "group_id": 292, "id": 326687}, {"user_id": 17922, "stars": [], "topic_id": 11347, "date_created": 1299905109.276685, "message": "@bhu1st learning python first let's you become familiar with some the more basic concepts of programming, like control structures, conditionals, etc. Java really helped in learning data types and more advanced topics. C is being taught to us now in the context of a unix environment. Learning python first helps to learn the basics because the syntax is more forgiving, yet powerful.", "group_id": 292, "id": 330115}, {"user_id": 17922, "stars": [], "topic_id": 11347, "date_created": 1299913242.7339461, "message": "In short, I like learning python before C. It's like a funnel. Next semester we get into assembly and sparc. Should be cool.", "group_id": 292, "id": 330625}, {"user_id": 1775, "stars": [], "topic_id": 11347, "date_created": 1299914607.6023221, "message": "At Saint Louis University, we also start with Python, then go to C++, and onward from there. It's definitely a nice, gentle introduction. As I'm sure it's been brought up, check out the \"How to think like a Computer Scientist\" using Python - that's a great resource. Also, MIT has free classes on iTunesU for Intro to CS - that's in Python, as well. But yeah - it reads a lot like English for those getting started into programming. Once you get into less dynamic languages though, you will started to develop a preference for one style or another, and then you can make the choice from there!", "group_id": 292, "id": 330712}, {"user_id": 16058, "stars": [], "topic_id": 11347, "date_created": 1299914718.7778561, "message": "In Python, it's easy to understand the classic object model. When I was using PHP (oooh, I hate it now), these classes and instances and stuff seemed like rocket science for me.", "group_id": 292, "id": 330716}, {"user_id": 16719, "stars": [], "topic_id": 11347, "date_created": 1299938216.76104, "message": "@Aeonblue3 we started with C (at tribhuvan university, kathmandu) then c++, did some mid level project with C#.NET and worked on a social n/w app with PHP/Symfony in final year. Now, I am professionally working on PHP and occasionally on C#.NET. In my free time I am trying to learn Python in Google App Engine. With all of these discussions here seems like i am getting in right track finally. Any resource to follow ?", "group_id": 292, "id": 331753}, {"user_id": 2376, "stars": [], "topic_id": 11347, "date_created": 1300033786.744945, "message": "@bhu1st Dive into python : http://diveintopython.org/", "group_id": 292, "id": 341575}, {"user_id": 20326, "stars": [], "topic_id": 11347, "date_created": 1300063328.7228971, "message": "@bhu1st Since you have a strong background in programming, I recommend checking out the official Python tutorial http://docs.python.org/tut/ , which is actually pretty good. I suspect that'll all you'll need before you jump in and start writing actual programs.", "group_id": 292, "id": 344417}, {"user_id": 20326, "stars": [], "topic_id": 11347, "date_created": 1300063227.4324269, "message": "@abhinavsood I think that's a suboptimal recommendation. DIP targets versions of Python which are ancient or are not in wide use yet, and it has always seemed a little oddly organized to me. It also contains a lot of incorrect statements and nonidiomatic code examples; although these things can be good pedagogy, they don't seem to be helpful most of the time in DIP to me. See this google wave https://wave.google.com/wave/waveref/googlewave.com/w+8KfvUGXPC for some of what I'm talking about made more explicit.", "group_id": 292, "id": 344411}, {"user_id": 20326, "stars": [], "topic_id": 11347, "date_created": 1300064361.4441321, "message": "@convy Python is a great language for beginners because it makes it easy to develop interesting programs, which is what you want to get learners doing. Choosing C over Python for teaching because you deal with more of the computer's internals seems silly to me when the real goal is to make someone enjoy making software; forcing someone to deal with internals of a computer will inspire about as much love for computing as forcing someone to touch the internals of a cat will inspire love for cats.", "group_id": 292, "id": 344440}, {"user_id": 20326, "stars": [], "topic_id": 11347, "date_created": 1300064366.8286359, "message": "@convy It's also worthy of note that C isn't as close to the metal as we pretend. (Indeed, it was called a \"high level language\" in its day for just how much it abstracts away internals.) Many C programmers have no idea what sort of instructions they cause to be executed and I suspect the vast majority don't know how memory actually works.", "group_id": 292, "id": 344441}]