It had the added benefit of not being confined to a single tool but rather a complete desktop experience.
This strikes me as an inferior offering, as does a non-native IDE as a whole, in exchange for minor convenience. Thoughts?
It had the added benefit of not being confined to a single tool but rather a complete desktop experience.
This strikes me as an inferior offering, as does a non-native IDE as a whole, in exchange for minor convenience. Thoughts?
Elsewhere, yeah, a full IDE is probably better. But this definitely has a use case IMO.
For APCSA students, especially those who can take more CS courses before/after the APCSA exam course... these are high school level students. There's no reason why they can't be using a real IDE (e.g. Eclipse, or whatever you like), learning Java in a terminal, and learn to write real GUIs (e.g. Swing, or whatever you like) [1].
Yeah I know... Java, Swing, Eclipse... Look, it's AP CS A. Java is the language of instruction. No choice. But we can make the best of it. Students can learn using real tools.
In high school wood shop class, they teach what the pros use, more or less. Real hammers. Real drill presses.
That's not to say Repl.it is purely a toy tool. Of course you can make real things using non-pro tools too, ikea screwdrivers, dollar store saws, etc. But it depends on your teaching philosophy, goals, and resources. Some high school students are a few years away from working, coding, in industry --- why not learn real IDEs if it's available?
You're right, there's definitely a use case for Repl.it. Chromebooks... I'm sorry for your situation. Even a cheap laptop with Windows or Linux nowadays is enough to learn Java with Netbeans and the command line. If my class all had chromebooks, I'd probably jump on REpl.it too.
But if students have a non-locked-down OS, seems to me learning the real deal is better for the student. It's not just the IDE and coding in it. It's the entire ecosystem students get to be exposed to. Get stuck on something, jump in the command line. Learn git in bash. Play with maven. It's a rich, real, authentic environment to learn in. Stuck in the browser means only getting what the web site provides.
But that's old school thinking. I suspect the world of primary and secondary CS education will move more and more into REpl.it style web based tools. Here's why:
Everything's getting locked down, and people are busy.
If a student comes and says they have trouble installing Java in Windows, it's easier to just say... go to ReplIt.
If a school board is downsizing / rightsizing / cloud-ifying their I.T., they might say they won't allow/support/install Eclipse on school PCs anymore, because it takes too much technician time to support it, or it opens up security issues to allow arbitrary code from students to run, or they want to replace everything with Chromebooks, or just do it in the cloud...whatever. What's a teacher to do? Replit.
Students comes with a Mac, all locked down, has trouble even running example or utility programs from the teacher because of notarization? Replit.
Student has no desktop/laptop. School does'nt have a chromebook to lend out. But probably student still has a mobile device! Replit.
As coding education becomes more widespread, like math before it, more and more classes will be taught by teachers who are not experts in coding, possibly not even by a hobbyist coder, maybe not even by someone who likes code. It'll be taught by an English / math/ bio / P.E. teacher who needs a class to round out their 1.0 FTE. Maybe supported by an expert CS teacher, maybe, but at some point everyone's busy. So much easier to just use repl.it. Gives students some activities to do.
And how's the social teacher who's never seen a terminal supposed to help troubleshoot classpath problems in Java on a student's computer? or on a school computer they have no admin access to because... I.T.? That teacher may be very capable, but who has the time anyway? Replit with constrained templates and projects will be very very helpful.
Sorry this is so long...
tldr. If students have a non-locked-down OS, seems to me learning the real deal is better for the student. But due to everything getting locked down, economic reasons, and teachers/people/technicians being just too busy, the trend in primary/secondary CS education will be towards more web based platforms... because it's better for the teachers/administrators/I.T./wallet.
BlueJ is incompatible with Chromebooks, unfortunately.
> Some high school students are a few years away from working, coding, in industry --- why not learn real IDEs if it's available?
Very true, unfortunately BlueJ is mandated by Advanced Placement and the tests are on paper (!) but I always prefer a full IDE.
>But if students have a non-locked-down OS, seems to me learning the real deal is better for the student. It's not just the IDE and coding in it. It's the entire ecosystem students get to be exposed to. Get stuck on something, jump in the command line. Learn git in bash. Play with maven. It's a rich, real, authentic environment to learn in. Stuck in the browser means only getting what the web site provides.
Unfortunately, the trend is becoming online. I hope the teachers explain that these tools are good for learning but never outside of a learning environment. It's like scratch: you'd never teach it to actual CS students but for feeling out an interest in CS it's pretty good.
>If a student comes and says they have trouble installing Java in Windows, it's easier to just say... go to ReplIt.
If an AP CSA student can't install Java... that doesn't bode well for their general computing knowledge. Then again AP CSA isn't super high level. We just learned about `extends` sub/superclasses in java, and we're pretty far into the course.
>As coding education becomes more widespread, like math before it, more and more classes will be taught by teachers who are not experts in coding, possibly not even by a hobbyist coder, maybe not even by someone who likes code. It'll be taught by an English / math/ bio / P.E. teacher who needs a class to round out their 1.0 FTE.
Agree. My AP CSA teacher is very qualified but I've seen that trend in plenty of other lower-level computing classes in MS and HS like "computer applications" class and "cybersec fundamentals".
>tldr. If students have a non-locked-down OS, seems to me learning the real deal is better for the student. But due to everything getting locked down, economic reasons, and teachers/people/technicians being just too busy, the trend in primary/secondary CS education will be towards more web based platforms... because it's better for the teachers/administrators/I.T./wallet.
Sigh, I just hope this doesn't affect the education negatively like it sounds like it will...
Where did you see that? It's not mandated. My AP students use Netbeans or Eclipse or IDEA (their choice). I have an AP approved syllabus that I wrote myself based on the College Board AP course and exam description. If you use the Blue Pellican Java textbook, I recall it teaches BlueJ. But other approved textbooks don't.
> If an AP CSA student can't install Java... that doesn't bode well for their general computing knowledge
Well, if they use Replit, they'd never know they didn't know! And they'd never get a chance to learn to troubleshoot. They'd never learn general computing knowledge. But that's part of my "ecosystem" point.
> Sigh, I just hope this doesn't affect the education negatively like it sounds like it will...
I think you and I are on the same wavelength here. I don't know if education will be affected negatively, but it'll be more "specialized". Students 10 years ago at my school learned Linux, MongoDB (why not? lol), Java, Eclipse, bash, git, etc. Because of some of the things I noted, they now learn... Java in Eclipse. 10 years from now, they'll learn... to code in Replit.
Maybe that's just how it goes. 100 years ago, math students learned to make paper and ink (did they? was that 500 years ago? I don't know). Now they learn math. 100 years from now, they learn math code in coq on Replit (lol).
Cheers
My AP teacher mandates the use of BlueJ, I was under the impression it was AP. I asked if I could use another full IDE because the keybinds in BlueJ suck, he said no because the Intellisense/other smart features may make it easier and I won't be able to use it on the exam. Which is sort of fair I suppose.
>Well, if they use Replit, they'd never know they didn't know! And they'd never get a chance to learn to troubleshoot. They'd never learn general computing knowledge. But that's part of my "ecosystem" point.
Very true.
> Students 10 years ago at my school learned Linux, MongoDB (why not? lol), Java, Eclipse, bash, git, etc
That makes me glad that I'm learning with good tools. I hope the trend doesn't continue to fully learning college courses in a browser. :/
Then again, I'm literally in high school hating on the new-fangled tools...
The exam's done wrong. Intellisense mostly gives you navigation in a big project (shouldn't need that in a written test) and method name auto-complete.
Remembering it's ToString() and not tostring() or PrintAsString() is pointless. What matters is computational thinking.
> I hope the trend doesn't continue to fully learning college courses in a browser. :/
Some colleges will, for sure. Probably not the good ones.
> Then again, I'm literally in high school hating on the new-fangled tools...
Ever heard of the term "graybeard"? [0]
[0] https://gist.github.com/lenards/3739917#:~:text=Greybeard%20....
With regular back-up so that when a student inevitably mess up beyond repair (rogue rm or dd command or something modifying his path) he can time-machine like roll back to a previous version.
Then you get to enjoy the show. Someone will inevitably start pen-testing the school. Why is one machine constantly maxed-out? Is that a Quake server they are running? Oh they have their own chat client/protocol now, interesting. Basically https://en.wikipedia.org/wiki/Incompatible_Timesharing_Syste...
Keep in mind, we're talking about teaching students in a class, with a curriculum.
This is not high-value open ended learning with real tools. This is basic skill training exercises.
I speak from the experience of watching a teacher struggle with multiple students' python dependencies for the first two weeks of class. This was with a set of (supposedly) homogenous school-issued laptops. After switching to repl.it, all that hassle just disappeared.
Also, I've found that attempting to describe what you're thinking about changing remotely is nowhere near as effective as typing. While this can definitely be accomplished simply by passing control back and forth, it's much easier to just be able to type with a separate cursor.
Huh, I think I'm going to go take a look at current state of those plugins again, thanks for jogging my memory. :)