6 ms·
CS50 IDE – Online IDE for Students and Teachers
- jingalings 7y agoDocumentation link broken
- cco 7y agoWorks fine for me?
- sb8244 7y agoMine works on the second refresh. Can't get it to break again. A bit strange...
- deleted 7y ago[deleted]
- kzidane 7y agoIf you're seeing any issues, could you please report to sysadmins@cs50.harvard.edu?
- aromabar 7y agoStrange that I had the same problem too, but refreshing the page loaded it fine and it doesn't happen anymore.
- isuckatcoding 7y agoWould be nice to try before/without signing in with Github
- decentralizer 7y agoYes, also it will be good to have registration with e-mail addresses.
- kzidane 7y agoThanks for the feedback! The main reason why we use GitHub sign in is that all CS50 students need a GitHub account to submit their work and use other CS50 tools anyway and that makes it easier for them to get started with the CS50 IDE. We might support other ways to sign in in the future though.
- userbinator 7y agois that all CS50 students need a GitHub account to submit their work Have you considered the privacy and ethical implications of the obligatory use of a third-party service (with its own policies on privacy and PII) for a course? I know GitHub may be seen by most in a better light, but to me this is as treacherous as obligatory use of Google or Facebook services for courses. (I've worked in the CS education sector, but where students submitted work --- and worked on --- the institution's own servers.)
- joshuamorton 7y agoGitHub is owned by Microsoft. What pii is involved in this? There's an email address that need not apparently be your normal address. A throwaway GitHub works fine, does it not? Many, possibly at this point most, institutions use tools like canvas, turnitin, etc. Not to mention Google docs/GAFE, or that many schools have official email provided by either google or Microsoft.
- kzidane 7y agoIndeed. No students are forced to associate any real information with their GitHub account.
- deleted 7y ago[deleted]
- delinka 7y ago> This application will be able to read your private email addresses. Why do you need this?
- kzidane 7y agoFor communication purposes.
- delinka 7y agoWhy do you need to communicate with me before I even get a chance to demo the app?
- kzidane 7y agoFor communication at anytime in general, not necessarily before using the app. If you're uncomfortable with us keeping a record of your email at any point in the future and would like us to delete your account, please feel free to drop sysadmins@cs50.harvard.edu an email from the same email that was linked to your GitHub account at the time of signing in to the CS50 IDE and we'll be more than happy to help you!
- andkenneth 7y agoCool little simplified IDE. Great for teaching first concepts which is what CS50 is. It would be cool if we could have an instance in other cloud regions, otherwise the terminal is a bit laggy for my liking in NZ.
- delinka 7y agoDoesn't render anything in Safari after I authorize it "to read [my] private email addresses."
- kzidane 7y agoUnfortunately this is a known issue on Safari because it doesn't support certain headers that AWS uses. We're working with the Cloud9 team to resolve this asap though.
- freehunter 7y agoPlease please please get the Cloud9 dev team to resolve this! There has been an issue open for over 3.5 years now [1] on the pre-AWS C9 and 1.5 years on the AWS support forums [2] and the main reaction from the C9 devs seems to alternate between "this is Apple's fault" and "wait what browser does iOS use again?". Very frustrating that this is a web app and they can't make it work in one of the most-used browsers of all time. iOS13 even uses the full desktop Safari engine and it still won't load. [1] https://community.c9.io/t/mobile-support-phone-tablet-ipad-pro-etc/925 https://community.c9.io/t/mobile-support-phone-tablet-ipad-p... [2] https://forums.aws.amazon.com/thread.jspa?threadID=270292 https://forums.aws.amazon.com/thread.jspa?threadID=270292
- aiansiti 7y agoUpvote if you too like ripping phone books in half!
- randartie 7y agoThis is mostly powered by amazon cloud9, which is really cool in itself. https://aws.amazon.com/cloud9/ https://aws.amazon.com/cloud9/
- cyberferret 7y agoWe use Cloud9 here quite a lot, with great results. I was going to ask what was the differentiator between this and Cloud9, but judging from your post, I am assuming it is a 'cut down' version of C9 with a lot of the bells and whistles removed? So I assume that it spins up a micro EC2 instance each time someone wants to use CS50?
- kzidane 7y ago> I am assuming it is a 'cut down' version of C9 with a lot of the bells and whistles removed? In a way, yes. The CS50 IDE mainly targets students or teachers who are taking or teaching CS50 (https://cs50.harvard.edu/ https://cs50.harvard.edu/) or similar introductory courses. The UI is simplified in a try to be more accessible to users with little or no prior CS or programming experience. It also comes preloaded with a bunch of tools and libraries that are used in these courses so that users don't have to deal with the hassle of installing and configuring them and instead focus more on the course actually tries to teach. > So I assume that it spins up a micro EC2 instance each time someone wants to use CS50? It's actually backed by containers rather.
- nickysielicki 7y agoAs much as I would hate the idea as a student, online IDEs that fully record the progression of a CS assignment could go a very long way in preventing cheating in CS coursework. That's a decent startup idea.
- raegis 7y agoThis already exists. The Moodle VPL plugin I use has transparent version control.
- acbart 7y agoMan, VPL is the weirdest combination of old and new. It works, though, I'll give it credit for that.
- Aeolun 7y agoHow would that address people working on their local machine and then pasting in the working solution? I know I personally wouldn’t want to work with a crippled online editor when I have a perfectly good IDE on my desktop.
- userbinator 7y agoI've been a TA and taught introductory CS courses, and IMHO trying to "add extra tech" tends to get in the way of learning more than anything else, as well as perpetuating bad habits when programming. I don't think giving beginners an "IDE addiction" is a good way to start them off, and believe that intro CS should begin away from a computer: designing with pencil and paper (or a whiteboard) and "thinking before doing" gives students a chance to exercise their brains instead of relying on a stupid "mechanical brain" to hand-hold them. Then again, the "old school" (literally) way is not as "fashionable" as "look at all the cool tech we're using in education".
- bsder 7y ago> I've been a TA and taught introductory CS courses, and IMHO trying to "add extra tech" tends to get in the way of learning more than anything else, as well as perpetuating bad habits when programming. I don't have a good suggestion for intro classes. Basically, everything has downsides. Some people don't want to interact with a computer; some people want to do mega-cool things on the computer; some people don't understand what is going on and will be confused by any extraneous steps. Anything you do is going to consume time and displease somebody. I can tell you that for sophomore and up CS classes in college, use real stuff. It's a pain to set up and maintain (although it might be easier nowadays), but the students will thank you for it afterward. I made my students use Eclipse and Subversion at the time (I would probably use VSCode and Mercurial nowadays) and had a continuous integration server running every time I gave an assignment. Students could use an IDE or editor other than Eclipse, but I warned them that I might not be able to help them about IDE specific things. Subversion was they way that they could "submit the code" so the continuous integration server would test it. Even students who gave negative feedback about aspects of the class gave positive feedback about using the "real" tools and not stupid submission systems like Blackboard or its ilk. All of the students noted that they did much better interviewing for jobs than students who didn't have experience with the real tools. Although, it was funny getting shocked responses from students who interviewed with employers that didn't use source control. Brainwash them early for best results. :)
- userbinator 7y ago
- raegis 7y agoIs the code open? Can I put this on my own server?
- kzidane 7y agoAn older version of version of the Cloud9 core SDK is open source at https://github.com/c9/core https://github.com/c9/core. Instructions for downloading an older offline version of the CS50 IDE are available at https://cs50.readthedocs.io/ide/offline https://cs50.readthedocs.io/ide/offline. Unfortunately the new versions are not open source at the time of this writing.
- markus_zhang 7y agoSomehow I cannot access the website since a few days ago. It just spins and says "Preparing your environment" but never loads the IDE.
- houzertuch 7y agoIs this out of UC Davis? There was a fellow working on something like this over there a few years ago
- raphaelrk 7y agoThis IDE was one of my favorite parts of the class. You open it in a tab and immediately have an ubuntu instance + file system + terminal + text editor running. It has an excellent GUI, it's fast, if you mess up horribly you can just close your tab and restart the instance, and it's a standard environment for all the students which makes teaching assistants' jobs easier. It's so convenient I've used it instead of my own computer at times. For more context, the class almost immediately dives into C and later gets into web programming, and being able to open up a tab, create `hello.c`, `CTRL-s`, `make hello`, `./hello`, or quickly run a publically-facing webserver is a great combo of convenient, simple, and realistic. The class used to use a VM which was much more of a hassle to set up, a lot slower, and overall not as nice of an experience. When being taken by 800 students a year at Harvard and hundreds of thousands a year online, that change alone has probably introduced a lot of people to programming.