<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-1734197245279673920</id><updated>2024-10-05T03:59:00.641+02:00</updated><title type='text'>Benoît&#39;s Blog</title><subtitle type='html'>Yet, another blog...</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://bsauts-en.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://bsauts-en.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>13</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1734197245279673920.post-4356259744009726129</id><published>2011-09-04T14:59:00.002+02:00</published><updated>2011-09-04T15:00:57.625+02:00</updated><title type='text'>Simple Singleton explanation</title><content type='html'>Hi there people,&lt;br /&gt;
&lt;br /&gt;
I just spent one day trying to figure out why my C++ destruction sequence was creating a resource leak... This morning I noticed it came from one of my Singleton, the one behaving as my database manager.&lt;br /&gt;
&lt;br /&gt;
So people, please be careful when using the Singleton Pattern, esp. when you access resources such as connections, or files.&lt;br /&gt;
&lt;br /&gt;
Here is the thing:&lt;br /&gt;
&lt;br /&gt;
In most cases, you can create a static class member pointing to the instance of your Singleton. This way is really easy to use but generates leak because the destructor is not clearly called. In fact, the memory de-allocation will be done by the OS once you exit your application. Here is the usual code.&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;brush: cpp&quot;&gt;// singleton.h
class Singleton
{
public:
    static Singleton* getInstance();
    // Other functions if needed
private:
    Singleton();
    ~Singleton();
    static Singleton* _singletonInstance;
};

// singleton.cpp
#include &quot;singleton.h&quot;

Singleton *Singleton::_singletonInstance = NULL;

Singleton*
Singleton::getInstance()
{
    if(!_singletonInstance){
        _singletonInstance = new Singleton();
    }
    return _singletonInstance;
}

Singleton::Singleton()
{
    // Do what you have to do
}

Singleton::~Singleton()
{
    // Do what you have to do
}
&lt;/pre&gt;&lt;br /&gt;
Note: you can see I&#39;m using the lazy initialization to create the instance of my Singleton. &lt;br /&gt;
&lt;br /&gt;
Anyway, this is a very easy and convenient way to have a global and unique instance... Of course, this assume that you do not really need to care about your singleton anymore.&lt;br /&gt;
&lt;br /&gt;
However, if you really need the destructor to be called (e.g. to close a stream) then, it&#39;s better to have a simple static variable (no need to check its existence either, it will be created once and for all at the beginning of the application). In this case you can be sure that the destructor will be called. Here is the code:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;brush: cpp&quot;&gt;// singleton.h
class Singleton
{
public:
    static Singleton* getInstance();
    // Other functions if needed
private:
    Singleton();
    ~Singleton();
    // No static class member here !
};

// singleton.cpp
#include &quot;singleton.h&quot;

Singleton*
Singleton::getInstance()
{
    static Singleton _singletonInstance;
    return &amp;_singletonInstance;
}

Singleton::Singleton()
{
    // Do what you have to do
}

Singleton::~Singleton()
{
    // Do what you have to do
}
&lt;/pre&gt;&lt;br /&gt;
Of course, you can also do something like this if you want:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;brush: cpp&quot;&gt;Singleton*
Singleton::getInstance()
{
    Singleton* pSingleton = NULL
    static Singleton _singletonInstance;
    pSingleton = &amp;_singletonInstance
    return pSingleton;
}
&lt;/pre&gt;&lt;br /&gt;
Anyhow, this second way is much better in the case of a destruction sequence which needs to be clear. In fact, this solved my memory leak problem since with this second version of the Singleton, my destructor was correctly called and the connection to the database was correctly closed.&lt;br /&gt;
&lt;br /&gt;
For your interest, this 2nd case is also called the Meyers&#39; implementation of the Singleton, whereas the 1st one is the GoF implementation.&lt;br /&gt;
&lt;br /&gt;
I hope it can be useful for some of you.</content><link rel='replies' type='application/atom+xml' href='http://bsauts-en.blogspot.com/feeds/4356259744009726129/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bsauts-en.blogspot.com/2011/09/singleton-explanation.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/4356259744009726129'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/4356259744009726129'/><link rel='alternate' type='text/html' href='http://bsauts-en.blogspot.com/2011/09/singleton-explanation.html' title='Simple Singleton explanation'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1734197245279673920.post-4406368435210667681</id><published>2011-09-03T16:21:00.007+02:00</published><updated>2011-09-07T20:56:21.915+02:00</updated><title type='text'>ListModel in C++ exposed to QML</title><content type='html'>Hi there people,&lt;br /&gt;
&lt;br /&gt;
I have been working a lot lately on my master thesis and I&#39;m currently developing the prototype of my system. It&#39;s getting bigger and bigger, mixing Qt/C++ and QML/Javascript. So far, it&#39;s working like a charm.&lt;br /&gt;
&lt;br /&gt;
One interesting behavior of my system is how my system is handling data. Indeed, I needed QML &lt;a href=&quot;http://doc.qt.nokia.com/4.7-snapshot/qml-listmodel.html&quot;&gt;ListModels&lt;/a&gt; for my QML UI but I also needed some persistence... So of course I created a database... but since I need to access the database from the C++ side, I couldn&#39;t really use the &lt;a href=&quot;http://doc.qt.nokia.com/4.7-snapshot/qdeclarativeglobalobject.html&quot;&gt;Offline Storage&lt;/a&gt; capability of QML since the database generated in this case is randomly named... This would have been quite time wasting to try to access it... So, instead, I create my database with a database manager class written in C++. This database is a simple SQLite database.&lt;br /&gt;
&lt;br /&gt;
At start up, I create several C++ ListModels which are populated from the database and that I link to the instance of the QMLApplicationViewer, this way I can access their data from my QML ListViews and GridViews. The C++ ListModel class that I use, is taken directly from &lt;a href=&quot;http://cdumez.blogspot.com/2010/11/how-to-use-c-list-model-in-qml.html&quot;&gt;here&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
I owe Chris a big big thank for providing this implementation of a ListModel and for giving an example showing how to use the stuff. So Chris, if you read this blog entry, THANKS A LOT!!! :)&lt;br /&gt;
&lt;br /&gt;
I will not explain how this works, Chris is doing that quite well on his own. Just check the given link. But, here comes the why of this blog entry. The implementation provided by Chris is somehow limited. In fact some interesting functionality which are provided in a normal QML ListModel such as &lt;i&gt;count&lt;/i&gt; or &lt;i&gt;get()&lt;/i&gt; are missing. I guess he let that task for us, or maybe he just didn&#39;t think someone would need it.&lt;br /&gt;
&lt;br /&gt;
In my case, I needed to split one of these ListModel in 3 different sub models... I tried to use the &lt;a href=&quot;http://doc.qt.nokia.com/latest/qsortfilterproxymodel.html&quot;&gt;QSortFilterProxyModel&lt;/a&gt; class but this didn&#39;t work... So I came up with another way to do it.&lt;br /&gt;
&lt;br /&gt;
As you might all know (or might know soon by checking this &lt;a href=&quot;http://doc.qt.nokia.com/4.7-snapshot/qtbinding.html&quot;&gt;link&lt;/a&gt;), when you create a class which is meant to be exposed to QML, you can provide functions which can be called from QML by giving the &lt;b&gt;Q_INVOKABLE&lt;/b&gt; flag and QVariant can be understood by QML/Javascript. Also you can provide some variables which can be read from QML by creating a &lt;b&gt;Q_PROPERTY&lt;/b&gt;. For the case of my exposed ListModel, I needed the &lt;i&gt;count&lt;/i&gt; value and the &lt;i&gt;get()&lt;/i&gt; functions, so I made them and here is the code to add to Chris&#39;s class:&lt;br /&gt;
&lt;br /&gt;
In the .cpp&lt;br /&gt;
&lt;pre class=&quot;brush:cpp&quot;&gt;QVariant ListModel::get(int row)
{
    ListItem * item = m_list.at(row);
    QMap&amp;lt;Qstring, Qvariant&amp;gt; itemData;
    QHashIterator&amp;lt;int, Qbytearray&amp;gt; hashItr(item-&amp;gt;roleNames());
    while(hashItr.hasNext()){
        hashItr.next();
        itemData.insert(hashItr.value(),item-&amp;gt;data(hashItr.key()).toString());
    }
    // Edit: 
    // My C++ is sometimes a bit rusty, I was deleting item... 
    // DO NOT delete item... otherwise you remove the item from the ListModel
    // delete item;
    return QVariant(itemData);
}
&lt;/pre&gt;&lt;br /&gt;
To get the count.&lt;br /&gt;
&lt;br /&gt;
In the .h&lt;br /&gt;
&lt;pre class=&quot;brush:cpp&quot;&gt;public ListModel : public QAbstractListModel
{
    Q_OBJECT
    Q_PROPERTY( int count READ getCount() NOTIFY countChanged())

public:
    ...
    int getCount() { this-&gt;count = this-&gt;rowCount(); return count; }
    Q_INVOKABLE QVariant get(int row);
    ...
private:
    ...
    int count;
    ...
};
&lt;/pre&gt;&lt;br /&gt;
The &lt;i&gt;get()&lt;/i&gt; function will create a QVariant which is like a Javascript object. So you can have later in your Javascript something like:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;brush:js&quot;&gt;function useCppModel(){
    // We can check the number of item in our C++ Model now
    for(var i = 0; i &amp;lt; model.count; i++){
        // Here you use the get function declared as invokable
        // It&#39;s just like a real ListModel now ;)
        var item = model.get(i);
        // Now, you can then access the content of your item like item.property
    }
}
&lt;/pre&gt;&lt;br /&gt;
That&#39;s pretty much my addition to what Chris provided and this might inspire/help some of you. I hope you enjoyed. Sorry, if I&#39;m not doing a complete tutorial, but I do not have much time.&lt;br /&gt;
&lt;br /&gt;
P.S.: By the way, I&#39;m now QtAmbassador. Yeah~ :D&lt;br /&gt;
&lt;br /&gt;
EDIT: I corrected the bug with the first C++ code snippet.</content><link rel='replies' type='application/atom+xml' href='http://bsauts-en.blogspot.com/feeds/4406368435210667681/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bsauts-en.blogspot.com/2011/09/listmodel-in-c-exposed-to-qml.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/4406368435210667681'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/4406368435210667681'/><link rel='alternate' type='text/html' href='http://bsauts-en.blogspot.com/2011/09/listmodel-in-c-exposed-to-qml.html' title='ListModel in C++ exposed to QML'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1734197245279673920.post-9074903464821105557</id><published>2011-06-08T22:43:00.001+02:00</published><updated>2011-06-24T10:35:41.212+02:00</updated><title type='text'>Some news</title><content type='html'>Hi there QML fans,&lt;br /&gt;
&lt;br /&gt;
I&#39;m deeply sorry to tell you that at the moment, I&#39;m extremely busy with my life. This means, no QML tutorial for awhile.&lt;br /&gt;
&lt;br /&gt;
To tell you the truth, this beginning of the year was quite something! I actually did lot of things and still have lots to do:&lt;br /&gt;
&lt;br /&gt;
I took part in the RoboCup@Home German Open 2011, in Magdeburg, Germany and with the team with reached the 2nd place.&lt;br /&gt;
I also spent some time to finish my 3rd semester of Master... Yeah, I had to learn for my exams, like any other student.&lt;br /&gt;
During my free time, I mainly co-developed a Dropbox Client for Symbian^3 devices (targeting N8, C7, E7, and similar) with a friend. Our application is called DropML. You can check our blog &lt;a href=&quot;http://dropml.blogspot.com&quot;&gt;here&lt;/a&gt;. For the curious ones, it&#39;s Qt 4.7.3, mainly QML/Javascript but with some C++ too.&lt;br /&gt;
&lt;br /&gt;
Currently, I&#39;m doing my Master Thesis... Something about UI. I won&#39;t go deeper in details here.&lt;br /&gt;
&lt;br /&gt;
Anyway, I&#39;ll do my best, I&#39;ll try to find some free time to make a new tutorial.&lt;br /&gt;
&lt;br /&gt;
See you guys. :)</content><link rel='replies' type='application/atom+xml' href='http://bsauts-en.blogspot.com/feeds/9074903464821105557/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bsauts-en.blogspot.com/2011/06/some-news.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/9074903464821105557'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/9074903464821105557'/><link rel='alternate' type='text/html' href='http://bsauts-en.blogspot.com/2011/06/some-news.html' title='Some news'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1734197245279673920.post-5224408907903387615</id><published>2011-02-13T18:08:00.001+01:00</published><updated>2011-06-24T11:01:17.684+02:00</updated><title type='text'>Second QML Tutorial</title><content type='html'>Hi everybody,&lt;br /&gt;
&lt;br /&gt;
Here is finally the second QML tutorial! Before starting, I hope you are all ok with the first tutorial, I hope you remember the first application with the circles. If not, you can find the link to the tutorial on the menu on your right.&lt;br /&gt;
&lt;br /&gt;
So, now that you remember, you can see that several pieces of code have been repeated. Let’s have an example: &lt;br /&gt;
&lt;pre class=&quot;brush: as3&quot;&gt;Rectangle{
    id: happy_circle_green
    x: 271
    y: 72
    width: 63
    height: 63
    radius: width/2
    color: &quot;lightgreen&quot;
}
&lt;/pre&gt;As you already noticed, they all have the same properties, only the value is changing. However, this is not nice to write them all like a long list. This is not very efficient. A good design idea is to make things reusable. Then it’s more efficient, and you can even share components between applications when it’s possible. &lt;br /&gt;
&lt;br /&gt;
Let’s create a new application called Second Tutorial.  In your application folder, please add a file called &lt;i&gt;Circle.qml&lt;/i&gt;.  The capital letter at the beginning might look useless but it is said in the documentation that it’s a good practice and I actually like it like this. Also, regarding naming, here is another good practice: &lt;b&gt;NO SPACE&lt;/b&gt; in file names. It’s better to use the underscore character. &lt;br /&gt;
&lt;br /&gt;
Ok, so back to our new file, we can put the following code in it:&lt;br /&gt;
&lt;pre class=&quot;brush: as3&quot;&gt;import QtQuick 1.0

Rectangle{
    id: circle_root

    property int posX: 0
    property int posY: 0
    property int size: 200
    property string selectedColor: &quot;black&quot;

    x: posX
    y: posY
    width: size
    height: size
    radius: size/2
    color: selectedColor
}
&lt;/pre&gt;As you can see, I’m using a new important thing: the &lt;i&gt;property&lt;/i&gt; keyword. This allows us to have generic properties which can be used all over the file or also accessed from another file. In this case I gave fixed values to make things go step by step. So if you try to display it, this will look like this: &lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEidN0rsRrgGkLly7ZzUbGD_c068uLVti4DSrhQMTHO8_lCBtrlyZgwZIooi2xHd3hrxQ7s6NdFCtjwPPDJzjb51ahfZwmJdHpFFbgbTRkXmNbZfr6aPl5kTV82HONUxQ0PuF5Z_YVKF8zD_/s1600/circle.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEidN0rsRrgGkLly7ZzUbGD_c068uLVti4DSrhQMTHO8_lCBtrlyZgwZIooi2xHd3hrxQ7s6NdFCtjwPPDJzjb51ahfZwmJdHpFFbgbTRkXmNbZfr6aPl5kTV82HONUxQ0PuF5Z_YVKF8zD_/s1600/circle.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Well, that’s a good start. Now, let’s play with that.  Since the file is in the same folder it is automatically recognized within any other QML file from the same folder.  Let’s put this in an application: &lt;br /&gt;
&lt;pre class=&quot;brush: as3&quot;&gt;import QtQuick 1.0

Rectangle {
    id: tuto_root

    width: 360
    height: 360
    color: &quot;darkgrey&quot;

    Circle {
        id: tuto_first_circle
    }

    MouseArea {
        id: tuto_msa
        anchors.centerIn: parent
        onClicked: {
            Qt.quit();
        }
    }
}
&lt;/pre&gt;This gives us :&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6hzIamTYLZOJBWpx5TmBcLzy4jg-9OCLLMQyrAuww7sy-6ZaP7ScEhDgyWnBqsRVs-e-TiHuPixrHq_duo43yzfu08xGvf5WHlxzArgKX0ixGG6_lI5KkNYwsME2FDMuj4aHfwmD3nuqJ/s1600/simple_circle.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6hzIamTYLZOJBWpx5TmBcLzy4jg-9OCLLMQyrAuww7sy-6ZaP7ScEhDgyWnBqsRVs-e-TiHuPixrHq_duo43yzfu08xGvf5WHlxzArgKX0ixGG6_lI5KkNYwsME2FDMuj4aHfwmD3nuqJ/s320/simple_circle.png&quot; width=&quot;288&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Ok, I said, we can play with it… and I also said we can access these properties from the outside. Let’s do it. I want a smaller circle e.g. diameter = 100, with a blue color and at position (20,150). Here is the code; I think you can understand easily:&lt;br /&gt;
&lt;pre class=&quot;brush: as3&quot;&gt;import QtQuick 1.0

Rectangle {
    id: tuto_root

    width: 360
    height: 360
    color: &quot;darkgrey&quot;

    Circle {
        id: tuto_first_circle
        selectedColor: &quot;blue&quot;
        posX: 20
        posY: 150
        size: 100
    }

    MouseArea {
        id: tuto_msa
        anchors.centerIn: parent
        onClicked: {
            Qt.quit();
        }
    }
}
&lt;/pre&gt;Well, so far so good, I guess you understand how we can play with the properties&lt;br /&gt;
&lt;br /&gt;
These properties are really useful. In the current case, this is more like creating a variable. These variables are assessed to some properties to make them change either easily (e.g. size is used for 3 properties) and/or from the outside (as we did when we integrated the circle in the main app).  In this case, I set a default value for the properties. You don’t have to, but I recommend you to do it.&lt;br /&gt;
&lt;br /&gt;
There is also another kind of property: the &lt;i&gt;alias&lt;/i&gt;. An alias allows you to refer to the value of a field in a more generic way. The following code does exactly the same thing as before: &lt;br /&gt;
&lt;pre class=&quot;brush: as3&quot;&gt;import QtQuick 1.0

Rectangle{
    id: circle_root

    property int posX: 0
    property int posY: 0
    property int size: 200
    property alias selectedColor: circle_root.color

    x: posX
    y: posY
    width: size
    height: size
    radius: size/2
}
&lt;/pre&gt;Let’s say, right now, the difference might seem quite light, but when you will be playing more with QML you will see what suits the best for you. Anyway, we now have a reusable component. This is very interesting because QML provides components to create a bunch of components easily. For example, we can use a &lt;i&gt;Repeater&lt;/i&gt; component within a &lt;i&gt;Row&lt;/i&gt; component to generate a row of circle. Here is the code: &lt;br /&gt;
&lt;pre class=&quot;brush: as3&quot;&gt;import QtQuick 1.0

Rectangle {
    id: tuto_root

    width: 360
    height: 360
    color: &quot;darkgrey&quot;

    Row {
        id: tuto_row
        Repeater {
            id: tuto_repeater
            model: 5
            Circle {
                id: tuto_first_circle
                selectedColor: &quot;blue&quot;
                size: 360 / tuto_repeater.model
            }
        }
    }

    MouseArea {
        id: tuto_msa
        anchors.centerIn: parent
        onClicked: {
            Qt.quit();
        }
    }
}
&lt;/pre&gt;And the result: &lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtJK8IjPYB-bXsvl9FHtlRNP92_Sw8Q8yDIlpezQYJC6RlvmEuwRz59wECliswjJIPgq1rybb8geFMF5GZ93G5KM6yv28Wo5iGL7HZwiC09YlGbmUFHO-nsTChz0Z-O_SleOhH0n_empz7/s1600/five_circles.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtJK8IjPYB-bXsvl9FHtlRNP92_Sw8Q8yDIlpezQYJC6RlvmEuwRz59wECliswjJIPgq1rybb8geFMF5GZ93G5KM6yv28Wo5iGL7HZwiC09YlGbmUFHO-nsTChz0Z-O_SleOhH0n_empz7/s320/five_circles.png&quot; width=&quot;288&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
As you can noticed, I reuse also the &lt;i&gt;model&lt;/i&gt; property from the &lt;i&gt;Repeater&lt;/i&gt; to adjust the size of the circle to the width of the window regarding the number I want. Quite easy, isn’t it?&lt;br /&gt;
That’s enough for today, I advise you to play with the properties, to play also with the &lt;i&gt;Repeater&lt;/i&gt; component. For more details on this component, go &lt;a 4.7-snapshot=&quot;&quot; doc.qt.nokia.com=&quot;&quot; href=&quot;http://www.blogger.com/%E2%80%9D&quot; http:=&quot;&quot; qml-repeater.html”=&quot;&quot;&gt;here&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Have fun!</content><link rel='replies' type='application/atom+xml' href='http://bsauts-en.blogspot.com/feeds/5224408907903387615/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bsauts-en.blogspot.com/2011/02/second-qml-tutorial.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/5224408907903387615'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/5224408907903387615'/><link rel='alternate' type='text/html' href='http://bsauts-en.blogspot.com/2011/02/second-qml-tutorial.html' title='Second QML Tutorial'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEidN0rsRrgGkLly7ZzUbGD_c068uLVti4DSrhQMTHO8_lCBtrlyZgwZIooi2xHd3hrxQ7s6NdFCtjwPPDJzjb51ahfZwmJdHpFFbgbTRkXmNbZfr6aPl5kTV82HONUxQ0PuF5Z_YVKF8zD_/s72-c/circle.png" height="72" width="72"/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1734197245279673920.post-5637845754827310079</id><published>2011-01-20T21:33:00.002+01:00</published><updated>2011-01-20T23:37:48.888+01:00</updated><title type='text'>Qt, improving day after day</title><content type='html'>Hey guys,&lt;br /&gt;
&lt;br /&gt;
great news! Trolltech is working on merging both current Qt SDKs namely Qt SDK based on Qt 4.7 and Nokia Qt SDK. They are both including different features such as the deployment of application targeting Maemo or Symbian^3 for the Nokia Qt SDK, etc. Anyway, this is a great news! &lt;br /&gt;
&lt;br /&gt;
Furthermore, the Qt Mobility framework has been finally included, which means: it is now possible to work with multimedia within QML. I really have to take a look at this one. ;)&lt;br /&gt;
&lt;br /&gt;
You can read more about this &lt;a href=&quot;http://labs.qt.nokia.com/2011/01/20/qt-sdk-1-1-technology-preview-released/&quot;&gt;here&lt;/a&gt;. &lt;br /&gt;
&lt;br /&gt;
Enjoy!&lt;br /&gt;
&lt;br /&gt;
EDIT: &lt;br /&gt;
Your attention please, I just installed the Qt SDK, full version. I imported the &quot;First Tutorial&quot; project but it didn&#39;t work. Here is the solution:&lt;br /&gt;
&lt;br /&gt;
If you previously created your application with a version of QtCreator which generates a &lt;b&gt;.qmlproject&lt;/b&gt; with&lt;br /&gt;
&lt;pre class=&quot;brush: as3&quot;&gt;import QmlProject 1.1&lt;/pre&gt;You just need to downgrade this import to &lt;b&gt;1.0&lt;/b&gt;. Furthermore, since the version changes, the &lt;b&gt;mainFile&lt;/b&gt; option is not available anymore. Please comment it out. &lt;br /&gt;
&lt;br /&gt;
In your &lt;b&gt;.qml&lt;/b&gt; files, do not worry about changing this:&lt;br /&gt;
&lt;pre class=&quot;brush: as3&quot;&gt;import QtQuick 1.0&lt;/pre&gt;This still runs and do not impact the application (as far as I can tell). Only old QtCreator version do not support this import, if it&#39;s the case, change it to:&lt;br /&gt;
&lt;pre class=&quot;brush: as3&quot;&gt;import Qt 4.7&lt;/pre&gt;</content><link rel='replies' type='application/atom+xml' href='http://bsauts-en.blogspot.com/feeds/5637845754827310079/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bsauts-en.blogspot.com/2011/01/qt-improving-day-after-day.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/5637845754827310079'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/5637845754827310079'/><link rel='alternate' type='text/html' href='http://bsauts-en.blogspot.com/2011/01/qt-improving-day-after-day.html' title='Qt, improving day after day'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1734197245279673920.post-623714287216622468</id><published>2011-01-07T15:20:00.000+01:00</published><updated>2011-01-07T15:20:26.965+01:00</updated><title type='text'>Qt and Ruby, yes it&#39;s possible</title><content type='html'>Hey guys, &lt;br /&gt;
&lt;br /&gt;
do you remember this article on &lt;a href=&quot;http://bsauts-en.blogspot.com/2010/12/online-file-synchronizer.html&quot;&gt;Online File Synchronizer&lt;/a&gt; I shared awhile ago from one of my friends? Well, the same friend seems to be also interested in Qt. But unlike me, he knows &lt;a href=&quot;http://www.ruby-lang.org&quot;&gt;Ruby&lt;/a&gt;. &lt;br /&gt;
&lt;br /&gt;
That being said, he wrote an article (a short introduction actually) on how can people use QtRuby to develop easily nice applications. You can find the article &lt;a href=&quot;http://www.dallagnese.fr/en/computers-it/qtruby-creez-rapidement-des-applications-graphiques-puissantes/&quot;&gt;here&lt;/a&gt;. &lt;br /&gt;
&lt;br /&gt;
Enjoy. :)</content><link rel='replies' type='application/atom+xml' href='http://bsauts-en.blogspot.com/feeds/623714287216622468/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bsauts-en.blogspot.com/2011/01/qt-and-ruby-yes-its-possible.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/623714287216622468'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/623714287216622468'/><link rel='alternate' type='text/html' href='http://bsauts-en.blogspot.com/2011/01/qt-and-ruby-yes-its-possible.html' title='Qt and Ruby, yes it&#39;s possible'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1734197245279673920.post-1518951454615558267</id><published>2011-01-03T00:28:00.007+01:00</published><updated>2011-06-24T10:50:44.986+02:00</updated><title type='text'>First QML tutorial</title><content type='html'>Hello there people,&lt;br&gt;
&lt;br&gt;
Here comes finally my first little introduction to QML. Well, I’ve been talking a lot about it… Finally you’ll understand why.&lt;br&gt;
&lt;br&gt;
I have installed Qt 4.7.1 and QtCreator (which version, I don’t remember and anyway, it’s not very important for you). I just generated a normal QML project, and here is what I get:&lt;br&gt;
&lt;pre class=&quot;brush: as3&quot;&gt;import QtQuick 1.0

Rectangle {
    width: 360
    height: 360
    Text {
        anchors.centerIn: parent
        text: &amp;quot;Hello World&amp;quot;
    }
    MouseArea {
        anchors.fill: parent
        onClicked: {
            Qt.quit();
        }
    }
}
&lt;/pre&gt;It is really important for you to understand this small code although it is actually self-explaining… I know, you are not stupid, but I’ll do it anyway. :)&lt;br&gt;
&lt;br&gt;
&lt;a href=&quot;http://bsauts-en.blogspot.com/2011/01/first-qml-tutorial.html#more&quot;&gt;Read more »&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://bsauts-en.blogspot.com/feeds/1518951454615558267/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bsauts-en.blogspot.com/2011/01/first-qml-tutorial.html#comment-form' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/1518951454615558267'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/1518951454615558267'/><link rel='alternate' type='text/html' href='http://bsauts-en.blogspot.com/2011/01/first-qml-tutorial.html' title='First QML tutorial'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhR6YZUM1KfyMNpjYsS31mDhggP3FqinFOSK6df16YqSOb7HFYsI27EpXy8TZMhKshl5hIQz03ifd1j7J6qX_EuytvAJM35cxvy83rsli99yD1My_2vg2qWnhgctA9-lpn72MzcDVlJQ4VN/s72-c/snapshot1.png" height="72" width="72"/><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1734197245279673920.post-3347637251131311523</id><published>2010-12-30T16:12:00.003+01:00</published><updated>2011-01-20T08:24:35.469+01:00</updated><title type='text'>Online File Synchronizer</title><content type='html'>Hi there,&lt;br /&gt;
&lt;br /&gt;
today I read an article about &lt;i&gt;Online File Synchronizer&lt;/i&gt; written by one of my friends. &lt;br /&gt;
Please follow this &lt;a href=&quot;http://www.dallagnese.fr/en/computers-it/online-file-synchronizers-review/&quot;&gt;link&lt;/a&gt; to read the article and have a short overview on this technology.&lt;br /&gt;
&lt;br /&gt;
I also would like to add that being a &lt;a href=&quot;http://www.dropbox.com&quot;&gt;Dropbox&lt;/a&gt; user, I also was often saved by it. Dropbox is really helpful for me!&lt;br /&gt;
&lt;br /&gt;
Furthermore, it is interesting to know that more than simply providing you with an online file system which can save your files, you can also share folders to one or more person. FYI, I actually share a folder with this friend.&lt;br /&gt;
&lt;br /&gt;
This way, it is possible to have a kind of &lt;a href=&quot;http://en.wikipedia.org/wiki/Concurrent_Versions_System&quot;&gt;CVS&lt;/a&gt; system, embedded in your file browser and requiring no manual updates unlike &lt;a href=&quot;http://subversion.tigris.org/&quot;&gt;Subversion&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
One other thing with Dropbox is: if you manage to invite some friends, or share a folder or what so ever, I can&#39;t really remember all the things to do, anyway, you can get a few more free space. I currently have 2.5GB which is really nice already.&lt;br /&gt;
&lt;br /&gt;
The last interesting thing is: you can install the Dropbox on several of you computers. Accessing data from wherever you are! Even on your phone... Nice eh? And this is so easy to use that even my parents can use that! :D&lt;br /&gt;
&lt;br /&gt;
If you don&#39;t have an account, I really advise you to create one! Register now! ;)</content><link rel='replies' type='application/atom+xml' href='http://bsauts-en.blogspot.com/feeds/3347637251131311523/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bsauts-en.blogspot.com/2010/12/online-file-synchronizer.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/3347637251131311523'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/3347637251131311523'/><link rel='alternate' type='text/html' href='http://bsauts-en.blogspot.com/2010/12/online-file-synchronizer.html' title='Online File Synchronizer'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1734197245279673920.post-7937177078337174348</id><published>2010-12-20T11:47:00.007+01:00</published><updated>2011-01-04T17:44:02.338+01:00</updated><title type='text'>JSR 179 - Java Location API</title><content type='html'>Hi everybody,&lt;br&gt;
here is a short introduction to the JSR 179 API commonly known as the Java Location API. &lt;br&gt;
&lt;br&gt;
&lt;h3&gt;&lt;u&gt;Introduction on the API&lt;/u&gt;&lt;/h3&gt;The Java JSR 179 specification concerns the Location API (as mentioned above) provided by Sun for Java Micro Edition (JavaME). This API targets mobile phones or any other mobile devices such as PDAs which integrate the Java platform. &lt;br&gt;
&lt;a href=&quot;http://bsauts-en.blogspot.com/2010/12/jsr-179-java-location-api.html#more&quot;&gt;Read more »&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://bsauts-en.blogspot.com/feeds/7937177078337174348/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bsauts-en.blogspot.com/2010/12/jsr-179-java-location-api.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/7937177078337174348'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/7937177078337174348'/><link rel='alternate' type='text/html' href='http://bsauts-en.blogspot.com/2010/12/jsr-179-java-location-api.html' title='JSR 179 - Java Location API'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgr8M1GxfsnE7BdlzDIBeOrLyBufkM7AW07bLVbTTac2EM_TCZk6oqtHgwr0IG0wLy6koqN9g6y2V9db610ua-JPklqQZZXaPnxjnjyEikdWRHwc1PR85nhguHxaQ7GPGb_aWStgyVkQ_-h/s72-c/Alert.png" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1734197245279673920.post-6648904546035868198</id><published>2010-10-22T22:55:00.002+02:00</published><updated>2011-01-04T17:42:07.071+01:00</updated><title type='text'>Java because I love it</title><content type='html'>Hi everybody,&lt;br&gt;
&lt;br&gt;
before starting this post, I first would like to say that, I made a mistake telling you at the very beginning that I was gonna talk only about mobile oriented applications/developments, since today, I will just &lt;i&gt;troll&lt;/i&gt;.&lt;br&gt;
&lt;br&gt;
It is my pleasure of the day and maybe I&amp;#39;m in this kind of mood because I actually programmed a little bit during the day (and of course, in Java).&lt;br&gt;
&lt;a href=&quot;http://bsauts-en.blogspot.com/2010/10/java-because-i-love-it.html#more&quot;&gt;Read more »&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://bsauts-en.blogspot.com/feeds/6648904546035868198/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bsauts-en.blogspot.com/2010/10/java-because-i-love-it.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/6648904546035868198'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/6648904546035868198'/><link rel='alternate' type='text/html' href='http://bsauts-en.blogspot.com/2010/10/java-because-i-love-it.html' title='Java because I love it'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1734197245279673920.post-2828796297482905864</id><published>2010-10-19T10:09:00.006+02:00</published><updated>2011-05-06T10:53:45.761+02:00</updated><title type='text'>About QML</title><content type='html'>Hi everybody,&lt;br&gt;
&lt;br&gt;
it has been awhile since my last post here. I have been quite busy lately but I will try to give some updates from time to time about interesting stuffs. As you might know, I&amp;#39;m currently working a lot with &lt;a href=&quot;http://en.wikipedia.org/wiki/QML&quot;&gt;QML&lt;/a&gt;, this new technology coming with the &lt;a href=&quot;http://qt.nokia.com/&quot;&gt;latest Qt&lt;/a&gt; versions (Qt4.6 but mainly Qt4.7).&lt;br&gt;
&lt;br&gt;
Although programming in QML/Javascript was a little bit tricky at the very beginning (my background being more Java oriented), it is now kind of a pleasure since I can really do what I want, and have a fast and clear preview of my code. Doing animated UI has never been that easy.&lt;br&gt;
&lt;a href=&quot;http://bsauts-en.blogspot.com/2010/10/about-qml.html#more&quot;&gt;Read more »&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://bsauts-en.blogspot.com/feeds/2828796297482905864/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bsauts-en.blogspot.com/2010/10/about-qml.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/2828796297482905864'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/2828796297482905864'/><link rel='alternate' type='text/html' href='http://bsauts-en.blogspot.com/2010/10/about-qml.html' title='About QML'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEggtn0R7TLO2m8Cfx0eCJ4GKEV8O4GcWiT2jM64ZNtY9fsgbahJPvPqpzovA8vqWGp9Tiaab1oYz32PsLzKBu3sfziYJ2QXh2VdHQurxIEmXZ_JmwoO3ehcfFEdK9Drztlg-fuCz2x5XBaC/s72-c/Alert.png" height="72" width="72"/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1734197245279673920.post-2091551515634963579</id><published>2010-04-24T10:57:00.000+02:00</published><updated>2010-04-26T12:26:26.464+02:00</updated><title type='text'>Some more information</title><content type='html'>Hi everybody,&lt;br /&gt;
&lt;br /&gt;
as you may have noticed, I&#39;m not very talkative but as I wrote it in my previous post, it will get better sooner or later. This message aims at bringing you some more information about what will be the content of this blog. In fact, it won&#39;t be a personal blog where I&#39;ll be talking about myself, but instead, a blog where I&#39;ll publish and share some tutorials about several programing languages and APIs.&lt;br /&gt;
&lt;br /&gt;
When I&#39;ll have enough time to do so, I&#39;ll make for you some Qt tutorials (and I hope that it will be on Qt4.7, which is the upcoming version and which I feel is really going to be worth it especially when it comes to develop some woaw effect applications), but also some tutorials about the several J2ME APIs such as the Localization API which is using the GPS chip from your mobile device, etc.&lt;br /&gt;
&lt;br /&gt;
In a nutshell, it will be another &quot;geeky&quot; blog but not really like the others, more mobile phone application development oriented since as a Nokia working student, this kind of development is what is interesting me at most.&lt;br /&gt;
&lt;br /&gt;
One last point I would like to talk about is the design of the blog. Right now, it&#39;s quite sober but don&#39;t worry, it&#39;s just due to my lack of time. One of the item of my ToDo list is to provide a design which will allow the reader (you) to read the content easily and which will help going through the different parts (to come) of the blog.&lt;br /&gt;
&lt;br /&gt;
Bye for now, I have lots to do.&lt;br /&gt;
Have very nice day. :)</content><link rel='replies' type='application/atom+xml' href='http://bsauts-en.blogspot.com/feeds/2091551515634963579/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bsauts-en.blogspot.com/2010/04/some-more-information.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/2091551515634963579'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/2091551515634963579'/><link rel='alternate' type='text/html' href='http://bsauts-en.blogspot.com/2010/04/some-more-information.html' title='Some more information'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1734197245279673920.post-4495581131505872128</id><published>2010-04-10T09:12:00.000+02:00</published><updated>2010-04-10T10:34:35.747+02:00</updated><title type='text'></title><content type='html'>Hi there,&lt;br /&gt;&lt;br /&gt;here is my first post. I have no idea what to talk about yet but soon enough it will come and of course, you can feel free to comment on any of the posts to come.&lt;br /&gt;&lt;br /&gt;So guys, see you around. ^_^&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-style: italic;&quot;&gt;EDIT:&lt;/span&gt; I just created a French version of this blog, available at this address &lt;a href=&quot;http://bsauts-fr.blogspot.com&quot;&gt;http://bsauts-fr.blogspot.com&lt;/a&gt; for those who want to read some French. The content will be of course, kind of similar but in French. Hope you&#39;ll enjoy reading my posts.</content><link rel='replies' type='application/atom+xml' href='http://bsauts-en.blogspot.com/feeds/4495581131505872128/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bsauts-en.blogspot.com/2010/04/hi-there-here-is-my-first-post.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/4495581131505872128'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1734197245279673920/posts/default/4495581131505872128'/><link rel='alternate' type='text/html' href='http://bsauts-en.blogspot.com/2010/04/hi-there-here-is-my-first-post.html' title=''/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry></feed>