1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
2 "http://www.w3.org/TR/html4/strict.dtd">
5 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
6 <link rel="stylesheet" type="text/css" media="screen" href="/css/Letter.css">
7 <script src="randomize.js" type="text/javascript"></script>
8 <title>IBM Correspondence</title>
10 function logAccess () {
11 $timestamp = date ('Y-m-d H:i:s');
13 Somebody tried to access $_SERVER[REQUEST_URI] on $timestamp
15 IP Address: $_SERVER[REMOTE_ADDR]
16 Host: $_SERVER[REMOTE_HOST]
17 URL: $_SERVER[REQUEST_URI]
21 $access = fopen ("access.log", "a");
23 fwrite ($access, $line);
30 function SendNotification () {
31 $domain = "DeFaria.com";
32 $to = "Andrew@DeFaria.com";
33 $subject = "Somebody's probing $_SERVER[REQUEST_URI] page";
34 $message = logAccess ();
36 $extra_headers .= "From: Andrew DeFaria <Andrew@DeFaria.com>\n";
38 if (mail ($to, $subject, $message, $extra_headers)) {
40 <p>The following information has been logged:</p>
49 <?php include "site-functions.php"?>
51 blockquote[type=cite] {
52 margin: 0em 0em 0em 0em !important;
53 padding: 0em .5em .5em .5em !important;
54 border-right: 2px solid blue !important;
55 border-left: 2px solid blue !important;
58 blockquote[type=cite] {
59 border-right: 2px solid maroon !important;
60 border-left: 2px solid maroon !important;
64 blockquote[type=cite] {
65 border-right: 2px solid teal !important;
66 border-left: 2px solid teal !important;
71 blockquote[type=cite] {
72 border-right: 2px solid purple !important;
73 border-left: 2px solid purple !important;
79 blockquote[type=cite] {
80 border-right: 2px solid green !important;
81 border-left: 2px solid green !important;
88 <p>The following are select "discussions" between me and IBM about
89 support <script>r(issues)</script> with their software. Note that this is very expensive
90 software and very expensive support that is paid yearly by my clients
91 for the purposes of resolving, not kicking down the road,
92 problems. The following is <i>paraphrased</i> from memory and are not
93 guaranteed to be 100% accurate, however one can sure think that they
94 might be able to form an opinion about very expensive, closed source
95 <script>r(solutions)</script>:</p>
98 <p>On 2/22/2013 9:43 AM, Rational Client Support wrote:</p>
100 <blockquote type="cite">
103 <p>So if you follow the links.. and links in the OSLC manual..</p>
105 <a href="http://open-services.net/bin/view/Main/CmSpecificationV2?sortcol=3Dtable;up=3D#Query_Capabilities">http://open-services.net/bin/view/Main/CmSpecificationV2?sortcol=3Dtable;up=3D#Query_Capabilities</a>
107 <p>Will lead you to</p>
109 <a href="http://open-services.net/bin/view/Main/OslcCoreSpecification#Query_Capabilities">http://open-services.net/bin/view/Main/OslcCoreSpecification#Query_Capabilities</a><br>
111 <p>which leads you to</p>
113 <a class="moz-txt-link-freetext" href="http://open-services.net/bin/view/Main/OSLCCoreSpecQuery">http://open-services.net/bin/view/Main/OSLCCoreSpecQuery</a>
115 <p>I believe if you look at the "syntax" section on the last
116 link that shows you what is <script>r(available)</script> in OSLC. It looks like some of
117 the ones you listed might be codeable using the syntax listed.</p>
119 <p>Since there are no "or" listed in there, he said that you
120 can use De Morgan's lay to get to an "or"</p>
122 <a class="moz-txt-link-freetext" href="http://en.wikipedia.org/wiki/De_Morgan%27s_laws">http://en.wikipedia.org/wiki/De_Morgan%27s_laws</a>
124 <p>I'm not looking to take a formal class in boolean algebra. AFAICT De
125 Morgan's law requires a <b>not</b> operator which OSLC doesn't support
126 from what I can tell. Otherwise I'd have a solution for
129 <p>The IN operator, for example is no substitute for the OR operator in
130 that IN applies only to the subject field (AKA the left hand side) and
131 cannot serve to join two <script>r(conditional)</script>s together as in "if
132 first_name eq 'Andrew' and last_name eq 'DeFaria'). Even SQL does that
133 and it's how old?</p>
135 <p>I also fail to see why this matters. Users are used to regular boolean
136 expressions as are common in just about every programming
137 language. Even if cra= zy negation and a degree in math could get you
138 an OR operation running this= is insufficient! Users of this should be
139 able to to easily expression common boolean expressions and anything
140 short of that is unacceptable.</p>
142 <p.Also, the other operators I've mentioned do not seem to be
143 supported, that being LIKE, NOT_LIKE, BETWEEN, NOT_BETWEEN,
144 IS_NOT_NULL and NOT_IN.</p>
146 <p>The <script>r(conditional)</script> querying capabilities of REST needs to at least match those=
147 of the native API or exceed it.</p>
151 <div class="moz-cite-prefix">On 2/22/2013 9:26 AM, Rational Client Support wrote:<br>
153 <blockquote type="cite">
156 <p>I spoke with one of our OSLC folks on the CQ <script>r(team)</script> and he said that
157 you have= to use SPARQL notations for your queries and OSLC only
158 supports a subset of comparison operators.</p>
160 <p>He is going to check and verify what is and isn't supported.</p>
163 <p>Everything less than the <script>r(conditional)</script> operators specified in the
164 Clearquest API manual for the native cqperl <script>r(represents)</script> incomplete or
165 missing functionality. We are looking for functionally complete
166 software. If it's not complete then this PMR should remain open to
167 represent the missing functionality if nothing else.</p>
169 <blockquote type="cite">
170 <p>What OSLC can do however is to execute an existing CQ query
171 by name or a CQ FTS search string.</p>
174 <p>We are not looking to do this. We are looking for functionality complete software. Please <script>r(implement)</script> the missing functionality.</p>
176 <blockquote type="cite">
177 <p>I will get back with you on what he finds in regards to which operators that OSLC supports and the formatting for them.</p>
180 <p>Anything less than all of the operators listed for the native API
185 <p>On 2/26/2013 6:31 AM, Rational Client Support wrote:</p>
187 <blockquote type="cite">
190 <p>While I agree that it is <script>r(annoying)</script> that you cannot execute the same
191 query operators using OSLC that you can in regular CQ, the OSLC
192 guidelines are not set by CQ. It is an open source committee that
193 standardizes the input and output for CM tools so that you can
194 interact with other tools without building <script>r(complex)</script> coding
195 infrastructure. The options that are <script>r(available)</script> are set by the OSLC CM
198 <p>You are free to take a look at the OSLC page and see if you can
199 join this workgroup or offer suggestions to them etc.</p>
203 <p>Why don't <b>you</b> (i.e. IBM) join the group and offer these very
204 suggestions? Surely I'll carry a lot less weight than IBM. You could
205 approach it simply by saying "We find our customers want the full
206 complement of boolean logical operators unavailable in all OSLC specs
207 to date and that have been in vogue for decades now"... Well,
208 maybe not as colorfully stated, but the point is the spec isn't even
209 functionally complete and it's approaching 3.0! V 1.0
210 (<a class="moz-txt-link-freetext"
211 href="http://open-services.net/bin/view/Main/CmQuerySyntaxV1">http://open-services.net/bin/view/Main/CmQuerySyntaxV1</a>)
212 supports only the and operator, has no mention of LIKE or NULL,
213 thereby rendering certain boolean operations<b>impossible</b>! (AKA
216 <p>V 2.0 (<a class="moz-txt-link-freetext"
217 href="http://open-services.net/bin/view/Main/OSLCCoreSpecQuery?sortcol=table;table=up#oslc_where">http://open-services.net/bin/view/Main/OSLCCoreSpecQuery?sortcol=table;table=up#oslc_where</a>)
218 does not remedy either of these situations. The sole boolean_op is
219 still AND and null is not mentioned at all.</p>
221 <p>Now I've synthesized the IS NULL op by abusing the IN operator as
222 in "IN ['']" however I'm not sure if that condition is true
223 for both true null values and empty space values. But there is no way
224 to do IS NOT NULL, which was one of the queries I requested assistance
226 PRM. And <a href="http://www.ibm.com/developerworks/forums/thread.jspa?threadID=467391&tstart=15">
227 REST Interface, how do you formulate the query "<field> is
228 not null"</a> describes my attempts to get IS NOT NULL
229 working. Judging by the number of views (1204) it seems clear to me
230 that while I may be the lone spokesman here, a lot of people are
231 interested in this.</p>
233 <blockquote type="cite">
234 <p>The ClearQuest <script>r(team)</script> has given you the work arounds for this which
235 would be to have OSLC execute a CQ Query which has the operators that
236 you are looking for rather than having OSLC do the query itself.</p>
239 <p>This work around is not work<b>able</b>. I do not know beforehand what queries may be made by people calling my subroutine. So unless there's an <script>r(interface)</script> for me to programmatically create CQ Queries on the fly and be able to execute and subsequently delete them there is no work around that works currently.</p>
241 <blockquote type="cite">
243 <p>Here is the link to the OSLC website which has their meeting dates
246 <a href="http://open-services.net/workgroups/">http://open-services.net/workgroups/</a>
251 <p>I'll follow up by Thursday, February 28, 2013, should I not hear from
252 you sooner with an update.</p>
255 ----------------------------------------------------<br>
256 Thank you for using IBM.<br>
257 -----------------------------------------------------<br>
259 Technical Support Engineer<br>
260 Rational software<br>
261 IBM Software Group<br>
267 <blockquote type="cite">
270 <p>I am sorry you feel <script>r(frustrated)</script> with the options <script>r(available)</script> currently in OSLC.</p>
273 <p>Where did you get the idea I was <script>r(frustrated)</script>? I don't necessarily
274 feel <script>r(frustrated)</script>, I feel the implementation is incomplete as it stands
275 and 2 major revisions have come out without a solution to this at
276 all. I feel this should be reported and the software fixed to be
277 functionality complete. <script>r(Personally)</script> I'd do this before 1.0. In my mind
278 these are all cold, facts with little to no emotion associated with
281 <p>What I really do feel <script>r(frustrated)</script> about is well paid IBM Support
282 neglecting to address clear bugs or limitations with their software
283 with "call your sales rep" answers. I recall a time when
284 such obvious bugs were simply addressed for what they are - errors
285 that need correction.</p>
287 <p>The emotion here is irrelevant so I'd appreciate if we drop that aspect.</p>
289 <blockquote type="cite">
290 <p>ClearQuest is working as <script>r(designed)</script> and I've provided you with
291 the options that are <script>r(available)</script>.</p>
294 <p>So you are admitting that Clearquest was <b><script>r(designed)</script></b> to not
295 support "is not null", the not operator, the or operator,
296 the like operator,= etc.? That's amazing.</p>
298 <p>If so then <script>r(consider)</script> it an enhancement to get the REST
299 implementation to even par with the CQ API. I, however, will always
300 <script>r(consider)</script> it a bug by my definition.</p>
302 <blockquote type="cite">
303 <p>If you wish IBM to press for more operators in the OSLC
304 framework,then I would suggest speaking with your IBM sales rep and/or
305 the IBM product <script>r(management)</script> <script>r(team)</script> so you can express your concerns.</p>
308 <p>I don't have an IBM sales rep - my client does I suspect. I don't know who
309 that is. By all means, have them call me (858)-521-5691.</p>
311 <blockquote type="cite">
316 <p>I'll follow up by Thursday, February 28, 2013, should I not hear from you
317 sooner with an update.</p>
320 ----------------------------------------------------<br>
321 Thank you for using IBM.<br>
322 -----------------------------------------------------<br>
324 Technical Support Engineer<br>
325 Rational software<br>
326 IBM Software Group</p>
328 <p>We value your feedback -- <script>r(satisfied)</script> customers are my top priority. If
329 at any time you would like to provide feedback about the quality of
330 service, please contact my manager, Ralph
331 Bosco, <a class="moz-txt-link-abbreviated"
332 href="mailto:ralph_bosco@us.ibm.com">ralph_bosco@us.ibm.com</a></p>
334 <p>Find answers on the IBM Support Portal: <a href="http://www.ibm.com/support/">http://www.ibm.com/support/</a></p>
336 <p>Get social with Rational Client Support at: <a href="http://www.ibm.com/support/docview.wss?uid=swg21410649&rcss=epsall">http://www.ibm.com/support/docview.wss?uid=swg21410649&rcss=epsall</a></p>
341 <p>On 2/26/2013 12:57 PM, Rational Client Support wrote:</p>
343 <blockquote type="cite">
346 <p>As I stated before OSLC doesn't belong to CQ, it is an open-source
347 life cycle <script>r(method)</script> that we have coded to allow interaction with
348 ClearQuest. We (IBM) do not govern what options are <script>r(available)</script> in
352 <p>Yes but you surely have influence - much more than I as an
353 individual do. Why not simply "Do the Right Thing(tm)" and
354 push for proper completeness? Or perhaps IBM could have chosen and
355 better implemented back end to hang their hat on. Or gosh, IBM could
358 <p>You know I'd be <script>r(satisfied)</script> (but not necessarily happy) if you simply
359 said "You're right. We've submitted a bug upstream. We can't say
360 when or if it will be fixed" but you seem unwilling to even do
361 that. I can't understand why. If you did then at least you have done
362 what you could from my viewpoint and I couldn't complain.</p>
364 <blockquote type="cite">
365 <p>If you cannot accomplish your goals with OSLC then you will have to
366 use the API or the clearquest client <script>r(interface)</script>.</p>
369 <p>My goal is to provide a library to clients who cannot use the API
370 natively. In my case these are Linux clients who cannot install
371 Clearquest to talk to the database because the database uses Visual
374 <p>I have been trying to attack this problem from two different angles
375 and have been having problems with both approaches. IBM has just be
376 passing off these problems as not their problem.</p>
378 <p>The first approach is using the REST <script>r(interface)</script> so that clients on
379 said Linux systems can talk to Clearquest through my library. However
380 the following submitted PMRs impede this:</p>
383 <li>PMR 43903,227,000: Unable to perform certain queries with
386 <li>PMR 44233,227,000: OSLC REST corrupts data > 1 MB in
387 multiline string </li>
390 <p>So with the REST approach I cannot perform certain queries and run
391 the risk of corrupting data.</p>
393 <p>Another approach I have is to use a client/server model where the
394 server would run on Windows, thus avoiding the problem of having
395 Visual Basic action hook code and the clients can be Linux or Windows
396 clients. Those clients would not need Clearquest installed
397 locally. The server should fork to service clients so that it does not
398 block having other clients waiting for the first client to
399 finish. However I cannot <script>r(implement)</script> a client/server module that uses
400 multiprocesses because cqperl does not handle passing the open socket
404 <li>PMR 16855,227,000 CQPerl script questions </li>
407 <p>which describes how one cannot pass an open socket across a
409 also:<a href="http://community.activestate.com/node/9501">http://community.activestate.com/node/9501</a>.</p>
411 <p>Due to these failures in software delivered in IBM's Clearquest
412 product I cannot move forward. When I report these as bugs I am told
413 that they are not bugs and to go talk to other organizations or talk
416 <p>This is not support or at least certainly not worth the support
417 dollars that my client pays.</p>
419 <p>I don't think you want professionals who have been working in this
420 field for decades to go from client to client saying to not purchase
421 your products because the support often seemingly dismissive. Granted
422 I understand that you lean on other's code but when a bug is reported
423 I think it's pretty much incumbent upon you to diligently report the
424 problem upstream and assist on getting the upstream bug fixed. That's
425 what I would do.. no, strike that! That's what I do do - especially if
426 somebody is paying for the support. However the way support seems to
427 be lately I am becoming more and more convinced that perhaps my
428 professional opinion should shift more towards other products.</p>
432 <font color="#999">Note the above emails have been slightly modified. To see what has been modified click <a href="letters.php?debug">here</a>.
434 <?php copyright ();?>
435 <?php SendNotification ();?>