What does SketchUp 2013 do for developers?
-
From a first look at SU 2013, I am stumped. Ok, the extension warehouse provides an official, supported way to get your Rubies out to the world, and the revised C SDK is claimed to be better. But other than that, what new does 2013 provide for developers?
- So far as I can see, the Ruby version is still the same (1.8.5 on the Mac, yet)!
- I can't find any discussion of changes to the Ruby API. Have any new classes or methods been added? Is there any new functionality? Anything removed or altered?
- I can't find any discussion of fixes to bugs in the Ruby API. Am I expected to experiment to see which of the old workarounds are still needed and which calls still don't work as documented?
- The nice developer console and TestUp remain unofficial addons that appear to have dropped off the radar some time last fall.
- There is no mention about any progress on all of the notorious issues in WebDialogs, especially Windows vs Mac portability.
It would seem that if there are important changes taking place behind the scenes, even we developers who helped make SketchUp the triumph it has been are being kept in the dark.
Steve
-
I guess we have to wait until they announce the updates for SketchUp API to answer that one.
Note: SketchUp API is very open and very good already but I am excited to see what willl be new.
-
@slbaumgartner said:
From a first look at SU 2013, I am stumped. Ok, the extension warehouse provides an official, supported way to get your Rubies out to the world, and the revised C SDK is claimed to be better. But other than that, what new does 2013 provide for developers?
Hey Steve, those are very non-trivial improvements that you just brushed off like they were nothing'. Completely re-writing the .skp reading and writing code that SketchUp uses for its own files, making that available through the new sdk, and then ALSO providing a built in extension warehouse to make plugins instantly visible to millions of people get me excited every time I think about it!
But I also shouldn't brush off your comments either. I don't have answers to everything, I'm still pretty new around here. but yes, the ruby versions are still the same on this release. We really could do more to better document ruby API changes. I do not think we have a 100% comprehensive (or 10% comprehensive?) list anywhere. Mostly we tried to not rock the boat and not break things. I believe we added a few methods here and there. One for being able to open the EW to a specific page if needed. Hopefully we'll get more solid information on any new or modified API features. I would guess we might post them as a blog post like we have done in the past. TestUp and the developer console are still in use and downloadable, I'm not sure which radar they fell off, but its not ours As for webdialogs....well, they're still web dialogs, and they still exist. I don't think anything much was changed there (for better or worse). Thom probably knows more about it than I do, since he's in-tune with web dialogs in general. I've never taken to them since I'm not much of an html or js guy.
You probably don't want me to say it, because I should probably just "know" it already, but what specific issues need to be fixed? If there are specific methods that are broken, I can always try to put in a request to get them fixed.
Thanks for your honest feedback, continued support and development in SkethUp,
Chris
-
@chris fullmer said:
Hey Steve, those are very non-trivial improvements that you just brushed off like they were nothing'. Completely re-writing the .skp reading and writing code that SketchUp uses for its own files, making that available through the new sdk, and then ALSO providing a built in extension warehouse to make plugins instantly visible to millions of people get me excited every time I think about it!
Chris,
What percentage of extensions to SketchUp have been written using the C++ SDK versus the Ruby API? The former seems almost non-existent while the latter is ubiquitous. So why all the attention on the SDK and none on the Ruby API?
WebDialog may not be interesting to you, but to the Ruby API developers, which dominate the extension development for SketchUp, it's the only practical way to create a UI. You should be more interested.
The extension warehouse, while cool, is functionality that was covered by other means including SketchUcation. I never had a problem locating a Ruby script I needed. Again, the emphasis on this seems to this SketchUp Ruby script developer to be misplaced. Personally what has excited you does not excite me, and it seems most of the reviews on SketchUp 2013 indicate I am not in a minority.
It seems to me that the SketchUp developers are not listening to their customers anymore. I can't criticize the amount of work the development team did to get this release out or the quality of that work. But the work itself seems to be the wrong work.
I am a big fan of SketchUp and the Ruby API and I have written more than a few plugins. As far as I can tell 2013 doesn't help me. It's very disappointing.
Perhaps Trimble has a grand plan that we users do not understand. It might be good if Trimble starts communicating with us before we all jump ship.
-
Chris, thanks for your response!
@chris fullmer said:
@slbaumgartner said:
From a first look at SU 2013, I am stumped. Ok, the extension warehouse provides an official, supported way to get your Rubies out to the world, and the revised C SDK is claimed to be better. But other than that, what new does 2013 provide for developers?
Hey Steve, those are very non-trivial improvements that you just brushed off like they were nothing'. Completely re-writing the .skp reading and writing code that SketchUp uses for its own files, making that available through the new sdk, and then ALSO providing a built in extension warehouse to make plugins instantly visible to millions of people get me excited every time I think about it!
Sorry Chris, I didn't mean to slam those items. I guess I was in a rush to get to the others.
I'll be blunt here: I suspect that the SDK rewrite had a lot more to do with improving Trimble's ability to integrate SU with their other tools than with anything the majority of current users and developers needed or wanted.
@chris fullmer said:
You probably don't want me to say it, because I should probably just "know" it already, but what specific issues need to be fixed? If there are specific methods that are broken, I can always try to put in a request to get them fixed.
Just browse this forum for a while and you will find dozens (if not hundreds) of discussions of issues with the Ruby API and workarounds that people here have developed. There are also lots of posts by the Sketchucation expert developers clarifying things that the API documentation misstates, underexplains, or simply doesn't mention. We always had the impression that the SketchUp team followed boards such as this and payed attention. Were we wrong? There are issues that were reported long ago that still remain, so far as I know.
@chris fullmer said:
Thanks for your honest feedback, continued support and development in SkethUp,
Chris
You are welcome.
Steve
-
@slbaumgartner said:
I'll be blunt here: I suspect that the SDK rewrite had a lot more to do with improving Trimble's ability to integrate SU with their other tools than with anything the majority of current users and developers needed or wanted.
I think Steve hit the nail on the head. This release feels like it was targeted to the new owner and not the user community. Trimble now owns SketchUp, so there is nothing inherently wrong with that. But the current base of users are grossly under served. Perhaps the new Trimble base will feel better. Thought I would never say this but I miss Google already.
-
Hey guys, I do browse here often. I've only been part of the SketchUp team for 2.5 months, part of the community for 10 years. I can say that I am genuinely impressed with the people I work with now and their skills, dedication, and vision.
While we can't always fix everything everyone wants right away, we are always striving to improve. I know the SDK improvements aren't every ruby developers dream come true But they are a step in the right direction of improving the underlying SketchUp file technologies.
Ruby has not undergone a complete makeover this round, but other highly requested features have been addressed. And one of those IS one the #1 requested features by ruby developers - a way integrated into SU to distribute plugins, with a built in updating feature so people know when their plugins need to be updated. We're hopeful we can get to more developer requests in our next releases
Chris
-
I think Trimble needs a PR department, are they too Timid to announce and explain their
latest improvements to SketchUp? -
Hi Tomot, we've got a link up on our front page to a list of some of the new features of SU 2013. Thanks,
Chris
-
@chris fullmer said:
As for webdialogs....well, they're still web dialogs, and they still exist. I don't think anything much was changed there (for better or worse). Thom probably knows more about it than I do, since he's in-tune with web dialogs in general. I've never taken to them since I'm not much of an html or js guy.
There's not a whole lot of changes, known to me, in the Ruby API for this release. There are some minor tweaks;
- Action to open Extension Warehouse at a given extension.
- Fixed WebDialog user-agent string under OSX.
- (Not 100% sure, but I think there are some Ruby API related bugsplats addressed.)
Now, I'd have loved to see some actual changes to the API itself. Unfortunately it didn't make it for this release. But I'm not too concerned about it at this point. The Extension Warehouse is, as Chris says, a big thing. It's basically an app store for plugins and with an plugin/extension manager to accompany it. It's what I've been dreaming of for years! Something I've nearly tried to developed myself - but decided not so because it's such a huge task. Having such a feature in SketchUp is a big thing because it makes plugins so much more accessible to a hugely bigger audience. For the regulars of SCF it probably sound like old news, but when I speak to other SketchUp users I encounter they usually have no idea about SketchUp's plugin feature.
And installation and managing plugins is probably the number one support question I get in regard to my plugins - my 50+ plugins. So that not only a big benefit for new users unaware of this, but also for me - a developer - that the whole discovery and installation process is done by SketchUp.And with the whole SketchUp Extension Warehouse - and SketcUcation's Plugin Store for that matter - I hope and expect the user base of plugins to increase. And with that the potential market and interest for new developers to develop new tools. I really think that this is a major point which many people ignore or fail to see.
I don't disagree that it doesn't appear to be a huge amount of new features to SketchUp itself. But I see this through developer spectacles and I understand how much time and effort it can take to develop a whole new C API, a whole plugin/extension repository and gutting out the toolbar system and implementing a new one. Two of these which have been at the top of people's request list. That and considering that SketchUp has gone through change of owners, moving offices and getting adjusted to new owers. And it's worth nothing that under there new owners that new positions was announced - something that didn't happen under Google.
I fully understand that as end users this release can appear underwhelming - especially if you don't use Layout. But my impression is that SketchUp 2013 is a first move on a long term awakening from the Google slumber - where we mainly saw changes related to Google's mapping services. The way I see this release is that they addressed a major pain for Windows users: toolbars - which I'd imagine wasn't a trivial thing to refactor. And they implemented a plugin repository - also highly requested. That, in addition to the new C API - which is actually supported as oppose to the old C++ API which is not and all the changes to Layout is to me a positive sign.
I do hope for more - I do expect more. And I have high hopes. I think SketchUp is heading in the right direction. From what I heard at BaseCamp and what I see in SketchUp 2013 I see SketchUp getting the attention as a platform. A platform where many entities will develop great tools for. And I expect these tools to be the big flashy attractions for SketchUp in the future. But some things take time to prepare. I see this release as a positioning for the future.
And - we know that SketchUp will get a new version each year. Steady flow of improvements, as oppose to the random previous scheme.
My two cents...
-
@thomthom said:
The Extension Warehouse is, as Chris says, a big thing. It's basically an app store for plugins and with an plugin/extension manager to accompany it. It's what I've been dreaming of for years! Something I've nearly tried to developed myself - but decided not so because it's such a huge task. Having such a feature in SketchUp is a big thing because it makes plugins so much more accessible to a hugely bigger audience. For the regulars of SCF it probably sound like old news, but when I speak to other SketchUp users I encounter they usually have no idea about SketchUp's plugin feature.
I also encountered many SketchUp user who had no clue about plugins and now with Extension Warehouse being native tool this means that problem will hopefully get solved.
This new feature is a game changer for us developers and people should be more excited about it. Even though SketchUp API was not updated I am not too sad because it was good in the first place.
Cheers!
-
@unknownuser said:
This new feature is a game changer for us developers and people should be more excited about it. Even though SketchUp API was not updated I am not too sad because it was good in the first place.
Yes - I do believe the marketing value for third party developers is HUGE for this feature! Think about it - your product available with a couple of clicks to all the millions of SketchUp users out there. Massive! And for free!
-
@chris fullmer said:
And one of those IS one the #1 requested features by ruby developers - a way integrated into SU to distribute plugins, with a built in updating feature so people know when their plugins need to be updated.
Seriously Chris? This was the number one request by developers? Was this a formal market study or are you talking about the in crowd circle of developers? I find it very hard to believe that a market study that fairly represented the base of SketchUp Ruby API developers would result in this being the #1 request. I can understand that perhaps the vocal in crowd may have wanted this feature. But having been an executive in large high tech corporations I can tell you that that kind of marketing is dangerous.
@thomthom said:
The Extension Warehouse is, as Chris says, a big thing. It's basically an app store for plugins and with an plugin/extension manager to accompany it. It's what I've been dreaming of for years! Something I've nearly tried to developed myself - but decided not so because it's such a huge task.
Ok thomthom, I understand this may be a feature you have wanted for a long time, and maybe it's a big thing. But it couldn't have taken too many software engineering resources to develop. It's basically a web page integrated into SketchUp. And the SketchUcation Plugin Store is essentially the same thing and we already had that. Further, if this is so important to the general third party developer population, and that is why it fell so high on the list, how come there is absolutely no mention of how a developer get his/her plugin into the store. No where on the SketchUp site do I see any explanation of how one goes about this.
You guys are smoking something, some feel good weed. The bottom line is this release is not a major release except in name only. Look, I am a huge SketchUp fan and have been for years. I teach SketchUp on line, in woodworking schools and in community colleges. I write plugins for woodworkers and I personally design all my furniture pieces in SketchUp. So I am not trying to come down on SketchUp or Trimble for the fun of it. I and other will get over this huge disappointment. But if the incremental value added in the 2014 release is similar to this one, SketchUp is dead. Users will vote with their feet. So if the SketchUp team is feeling good about this release they are not listening to the overwhelming feedback and they are in denial.
BTW, for 2014, you might also want to consider some long outstanding bug fixes like printing to scale.
-
@chiefwoodworker said:
Further, if this is so important to the general third party developer population, and that is why it fell so high on the list, how come there is absolutely no mention of how a developer get his/her plugin into the store. No where on the SketchUp site do I see any explanation of how one goes about this.
At the Extension Warehouse website there is a Developer Center link to the lower right part. Red button. But I agree, it's not that easy to notice. Right uptil the launch there was a much more visible link at the top of the page.
-
I'm pretty happy with SketchUp 2013 also. Like Thomthom, I'm not concerned that we didn't see big changes in APIs for two reasons:
-
Dramatic changes/additions in APIs are generally a 'Bad Thing' in realworld software engineering. What you want is incremental (ideally backwardly compatible) progression. Think of it from the POV of the developers: having a new API for the latest version fo SketchUp is all fine and dandy, but you have N thousands of people out there on SketchUp 7 and 8 using your stuff. Having to develop multiple execution paths for different versions is a PITA and adds to instability.
-
Software engineering is like a game of chess in that you have to plan many moves to get from here to there. So we have no insight into what work has been done that is invisible to users - but I'll bet they have been busy. Sure they want to impress their new owners Trimble by willingly add their requests - why the heck wouldn't they!
Adam
-
-
@adamb said:
- Dramatic changes/additions in APIs are generally a 'Bad Thing' in realworld software engineering. What you want is incremental (ideally backwardly compatible) progression. Think of it from the POV of the developers: having a new API for the latest version fo SketchUp is all fine and dandy, but you have N thousands of people out there on SketchUp 7 and 8 using your stuff. Having to develop multiple execution paths for different versions is a PITA and adds to instability.
I think most people are not complaining about the lack of "dramatic changes", but about basic methods still missing.
-
@jiminy-billy-bob said:
@adamb said:
- Dramatic changes/additions in APIs are generally a 'Bad Thing' in realworld software engineering. What you want is incremental (ideally backwardly compatible) progression. Think of it from the POV of the developers: having a new API for the latest version fo SketchUp is all fine and dandy, but you have N thousands of people out there on SketchUp 7 and 8 using your stuff. Having to develop multiple execution paths for different versions is a PITA and adds to instability.
I think most people are not complaining about the lack of "dramatic changes", but about basic methods still missing.
The litmus test for me is that I can walk the entire DOM and do.. whatever. Whether its in Ruby or C++. Yes, there are a small number of missing getter methods - Layer Color, Scene ordering - but the amount of gnashing of teeth I've seen posted the last couple of days around SU2013 seems totally out of proportion.
SketchUp is still a great, low-barrier-to-entry platform for modelling.
-
@adamb said:
The litmus test for me is that I can walk the entire DOM and do.. whatever. Whether its in Ruby or C++. Yes, there are a small number of missing getter methods - Layer Color, Scene ordering - but the amount of gnashing of teeth I've seen posted the last couple of days around SU2013 seems totally out of proportion.
Yeah, well... I've not been around the SU-dev world for long, but even for the small things I've been doing, I miss a number of things : Layers being hidden/visible, layers being renamed, layers color get/set, layer delete, etc... There are some workaround for some of them (not all), but I feel like it should be native in the API.
You're talking about stability. Aren't native methods more stable than workarounds ?@adamb said:
SketchUp is still a great, low-barrier-to-entry platform for modelling.
I totally agree ! But that's not the point
-
@jiminy-billy-bob said:
I miss a number of things : Layers being hidden/visible, layers being renamed, layers color get/set, layer delete, etc...
Layer.visible, Layer.visible=, Layer.name, Layer.name= is there. Layer material and remove is missing though. (From what I understand, Adam has found a way to do this vis the C++ API.)
-
@thomthom said:
Layer.visible, Layer.visible=, Layer.name, Layer.name= is there.
I know, I use them already. I was talking about change for these, in the LayersObserver.
@thomthom said:
(From what I understand, Adam has found a way to do this vis the C++ API.)
Hmm, would love to hear about this !
Advertisement