Online Python Tutor: Learn programming by visualizing code execution
21–30 of 46 posts
Re: Online Python Tutor: Learn programming by visualizing code execution
#22Is there a self-hosted option for this? I think this would be an excellent resource for my students, but I'm having trouble getting my examples to run. (memory overload?)
Online Python Tutor isn't meant for running large examples. Think of it as a "digital whiteboard"; I don't think anyone would expect to visualize a 100,000-step program with tons of pointers on a whiteboard :)
Re: Online Python Tutor: Learn programming by visualizing code execution
#23locals() and globals() are undefined.
Still crazy slick (if it were the early 90's I'd say "l33t") bit of coding.
Re: Online Python Tutor: Learn programming by visualizing code execution
#24Just 5 days ago HN was all so negative about Bret Victor's visions[1] of how programming should be taught. And yet here we are, looking at a working example of one of the ideas he wrote about. [1] - http://news.ycombinator.com/item?id=4577133
Bret has certainly been an inspiration to lots of us who work in this field, but I still don't think this is an implementation of his vision. To truly implement his vision, someone would need to design a new programming language and environment. My motivation has been to ease the learning path for an existing popular language (Python).
See this 2003 PhD thesis at MIT for two examples of existing languages designed to take full advantage of live programming environments. (Flogo I -graphical- and Flogo II -textual): http://llk.media.mit.edu/papers/ch-phd.pdf Particularly interesting is Flogo II capability to mix the imperative and functional-reactive programming paradigms in the same code block, as parallel runtime processes; I hadn't seen that before.
Re: Online Python Tutor: Learn programming by visualizing code execution
#25However, my big criticism of these sorts of visualisations is they seem to be entirely geared towards imperative programming. Has anyone seen similar visualisations for more functionally structured code?
Oh, I see you can write your own code to be visualised. Here's a simple list comprehension: http://pythontutor.com/visualize.html#code=myList+%3D+range(...
Not the most enlightening visual.
Re: Online Python Tutor: Learn programming by visualizing code execution
#26This should definitely be integrated into Udacity and other learning platforms! Most instructors have to do this by hand in CS 101 lectures anyways.
Re: Online Python Tutor: Learn programming by visualizing code execution
#27Looks good. However, my big criticism of these sorts of visualisations is they seem to be entirely geared towards imperative programming. Has anyone seen similar visualisations for more functionally structured code? Oh, I see you can write your own code to be visualised. Here's a simple list comprehension: http://pythontutor.com/visualize.html#code=myList+%3D+range(... Not the most enlightening visual.
Re: Online Python Tutor: Learn programming by visualizing code execution
#28Looks good. However, my big criticism of these sorts of visualisations is they seem to be entirely geared towards imperative programming. Has anyone seen similar visualisations for more functionally structured code? Oh, I see you can write your own code to be visualised. Here's a simple list comprehension: http://pythontutor.com/visualize.html#code=myList+%3D+range(... Not the most enlightening visual.
Re: Online Python Tutor: Learn programming by visualizing code execution
#29Just 5 days ago HN was all so negative about Bret Victor's visions[1] of how programming should be taught. And yet here we are, looking at a working example of one of the ideas he wrote about. [1] - http://news.ycombinator.com/item?id=4577133
Bret has certainly been an inspiration to lots of us who work in this field, but I still don't think this is an implementation of his vision. To truly implement his vision, someone would need to design a new programming language and environment. My motivation has been to ease the learning path for an existing popular language (Python).