Why Aurelia Struggles to Gain Popularity

I know it is far from final, but one thing I noticed while browsing the vnext docs on Github is how many articles are in the “Getting Started” section (18!). The other frameworks only have 3-5 of them. Personally seeing a long list of things I should read just to “get started” makes it hard for me to get invested. A perfect example of this is IdentityServer 4, simply too much to consume before I feel like I know what I’m doing. I liked how back in the day there was a separate soup to nuts series for Caliburn.Micro to consume after I’d already gotten started that was clearly separate from the initial setup. I suggest this be broken up a little more?

2 Likes

@CuddleBunny Would you mind opening an issue on GitHub for that so we can discuss further? I’m open to any recommendations for naming and grouping of articles.

1 Like

Done: https://github.com/aurelia/aurelia/issues/574

2 Likes

I hope no one minds that I am reviving this thread.

I’m a python developer using Django in most of my work. I have a lot of experience with Angular, some experience with Vue, lately with Aurelia. I am a passionate Django developer, but I struggle trying to get frontend frameworks to work well with Django. I find that Aurelia is an incredibly good fit for Django and I feel strongly that Aurelia could profit by promoting this angle a bit more. Here are my main points.

  1. Django is python, and tries to stay pythonic wherever possible. Expect for the HTML Templating there is no magic DSL, or new language format. It’s all standard python and HTML, and the quality of the programming is very high, while remaining understandable. Aurelia also uses existing standards and accepted programming patterns rather than inventing new meta DSLs magic languages. Programming Django makes you a better Python programmer, programming Aurelia makes you a better Typescript programmer ( so much so, that I have even begun to use typing in python, making me an even better Python programmer ) Its all just lovely.

  2. Aurelia does not force an all or nothing method upon the developer. In various Django conferences and blogs a bleak future is being forecast in which Django only provides an API interface and the frontend is all just SPA Angular, Vue, or React. This is a shame. Django has a lot of great functionality that is wasted and has to be rebuilt in the frontend. Django + Aurelia works great and allows the developer to choose which responsibilities are handled by the frontend and backend flexibly. This would make long time Django developers happy. thanks => aurelia.enhance()

  3. (Related to 2) I think many Django developers are desperate to get away from using jQuery. Those that have used Angular know the joys of data binding, but struggle to integrate it with all the great Django features they are used to. When you let Angular in, it takes over and does not want to play nice with Django, its frustrating, and leads to the unnecessary splitting of server-side app and client-side app. Many people have just resigned themselves to this being the new way, but it does not have to be like this. thanks.again => aurelia.enhance()

  4. Django is a very active community, there are yearly big conferences, and many smaller ones all over. Many tutorial videos sites and channels with lots of follower. Presenting Aurelia as a great fit for Django would give Aurelia good access and presence in an active community that is searching for exactly this thing. I also find that Django ( and Python ) developers enjoy reading and writing high quality code, Aurelia fits here as well.

8 Likes

@aGustafson Since you have your first experiences with this combo do you think you could create sort of a baby-steps article which could also be promoted on the official blog perhaps? That might be a good start in the right direction

4 Likes

Yes, definitely. I’m making notes for a simple example game, where Django manages backend validation and Aurelia enhances the frontend. I’ll try to put something together next week.

3 Likes

Very interesting post. Did you build an SPA with Aurelia and Django or did you use Aurelia to enhance only part of the page (like we would typically do with vue or React)? I’m asking because I am a Django developer myself and wander how we could fit those two together aside from building an SPA and Django only doing the API stuff (currently at work we combine Django with React).

2 Likes

@aGustafson and @Jenselme trying not to sound unpolite I’d kindly ask to open up a new topic as that is a very interesting discussion which might get lost in this large thread. I’m definitely interested to see whats coming out of this

1 Like

Yes, we’ll take this to another topic, and I’ll reference it here, as well as in the two Django specific topics. Just to answer @Jenselme quick, I use Aurelia to enhance Django pages. I use the built in CLI Bundler, add an http proxy to Browser-Sync for live reloading, and can even use Django Compressor to shrink the Aurelia bundle down a bit.

edit: I created a sample Django/Aurelia project as Tutorial.
Topic is here: Enhancing Django with Aurelia

2 Likes

In my opinion docs and framework are the best, the problem maybe, big companies competing with angular, react this gives ideia of long support. I was using Silverlight and then Knockout, one of the this that I hate on Microsoft recently is this attempt to gain more people on trending tenclogies and let old dotnet guys like me seeing Knockout die on their projects and Aurelia struggling to compete with larger teams like angular. Not sure about blazor but seems like another trap. Really hard to achitects and developers to convince and take risks on framework that start to get unsupported and unmantenaid plugin if they are

1 Like

https://risingstars.js.org/2019/en/#section-framework

No mention of Aurelia. Says it all really.

1 Like

Well, it’s a bit unfortunate, probably side effects of not doing any marketing :smiley:

1 Like

Great marketing can work with word-of-mouth. Great sample apps for example. I’ve shown tons of people the main page sample app todo list, and that is what people first see about Aurelia.

  • Benchmarks: If you have objective measured metrics, such as speed of loading DOM benchmarks. Then easily, there will be blogs saying “aurelia is fastest vs react/vue” that alone will make a huge difference (but such blogs I haven’t spotted yet, mainly because someone needs to go around emailing the blog authors saying to test this framework as well----or write a medium.com blog article about benchmarks themselves).
  • Stars on Github: Time and effort should be spent on Github.com “stars” that’s how you go up the ranks. 11k already for Aurelia, not bad. Just need more github users to support or star it.
  • Documentation: Beautiful, pretty, syntax highlighted, easy to understand documentation is vital. It can make or break your app. The only complaints I hear from junior / mid-level engineers about Aurelia when they use it is this summary line I’ve concentrated out of what they complain about: “not enough examples and documentation is a bit advanced [as in makes assumptions about beginners]”
  • Examples: Following up on that, great examples on the main page can be a great help. The guides have 2-3 tutorials. Make sure every example is super easy to setup. I’m liking the new aurelia-cli 1.2.3
  • Avoid Breaking Changes: Yes Aurelia 2 may have breaking changes, but if so, a very explicit easy-to-find guide prominent on the front pages that show you MIGRATE Aurelia 1 to Aurelia 2. Or “Quick list: what not to do in Aurelia 2 after Aurelia 1” … Some quick Cheat SHEETS (Did I tell you how awesome cheat sheets are?) on how I should use Aurelia 2 (I’ve seen talk about it for a long while, but I have absolutely zero clue what Aurelia 2 looks like for now or will look like). Aurelia-cli 1.2.3 looks awesome, but I already encountered some bugs with setting up environment files in prod build. So breaking changes hasn’t happened in Aurelia itself, but aurelia-cli has had some issues which is what a lot of people rely on.
  • more gifs – Aurelia blog has some nice screen-gifs showcasing Aurelia. Please more of that EVERYWHERE… Gifs are so spectacular for marketing.
  • Powerpoint - You don’t have to spend big money on advertising. In fact, don’t spend anything on marketing before Aurelia 2.0… But easily get someone to make a nice analytical Powerpoint that a corporate leader can see and say “hey, why should I use Aurelia over react/vue/ASP.net/PHP/drupal/SpringBoot” and the emphasis should be “don’t have to find trained engineers, just get some comp-sci kid from college and let him look at a few guides on Aurelia and ECMAScript and he should be good to go.”

If you debate anyone on framework wars today, and ask “Why not Aurelia?” after they used Aurelia: the 3 answers will be: "(1) not popular, not enough examples… (2) can’t find the right way to do this in Aurelia docs… (3) [little detail issues that are derived from lack of experience with Aurelia]: ‘needed dashes in html, camel-case in javascript’, ‘my VariableChange handler didn’t work’, ‘bindingEngine when do i need it’

5 Likes

This.

The docs have changed for the better a lot, but to me it´s still a huge issue.

Hopefully AU2 docs will start with tutorials that give your self-efficacy a boost.

Regards

3 Likes

Another vote for this. Documentation is the biggest downfall of the framework. 2nd is marketing. I’m going to be positive that things will be better for 2.0

I know it’s open source, and I wish I could contribute, but there are many reasons why I can’t.

4 Likes

Docs are already off to a fantastic start in v2. I’m not to worried about them at this point so long as they’re close to finished before a documented pre-release.

3 Likes

I’ve just started looking at Aurelia and was enthusiastic about the contact manager tutorial since it’s something different and related to a project I want to write. I was somewhat disappointed in it in that it didn’t go that in depth in the example or explain why something needed to be done. Also, it could have went further by doing some of the exercises left to the reader (adding/deleting a contact would have been nice, having a more complex form would have been nice too). I think adding in Bootstrap and font-awesome introduced extra details that weren’t really needed for learning Aurelia at that point.

4 Likes

Hi @rminnich. I understand your comments on the contact manager tutorial. To get a great, comprehensive view of Aurelia’s amazing capabilities, take a look at Rob Eisenberg’s Beginning Aurelia Development and Intermediate Aurelia Development on Vimeo. They are more than worth the price of admission.

3 Likes

@Kukks

Re: …tried out Vue and was painfully impressed.

I’m not sure what you mean. Were you impressed, and if so, why “painfully?”

1 Like

Kukks means he is impressed how good vue is. Painful because he is a long time Aurelia supporter.

3 Likes