News for hackers. Stuff that matters.
Re:Benefits of Not Using an IDE by drunkpotato on Saturday August 21, 2021 @12:16PM (#28258136)
The best developers I've found are the ones who know how to work without an IDE, even if their preference is to use one.

Contrastingly, the worst, slowest developers I've worked with rely on their IDE without understanding what it's doing for them, and are helpless in new/unsupported situations. They also, 100% of the time, screw up their git repositories on a regular basis, and need someone who knows what they're doing to help them out, costing their colleagues time and frustration helping them when they won't help themselves.

Some people from the first group find they prefer not using an IDE. It's rather the opposite of laziness, it's choosing the workflow they find most productive, even if it differs from your preferred workflow.

Re:Benefits of Not Using an IDE by bccdee on Saturday August 21, 2021 @12:32PM (#28258285)
The thing I hate most about IDEs is when they insinuate themselves into a project's development workflow so deeply that you can't make do without them.

Do I have to spin up a whole session of the IDE just to run my test suite? Do I have to dig through eleven nested GUI settings dialogues to find out what the command to build the damn project is, just so I can tweak a build parameter? Is there so much boilerplate or XML or whatever within the frameworks we're using that writing or changing code is impossible without automation? These are bad things.

An IDE can be a powerful abstraction, but when the underlying layer it's abstracting over becomes inaccessible, then all it's doing is adding more complexity by obscuring concrete details.

Re:Benefits of Not Using an IDE by jeffeld on Saturday August 21, 2021 @01:14PM (#28258671)
"An IDE can be a powerful abstraction, but when the underlying layer it's abstracting over becomes inaccessible, then all it's doing is adding more complexity by obscuring concrete details"

This. All day long.

Re:Benefits of Not Using an IDE by squarefoot on Saturday August 21, 2021 @01:57PM (#28259052)
And night, and the whole week.

I can edit, compile and install my kernel and all its drivers in a few command lines from shell, why more and more projects, most way simpler than a kernel, ask me to install for example VSC just to build them? Give me a Makefile and possibly enough instructions to integrate its options into the favorite IDE, but making the IDE a requirement, especially for small projects or those one simply wants to build and install, adds only more complexity.

Re:Benefits of Not Using an IDE by rzwitserloot on Saturday August 21, 2021 @01:19PM (#28258715)
> Do I have to spin up a whole session of the IDE just to run my test suite?

In the java ecosystem at least, the answer is no. But in highly CI-based situations, the answer is still no, but you DO need the CI system to be up, and the only way to run a test at all is to just commit something and see the CI system run it, e.g. because the tests require a database engine that isn't installed on your development machine.

I'm not saying that's a good idea, just saying that I have seen that in real (as in, for pay and for real eyeballs) dev teams. I've never observed 'I only know how to run my tests inside the IDE'. IDEs (again, this is mostly speaking from the perspective of the java ecosystem) use build tools as project definitions, and those build tests all know how to run the test suite from the command line. `mvn test` is all you need to type.

> Do I have to dig through eleven nested GUI settings dialogues to find out what the command to build the damn project is, just so I can tweak a build parameter?

No, it's `mvn install` or `mvn build` or whatever take on 'build' you are looking for specifically.

If you ditch your IDE, __nothing__ whatsoever would change: Your build is _still_ based on a build tool. (it better be, in the sense that trying to run the build by hand or by patching a bunch of shell scripts together is almost 100% correlated with very low quality dev teams in my experience).

In other words...

what are you on about? IDEs don't abstract such details away to extreme degrees. In fact, insofar that they ever did (generally in GUI builders, which, what with the web and languages like java and Adobe Air and silverlight falling by the wayside in the past few years for front-end dev - are kinda dead), the new takes on such tools all very explicitly keep the whole 'actually this just edits a text file of some sort and this automated click-the-GUI-together tool is bending over backwards to ensure that the underlying file looks as close as possible to what you would write by hand.

Re:Benefits of Not Using an IDE by szatkus on Saturday August 21, 2021 @02:02PM (#28259098)
In my current organization I saw a project, where there is no Maven. The build system is a couple of configuration files for Eclipse IDE and that's the only way to run it. I'm glad I didn't have to do anything around that.
Re:Benefits of Not Using an IDE by eropple on Saturday August 21, 2021 @02:31PM (#28259321)
That definitely does happen with really poorly considered starting points, but in my experience it's also maybe a day's work to pull that apart and put it into Maven/Gradle (unless you've also got, like, some really terrifying ant stuff to go with it, and even then you can sometimes ask "is this even necessary?" and get with the chopping down).

IntelliJ even has tooling to get you started:

https://www.jetbrains.com/help/idea/convert-a-regular-projec...

Re:Benefits of Not Using an IDE by touisteur on Saturday August 21, 2021 @05:21PM (#28260682)
The ant eclipse plugin does some lifting for you. Sometimes, it can be better this way than having 2 buildthings not in sync... But yeah ant all the way if everyone's happy with it...
Re:Benefits of Not Using an IDE by eitland on Sunday August 22, 2021 @02:38AM (#28263415)
I had to fix one such case 6 years ago where the build procedure was to build in IntelliJ.

It took a day or two to get kt over to Maven: basically create a Maven file, make sure everything were in the correct standard Java layout, then build and unzip the war file and compare it to the unzipped war file from the existing build process repeatedly while getting the last tweaks in place.

Re:Benefits of Not Using an IDE by AmpsterMan on Saturday August 21, 2021 @02:21PM (#28259252)
My team used to have stuff off that nature after we inherited the code base. Acquisition and movement of HQ meant a brand new team on a 15 year old B2B SaaS. Trying to move away from the combination of shell scripts, perl scripts, eclipse config, etc. Over to Gradle has been painful, but with it for onboarding new devs.
Re:Benefits of Not Using an IDE by wheybags on Saturday August 21, 2021 @03:38PM (#28259892)
If you're not familiar with them, have a look at visual studio SLN files. They are exactly what was described. There is more and more being pushed into the msbuild files instead (a separate format, that is at least theoretically separate from visual studio) but the weird and underdocumented sln file still exists. And msbuild files are absolutely unreadable XML crap anyway, good luck writing one by hand.
Re:Benefits of Not Using an IDE by bccdee on Saturday August 21, 2021 @08:41PM (#28261925)
> have a look at visual studio SLN files. They are exactly what was described.

You nailed it in one — visual studio is exactly what I was complaining about.

Re:Benefits of Not Using an IDE by bccdee on Saturday August 21, 2021 @08:39PM (#28261913)
>> Do I have to spin up a whole session of the IDE just to run my test suite?

> what are you on about?

This complaint is based on a .NET project I used to work on. I'm sure this isn't universally the case for everything .NET, but I had to work with one instance of visual studio open in the code repository and a second instance of visual studio open in the test repository. Everything we did was configured in and executed through VS. It was pretty nasty.

Re:Benefits of Not Using an IDE by jeffterns8 on Monday August 23, 2021 @11:42AM (#28277551)
Poor project management != fault of IDE, it's the one responsible for choosing to configure the project in said way. That's not dismissing the fact that VS and other IDEs allow, and even recommend, nasty setups but, unless they force them, I don't see blaming optional features or poor usage of a tool as a rational reason to write off an entire toolset that can be powerful and productive.
Re:Benefits of Not Using an IDE by bccdee on Monday August 23, 2021 @11:58PM (#28284940)
It was an older project — from what I've heard, better VS project structuring has only been possible in newer VS editions.
Re:Benefits of Not Using an IDE by jeffterns8 on Tuesday August 24, 2021 @08:58AM (#28288232)
How old are we talking? I've worked with versions of VS since VS 2005 and don't recall ever having issues with project structuring.
Re:Benefits of Not Using an IDE by Yajirobe on Saturday August 21, 2021 @02:14PM (#28259198)
> The thing I hate most about IDEs is when they insinuate themselves into a project's development workflow so deeply that you can't make do without them.

Isn't this the case with Android Studio? Is it even possible to do Android development without Android Studio?

Re:Benefits of Not Using an IDE by papaf on Saturday August 21, 2021 @03:38PM (#28259886)
Is it even possible to do Android development without Android Studio?

Oh yes: https://www.lambdanative.org/

Re:Benefits of Not Using an IDE by Kwpolska on Sunday August 22, 2021 @08:00AM (#28264755)
You can build an app from the command line with Gradle: https://developer.android.com/studio/build/building-cmdline

That said, it would be quite difficult to write anything substantial without Android Studio.

Re:Benefits of Not Using an IDE by eitland on Sunday August 22, 2021 @02:32AM (#28263390)
> Do I have to spin up a whole session of the IDE just to run my test suite? Do I have to dig through eleven nested GUI settings dialogues to find out what the command to build the damn project is, just so I can tweak a build parameter?

Can you say what language/platform you talk abojt here?

I currently work in Kotlin with IntelliJ where sadly the only working IDE is IntelliJ,but you can build it just fine and even fix bugs using whatever editor you want.

I also maintain a lot of React code, used to work on .Net Core and some plain old C# before Core, I've maintained Angular and before that Java, older Delphi versions and even PHP.

The only projects that had the problem you talk about were

- Visual Studio (not Visul Studio Code) projects from before .Net core

- and old Delphi projects.

That said, I'm kind of stuck with IntelliJ now because of Kotlin (which is an awesome language) but I miss NetBeans a lot and how it - instead of saving everything in its own configuration files - simply accepted Maven .pom files as configuration, meaning uncluttered repos and still having all config synced and up to date everywhere. (Maven is well though out so if you just accept the defaults the files are small and contain only the things they need to contain like name, namespace and version, dependencies and necessary configuration.)

Re:Benefits of Not Using an IDE by bccdee on Sunday August 22, 2021 @05:08PM (#28269622)
I was mostly complaining about an old Visual Studio project I used to work on.
Re:Benefits of Not Using an IDE by eitland on Monday August 23, 2021 @12:16AM (#28272288)
Then we agree very much.

I can happily say that this problem doesn't exist on the other platforms I deal with but I guess you already know :-)

Re:Benefits of Not Using an IDE by jeffterns8 on Monday August 23, 2021 @09:27AM (#28275349)
You mean when you or a team chooses to embed them into the project's workflow to that degree? Or are you talking about the worst IDEs no one should use while sounding like it is a general IDE issue with the industry standards?

Any decent IDE doesn't enforce such things, it is something questionable devs choose to incorporate. You may inadvertently do this if you don't know an IDE, and try to use excessive features available, but that's still on you for doing so. It shouldn't have been a decision made by someone lacking in knowledge/experience, whether a junior dev or a senior selecting an unknown tool without proper evaluation.

Or are you implying such features from IDEs can somehow be attained by non-IDE toolchains that don't also ingrain you in those toolchains to make use of said features?

Re:Benefits of Not Using an IDE by tester756 on Saturday August 21, 2021 @02:04PM (#28259119)
>An IDE can be a powerful abstraction

how IDE "can" be an abstraction?

It's tool, it's wrapper (e.g button over commandline commands), but abstraction?

Re:Benefits of Not Using an IDE by xxpor on Saturday August 21, 2021 @02:16PM (#28259215)
The line between the two isn't very clear, nor is it productive to really argue about it, IMO
Re:Benefits of Not Using an IDE by tester756 on Saturday August 21, 2021 @02:24PM (#28259278)
>nor is it productive to really argue about it

I do agree

Re:Benefits of Not Using an IDE by Nevermark on Saturday August 21, 2021 @04:48PM (#28260448)
It was still a good question!

There is a line between a tool:

A) that makes managing relevant information more efficient, while not hiding any of that information.

B) vs. a tool that hides some details, providing a tradeoff of higher productivity MOST of the time, but at the cost of requiring a fall back tool on other (rare?) occasions.

I would say, once a tool stops providing access to any (even rarely) relevant details, it has become an abstraction.

Re:Benefits of Not Using an IDE by rzwitserloot on Saturday August 21, 2021 @01:17PM (#28258696)
This is a bit of a cargo cult argument.

Specifically: "The best developers" indeed know how to work without an IDE. They also know 5 programming languages, 50 libraries, and know a whole bevy of esoteric randomness, such as difference between a Thompson-NFA style regex engine and the limitations thereof, or something like that.

There is no such thing as a 'the best developer' that doesn't know much. The 'knows many things and has lots of experience' is a tautologic argument.

In the mean time, bad programmers 'use an IDE a lot and are lost without it'. That's also tautologic.

In other words, your observation proves absolutely nothing, in regards to whether it is wise to use an IDE or not. You're not going to magically turn a bad programmer into a good one by uninstalling their IDE. You're not going to ensure a new programmer is going to turn into a good one if you advise them to forego an IDE, nor will you ruin a potentially good one if you install an IDE on their computer.

It says nothing.

Re:Benefits of Not Using an IDE by lultimouomo on Saturday August 21, 2021 @12:28PM (#28258250)
> The best developers I've found are the ones who know how to work without an IDE, even if their preference is to use one.

The best swimmers can stay afloat with pounds and pounds of weight dragging the down; the worst swimmers will drown. Doesn't mean weighing you down makes you a better swimmer.

Re:Benefits of Not Using an IDE by falcolas on Saturday August 21, 2021 @12:31PM (#28258281)
Ironically, it would make you a better swimmer - it will help you build up strength, stamina, and technique.

An excellent choice in analogies.

Re:Benefits of Not Using an IDE by wokwokwok on Sunday August 22, 2021 @05:12AM (#28264018)
...this is actually a great analogy.

Yes, it does; but when you're trying to set a record swimming the English Channel, or escaping from a sinking ship you'd be an idiot to do it deliberately weighing yourself down with weights.

I suppose there's something to be said for both ways of doing things ultimately, depending on what situation you're in, and what your goal is.

...but unconditionally advising people to swim with weights, is simply bad advice.

Re:Benefits of Not Using an IDE by falcolas on Monday August 23, 2021 @09:53AM (#28275711)
> when you're trying to set a record swimming the English Channel

Your training time to competition time is about 99:1 (on the high side for the competition time). The record attempts (or the emergencies) are a poor continuation of this analogy when it comes to programming.

> unconditionally advising people to swim with weights, is simply bad advice

So we should advise them to use floats instead, since it makes swimming so much easier?

Re:Benefits of Not Using an IDE by orwin on Sunday August 22, 2021 @08:23AM (#28264889)
So the best case is learning without an IDE, and working with one?
Re:Benefits of Not Using an IDE by jeffterns8 on Monday August 23, 2021 @11:53AM (#28277760)
Well the analogy doesn't actually allow for a starter/bad swimmer as they drown first.

Also, swimmers don't swim with weights to improve technique or strength. I'd expect it would result in unorthodox or worsened technique due to trying to swim around the artificial imbalance of the weights.

Re:Benefits of Not Using an IDE by falcolas on Monday August 23, 2021 @05:12PM (#28282018)
> Also, swimmers don't swim with weights to improve technique or strength.

They use the aquatic analog to weights - disabling their arms or legs, drastically increasing drag (via multiple swimsuits, or suits with chute-like pockets), swimming against bungee cords.

Re:Benefits of Not Using an IDE by jeffterns8 on Monday August 23, 2021 @09:58PM (#28284339)
Other than bungee cords for small pools/space usage, can't say I've heard of such drag methods, only of resistance training outside of the pool. Though, I didn't mean to take the analogy off-topic, maybe I got too literal.
Re:Benefits of Not Using an IDE by bryanrasmussen on Saturday August 21, 2021 @04:17PM (#28260207)
Harrison Bergeron would never have ascended so high, were he not so greatly weighed down first.
Re:Benefits of Not Using an IDE by cwyers on Saturday August 21, 2021 @02:45PM (#28259408)
I mean, assuming you don't drown.
Re:Benefits of Not Using an IDE by kristjansson on Saturday August 21, 2021 @04:18PM (#28260218)
Exactly this. Productive use of IDEs (or vim, or emacs, or vsc, or …) is the opposite of cargo-culting: one knows exactly how to decompose the abstractions presented by the IDE. Should they fail, or prove limited, one grumbles a bit and then goes and does it by hand.

Using or not using an IDE because good developers use but don’t need an IDE misses the point. It’s never the choice of tool, it’s knowing how to use it.

Re:Benefits of Not Using an IDE by oldsecondhand on Saturday August 21, 2021 @12:36PM (#28258325)
But you don't use git to write your code. Code autocompletion and cross referencing are pretty big productivity boosters that won't prevent you from learning command line git. Also I bet you don't use the command line for diffing files.

Also the problems is that most IDEs half ass their git client. When I was using Sourcetree, I rarely ever felt the need to go to the command line.

Re:Benefits of Not Using an IDE by dmurray on Saturday August 21, 2021 @02:43PM (#28259402)
> Also I bet you don't use the command line for diffing files.

Wait, isn't this normal? I run "diff" and "git diff" all the time (I think I have those both set up to invoke colordiff, but it's still a command line program). Also vim -d.

Occasionally I browse diffs on Github or Bitbucket instead. I don't find it an improvement. I do favour editors over IDEs, but I don't think I'm an extremist on this one.

Re:Benefits of Not Using an IDE by hactually on Saturday August 21, 2021 @07:11PM (#28261403)
Another git diff/diff user here. Being able to pipe my code changes is a huge win.

Maybe I'm old - my whole os/shell is my ide

Re:Benefits of Not Using an IDE by orwin on Sunday August 22, 2021 @08:27AM (#28264916)
For my sibling using `git diff`, can i introduce you to tig[0]? I think it is inferior to magit, but you can install and test it with `apt install tig` and then `tig` in a git directory.

[0] http://jonas.github.io/tig/

Re:Benefits of Not Using an IDE by paulddraper on Saturday August 21, 2021 @10:22PM (#28262338)
...But in either case, the programmer is better with the IDE
Re:Benefits of Not Using an IDE by irrational on Saturday August 21, 2021 @01:40PM (#28258907)
That sounds more like a problem with git than a problem with the IDE. Why does git allow you to screw up your repository?
Re:Benefits of Not Using an IDE by slim on Saturday August 21, 2021 @01:48PM (#28258965)
Bacause git is powerful
Re:Benefits of Not Using an IDE by moron4hire on Saturday August 21, 2021 @02:05PM (#28259126)
Being able to do the wrong thing should not be confused with power. It's just a broken tool, that is broken so often, it needs this so-called "power" to clean up after it when it shits the bed.
Re:Benefits of Not Using an IDE by Akronymus on Saturday August 21, 2021 @03:07PM (#28259623)
The very power that allows you to screw up is the power thar makes the tool worth using in the first place.
Re:Benefits of Not Using an IDE by aoms on Saturday August 21, 2021 @01:52PM (#28259005)
Git simply gives you the power to do 'things', if that results in a state you didn't want.. well.. go figure
Re:Benefits of Not Using an IDE by tester756 on Saturday August 21, 2021 @02:02PM (#28259099)
It's not about IDE or not, it's about curiosity how do things work under the hood.
Re:Benefits of Not Using an IDE by temporallobe on Saturday August 21, 2021 @07:14PM (#28261422)
The Git tools built into IDEs are indeed very convenient, but I often warn junior (and even mid) developers to NOT use them unless you understand exactly what they’re doing.
Re:Benefits of Not Using an IDE by thrower123 on Saturday August 21, 2021 @01:45PM (#28258944)
The worst developers I've worked with have been sado-masochists who refuse to use IDEs.

People take pride in being less productive and making things harder than they need to be.

Re:Benefits of Not Using an IDE by deltasixeight on Saturday August 21, 2021 @03:06PM (#28259611)
Nah if you ever used a modern IDE from the jetbrains line. In order to even get the IDE working with a project you need to configure it to work.

That absolutely necessitates understanding of the details of what's going on. You are literally building automation by using additional tooling. It doesn't build it for you.

Also screwing up a git repo, what does that even mean? A bad commit?

Re:Benefits of Not Using an IDE by h4x0r12345 on Saturday August 21, 2021 @04:22PM (#28260266)
If you have a Maven project, IntelliJ will open it and configure itself automatically. The IDE user doesn't need to know anything about Maven build configurations. It just works.
Re:Benefits of Not Using an IDE by deltasixeight on Saturday August 21, 2021 @10:59PM (#28262489)
Totally Wrong.

The Maven Project IS the configuration. Intellij is only a shortcut. It let's you access configurations via click rather than via a command line expression.

In the end if you want to create a Maven Project configuration or edit the configuration it's on you to do it. At most intellij will just generate boilerplate for you.

Re:Benefits of Not Using an IDE by h4x0r12345 on Saturday August 21, 2021 @11:07PM (#28262530)
No that's not how it works. IDEA has its own project files (*.iml, .idea), separate from Maven. We are talking about IDE projects which are separate from Maven.
Re:Benefits of Not Using an IDE by deltasixeight on Sunday August 22, 2021 @01:08AM (#28263048)
Yes that's configuration for the IDE. But the project itself is configured off of Maven, the project files for the IDE are ADDITIONAL settings for the IDE itself.

For example in CLion you can't create a new target from the IDE, you have to edit the cmake file.

Re:Benefits of Not Using an IDE by h4x0r12345 on Sunday August 22, 2021 @01:16AM (#28263079)
Your wording is not precise

> In order to even get the IDE working with a project you need to configure it to work.

Meaning you already have a Maven/SBT/Gradle project and need to get the IDE to work with it.

Re:Benefits of Not Using an IDE by deltasixeight on Monday August 23, 2021 @03:03AM (#28273017)
"it" in this case refers to the project. If it refers to the IDE then the statement is false. So by logic it must refer to the project itself.

Why else would I come on here to make some claim that is false?

Re:Benefits of Not Using an IDE by dimgl on Saturday August 21, 2021 @02:24PM (#28259280)
I'm not even sure what to make of this. No sane developer I know will work without an IDE, much less prefer not using an IDE.

Sure, we can probably write code without an IDE but in what way does that mean I'm a better developer? I feel myself cringing whenever I hear that a developer is going to reach for TextEdit or Notepad++ to write code.

Re:Benefits of Not Using an IDE by deltasixeight on Saturday August 21, 2021 @02:58PM (#28259551)
Those editors aren't really part of the conversation anymore. I would say they were maybe over 12 years ago. Not so nowadays.

People are referring to SublimeText, Vim, Emacs, VSCode as Programming Text editors. VSCode is currently the most popular with vim as purist second and Emacs for "elite" hackers.

Re:Benefits of Not Using an IDE by jeffterns8 on Monday August 23, 2021 @12:04PM (#28277966)
The "programming text editors"/"code editors" of now that are used in place of traditional IDEs are practically always extended to, by definition, being an IDE, albeit a leaner, more custom-fit one.
Re:Benefits of Not Using an IDE by orwin on Sunday August 22, 2021 @08:31AM (#28264939)
I'm really just asking, do you think VSCode is a text editor? I used to put it in the same categories as IDE (and thought that it was really better than Netbeans and Eclipse)
Re:Benefits of Not Using an IDE by deltasixeight on Monday August 23, 2021 @03:08AM (#28273038)
The lines have blurred. I would put it more in the editor category. You really need to download plugins for it to come close to an IDE and it's not as feature complete as say pycharm or Clion.

I would say VSCode is more in the code editor category, but as I said before the lines are blurring. With enough plugins and configuration even vim and emacs can straddle that line.

In general IDE's tend to have more features less bugs, and have all of these features out of the box.

Re:Benefits of Not Using an IDE by jeffterns8 on Monday August 23, 2021 @12:12PM (#28278101)
That's just confusing big-brand mature IDE suites as the definition for IDE though. Any dev working on an actual project is going to be using those tools with plugins/extensions, configured as an IDE.

A dev would require completely separate tools that provide that functionality to say otherwise.

Re:Benefits of Not Using an IDE by CharlesW on Saturday August 21, 2021 @12:55PM (#28258501)
> The best developers I've found are the ones who know how to work without an IDE, even if their preference is to use one.

"Best" is a marketing term. How do you mean it as it applies to software quality or productivity?

I'm trying to understand if you're serious, since the author (who notes "I myself use IntelliJ, CLion and MySQL workbench almost everyday") doesn't even seem to believe what he's writing.