I hate setting up environments, even with a folder of templates I've assembled over the years. The most frustrating barrier to get to the "magic" of seeing something happen is figuring out the proper/correct way to structure a project.
Towards the end of intro courses seems like an appropriate time to start bringing up tooling.
But VMs can abstract away most of this, especially in a learning environment where performance isn't a primary goal.
Then you can have a known-good set of instructions that doesn't have to include messing with whatever Apple/Microsoft/Ubuntu changed recently.
Learning to paper over OS errata isn't as generally useful as, say, groking multithreaded coding models.
Yes, there are environment quirks. Yes, you'll have to deal with them. Yes, you can look up documentation when you run into those situations.
they donate a couple of thousand dollars and in return get a CS class that will go out into the world completely dependent on them
Why are beginners using it?
Why are people using it?
And how could we solve those problems or recreate that experience in a more free form?
2) The market demand for dramatically more accessible software development tools (more economical product development) is essentially unbounded
3) Replit has produced a marginal change in the frontier of accessibility, at unknown unit economics
4) What would a discontinuous change (step change) in accessibility look like?
Side note, ZIRP and AI have really muddied the waters here. ZIRP means we still don't know yet which companies are zombies. The AI claim is that product development will soon be decoupled from the economics of human coding. Neither of these issues are likely to be conclusively resolved for another few years (we can all place our own bets). Replit is deeply rooted in both.
Now it's likely more "What is your growth efficiency (dollar:growth) in a capital-constrained environment?"
And we're going to see more and more capital sucked back into debt service, as financing comes due and is reestablished. Which will snowball the terms for any companies which require capital infusion ASAP.
It'll be curious if the Berkshire Hathaway model of coupling low-growth, good cash-flow businesses to high-growth, bad cash-flow engines becomes dominantly competitive again.
I'm not actually familiar with the issues that VSCode has but I seem to recall some key component was not OSS, but I forget the details there and maybe it has changed. I know it has telemetry and such, but AFAICT that can be disabled by some settings. (I personally use vscode for my own work and disable telemetry and don't use any code assistant platforms, and I would like to know if there is a problem with what I'm doing)
IOW, frog being boiled slowly.
I have a friend who got a fine arts degree in college and has spent the last several years working crappy odd jobs to make ends meet, and finally came to me earlier this year and said she wants to learn to be a web developer. I got her set up learning JavaScript in all of 10 minutes using Replit, and frankly it was exactly what I would hope for pedagogically. It's free for our purposes, dirt simple to set up, and has enough features to be helpful without being overwhelming.
We've gotten to a point now where we're introducing HTML and CSS and building real websites (after about 3 months of JS intensive) and I decided this was the right time to introduce coding locally rather than in Replit. She's a computer savvy person and was able to stumble her way through it in a couple of hours (she didn't want my help as this is how she learns stuff) but I can tell that the need to manage a locally running environment slows her down. This is a good thing in the long run of course, and I think pedagogically there's analogues to this in many disciplines (in learning piano, for example, moving from simple drills and method books for learners to "real" music feels as significant a leap), but the step function in complexity to do simple tasks is certainly there. It's important to jump that hurdle, but forcing it too early can discourage early learning and cause you to focus on the wrong things.
I had her shadow me working on a side project early on in her studies so she could see what the whole process looks like, and the sheer number of tools I was jumping between to do my work (AWS, Vim, the terminal, database query console, developer tools) was overwhelming. Replit allows you to focus on only the most important parts of the theory of programming, which is absolutely essential when starting out if you aren't immediately predisposed to doing complicated stuff on your computer. I think it adds a lot of value, so long as it's used responsibly in the context of a larger curriculum.
The goal of personal computing was to make computers, with all their power, available to everyone. In that Replit is much more of a continuation of that work than its antagonist.
I could see everything you do being monitored for the implementation of unauthorized types of software for example, not to mention total surveillance and appropriation of everything you do.
“We’re sorry but it appears that the software you are implementing might be able to be used to facilitate communication without the required safeguards. Your project has been locked.”
Meanwhile if the center of gravity goes entirely to managed cloud services the endpoint will wither even more. I can see a future where you can’t even buy a general purpose computer except in the most raw form like SBCs or parts and doing so might even get you on a list.
Look at the EU chat control stuff or the crazies who want to ban matrix math. This is not that far fetched.
Let’s move programming entirely into an environment where you don’t own your data, can’t duplicate or fully understand the runtime, are subject to total surveillance and the harvesting of your data for AI training and other monetization, and must pay rent forever with the constant threat of a rug pull. Great idea.
The thing I find most dystopian about it is that it’s aimed at beginners in a lot of ways. So you could have a generation raised up that doesn’t understand the idea of general purpose compute under their own control at all. Basically it’s the last nail in the coffin of personal computing.