Hacker News new | ask | show | jobs
by sanjiva 2473 days ago
I'm the founder of WSO2. I'm from Sri Lanka. We have 100s of coders from Sri Lanka (not dozens). I'm the creator of Ballerina. I'm now its product manager.

Ballerina is in its first GA release. Please elaborate on what features you see as "almost complete"?

And regards to your comment about WSO2's inability to produce market-ready products, we have 500+ customers from all over the world for our products. What do we need to become "market-ready"?

2 comments

Well, I just took a cursory glance at the documentation. Ballerina looks like it would be perfect for a data processing pipeline we run, I thought I could try it out for prototyping a new processing step, and see how I liked it.

This first use-case I could think of involves XML processing. You have "native" xml types. Neat.

After reading the language spec, all the xml examples, and the documentation for the 'xml' and 'xmlutils' module, I have no idea how to read in a xml file and get an 'xml' value from it. I also don't know how to extract a record type from some XML, except by writing a manual mapper from the DOM node to the record.

The actual methods available on the 'xml' type seems kind of unfamiliar, even after working with XML in a lot of different languages. 'getName' and 'getElementName' seems to do the same thing for elements. For some reason. To determine the type of a node, you call 'getItemType'. But 'getItemType' does not document what happens with CDATA sections, document elements or document type elements. Why re-invent the wheel? what's wrong with getNodeName and getNodeType?

The 'slice' method is really weird. It expects numeric child indexes. I mean, you sometimes know the document order of the stuff you're working with, but that's not really XML-ish.

It looks like there's a lot of amazing work put into Ballerina, but I don't think I'll use it for this prototype.

The XML design is going to get a significant refresh. The draft proposal is here: https://github.com/ballerina-platform/ballerina-spec/blob/ma....

The XML programming model is rather different from DOM and others for a lot of reasons. I hope reading this proposal will help.

Hi Sanjiva, I'm impressed. Of the product, and that you have that many excellent Java coders in Sri Lanka. Didn't expect that.

Java really needs a safe structurally typed product. What are the major differences to Scala?

This was exactly question in my mind as well when I saw Ballerina.

What are the major differences to Scala with Akka?

Why didn’t you expect that Sri Lanka has excellent Java coders?
Because I never heard of them. I heard of Bangalore and Gurgaon, but never Colombo.
Just check this out

"Sri Lanka comes in at number one in its preference for Java" source : https://blog.hackerrank.com/which-country-would-win-in-the-p...