Python Programming, news on the Voidspace Python Projects and all things techie.
IronPython Tools and IDEs
A frequent question on the IronPython mailing list is "what IDE should I use with IronPython?". For many .NET developers the question is phrased slightly differently, "how do I use IronPython in Visual Studio?". There are now several different major IDEs with IronPython support, including a few different ways of using IronPython with Visual Studio.
I've written a roundup of the major editors and how they support IronPython. This includes a look at the standard features you would expect in a Python editor, like autocomplete, calltips, debugging and more - with honourable mentions for other Python editors like Vim, Emacs, Komodo, Davy's IronPython Editor and the DLR editor that comes with the Pyjamas project. The article also has a roundup of standard tools for Python development; the code quality tools (PyLint, PyChecker and PyFlakes), profilers, debuggers, coverage, refactoring and so on.
- IronPython Studio
- Visual Studio
- Visual Studio SDK Experimental Hive
- Wing IDE
- Eclipse and PyDev
- Other tools
- Windbg SOS
- Code Quality Checkers
- Debugging and the Python Pdb Module
- Code Coverage and Profiling
- Refactoring and Complexity
Resolver One 1.6: Free Resolver Player and Resolverlib
Resolver One 1.6 is out! I say this every time but it's a great release with some important new features. Resolver One is a highly programmable spreadsheet written in IronPython with IronPython scripting support. I covered some of the new features in 1.6 in my blog entry on the Resolver One 1.6 Beta.
The main new features include:
- NumPy support is out of beta - import numpy in user code should "just work", including support for numpy arrays in the grid
- Expanded cells and images in the grid (graphs and charts in the grid!)
- You can now configure the fonts used in the formula bar, code box and console, plus the default font used in the grid
- ZedGraph now included in the distribution to make charting easier
- Auto-complete in the console
- Simpler 'fluent-interface' for creating cell ranges (workbook["Sheet1"].Cells.A1.to.D5)
- Hyperlinks in cells, particularly useful for the web server
- Drag to re-order worksheets
The full list of all the new features and bugfixes since 1.5 is in the Changelog.
Actually, when I said the main new features I was kind of lying, there are two big new features that are to do with re-using Resolver One spreadsheets in new situations.
The first of these is the Resolver Player. This is a cut-down version of Resolver One (without the codebox), intended for distributing the applications you create with Resolver One to end users. Resolver Player licenses are available free on request. You can simulate what Resolver One looks like when one of those keys is installed by choosing "Player mode" from the "View" menu.
The second new feature is Resolverlib. This is a library that allows you to use Resolver One spreadsheets programmatically from IronPython without having Resolver One installed. By embedding the IronPython engine you can use the Resolver One calculation engine, including putting your own UI over it or building it into applications, from any .NET language.
Pythonista Kiva lending team
Kiva is an amazing organisation. They support individuals in developing countries by making loans for them to develop their own businesses. The movement they are part of is called microfinance and they are making an incredible difference to the lives of many people. What is even more incredible is that Kiva, through its local partners, has made loans of about $90 million with a repayment record of over 98%!
The money from these loans comes from people like you and me, members of the most affluent societies in the world. Although you won't make a profit from participating you are usually protected from currency fluctuations and so are able to do good without it actually costing you much in the medium term. The Kiva website makes it easy to withdraw or relend money as it is repaid and they don't take anything for administration unless you specifically add it to the loan.
A bunch of folk from the Python community have got together to form a lending team. Come and join us:
This work is licensed under a Creative Commons Attribution-Share Alike 2.0 License.