• Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.

What IDE Or Editor Do You Use?

Aquinus

Resident Wat-man
Joined
Jan 28, 2012
Messages
10,511 (4.81/day)
Likes
5,596
Location
Concord, NH
System Name Kratos
Processor Intel Core i7 3930k @ 4.2Ghz
Motherboard ASUS P9X79 Deluxe
Cooling Zalman CPNS9900MAX 130mm
Memory G.Skill DDR3-2133, 16gb (4x4gb) @ 9-11-10-28-108-1T 1.65v
Video Card(s) MSI AMD Radeon R9 390 GAMING 8GB @ PCI-E 3.0
Storage 2x120Gb SATA3 Corsair Force GT Raid-0, 4x1Tb RAID-5, 1x500GB
Display(s) 1x LG 27UD69P (4k), 2x Dell S2340M (1080p)
Case Antec 1200
Audio Device(s) Onboard Realtek® ALC898 8-Channel High Definition Audio
Power Supply Seasonic 1000-watt 80 PLUS Platinum
Mouse Logitech G602
Keyboard Rosewill RK-9100
Software Ubuntu 17.10
Benchmark Scores Benchmarks aren't everything.
#26
Have you ever worked on a large scale project with a dozen other developers? It is pure chaos if everyone uses VIM. You end up spending too much time going through each file updating methods,classes,objects etc after one little change in strategy. Using Netbeans or Eclipse makes it much easier. You can all work within a desired framework and let the IDE take care of developers tromping all over other people's code.
That's what a version control system is for. Pretty sure I mentioned git before. It does a pretty good job at merging code together and telling you about conflicts. Also if you're merging in changes and you're not reviewing how they've been merged in, that bad to begin with. You don't need a GUI to manage a framework for you. More software than not has some thought about how code for any particular part of a project should be written, hence why projects like Moodle have guidelines you must follow to contribute code back upstream.

I should be clear I only do php professionally, and I do it all on windows. I've already explained how I think skill factors in though so my level of talent shouldn't preclude me from having an opinion... in my opinion
There is a time and a place for GUI tools and I understand that. I also don't want you to think that I don't want you to have an opinion because I have a strong one of my own. If a GUI IDE helps you do what you do, that's fantastic. All the code I work with lives on Linux servers so I have to work with a Linux platform and the easiest way to do that is stick with what I have to run stuff on. So I don't develop locally. If I write Java I'll use Netbeans and VS for C#, but when it comes to editing scripts, I can't find much justification to use an IDE.

You can't have good advanced code completion with PHP anyways because the data can always mutate. Just because it was initially set to some class "Foobar" doesn't mean that at another point it won't be "Barfoo". Most dynamically typed languages have this problem and code completion really is best suited for languages like C# and Java, languages that are strongly typed, but when it comes to scripting languages like PHP and Ruby it very well could be incomplete. I too write php professionally and it all runs on a *nix server. At work I develop on a pair Ubuntu server and deploy to a pair RHEL servers.

honestly those sound like people who got used to one way of doing things and then found reasons to keep it. the only thing that makes sense is if you are already using terminal or you NEED to cli ssh for some reason. nothing else in that post is a good reason imo to keep using such an old method. this is NOT me bashing you, your skills, or your program. this is me saying I do not understand the reasoning and I wish that I could.

I've seen your code, you are better than me by miles. but that doesn't mean I'm just going to accept that your method is better when it doesn't seem that way to me. To me it seems more likely that you are just that much better, and if you used current software you could be even more efficient.
Not at all, there is a time and a place for everything. If you don't need a GUI, there is no reason to use it imho. I can't fathom why anyone would want to run PHP on a Windows server unless there is another piece of software you're using that needs Windows (except MSSQL, MSSQL and PHP together has always been a mess). That's just me though. I've heard horror stories about using PHP with MSSQL, and I can believe it after trying to use IIS with PHP. Also, why pay for Windows Server licenses if you can get away with Linux on your server? I do understand that not all software runs on *nix, so it's not always an option.

Also just because CLIs came first doesn't mean that they're obsolete.

And I say you are complicating it by using multiple programs or scripts when one program CAN do everything you need. I can edit a file, and with a single keystroke upload & preview it. I can set up the program to keep files in sync automatically. why would I EVER use rsync or write a script when the program I am already using to edit the file can do it all for me?
I didn't say complicate, I said complect. As in, to make compound.
The exact definition is:
MerriamWebster Dictionary said:
transitive verb
: intertwine, embrace; esp : to plait together : interweave
I personally think that a lot of IDEs have a lot of features and have, quite frankly, snow balled by making any one particular tool overly complex (not necessarily complicated to use,) by having it do multiple things. I personally believe that having one tool for one job is the appropriate approach. That way each tool focuses on what it has to do well and by doing that you're not introducing interdependencies between different aspects of whatever application you're working on.

I just like simple tools that do simple things with scripts that put these simple parts together to do something complex. That's just a preference though.

I respect that you like GUI IDEs and such. I think there are some pretty good ones out there. My experiences with Netbeans for Java have been very good in fact, but as far as what I enjoy the most and has been consistently my favorite and best platform to use has been a cli with some from of *nix using vim as an editor.

It doesn't surprise me that an open source project would use vim and emacs. I am not saying one is better than the other. Anyone who does so has never spent any significant amount of time developing in a large corporate environment.
The right tools for the right job, man. To validate your point, you're right. I haven't worked in a large corporate environment so I can't say, but I can say I have experience with small to medium sized teams, but even with teams up to 8-10 people you'll still see people using subversion or git with vim or some other editor.

I don't see either tool being better or worse in a larger environment when people know how to properly use the tools they need for either platform.

I'm just saying from my own personal experience, I've enjoyed working on the CLI on *nix more so than not, particularly with PHP and Ruby applications.

I apologize for my abrasive attitude for anyone who may be offended, I tend to have that effect on people. I don't mean to put anyone down, I just feel strongly about this. Remember, I'm talking about what I prefer, not what is better for all use cases. What might be better for me, might be completely different than what is good for someone else.
 
Joined
May 21, 2009
Messages
4,966 (1.57/day)
Likes
1,511
System Name i7-PC / HTPC / iMac
Processor i7 3820 / Phenom II 940
Motherboard GIGABYTE G1.ASSASSIN2 / M3A79-T Deluxe
Cooling Corsair Hydro H100i / Scythe II (HS only)
Memory G.SKILL Trident X Series 8GB (2 x 4GB) DDR3 1600mhz / 4GB DDR2 1066 (@800) Corsair Dominator
Video Card(s) GB Radeon HD 7950s 3GB / GB Radeon HD 7950s 3GB
Storage 2x 80GB Intel X-25, 2x600gb SATA, 1x1tb 5400RPM storage /1x600GB, 3x500GB,1x160,1x120 SATA
Display(s) 1x 27" Yamakasi / Vizio 42" HDTV
Case Lian Li Lancool PC-K58 / Antec 900
Audio Device(s) HT Omega Striker 7.1 / Onboard and HDMI from ATi Card
Power Supply PC Power & Cooling 750W / 610W
Software Ubuntu / Windows 8.1 Pro / OS X / PHPStorm / Gaming
#27
I can't fathom why anyone would want to run PHP on a Windows server
no i should have been clearer. I only code I don't host myself, I use dedicated or shared lamp servers & just use windows as my os. since I work from home it's my work and personal machine, which is the main reason for using windows. even using linux though I just can't go as far as cli.

Also just because CLIs came first doesn't mean that they're obsolete.
not necessarily obsolete, but I wonder other than small imprint what can they do that you can't configure an ide to do as well? you can use an ide just like a cli but with more features, no? to your next point though i do see it as a simple individual part.
I didn't say complicate, I said complect. As in, to make compound.
and I thought I had a good vocabulary. I saw the red underline and didn't even bother to look it up. :shadedshu

but I definitely see your point, I just feel the opposite about it. If I can find one program I like to do multiple parts of the job, i don't need to find the individual parts. flashfxp + debug wamp stack + notepad++ was the closest I had come before moving to phpstorm. and I just needed a little bit more that wasn't available without imho pita plugins. not only do i like the editor in phpstorm better than notepad++, but it made my job a lot simpler by requiring less software juggling and letting me code more.

I apologize for my abrasive attitude for anyone who may be offended, I tend to have that effect on people. I don't mean to put anyone down, I just feel strongly about this. Remember, I'm talking about what I prefer, not what is better for all use cases. What might be better for me, might be completely different than what is good for someone else.
same here. it really seems it is as simple as different opinions. I always try to understand ... sometimes that's the best answer I can get :)
 

Easy Rhino

Linux Advocate
Joined
Nov 13, 2006
Messages
14,414 (3.53/day)
Likes
4,275
System Name VHOST01 | Desktop
Processor i7 980x | i5 7500 Kaby Lake
Motherboard Gigabyte x58 Extreme | AsRock MicroATX Z170M Exteme4
Cooling Prolimatech Megahelams | Stock
Memory 6x4 GB @ 1333 | 2x 8G Gskill Aegis DDR4 2400
Video Card(s) Nvidia GT 210 | Nvidia GTX 970 FTW+
Storage 4x2 TB Enterprise RAID5 |Corsair mForce nvme 250G
Display(s) N/A | Dell 27" 1440p 8bit GSYNC
Case Lian Li ATX Mid Tower | Corsair Carbide 400C
Audio Device(s) NA | On Board
Power Supply SeaSonic 500W Gold | Seasonic SSR-650GD Flagship Prime Series 650W Gold
Mouse N/A | Logitech G900 Chaos Spectrum
Keyboard N/A | Posiden Z RGB Cherry MX Brown
Software Centos 7 | Windows 10
#28
That's what a version control system is for. Pretty sure I mentioned git before. It does a pretty good job at merging code together and telling you about conflicts. Also if you're merging in changes and you're not reviewing how they've been merged in, that bad to begin with. You don't need a GUI to manage a framework for you. More software than not has some thought about how code for any particular part of a project should be written, hence why projects like Moodle have guidelines you must follow to contribute code back upstream.
yes, that's true you can use Git or something similiar for control. But let's see you walk into a project halfway through and you need to review 100's of .class files with little to no documentation. a gui ide is prefect because you can quickly review those files using tabs and switch back and forth with no hassle. i am talking hundreds of .class files. then, if you are working with a compiled language like java try writing a .class file that imports a dozen or so other .class files and external jar's using the cli. And if you make a mistake or change one aspect of the code to recompile you have to reenter every single .class you want to include during compile time. an ide like netbeans/eclipse manages all of that for you.
 

Frick

Fishfaced Nincompoop
Joined
Feb 27, 2006
Messages
14,908 (3.43/day)
Likes
5,425
System Name A dancer in your disco of fire
Processor i3 4130 3.4Ghz
Motherboard MSI B85M-E45
Cooling Cooler Master Hyper 212 Evo
Memory 4 x 4GB Crucial Ballistix Sport 1400Mhz
Video Card(s) Asus GTX 760 DCU2OC 2GB
Storage Crucial BX100 120GB | WD Blue 1TB x 2
Display(s) BenQ GL2450HT
Case AeroCool DS Cube White
Power Supply Cooler Master G550M
Mouse Intellimouse Explorer 3.0
Keyboard Dell SK-3205
Software Windows 10 Pro

Aquinus

Resident Wat-man
Joined
Jan 28, 2012
Messages
10,511 (4.81/day)
Likes
5,596
Location
Concord, NH
System Name Kratos
Processor Intel Core i7 3930k @ 4.2Ghz
Motherboard ASUS P9X79 Deluxe
Cooling Zalman CPNS9900MAX 130mm
Memory G.Skill DDR3-2133, 16gb (4x4gb) @ 9-11-10-28-108-1T 1.65v
Video Card(s) MSI AMD Radeon R9 390 GAMING 8GB @ PCI-E 3.0
Storage 2x120Gb SATA3 Corsair Force GT Raid-0, 4x1Tb RAID-5, 1x500GB
Display(s) 1x LG 27UD69P (4k), 2x Dell S2340M (1080p)
Case Antec 1200
Audio Device(s) Onboard Realtek® ALC898 8-Channel High Definition Audio
Power Supply Seasonic 1000-watt 80 PLUS Platinum
Mouse Logitech G602
Keyboard Rosewill RK-9100
Software Ubuntu 17.10
Benchmark Scores Benchmarks aren't everything.
#30
yes, that's true you can use Git or something similiar for control. But let's see you walk into a project halfway through and you need to review 100's of .class files with little to no documentation. a gui ide is prefect because you can quickly review those files using tabs and switch back and forth with no hassle. i am talking hundreds of .class files. then, if you are working with a compiled language like java try writing a .class file that imports a dozen or so other .class files and external jar's using the cli. And if you make a mistake or change one aspect of the code to recompile you have to reenter every single .class you want to include during compile time. an ide like netbeans/eclipse manages all of that for you.
Lack of documentation is the fault of the developer. Every method, class variable, and class should be documented imho (I also think that Netbeans will read javadoc style comments for auto-completion documentation). If it's not you're just making it harder regardless of what IDE you use.

VIM lets you have multiple files open and lets you switch between them as well as slitting the screen as well as showing diffs. (Man, I love vim-diff,) but on top of that you can use ctags with vim with languages like php where all you need to do is select a keyword, press ctrl+] and it will open the file and show you where that word is defined. So without any gui at all, I was just able to navigate classes by method with a two button keystroke. I don't call that bad at all.

Also I think I mentioned how there are some languages where GUI IDEs work well, java is one of them. I happen to like Netbeans when I write Java myself, but I'm speaking generally here, as a tool, vim lets you do many things very quickly. As primarily a web developer who writes php, ruby, and bash, I have some incentives to want to use vim.

If I were to write Java, I would rather have real code completion and the ease of navigating Java APIs instead. I think I would want that for almost any strictly typed language to be honest.

So let me rephrase, I like vim for writing scripts. I like GUI IDEs when I use strictly typed and compiled languages.
OUch ouch black background, white power etc etc.
What? I think TPU is in a browser under that screenshot, so the light background is probably TPU. I use black on white or white on black depending on the ambient lighting and which ever I feel like using.
 

Easy Rhino

Linux Advocate
Joined
Nov 13, 2006
Messages
14,414 (3.53/day)
Likes
4,275
System Name VHOST01 | Desktop
Processor i7 980x | i5 7500 Kaby Lake
Motherboard Gigabyte x58 Extreme | AsRock MicroATX Z170M Exteme4
Cooling Prolimatech Megahelams | Stock
Memory 6x4 GB @ 1333 | 2x 8G Gskill Aegis DDR4 2400
Video Card(s) Nvidia GT 210 | Nvidia GTX 970 FTW+
Storage 4x2 TB Enterprise RAID5 |Corsair mForce nvme 250G
Display(s) N/A | Dell 27" 1440p 8bit GSYNC
Case Lian Li ATX Mid Tower | Corsair Carbide 400C
Audio Device(s) NA | On Board
Power Supply SeaSonic 500W Gold | Seasonic SSR-650GD Flagship Prime Series 650W Gold
Mouse N/A | Logitech G900 Chaos Spectrum
Keyboard N/A | Posiden Z RGB Cherry MX Brown
Software Centos 7 | Windows 10
#31
So let me rephrase, I like vim for writing scripts. I like GUI IDEs when I use strictly typed and compiled languages.
that is exactly where i was going with that. :toast:
 
Joined
May 5, 2008
Messages
3,318 (0.94/day)
Likes
301
Processor Intel i5-3570K @ 3.4Ghz
Motherboard Asrock LGA1155 Z77 Extreme 4
Cooling Cooler Master Evo 212
Memory 16GB (4X4) G.Skill Ripjaw 2 DDR3-1600
Video Card(s) Nvidia gForce GTX 660ti
Storage 1x Samsung 840 EVO 256GB 6Gb/s, 1x WD 500GB 6Gb/s, 1x WD 80GB 3Gb/s
Display(s) ASUS VH242H Black + 2 HP 2311x 23" LED
Case Fractal Design R4
Audio Device(s) Realtek OnBoard Both
Power Supply Cooler Master 850w
Software Windows 7 Ultimate 64-bit SP1
#32
I like vim for writing scripts. I like GUI IDEs when I use strictly typed and compiled languages.
I tried this before, using the same method. But I just feel weird while using vim, to the point that it is old, and hasn't been updated so much. I just find myself sticking with GUI IDE's.
 

Aquinus

Resident Wat-man
Joined
Jan 28, 2012
Messages
10,511 (4.81/day)
Likes
5,596
Location
Concord, NH
System Name Kratos
Processor Intel Core i7 3930k @ 4.2Ghz
Motherboard ASUS P9X79 Deluxe
Cooling Zalman CPNS9900MAX 130mm
Memory G.Skill DDR3-2133, 16gb (4x4gb) @ 9-11-10-28-108-1T 1.65v
Video Card(s) MSI AMD Radeon R9 390 GAMING 8GB @ PCI-E 3.0
Storage 2x120Gb SATA3 Corsair Force GT Raid-0, 4x1Tb RAID-5, 1x500GB
Display(s) 1x LG 27UD69P (4k), 2x Dell S2340M (1080p)
Case Antec 1200
Audio Device(s) Onboard Realtek® ALC898 8-Channel High Definition Audio
Power Supply Seasonic 1000-watt 80 PLUS Platinum
Mouse Logitech G602
Keyboard Rosewill RK-9100
Software Ubuntu 17.10
Benchmark Scores Benchmarks aren't everything.
#33
I tried this before, using the same method. But I just feel weird while using vim, to the point that it is old, and hasn't been updated so much. I just find myself sticking with GUI IDE's.
Weird doesn't mean that it's worse. Vi is old, VIM is less old but the version I'm running isn't even a year old so, no, you're wrong. :)

It has a steeper learning curve, but it doesn't mean that it isn't a good option. There is more to remember, that's definitely true but like anything else, you get better at what you use a lot and the added advantage to having a GUI is that you can visually search for what you want as opposed to figuring out what commands or keystroke combinations you have to make to do any one particular thing, but on the other hand on a command line editor, most actions you'll do are within one or two keystrokes so the time it takes to do any one thing can be less if you know what you're doing.

As I said before, I would use a GUI editor for something like Java or C# but for a scripting or command languages, VIM is pretty powerful for things like Ruby, PHP, and BASH. Not knowing how to use a tool is not the fault of the tool. Hard to learn doesn't imply hard to use. ;)

Learning VIM is like learning regular expressions. You don't get very good at it unless you use it practically and you use it a lot.
 
Joined
Jul 23, 2011
Messages
1,556 (0.66/day)
Likes
1,459
Location
Kaunas, Lithuania
System Name Eternal WIP ][ HP ProLiant server blade
Processor AMD FX-8320 @ 4.4/4.1 GHz ][ 2x Intel Xeon L5520 @ 2.27GHz
Motherboard Asus Crosshair V Formula-Z ][ -
Cooling Corsair H55 ][ Stock
Memory 2x4GB Kingston HyperX Genesis @ 1866MHz ][ 4x4 GiB Hynix @ 1333 MHz; ECC on
Video Card(s) 2x MSI GeForce GTX 770 DirectCU II OC ][ None
Storage 1TB WD Black + 1.5TB WD Green + 750GB Samsung + 64GB OCZ Agility 4 ][ 3x 1 TB Hitachi
Display(s) Asus VG278H + Asus VH226H ][ None
Case Antec Nine Hundred ][ it's a server blade, lol
Audio Device(s) Supreme FX II (Integrated); Using optical S/PDIF output ][ none
Power Supply Corsair AX1200i ][ [stock]
Software Gentoo Linux ][ Linux Mint 16
Benchmark Scores 65970 BogoMIPS. Ha. Ha. Ha. >=|
#34
I tried this before, using the same method. But I just feel weird while using vim, to the point that it is old, and hasn't been updated so much. I just find myself sticking with GUI IDE's.
Read this.