6 ms·
Did you read about any of the suggested options? They all basically suck; requiring tons of boilerplate; are not-static formats (making it difficult to implemen
by d2p 12y ago
Did you read about any of the suggested options? They all basically suck; requiring tons of boilerplate; are not-static formats (making it difficult to implement "the other side"); poor performance; and mostly implemented by third parties so they'll likely be broken or abandoned in 6 months.
Doesn't it seem strange that a Google-designed language for the future of the web (that's supposed to make development faster and easier) doesn't handle this (basic) requirement easily?
- WoodenChair 12y agoI think it would be respectful if you mentioned that you are the starter of the thread on the mailing list in the first place...
- d2p 12y agoApologies; it's been so long since I signed up, I didn't realise my username was quite so cryptic. The thread is indeed mine, and I posted it here in the hope that it might be seen by someone on the Dart Team, as there seems to have been no response from Google on this hole :(
- WoodenChair 12y agoI can assure you that the Dart team reads the mailing list and has almost certainly seen your thread there. I appreciate (and can see) that you honestly want to help Dart succeed, but the title of this thread along with the tone of your comments in the mailing list thread I find to be filled with hyperbole. I don't think calling out the team publicly with a misleading title was the best way to go about helping the language.
- d2p 12y agoI'm sorry if it sounds like I'm being a dick; but I'm incredibly frustrated to have poured so much effort into trying to make Dart a viable option for a rewrite where I work (I've even been working on a Visual Studio extension since all the devs here are primitively .NET devs). To find something so fundamental missing with no reasonable solution (and no information from the Dart team) is frustrating; it's not going to make selling Dart to my colleagues any easier.
- frowaway001 12y agoI'm kind of interested why you considered Dart in the first place. Google has such a poor track record in language design, that when I was looking for a compile-to-JavaScript language I didn't even consider Dart.
- icebraining 12y agoJust out of curiosity, what is Google's track record in language design? I don't remember any languages coming from them besides Go and Dart.
- d2p 12y agoI wrote a blog post some time ago: http://blog.dantup.com/2014/05/web-development-sucks-and-its-not-getting-any-better/ http://blog.dantup.com/2014/05/web-development-sucks-and-its... And while responding to comments, I read a little more about Dart and it started to look quite appealing. I spend too much of my day maintaining and debugging legacy JavaScript written years ago in sub-optimal ways.
- spankalee 12y agoThere have been two responses from Dart team members to you thread, including myself. Sorry, I was on vacation and stopped responding when you said that I was inventing complexity as an excuse to not solve the problem.
- d2p 12y agoSorry I didn't identify these; it's rather difficult to know who's on the Dart Team, especially if the profiles aren't linked to profiles. It's rather hard to tell when someone is being a "helpful user" vs someone that actually works on the language. However, it doesn't change that the complexity being used as an excuse is not being requested. There are many things people would want to do with their deserialisation, and nobody is asking the Dart Team to provide them all. What is really basic, however, is deserialising data into a flat PODO so that we can take advantage of code-completion and static analysis on our code; isolating the mapping problem to a single point.
- jnbiche 12y agoIf he's going to do that, how about everyone here who's a Google employee mention that, too? It shouldn't matter? Well, then it shouldn't matter for d2p, either. Let's argue facts, not personalities.
- lmm 12y agoI'll bite your bullet. I think people who are Google employees should be declaring that.
- nailer 12y agoUltimately someone will wonder why Dart hasn't taken off since it was released two years ago, and start talking to web developers about what they want out of a future browser-based programming language.
- WoodenChair 12y agoI can see I'm playing Dart apologist today - but to be precise, Dart 1.0 (the first non-beta release) came out approximately 9 months ago, not 2 years ago.
- nailer 12y agoYep, however Dart was announced (and started getting feedback) 1020 days ago: https://news.ycombinator.com/item?id=3092558 https://news.ycombinator.com/item?id=3092558
- lmm 12y agoProtobuf is static enough. And the claim that everything will be broken or abandoned in 6 months is rather chicken-and-egg; at the moment Dart is a young, relatively obscure language, it doesn't have a mature, reliable library ecosystem. But the only way it's going to get there is if people start using it, using its libraries, writing their own libraries, and figuring out what works and what doesn't. > Doesn't it seem strange that a Google-designed language for the future of the web (that's supposed to make development faster and easier) doesn't handle this (basic) requirement easily? I don't think it's fair to call this a basic requirement. Scala is a 10-year-old language and the state of JSON serialization is still a mess (it's taken the recent macro system to put us anywhere close to sorting it out). Converting between typed and untyped at the boundaries like this is a hard problem, not entirely solved in any language (Java has basically given up and just used reflection and annotations, which is an answer, but not a very pleasant one). I think Dart is entirely right to take it slowly and make it a matter for third-party libraries rather than a core language feature.
- d2p 12y agoI tried to use protobuffers, to find the protobuffer library doesn't work on Windows.
- lmm 12y agoI'm not entirely surprised. Protobuf requires native code, and not many developers care about Windows. It's likely not going to take a lot of work to fix it. But yeah, small, immature language (and not a million miles away from the experience in vanilla JS - I've encountered plenty of e.g. grunt plugins that don't work on Windows either. Even in Ruby there are things that break). I think you're expecting too much from Dart. If you want a rock-solid corporate language, it's not there yet; nor is any language of comparable age. You're going to have to get your hands dirty now and again.