IDEs: The dreaded topic

I’d be interested to see what environments people tend to dive into when they’re coding external scripts. Now i’m delving further into Python i’m starting to wonder if I need to use something a bit easier to manage.

I call it the dreaded topic because a lot of developers i’ve talked to are ferociously loyal to one particular IDE, so a lot of bias comes into play when trying to be impartial of their features.

I don’t use elaborate IDEs all that much, as most of the code I write is for small tools or management scripts, so I end up using either built-in ones like IDLE, or Notepad++.

When we were getting serious about Python we made a short-list including Wing IDE and Komodo IDE. There’s other Python IDEs out there, but we’d narrowed it down to those because (at the time, anyway) they were the only ones with remote debugging, something we required.

In the end we went with Wing, and I’ve been very happy with it. Lots of great Python-specific features, and their support is flat-out amazing. Best I’ve ever seen on any software product, no joke.

Hi Guys,

I LOVE using eclipse with the PyDev extensions, you cannot go wrong with this combination, I did use Komodo for quite a while but I have found eclipse much better…

Although I sounds like I have to give Wing a try!

Cheers
Dave

Yes I have mostly been using Eclipse so far with pydev. I’ve heard of wing but never tried it. I guess I should try out the 30 day trial and see what it’s like.

Adam’s not joking when he says that Wing has the best support of any software package - evar. A couple of weeks ago I ran into a problem with Wing, so I emailed them. Not more than 5 minutes later I received an email from them and the correspondence / resolution from there was extremely quick. Those guys seriously rock.

Just getting into Python myself, via the CGtalk thread a few months ago… I’m replacing a few things I did in maxScript that should have been standalones to begin with. :-o I was going the VB way for a bit before that, but found the whole compile issue now that we’ve a mixed OS ( XP and XP64 ) environment going right now. but it really was not that big of a deal…
As far as Python, I’ve been very happy with pyScripter. With some configuration it works great with activeState 2.5 and wxPython. And of course it also fit’s the current programming budget here at focus… “free and open-source.” Did I mention we do architectural animations?? Anyone need an image of a house they can’t sell???

Keith Morrison


Harley-Davidson Model BA

[QUOTE=KramSurfer;405] Did I mention we do architectural animations?? Anyone need an image of a house they can’t sell???

Keith Morrison[/QUOTE]

With the amount of projects per year you mentioned in the structure thread, it looks like you’re busy enough already! :p:

Since i’m still convincing the dev team to go down the Python route, I may have to go open source for a while too, but Wing does look very promising and support is always a major factor.

Yeah. A lot of work, on a slight profit margin… Our previous primary markets ( inland CA, Vegas NV, Phoenix AZ, Los Angeles CA, San Diego CA ) are the five of the top ten “Worst Housing Markets” for 2008… and other studios without the SoCal expense are starting to put a hurting on us… on the plus side we just signed two jobs in the UK… It’s like $10 USD for a pint over there…

As I am now the "dev. team" ( I had part time help for about two years ) and the budget is almost non-existent for none project related expenses ( our first summer ever without a tech refresh... )   PyScripter is my friend  :-)

http://www.housingpredictor.com/worstmarkets.html


RV90

In XSI I do all my work in JavaScript. And Eclipse with the JSeclipse and Perforce plugins makes for an awesome combination. At least when you compare it to the woeful scripting options in XSI.

I keep meaning to try python. But the lack of bracketing and lack of old school syntax fills me with fear.

MattD

[QUOTE=MattD;474]

I keep meaning to try python. But the lack of bracketing and lack of old school syntax fills me with fear.

MattD[/QUOTE]

Hah, my team lead said the same thing. He’s an oldschool C programmer.:laugh:

I’m a Java fan. Well some of Java. There is a hell of a lot of Java that is just to damn cumbersome. As a consequence I’m a big fan of processing so I do like the syntax.

But don’t get me wrong I think python is a fine language but the idea of doing an if statement by knowing how many spaces are at the start of the line is a super way to catch people who are new to coding. I’m sure many people will think I’m crazy. That’s ok, I’m dealing with it.:wink:

[QUOTE=MattD;485]
But don’t get me wrong I think python is a fine language but the idea of doing an if statement by knowing how many spaces are at the start of the line is a super way to catch people who are new to coding. I’m sure many people will think I’m crazy. That’s ok, I’m dealing with it.:wink:[/QUOTE]

I think on the contrary it forces people new to programming into good coding practices. I’ve had to deal with lots of badly presented code before where the concept of tabs, spacing and braces was as surreal and horrific as a Bosch painting.

I do actually miss function and class braces when coding in Python though. They’re like safe little envelopes of “Your code goes here”. :D:

I can’t afford Wing IDE but the thirty day trial has me hankering for it. I think PyScripter has been mentioned earlier. The latest development version has remote debugging, the only reason I’m not using it is I can’t restart it’s internal Python interpreter. Right now I’m using Eric4. It’s neat and cross platform which I need since I switch between Ubuntu and windows.

for Python I use Stani’s Python Editor, because it is free and it has an “intellisense” feature, which is handy for maya python api.

Eclipse w/ PyDev (and Pydev extensions!)

I have used jEdit since 2001 because at the time it was really the only “free” configurable editor that worked on both Linux and Windows. It also allowed me to write mel, C++ and python code in the same editor - not with all the fancy bells and whistles, mind you. It forced me to branch out into Java in order to write some plugins to enable it to “talk” to Maya’s command port so I could use it as Maya’s IDE. It was a great solution and quickly became the T.A. editor of choice at ILM and Imageworks.

Recently I’ve been increasingly exposed to Visual Studio in my investigation of IronPython and WPF. Intellisense is all the rage it seems. It’s hard to justify jEdit to people now because they immediately ask if it has “code completion”. Ummm…no it doesn’t. Denied!

There are a couple of plugins for code completion for other languages - Java and Ruby. The Ruby one is actually really good. It most likely would be very possible to modify it for Python. But that would take some work - isn’t there something else?

So I’ve been going through all the various options: SPE, PyScript, Komodo, IDLE, WinIDE and Eclipse. It seems most have Intellisense-like functionality - to varying degrees. And there’s the issue of which other languages they support as well. How easily would it be to add the Maya Python API? Or Python.NET?

KomodoEdit is really impressive. Their code completion is a prebuilt xml-like file. Once you figure out the schema it would be pretty easy to make .cix files for the various APIs. However, the free version of Komodo does not have a structure browser or debugger - that costs the $$$.

So, I started looking into Eclipse. Wow, what a slick package and great website. Impressive after coming from the bare-bones jEdit site. But with the open source pyDev plugin Eclipse becomes a really powerful python IDE - with all the needed pieces for free. I see that someone has authored a mel plugin (on Highend3d). And since it does it’s Python code completion through live introspection, I was able to get it working with Maya’s Python API and the .NET assemblies at the same time. It still needs some work however. Tooltips and documention do not come through. But after some reading I think it’s very possible to get that going.

I’m going to put Eclipse through it’s paces and see if it isn’t better than jEdit.

Update on Eclipse. I just got autocompletion and documentation listing working for Eclipse and the full package of pymel!! When I first tried pymel, I could only get autocompletion for a very limited set of classes/functions. After chatting with pymel’s author and doing a lot of investigation I was able to get the whole package working for autocompletion. Stay tuned for a tutorial that I will be writing…

Update:
Check out the tutorial here:
http://www.highend3d.com/maya/tutorials/using_tools_scripts/Using-Eclipse-as-a-Maya-IDE-367.html

Well Im using JEdit myself on my UScript projects, Im not sure if youd call it an IDE when using it under those conditions though. Some of the plugins like tabbed buffers and project viewer work a treat and really helped me keep things organized. The function/comment folding doesnt seem to work though and as mentioned there is lack of intellisense.

I have been using VS express 08 for C# recently and I really liked it for that but in regards to UScript specifically the nfringe plugin for the VS runtime is lacking. Not to mention there are bugs far worse then what I get in JEdit, I mean occasionally I’ll have problems copy/pasting but I can work around that by not using the right click menu.

The lack of intellisense (code completetion) and folding doesnt really bother me though, especially since its fairly straight forward to edit the XML highlighter (I was lucky enough to get a copy of one from a well established UScripter) so I just modify what I require. I have been using JEdit for maxscript as well after fudging together a MaxScript XML file, its ruff but it does the trick and is certainly better then the Max 9 script editor.

Im always on the look out for something better, for a long while I was using conTEXT (which again might not be considered an IDE per see) people have spoken to me about eclipse and I did try some chunky netbeans thingo in the past. There was an eclipse plugin in the works for UScript but its long inactive from what I saw.

Visual Studio has some great things in there but its still lacking, I guess its good MS is trying to get more people using it by offering the express versions. One of the things I find lacking is the fact you cant link the todo list to line numbers, mind you thats not a biggy since I can find in files and search “todo:”, “bug:” etc

I think I’ll stick with VS for C# and anything outside of that I’ll just continue to use JEdit, keeping in mind ofcoarse Im a hobbyist so one of the primary factors for me when picking an IDE is first price then feature set :cool:

I’ve started using SciTE ever since they introduced it in 3ds Max 2008. The only thing I miss about it is the lack of support of MAXScript (outside of Max of course), which is a pitty a big pitty!

Other than that, I use it for simple text editing, PHP editing, Python, MEL and MAXScript (inside of 3ds Max). And along with MaPy, scripting in Maya has never been easier :wink:

There’s now autocompletion for Maya’s Python API available for Eclipse! It’s posted on Highend3D. See the tutorial there for complete instructions.

So if you want to code some pymel or some scripted plugins, the autocompletion is available for both.

Now, if I can just get Eclipse and Maya talking to each other. I’m looking into porting my jEdit plugin to Eclipse. They’re both Java, so I’m thinking it should be straightforward…