The Modern .NET Show

Episode 127 - Bunifu Framework with Wilberforce and Wilfred

Embedded Player

Episode 127 - Bunifu Framework with Wilberforce and Wilfred
The .NET Core Podcast

Episode 127 - Bunifu Framework with Wilberforce and Wilfred

Supporting The Show

If this episode was interesting or useful to you, please consider supporting the show with one of the above options.

Episode Summary

This episode features an interview with Wilberforce and Wilfred of Bunifu Framework, which includes a deep dive into a discussion about the history and significance of WinForms, as well as the future of .NET development.

Wilfred, who has extensive experience with WinForms since its inception in 2008, explains that WinForms is part of Microsoft’s .NET framework, which provides the tools necessary to build applications. It is a rapid application development tool that allows developers to quickly create desktop applications using a drag-and-drop visual editor in Visual Studio. WinForms gained popularity among beginner programmers and schools teaching programming, as it provided an accessible entry point into the world of programming.

The transition from older programming frameworks like Visual Basic to newer ones like WinForms and .NET marked a significant development in the history of .NET. It allowed for the quick adoption of .NET and the development of various systems and projects. Microsoft’s shift towards open source in 2018 further enhanced the framework’s stability and integration of new features, thanks to the contributions of the global community of developers.

The episode also touches on the introduction of .NET MAUI (Multi-platform App UI) as a unified platform for building modern applications that can run on Android, iOS, and Windows. This development aimed to provide developers with a framework that supports all types of applications, whether they are for the web, mobile, or desktop.

Bunifu Framework extends WinForms by providing developers with a range of controls and themes to enhance the visual appearance of their Windows applications. It allows for easy customization without the need to struggle with finding the right colors or themes.

Despite the progress of .NET and the push towards cross-platform development, many developers still prefer using WinForms for desktop applications. This is especially true for those who have already invested in other technologies and require specific features for desktop applications.

Looking towards the future, the episode hints at the importance of developers understanding and utilizing AI in their tooling infrastructure. While AI tools can generate code snippets or solutions based on existing knowledge, they cannot fully replace the need for developers to understand and solve complex problems. The future of Bunifu Framework is not explicitly discussed, but there is mention of the company considering building a low code or no code platform to meet the demand from both IT professionals and business users.

Episode Transcription

Hello everyone and welcome to THE .NET Core Podcast. An award-winning podcast where we reach into the core of the .NET technology stack and, with the help of the .NET community, present you with the information that you need in order to grok the many moving parts of one of the biggest cross-platform, multi-application frameworks on the planet.

I am your host, Jamie “GaProgMan” Taylor. In this episode, I talked with Wilberforce and Wilfred of Bunifu Framework. We discussed Windows Forms development and how it’s perfectly viable to build things with Windows Forms in 2023, and where we think the development industry is going.

Along the way we discuss ChatGPT, generative AI, and some of the amazing things you can do with these tools.

So let’s sit back, open up a terminal, type in dotnet new podcast and let the show begin.

Jamie

So, gentlemen, thank you ever so much for spending some time with me this afternoon. It’s a little bit later for you than it is for me. And obviously, we don’t know what time it is for the listener because podcast are asynchronous. So whatever time it is, listener, thank you for joining us, too.

Wilberforce

Thank you.

Jamie

But you’re very welcome. You’re very welcome.

So, Wilberforce, Wilfred, I was wondering, before we talk about Bunifu, would you mind giving us a bit of an elevator pitch about yourselves? Like what kind of experience you have with development and technology and all that kind of stuff, and how you came to start Bunifu.

Wilberforce

Yeah. Thank you. Thank you, Jamie. When you speak about an elevator pitch, you remind me of investors. And so you are our investor today. I’ll just share my elevator pitch. So I’m Wilberforce Seguton, and I am the CEO at Bunifu. At Bunifu. We began working together in 2014, but we had prior work experience with some of my co-founders. We have our CTO Kim, who is not here today, but he’s the one who came up with the idea of UI tools. And it began from what we do. We are a software company. We’ve done so many products previously. We even developed an antivirus solution. But that solution, of course, didn’t see the day in the market. It failed at some point. Then we also developed an ERP solution, which works for schools, it does accounting for schools, it does procurement for schools. It’s basically a school ERP.

And so when we are developing those two products along the way, we realize that we are becoming better at software. We are beginning to use our own tools to create software. And our main platform at that time was .NET was the main version, that is the main platform at that time. But what we realized with .NET is it was able to create for us great user experience using WinForms because it was giving us the tools we needed. But the challenge with those tools is that they are so plain, but our users wanted a better experience. And so we began creating tools to use in those UX UIs that we are developing for the products. And Kim, who is our CTO, began posting videos, using some demos on YouTube, now using those tools. And that’s when now there was a community around his channel asking, so where can I find those tools. And that’s when now we created Bunifu DevTools. That was in 2016. At that time, we began just sharing on YouTube, but we didn’t have the tools exactly. So what we did at that time, I was the one leading the business team.

And so I set up a preorder page just to see if the interest was genuine, because again, people can hype you and say, “hey, I like that thing,” but then maybe they disappear when you say, okay, fine, you really want it for you to order? So I set up a preorder page for Bunifu dev tools at that time, and we were surprised that there are many people are preordering it. And so that was enough validation for us to say, yeah, there is a case for WinForms developer tools. And we began working with the product. And by May that same year, we had our first MVP of the product. And that day when we launched on May 31, 2016, we had three sales. So out of the many preorders that were there, the conversions now were only three. But that was an encouragement. They say on the Internet, once you’ve made your first dollar, then you can make many more dollars. So it was a validation that, yes, there are people who are interested in this. And now we began developing dev tools, Bunifu UI tools, from 2016 all the way to today. But along the way, we had to change the name to be Bunifu Framework because we wanted to make it to be a .NET framework that developers can use for UI and even other components that can help them when they’re developing the product.

So I’ll say I’ll try to summarize our story as much as possible, but that is the journey so far. Yeah.

Jamie

Excellent.

Wilfred

Awesome. So for me, my name is Wilfred, Wilfred Kimura. I’m software engineer and product manager.

So my journey began in 2017 at Bunifu. But earlier on, I was a software engineer; started with building applications with Visual Basic applications used to be my old same friend. So it was more of me now getting to understand programming. So I ventured into building applications with Visual Basic applications, got to work in some few projects, building some few systems. And then from there, I transitioned into .NET, the world of .NET. Back then, we had .NET 1.1 and 2.0. So it was an amazing experience getting to transition from building applications with Microsoft Access back then, and then now getting into the world of .NET. So then I used to build desktop utilities. So it was a beautiful experience because it got me to understand the workings of .NET getting to acquaint myself with the technologies that were around it. And then from there, I was building with Visual Basic. And then I moved to C#. So just when I was transitioning to being a full stack because I had an interest in web development, at some point, I got to think of transitioning to the web, but just when I was transitioning is when I actually got an opportunity at Bunifu as an intern. So I got to the team, and then I began working as a UI UX engineer, building dashboards and all. Then from there, we got to Bunifu got to hire me officially as an engineer.

So from around 2018 to 2020, I got into the engineering team for building a Bunifu framework. Back then, it was early on, as Wilbur was putting it. So we had, like, the first number of clients that really got us running in terms of building the features. And then from there, we transition now to becoming a fully fledged flagship product for our company. So from there, I got to, with the experience I had before building utilities, I was not able to transfer that experience into building the framework. And mostly because Bunifu UI is built around making the developers experience better and simplified, it was more of like a rapid application development tool for developers now to design the applications in a core, beautiful way, in a coherent way.

So it kind of stuck with me. And then I got to now be part of I was actually the team lead at some point, getting to now consider the progress of the product and how far it will go. Then from there, we got to become a product manager for the product, Bunifu Framework. Now, that included then we had a chats data visualization product as part of Bunifu framework, and then we scaled the product, and then we kind of got it to being where we never even imagined it will actually get to. So with a big and a huge growing community of developers, we go to now build the product as a brand. And yeah, we are here where you are today.

Jamie

Amazing. It sounds like a real success story. I’m glad to hear it’s going really well. I’ve been involved with product launches myself where it hasn’t gone so well. And that’s not a great thing to-not a great position to be in, where everyone’s working really hard, but there’s no sales. Don’t be in that position. I’m glad that you’re not in that position.

Wilberforce

But we’ve been there before, actually, as I told you in my introduction, that we’ve launched an antivirus. We wanted it to be the first African made antivirus back in 2014. It was a big product launch. We did massive campaigns trying to push it out there, but it wasn’t a success. So, yes, I share with you that feeling, but they say when you fail, take the lessons and move to the next thing so I believe even in experience, there are some lessons you took and able to apply it to maybe even what you’re doing currently. Yeah.

Jamie

Absolutely. 100%. I like to tell people that even a failure can be a success, because as long as you learn from the failure, then you can learn from it and grow. And like you said, Wilberforce, you can attack your next project with the things that you’ve learned from this one, right?

Wilberforce

Absolutely.

Jamie

Excellent.

Here’s the thing, right? There’s a lot of .NET devs who’ve never used WinForms, and I know that Bunifu is built to complement that. So I was wondering whether we can have a quick discussion about WinForms before we get to Bunifu, just to set that sort of expectation and set that level of knowledge. Because I know a bunch of .NET devs who have never done desktop development at all. I’ve done some desktop development with WinForms back in 2008, but everything for me has been sort of Web.

So I think, Wilfred, where you said in your introduction how you were going to do Web but ended up staying with, you had that wonderful opportunity to stay with Bunifu and build up the Bunifu framework.

Wilfred

Yes.

Jamie

In my history, I went the other way. I went over to the Web. So I’d be interested to find out your thoughts on because you’ve worked with WinForms and you’ve worked with desktop development for a while, I was wondering if you could share your thoughts on WinForms and how good or bad it is. I know you said that it works as a really good rapid application development framework, and I feel like a lot of the younger devs won’t even know what that means. What are your thoughts about WinForms?

Wilfred

Yeah, so I’ve had really quite some experience with WinForms since its inception. I think around 2008 is when we kind of saw it spiking up in terms of the inception and the usage with a number of young developers, especially beginners.

So just to give some background on WinForms so WinForms is part of Microsoft’s .NET framework, which is a framework that helps you build applications using .NET. So .NET is a framework in its entirety in terms of being able to give you the tools to build applications. So .NET is like the foundation of what WinForms stands on. So WinForms is now Microsoft’s technology which helps you build desktop applications. We’d call it a RAD tool or a RAD framework. And RAD meaning that it’s a rapid application development tool. So that meaning that, say, you’ve got an idea to build a desktop application, the RAD development experience gives you the tooling that you will require to be able to build that application fast. So one you have, for example, the drag and drop visual Editor in Visual Studio. Visual Studio is also a tool in itself. So it helps you now it’s the ID that you’ll use to build applications.

So WinForms began we started seeing the fast releases of WinForms in .NET one we had the first release one and 1.1 which were quite stable at that time. I remember even I actually began building some few utilities with .NET 1.1 and two. So the were majorly and specifically for building Windows desktop applications.

Part of the products you could build is one was for the web and also for the desktop. But what picked up a lot was on the desktop side. For example, here where I stay in Kenya for example, we had a number of schools that were teaching programming using C# and Visual Basic using .NET and WinForms. So a lot of beginner programmers were able to venture into the area of programming fast when they got to understand the WinForms and .NET. We also had a lot of systems which are being built with WinForms, for example, student projects and all that. The we kind of saw a huge migration for developers moving from the old Visual Basic. We also had Visual Basic for applications that was like the programming framework for building macros in Excel and being able to program Microsoft Access databases. And then from there we now started seeing that migration happening, people now moving to .NET, getting to acquaint themselves with Visual Basic and C#. And then from there around in 2010 we started now seeing Microsoft getting serious with the progression of .NET.

Around 2018 is now when we started seeing Microsoft taking a different turn. Because between 2010 to 2016 17 we had a very progressive growth in terms of the number of features that Microsoft was building into .NET and then now getting into 2018, now Microsoft took a different turn and we started seeing an intention of Microsoft now getting into the open source community, which I would say actually it was very well calculated. We started seeing also the move to getting to open source some of their products. We saw for example .NET being open sourced. We saw the Roslyn compiler, which is what is used to now compile the desktop applications and a number of other applications that you’re able to build with Microsoft, for example console applications, and then now getting to see them now having a community driven approach in terms of integrating the features and making the framework more stable. So I would say the global community of developers was able to help Microsoft transition to the open source industry very well.

And also we started seeing the fast move of Microsoft now getting to adapt itself to building cross platform applications. So no longer are they tying themselves to getting to build for Windows only, we started seeing an intention to move into Linux and Mac. So then we had the .NET Core, so .NET Core and majorly .NET Core 3.0, which was geared towards now getting to help developers build cross platform applications and majorly I think the target was more into Linux and then Mac now was able to further be driven down and developers could be able to build stable applications for that platform.

Unfortunately, Windows did not make it to the cross platform area, so developers were very interested in seeing WinForms now being able to be compiled for Mac and Linux. But unfortunately up until now it didn’t happen. But what was interesting is how Microsoft moved into now getting to ship or to reshape .NET by moving now towards having a unified platform for all, having a unified framework for all platforms. So I think in late 2021, 2022, we started now seeing Microsoft introducing what was then called a unified platform, but what now we term as [.NET] MAUI. So [.NET] MAUI mean winning multiplatform multiplatform application user interface. So [.NET] MAUI was now, I would say, the modern .NET now, but for a unified platform where you could be able to now build a now modern application that could run on all platforms, that is Android, iOS and Windows.

So that was kind of a rough overview of what has brought us to where we are right now as developers in .NET. And we’ve also seen like Blazor, for example, coming to the place of getting to help developers who have much experience in C# and .NET to be able to build web applications. So now ASP .NET developers not migrating towards Blazor, so we have seen a huge driving force in terms of Microsoft now pushing itself towards getting to have a unified ecosystem of a framework that can be able to help developers build all kinds of applications for the web, for the mobile and for the desktop.

I would say that’s quite a rough overview of where we’ve come from. And I believe the feature is also very bright. I’m seeing the progress in terms of what Microsoft is doing with .NET and for example, .NET seven and eight. And I think the feature looks great for it.

Jamie

I have to agree 100%.

And you’re absolutely right in that there’s this grand unification. I’m worried about those words, but like they’re unifying all the different strands of .NET, right? They’re doing a lot of stuff to bring it all together. Which is wonderful because at the end of the day it gives us developers and us technologists and the people who run the technology companies greater choice. It allows all of us to say, “you know what? We’d love to.” If you go back, say, ten years, and you have a number of developers who are brilliant at MacOS stuff, and a number of developers who are brilliant at Linux stuff, and a number of developers who are great at Windows stuff, all on the same team, and you could at that point say, “we’d love to be able to get you all working on the same code, but we can’t, because we’re using .NET for this project and maybe QT for this project or whatever,” but now we can just bring everyone together. And I really like that because a team that works together is a team that works well together, I think.

Wilfred

Absolutely.

Jamie

And it’s wonderful.

Wilfred

Yeah. Awesome. That’s great insight, actually. True.

Jamie

That’s how I feel, anyway.

And what I’ve noticed happens with developers is they always leap towards, “we need to be on the bleeding edge and do all of this stuff that’s really exciting with the new stuff.” But there’s absolutely nothing wrong with using slightly more tried and tested and proven technologies. Right? I’ve been bitten in the past by Blazor, .NET [.NET] MAUI, by the first version of Swift, by Docker, and all of these fancy schmancy technologies that are supposed to make life easier, actually end up making life harder, because you have to learn a whole bunch more stuff. Right.

And I actually have an intern, an apprentice at the moment, on the date of recording. I’ve got an apprentice who is building some stuff using both WinForms and WPF. But we’ll talk about WinForms, and I’ve given him sort of the autonomy to choose the method in which he builds the software. I’ve said, “look, if you want to use WinForms because you’re more comfortable with it, we’ll use WinForms. If you want to use .NET [.NET] MAUI, then use [.NET] MAUI. Whatever it is that works for you, I want you to use.” Because there’s this one project that I want him to complete and there’s a bunch of learning exercises, and he went straight for WinForms because he knows it and the knows it well, and he’s very productive with it. And I think we’ve mentioned it a few times, but I don’t think we’ve actually said explicitly, and I’d like to say it, is that WinForms makes you incredibly productive. Because there’s this wonderful feeling of just I’ll literally drag a thing onto my window and there it is, right? There’s my button, there’s my text box, there’s my image.

It’s wonderful. I wonder then, because Bunifu Framework is well, okay, let’s talk about Bunifu Framework. Right. So what is it? Right, because I was about to say, “it’s a thing you can add in,” but let’s talk about what it is, because you all know way more about it than I do.

Wilfred

Yeah, my two cent on what just give a very simple description of what just give some context into it.

Say you’re building, for example, a CRM application. So the first thing that you will do is load up a new project in Visual Studio, for example, you have your wireframe in place, so you’ll just be copying the design now into being able to drag and drop the components into your project. So when you start doing that, the first thing you’ll realize is you’re inheriting some very standard, very raw controls and components. The design itself is rendered by the standard components that are in place in Windows. So the only thing that you will first of all get to see is these are very raw, very basic controls, limited in terms of the feature sets limited in terms of the functionality, limited in terms of how much you can design using them. So the here comes now Bunifu framework, which gives you now the ability to extend what you can be able to see in your designer, to be able to add a number of other feature sets, a number of functionalities, and also, and most importantly, the visual design and experience of your application.

So that being said, Bunifu Framework is a UI centric framework that lets developers build beautiful desktop applications using full featured .NET components. So with that you have, for example, you’re comparing the default button in .NET with the default button in Bunifu Framework, you have different customizability options that are able to are extended from the standard button, which is often very hard to actually come up with. And so we have been able to focus on not just the design aspect of it, but also on the productivity aspect of it. So as you build that application, you’re building something that not only will you feel you’re improving the design, but also the experience of the end user. So with that comes many other controls. For example, the drop down you have, for example, the data grid. The data grid also comes with theming options which are not available in the standard data grid. So it gives you the flexibility of building not just a design centric application, but also a user centric application.

And that in itself just improves on your productivity. It improves on the user’s productivity and experience. And I will tell you, even for the end product, you will be amazed at what you’ve come up with. That’s a true sense on it.

Jamie

Excellent. And like I said, I really like using WinForms just because of how great it is to use. And I think from the sounds of it, because I haven’t had the chance to try it yet. Bunifu framework, it extends that just like, “here’s, a bunch more controls, loads more controls and stuff like you just drag in.” And it feels like that would make let’s say I want to make a Windows application because we’re doing Windows applications. That’s fine. Make a windows application. And I want to create like you said, you use the button. I want to create a button. But most of the buttons in Windows apps are like gray or blue or something like that. Maybe my application needs to look different and be visually exciting. And that’s where I would bring in Bunifu framework. Right?

Wilfred

Yes, exactly. That’s the use case. Actually, that’s like the purpose of, the life calling of Bunifu Framework. In the developer experience, it does more than just the usual components which you just drag and you’re like struggling to find which color will work best, which themes will work best. So all that is given to you, all you just need to think about is how do you want it to look like?

Jamie

Right, okay. Because I have a question in my mind about how that increases my productivity as a developer. And you’ve just answered it. Right. I can literally go, “I’ll bring this control in, and I can do what I want with it.” Right. I can set all sorts of properties and change the way it looks, change the way it feels, change the way it works. Right.

Wilfred

Exactly. Yeah.

Jamie

Excellent. Okay. And you said the I may be inferring rather than implying, so I’m inferring. From what you’ve said there that the key designing feature, or one of the key designing features is to allow the developer to be different, right?

Wilfred

Yes.

Jamie

I’m going to put some words into your mouth. I feel like you can develop an impressive UI almost at the speed of creativity. Right. I ever thought, “oh, I want one of these controls, and I want it to look like this.” Well, guess what? There’s one of those controls, and you can change it. So it looks like this.

Wilfred

Exactly. That’s well put, actually.

Jamie

Thank you very much.


A Request To You All

If you’re enjoying this show, would you mind sharing it with a colleague? Check your podcatcher for a link to show notes, which has an embedded player within it and a transcription and all that stuff, and share that link with them. I’d really appreciate it if you could indeed share the show.

But if you’d like other ways to support it, you could:

I would love it if you would share the show with a friend or colleague or leave a rating or review. The other options are completely up to you, and are not required at all to continue enjoying the show.

Anyway, let’s get back to it.


Jamie

Let’s say I want to add, let’s put let’s put licensing and pricing to one side. So let’s say I have a brand new WinForms application. I’ve done no work on it so far. I’ve just done File>New Project, and I want to bring Bunifu in. Let’s say I’ve already done pricing and licensing. Is it a DLL? Is it a NuGet package? How do I do that?

Wilfred

Yeah, the good thing with Bunifu framework is we have made it extremely simple for you to integrate it into your projects. So we utilize NuGet for that, for version control management. So the only thing that you just do is go to project, you select manage NuGet packages, and then from there, you can be able to install it directly to your project. So from there, once it’s installed, you’ll go back to your form, if it’s your main form, and then in your toolbox, you’re going to see all the components and the controls have been installed already into your toolbox. So you just go into the project and just start building the application from there.

Jamie

I have to say that’s absolutely wonderful. Now, my experience with WinForms components and libraries is limited to a number of years ago, but I do remember working with a bunch of controls and libraries, and it was like, you have to download this DLL. You have to put it in a special path, and then you have to do a whole bunch of configuration. And guess what? We’re releasing a brand new version tomorrow, and it won’t work the exact same way. So you got to put it in a different path and do a whole bunch of rebinds and all that kind of stuff. I am all about developer productivity, and from the sounds of it, I could just go add a NuGet package done. Exactly.

Wilberforce

Yeah.

Jamie

I love that.

Wilberforce

But if I can say something about that previously in 2016, and 17, we used to give out as DLL, and then we got some feedback from the clients. We also saw experience that the developers are going through. Then we realized that the best way to do it is through NuGet. And Wilfred was the one who was helping us transition from DLL to NuGet. So credit to him.

Wilfred

Some time back when I was building applications with Visual Basic, the old Visual Basic. What you used to do is if you want to add a new component, you would go to your console and then register we used to call them the OCX controls. They used to go and register it by the console, and then it be registered as a DLL now into the System32 folder. And then from there, you can be able to now use it. So I can imagine the experience then and now things have really transitioned.

Jamie

Yeah, absolutely. Like I said, I’m all about developer productivity. And what it sounds like you did there is obviously, you listened to the feedback and said, “this isn’t good. Listen, everyone, how do we make this better?” And that, to me, is a sign of a wonderfully put together company, because there are two ways you can respond to that kind of feedback. You can go, “right. Okay. What we’ve done is suboptimal, how do we fix it?” And the other way is, “well, guess what? It’s our way or the highway!”

Wilfred

Get on with it. Yeah.

Jamie

Excellent.

Okay, let’s say we’ve got hold of the NuGet package, I’ve built my application, and then I can just get on with I can focus on what I need to do. I don’t need to focus on setting things up and pulling in DLL files and making sure the licenses are up to any none of that. It’s all handled for me. I love it. Love it.

Okay, exactly. So have you any great success stories from people who’ve used Bunifu framework on their apps? And are there any that you can share? Now I appreciate that if you do have them, but they’re under NDA, you may not be able to share them. And if the are we’ll cut this better.

Wilberforce

Yeah, I think I can take that. Yes, we’ve had success stories from different clients in different places. We’ve had a company in Spain that is developing an antivirus. It’s called BitHidraulyco. So it’s a company that is developing an antivirus software. And the have been using Bunifu tools for a while now, since 2018. And they have gone through different product versions to develop their user interface. But they have consistently used Bunifu tools to create their UI platform. And so far, they are happy about the customer feedback. They are continuing to iterate to different versions using some same tools.

We also have Malware Bytes. They used a product back in 2019 thereabout, and then they have been using it to develop their platform as well. Then there are so many other. Companies who use the product. Some of them have not given us the award, but they are saying yes, it’s good. But those few have said yeah, you can even share experience to anybody who may ask about Bunifu.

Yeah. So I would say in terms of the user growth, so we’ve had about 40,000 developers who have ever tried to use Bunifu. Some of the have paid for it, some of them have used it, then maybe say maybe they’ll come back again sometime in future. So there is growth as well in terms of developers who use Bunifu. And I’ll say from the customer care platform, we do support our customers on live chat. So many of them do come and share their experience about the product and they like it, they like how fast it is or you can drag and drop button or particular control and off you go with the properties and you are done. And sometimes they do compare it with maybe other type of tools. And for the other tools, sometimes they have to install something and the you have to configure it again before you get up and running. But for Bunifu tools, what they appreciate most is the speed at which you can get started quickly.

Yeah, so maybe Wilfred, you may have other customers, but people have shared success stories. But before Wilfred talks, we’ll serve students, many, many students in many universities. We actually do have a plan for students which is low cost and it allows students to do their projects in campus. They can use Bunifu tools to quickly create UIs for their projects and then they pass their exams and then their project exams are in flying colours. So, yeah, I will say those are some of the success stories.

Wilfred

Yeah, true. Maybe to add to that is. We also did some project for game development sometime back in 2019 also. So we had a client who was building sort of a gaming ecosystem. So we came in handy for him and his team and it was able to like the beauty of it is that because we focus on the beauty aspect of it, it ties in well with products such as gaming because gaming in terms of the visual experience, it has to be good. So principles or concepts like Gamification for example, we actually blended it so well with the Bunifu framework. Likewise, we’ve also had teachers who purchase a subscription for their students and they actually use Bunifu framework to be able to teach their students some bit about programming. So we’ve had different use cases that were just amazed us as to how far reaching the product goes in helping improve the lives of developers and even the people that are involved in the development process.

So, yeah, we also had, for example, we had a client who was building a licensing solution and on the desktop client bit of it, they actually used Bunifu framework to build the entirety of the product. So that was a huge success story for us. And we look forward to seeing the larger use cases and other people who have used it in ways that we could not even imagine or even have thought about.

Jamie

Awesome. No, I like that because knowing that lots of people have had success with a project or tool that I’m about to use is a very big important thing. And those are some impressive projects that you were talking about there as well.

Wilfred

Absolutely, yeah.

Wilberforce

And I will add that some of the sectors which Bunifu framework is being used are quite the big sectors. For example, we’ve seen people from manufacturing come to buy the product. We’ve seen domain names of EV vehicles coming to buy the product. Some of them are companies which are based in countries which we couldn’t imagine that somebody would be interested in. Bunifu, for example, a Japanese company would come and buy our product. So you start realizing that, “hey, you’re actually doing something.” So I would say use case has been varied wide range in terms of the sectors. And that’s enough validation that yes, WinForms may not be [as] popular as it used to be, but there are still some lower level programming experiences that it can still support.

Wilfred

It’s really hard to actually let go of the possibilities that still informs holes for developers. So it’s very hard for inasmuch as you are migrating towards a one unified platform that Microsoft is really intentional about gearing towards completing and seeing that it has come to succeed. We still see a lot of engineers who, when it comes to the desktop platform, the always vouch for what WinForms has to offer as compared to getting to build that one product that scales across different platforms. And some of them actually have already built, for example, the website of things, they have built their mobile bits. So what they just need is a supporting product for the desktop, which oftentimes works well for them because they already invested in other technologies. So they only need to just build a supporting feature for the desktop which still works for them. Okay. It always depends with the use case and what it is you really want to focus on when you’re building, for example, desktop applications. And that’s why for us, we have still seen a huge margin of developers still willing to continue with WinForms despite the progress that .NET is moving to.

Jamie

Oh, absolutely. I feel like there’s this technology wave, right? And if you imagine the shape that a wave makes, that sort of swooping curling off to the right hand side wave is coming up and then goes back down. Right.

I feel like a lot of people like to a lot of developers like to be at the very top of that wave. I mean, the people who are like, “we’re using the bleeding edge stuff and it breaks a lot, but we could build it and it looks cool and it’s brilliant.” Whereas actually the day to day work of shipping a feature and getting something out to someone is usually at the back end of that wave where you’re getting work done and you’re focusing on what the customer needs. And my opinion is if a client, if a customer needs an application that will only run on Windows and they need it tomorrow, well, I’m not going to sit here and try and figure out how to get a node or NPM based application on the web. I’m not going to worry about the complexities involved with .NET MAUI. I’m not going to worry about cross-compilation. I’m going to boot up my Windows machine, fire up Visual Studio, go file new WinForms project, because I know for certain that will work. But I also know that I will be incredibly productive in building that system and getting that out to them.

And I think that as much as the industry is running and sprinting towards “cross platform all the things and do all of this stuff,” the majority of the work that is done day to day is still on Windows using WinForms applications.

Wilfred

Exactly.

Jamie

And I feel like we need to accept that as .NET developers, we have this rich history of being a Windows only platform. Now, I’m the worst for this because I’m sitting here talking to you. You all using my Mac on an M2 chip that I can do for .NET development with this afternoon. But that is because it is a small form factor machine that I could put in front of me and do the work with. But I’m also not doing anything that requires Windows.

Now, when I’m working with, I’ve got a client who has a Windows application and they’re like, we need you to make some changes. Well, guess what? I’m not going to push the for. Let’s move it over to .NET MAUI or Avalonia or any of those or put it on the web because it doesn’t make sense for that. I think a lot of developers, they don’t focus on what makes sense for the customer, right? They just do, well, I want to build an app that can run on my Nintendo Switch. So I will find a client who will pay me to build. No, what you’ve got to do, you’ve got to face the reality and say, “look, if the client is saying we got to be on Windows forms, then you go start building with Windows forms, and you go get Bunifu Framework.” That’s what you do.

Wilberforce

Absolutely right. And talking about waves, I think the current wave is the AI wave, the artificial intelligence wave, and it’s really threatening a lot of developers and developer companies. And maybe I would love to pick your brain on that at some point during the during the talk. Maybe. What do you think about that? You don’t have to answer it now, but maybe later. On. I’d love to know your thoughts.

Jamie

Well, I mean, I can share my thoughts now if you like.

Wilberforce

Sure. If you’re okay with it.

Jamie

Yeah. So my thoughts of having used a bunch of the AI tools, they are very impressive, but the can only generate stuff that existed in some other form previously. They can mix and match things, but most of, like let’s use ChatGPT as an example. You can ask ChatGPT to write you some code, but most of the code that I’ve asked it to write for me has either been just wrong, like it won’t compile because it’s guessed at stuff, or it’s gone out to the web, found a library that is in a different language and tried to rewrite it.

So my friend James did some stuff where this thing exists in Python. “Hey, ChatGPT, how do I make this work with .NET?” And it looked like what it did was it said, well, if there was a .NET version, it would work like this. There isn’t a .NET version, but if you put this code in, it assumes that there is a .NET version and it will work, which, yeah, that’s great, but it’s not actually going to solve any problems. Right. And I feel like just like when the calculator came out in 1960, our lives are going to change, but we’ll adapt and we’ll carry on. Right. The calculator removed the toil of actually performing the calculation, but it didn’t remove the requirement of knowing what the calculation was. Right.

Working out a percentage of something, you still need to know how to do that. Rather than just typing it into the calculator and have it do it for you, you still need to know how addition works to do addition, you can have the calculator do the hard work of actually adding the numbers together, but you need to know how it works.

And I think that’s the difference, that’s what will happen. And I think it’s a great tool for junior developers and people who are right at the beginning of their journey because it allows them to take a moment and say, I don’t know how to do this. “Hey, ChatGPT like I would with Google. How do I do this?” And it will tell the person how to do it, but in a more communicative style, in a more conversational style and maybe one or two links. But it won’t actually solve the problem of you can’t go to at least you can’t at the time of recording, you can’t say to ChatGPT, “hey, build me an app that does x-y-z-a-b-c,” and it just pop the app out at the other end. That’s not going to happen. I think that it’s going to reduce a lot of toil in our industry. So a lot of the stuff revolving around writing the same kind of boilerplate code all the time, that will help to reduce that because you can say, “hey ChatGPT, I’m about to start a new project where I’m going to be using .NET framework and I want to put some logging in there. What’s the logging code I need?” And it’ll go splat. There’s the code. But all it’s doing at the end of the day is it’s looking in its knowledge base at what logging core looks like. And it’s got the knowledge base by going to Google and finding logging code on Google.

So all it is is it’s two, three steps away from doing the Google search for you.

Wilberforce

That’s true. Thank you. Thank you for sharing your opinion.

Wilfred

Absolutely.

It’s actually like how, for example, things, for example, like GitHub CoPilot pair programming and being able to utilize AI to be able to simplify your experience as a developer. So I think the next frontier of developers probably will be more of developers who are able to understand how AI works and how to utilize AI in their tooling infrastructure and building applications. So it’s going to be more of not sort of like a replacement, but more of us just upscaling ourselves to be able to understand how AI works and how to utilize AI tooling in our build process. So it’s not going to be a replacement as many people would have expected or envisioned, but it’s more of how we can be able to work hand in hand with AI. So it won’t come to replace engineers because the still allow you can be able to offer us engineers in terms of our insights and being able to personalize the product that you’re building. But AI cannot do that for us. The still are a huge task for us to be able to build products that are going to be user focused and at least be able to understand that our role is still very central in terms of the progress that you are making as developers and as a developer community.

Jamie

100% agree? Absolutely.

Wilfred

Awesome.

Jamie

Excellent. So I realize I’m dropping this question on you and I’m not holding you to this and no one in the audience is going to hold you to this, but what does the future look like for Bunifu framework? Like is it more controls and more stuff or is it, “hey, we’re going to branch out and maybe look at other technologies?” What does that look like?

Wilfred

Yeah, so we’ve actually been having some round-up of meetings of late and we’ve been discussing around the same same issue. I wouldn’t call it an issue. I think it’s more of just where we are heading to even as an industry.

And actually one of the areas that has really been key to us and our conversations is low-code, no-code platforms. And we have seen in terms of what, for example, AI can be able to achieve right now is you can actually build a full featured application just with AI. It might be very boilerplate in nature, but you can be able to continue with customizing the application. For example, using Visual Studio. We have had a number of requests along that line of building a low-code, no-code platform and I would say that that’s sort of like the next approach that we’re going to be having.

So we’ve already built the product, the product is running well, we have a number of clients who are still being able to utilize the product well and it makes a lot of sense to continue sustaining that. But then we are seeing a huge gap in terms of having, for example, IT professionals who have some few coding skills to be able to create custom applications. In the same sense we have, for example, business users who don’t have any prior knowledge in terms of how coding works. So we still are seeing a lot of companies that want to downscale their teams. And part of the priority is being able to have a platform that they might actually use to be able to maintain their products or even build a product similar to what they have, but being able to maintain it using a low-code no-code platform. So it appears that’s what the industry is looking for is looking towards and we actually aligning ourselves towards that strategy.

Another area is on Blazor and I think Blazor has been tried and tested. We have seen what the industry is able to do with it and I’ve also seen a lot of intention with Microsoft being able to continue to grow the product. And Blazor in itself is actually a huge opportunity for newbie developers. So part of the interest also is for us to actually get into the web. We know for sure that there are a number of UI frameworks that are already doing quite well, but we haven’t seen a lot in terms of what Blazor by itself can be able to offer. So part of our strategy will also be moving towards the web and the low-code might not be necessarily focused on the desktop, but also will be more of the desktop and the web. And then in future I’m going to be looking into Android and iOS so it’s more inclined into both the web and low-code, no-code platform. And we already have some few solutions that you’re working on. We are going to be very soon you’re going to be releasing it to developers and it might actually interest a number. So we look forward to seeing the reception that we’re going to be having with those two products.

Wilberforce

Yeah, and just to thank you Wilfred, for that elaborate way forward, just to say that even as we think of branching out to other technologies, we will still remain a developer tools company. And for Bunifu Framework, we want to still maintain the code because we know that there are many people will be relying on that platform. Even though we may have gone to other products, we will still be maintaining that code base so that we allow for people who still want to come back to their legacy products to be able to still build functional software.

And to talk about maybe the way forward on what Wilfred has said on low-code. I recall a time when we used to use command line CLI a lot in computer science. I’m not that old, but I recall a time when that was the main way of interacting with computers. And so with time now the GUI came whereby you can interact with the graphical user interface, the icons you can easily relate with and all that. And that brought in millions of people who are locked out when they’re using the CLI interface at that time or to using computers. And so the same thing will happen for developers. There are millions of people who have business use cases, but they cannot code. But with time, as the world is evolving, as tech is changing and becoming better, we’re going to see millions of people being able to use low-code platforms to develop their own application, similar to what Access used to do back in the day, although Access was still a bit complex. But you will see much more intuitive low-code platforms that even somebody who is not a developer can still make something that’s functional. And so our idea is to get into that space also and provide many people with that opportunity to be able to use intuitive low-code platform to create business solutions or even personal solutions which they think can help improve their lives or productivity.

Jamie

I like it. You’ve made a really good point there Wilberforce, about how technology allows us to bring core people to the discussion. Right? It allows people who you both said it, who don’t have that experience with writing code and building applications. They can actually ask a low-code, no-code system by either dragging and dropping blocks around or asking some kind of AI system or something, “help me to build this thing because I want to be able to reduce my toil make my days easier.” I think you’re absolutely right. I think the coming wave of technology will help more with that.

And I think your analogy there of moving from the command line to moving to a graphic user interface is a perfect one for what we’re about to walk into as a society, because I think that’s what it is. It was a great equalizer. The problem with command line interfaces is, well, first off, you’ve got to use a keyboard. And keyboards are not designed for humans. Right? They’re not. They’re designed to slow us down, our keyboards. Secondly, and this may sound silly, I don’t mean it to you, but you’ve got to be able to spell. And for people perhaps with Dyslexia or people who don’t know how to spell or people who don’t know how to read, they can’t use a computer. But now that we’ve got a graphic user interface, we’ve got buttons that help to do things. I know people who can’t read and write, but can browse and buy things online because they know what they’re doing right? And that made their life easier.

So I say, yeah, bring it on.

Wilfred

Absolutely. And in addition to that, we definitely are aware of progress to .NET seven and eight. So we are also working on that. We actually currently support .NET six. We’ve had some few issues with it, but we will be testing with .NET seven and eight and it appears that it’s quite stable actually at the moment. So part of the progress will also be moving towards the later releases of .NET.

Jamie

Amazing. Awesome. No, I really like that.

So where is the best place for people somebody’s listening to this? They’ve gone, “You know what, I’m all in on Bunifu framework. Where do I go to find out? How do I learn more about it? How do I read the documentation? How do I get myself a license? What’s the process?”

Wilberforce

So it’s simple really. We do have an online website that somebody can go and get our product. It’s called https://bunifuframework.com/. It can be accessed from anywhere in the world. And once you are there, we first give you a chance to try for 14 days for free. We don’t need a credit card, we just need your email and the you’re able to create an account. And then once you’ve done that, then you’ll receive some links that will allow you to now be able to get a license, a free license for 14 days, which now you will activate by going through the docs section. So we have a docs section and documentation section which is https://docs.bunifuframework.com/. It will give you a step by step guide on how to install the NuGet package. Then after installation, you can now drag your fast control and play around with different controls as well.

And then we do have a YouTube channel for the product. Just go to YouTube type “Bunifu framework.” You’ll be able to see YouTube videos that can help you see how the product works and help you get started quickly.

And then we also give you support on the website in case you are stuck. Maybe you are trying to get started and there’s something which is bothering you and you need help. We also available on our website. You can just chat and then one of our agents will get in touch with you and help you. And sometimes for someone who has bought the product, we even escalate the support and even provide remote assistance via Team Viewer or even your preferred remote platform that you want to use. We log in there and help you to solve their issue.

Yeah, so that’s how you can get started.

Jamie

Amazing. Well gentlemen, I want to thank you very much for spending your afternoon talking with me about this. I’ve learned so much more about Bunifu framework, and I’ve really appreciated your opinions on where we’re heading in technology, and I feel like all three of us are aligned. So I like that.

Wilberforce

Yeah. Thank you, Jamie. And even before you wrap up, I wanted to know your thoughts about Blazor. What do you think about Blazor in the next one year or two? Do you see it as one of the dominant platforms that would be pushed by Microsoft?

Jamie

Personally, I think there’s a lot of growth potential in Blazor. There’s a lot of stuff that it does that is very exciting. I remember when it first came out and I was like, “but why?” Right? I couldn’t understand the why behind it. Why do we want to put a .NET app inside the web browser? I don’t get it. And the I realized that, “wait, that simplifies creating UIs for stuff because it’s all happening inside the browser. So if you know someone who knows HTML and CSS, you’ve got yourself a GUI application right there.” So that kind of helps.

And obviously, if you are a .NET, like, if you are a developer like me, who spent a lot of time working on server side stuff and never really had a chance to learn and use web-based technologies, it becomes easier because I can apply my knowledge and put it into the browser. And I think it’s going to be another case of making things easier for developers moving forward. Have they found the killer app yet? I’m not sure. There’s been a lot of really interesting stuff happen with Blazor, but I don’t think, and I may be wrong, I haven’t really been following a lot of Blazor development in the last year. I don’t think they’ve had that one app that everybody goes, “wow, I wish I’d have created that in Blazor.” I don’t think it’s happened yet.

But I think maybe in the next year, two years, someone somewhere will come up with one app that makes everyone go, I get it now. This is why we have Blazor, this is why we’re putting everything inside the browser. I get it. I think that will happen. But again, like I talked about earlier on, a lot of developers running towards, “wow, there’s this new technology to try out. They don’t really have a use case for it yet.”

Wilberforce

Right, yeah. Thank you. Thank you so much for that feedback. It is an area that you’re looking into as well, to see if there is Viability there. But we see what you’ve just said. There is that one thing which is lacking, but once it’s out there, then it might explode.

So thank you so much again for your time. I really appreciate I appreciate your patience even setting up this podcast. It’s been almost two months since we first spoke about it, and today is the day that has come to pass. So I really appreciate your patience along the way. We’ve had back and forth. You were in the US. I hope your stay there was fantastic. I came back again, back and forth, but today we made it and I really appreciate it for your time and for everything. Thank you so much.

Jamie

Not a problem, my friend, not a problem. All are welcome on the .NET Core podcast. Everyone should get a chance to be on it. Excellent. Yeah, like I said earlier, thank you very much for your time, gentlemen. I really appreciate it. It’s been a wonderful chat and I can’t wait for everyone to hear it because obviously we’re recording this in the present for us, but in the past for the listeners. So there you go.

Wilberforce

Yeah, absolutely.

Wilfred

Thanks so much.

Wrapping Up

That was my interview with Wilberforce and Wilfred of Bunifu Framework. Be sure to check out the show notes for a bunch of links to some of the stuff that we covered, and full transcription of the interview. The show notes, as always, can be found at dotnetcore.show, and there will be a link directly to them in your podcatcher.

And don’t forget to spread the word, leave a rating or review on your podcatcher of choice - head over to dotnetcore.show/review for ways to do that - reach out via out contact page, and to come back next time for more .NET goodness.

I will see you again real soon. See you later folks.

Follow the show

You can find the show on any of these places