Not just open. The standard underlying model in Flash is a stage with fixed dimensions. Great for arcade games and animations, but bad for responsive or being readable in various screen sizes.
HTML can be a pain when you want to create sophisticated UI layouts, but by default it’s readable on all screens and reflows content automatically.
Flash/Silverlight could have worked for SPAs and we could have keep js/css simple for pure document pages.
I did Adobe Air desktop applications and there was no issue with scaling the application to different sizes, the Flex4 framework is still one of my favorites for layouting Applications GUIs for sure 10x better then web GUI frameworks, sometimes I wonder if the creators of angular ever in their life created a desktop or mobile application because for me the architecture seems stupid or created for a weird target audience.
The first time I heard about it was on a JavaScript meetup, where a guy praised it as the best that ever happened to JS.
He said multiple times "Yes, and we had some issues... but they came from the fact that we didn't do it like Angular intended, when we rewrote as the maintainers explained, it worked!"
I never touched it.
Went from ExtJS4, to Ember.js, to React and then I stayed there.
For me as a developer angular feels like (I can be wrong since I am not some genius that works at Google) a tool for making hello World forms , like you want to give it to soem people that do not know JavaScript and have them write code using ng-if and ng-repeats, then on top of that you add a ton of magic that is implemented in a shit way so you most of the time you get n errors when soemthing is broken and if you are lucky you get some hints.
I used react a few years ago, this tool made sense, you create Components and you implement render functions(I even used it without JSX to understand it better), the nice stuff about react was that I could put breakpoints in the code and understand everything. I did not used React recently and I am reading that the develoeprs over-complicated it.
What was great with Flex4 ,WPF, Qt is that you had enough components in the base that you could write your application super fast, I would only create custom components in rare cases like when we needed to show some graphs and bar charts, and creating custom components just implied extending a base Widget and override the render/paint function.
Yeah, I am frustrated with Web frontend and angular, my latest issue was when i deleted some unused property of an object and a GUI just stopped working(blank) without any warning or error, I could not figure this issue in a few minutes so I passed it down to the angular expert (is still not fixed yet so I am not sure what caused it it and especially why no errors)
The appeal of AngularJS was more or less that, somewhat like Rails, it offered a One True Way that mostly worked pretty well. Overcomplicated by today's standards, sure, but remember that AngularJS was a decade ago, back when jQuery was still king and anything like architectural rigor on the frontend had yet to be imagined.
Especially with a team made up mostly of folks with less JS experience, you could better sustain velocity because you just needed one or two people who could build custom controls and otherwise handle complicated stuff, and most folks were perfectly able to build and ship features without nearly so much risk of spaghetti complications as you'd find with a less rigorous framework. That made it a good teaching and learning tool as well; you could start off a junior with a base of AngularJS-specific knowledge, and then generalize that into understanding JS proper and being able to work outside the structure AngularJS provided.
I wouldn't want to go back now, but I did and led a lot of good work with AngularJS, and used it to great effect as a mentoring tool besides. In the context of its time, it was brilliant.
I would disagree, there was no one true way, there are a few ways to do a slect for example, like you can use ng-options or use ng-repat for a li. There is also a sure way to have developers created stupid code where the 2 ways bindings will fire changes into an infinite loop. As an example a simple dropdown could just be like
<DropDown dataProvider="someArray"/>
for a bit more complex stuff you have have attributes like
With this architecture 99% of cases will not requiere custom code, just setting some attributes, and the 1% you create your function that paints the item in the list. For all you get for free all the DropDown functionality, like keyboard shortcuts(arrow keys, Enter) . accessibility, all the events(before open, open, opened, before close, closed, hover ) in angular world if you are not super lucky to get pro developers with good angular experience you get a giant mess. They added components much later , not sure what was in angular team head not creating the component stuff from the beginning (I inherited a code base before components were invented in angular)
Edit: maybe angular was better then jQuery or whatever stuff was there in JS world but my issue is the guys that created it appears that they never created desktop or mobile apps, is like soem Google devs in their free time invented this shit from scratch with ZERO experience in GUI toolits, in fact I am wondering how big is the ratio of quality code /total code Google devs are creating. I hope their Fushia team has some competent experienced developers in the team.
> in angular world if you are not super lucky to get pro developers with good angular experience you get a giant mess
True, but you only needed one good Angular dev, in a senior or lead role, to avoid that. I had the enormous privilege of getting to be that person a few years back, and maybe that colors my interpretation a little.
> They added components much later , not sure what was in angular team head not creating the component stuff from the beginning
My impression is that Angular 2 grew components largely in response to and because of React. The concept wasn't precisely new, but React did formulate it in a way that can be fairly called novel.
Componets/Widgets were super old in Desktop world so React did not invented them.
This is why I wonder if angular devs ever ever did any GUI development before creating angular, or maybe angular was just a simple toy and for some reason it grew too much.
I can't find 1 good thing to say about angular1(version <=1.5) compared to Qt,WPF,Flex4 . Let me know if you worked with that old version any good thing about it (that is not it is a bit better then bad jQuery code)
They don't solve the same problem. ExtJS is a UI toolkit, AngularJS is more of an application framework - Angular doesn't provide complex controls, Ext doesn't provide a defined structure in which to build your code.
It did not provide simple controls either, no basic DropDown or DataGrid,ListBox.
It only made super easy to make Hellpo world apps with the 2-way data bindings and that is all, when things get complex angular can't also gets super complex.
Yes ExtJS could be thought of as a component/ui framework similar to Bootstrap or KendoUI?
Before Angular, Backbone was all the rage (2013) which started the whole front end framework trend and effectively killed jQuery (which was only really good for manipulating the DOM because JavaScript was so fragmented since not every browser supported the JS function... eg. IE6).
Essentially Angular wrapped everything into a nice gift that included Backbone-like MVC type architecture (MVVM), KnockoutJS, and Mustache for Templates (Similar to ERB for Rails?).
I'm definitely incorrect in the descriptions in the plumbing because it feels like ancient history now. Essentially Angular is just a framework like Rails for the Front End. Difference between ExtJS is that it's more heavily into the way the UI widgets worked and behaved whereas Angular is more for the Business Logic and the way the Client Side is structured.
Then IMO angular should have not do GUI part at all, rather then the bad thing they created in angular1.
Honestly I have no idea why would you compare angular with Rails, it includes some basic routing, and some pathetic wrappers for existing native functions, and the $emit/$on , what other plumbing I am forgetting ?
There are still a ton of super quality jQuery plugins for Widgets that are still used today, I seen a lot of angular code just wrapping (badly most of the time) jQuery. And on top of that angularjs used jQuery (or a lite version) too.
Did you wrote desktop or mobile application with the native toolkits ? I am curious if the misunderstandings are because if you only used Web tech then angular would appear to be something great where if you come from Desktop/Mobile you see angularjs as garbage, better then bad jQuery code but probably worse then anything else.
This is a shortcoming of many flash like tools that export to the web (such as unity or adobe animate). I am trying to solve this with https://moos.app
It automatically works on all screen dimensions but is not as powerful as flash (yet).