How do you describe something like Ultibo so that people can decide if it is what they are looking for or not?
At various times, and depending on the audience, we use terms like bare metal, unikernel, embedded platform and so on but none of them really seem to capture both the purpose and the possibilities of the Ultibo project. There are a number of purposes that drive what we are doing but it can be easy to miss the whole story if you just look at any one element. If you focus on just the technical details of creating programs without an operating systems and the necessities of drivers, devices and boards then you might not notice that there is a learning aspect to the project as well.
The world needs more good programmers to drive the development of future systems and applications, sadly there has been a catastrophic failure of industry, schools and universities to educate new generations of developers, many have no concept of how a pixel appears on screen or a packet crosses the internet, let alone the ability to understand the intricacies of modern computing. We don’t claim that Ultibo is the complete solution but without tools that make it possible to concentrate on learning instead of being swamped by the idiosyncrasies of an operating system then the situation is not likely to change.
On the other hand if you see Ultibo only as a teaching tool or a way to learn about the low level functionality of a computer then you miss the fact that Ultibo is a powerful platform which can be used for serious development and creating real products, without the unnecessary overhead and complexity of a full desktop operating system.
It’s a simple question with a multitude of answers, we don’t want to make Ultibo sound too complex or unapproachable so that people think it is beyond their knowledge, at the same time if we make it appear too simple then those who have a definite purpose in mind might think it is not advanced enough for their needs. In truth it should be possible to accommodate both ends of the spectrum, we still don’t know the best way to describe it but you can be sure we’ll continue thinking.
There’s been a lot of discussion lately about support for some of the major items still missing from Ultibo, while everyone has their own point of view about what is most important not everything can be done at once so we’ve decided to run a poll for about 3 months to seek feedback on what you would like to see most.
This is not a survey to decide what features will be included, everything on the list is planned to be supported, it’s simply about you telling us which one you think is most important in order to guide the roadmap for future development.
You only get one vote so think carefully about your choice, we think the list covers the really big ticket items but if you have something else that is bigger feel free to let us know.
You can find the Ultibo Feature Survey on the forum right now, happy voting!
You might have guessed that we have big plans for Ultibo and what it can become. Our goal is to create a platform where the only limit is your imagination, where the technology doesn’t stand in your way or force you to compromise your ideas.
Of course we realise (and we hope you do too) that this doesn’t happen overnight, creating something truly different takes time, effort and a fairly large serve of determination.
A good example of this is some recent fine tuning we’ve been doing on the critical file system and network subsystems in Ultibo, it might sound rather glamorous and even exciting but in reality it amounts to hours and hours of looking at packet captures and debug logs just to improve performance by a few percent or implement the correct behaviour in response to unusual cases.
It’s been a while since our last commit and those with a shorter attention span may have wondered if we’d simply chucked it in but the truth is good things take a little while to get right.
The same applies to your projects, some of you have ambitious goals, some are tinkering just for fun and others are using Ultibo for learning. Whatever our goal we are all learning every day and it is the simple act of taking each step towards a goal that helps us learn how to take the next one.
Some days will be exciting, others will be frustrating and occasionally it might seem like the goal is just beyond your reach. If you make learning a natural part of everything you do then no goal will ever be too big.
An ancient proverb says that a journey of a thousand miles begins with a single step, sometimes there doesn’t seem to be a map of how to reach our destination but if we simply put one foot in front of the other then we’ll get there in the end.
You could try to move both feet at once but you’d probably just fall over.
Today is exactly one year since we announced the release of Ultibo core and while there is still a bit of work to do we’ve actually come a long way in a short time. Rather than recap our achievements over the past 12 months we started to think about all the people we’ve met along the way, a few of them have come and gone but many have stuck around.
It shouldn’t really be a surprise that Ultibo has attracted interest from a very broad range of people, some old(er), some young(ish) and quite a few in between. There’s been some who are just starting out and others who have seen it all before, one or two who tell us they’ve been waiting years for something like this to come along and even a couple who may have been expecting something rather different from the reality.
We’ve seen a few entrepreneurs, hardware vendors and component suppliers appear in a flurry of excitement at the potential for what they could do with Ultibo, and then slip away quietly when faced with the reality that even open source costs money to develop.
There’s also an interesting, and somewhat surprising, group of people who apparently could either recreate what we’ve done in little more than a weekend or did exactly that 20 years ago but have decided not to contribute anything right now because we need the experience of doing it ourselves.
So far we’ve heard very little from the Raspberry Pi foundation, but they haven’t heard much from us either. Maybe the recent announcement of a new Linux distribution for the PC signals a change of direction, hopefully it doesn’t become a loss of focus.
A project like Ultibo is all about people and as well as a collection of colorful characters we’ve also found a great bunch of passionate people who believe in what we’re doing. We’re pretty sure the second year will be as eventful as the first and we really don’t have far to go, just around the corner and down the road a bit.
We hope you’ll stick around and enjoy the journey with us.
Those of you with a sharp eye will have noticed that it is only about 6 weeks since we released the last installer update so it is a little surprising to have another one out so soon.
We’ve been working on getting C library support added to Ultibo core for a little while now and as we reached the end of that process it became clear that some fundamental changes were needed to the setup of Free Pascal and the way it compiles Ultibo applications so there was no choice but to build a new installer to include those changes.
Because of the unexpected timing of this release there aren’t as many new features as sometimes but the support for libraries compiled in other languages such as C is not only a very important feature but paves the way for a whole lot more to come. To show off the new support we’ve included an Ultibo specific build of the SQLite database library so you can include SQL DB support in your bare metal applications and we’ve also provided a version of the highly popular Freetype2 library which allows rendering of a variety of font formats including True Type.
Now you might have read the previous paragraph and thought what’s the big deal, doesn’t everything support SQL and True Type fonts these days? If you did, you might have missed the fact that Ultibo doesn’t use any operating system, no Windows, no Mac and absolutely definitely no Linux, just pure pascal code from top to bottom. Now if you don’t think that’s pretty cool then maybe you’re in the wrong place.
As always the latest installer is available from the download page, get your copy now and try it out. For those who might prefer to build their own version for Windows or even for Linux the wiki instructions have also been updated to include the changes made to support libraries.