11-02-2016 08:07 AM
I'd like to get an idea of what people are using Aikau for and in particular to try to understand where any difficulties are in using it or understanding how it works. Even if you've just used it once for a very minor customization it would be useful to know about so just adding a comment that says "Yes, I've used it" would be fine, but the more detail you can provide the better - especially about the use cases you were trying to solve and the problems you encountered (both technically and conceptually).
I'm very happy for this to be used as a general discussion thread where I can answer any questions on how and why Aikau has been implemented the way it has, but obviously if you have any specific questions on a current customization or implementation then you may want to raise a separate discussion thread (and I'm happy to be tagged in questions on Aikau so that I get notified immediately about them!)
Ultimately my goal is to be able to improve both the documentation around Aikau and the general experience of developing with Aikau and I can only do this with input from the Community so any information you can provide would be greatly appreciated !!
11-03-2016 08:16 AM
Hi Dave,
Nice topic. I would like to share some of my thoughts here.
Following are some of the most common questions I have seen new developers asking when they are asked to work in Share(Surf/aikau)
How to get started with it? Any pre-requisite knowledge required? How to develop with Aikau? How to debug and resolve issues with it? How to make customization to existing aikau widget/component? How to create a new aikau widget/component and so on.
In my opinion, if we can have something as following then it would surely help everyone who are trying their hands with aikau development.
I am sure there must be existing documentation/tutorials/videos for the same, however, just adding the points here for reference.
1/ Clear understanding about how aikau saves time in comparision to development with share in traditional way.
2/ Cleaner learning path (Must to have knowledge/Good to have knowledge), that would certainly help any new comer to focus the learning efforts in right direction.
3/ Example walkthrough in detail explaining about how to debug through an existing aikau widget/component along with references to the code base. Basically a technical deep dive.
4/ If possible, What kind of technical issues generally a developer can expect (like tricky JS issue/declaration issue or so on) and how to resolve them while working on Aikau.
5/ How to identify different approaches to implement the same thing with Aikau and Best practices for development with Aikau.
6/ Insight into how to make customization to existing aikau widget/component.
7/ How to create a new simple aikau widget to complex aikau widget.
Hope this helps.
Thanks,
Ramesh
11-03-2016 09:46 AM
Thanks for the feedback, Ramesh - it's very much appreciated.
I feel like a few of the items that you've listed are covered in various locations (or at least touched upon)... the primary locations being the tutorial and my blog posts... I'm wondering if there is an issue with people being able to easily find this content?
However, I do think you might be right about having a deep dive example and the debugging practices. I'll look into trying to provide some further information in these areas in the coming weeks! Thanks again.
11-03-2016 09:35 AM
Dave Draper wrote:
I'd like to get an idea of what people are using Aikau for and in particular to try to understand where any difficulties are in using it or understanding how it works. Even if you've just used it once for a very minor customization it would be useful to know about so just adding a comment that says "Yes, I've used it" would be fine, but the more detail you can provide the better - especially about the use cases you were trying to solve and the problems you encountered (both technically and conceptually).
I'm very happy for this to be used as a general discussion thread where I can answer any questions on how and why Aikau has been implemented the way it has, but obviously if you have any specific questions on a current customization or implementation then you may want to raise a separate discussion thread (and I'm happy to be tagged in questions on Aikau so that I get notified immediately about them!)
Ultimately my goal is to be able to improve both the documentation around Aikau and the general experience of developing with Aikau and I can only do this with input from the Community so any information you can provide would be greatly appreciated !!
I have been developing in Alfresco for only about 2 months. After going through the training in the University, I have definitely done 95% of my presentation work for my projects in Aikau. I do not have legacy projects to go back to, and I avoid the traditional way of building presentation webscripts due to the overhead (having to code everything from the ground up). I find the structure provided by Aikau easy to follow and easy to explain to my co-workers. I've found that a number of my use cases are halfway done or more when I code with an Aikau-first mindset. The caveat that I have is when you need to provide more customization than Share can provide. Then you are back to square one developing a UI for Angular or another framework.
So on the plus side, if you just need to get a UI up for a customer who isn't picky about Share, Aikau is definitely the way to go. I'd argue due to the structure provided by Aikau, refactoring a Share-heavy project to Aikau would help to bring in new developers because of the shallow learning curve. Aikau's only real challenge is initially understanding three core fundamentals: Dojo/AMD, the subscription/event model, and the override structure.
On the negative side, if you need a custom UI outside of Share, obviously Aikau is not very useful.
Great topic!
11-03-2016 09:42 AM
Thanks so much for the feedback, Keith - it is greatly appreciated.
It's fair to say that Aikau is entirely focused around Alfresco and Share so it does have limited use outside of that scope, but I'm glad you've found that many of your use cases are already halfway complete when you come to implement them. I'd actually be really interested to know where we've fallen short - obviously there are infinite possibilities of what people might want to do, and whilst we can never hope to satisfy all of them in Aikau it is incredibly helpful to understand what they are - so any time you want to report something that wasn't as easy as you'd have liked then I'd be interested to hear about it!
I think that you've absolutely nailed the 3 areas that people conceptually struggle with - I think that this is an area I need to focus more attention on in terms of educational material.
09-17-2017 09:49 AM
I understand this thread is almost a year old, but still very appropriate. I just got back to doing some programming for Alfresco Share, and I am doing the switch to Aikau since it's becoming the tool of choice. Unfortunately the doc is outdated or incomplete in the Community 201707 release, the links to the github project takes us to a tutorial for which the maven project can't be built as explained, some widgets declarations need to be adjusted, etc.
This isn't too much an issue as a good developer can find his/her way around and fix things and I found the samples very helpful. I use eclipse oxygen for the development and testing so I skipped the maven part and just used the project for alfresco I already had and fitted the files where they should belong.
I think what's missing is a "best practice" section in the Alfresco documentation pages. For example, in the Alfresco tutorial on Aikau we show how to use two sets of files, with declarations and ftl in the web-extension section, and widgets stuff in META-INF/resources. However, the samples in github put everything in site-webscripts. Is there an advantage in splitting or keeping things together?
I understand that it seems practical to keep the css and properties in the META-INF section of a project. But what are the trade-offs?
Better doc would encourage people to make the switch and spend less time debugging the sample code in order to get going.
Thanks.
11-20-2017 12:38 AM
For me, the beginners tutorial help. But until certain point, the jsdoc and source codes are the only resources I could refer in order to understand how each widgets can be used. Perhaps the jsdoc could be improved by providing more examples for each widget. With mostly or typical way of using the widgets.
The concept of scope: global/widget specific pub/sub and the ability to read pub/sub log file is also important that a user knows why certain pub sub are not triggered because of the scope mistakes.
Tags
Find what you came for
We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.