Monday, November 12, 2012

Sources released and more news!

Yesterday, we finally released Minibloq's full source code in our Develpoment page (please go to the last section to get it, along with full compilation instructions). We would have preferred do it before, but the code is not so nice in our opinion. We will take this opportunity to talk about our plans and the project status.

Experience with Minibloq

Although Minibloq is in use by a lot of people, it's still something more like an experiment. We are happy to know that a lot of users are children. Minibloq has some unique features specially designed to help children and beginners to reduce the learning curve. Among these are:
  • Contextual block pickers, which only shows to the user the blocks that can fit as parameters for other blocks.
  • Real time error checking.
  • Automatic variable name management (which also works in real time). 
  • And for the advanced users, another useful feature is the real time code generator.
By other way, we are really happy with the community and the contributions from users, such as the translations to 14 languages (some of them still partial translations) and the contributed documentation and examples.

The experiment

So, why do we say that it's an experiment? Well, the mentioned features has proved to work nicely, but Minibloq still lacks a lot of really important things, such as:

  • User blocks, equivalent to functions and procedures.
  • More datatypes.
  • Multihardware subsystem, where the users can easily add their own hardware to the backend.
  • Plug-in system to expand the software itself.
  • User interface features, such as UnDo/ReDo, or multi block selection.
And there are more desirable things to add to the software which means that it still needs heavy development. We thought that we could add some of these features for the next version (v0.82), but after taking some time to design and to explore possibilites, and to analyze the project deeeper, we arrived to the conclusion that we need to make some things from zero. As that's a lot of work, we decided to see other ways of doing things, in easier ways, to reach the goals sooner and better. So we will make major changes in the whole thing. We are studying to move from wxWidgets. It's a really great library, but we think it's time to migrate to other technologies (more on this soon...)

The released sources and the IDE

Now the sources are published. We always sent them to anyone who has requested the sources, but now you can download them with just one click. If you take a look to the last section of our Development page (please go to the last section there) you will alfo find the instructions to compile both under Windows(R) and under GNU/Linux. Finally, we want to say that we worked a lot to publish an all-in-one portable Code::Blocks IDE for Windows(R), with precompiled wxWidgets included (among other things, like the Irrlich open source game engine):

Multiplo

As many of you know, we finished a successful Kickstarter campaign for our new open source robot building system called Multiplo. We are also working on the integration with new hardware related to Multiplo and want to make some improvements specifically designed to improve the user experience when working with robots. But of course, all this new stuff will take time. We are now working on the rewards belonging to this campaign.

The forum and the website

As we said in a post long time ago, we were working on a new website. This is not ready yet and also will take time. Among other things, there will be an improved forum. We will also work to keep spam controlled, which is nearly impossible in the current forum. Some time ago we started to receive an increasing number of spam posts, between 50 and 100 per day. The rate between legitimate posts and spam messages was probably nearly 1 to 300. And since Minibloq is now better documented, and since we did not received much questions via the forum, we decided to close the threads in the current forum. We are sorry for that, but we were not able any more to spend that big quantity of time moderating the forum. We hope to find a better solution in the future.

That said, we want to let you know that we are still here, working hard on the project but making big changes, which we hope will make it much better. But it will take some time.

Thanks!
Julián

3 comments:

  1. Hi,

    Great piece of work. This was just what I was looking for. I'm currently working on a project that would allow my son of 9 years old to program a microcontroller.

    However I found that adding my own board and more importantly my own blocks, was impossible without recompiling minibloq. I figured the best way to solve this was to change the code a little bit so boards and blocks can be added without recompiling minibloq.

    I did this by using make. I scan the targets directory for subdirectories containing a main.board file. When found I add these boards to the combobox. I also added makefiles to each of the board directories that are used to compile and program. There are some more changes I made that I am happy to share. Unfortunately, I could not find an email address that allows me to reach you. Please drop me a note so I can give you my code changes, makefiles and changes to the targets directories

    Regards, Jeroen Benschop

    ReplyDelete
  2. Hi Jeroen!
    Thanks! Please login into the forum (http://multiplo.org/participate/talk/)and there I can send to you my personal email. You can also find me at Twitter (twitter.com/juliandasilvag). I will happy post about your work.
    Best regards,
    Julián

    ReplyDelete