Blog of Rob Galanakis (@techartistsorg)

Practical MayaPy

Automated testing shows a respect for employees

In the tech-artists.org G+ community page there was a comment on a thread about unit testing: A key factor in TA tools is the speed at which we need to deliver them, and our audience is considerably smaller than, say, engine tools code. Therefor it becomes somewhat hard to...

Read more

Building Sphinx documentation for unfriendly code

Some Twitter friends were discussing how to get Sphinx to work with mayapy to build documentation for code that runs in Autodesk Maya. I’ve had to do this sort of thing extensively, for both Maya and editor/game code, and have even run an in-house Read The Docs server to...

Read more

Free Practical Maya Programming with Python eBooks

Merry Christmas and happy holidays everyone, Last week I asked my publisher if I could make the Practical Maya Programming with Python eBook totally free. I was told some good news and bad news. The bad news is, they won’t make it free. The good news is, my editor...

Read more

Qt Designer is harmful, exhibit A

Last week, iker j. de los mozos posted a Qt tutorial on his blog. The post was retweeted a number of times, so I figure people liked it. The post exemplifies what is wrong with the Qt Designer, and also how a little more investment in learning can pay...

Read more

Behavioral testing is the bee’s knees

I have been doing Test Driven Development (TDD) with xUnit-based frameworks (like unittest and NUnit) for a number of years now, and started with RSpec in Ruby and Jasmine in JavaScript a few months ago. RSpec and Jasmine are behavioral testing frameworks that facilitate Behavioral Driven Development (BDD). BDD...

Read more

PracticalMayaPython: RuntimeError: Internal C++ object (PySide.QtGui.QStatusBar) already deleted.

TLDR: If you get that error for the code on page 163, see the fix at https://github.com/rgalanakis/practicalmayapython/pull/2/files In August, reader Ric Williams noted: I’m running Maya 2015 with Windows 7 64-bit. On page 163 when we open the GUI using a Shelf button, the GUI status bar does not...

Read more

Escaping the Windows prison

My friend Brad Clark over at Rigging Dojo is organizing a course on Maya’s C++ API (I am assuming it is Maya but could be another program). He had a question about student access to Visual Studio, to which I responded: @riggingdojo I cannot imagine doing a worse disservice...

Read more

Metaprogramming with the type function

In my book, Practical Maya Programming with Python, I use Python’s type function for dynamically creating custom Maya nodes based on specifications, such as input and output attributes. I really love the type function*, so I thought I’d post another cool use of it. I recently wrote this gem...

Read more

GeoCities and the Qt Designer

In a review of my book, Practical Maya Programming with Python, reviewer W Boudville suggests my advice of avoiding the Qt Designer is backwards-looking and obsolete, such as writing assembler instead of C for better performance, or using a text file to design a circuit instead of a WYSIWYG...

Read more

A short letter to a unit testing newcomer

One of my friends asked how to get started with unit testing and Test Driven Development and figured I could write a short post. I also mention TDD a few times in my book so I think it could use some more attention. I got started with unit testing...

Read more

1 2