ERP alike application in Dart.

481 views
Skip to first unread message

md9pr...@gmail.com

unread,
Dec 4, 2017, 5:10:05 PM12/4/17
to Dart Misc
Hi,

Is there anybody who have solved the puzzle in order to use Dart,both in the client side,and the server.
Iḿ not interested in ORM based approaches like Aqueduct,would like to work with raw SQL.
Can I use Aqueduct or Angel,without using ORM?

Thanks,
Marcello

Tobe Osakwe

unread,
Dec 4, 2017, 5:15:59 PM12/4/17
to mi...@dartlang.org
Angel was initially created with the goal of making it simple to build a full-stack Dart application, so yes, you can use it on both the server and client side.

Angel does have an ORM now, but it's optional. It's trivial to create a service (abstraction over a REST endpoint, also compatible with WebSockets) that queries a database table.

There's also dependency injection out of the box, so it's extremely simple to share a single or pooled database connection between route handlers to build an API.
--
For other discussions, see https://groups.google.com/a/dartlang.org/
 
For HOWTO questions, visit http://stackoverflow.com/tags/dart
 
To file a bug report or feature request, go to http://www.dartbug.com/new
---
You received this message because you are subscribed to the Google Groups "Dart Misc" group.
To unsubscribe from this group and stop receiving emails from it, send an email to misc+uns...@dartlang.org.

Marcello Dias

unread,
Dec 5, 2017, 5:44:06 AM12/5/17
to mi...@dartlang.org
Thanks TObe,
But what Dart technology I would use in this Rest webpoint to Query the Database,SqlJocky?


Marcello

ravi teja

unread,
Dec 5, 2017, 12:02:49 PM12/5/17
to mi...@dartlang.org
You could also try Jaguar. Has a good query package: 


Serialization library:


and DB drivers for postgresql, mysql and mongodb.

md9pr...@gmail.com

unread,
Dec 6, 2017, 4:15:04 AM12/6/17
to Dart Misc

hI,

Unfortunatelly, again, for this project they would go ahead with asp.net core.
I can even advogate to Dart aymore.
Dart is a Puzzle,with thousands of pieces ,at least for me.
Iḿ not a ex- seasoned Java programmer,wich seems to be todays Dart target market.
WIth all languages that wants to be somehow mainstream(wich was the goal of Dart in 2012,when
Lars Bak said that JavaScript would never ne enough for the Web),we have sampels to follow,
Whats the equivalent of Dart for the Java PEt Store,or C#s NortWind?
Today I have More expecations from the Dart COmmunity,wich seems to be smaller than in 2012, than
from Google itself.
Maybe someone from Angel,Aqueduct,or Jaguar can develop a single system like Dart Jobs,covering
the full stack,until them at least here in my company,well keep Dart some more years in the refrigerator.

Thanks,
Marcello

ravi teja

unread,
Dec 6, 2017, 8:07:23 AM12/6/17
to mi...@dartlang.org
@Marcello

I understand your frustration about lack of database drivers for Dart.

Regarding full stack, I think Dart is positioning itself strong at the moment with web (Angular), mobile (flutter), CLI (Dart VM), server-side* (Aqueduct, Jaguar, Angel, Shelf, etc) and Desktop GUI*.

Web, mobile and CLI are quite sorted out. I will concentrate on the remaining two: server-side and Desktop GUI.

Server-side:

All Aqueduct, Jaguar, Angel and Shelf come with lot of supporting packages and middleware.

For Jaguar, there are about 65 supporting packages:


22 examples and boilerplate:


For Angel, there are quite a lot of supporting packages too:


Database is a pain! But PostgreSQL and MongoDB are well supported.

I have been thinking about writing C++ or Rust based DB drivers.

Cross-platform Desktop GUI:

This is the piece of the missing puzzle. Hopefully, soon we will have Flutter for desktop.

I am working on a project called Helium, where chromium (like Electron) is embedded directly into Dart applications with a very clean architecture.

Things can't get fuller than this.

If you use, PostgreSQL or MongoDB, you shouldn't have many problems. Otherwise, yes state DB support in Dart is shit right now.


Marcello Dias

unread,
Dec 6, 2017, 8:56:01 AM12/6/17
to mi...@dartlang.org
Thanks Ravi,

People like you,Tobe,Chris Storm,Joe Conway,Danny Tuppeny,James Ots are filling a gap,that
Google irresponsibly left behind,I imagine the frustration of a Japanese guy who started to develop a huge
ERP in Dart and polymer some years ago,never heard of him anymore, thinking that he was standing in the shouldes of a giant,that
time would fill all the gaps.

Ive seen people that just gave up with dart,some that are frustrated and praying for rapid changes in the ecosystem,
fortuantelly my ex-boss did not hear to me some years ago,and continued with .net and its limitations, or probably he
would be blaming me by now.

Marcello

Randal L. Schwartz

unread,
Dec 6, 2017, 3:49:32 PM12/6/17
to Marcello Dias, mi...@dartlang.org
>>>>> "Marcello" == Marcello Dias <md9pr...@gmail.com> writes:

Marcello> are filling a gap,that Google irresponsibly left behind,

It's *not* irresponsible for Google to build the Dart ecosystem for
their most important customer: Google itself.

And it's all open source, and being developed in the open. That sounds
pretty responsible to me.

Just another Dart hacker,

--
Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095
<mer...@stonehenge.com> <URL:http://www.stonehenge.com/merlyn/>
Perl/Unix/Dart consulting, Technical writing, Comedy, etc. etc.
Still trying to think of something clever for the fourth line of this .sig

md9pr...@gmail.com

unread,
Dec 7, 2017, 12:13:36 PM12/7/17
to Dart Misc
The only answer that comes to my mind, is that Google dont care at the moment about web
development.
And they have a fear that if they give drivers ,or an API for Google CLoud Sql,
flutter users will have something other than FireBase to work with.
Maybe in another 5 years they change their mind.

Marcello

ravi teja

unread,
Dec 8, 2017, 3:12:51 AM12/8/17
to mi...@dartlang.org
@Marcello Looks like, in Google, they write servers in Golang (probably also python). That is probably the reason why, there there is less support for server-side and DB drivers from Dart team.

People come to Dart expecting to find only Google developed stuff. Google does not develop free stuff for you. They develop what they need (for their internal clients) and let us use it for free (open source projects). This is true for any commercial open source company.

Biggest problem I see is the lack of faith on the Dart community and community developed projects.

By the way, which database are you planning to use in your application?

--

Marcello Dias

unread,
Dec 8, 2017, 4:29:24 AM12/8/17
to mi...@dartlang.org
Ravi,

Al Microsoft projects are "free" today.
Being open source, and "donate" is just a marketing strategy both of Google and Microsoft,theyŕe not being nice guys.
What they want us is to pay for Google Cloud and Azzure at the end,and make their companys even more wide spread in the market,
both in hosting and in advertising.
SO what we are really discussing here,is not who is nicerr or who is worst,but who are smarter and who are dumber,and who cares a little bit more
with the users base while doing changes.
Today I see Bill Gates as a genius, and Sergey Brin and Larry Page as idiots(ok just a frustated guy opinion,very easy to change.)
Dart has changed its initial goals so much,that I never see Lars Bak promoting it anymore, we still have a language that pretends integers are doubles running
on our VMS.
I realize also that keeping a Polymer.Dart version would be a nightmare,since the first really fast version of the Library is that 3.0,which is an architectural copy of
 React and REdux.
But what I expected from Google, is that theyŕe trying to compete with Microsoft in the Business applications marketing,as much as Microsoft was trying to do with
Bing, on the Search engines and marketing area.
Microsoft has just abandoned Bing,and put all their elfos in the programming Industry again,today in 2017,I can write a isomorphic application in C# but still cant do in DART.
Unless there is a really good reason to do so,like: they think the Dart language will change so much in the next years that they will have to deal with backward problems they don want to introduce right now, they should put more,and more,and more resources in the Dart ecosystem development.
REgarding Dart being just a language that they use internally that should satisfy their needs,and use it if you like,or write yourself what you need,
please see some 2012 videos,and compare with the actual momentum, and the promisses made.
at least by that time,Google announced Dart as the:The next good thing,The highlander of the programming languages,the all that and a bag of chips.
I think just me, and Lars Bak still think this way.From times to times I watch to Lars Bak and Anders Hejlsberg interview on Google so I can keep my faith in the language,but at least with my programmers friends Dart became a joke,something that would replace Java script,The only real isomorphic language,and bla,bla,bla.
Of course I still have expectations in the language,otherwise I wouldn't be here.

Marcello

Marcello Dias

unread,
Dec 8, 2017, 4:35:16 AM12/8/17
to mi...@dartlang.org
Ops,TOday MariaDb and PostGresql would be enough for me,not for making Dart a first class citizen,and a mainstream language,
with thousands of jobs,and people fighting to hire me, though.
My," Se ne qua non" is a tool to produce restfull endpoints with Dart,and finally become an isomorphic language they promissed some years ago.
If they have had done at this time, I wouldn  be studying Asp.NEt Core by now.

Marcello

md9pr...@gmail.com

unread,
Dec 8, 2017, 4:56:30 AM12/8/17
to Dart Misc
Another thing.
Dart should be easier,and acessible for begginers.
Iḿ a seasoned DElphi programmer,Iḿ trying to master things like REstMVVM,,ORM?(URGH!!!) and so on.
DOing it with C# and ASP.NET core,because theŕe are an enourmous amount of resources over the internet,
That teaches the architectural patterns,and howdo  they fit in the language and the whole ecosystem.
In Dart all we have is Richard Kimś series on Youtube,a very nice guy that teaches while he learns,
In Dart people really expect youŕe a seasoned Java programmer ,I expect this will change one day,
or Dart will ever be a thing like a Secrect society of the programmers.:>}

Marcello

Istvan Soos

unread,
Dec 8, 2017, 9:14:14 AM12/8/17
to General Dart Discussion
Marcello,

I've written and operating a data processing app written in Dart,
using Postgresql and ElasticSearch. The postgresql driver is good
enough, and I'm really thankful I can just use it. I needed to write
my own Elastic client, and several other infra pieces, I've open
sourced some, the rest may happen later.

Dart server side is good enough, at least for me. I'm sorry to hear
that it is not good enough for you, but honestly, nobody is obliged to
make it so for your specific use case. You could encourage server-side
library development by (a) participating in the development of the
libraries you need, (b) provide resources and motivation for those who
do develop these libraries, (c) just letting them know that you are
thankful for their contribution.

There are many ways to improve server-side dart, but I'm pretty sure
that shaming people that they don't match your expectations won't get
you anywhere.

Side note: you mix the cloud offering and pricing with open-source
development. Dart, the VM, the toolchain, the libraries: everything is
open sourced. If Google stopped supporting it, you could still develop
in Dart, and we may have a community around it that will carry on with
basic self-support. Please be respectful of the fact that people do
put a lot of energy and effort both inside and outside of Google to
improve Dart. If that is still not enough for you, that is sad, but
please don't the people for it.

Cheers,
Istvan

Marcello Dias

unread,
Dec 8, 2017, 9:29:05 AM12/8/17
to mi...@dartlang.org
Istavan said "Please be respectful of the fact that people do

put a lot of energy and effort both inside and outside of Google to
improve Dart."
Well, If you read my messages carrefully you will notice that I thank the community,
I never said an word about the Dart Team,Iḿ complaining with Google thinking that
the Dart team should be bigger,just that.

Danny Tuppeny

unread,
Dec 8, 2017, 12:52:39 PM12/8/17
to mi...@dartlang.org
On Fri, 8 Dec 2017 at 14:29 Marcello Dias <md9pr...@gmail.com> wrote:
Iḿ complaining with Google thinking that the Dart team should be bigger,just that.

I think this applies to most teams at most companies - there's always an endless list of things that could be done with a bigger team. Hiring skilled devs isn't always easy/possible or even necessarily the best thing to do. Google have invested a lot in Dart already and I don't think it has the traction they'd hoped - I don't think focusing on a few core things is a bad thing to do. I'd really love to see Dart in more places (for ex. Google Cloud Functions!) but I'm not sure if I was in charge that's where I'd choose to put resources right now.

Today, I think Flutter is probably the best way to get more people using Dart - if it really takes off then it'll probably also increase demand for Dart in other places (who wouldn't love to have one language they can use and share code with native mobile apps, web client and server?). That may increase availability of packages for things like you need or make more sense for Google to spend additional resources in those other places. Fingers crossed! =)


Marcello Dias

unread,
Dec 8, 2017, 1:12:21 PM12/8/17
to mi...@dartlang.org
Danny Tuppeny wrote:
"I think Flutter is probably the best way to get more people using Dart - if it really takes off then it'll probably also increase demand for Dart in other places (who wouldn't love to have one language they can use and share code with native mobile apps, web client and server?)".

Well, thats how Google and Microsoft compares to me:
Microsoft just don't have good ideas, bu they ŕe fast as hell to copy things,and they make it available everywhere, they don't care about initial demand,
they just cover the whole thing,and if at the end its not good enough,they write everything again, and as an excuse they give you tools so you can import your code to the new paradigm.
Google is allways in search of the best idea,and if in the middle of the run they change their minds they say sorry,or develop it if you really need.

But if they really care about the size of their user base,they should try to balance it more.
I allways tought that flutter would be the cherry in the top of the cake,something the vendors would use in the street to communicate with my Dart written ERP.
But never convinced my ex-boss to sue Dart,because?
At least in the industry,people care about,easyness to hire people,available training material ,and that the language is isomorphic, anf Google just did not care
about any of these items until now.
If they want people to use FLutter,they should invest in the whole stack,and by investing in the whole stack they will promote thei hosting service,its not me that
are saying that ,but Microsoft.

Marcello


Danny Tuppeny

unread,
Dec 8, 2017, 1:39:42 PM12/8/17
to mi...@dartlang.org
On Fri, 8 Dec 2017 at 18:12 Marcello Dias <md9pr...@gmail.com> wrote: 
Google is allways in search of the best idea,and if in the middle of the run they change their minds they say sorry,or develop it if you really need.

But if they really care about the size of their user base,they should try to balance it more.

I definitely understand the frustration - a few years back my company evaluated Dart and decided that it wasn't ready because of silly things we thought Google could easily(!) fix :(

There's no obvious right answer - given limited resources, you can spread them (thin) across everything or put more effort into the things you think will give the best return - bigger risk, bigger reward. Google are doing what they think is best for Dart but that won't always align with all individual users needs.

That said, we shouldn't be discouraged from complaining about stuff (or as I like to call it, "giving feedback"), it might influence future decisions :D

Marcello Dias

unread,
Dec 8, 2017, 1:45:55 PM12/8/17
to mi...@dartlang.org
Danny Tuppeny said: "That said, we shouldn't be discouraged from complaining about stuff (or as I like to call it, "giving feedback"), it might influence future decisions :D"
If you see the last dart confs,they even have read some complaints for the audience.
That is why I continue on praying,crying and complaining at the same time.

Marcello

--

tatumizer-v0.2

unread,
Dec 8, 2017, 4:11:43 PM12/8/17
to Dart Misc
> Today, I think Flutter is probably the best way to get more people using Dart

You have only one chance to make a second impression :)
I'm afraid Flutter may miss that chance. When you open any Flutter example, all you see is syntactic noise caused by "children".
You can't see the forest for the trees. Not sure it can withstand comparison with hacky JSX. 
People should look into the code - and freeze in awe, stricken by the beauty of the picture opening before their eyes.
Will it happen with Flutter? Maybe. But I doubt it.

I find it really peculiar that the language targeting UI provides absolutely nothing for UI programming. Hierarchical object literals are not that common in server-side programming, but they are the bread and butter for UI.
This part was never even discussed seriously (at least, no proposals were posted).




Bob Nystrom

unread,
Dec 8, 2017, 4:45:11 PM12/8/17
to General Dart Discussion
We have been discussing improving exactly this. We don't have much written up yet and no serious proposals because we are very very focused on shipping Dart 2.0 (which mostly means getting strong mode done and everything onto it) and moving all of our implementations onto a single front-end. Those are both huge piles of work — I can't think of a single language that has significantly tightened its type system after 1.0 — so it doesn't leave us too much room for language work right now.

But I hope that once 2.0 is done and out the door, we'll be in a better place to work on language features like what you describe. I agree Dart isn't currently great for deep hierarchical code. Named arguments and collection literals help, but they only go so far.

Cheers!

– bob

Anders Sandholm

unread,
Dec 11, 2017, 8:03:42 AM12/11/17
to Public Dart List
Yes. What Bob said...

We're extremely focused on getting ready for Dart 2. 

Making Dart great for writing UI code is high on our list and something we look forward to spending more time on and address better.

--
For other discussions, see https://groups.google.com/a/dartlang.org/
 
For HOWTO questions, visit http://stackoverflow.com/tags/dart
 
To file a bug report or feature request, go to http://www.dartbug.com/new
---
You received this message because you are subscribed to the Google Groups "Dart Misc" group.
To unsubscribe from this group and stop receiving emails from it, send an email to misc+uns...@dartlang.org.



--
Anders Sandholm, Product Manager, Dart

tatumizer-v0.2

unread,
Jan 5, 2018, 9:30:18 PM1/5/18
to Dart Misc
Having plenty of free time on my hands during holidays, I was thinking about better formalization of hierarchical literals.
Here is the summary of my (modest) findings.
"Map vararg" idea is no good because it doesn't cover the case of single child. The (hypothetical)  feature under discussion should be applicable to both children (in plural) and child (singular).
The alternative idea for dart to consider is this: let's introduce 2 types: TaggedValue<T> and TaggedValueList<T>
TaggedValue<T> has 2 fields: final String tag and final T value; (tag is always a const string )
TaggedValueList<T> is just an immutable list of TaggedValue<T>

When function has a parameter of type TaggedValue<T>, it should be passed as tagged value of form [tagName] value, 
E.g. instead of
new SomeElement(
    attr1: 'foo', 
    attr2: 'bar', 
    child: new ChildElement()
)
it should be written as
new SomeElement(
    attr1: 'foo',
    attr2: 'bar',
    [someTag] new ChildElement()  
)

Declaration of constructor should be changed to
SomeElement({String attr1, String attr2, TaggedValue<Element> child})
Invocation doesn't need explicit 'child' parameter any more - compiler knows that tagged one is "child", due to the above constructor definition.
 
TaggedValueList is similar, it's just several tagged values are possible.
Function may declare only one parameter of type TaggedValue or TaggedValueList.

This change will be "almost" backwards-compatible - there's a 'mechanical' procedure to change all places where we access "child" and "children" in current flutter code.
Instead of "e.child", we have to write e.child.value
Instead of 'e.children[i]' - 'e.children[i].value'
(There can be cases where more has to be done to adapt to the new interface, but such cases must be quite rare. And in any case, compiler will catch errors).

Reply all
Reply to author
Forward
0 new messages