4 months without coding…

I know, that I seemed to be lost. There was a lot to process lately.
First of all, I’m planning to immigrate from that totalitarian state called Russia. I’ve found a way to Europe and soon I will go there. I hope once and for good.
Second, there was a lot of work on my main job, where I develop successful project for Android (users).
I hope that I will find some time to work on my dream-project (that is Airely) in coming weeks…

Edit: Of course, I’ve forgot to mention that I’ve worked in a gym, lost about 5 kg, improved some health.

P.S.: There will be a hard time from September. I will need to go to a language courses and work remotely, there will be a very little spare time for me for about 9 months. It will be very hard, but I must do it for my future children.

Events and Listeners

What am I working on right now? The Listeners subsystem, which helps programs to be aware of some changes in the environment on a device. Network connection and disconnection, or new windows appearance and change of focus among them (useful for the desktop program).
The base of the system is done. After implementing of listeners I will be able to implement “desktop” app, that will implement taskbar with all the task buttons and “Start” button.

The blog and the work

I’m excited. Excited by my progress on Airely and by the Rust programming language that gave me this long awaited opportunity to make my Airely to become a reality.
All my spare time I’m thinking about some features or implementation of them. And there is so much of I could write about but I choose not to because I use that time to work on Airely.
Just have in mind – if I am not writing new posts to this blog doesn’t mean that Airely is dead. It can’t be true, as I have all that I need to continue working on it.

Positioning and purpose

What the Airely will look like? And what could we do in (with) it?

The main purpose of Airely will be a full desktop OS with graphical user interface. Yes, like Microsoft Windows. After some particular step in development I will slowly but intentionaly move all my tasks to Airely.

Could it serve as some sort of server OS? Ofcource!
The Rust language is intensively developed and I am planning to incorporate all the great features of it and cool libraries like Hyper.
It will be possible to develop web applications right from the box.

But, the main purpose is a desktop.

Technologies

First of all, I’m not starting from bootloader and switching to other modes like Protected or Long. I’m not writing code for memory pages and swap. If I start from that level my Airely will loose years.

I’m building Airely on top of existing technologies. For now it is working like a single process in some other OS. Thanks to Rust, it can be compiled for Windows, MacOS and Linux.

The other technologies that I’m using for now are: SDL2 and Lua.
The later will become main language for developing software for Airely.

In the end I will conclude that my OS will be “high level” OS like Android that is running on top of Linux. If you remember, there is Boot To Gecko, that is working even as a launcher for Android, and we name it a Firefox OS.

Introduction

Hi. My name is Roman (aka Revertron), and I’m developing an OS in Rust. But don’t laugh right now, let me explain.
I’m not that naive like more or less all of starting software developers in high schools. For starters, I’m approaching 36 and have about 12 years of experience in software development. I’ve worked on UI solutions, client-server code and so many other things that I can’t possibly name them all.

So why an operating system you ask?

I’ll tell you why. Most of the successful OSes we know were developed from a reasonable necessity. I believe that current OSes are going away from what a true OS should be.

Then what is an OS done right?

  • First off it has to be easy to use for as many people as possible. As easy to use as a pencil or a pen. As we move to a world populated by devices we can hardly imagine our lives without a PC at home anymore. But there are many people that aren’t familiar with all those modern interfaces and concepts.
  • Second, it must be secure. For those unfamiliar with computer science the Operating System should unobtrusively make them aware of security concepts, rights and permissions in every aspect of handling various types of information, which may involve actual work or entertainment.
  • Third it must serve as a modern platform for software development. It should be easy and entertaining to start. It has to allow automation and customization without compromising security, of course.
  • Fourth, the security model of the OS must protect not only the system itself, but with highest priority all of the user’s data. You sure have heard of ransomware that encrypts user files and extorts money to decrypt them.

To sum it up: a necessity has emerged, and we need an OS that meets its challenges. We can do it without backward compatibility and silly attempts to patch 30 year old code of current OSes.