News for hackers. Stuff that matters.
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by ryanmcbride on Monday June 25, 2018 @03:41PM (#17395174)
I've never interacted directly with IBM, but I remember about 2 years ago, they had a talk at the Akamai Edge conference about how they dealt with bloated cookies. The company I work for has the same problem so I sat in to see what their solution was.

The problem they were having is that all the various IBM lines of business added so much garbage onto the client's cookie, that eventually their pages would stop loading because they wouldn't be able to parse the cookie.

The 'solution' is to detect when that's about to happen, and redirect the client to a page that warns them that their cookie is too big (because IBM made it too big) and give them a button to delete their cookie. They then continue to start over and stuff more garbage into the fresh cookie.

That kind of problem solving pretty much made me lose faith in them successfully doing much of anything anymore.

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by stefs on Monday June 25, 2018 @06:08PM (#17396251)
had to deal with ibm once. we were developing an application for a customer and ibm was working on some new service for them. of course the customer insisted we use the new ibm service, even though it solved a problem we didn't have at all. the ibm product was a website to be used by end users, while our application had to pass our end users data through. so, i asked the ibm guys (via the customer) to give me the docs for their json interface, as i don't necessarily want to parse HTML inside the application to exchange data. there was no json interface - html was all they had -, but they got to work implementing one.

what i got was:

    {"elem" : "html", "children": [ ... {"elem" : "form", "attrs" : {"action": "/an_url", "method" : "post"}, children: [{"input" : {"attrs" : {"type" : "submit", "value" : "..."}}}]} ..., ]}
yes, their json interface was the DOM, serialized as json. but it gets better. to submit my data i had to fill in the actual values in their json struct at the appropriate nodes and send it back.

i'm a) pretty sure this "json interface" feature cost the customer more than i make in a year, and b) it probably broke the very instant the customer let a frontend/designer guy change the html code months later.

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by ploxiln on Monday June 25, 2018 @07:50PM (#17396841)
Ah such classic outsourced third-world contractor output. They are told what to do (by some PM who has no idea) and they do it. If they ever say "uh this doesn't make sense" they are cheaply replaced. I've seen some of this nonsense (though not IBM related):

    strncpy(dst, src, strlen(src));
    dst[strlen(dst)] = '\0';
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by zeusk on Monday June 25, 2018 @09:34PM (#17397268)
> dst[strlen(dst)] = '\0';

That line alone is cancerous.

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by ggg9990 on Monday June 25, 2018 @10:57PM (#17397578)
Not a programmer. What’s so bad about it?
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by jonathankoren on Monday June 25, 2018 @11:06PM (#17397604)
It doesn’t make any sense.

The way a string is terminated in C is by a null character. ‘\0’ is a mnemonic. strlen() returns the length of a strong. It does this by doing a linear scan down the array until it finds the null, and the returns that index as the length.

That line of code does nothing useful. It means, “scan through the array until you find a null, then write a null there.” Which is exactly what you had to start.

So why would someone write this? Well, they were told to make sure that you always terminate your C strings with a null, otherwise you’ll run off the end of the array and corrupt memory. This is true, but this isn’t how you need to find the end of the array. They should have used the number from strlen(src), not strlen(dest). Even worse, strncpy() will put the null terminator in dest in this case.

The line belies any sense that the programmer had any understanding of what the code was actually doing. It’s a amateur mistake.

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by zeusk on Tuesday June 26, 2018 @05:10AM (#17398985)
using strlen(src) is also an amateur mistake, because the whole point of doing that (stncpy family, ensuring dst ends with null) is that dst might not be large enough to fit string from src.

It has to be the size of dst, which can only be known at the site of allocation in C (except for a non-clean way of looking at heap metadata).

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by jonathankoren on Tuesday June 26, 2018 @12:17PM (#17401833)
There’s no reason to believe from these two lines that the memory is insufficiently allocated. It’s just two lines. The point wasn’t to share a safe string copy routine, the point of the post was to illustrate a single mistake.
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by zeusk on Tuesday June 26, 2018 @12:24PM (#17401918)
I'm not assuming that, but then you can't assume the memory is sufficient either. If the string is from network or user, then you can never assume the buffer to be of sufficient size (which they definitely do, because they aren't tracking how much of src was copied into allocated dst).
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by ploxiln on Tuesday June 26, 2018 @06:07PM (#17404354)
Each line, individually, is total nonsense.

It never makes sense to use strlen() for an argument to strncpy(). Only the size of the destination buffer makes sense for strncpy() (usually sizeof(dst)). For other cases you would probably use memcpy().

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by projectramo on Tuesday June 26, 2018 @08:45AM (#17400097)
pace @zeusk:

I thought the point was that they didn't know if the dest is long enough to copy source, so they copy as much of it as they can.

The reason for the '\0' is in the case that src is shorter than dest.

A more explicit way may be to strlen dest > src then just use lenght(src) otherwise use str(dest).

But this might actually be more efficient.

Edit: And in this case Spolsky doesn't apply because it seems the developer doesn't get to allocate the dest length.

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by zeusk on Tuesday June 26, 2018 @12:23PM (#17401897)
Well...

If dst is larger than src, the strcpy* family of functions will also copy over the null byte.

If dst is shorter than src, and if strlen(src) is used as arg for strncpy then the function will overflow in dst and your null byte will also be outside dst buffer. In hardened environments you wouldn't trust strings to contain null byte if it comes from network or user and use strlcpy with known size of dst then append a null byte at end of dst anyway to ensure it is null terminated.

Using strlen to compare buffer sizes is totally wrong and is the source for many bugs (hint, strlen doesn't actually return size of anything but the distance of the first null byte from the address you provide it).

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by ggg9990 on Monday June 25, 2018 @11:29PM (#17397664)
Thanks. Great explanation.
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by nazri1 on Tuesday June 26, 2018 @07:13AM (#17399532)
See also: Shlemiel the painter [1]

[1] https://www.joelonsoftware.com/2001/12/11/back-to-basics/

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by copperx on Monday June 25, 2018 @10:26PM (#17397451)
That line belongs in a hall of shame somewhere in the internet.
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by de_Selby on Tuesday June 26, 2018 @07:41AM (#17399685)
> by some PM who has no idea

This is the real problem. That PM of course wants the work done yesterday and has ego issues so even when the contractor does question it they just double down on what they originally said.

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by forapurpose on Monday June 25, 2018 @11:59PM (#17397770)
> outsourced third-world contractor output

Do we know that the developers were outsourced or which countries they were from?

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by ballenf on Tuesday June 26, 2018 @10:45AM (#17400956)
Yes, in an inferred way at least. Look at the IBM jobs / careers page and locations. You can see where different types of openings are. Last year I looked at the AI jobs because I was curious where they were doing the work. Mumbai was first in terms of open positions for machine learning, if I recall correctly.
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by forapurpose on Tuesday June 26, 2018 @06:49PM (#17404586)
That tells us nothing about where the code discussed higher up this thread was written.
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by snambi on Tuesday June 26, 2018 @12:26AM (#17397851)
Sounds like total failure of management
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by pythonistic on Monday June 25, 2018 @09:42PM (#17397300)
I'd tell you to get in touch with an Senior Architect but that's no guarantee that you'll get a good result. From my experience . . .

IBM sold a big outsourcing package to a major European insurance company: they would move ALL their stuff to the IBM Cloud (VMWare with a lot of custom BPM workflows to handle provisioning, etc.). None of this matched their other three big cloud projects, Bluemix, Softlayer, or their OpenStack project (Zenith -- my prior project), so it was all new from the ground up.

They needed to handle mass imports of DNS data from this insurance company (~1 million hosts) and other customers and they brought me in as a senior developer to do the grunt work. Since we were using ISC bind, I assumed we could use features like exporting zones with signed requests and take advantage of all the infrastructure work put into that server to scale up. Our Senior Architect poo-pooed that plan, so I started modeling the DNS records as structured data for consistent and complete import and export. Our senior architect also nixed that idea and said that we're gonna load the DNS structures with REST requests: the support people were gonna have a custom web application to load simple DNS export files (not zonefiles, mind you) into this system, and to make ad-hoc additions and changes. (When we had a new developer join, he had the same questions I had about why we weren't using all the DNS bind features since they were done and tested and perfect for our needs . . . it took a month to get him to stop asking.)

I got about 90% of the way through a solution with a Python Flask REST server at the center, high code coverage through unit tests (because it's Python and I was still finding edge cases that needed fixing to the very end), and Rabbit MQ for enqueuing the changes we've received before writing them out to DNS zone files. It works, but we certainly didn't need to blow April to August building out the architect's vision.

The reward I got was being pulled off the project when it was nearly code complete and would shortly go into production. I got a team based in India to manage in the mornings, while my afternoons and evenings were returned to developing Javascript for the BPM infrastructure jobs.

(When told I was going to leave for another company, IBM's counter-offer was to move me from my remote work-at-home location in Ohio, near family, to the Cloud Managed Services office in Rochester, MN, and then consider a raise.)

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by paganel on Monday June 25, 2018 @06:16PM (#17396297)
> yes, their json interface was the DOM, serialized as json.

This is pure thedailywtf material.

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by ryandrake on Monday June 25, 2018 @07:27PM (#17396697)
Did the change request come complete with specific requirements on what the interface should include? Because it sounds like they produced exactly what was asked for: a JSON interface. If the requirements were poorly specified, you can’t lay all the blame on them.
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by gaius on Tuesday June 26, 2018 @02:13AM (#17398273)
Did the change request come complete with specific requirements

I get that you do need specs but c'mon, if you ask a plumber to fit a pipe from A to B and he uses one made out of cardboard would you think it was reasonable for him to say "well you didn't specify it had to carry water, pay me 3x as much to put it right". And then you find out that this is the first time he's even seen a pipe, but his business card says "senior plumbing expert".

You expect a basic level of competence and familiarity with the problem domain and good faith from any professional whose services you hire.

Also consider that a program is a spec, and if you are going to explicitly specify every little detail then you might as well just write the program yourself, there is literally no sane reason to put an outsourcer in the middle.

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by blihp on Tuesday June 26, 2018 @04:50PM (#17403875)
Unfortunately, that's not how the game works with the large services firms. The salespeople and account/project managers run the show. Their business isn't selling expertise / solutions, it's selling the maximum amount of billable hours at the highest possible margin via the illusion of expertise / solutions. (I say illusion because if you read the fine print of one of their typical contracts, there's very little actually promised other than providing warm body of type X for hourly rate of Y)
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by Macuyiko on Tuesday June 26, 2018 @03:29AM (#17398571)
Exactly, this is everything that I hate about requirements management and requirements-driven-development in a nutshell. Way too often it just means: "we're actually too lazy / overworked / uninterested / have targets that don't align with the long-term best outcome, so we'll just force you to write down requirements which we know can't and won't ever be complete." It's the best way to cause internal politics to fire up and projects to belly up.
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by manigandham on Monday June 25, 2018 @08:36PM (#17397064)
Yes you can. There's a basic level of competence in dealing with context around a request. Any decent developer or PM would know what a JSON API is supposed to be.
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by therealtomsmith on Monday June 25, 2018 @07:41PM (#17396786)
The act of them doing that alone shows that they either dont get it or that complexity within the organization has brought productivity to a hault. I'd assume it's the second one.
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by HelloNurse on Tuesday June 26, 2018 @04:43AM (#17398847)
The interface should include engineering.

A responsible developer is expected to ask insistently until the requirements make sense; whoever delivered the JSON DOM is stealing their pay, even if they did it knowingly as a joke or provocation.

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by piva00 on Tuesday June 26, 2018 @03:40AM (#17398606)
You are talking to humans, not programming a machine, you don't have to instruct them on each minimal detailed step to specify something, you expect agency, even more if you are paying big bucks.
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by erikpukinskis on Monday June 25, 2018 @07:34PM (#17396735)
Turns out the interface was built by Watson and technically met the spec.
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by bhouston on Tuesday June 26, 2018 @08:54AM (#17400151)
It is because ibm employs ultra cheap devs in India who barely know what they are doing. Ibm made itself into a low cost low quality Indian outsourcing firm but they charge high prices. Worst of all worlds.
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by raverbashing on Tuesday June 26, 2018 @12:57AM (#17397954)
And that's why IBM still makes billions of dollars, because we have fools like your client.
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by adventured on Tuesday June 26, 2018 @01:33AM (#17398119)
Here's how large the remaining inertia of IBM is: they're operating at a level where they can still generate $9-$10 billion per year in net income. That's about 2.5 times more than the most profitable tech company in all of Europe (SAP).
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by scoggs on Tuesday June 26, 2018 @12:11AM (#17397802)
MY GOD that is painful to take in. I feel for you :( . I've shed a tear for a fellow programmer in the thick of the "shit".
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by a_bonobo on Tuesday June 26, 2018 @03:18AM (#17398538)
IBM is one of the go-to partners for outsourcing tasks of the Australian government, and it's usually a dumpster fire.

- 2016. Australia decided to run a census, population wide (~22 million people), all online. If you didn't enter your stuff you risked a fine. You had one day to get a good 'snapshot'. The service, built by IBM, went down immediately.

'Census outage could have been prevented by turning router on and off again: IBM' http://www.abc.net.au/news/2016-10-25/turning-router-off-and...

'IBM to pay more than $30m in compensation for census fail, Prime Minister Malcolm Turnbull suggests' http://www.abc.net.au/news/2016-11-25/ibm-to-pay-over-$30m-i... (Have they done this? I don't think so)

They said it was an 'overseas DDOS' but there is no proof for that, personally I think it was Australians accessing the page from overseas.

Interestingly, this is not on IBM's Wikipedia page.

- In Queensland, IBM borked the rollout of a new health payroll system so extremely that the state premier banned the state from outsourcing to IBM (and that was before the census catastrophe!!)

>The commission, headed by former supreme court judge Richard Chesterman, tied a number of IBM employees working on the contract bid to serious ethical transgressions, including using leaked information about competitors to gain advantage and attempting to access tender responses by opposing bidders Logica and Accenture.

https://www.itnews.com.au/news/queenslands-ibm-ban-lives-on-...

In the end, the state had to carry the costs (1.2 billion) https://www.itnews.com.au/news/qld-health-ibm-payroll-court-...

It was supposed to cost less than 10 million.

This is also not on IBM's Wikipedia page.

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by martinwww on Tuesday June 26, 2018 @03:42AM (#17398620)
It's everywhere the same story. In Czech Republic IBM has implemented quite a lot IT projects for government. Just for example : There's software for tax management of whole country which is running on mainframes from 1992, it was written in Informix 4GL language there's only GUI is MS-DOS based terminal. all officials need to work with that system.

Of course it was fine 15 years ago but from that time we had quite a lot changes in tax system, many new conditions has been addad and in the result we have unstable deprecated software where maintainability is nowadays near to ZERO.

There are currently no people who knows how it works and who knows Informix 4GL language in 2018... After few years it will be probably replaced but cost of new project will astronomical (...of course).

I am not blaming purely IBM, quite often government officials are incompetent when it comes to software project planning.

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by piva00 on Tuesday June 26, 2018 @03:25AM (#17398562)
What? $ 1.2 billion for a failed project that in 2010 Queensland's government gave IBM a waiver?

This is blatantly corrupt, why the fuck would a government give a company a waiver from their contractual responsibilities on a failed project? That's utterly insane.

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by easytiger on Tuesday June 26, 2018 @04:06AM (#17398707)
If the project fails then the people who commissioned the project would be at fault, therefore these things rarely truly are considered failures
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by jacobush on Tuesday June 26, 2018 @07:56AM (#17399767)
"We learned a lot along the way."
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by smartician on Monday June 25, 2018 @05:56PM (#17396167)
We have run into the same issue before. Many third party services like Optimizely for example just stuff all their tracking information into a cookie, serialized as JSON, which you as the site owner don't really have much control over.

The problem is not that they wouldn't be able to parse the cookie, it's that Akamai edge node web server (Nginx or Apache, don't remember) rejects any request with a header that's above a certain size. Your origin server doesn't even get to know that there ever was such a request.

See https://maxchadwick.xyz/blog/http-request-header-size-limits for example.

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by workinthehead on Monday June 25, 2018 @07:24PM (#17396679)
While you raise a valid issue, you don't know that IBM didn't also have trouble parsing large cookies. And even if they didn't, your information doesn't exactly excuse IBM for using over 8 kilobytes of data to send cookies back and forth.
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by throwaway0255 on Tuesday June 26, 2018 @01:24AM (#17398065)
I laughed too hard at this. Reminds me of that famous Jim Reekes story:

https://www.youtube.com/watch?v=C5d151lqJsA#t=2m4s

Do you happen to remember what the copy was on that page?

I'm sure it had to be something better than "Hey we made your cookie too big. Can we delete it? Ok thanks sorry about that."

I bet they went with something subtle and vague, make the problem a little unclear and complicated-sounding, maybe take a little credit for Websphere doing a good job in detecting the problem.

Like how I word all my work emails.

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by ryanmcbride on Thursday June 28, 2018 @01:32PM (#17418875)
I wish I had taken a picture. I don't remember exactly but it was something along the lines of:

"We are unable to process your request due to a problem with your cookie, please click below to delete the cookie"

And then there was just a normal button input.

Their logic around having the user click the button instead of just automatically deleting the cookie and moving on (Something that still shouldn't be necessary if you are using cookies correctly) is that they thought users would be upset at IBM automatically deleting their 'data' without asking. That data just being a bunch of unreadable values for IBMs services.

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by cncrnd on Monday June 25, 2018 @06:35PM (#17396418)
I find it hilarious that they made this into a talk! There must be something more to it?
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by defen on Monday June 25, 2018 @05:14PM (#17395849)
How did your company solve it?
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by curun1r on Tuesday June 26, 2018 @12:53AM (#17397944)
At the large company I worked at, it was solved by frequent code audits to any team given subdomain of the company's company.com domain. We were explicitly told to ensure that anything not related to interoperability between company properties was to be set on the ourdomain.company.com subdomain. The team in charge of it had heuristics they used to monitor for unapproved infringements on that policy.

If I decided I wanted to visit one of our offshore dev teams, I could book a first-class ticket anytime I wanted to with no approval necessary. If I wanted $2m for some dev effort, I could have the necessary approvals in a day or so. But if I wanted to write 50 bytes to a .company.com cookie, that was weeks of meetings where I needed to justify my team's existence, the value of the feature we were building and prove there was no other way to implement it.

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by sushid on Tuesday June 26, 2018 @01:44AM (#17398164)
To be fair, it seems like your organization's solution was to make it very difficult to do so, which is kind of a non-solution (aside from trnctng chars, which is a practice even a small ad tech startup that I was at did).

Admittedly it is a better practice than continuing to stuff you cookie and direct users to a strange page once in a while.

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by not_kurt_godel on Tuesday June 26, 2018 @03:35AM (#17398586)
How is that a non-solution? It should be very hard to introduce cookie bloat. Preferences can and should generally be stored server-side. I can't stand it when I lose settings on an account simply because my cookies are on another machine.
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by HelloNurse on Tuesday June 26, 2018 @04:59AM (#17398928)
Adding cookie data should be a big deal because if everything in the cookie is important valid reasons for needing more data (or less data) imply major architectural changes.

For example, after a merger in which two company websites should be integrated you might start with one simple cookie, transition quickly to two independent cookies on two domains, then use a cookie with two keys when the two sites have separate backends but the same domain, then eventually a cookie with a single key again after extensive replacements and reimplementations.

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by darkmighty on Monday June 25, 2018 @10:41PM (#17397515)
Seems fairly "conceptually straightforward" (if not so easy): compress data (internal dependencies), use predictions (external dependencies), save states server-side, simply reduce garbage.
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by scarejunba on Tuesday June 26, 2018 @01:45AM (#17398167)
Right on the money. We compress the cookie and store the state server side.
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by akfanta on Monday June 25, 2018 @07:21PM (#17396652)
nice try, IBM.
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by wallace_f on Tuesday June 26, 2018 @03:13AM (#17398523)
I wonder how long it will take for people to realize politics and bureaucracy does not reward merit
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by coderdude on Monday June 25, 2018 @03:53PM (#17395279)
Those two departments couldn't possibly be related. It seems unfair to base judgement on the entire company for that.
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by delinka on Monday June 25, 2018 @04:10PM (#17395392)
I dunno ... seems to me an indication of a larger systemic problem: "we couldn't even provide a company-wide engineering solution for this simple problem, so here's how we used a hack..."
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by philjohn on Monday June 25, 2018 @04:52PM (#17395694)
That's the problem you get with silo'd teams.

If they had a core technology team they could handle things like this more gracefully. Or maybe not, this is IBM after all.

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by semi-extrinsic on Monday June 25, 2018 @11:44PM (#17397713)
Exactly, it's IBM. As a company, what they do is so diversified in both level of complexity and technology type that a "core technology team" is just nonsensical.

I mean, in the same company you have on one end of the scale lots of teams doing just outsourced IT support ("my corporate word install is broken, pls fix"). And on the other end for instance the IBM Zürich research lab, who have received multiple Nobel prizes in physics and who developed things like Token ring and Trellis code modulation.

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by bnchrch on Monday June 25, 2018 @08:55PM (#17397152)
This is probably just me but I've yet to see a company pull off a core technology team gracefully.
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by wil421 on Monday June 25, 2018 @04:23PM (#17395489)
Sounds like similar stories I’ve heard about IBM but not related to cookies. Sell first and hack it together later which is very similar to a lot of places. Except IBM doesn’t seem to be able to hack it together.
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by aiisjustanif on Monday June 25, 2018 @04:23PM (#17395490)
So we have some more info out there:

- Their PCF solution is deprecated - They were still using a deprecated container management solution instead of kubernetes until recently - If you use Java the for you to use liberty build packs - They push XP and TDD practices from the garage yet many of their consultants don't practice what they preach.

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by parasubvert on Tuesday June 26, 2018 @12:42AM (#17397911)
IBM Cloud Foundry (formerly Bluemix) isn't quite deprecated but the container manager inside CF was stuck on the deprecated DEAs rather than Diego long after Pivotal and others moved on. They moved to Diego last year I think but very slowly.

And then they rebranded IBM Spectrum Conductor for Containers (look it up!), a Kubernetes snowflake they came up with, into IBM Cloud Private, because Kubernetes will solve all problems, the issues MUST have been leading with a PaaS and not a CaaS, right?

Other observations are spot on

Disclaimer, I compete with IBM and have to deal with their account team shenanigans, though parts of IBM are better than others and even can be good partners.

Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by workinthehead on Monday June 25, 2018 @07:28PM (#17396703)
Don't forget their big "blockchain" push (via TV commercials).
Re:Layoffs at Watson Health Reveal IBM’s Problem with AI by flukus on Monday June 25, 2018 @08:12PM (#17396960)
If they don't want the company suffering reputation damage by failings in other parts of the company then they should split or at least run under different brands.

If they want to accept the positives of the IBM brand then they need to accept all the negatives that come with it. Unfortunately for them that brand is now toxic.