Ed Leafe wrote:
With all the talk recently about modifying the Class Designer to handle code separation, I realized that one of the main reasons for my resisting this is because I feel like I have a ton of stuff on my plate, and very little time to get it done. Adding another thing to test and integrate, even if someone else wrote the code, when that wasn't moving us closer to established goals, just seemed counter-productive.

I think everyone involved completely understands that sentiment. Regarding established goals, perhaps it would be worth it to step back a bit and actually specify what the established goals are. So far, I believe our goals have been basically the same, but we've never actually sat down together and fleshed them out on paper. If we ever succeed in meeting up for a few days for a sprint or something, I'm inclined to suggest that we leave the laptops behind, purchase some butcher paper and crayons, and draw out interface designs and flowcharts, and then publish those designs on the web for comment and modification as needed.


So I'd like to let you all know what I'm working on, and if you'd like to help, please let me know.

• Localization: we need someone with solid localization experience with whom to collaborate on the proper way to add localization to the framework. We also need translators, as well as the tools to automate this. The basic guts of the localized string extraction from the framework code is complete and working; I plan on creating the tools, but first we need to get the whole gettext() file requirements settled so that the tools can put the files in the correct places.

• Preferences: I'm working on this now, and need feedback/input on the implementation. Perhaps some examples of the sorts of preferences you envision for your apps, as opposed to the internal framework stuff, would be useful to make sure that the design is flexible enough to handle all of them.

• Editor: we need better namespace resolution in Intellisense. It's silly that typing 'self.Form.' brings up the atts of the Form property, instead of the atts of the form itself. If anyone wants to look into this, I'm willing to help any way I can. Also, we could use some ideas on how to limit the list of atts/methods/properties to Dabo-specific ones instead of everything, especially the wx-specific ones. I'm not sure that a reliance on capitalization patterns is best, since I've noticed that many Dabo users write code that looks more like wxPython than Dabo, and their custom stuff should show up, too.

This is a big problem, because we are basically relying on introspection of live objects, and introspection can hog a lot of resources, resulting in an unresponsive editor. Also, anything goes with Python's dynamic objects, so there may always be cases of infinite loops and unexpected behavior. Perhaps something will come out of the pyxide's project that we can plug into and contribute to.

The capitalization pattern recognition allows us to eliminate 95% of the names in the namespace (all the wx.* cruft) right off the bat, which is why I programmed it that way, but I agree it isn't optimal. It does provide a little built-in coaching to convince people to conform to our Dabo Style Guide. ;)


• Documentation: While I've made some progress, we need a ton more. I believe that exhaustive documentation, in which every single aspect of the framework is documented, is almost as bad as no docs at all. What would really help is to explain what sort of help you were looking for and couldn't find. Chances are that the documentation doesn't exist, or exists in a place that isn't obvious. If you let me know what's confusing, or what's lacking, that will be the place for me to focus on.

I really do intend to do The Dabo Book, which will read like 'wxPython In Action' if I'm successful.

• Connectivity: I'd really like to get VFP connectivity done soon, if only to be able to show Dabo working with Fox data when I speak at the FoxForward conference in September. Since there are no VFP ODBC drivers on platforms other than Windows, the only solutions I've found are ODBC bridges that run a server ODBC on the machine containing the data (and the VFP driver), and a client ODBC that talks to the server. All such solutions I've found cost about $1000 to start, and contain strict licensing. So if anyone knows of any other platform-independent way of talking to Fox data, that would be great. I'd also like to get SQL Server and Oracle implemented, but since no one is pushing for those right now, it would be difficult to get any sort of testing done with them.

At the very least, we should get the pyodbc stuff working, and then provide a vfp abstraction layer that uses odbc. This would allow a Windows-based dabo application to talk to VFP data. I believe it would also mean we could connect via Linux and Mac using Samba mounts as well. I'll enter this as a tracker issue and assign it to me. I'm pretty sure I had POC code that did just this, years ago.

• IDE: I've only started playing with PyAUI (<http://xoomer.alice.it/infinity77/eng/PyAUI.html>), which seems like what we would need for the interface. We need to spec out exactly what a project consists of, and how to best manage these pieces. We need to write the missing parts (bizobj editor, project manager, debugger) and integrate the existing tools.

Yep, although hopefully we don't have to write our own debugger.


Paul, if you're working on anything, it might help to let everyone know what that is, and where you could use some help.

Right now, I'm working on getting some paying work lined up for the summer, and yes, I could certainly use some help with that! :)


--
Paul McNett
http://paulmcnett.com
http://dabodev.com


_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://leafe.com/mailman/listinfo/dabo-dev

Reply via email to