News for hackers. Stuff that matters.
Re:How to Exit Vim by ChrisRR on Wednesday January 08, 2020 @07:50AM (#21990906)
That's stupid and elitist. There's no reason to force students to go against IDEs that they're already used to, but also the general method of navigating around a computer which they're probably used to from MS Word etc.
Re:How to Exit Vim by OkGoDoIt on Wednesday January 08, 2020 @12:56PM (#21993914)
It’s a college class in which students are supposed to learn something new, that seems like a perfect example of a situation where you should be forced to do something outside your comfort zone.

I don’t interpret that as the college professor saying this is actually the best way to code, just that forcing students to struggle through it is a learning experience.

Re:How to Exit Vim by dragonwriter on Wednesday January 08, 2020 @02:12PM (#21994694)
> It’s a college class in which students are supposed to learn something new

Unless the central thrust of the course is supposed to be the mechanics of a particular dated editor, the restriction described seems to be a distraction from rather than an aid to what the students are supposed to be learning.

It doesn't make any more sense than a social science course where the deliverables for most assignments are essays mandating WordPerfect for DOS. Sure, you'll learn something you might not otherwise, but it's a distraction from what you came to the course to learn.

Re:How to Exit Vim by Seirdy on Wednesday January 08, 2020 @11:15PM (#21998516)
> particular dated editor

I wonder how you feel about age discrimination. Old != bad.

I started using Vim when I was 14; I was the only one in the class who wasn't using an IDE. Vim (perhaps combined with a language server if you're okay with the complexity) runs circles around bloated IDEs like IntelliJ/VSCode. Unix combined with a tiling WM is the best IDE in existence.

The professor in question is likely doing the students a service by showing them the advantages of minimalism and function-over-form over the trend of bundling an OS with every "app". Many students today only feel comfortable using software that saturates their synapses with colors and animations; having to use Vim for a semester forces the good ones to realize that maybe, just maybe, function should come before form. Maybe 10k lines of C or POSIX shell solves a problem better than a VC-backed Electron app.

To continue your analogy, WordPerfect and DOS, unlike Vim, aren't better than today's tools. What would be an improvement is LaTeX/BibTeX for writing essays. Once I realized how much work was automatically done for me--from Chicago-style footnotes/endnotes and auto-generated ToC from headings, the time I spent formatting my papers dropped to zero. I would absolutely incentivize students to use these tools over "modern", bloated word processors.

Re:How to Exit Vim by saagarjha on Thursday January 09, 2020 @05:44AM (#22000085)
Cool, I use nano. Should I be penalized?
Re:How to Exit Vim by Seirdy on Thursday January 09, 2020 @03:16PM (#22005173)
Minimalism for the sake of minimalism isn't what I was arguing for. If it were, I'd say that every paper and program should be written with `ed`, the standard text editor [0].

What I was trying to say was that if minimal solutions run circles around bloated ones thousands of times their size, and when it takes a startup and two funding rounds to develop something that does exactly what tools did three decades ago less efficiently, then maybe Braithwaite was on to something:

> “It’s a curious thing about our industry: not only do we not learn from our mistakes, we also don’t learn from our successes.” -- Keith Braithwaite

[0]: https://www.gnu.org/fun/jokes/ed-msg.html

Re:How to Exit Vim by Aperocky on Wednesday January 08, 2020 @04:43PM (#21996116)
Modal editor are not dated. You’re saying this as if the command line itself is dated. It’s not, casual user can go ahead and use Windows or Mac, but shell and she’ll editors will not in the foreseeable future be dated.
Re:How to Exit Vim by chipotle_coyote on Wednesday January 08, 2020 @08:08PM (#21997531)
I suspect the rationale is that, depending on the language you're using, some IDEs "help" with coding to the point where they're correcting your mistakes and even writing parts of your code for you. This is pretty much a selling point for everything JetBrains makes, and arguably even Visual Studio Code rubs against the edge of that if you're using a language that's well-supported by IntelliSense. The central thrust of the course is presumably how to write code yourself, and the case could be made that learning with an editor designed to routinely save you from yourself isn't going to be as good as an editor which, well, isn't.

(This is setting aside the argument as to whether Vim is a "dated" editor. Vim is an old editor, to be sure, but forget WordPerfect -- it's not as old as Microsoft Word is!)

Re:How to Exit Vim by Faark on Wednesday January 08, 2020 @09:00PM (#21997826)
I still prefer what they made us do for the test: Write the program on paper.
Re:How to Exit Vim by stolen_biscuit on Wednesday January 08, 2020 @06:11PM (#21996802)
Vim is far from dated, and comparing Vim to wordstar shows how little you understand it
Re:How to Exit Vim by RandomException on Wednesday January 08, 2020 @08:08AM (#21991049)
I've found myself learning stuff better when there is no IDE correcting me all the time and auto-generating stuff out of thin air. IDEs are awesome once you know what you're doing but I do also see the reasoning for forcing to use an ancient (and still quite powerful) editor.

Disclaimer: I do most of my coding in Vim but use IDEs every once and a while.

Re:How to Exit Vim by dorfsmay on Wednesday January 08, 2020 @09:44AM (#21991846)
If this was at work, or if this was for every class at a given university, I'd agree with you. But, in a place where you go to be challenged intellectually and open your mind, why not? This would be perfect if the same professor forces everybody to use a specific IDE in a different class...
Re:How to Exit Vim by na85 on Wednesday January 08, 2020 @08:57AM (#21991427)
I disagree completely. When I took CS036 in first year engineering, it was a C++ course that used Visual Studio and while I received a good grade on that course, at the end of it I did not know how to invoke the compiler from the command line. I only knew how to build software from the drop down menu in VS2004 or whatever version it was.

IDEs are a crutch.

Re:How to Exit Vim by bradstewart on Wednesday January 08, 2020 @02:40PM (#21994948)
Sure, but invoking a compiler from a command line is something you can easily pick up from a coworker or an internet tutorial.

The primary focus of an intro engineering course is (usually) about the theory and structure of computing, along with general techniques for writing code.

Learning about various build tools distracts from that focus.

EDIT: Also, you seem to be implying (apologies if I'm wrong) that invoking a compiler from a command line is somehow "better" than using IDE. Why?

Re:How to Exit Vim by Skunkleton on Wednesday January 08, 2020 @06:50PM (#21997054)
My intro course used BlueJ, which is (was?) some sort of dumbed down Java IDE specifically for students. The thought was that dealing with all of the crap surrounding software development, like make systems, editors, compiler flags, etc was a distraction from learning basic programming constructs. Looking back I agree completely. As a new programmer, things like compiler flags are pretty much black magic. You don't really learn anything by reciting magic spells.

Learning development tools like the CLI, IDEs, debuggers, linters, et. al. should be required for a CS degree. I don't think an intro course is the right setting.

Re:How to Exit Vim by gbacon on Wednesday January 08, 2020 @12:29PM (#21993621)
I’ve seen Java developers completely lost with no idea where to start debugging an installation in a lab environment because they had no IDE, JDK only. Sure, you might argue that it’s an unlikely scenario, but never say never. CS is one of many fields where having a basic understanding of how things work at least a couple of layers of abstraction down is a good thing, and at least could save potential embarrassment.
Re:How to Exit Vim by filmgirlcw on Wednesday January 08, 2020 @02:10PM (#21994672)
You're not wrong, but I don't see how forcing people to use vim solves this problem. If anything, you risk having a whole class of students who can only do things the vim way. I'll grant you that you're much more likely in a lab environment to have access to a POSIX system so you can use vi or whatever, but you could also wind up in a shop that dictates its devs use a specific IDE.

I'm in full-agreement that it's a good thing to have a basic understanding of how stuff works, but I'm not sure how enforcing vim over VSCode or Sublime or [insert your favorite editor] necessarily teaches that. It teaches adherence to vim.

I'm of the opinion that programming tools are very personal -- that's why there are so many debates and that's why we'll never have universal agreement. I know my way around the command line and I'll suffer through vim if I have to (it's fine. It's just not my editor of choice), but if I don't have my dotfiles or configurations, I'm not going to be very productive either.

I'm fine with saying, "don't use an IDE in my class, use a text editor" -- but I find it draconian and ridiculous to insist upon a specific text editor.

Re:How to Exit Vim by gbacon on Monday January 13, 2020 @12:11PM (#22036346)
I should have been clear that I lean toward your side of the issue in that a blanket policy for the entire term does seem a bit extreme but completely without value. If I were pushed to defend the instructor’s policy of a particular editor, vi is nearly certain to be on any Unix installation. Not necessarily how I would (or have) done it, but the approach is not without value.

My preferred Unix editor is the vi family. I wonder whether emacs people are less sympathetic.