Future of TM1 UIs and APIs (Was TM1 C++ API issue)

Post Reply
nick_leeson
Posts: 98
Joined: Sat Feb 11, 2012 11:13 am
OLAP Product: TM1 9x, BPC, Hyperion, HANA
Version: TM1 10
Excel Version: Excel 2003 - 2010

Future of TM1 UIs and APIs (Was TM1 C++ API issue)

Post by nick_leeson »

Admin note: Split from this thread.

Although not official but there is a statement made by an IBM representative on the web that states that going forward TM1 API will not be supported from the next major release.
https://www.ibm.com/developerworks/comm ... 8768&ps=25
User avatar
Alan Kirk
Site Admin
Posts: 6606
Joined: Sun May 11, 2008 2:30 am
OLAP Product: TM1
Version: PA2.0.9.18 Classic NO PAW!
Excel Version: 2013 and Office 365
Location: Sydney, Australia
Contact:

Re: Future of TM1 UIs and APIs (Was TM1 C++ API issue)

Post by Alan Kirk »

nick_leeson wrote:Although not official but there is a statement made by an IBM representative on the web that states that going forward TM1 API will not be supported from the next major release.
https://www.ibm.com/developerworks/comm ... 8768&ps=25
I was going to say "that had better be a thought bubble or there are going to be a lot of p*ssed off partners out there given the number of third party apps that rely on it, and more than a few p*ssed off users as well who have invested a chunk of time in making their own apps" (me for one). Much as I've made my thoughts about the RESTful API clear, one major release is not enough time to transition.

But read the quote more carefully:
@Robert: Even though the existing .NET API library is still supported, I would not recommend basing any new development on this component. We are anticipating an EOL (end of life) announcement with the next major release.
(My emphasis.)

The .Net library @<> the classic API, which is what the above code (edit: In the original thread) appears to be despite being used in a .Net language. The actual .net API referred to in the post was deprived of food and clothing when it was born, as a result of which it never got beyond a rudimentary level of functionality, as a result of which hardly anybody used it (it got 4 votes in the "automate or extend" poll), as a result of which IBM felt justified to put a metaphorical bullet into the back of its head and dump it out in the snow to die almost two years ago, but didn't tell everyone in the in the hope that nobody would notice. (Unless you count an obscure Technote as "telling everyone" given that Technotes on the IBM site are the equivalent of a scribbling on a scrap of parchment which is then put in a bottle which is then put inside a filing cabinet which is then locked and dumped into a peat bog.)

With the exception of those four people, I think pretty much everyone has regarded it as a casualty statistic in the War Of Dead End Software already. I still mourn "what might have been" with that API but I'm no longer as hacked off as I was back then (which was partly down to someone having come out with the claim that the omission of the help file was merely an "oversight", which I still seriously doubt), especially given the language-agnostic possibilities of the RESTful API. If someone gives you a brand new BMW 7 series to drive, you probably don't care as much that they took your Trabant away from you.
"To them, equipment failure is terrifying. To me, it’s 'Tuesday.' "
-----------
Before posting, please check the documentation, the FAQ, the Search function and FOR THE LOVE OF GLUB the Request Guidelines.
nick_leeson
Posts: 98
Joined: Sat Feb 11, 2012 11:13 am
OLAP Product: TM1 9x, BPC, Hyperion, HANA
Version: TM1 10
Excel Version: Excel 2003 - 2010

Re: Future of TM1 APIs (Was TM1 C++ API issue)

Post by nick_leeson »

There is mention that even the JAVA API which I suspect will not be supported in the next release. https://www.ibm.com/developerworks/comm ... dab0&ps=25


Sorry to hijack this thread OP.
User avatar
Alan Kirk
Site Admin
Posts: 6606
Joined: Sun May 11, 2008 2:30 am
OLAP Product: TM1
Version: PA2.0.9.18 Classic NO PAW!
Excel Version: 2013 and Office 365
Location: Sydney, Australia
Contact:

Re: Future of TM1 UIs and APIs (Was TM1 C++ API issue)

Post by Alan Kirk »

nick_leeson wrote:There is mention that even the JAVA API which I suspect will not be supported in the next release. https://www.ibm.com/developerworks/comm ... dab0&ps=25
That's a pretty flimsy basis for that sort of supposition.

First, the biggest problem with the .Net API is that it was chronically crippled; there was barely anything that you could do with it except work with a cell value. With that kind of restriction it was effectively dead before it was born.

The Java API is not as complete as the classic C/VB API. (One of the most irritating pieces of reading in the JavaDocs is under the Process object; "This class does not support building an entire TurboIntegrator process from scratch. Support for building process objects through the Java API may be added in a future release of TM1".)

Yeah, and I'd like to be the King of all Londinium and wear a shiny hat. It'll never happen. I would say that the existing APIs, both classic and Java, will eventually be left to rot with all of the focus being on REST, but that's not the same thing as killing them off in the next release.

Regardless, though, the Java API as it stands now is far more functional than the .Net one ever was (which is a condemnation of the decisions relating to the .Net API, not praise of the Java one), even though oddly it had one fewer users on the Automation poll than .Net did. (Though that could come down to the fact that what Java gains in functionality it loses in being able to quickly create a decent GUI, making it better suited (not only suited but better suited) for command line solutions.)

The other thing about the .Net API is that, however obscure, there has been a de facto death notice for it out there for two years now. More to the point even in the first thread that you cited the IBM guy stated that they were still supporting the .Net API. You can't go from "supported" to "unsupported" without going through "depreciated" first and claim that decent notice was given by some obscure thread in Developerworks; that would be over the top even by IBM's standards. In addition to which they said in the .Net death notice:
Please choose to develop software with the TM1 API in C++ and Java only.
It would be hard to turn around now and say "yeah, we didn't mean it, the Java API's dead from the next version".

After all, look how many goes they had at killing off the ISB.
nick_leeson wrote:Sorry to hijack this thread OP.
Well that's easily fixed...
"To them, equipment failure is terrifying. To me, it’s 'Tuesday.' "
-----------
Before posting, please check the documentation, the FAQ, the Search function and FOR THE LOVE OF GLUB the Request Guidelines.
TrevorGoss
Community Contributor
Posts: 217
Joined: Thu Aug 15, 2013 9:05 am
OLAP Product: TM1
Version: 10.2.1.1
Excel Version: 14.0.6129.5000

Re: Future of TM1 UIs and APIs (Was TM1 C++ API issue)

Post by TrevorGoss »

Just when I start to get it working, I hear rumors that it will no longer be supported lol.

Alan has made me feel better about it though,

Please choose to develop software with the TM1 API in C++ and Java only.

It would be hard to turn around now and say "yeah, we didn't mean it, the Java API's dead from the next version".
Quite right.
BrianL
MVP
Posts: 264
Joined: Mon Nov 03, 2014 8:23 pm
OLAP Product: TM1
Version: 9.5.2 10.1 10.2 PA2
Excel Version: 2016

Re: Future of TM1 UIs and APIs (Was TM1 C++ API issue)

Post by BrianL »

Just to add my $.02.

While I've never attempted to use the .NET api, it's been my understanding that the older .NET TM1Web was written entirely using it. Either I'm wrong about that, or the documentation is so horrible it's impossible for anyone outside IBM to do anything meaningful with it.

Even if IBM decides to stop supporting the C/.NET/Java APIs, I can't imagine they'll stop working anytime soon. It'll probably just be a documentation/helpdesk issue. I say this, because the C, .NET, and Java APIs all send the same exact bits over the network. The .NET and Java APIs were more of an attempt to make the C api look more object oriented. From my brief perusal of those two APIs, they seem almost identical in object design. The only alternative API that doesn't use the same protocol is the new REST api, and even IBM's own software doesn't appear to be making extensive use of it yet. Bottom line is that removing the capability for the TM1 server to accept C/.NET/Java API traffic will result in pretty much every client application in existence to stop working. This includes TM1Web, CAFE, Architect/Perspectives, Performance Modeller, Insight, etc...
User avatar
Alan Kirk
Site Admin
Posts: 6606
Joined: Sun May 11, 2008 2:30 am
OLAP Product: TM1
Version: PA2.0.9.18 Classic NO PAW!
Excel Version: 2013 and Office 365
Location: Sydney, Australia
Contact:

Re: Future of TM1 UIs and APIs (Was TM1 C++ API issue)

Post by Alan Kirk »

BrianL wrote:Just to add my $.02.

While I've never attempted to use the .NET api, it's been my understanding that the older .NET TM1Web was written entirely using it. Either I'm wrong about that, or the documentation is so horrible it's impossible for anyone outside IBM to do anything meaningful with it.
Indeed, it's entirely possible that at the very least they shared some DNA, possibly a lot of DNA. The .Net API was released with 9.1. Web was around long before that of course, but I recall that there was a barrier that was passed with 9.1 Web. (Web 9.0 and prior, effectively unusable without much head banging, Web 9.1 the first half way decent implementation. Not perfect, but genuinely usable. I recall that 9.1 was my first go at implementing Web and that we had looked at 9.0 and earlier at the time and said "nooooooooo.....")

That being the case, development on the .Net API and the 9.1 and later IIS Web models would have been kicking along at the same time, so it would make sense if they were connected in that way.
BrianL wrote:Even if IBM decides to stop supporting the C/.NET/Java APIs, I can't imagine they'll stop working anytime soon. It'll probably just be a documentation/helpdesk issue. I say this, because the C, .NET, and Java APIs all send the same exact bits over the network. The .NET and Java APIs were more of an attempt to make the C api look more object oriented. From my brief perusal of those two APIs, they seem almost identical in object design. The only alternative API that doesn't use the same protocol is the new REST api, and even IBM's own software doesn't appear to be making extensive use of it yet.
Maybe one exception...
BrianL wrote:Bottom line is that removing the capability for the TM1 server to accept C/.NET/Java API traffic will result in pretty much every client application in existence to stop working. This includes TM1Web, CAFE, Architect/Perspectives, Performance Modeller, Insight, etc...
That's actually a damn good point, with one qualification; at the most excellent (with the exception of one presentation, {cough}) Cubewise conference last week Ronnie Rich from IBM hammered the point that CAFE is powered by REST. This fits with what was already known; somewhere in the bowels of the forum there will be some posts from when CAFE first made an appearance. I recall that some guys who had been on the testing program mentioned that it was based on a "new API" that nobody knew much about at the time but which we now, in hindsight, know to have been REST. Also there's the fact that CAFE is the only non-Web client that doesn't perform like cr@p over a WAN, pretty strongly suggesting that it's powered by something different. As Ronnie said CAFE just wouldn't have been viable using what he referred to as the old C API.

But yes, no supported C API would probably mean no supported Perspectives / Architect. Ronnie did mention that there are obviously plans to "sunset" Perspectives / Architect, but it won't be until CAFE has about 95% of existing Perspectives functionality, which won't be for a while yet. Many users had indicated that the lack of Perspectives functionality (including formulas) was their biggest barrier to implementing CAFE. I'm not sure where the missing 5% will be (indeed I didn't get the impression that there was a definitive plan for that yet) but I imagine that it would be on the administrative side. I got the impression that most administrative work would pass to Prism. (Which was confirmed as being only a codename. Actually I don't think it's a bad name in view of what it does, just that it has bad associations that a data services company would do well to distance itself from. But I digress.)

We were told that the ultimate goal is to reduce the plethora of UIs down to two, CAFE for the Excel side and Prism for the web side. I wouldn't be wildly enthused to lose (for example) .xdi and .xru ability if that moves out of Excel and into Prism. I hold fast to both of those (unless the updates need to be automated by data feed) for the reasons that I've often stated in the past. (Ability to format clearly, ability to use Excel formulas (especially in Rules) to compile expressions, ability to store meta information about the dimensions in the sheets, ability to store prior versions in a workbook.) But even if that were to happen the RESTful API seems to offer the potential to knock up a bit of code to still use workbooks (or any other type of document) as a source anyway.

And at this point we've managed to segue the thread again more into "Future TM1" rather than just "Future TM1 APIs", but no matter, that happens...

To be honest after so much frustration about the UIs and APIs, particularly with hateful cr@p like Performance Muddler and the exceptionally detestable Cognos Configuration for TM1, and the irritation of the (apparent) swing away from .Net toward Java, I'm actually feeling if not (yet) wholly optimistic, certainly leaning strongly that way about where the product is headed in this respect. (I don't think I'll ever get to like the lumbering overhead that is CAM security, but generally, I mean.) Even the Tomcat TM1 Web; yes, it still has a stack of bugs as you would expect with any de facto v1.0 application, but at least (a) it's nice to finally have websheets that actually look right on screen rather than the "throw of a dice" column width arrangement with the old Excel-powered Web application and (b) it will be nice not to have an ocean of orphaned Excel sessions left running on the server. That reminds me, how many do I have on 9.5.2 Web this morning? Ah, 11. Lovely. Kill, kill, kill and more kill. The memory bloat on Tomcat web is less great, but on the whole I've swung my opinion around about whether on balance, taking into account all of the pluses and minuses, this change was a good thing.

The Cubewise Conference was great for getting a handle on this "big picture" stuff, and if next year's has a guest list anything like this year's (with one exception {cough}) it's definitely something that I'll be most looking forward to attending (and would definitely encourage anyone else near one to do as well). The more of the community that gets along to events like this, the better engagement we'll get with IBM.

Oh, and also... Ronnie confirmed that TM1 Top is returning in fix pack 4, woo hoo!

Granted we don't use TM1 Top as actively as we once did now that we have Pulse, but Pulse is tied by licence files to specific servers and for ad hoc (usually virtual) ones that I spool up for version testing I know that I much prefer nice, light TM1 Top as my monitor of choice rather than firing up Operations Console.

"Hmm, I need to know which threads are taking so long. Let me just fire up Operations Console... ah, I have time for a quick movie while it loads."

{Pulls out Titanic, The Director's Cut, reaches the point where Rose promises to "never let go", then lets go, does the "forward and reverse" thing...}

"Leo goes down... Leo comes up... Leo goes down.... Leo comes up.... Oh look, Ops Console is up!"

Yeah, I think I'll be happy to see TM1 Top again.
"To them, equipment failure is terrifying. To me, it’s 'Tuesday.' "
-----------
Before posting, please check the documentation, the FAQ, the Search function and FOR THE LOVE OF GLUB the Request Guidelines.
RJ!
Community Contributor
Posts: 219
Joined: Mon Jul 23, 2012 8:31 am
OLAP Product: TM1
Version: 10.2.2
Excel Version: 2010

Re: Future of TM1 UIs and APIs (Was TM1 C++ API issue)

Post by RJ! »

FYI - Can't remember if it was Ronnie or Hubert that confirmed that we'll soon be able to use REST to do the same as TM1 Top (aka. Boot user sessions from the server)

There was already a demo of a HTML based TM1 Top shown at the Conference (that just displayed the current sessions).
User avatar
Alan Kirk
Site Admin
Posts: 6606
Joined: Sun May 11, 2008 2:30 am
OLAP Product: TM1
Version: PA2.0.9.18 Classic NO PAW!
Excel Version: 2013 and Office 365
Location: Sydney, Australia
Contact:

Re: Future of TM1 UIs and APIs (Was TM1 C++ API issue)

Post by Alan Kirk »

RJ! wrote:FYI - Can't remember if it was Ronnie or Hubert that confirmed that we'll soon be able to use REST to do the same as TM1 Top (aka. Boot user sessions from the server)

There was already a demo of a HTML based TM1 Top shown at the Conference (that just displayed the current sessions).
Ah, you were there too, very good. Just please tell me that you weren't at my session. Actually don't worry about it, a guy in a black suit carrying a silver tube with a red light will be around to see you shortly just in case. I've got a booking with him after that.

Yes, I recall that being mentioned; I think it was in Hubert's presentation. I'm not sure that I'd necessarily use it; cobbling together the code on the fly wouldn't be all that straightforward if you tried to do it manually. Creating a wrap-around HTML based application to generate the code would get around that of course, but given that TM1 Top already exists, there's a question over whether it gives anything more than we already have. I'm keeping an open mind on it, especially as it appeared that REST provided a bit more info on the threads than we have at the moment (but I'll reserve judgement on that until I have some living, breathing code under my fingers).

Good point, though. I'd started to write up some of the more interesting things that came out of the conference but made the mistake of trying to do it on my work computer which is currently with the help desk having its motherboard replaced. "Lenovo: Cheap, unreliable P.O.S's. It's not what we make, merely what we aspire to."

Another thing that I found really interesting was the talk about Prism being MDX based, with MDX-based views becoming a reality . Create it in Prism, put it in the content store, load it into CAFE, eventually query things out of cubes in the same type of way that you can use SQL from a relational database. Sweet.

Hierarchies as virtual dimensions is something that will take some head-wrapping, but I can see the potential.

Since we're going down that path, does anyone who was there want to share some of their favourite moments as well?
"To them, equipment failure is terrifying. To me, it’s 'Tuesday.' "
-----------
Before posting, please check the documentation, the FAQ, the Search function and FOR THE LOVE OF GLUB the Request Guidelines.
User avatar
Olivier
Community Contributor
Posts: 159
Joined: Thu Jun 26, 2008 5:46 am
OLAP Product: TM1
Version: Tm1 10.2.2fp4 -> 2.09
Excel Version: Excel 2013 - 2019
Location: Sydney

Re: Future of TM1 UIs and APIs (Was TM1 C++ API issue)

Post by Olivier »

Hi All,

My favorite conference moment : shaking hand with Alan Kirk in real life 8-)
Followed by the "trie" structure overview by Hubert.
Followed by the REST API overview by Hubert.
Looking forward to receive the presentation materials to redo the math around "trie" generation and get a better feel for dimension ordering optimization rationale.
HTH
Olivier
BariAbdul
Regular Participant
Posts: 424
Joined: Sat Mar 10, 2012 1:03 pm
OLAP Product: IBM TM1, Planning Analytics, P
Version: PAW 2.0.8
Excel Version: 2019

Re: Future of TM1 UIs and APIs (Was TM1 C++ API issue)

Post by BariAbdul »

My favorite conference moment : shaking hand with Alan Kirk in real life 8-)
Well,I am not that lucky enough :( May be one day..... But lucky enough to meet another TM1 legend in person while ago!
"You Never Fail Until You Stop Trying......"
RJ!
Community Contributor
Posts: 219
Joined: Mon Jul 23, 2012 8:31 am
OLAP Product: TM1
Version: 10.2.2
Excel Version: 2010

Re: Future of TM1 UIs and APIs (Was TM1 C++ API issue)

Post by RJ! »

Alan Kirk wrote:want to share some of their favourite moments as well?
Other than the "Learn JAVA Programming" in 45mins? Hmmm....

I think for me it was finally seeing a little more cohesive plan from the IBM guys on where they want to take the software going forward, its just a shame that by the time they finally get it all working that we'd have migrated to a mish mash of other software + inhouse Apps...
User avatar
George Regateiro
MVP
Posts: 326
Joined: Fri May 16, 2008 3:35 pm
OLAP Product: TM1
Version: 10.1.1
Excel Version: 2007 SP3
Location: Tampa FL USA

Re: Future of TM1 UIs and APIs (Was TM1 C++ API issue)

Post by George Regateiro »

RJ! wrote:FYI - Can't remember if it was Ronnie or Hubert that confirmed that we'll soon be able to use REST to do the same as TM1 Top (aka. Boot user sessions from the server)

There was already a demo of a HTML based TM1 Top shown at the Conference (that just displayed the current sessions).

This is actually incredibly exciting to me. In the ever great wisdom of audit controls and because IBM has not created a means to delegate parts of the system admin without full admin rights I can no longer kill top threads. This at least will let me spin up a REST based top that can have IIS running as the service account which does have admin.
lotsaram
MVP
Posts: 3651
Joined: Fri Mar 13, 2009 11:14 am
OLAP Product: TableManager1
Version: PA 2.0.x
Excel Version: Office 365
Location: Switzerland

Re: Future of TM1 UIs and APIs (Was TM1 C++ API issue)

Post by lotsaram »

Hi George - for 10.2.2 instances the latest version of Pulse is already using the rest api for the top monitoring. From a user perspective the best thing about this is that when there is a lock causing a wait the name of the object causing the lock is shown. This is pretty useful. Also might be of interest to you that if you are authenticated as admin within Pulse then you are able to kill a thread without secondary validation.

Sorry for hijacking the thread.
Please place all requests for help in a public thread. I will not answer PMs requesting assistance.
User avatar
Alan Kirk
Site Admin
Posts: 6606
Joined: Sun May 11, 2008 2:30 am
OLAP Product: TM1
Version: PA2.0.9.18 Classic NO PAW!
Excel Version: 2013 and Office 365
Location: Sydney, Australia
Contact:

Re: Future of TM1 UIs and APIs (Was TM1 C++ API issue)

Post by Alan Kirk »

RJ! wrote:
Alan Kirk wrote:want to share some of their favourite moments as well?
Other than the "Learn JAVA Programming" in 45mins? Hmmm....
Hmm, had that been the intent. Which it patently was not.
RJ! wrote:I think for me it was finally seeing a little more cohesive plan from the IBM guys on where they want to take the software going forward, its just a shame that by the time they finally get it all working that we'd have migrated to a mish mash of other software + inhouse Apps...
Possibly... but that falls under the "spilt milk" paradigm. They can't retrospectively deliver a complete solution but companies are constantly evolving and updating their systems, and when/if they get to the point of having a more streamlined / powerful / modern solution then there will be other companies out there who can benefit from it.
Olivier wrote:My favorite conference moment : shaking hand with Alan Kirk in real life 8-)
Very kind of you to say so, but of course I was never there. ;)
Olivier wrote:Followed by the "trie" structure overview by Hubert.
Those were 45 of the most uber-geekish minutes of my life.

They were frankly awesome! :ugeek:
Olivier wrote:Looking forward to receive the presentation materials to redo the math around "trie" generation and get a better feel for dimension ordering optimization rationale.
Edit: Ah. You may be disappointed there. The links came out about an hour ago and I note the absence of documentation from a couple of the presentations, of which that is one. I can figure the reasons behind that, though.
lotsaram wrote:Hi George - for 10.2.2 instances the latest version of Pulse is already using the rest api for the top monitoring. From a user perspective the best thing about this is that when there is a lock causing a wait the name of the object causing the lock is shown. This is pretty useful. Also might be of interest to you that if you are authenticated as admin within Pulse then you are able to kill a thread without secondary validation.

Sorry for hijacking the thread.
{Subtle cough...} For the benefit of any newbies who may stumble across this thread from a web search and may not know the background, that's the Pulse product that you have a connection with.

Not that I, as a Pulse end user only, disagree with that assessment, though if I recall that's something new in the latest version of Pulse. I remember being mildly irritated by having to repeatedly log in on the first version that we had to run things like user reports. It does keep getting better with each release.

But returning to the "Favourite Moments" thing, I can't believe that Smart Cache hasn't come up. The performance potential of that (where instead of invalidating vast swathes of calculated values, only those directly affected by a data update are invalidated) is enormous.

The other one not mentioned to date was something that Ben H mentioned about rental licences. The good news, they can boost the number of clients that you can have at peak periods like budgeting. A really smart idea; I have a bunch of users who will use TM1 for 2 out of the 12 months of the year. The bad news; they can't be used in conjunction with existing licences. WTH?? Hopefully this is something that IBM is just dipping their toes into the water with and will realise the potential of to spread TM1 out to a larger and larger audience, and will make available to everyone over time.
"To them, equipment failure is terrifying. To me, it’s 'Tuesday.' "
-----------
Before posting, please check the documentation, the FAQ, the Search function and FOR THE LOVE OF GLUB the Request Guidelines.
Post Reply