Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
xtal
Jan 9, 2011

by Fluffdaddy

ratbert90 posted:

programmers who refuse to use IDE's are the absolute worst.

Every, single, loving time I open up code from a programmer that refuses to use a IDE, it's just a sea of red and yellow bullshit.

Writing code in an IDE is a step above finger painting

Adbot
ADBOT LOVES YOU

UraniumAnchor
May 21, 2006

Not a walrus.

ratbert90 posted:

Every, single, loving time I open up code from a programmer that refuses to use a IDE, it's just a sea of red and yellow bullshit.

Add a lint/format/style step to your CI. You have CI, right?

The Fool
Oct 16, 2003


Yesterday I had to write 10-15 lines in an editor that didn’t auto close braces and I was incredibly angry about it.

CPColin
Sep 9, 2003

Big ol' smile.
This Grails project was developed in a plain text editor for so long that the Groovy compiler crashes when IntelliJ tries to build it.

NihilCredo
Jun 6, 2011

iram omni possibili modo preme:
plus una illa te diffamabit, quam multæ virtutes commendabunt

UraniumAnchor posted:

Add a lint/format/style step to your CI. You have CI, right?

I'm not doing this for several reasons, but I'm curious: adding a formatting step to the project build definition makes sense, but how does it work if you make the CI do it?

Like, every time a user pushes a commit, the CI automatically runs the code formatter, then pushes the resulting commit? So every time you commit some code, you need to wait for the CI to run, then pull so you get back the formatted code? And if you forget you get probably really nasty merge conflicts next time you push?

Or are you supposed to run the formatter before committing (hopefully as part of the build definition), and the CI step is just a safeguard that only makes a new commit in the event you forgot?

Jabor
Jul 16, 2010

#1 Loser at SpaceChem
You're supposed to run the formatter manually, CI runs the formatter and fails if it turns out you didn't.

xtal
Jan 9, 2011

by Fluffdaddy

NihilCredo posted:

I'm not doing this for several reasons, but I'm curious: adding a formatting step to the project build definition makes sense, but how does it work if you make the CI do it?

Like, every time a user pushes a commit, the CI automatically runs the code formatter, then pushes the resulting commit? So every time you commit some code, you need to wait for the CI to run, then pull so you get back the formatted code? And if you forget you get probably really nasty merge conflicts next time you push?

Or are you supposed to run the formatter before committing (hopefully as part of the build definition), and the CI step is just a safeguard that only makes a new commit in the event you forgot?

The world is your oyster. I have used all of the systems you describe. The nasty merge conflicts are a real problem. My preference is to run the linter locally and reject builds on CI where the linter suggests any changes.

UraniumAnchor
May 21, 2006

Not a walrus.

Jabor posted:

You're supposed to run the formatter manually, CI runs the formatter and fails if it turns out you didn't.

Yes, this is what I meant, sorry for the lack of clarity.

ToxicFrog
Apr 26, 2008


xtal posted:

The world is your oyster. I have used all of the systems you describe. The nasty merge conflicts are a real problem. My preference is to run the linter locally and reject builds on CI where the linter suggests any changes.

Yeah, that's what we do -- when you push your changes to code review, it automatically lints it (and runs a bunch of other checks) and won't let you commit unless it's clean.

Absurd Alhazred
Mar 27, 2010

by Athanatos
https://twitter.com/peregrinogris/status/993513838686408704

itskage
Aug 26, 2003


Holy poo poo that's amazing.

Sywert of Thieves
Nov 7, 2005

The pirate code is really more of a guideline, than actual rules.

The Fool posted:

Yesterday I had to write 10-15 lines in an editor that didn’t auto close braces and I was incredibly angry about it.

After a few months of hemming and hawing at my new job, I finally switched from Vim to Netbeans. I had to turn off so many autoformatting options that annoyed me to no end. I hate autocompleters.

(Of course I installed a vim plugin into Netbeans so it doesn't feel like programming in Notepad. :smug: )

SardonicTyrant
Feb 26, 2016

BTICH IM A NEWT
熱くなれ夢みた明日を
必ずいつかつかまえる
走り出せ振り向くことなく
&



I'm learning the code our team uses to test the UI of one of our department's products. Aside from the usual anti-patterns, none of the assert statements for the tests are actually in the test classes. I:psyduck:

canis minor
May 4, 2011

UraniumAnchor posted:

Add a lint/format/style step to your CI. You have CI, right?

You can do that in precommit hook as well

edit: oh, sorry, this is me begin stupid and replying before reading ahead

NihilCredo posted:

Or are you supposed to run the formatter before committing (hopefully as part of the build definition), and the CI step is just a safeguard that only makes a new commit in the event you forgot?

We do formatting/linting before commit, and validation on CI - CI doesn't change code, it just barks when code doesn't comply to standard

canis minor fucked around with this message at 12:57 on May 11, 2018

QuarkJets
Sep 8, 2008

SardonicTyrant posted:

I'm learning the code our team uses to test the UI of one of our department's products. Aside from the usual anti-patterns, none of the assert statements for the tests are actually in the test classes. I:psyduck:

Sounds like your codebase expectations have experienced disruption, you should thank whoever wrote that. Maybe get him a nice gift such as a pint of blood from a young person

Hughlander
May 11, 2005

xtal posted:

The world is your oyster. I have used all of the systems you describe. The nasty merge conflicts are a real problem. My preference is to run the linter locally and reject builds on CI where the linter suggests any changes.

I just recently checked in a .editorconfig for a project that has windows and osx developers fighting over spaces/tabs and line endings. (gently caress people who have editors that put in UTF-8 BOMs. gently caress them to no end.) I'm not looking forward to the spooky diffs for the next few months or how bad blame/annotate will get poo poo wrong.

iospace
Jan 19, 2038


xtal posted:

Writing code in an IDE is a step above finger painting

I use an IDE for my projects mostly because it's easier to program a microcontroller through one.

Though I edit my code in vim.

ChickenWing
Jul 22, 2010

:v:

xtal posted:

Writing code in an IDE is a step above finger painting

iospace posted:

I use an IDE for my projects mostly because it's easier to program a microcontroller through one.

Though I edit my code in vim.

I use an IDE because they are good and I'm not a masochist who deprives themselves of useful tools in pursuit of nerd cred :thumbsup:

iospace
Jan 19, 2038


ChickenWing posted:

I use an IDE because they are good and I'm not a masochist who deprives themselves of useful tools in pursuit of nerd cred :thumbsup:

Masochist yes, nerd cred? Not really. Only what I ended up learning on in a Linux environment and I got used to it over a traditional editor.

TooMuchAbstraction
Oct 14, 2012

I spent four years making
Waves of Steel
Hell yes I'm going to turn my avatar into an ad for it.
Fun Shoe
I use vim and commandline file management/search tools because they're transferable to every language I work with and I don't have to dick around with setting up the IDE and project and so on. Yes, IDEs can do a lot of good, but they also introduce just enough friction that I don't want to be bothered with dealing with them.

Plus, lately most of my work has been in email, docs, and chat, not so much in the code. :smith:

Thermopyle
Jul 1, 2003

...the stupid are cocksure while the intelligent are full of doubt. —Bertrand Russell

I purposely try to switch my editing toolset up at least once a year.

I've always disliked the idea of getting to the point where I just can't function if I don't have my editor or IDE of choice.

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe

Thermopyle posted:

I purposely try to switch my editing toolset up at least once a year.

I've always disliked the idea of getting to the point where I just can't function if I don't have my editor or IDE of choice.

Please source your quotes

Xarn
Jun 26, 2015

Suspicious Dish posted:

Please source your quotes

Although it probably does explain something about your views on js apps.

The Fool
Oct 16, 2003


Merijn posted:

After a few months of hemming and hawing at my new job, I finally switched from Vim to Netbeans. I had to turn off so many autoformatting options that annoyed me to no end. I hate autocompleters.

(Of course I installed a vim plugin into Netbeans so it doesn't feel like programming in Notepad. :smug: )

There are two auto-formatting options that I get really annoyed about if I don't have them: auto-indent and auto-close brackets

Nearly any other editor/ide feature I could work around not having, but not having those features really messes up my flow when I'm actually writing new code.

TooMuchAbstraction
Oct 14, 2012

I spent four years making
Waves of Steel
Hell yes I'm going to turn my avatar into an ad for it.
Fun Shoe
What I hate is auto-indent that has opinions on what indentation level I should be at. Like, when I hit enter, I want to be either at the same level of indentation as the prior line, or +- one or maybe two indentations depending on what said prior line was at. I don't want you looking at the entire doc, going "Ah! This is an XML doc and you're 8 tags in, so you should clearly be 8 levels indented!" No, gently caress you, I purposely broke indentation rules 100 lines earlier so the drat thing would be readable, stop insisting I do things your way.

FlapYoJacks
Feb 12, 2009
I mean, let’s be honest here. The only good IDE for most languages is a IntelliJ IDE.

Carbon dioxide
Oct 9, 2012

ratbert90 posted:

I mean, let’s be honest here. The only good IDE for most languages is a IntelliJ IDE.

You mean JetBrains. IntelliJ is their jvm-languages IDE (java, scala, groovy, kotlin), PyCharm is their python IDE, and they got one for .NET too.

necrotic
Aug 2, 2005
I owe my brother big time for this!

ratbert90 posted:

I mean, let’s be honest here. The only good IDE for most languages is a IntelliJ IDE.

Rider is fuckin' great.

itskage
Aug 26, 2003


Every time this dumb IDE conversation comes up all I hear is a bunch of grumpy old men complaining about change.

IDEs continue to improve as time goes on, and lots of the modern ones are pretty configurable. I'm reminded of all of the blogs out there along the lines of "I tried VS Code over emacs and it was good, but it's still has these annoying modern things that I don't like. Edit: 5 mins after this post twitter has informed me that I can disable all of the things I don't like, while keeping the things I do."

I mean nothing's perfect, but it's the whiny reluctance and the blatant bias that it will suck before even trying it that gets me.

This looks cool as hell and I am interested to try it out next time I need to write some C#:
https://www.youtube.com/watch?v=Tgfa7mMe2uY

Right now I'm in a miserable world of PHP, and I would die without an IDE. I need that god drat help to remember that strpos($haystack, $needle) with no underscores in the name, vs array_search($needle, $haystack), where it has an underscore in the name, and then the god drat parameters are flipped.

Tooltips with parameters and documentation, or the ability to peep into functions.
Ctrl click to navigate right to it.
Realtime linting and BPA, which means not only do you let CI enforce company policy for formatting and documentation, but everyone can get instant feedback.
Collapsible classes, methods, schema.
VCS integration with diff tools and automatic nagging of newbie devs that never remember to pull before working.
Debugging right in the editor.

Lots of them support a ton of languages now and have per workspace and global customizations, that can be transferred or synced.

I mean I dunno. You guys do you, but it just sounds like stubbornness to me.

necrotic
Aug 2, 2005
I owe my brother big time for this!
VSCode is bad because electron apps are bad yo.

Volguus
Mar 3, 2009

itskage posted:

I mean I dunno. You guys do you, but it just sounds like stubbornness to me.

It is definitely stubbornness and unwillingness to change. Sometimes it's warranted sometimes ... meh, you're working way harder than you should.

comedyblissoption
Mar 15, 2006

it's a strawman to assume emacs or vi or whatever don't have those features

Bongo Bill
Jan 17, 2012

vi and emacs have shitloads of editing features and it's only in the last few years that modern-style editors have come close.

The Fool
Oct 16, 2003


necrotic posted:

VSCode is bad because electron apps are bad yo.

counterpoint, vscode is cool and good

necrotic
Aug 2, 2005
I owe my brother big time for this!

The Fool posted:

counterpoint, vscode is cool and good

I've tried it a few times and each time is a resounding "meh".

xtal
Jan 9, 2011

by Fluffdaddy
Nothing within 50 feet of JavaScript is good

Volguus
Mar 3, 2009
vscode's blinking cursor kills your battery. can emacs do that?

Taffer
Oct 15, 2010


Bongo Bill posted:

vi and emacs have shitloads of editing features and it's only in the last few years that modern-style editors have come close.

Every time I see someone say this they invariably have no clue how much functionality IDE's actually have.

It's like my old coworker who insisted for years that xcode was an amazing and powerful IDE. Then I finally managed to get him to use IntelliJ for long enough to learn its capabilities and he started downloading Jetbrains IDE's for every language and platform he could because once you have it you can't live without it.

FrantzX
Jan 28, 2007
Visual Studio is mother, Visual Studio is father.
I'm likely the only one who will get this reference.

Adbot
ADBOT LOVES YOU

The Fool
Oct 16, 2003


FrantzX posted:

Visual Studio is mother, Visual Studio is father.
I'm likely the only one who will get this reference.

Or you know, any nerd that grew up in the 90's

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply