Course Home
Announcements
Check Yourself
Python Errors in English
CodeSkulptor FAQ
Reflections

Online Lessons

Related Links

Online Development

Lessons

Reference

eBooks

CodeSkulptor FAQ

This FAQ originally appeared as part of the Coursera course titled An Introduction to Interactive Programming in Python (Part 1)

The SimpleGUI frame window appears, but seems to "freeze". What should I do?

CodeSkulptor converts your Python code to Javascript which is then run in the tab where your code is displayed, not in the window containing the SimpleGUI frame. If this CodeSkulptor tab is not selected (topmost), your web browser will not run the converted Javascript and the SimpleGUI frame will freeze. Web browser are designed this way in an attempt to save resources. So, keep the CodeSkulptor tab selected (topmost) to ensure that the SimpleGUI frame runs properly. In Windows 8, you may need to run your browser on the desktop as opposed to Metro so the new frame can spawn as a separate window. (Use the "Windows" key to switch from Metro to the desktop if necessary.)


The SimpleGUI frame appears to ignore or incorrectly process my keyboard input. What should I do?


I am having trouble saving files in CodeSkulptor, what can I do?

Make sure your browser is the most up-to-date version.

There are three common reasons why students have trouble saving files.

  1. Network connection problems. If you find you have trouble saving files, check to make sure that your Internet connection is working properly.
  2. Corporate firewalls. Some companies have firewall rules that prevent CodeSkulptor from saving files. You can test this by trying to save from another location (your home, a coffee shop, an Internet cafe, etc.).
  3. Web browser extensions or add-ons. Many different extensions or add-ons block CodeSkulptor from saving files. Disable your extensions or add-ons one by one until you find the one that is the problem. Often the extensions or add-ons that cause problems allow you to specify sites which should be ignored. Add codeskulptor.org to the ignore list and the problem should be solved. In Chrome, you can also use "Incognito mode" to avoid issues with extensions or add-ons.

    Some extensions that may cause problems with CodeSkulptor are:

    • NoScript
    • Adblock Plus
    • HTTPS Everywhere

If you continue to have problems saving, we suggest that you try using the CodeSkulptor save service. This service accepts a text file as input and generates CodeSkulptor URL. In previous sessions, students with saving problems have found this service to be helpful.


The CodeSkulptor interface does not work properly. What should I do?

Make sure your browser is the most up-to-date version.

Web browser extensions or add-ons can prevent CodeSkulptor from working properly. Disable your extensions or add-ons one by one until you find the one that is the problem. Often the extensions or add-ons that cause problems allow you to specify sites which should be ignored. Add codeskulptor.org to the ignore list and the problem should be solved.

Some extensions that may cause problems with CodeSkulptor are:

  • InternetHelper
  • Babylon
  • u-torrent

Can I use IDLE (or some other Python environment) instead of CodeSkulptor for this class?

The short answer is "no". The longer answer is that in order to successfully build the games in this class you will need to use CodeSkulptor. Furthermore, all peer assessment will take place using CodeSkulptor, so you really need to use it for your assignments if you expect to be graded fairly.

Does this mean you are not learning "real" Python? No, it does not. CodeSkulptor faithfully implements Python with very few exceptions. Students who have taken this class in the past have very easily transferred their knowledge from CodeSkulptor to other Python environments. CodeSkulptor is designed specifically to aid the process of learning and peer assessment in this course. But, the knowledge and skills you learn in this class transcend any particular environment.


Why are we using Python 2 instead of Python 3?

Python 2 is still widely used and remains very popular. The main reason for its popularity is that many important Python libraries still only work in Python 2. For example, CodeSkulptor is based on the Skulpt Python engine which currently supports only Python 2. More importantly, for the level of code that we are writing in this class, you will not see a difference between Python 2 and Python 3 except for two simple cases:

  • In Python 2, integer division (i.e; 4 / 3 returns the integer 1. In Python 3, the same expression returns floating pointing number 1.3333.
  • In Python 2, printing to the console has the syntax print "Hello world". In Python 3, the equivalent syntax is print( "Hello world" ).

Past students have easily been able to overcome this small difference and transfer their knowledge back and forth between Python 2 and Python 3.


Will CodeSkulptor continue to be available after the class?

Yes. CodeSkulptor will continue to be available after class.


Can I convert my final projects to stand-alone libraries (pygame, tkinter, etc.)so I don't have to use CodeSkulptor after the class ends?

Yes, many people have done this successfully in the past. The Demos section at codeskulptor.org includes some simple tutorials (look at the tab at the top of the page) on moving from SimpleGUI to Pygame and tkinter. You can also start a Discussion Forum topic on this for each project if you wish (after the submission deadline). Some of the class TAs have a lot of experience doing these conversions and can help you as needed.