Jump to content

I'm required to find my own IDE for a CS lab. Don't ave any experience in python, what's the best free IDE for python. I would like it to include breakpoints, refactoring, and code completion (like partially typed variable names being auto completed)

ENCRYPTION IS NOT A CRIME

Link to comment
https://linustechtips.com/topic/644821-best-python-ide/
Share on other sites

Link to post
Share on other sites

Eclipse with the PyDev Plugin

spent a month with it and loved it

Rigs I've Built

The Striker i5 4590 @ 3.7 ||  MSI GTX 980 Armor X2 || Corsair RMX 750 || Team Elite Plus 8 GB || Define S || MSI Z97S SLI Krait

The Office PC i3 4160 @ 3.6 || Intel 4600 || EVGA 500B || G.Skill 8 GB || Cooler Master N200 || ASRock H97M Pro4

The Friend PC G3258 @ 4.3 || Sapphire R9 280X Tri-X || EVGA 600B || 8 GB Dell Ram || Cooler Master N200 || ASRock H97M- iTX/ac

The Mom Gaming PC A10-7890K @ 4.4 || iGPU + ASUS R7 250 ||  8 GB Klevv DDR3-2800 Mhz

 

 

Link to comment
https://linustechtips.com/topic/644821-best-python-ide/#findComment-8301550
Share on other sites

Link to post
Share on other sites

note pad ++ also idle isn't too bad.

                     ¸„»°'´¸„»°'´ Vorticalbox `'°«„¸`'°«„¸
`'°«„¸¸„»°'´¸„»°'´`'°«„¸Scientia Potentia est  ¸„»°'´`'°«„¸`'°«„¸¸„»°'´

Link to comment
https://linustechtips.com/topic/644821-best-python-ide/#findComment-8301879
Share on other sites

Link to post
Share on other sites

2 hours ago, Nicholatian said:

Just build your own DE.

While that may be a good suggestion for when one is learning/in education and has relatively few responsibilities I would say that you'd be very hard pressed to find a use case for it out in the real world.

 

In a corporate environment you will be using whatever has been volume licensed and indeed in most professional team environments you'll be expected to maintain consistency with the rest of the team in any event. No one is going to be calm to the idea of risking an individual making modifications to a commercial code base using some unsupported custom assemblage/toolchain that they may have haphazardly or otherwise hammered together no matter the perceived simplicity. Moreover good luck finding the time to waste on that when you have deadlines to meet and a family at home i.e. in most cases it's really not going to be happening.

 

I digress, for Python the industry de facto standard it's arguably PyCharm by JetBrains. It is build on top of their ReSharper technology, it's also cross platform and they have provided a community edition that is fully licensed for commercial use.

2 hours ago, Nicholatian said:

IDEs may seem nice on the surface because of how easy the little things are, but because of their non-modular nature they will limit you as you grow more experienced, and at that point you’ll have grown dependent of them, which will frustrate you to no end.

PyCharm is also quite modular itself so if there's something missing one can usually find a plugin for it else it's relatively straight forward to knock something up in a very short amount of time. This is also true for Eclipse for that matter.

 

Usually as one's experience and responsibilities increase their time drastically decreases thus it becomes all the more imperative to find a pragmatic solution.

The single biggest problem in communication is the illusion that it has taken place.

Link to comment
https://linustechtips.com/topic/644821-best-python-ide/#findComment-8302212
Share on other sites

Link to post
Share on other sites

18 minutes ago, Nicholatian said:

That’s nice, but you didn’t really provide any evidence to support those claims.

 

People I’ve known to be employed, making hefty wages on their own, tend to use editors like Emacs or Vim for that exact reason—they’re pragmatic because they’re far more efficient for producing code than anything else. Neither of them are integrated in the slightest, so at that point, what benefit does an IDE provide if it requires mouse movement anyway? We all know the mouse is slow and cumbersome in comparison to the keyboard because of the time perception lost in the mouse thanks to users feeling more engaged than they really are, and because of the obvious time it takes to switch from the keyboard to the mouse and back when most of your task involves typing.

 

As someone who is going to be employing freelancers to do the dirty work for an engine I am creating, I couldn’t care less what editor they use. What is the rationale for mandating that a team of developers in whatever hypothetical corporate environment use the same IDE? Shouldn’t they be using linters and whatnot that traverse the limitations of their IDEs anyway?

 

Furthermore, setting up a DE like what I have is not anywhere near as complicated as you make it out to be. Installing Atom, my compilers and runtimes, and a list of packages I have saved in a text file along with cloning whatever repo I need just about sums up everything I have to do to get rolling on a project. There isn’t really any haphazard hacking going on, because when I implemented my hacks I did so in a reproducible way that I can easily use later. Why would I make a change in such a lazy fashion that I wouldn’t be able to reuse it? If I have the time to hack a functionality on, I should have the time to do it properly.

Using Vim or Emacs for a 4 file c++ project? No problem. Using them for a several-thousand source file project? lmao.

Link to comment
https://linustechtips.com/topic/644821-best-python-ide/#findComment-8302390
Share on other sites

Link to post
Share on other sites

47 minutes ago, Nicholatian said:

what benefit does an IDE provide if it requires mouse movement anyway?

Most IDEs out there don't strictly require mouse movement thus your point is essentially moot.

47 minutes ago, Nicholatian said:

As someone who is going to be employing freelancers to do the dirty work for an engine I am creating, I couldn’t care less what editor they use. What is the rationale for mandating that a team of developers in whatever hypothetical corporate environment use the same IDE? Shouldn’t they be using linters and whatnot that traverse the limitations of their IDEs anyway?

Because reliability and consistency is paramount when developing any kind of sizeable peace of software. Especially in the case of development environments and tool chains i.e. compiler versions for instance. If not then bugs, unpredictability and even outright incompatibility will invariably seep into the code.

 

Moreover when pulling a repository one expects to be able to get to work in the shortest amount of time possible and with the least amount of effort. One does not expect to have to waste their time chasing down some convoluted set of steps, gotchas and/or hacks in order to coalesce their development environment. No they want something that will just work.

47 minutes ago, Nicholatian said:

People I’ve known to be employed, making hefty wages on their own, tend to use editors like Emacs or Vim for that exact reason—they’re pragmatic because they’re far more efficient for producing code than anything else.

47 minutes ago, Nicholatian said:

Furthermore, setting up a DE like what I have is not anywhere near as complicated as you make it out to be. Installing Atom, my compilers and runtimes, and a list of packages I have saved in a text file along with cloning whatever repo I need just about sums up everything I have to do to get rolling on a project. There isn’t really any haphazard hacking going on, because when I implemented my hacks I did so in a reproducible way that I can easily use later. Why would I make a change in such a lazy fashion that I wouldn’t be able to reuse it? If I have the time to hack a functionality on, I should have the time to do it properly.

What you are talking about is like comparing a pee shooter to a rocket launcher or in other words it's as simple as saying 'the right tool for the right job'. Stand alone text editors or simplistic development environments are fine when applied to simple, small or uncomplicated software projects. I suspect that these professional individuals that you have mentioned have done just that - selected the most appropriate tools for the job at hand.

 

This sums it up quite well in fact:

27 minutes ago, Pinguinsan said:

Using Vim or Emacs for a 4 file c++ project? No problem. Using them for a several-thousand source file project? lmao.

For a large project you'll be needing the rocket launcher over the pee shooter any day if you want to survive that is!

The single biggest problem in communication is the illusion that it has taken place.

Link to comment
https://linustechtips.com/topic/644821-best-python-ide/#findComment-8302554
Share on other sites

Link to post
Share on other sites

It's just a joke :D

Quote

As a poke at Emacs' creeping featurism, vi advocates have been known to describe Emacs as "a great operating system, lacking only a decent editor". Emacs advocates have been known to respond that the editor is actually very good, but the operating system could use improvement (referring to Emacs' famous lack of concurrency.)

 

Link to comment
https://linustechtips.com/topic/644821-best-python-ide/#findComment-8303448
Share on other sites

Link to post
Share on other sites

13 hours ago, Nuluvius said:

While that may be a good suggestion for when one is learning/in education and has relatively few responsibilities I would say that you'd be very hard pressed to find a use case for it out in the real world.

 

In a corporate environment you will be using whatever has been volume licensed and indeed in most professional team environments you'll be expected to maintain consistency with the rest of the team in any event. No one is going to be calm to the idea of risking an individual making modifications to a commercial code base using some unsupported custom assemblage/toolchain that they may have haphazardly or otherwise hammered together no matter the perceived simplicity. Moreover good luck finding the time to waste on that when you have deadlines to meet and a family at home i.e. in most cases it's really not going to be happening.

 

I digress, for Python the industry de facto standard it's arguably PyCharm by JetBrains. It is build on top of their ReSharper technology, it's also cross platform and they have provided a community edition that is fully licensed for commercial use.

PyCharm is also quite modular itself so if there's something missing one can usually find a plugin for it else it's relatively straight forward to knock something up in a very short amount of time. This is also true for Eclipse for that matter.

 

Usually as one's experience and responsibilities increase their time drastically decreases thus it becomes all the more imperative to find a pragmatic solution.

what does pycharm have over say notepad++ I guess it has a solution explorer? which would be better than n++. 

                     ¸„»°'´¸„»°'´ Vorticalbox `'°«„¸`'°«„¸
`'°«„¸¸„»°'´¸„»°'´`'°«„¸Scientia Potentia est  ¸„»°'´`'°«„¸`'°«„¸¸„»°'´

Link to comment
https://linustechtips.com/topic/644821-best-python-ide/#findComment-8305429
Share on other sites

Link to post
Share on other sites

12 hours ago, Pinguinsan said:

It's just a joke :D

But one that heavily misunderstands the main difference between Emacs and vi/Vim: Emacs is basically a Lisp machine which happens to have a couple of Lisp applications, e.g. an editor (and a couple of games), as a part of its samples. ;)

Write in C.

Link to comment
https://linustechtips.com/topic/644821-best-python-ide/#findComment-8306000
Share on other sites

Link to post
Share on other sites

3 hours ago, vorticalbox said:

what does pycharm have over say notepad++ I guess it has a solution explorer? which would be better than n++. 

Why not have a look and be the judge of that for yourself?

The single biggest problem in communication is the illusion that it has taken place.

Link to comment
https://linustechtips.com/topic/644821-best-python-ide/#findComment-8306135
Share on other sites

Link to post
Share on other sites

On 8/17/2016 at 11:35 AM, 007agentHP said:

Eclipse with the PyDev Plugin

spent a month with it and loved it

On 8/17/2016 at 0:59 PM, madknight3 said:

PyCharm is a great Python IDE

On 8/17/2016 at 1:05 PM, fizzlesticks said:

PyCharm or Visual Studio

9 hours ago, jimistephen said:

PyCharm.

On 8/17/2016 at 1:56 PM, Nuluvius said:

I digress, for Python the industry de facto standard it's arguably PyCharm by JetBrains. It is build on top of their ReSharper technology, it's also cross platform and they have provided a community edition that is fully licensed for commercial use.

 Thanks for the good suggestions guys. I've tried all three out, and I'm sorry @007agentHP, but right now it's between Visual Studio and PyCharm for me. Visual Studio has a leg up for me since I've been using it for a few years just on my own, but the final choice will most likely depend on what the rest of the class does/what the teacher recommends when labs start. PyCharm seems pretty similar to Visual Studio to me, and there are probably some very good reasons for that ;) 

 

On 8/17/2016 at 11:37 AM, Nicholatian said:

Just build your own DE. IDEs may seem nice on the surface because of how easy the little things are, but because of their non-modular nature they will limit you as you grow more experienced, and at that point you’ll have grown dependent of them, which will frustrate you to no end.

 

Get an editor like Atom or Sublime Text, and use that. Personally, I use Atom along with a window of my file manager and a terminal. That’s all you really need, and Atom provides apm packages for quite a bit of nice functionality that doesn’t ship with it out of the box. Not to mention… you can hack it if it doesn’t do something you want it to do.

 

Any good language like Python or C++ will give programmers allowances to type out their code manually – having code completion is counter-intuitive and only really makes sense for languages like Java or C♯ which are grossly verbose anyway. As for breakpoints… use GDB for compiled languages. Yes, it has a bit of a learning curve, but once you get over that you will be able to use it for anything and everything. Python will tell you when something is wrong at runtime.

 

If you want things like auto-formatting and code styling, use a linter. They’re much more widely used and accepted in teams and communities than whatever defaults Visual Studio has.

That was largely useless, and that last paragraph is information that I know is false: Companies who develop web applications (some of which are very well put together) in C# sometimes use plain jane Visual Studio. I can think of atleast 1 company that's partially owned by Google that does so. As for the rest of that, I would think about taking your advice alot harder, but chances are that this could be my only strictly CS type class ever. I'm an aerospace major, I just needed to fill out some credit hours.

 

 

ENCRYPTION IS NOT A CRIME

Link to comment
https://linustechtips.com/topic/644821-best-python-ide/#findComment-8309728
Share on other sites

Link to post
Share on other sites

2 hours ago, Nicholatian said:

Uh, no. Even Google recommends using a linter, at the behest of what is commonly accepted by the C++ community. It applies just as well to other languages.

 

So it doesn’t really matter what you use to code, because you’re not going to be a computer scientist or programmer. Might as well use Notepad++ like the guy above recommended I guess ¯\_(ツ)_/¯

Uhhhhh, yeah bro. I can think of 1 company that's partially owned by google that uses plain jain VS and I'm sure they're not the only people in the world using the Microsoft software stack, because if they were the only people paying for it Visual Studio wouldn't exist and neither would any of the .NET FCL.

Beyond that, does Notepad++ give me the features that I asked for?

ENCRYPTION IS NOT A CRIME

Link to comment
https://linustechtips.com/topic/644821-best-python-ide/#findComment-8311758
Share on other sites

Link to post
Share on other sites

Just now, Nicholatian said:

We’re people on the internet man, not a personal task force. You could be a little more grateful for people’s honest advice; we’re only recommending to you what we think would be best for the situation. Whether that’s good enough for you is not our concern.

Do you enjoy picking fights in every single thread that you involve yourself in? Because it certainly seems that way...

The single biggest problem in communication is the illusion that it has taken place.

Link to comment
https://linustechtips.com/topic/644821-best-python-ide/#findComment-8311803
Share on other sites

Link to post
Share on other sites

4 hours ago, Nicholatian said:

We’re people on the internet man, not a personal task force. You could be a little more grateful for people’s honest advice; we’re only recommending to you what we think would be best for the situation. Whether that’s good enough for you is not our concern.

I was, to the people that gave me good advice. They all got thumbs or agrees, and I even quoted them and wrote out a thank you paragraph. Whenever I decide which IDE to roll with, the first person that suggested it will get a best answer. I'm not a rocket scientist (yet), but that sounds like the actions of someone who is grateful to me.

ENCRYPTION IS NOT A CRIME

Link to comment
https://linustechtips.com/topic/644821-best-python-ide/#findComment-8313062
Share on other sites

Link to post
Share on other sites

//rant coming

Guys, it's the internet, no reason to be arguing over this stuff. People are actually having problems in the world. Some COMPANIES have their own way of doing code, that's fine. There is generally a "best practice" agreed on for ever language. In my college there was 2 different professors teaching the same class and they were having their students write the code completely differently so they set down and made a standard. i.e. functions are PascalCased, variables are camelCased, variables are always initialized when created and created when you need it. (i.e. int myNumber = 0;) I know some people do variables with_a_underscore, some people do functions with_a_underscore (I think variables and functions should be different personally) It doesn't really matter what someone does AS LONG AS THEY DO IT CONSISTENTLY, READ TIME OVER WRITE TIME, MAKE IT EASY TO UNDERSTAND!!! 

 

//rant over

Link to comment
https://linustechtips.com/topic/644821-best-python-ide/#findComment-8313084
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×