Tell us about yourself
I got interested in programming in the later years of high school. I went to college to get one of those pieces of paper that says you know what you’re doing. I got hired by my first employer the day before graduation – not because of my programming skills but because of my ability to create a Flash animation which was… questionable at best. My real education came from that employer where we consistently worked 60 – 90 hour weeks (for terrible pay) coding a medical information system and a medical imaging system. While that job was intense, it did set me on the path that I’m on today and I am grateful for everything I learned there. I moved to another small company where we were introduced to DevExpress before XAF was a thing. We spent about 3 months starting to redevelop this company’s flagship product by writing our own framework.
On the day DevExpress released XAF into the wild, we got a notification. At 5pm that day, everyone else went home and a couple of us stuck around to try out XAF. We worked all night and by 8am the next day, we proudly walked into our boss’ office and declared the project done (metaphorically speaking). We managed to reproduce everything we had created in 3 months, and more, in one night.
At that point, we never looked back. We’ve started multiple companies built on products developed with XAF. In June of 2015, I decided to branch out and start giving back to the XAF community. That’s when Llamachant Technology was born. Shortly after, I became a DevExpress MVP and I couldn’t be prouder to be part of the MVP program.
What has been the most enjoyable project you have built using XAF?
There’s lots to choose from. We did an SMS youth counselling application quite a few years ago which incorporated a home-grown chat component and a significant amount of infrastructure to get running. We have helped domestic violence and sexual assault centers all over North America get funding by utilizing XAF and reporting. Both of those projects had an impact on people in need so they are among my favorites. Our team is now working on 2 new projects and we are excited to announce those in the next few months.
Advice for beginners
I have two pieces of advice for anyone starting out with XAF:
Get your head out of database design and start visualizing your system in objects. The beauty of XAF (and really XPO) is the ability to ignore 90% of traditional database design and start thinking about your business objects and how they work together.
Before you try to add new functionality to your XAF application, see if there’s a way to do it out of the box. I’ve seen a lot of people try to implement their own layout logic rather than use conditional appearance and a lot of people try to implement unnecessarily complex business rules in controllers and business objects rather than leveraging the validation module.
If you haven’t already, take a look at the Llamachant Framework modules we offer (for free!) as they incorporate some common functionality that we add to most of our projects.
Opinion on Blazor
I’m going to get blasted for this – I just know it. To me, Blazor is the pristine island in what has become the absolutely polluted ocean that is web technology. I’m extremely hopeful that Microsoft will continue to push this technology to provide a completely .Net based approach to web that breaks down the traditional barriers of client-server architecture.
Must have tools
We’re a little bit old school. I love Visual SVN for our source code control, we use Flock for team communication, Zoom for meetings and supporting our clients, and we couldn’t code without our mechanical keyboards. We have an internal issue tracker, written in XAF, that our clients can use to manage their projects. We have an internal CRM, also written in XAF, to manage our invoicing, billable hours, client notifications, etc. Other than that, we don’t use a whole lot of 3rd party products for our day to day development.
Anything else to add?
I’m excited to see where XAF goes in the next few years. The ability to maintain a single code base and deploy across multiple devices and operating systems is going to be huge. In the last couple of years, many more people have started offering new modules and providing input into the XAF community. It’s really good to see that community growth.
Thanks Dave for sharing some information about yourself and If you want to stay up to date with what Dave is up to, check out these links: