Hacker News new | ask | show | jobs
by Jtsummers 881 days ago
Not the OP, and I'm not sure something like this needs to be a desktop application. But having your learning resources hosted on your own device is vastly preferable to online-only resources. The interaction is more responsive. For programming, as you progress you can start using your own tooling instead of the course-administered tooling (in the case of a web IDE for instance). And you can access the materials without needing an internet connection or at least not a fantastic internet connection once the materials are acquired.
1 comments

Well, you responded with a question and then deleted it.

What I mean is that I consider an application, when you use it as a singular word like this, to be one integrated thing. Like Excel (as typically used), Safari, Chrome, etc. Perhaps with the option of extensions, but still a singular integrated application. And, in particular, not a thing that's directly integratable into other applications and parts of the system (or at least not trivially).

Is that what's needed for an offline programming teaching environment? You could look at something like DrRacket. It provides an IDE as an application, but also a lot of command line tooling. This allows students to "graduate" from the, possibly restricted, environment you provide to a fuller environment on their computer. An advanced student could switch, sticking to Racket as the example, from using the supplied IDE directly to using a combination of the CLI programs and emacs (my preferred way of using Racket when I use it). They still get all the benefits of the learning tools, but can move past them once they're ready.

So I guess I'm just saying, it doesn't need to be a singular, dedicated, sandboxed application. Instead it could really be a suite of programs + an interface (or piggyback on an existing interface like VS Code by providing an extension). This can give a more graceful path out of your educational program than a too-tightly restricted/limited application. A big issue I had with a lot of the restricted learning-targeted applications that were used in my high school and a couple (fortunately only a couple) college classes was that inability to use the same language or whatever outside the sandbox. This had a significant impact on a number of my peers who had difficulty moving on from the restricted environment, they didn't have the right mental model for how to program or use the computer to program without the sandbox.

Yeah sorry I deleted it because I sort of figured out what you meant.

But I see exactly what you’re saying. I’m pivoting the project in a different direction. Scrapping the courses, focusing on the editor. The goal is to ease the learner out of those restricted and unrealistic sandboxes and into professional environments with professional tooling.