As an advocate for XAF, XPO, Xamarin and Azure I am constantly reading articles, tutorials, youtube videos and anything I can get my hands on about those topics and a while back I read a great article by Charlin Agramonte: Learning Xamarin Forms – The XamGirl personal recipe where she goes over her personal formula for learning Xamarin. I liked so much I even put it in my quick overview of XPO in Xamarin (expect part 2 and 3 coming soon) and got me thinking what a great way of jump start our learning process and having a lot of great content in a single place.
Well, this is my own formula for XAF development.
Are you ready?
1- Learn XPO
or Entity Framework (You can’t see I am little biased)
Most probably you already know Entity Framework. There is an enormous amount of information online for EF, Microsoft Docs, Udemy courses, Pluralsight, Lynda or should I say LinkedIn Learning and more. I won’t get into that because I believe is pretty much covered.
But if you are new to XPO and you want to learn more about it, just follow this link and start playing with it. A nice but old video (from 2011) I would still recommend to take a look is this one. Oliver Sturn does a great job highlighting the awesome features of XPO. Also for a more in depth look follow the series DevExpress XPO from step 1 to N from Jose Ojeda.
Lastly, for things you will be using all the time you might as well bookmark this link for your connection strings and “memorize”(meaning create a shortcut) the two lines of code bellow for setting up your Data Layer:
string ConnectionString = ...; XpoDefault.DataLayer = XpoDefault.GetDataLayer(ConnectionString, AutoCreateOption.DatabaseAndSchema);
Although XAF takes care of all XPO set up and configuration for you, I have found more easy to absorbs XAF concepts after having a better understanding of XPO.
2- Take a Course
The first step to learn is to take a course. Well Charlin we owe you this one. There is not online course for XAF available as you can see here and here. A few years back Olive Sturn had some online tutorials live but when he came back to DevExpress all that content was removed and plans to develop a online training course on the DevExpress site never came to fruition. But no worries even If I agree it will be nice to have a XAF University available, we still have choices.
Let’s start with the official sources:
- Two videos that you should definitely watch are A Gentle Introduction to XAF for Seth Juarez and Building a CRM application using XAF with Dave and Adam. In that order. Then move to the documentation (number 2 below). There is a lot information to cover and sometimes it can get a bit overwhelming so I believe starting with a visual will help you ease into it and also give you a glance at what you can achieve.
- DevExpress has really improved its documentation and they are constantly working to make it better. Knock down those basic and comprehensive tutorials in their getting started and you will be starting with the right foot.
- Devexpress Youtube Channel is also a nice landing place but a lot of videos are outdated and done for older versions of the framework so keep that in mind when browsing.
- Another great way to learn XAF and one of my favorites is just to check the official demos and the source code. Seeing how the magic works behind curtains, running it locally and actually playing with the code will definitely be an eye opening for you and totally worth the time.
- And lastly DevExpress Support is awesome, just ask them. One of the amazing benefits of XAF is their support team, they will go above and beyond to help you. Flood them with questions I assure you they will try to answer/solve any issue or question you might have.
Now, if you really want to take a course:
There are a few DevExpress recommended trainers.
Small disclaimer: I have not taken LLamachant courses but I have hear great things about it. I did took BitFrameWorks training and it was totally worth it. It covers from basic principles, to application life cycle to advanced topics. Classes are also offered in Spanish so if you are not fluent in English this will be perfect for you.
“But the problem is, I don’t have the money to pay for it?” Well, let me tell you: “If You Think Education Is Expensive, Try Ignorance” . I guarantee you will make your money back in your first freelance project.
3- Start your own project
Now that you have the basic knowledge, just jump to start coding. Solve a personal need. It could be a To Do application or CRM, maybe track you expenses in a XAF web app. It does not matter what you build as long as you are learning.
The best of starting a personal project is that it’s okay if you make a mistake, have memory leaks, crashes, etc. Because this is how people learn. Making mistakes and then do It better :).
4- Social Media
At this point you know how to code, you can create web and windows apps for your clients, but maybe you feel you are not good enough. Now it comes the important part, consistence. By reading articles every day, watching youtube videos, following the right people on twitter and always keeping reading every new piece of XAF information you can find that is how you will become a XAF pro ready to tackle any challenge.
I will list below some of my favorites resources to go trough weekly:
- XAF Facebook Page
- XAF Comunidad en Español
- XAF, XPO And Xamarin (We created this group as another way for sharing information, asking questions and helping others on XAF, XPO, Xamarin, and Azure. Feel free to join in).
Some accounts you can follow:
- Devexpress Blog
- Dennis Garavsky Blog (not active)
- Joche Ojeda Blog
- Manuel Grudner Blog
- Tolis Bekiaris (not active)
GitHub: (Bonus Free Modules)
Ok. Let’s continue.
5- Keep asking questions
Questions are the best way to gain deeper insights and develop more innovative solutions. So never stop keep asking question, to DevExpress support, to your Facebook group, trough Slack to you co-worker, to me. That is the real path to becoming a XAF pro. Never keep a question in. Let it out!
6- Go for that job
And lastly don’t be afraid to go for that job, for that contract for that project.
There are a lot of companies looking for good XAF developers and If you have read to the end of this article you are definitely one of the good ones. The ones whom always want to learn more.
From the site’s description:
“Xafers.Jobs is a job service that provides xafers with pre-screened XAF jobs leads that offer real pay for real work. From web to windows to mobile, from reporting to dashboards, all of the job openings we bring you offer some form of our loved XAF framework.”
Well, that is all for now. I will leave you guys with a couple links I always come back to and I will keep updating this post with more awesome post, articles, tweets and everything I can find, and if you know about a great resource I am missing here please let me know and I will gladly add it.
- How to improve application performance
- Format Specifiers
- Change DB at runtime
- Custom Logon
- Localization Provider
- Sequential Numbers
- Controller vs State Machine
- Reusable Module
- Legacy DB
- XPO Best Practices
Until next time. XAF Out!