Some thoughts on DesktopX 4 and beyond

Sunday, December 27, 2009 by Draginol | Discussion: Object Desktop blogs

image As the new year approaches, we’re starting to look forward to the DesktopX 4 beta.

So what are the goals of it?  Well, to be honest, the goals are pretty modest: Strip out the parts that are difficult to work with and build it back up.

Stripping it down

First off, DesktopX comes with several plugins that I have asked to be removed:

image

Any plug-in that doesn’t work on Windows 7 with UAC on would be removed.  The existing DesktopX library would be renamed “DesktopX legacy” and only new creations would be supported.

The source code for our plugins would be made public so that the community could take over their development since, unfortunately, there just aren’t enough development resources available these days to work on such things.

If users wanted to use that code to make weather and other types of plugins to make it easier for people to create new gadgets, that would be great.

The Future: Building it up

Instead, what I would like to see would be Python to be adopted as the means to creating “plugins” that DesktopX could then read in.  Essentially, DesktopX scripting would move to Python and away from JScript or VB Script.

You could still use other scripting languages as well but we would move away from VB Script being the default.

Clicking on the “New” Script would open up the user’s default editor associated with DesktopX (preferably a python editor).

For 4.0

But for 4.0, we’re looking to clean it up. Fix long-standing issues and get to a more solid foundation from which to build on with Windows 7 being the focus for future development.

Littleboy
Reply #1 Sunday, December 27, 2009 9:59 PM

Thanks for sharing this Brad!

Instead, what I would like to see would be Python to be adopted as the means to creating “plugins” that DesktopX could then read in. Essentially, DesktopX scripting would move to Python and away from JScript or VB Script.

Are you talking about using the python scripting engine with WSC components? You can use any registered scripting language to implement them.  VBScript and JScript engines come with Windows, but you can install a lot of other scripting engines (there are perl, python, forth, etc. engines available).

I'm using them myself with JScript and VBScript code only (one example is available here), so I don't know how hard it would be to install and use the perl/python engines. I'm going to test it with python and upload a test object with a walkthrough. And if you end up going that route, I have a bunch of suggestions to make Windows Script Component much more usable.

Right now, you have to register them by hand, but if DX could simply load them directly, register them and bind events as well as expose the main DX objects globally, it would be much easier (I have written a small preprocessor in C# and a few base components that encapsulate the DX objects and this abstracts much of the complexity, but it's still a hack at best).

Edit: Turns out the ActiveState Python distribution does all the work and registers the engine, so it's very simple to have scripts components written in Python. Here is a quick example object.

As a side note, if you ever distribute a python engine with DX, you will have to patch it to return better parsing errors if possible (as of now, it only returns a laconic "unexpected indent" or "invalid syntax" with no line error information).

 

RedneckDude
Reply #2 Sunday, December 27, 2009 10:03 PM

Brad, you have made my new year! I don't know if I can learn Python, but I think it is installed on my PC. I look forward to the new DX and I truly hope that some of the coders here start making plugins! I would hate to lose DesktopX.

Philly0381
Reply #3 Sunday, December 27, 2009 10:13 PM

I'm just a user of the software but I agree with RedncekDude, DX helps fill out the dessktop by providing usefull information.  The suites I make would not be the same with out DX. 

WebGizmos
Reply #4 Sunday, December 27, 2009 10:32 PM

Brad...I think you need to give Littleboy a job. I could be wrong...but he seems to know his shit!

RedneckDude
Reply #5 Sunday, December 27, 2009 10:44 PM

Philly0381
I'm just a user of the software but I agree with RedncekDude, DX helps fill out the dessktop by providing usefull information.  The suites I make would not be the same with out DX. 

And your spelling wouldn't be the same without Zubaz! 

Draginol
Reply #6 Sunday, December 27, 2009 11:43 PM

LB: I have a feeling you're going to have a lot of influence over how we implement this.

sViz
Reply #7 Sunday, December 27, 2009 11:45 PM

All good news. Thanks for the update. Don't know what Python is but I'm gonna look it up.

 

WebGizmos
Brad...I think you need to give Littleboy a job. I could be wrong...but he seems to know his shit!

Word.

Littleboy
Reply #8 Monday, December 28, 2009 12:40 AM

Brad...I think you need to give Littleboy a job. I could be wrong...but he seems to know his shit!

I think you all missed the part about there being no budget to work on DesktopX

LB: I have a feeling you're going to have a lot of influence over how we implement this.

Thanks!

I'm going to write some documentation on my script library and widget "compiler" so you can get some idea of what might be added to make script writers life easier (the library is only there to support one program at the moment and it's not yet ready for public release, althought that's the long term plan).

thomassen
Reply #9 Thursday, December 31, 2009 7:18 AM
This is interesting. I've not used Python before, but I wouldn't think that's be much of a problem. About a year ago I picked up Ruby to write plugins for Sketchup. That went well as I had experience with JS, VBS, VB, PHP etc. It was a more of a matter of learning the syntax. And I've grown to like the Ruby syntax quite a lot. I hear Python mentioned quite often and it sound like an interesting language to use. Using our own IDE also sounds good to me. I'm curious if these Python plans means a rewrite in the DX object model? As for the nearer future, DX4: yes - I'm very happy to hear it's a fix and clean-up build. How can we best help? Retest old outstanding bugs on DX4 and submit new bug reports?
RomanDA
Reply #10 Thursday, December 31, 2009 5:29 PM
no vbscript.. wow.. this will be no joy for me. Learning another new language.. dont know if i have any time to devote to that. But will have to see.
thomassen
Reply #11 Thursday, December 31, 2009 7:39 PM

I'm curious. Will future DX Pro contiunue in it's same form? being able to make standalone exes?

Frogboy
Reply #12 Thursday, December 31, 2009 8:14 PM

Yes.

tazgecko
Reply #13 Thursday, December 31, 2009 8:50 PM

Screenlets for the Gnome desktop are written in python. This site has some example code.

Python 2.6.x or 3.x

thomassen
Reply #14 Friday, January 1, 2010 7:00 AM

Frogboy
Yes.

...in the same affordable price for hobbyists...?

c242
Reply #15 Friday, January 1, 2010 11:06 AM

After some time I started working on my skinnable gadget again that finally works with my Seven 64bit AND more RAM than 2 GB. Well, I would like to be able to test it as a gadget on another computer, bang, can't export an exe with my Pro. Hm...

On the other hand : If VBScript is going to die, is it worth it to go on now or just hold ? Or will it still be there as an option ?

sViz
Reply #16 Friday, January 1, 2010 6:14 PM

You could still use other scripting languages as well but we would move away from VB Script being the default.

I don't think VBscript is going away.

Warren Steffen
Reply #17 Monday, January 4, 2010 10:29 PM

I have nothing useful to add regarding scripting.

Yet I can no longer resist the impulse to remark that every time I see this blog post topic, a small Tim Allen-esque voice in my head reads the last part  as "and BEYOND!" in true Buzz Lightyear fashion.

Please login to comment and/or vote for this skin.

Welcome Guest! Please take the time to register with us.
There are many great features available to you once you register, including:

  • Richer content, access to many features that are disabled for guests like commenting on the forums and downloading skins.
  • Access to a great community, with a massive database of many, many areas of interest.
  • Access to contests & subscription offers like exclusive emails.
  • It's simple, and FREE!



web-wc01