Walk before you Run

Its amazing, not a day goes by where a new technology comes out to disrupt the development pipeline. Older technologies may be retired by a vendor and there is the inevitable scramble to adapt to the new. As we are fast approaching 2024 and in my world a new release of Microsoft.Net I find I am focusing on some of the newer stack pieces such as Blazor, and Maui. As I never want to fully train on the job, though there is always a level of learning on all projects, it is my goal to have enough foundational knowledge to be able to start building a solution for a customer on day 1.

Maui is fairly new to me and I wanted to get back into some mobile development. There are may platforms out there from Apple (Swift, xcode) , and Google (Flutter) as well as others but since I am a Microsoft technology focused developer MAUI has made the most sense for me.

I have a customer called Alliance Environmental out of California that I have been working with for more then 15 years supporting and developing for their CRM system needs. Its been a great relationship and one I expect to continue for many years to come. The were using the Infor CRM mobile client. This client was Javascript based and provided the basic needs of accessing the CRM data. The problem is as in with any general solution that there are needs and functionality that is difficult to provide and the platform was limited to how to achieve the greater need of the service based business. That being said its been a while since their users have used that mobile client. It seemed to me to be a great opportunity to build out a POC on Maui and determine if the platform could indeed provide the capabilities needed to support the user base and their unique business cases.

So I rolled up my sleeves and did what I have done thousands of times in the past, opened up Visual Studio and created a new project. I took a pretty Agile approach and worked towards a MVP (Minimal Viable Project), creating the HTTP client access to the Infor CRM SData endpoints first and then building simple configuration and login views. Once I got that working I started to work on framework components such as DetailViewModelBase and ListViewModelBase. Its always good to think about the reusability of your component libraries and I focus on the extensibility of a platform from day one. So in about 8 or so hours I had login pages, and a main page showing navigation options. The great thing about MAUI is i can develop against windows and then deploy to devices or simulators at later times.

The navigation page started to come together and looks a little like:

Each nav button clicks through to a standard list/search view where a different data template is used to render the list results. Shown below is the accounts search screen.

By clicking on one of the Account items the detail view opens up displaying the most relevant information as well as child lists.

Now I have not been working on this project for long but in that short time I have been able to get networking, security, picklists, list views, detail views and child lists all working in a consistent and repeatable fashion so implementing new entities/workflows have been greatly simplified. Now this is only a POC and I am hoping that it becomes a product. Maybe of I get enough interest I can make it a more generic platform for partners to provide to their end customers. Only time will tell but my walk through MAUI as a mobile platform has been a success in my books.

Call to Action : If you are looking for a mobile application to be developed please think about including BITtelligent Software as a possible vendor to build it out for you. We would be more then happy to work with you in developing solutions that fit your needs.

Introducing …. Me…

Software development is what I am good at, and it has been good to me.

When I started developing code more then 30 years ago I did not need social media to advertise my skills. It was a different time and I would use contract companies to find me work. Further ahead in my career I was lucky enough to be exposed to the right industries and hand an insatiable skill to deliver end to end products. I built a company, employed other developers and built some incredible solutions for a large set of diverse businesses.

I am both business and technology. I marry the best of both worlds that enables a capability of taking a vision statement from conception to end product. As in a great line in a movie .. “Build it and they will come” I am able to take an idea and deliver a completed end product to enable a business to be empowered and reduce work through technology implementation.

My skills have allowed me to build products that were used throughout the world. From development tools, Mobile platforms, integration pipelines, Office add-ins and advance CRM customizations. I have been lucky enough to build products that target Windows, web and mobile platforms so the breath of solutions have been quite wide. The challenges have been large but I have met them and delivered to my customers each and every time I have been engaged.

As we go into uncertainty its good to connect with a development partner that has a history of delivering. I am that partner and look forward to working with new companies. If you are looking to develop a product to enable your business users please do think of BITtelligent. We have been a trusted partner for Infor, Sage, Act, and so many others for many many years ..

I await your email

Mark

This is suppose to be Easier

Got to be honest. Being a software engineer is a difficult proposition. Every day we here we will be replaced by no-code and Ai is going to eat our lunch. The anxiety and panic attacks that may reverberate through Silicon valley must be overwhelming. The fact is software development is hard. Our tooling and platforms fall short of their guarantees. Take for an example Microsoft Maui, a mobile platform to target Windows, Android and IOS .. Many others but these are the majority of users. The main goal is to abstract away the differences to provide a common framework for the majority of work items needed to be completed to build a common solution.

Now where my current gripe is focused is on common HttpClient communication. This should be the same for all platforms given the common use cases. I have found out that this is far from true and depending on the platform you need to do so many different things just to make a web request. This is where honestly Microsoft fails as the library should handle the different requirements on such a base set of functionality.

I’ve been able to get Windows, and Android requests working so far on my development effort, and will be tackling IOS next but I am disappointed in the Stack that I need to write so much different code to handle the simple function as making a HTTP request.

So what I am getting at is even though AI might be able to write boilerplate code its not quite ready for prime time when dealings with the nuances.

I still have a job, and I expect to have a job for a while longer ….