Archives Mensuelles: février 2010

DbMaster – version 0.6 en route et défilement de requête

Salux !

Finalement, contrairement à ce qui était annoncé, une version 0.6 verra le jour, notamment à cause d’un gros bogue qui a nécessité une amélioration notable : le défilement de requête (ou query scrolling). J’ai voulu tester la façon dont DbMaster se comporte avec de grosses requêtes et j’ai été assez déçu du résultat. Exécution de la requête + chargement du modèle = 1sec, nickel, ensuite affichage : 5 min. Bon. Il fallait faire quelque chose.

Défilement de requête

Des zolies images valant mieux qu’un long discours, voici en capture d’écran la nouveauté :

J’ai utilisé la BDD employees fournie par MySQL. Comme encadré en bas, la table contient plus de 300k items (cf problème cité plus haut). L’utilisateur peut définir le nombre d’items à afficher par page et les défiler (suivant, précédent, début, fin).

J’ai encore quelques bogues à résoudre de ce côté-ci mais tout sera fin prêt pour la 0.6.

Compatibilité SQLite

Romain m’a prévenu que DbMaster ne fonctionne pas avec SQLite. D’ici une semaine j’espère avoir résolu le problème, je posterai un billet ou un tweet surement.

Compatibilité Windows

Autre objectif (ambitieux) : assurer 100% des fonctionnalités sur Windows. Ça va pas être facile, mais c’est envisageable. Je ne sais pas si j’aurais le courage de fournir un installeur, mais au moins les binaires archivés. Ce portage inaugurera Qt 4.6.

Paquets DEB (optionnel)

Bon ça j’avoue, c’est du bonus, mais si je pouvais fournir des paquets au moins pour Ubuntu, ça serait top. Pour Debian Lenny je ne peux rien garantir à cause du fait que Qt 4.4 est fourni et que j’utilise des fonctionnalités disponibles uniquement depuis la 4.5.

Le Manchot Enragé

Tagué , , , ,

Facebook permet d’utiliser son service de chat avec un client jabber

Salux !

Pour une bonne nouvelle, c’est une bonne nouvelle ! Les développeurs de Facebook ont annoncé[1] le support de jabber (nom technique : XMPP). En gros, vous pouvez vous connecter au chat de Facebook (et donc profiter de toute la liste d’amis dont je ne doute pas qu’elle soit remplie de personnes prête à vous embêter ;)) depuis un autre programme. Pas besoin de se connecter au site ni de laisser la page ouverte !

Les développeurs expliquent avoir choisi XMPP car, en tant que protocole normalisé, les développeurs pourront l’intégrer sur tout types d’applications (éventuellement mobiles). Ils nuancent cependant en expliquant que la conformité XMPP n’est pas totale, la majorité du temps pour une question d’intégration aux autres services (ex: l’inscription au roster et l’ajout d’amis se font par l’interface de Facebook au lieu de la méthode fournie par jabber).

Attention toutefois : utiliser le chat de Facebook par jabber prive d’un des plus gros avantages de jabber, à savoir la possibilité de chiffrer en SSL/TLS. Dans ces conditions, je vous recommande de ne pas l’utiliser dans des espaces type WiFi ouverts[2], pas plus que le site web de Facebook ou MSN par exemple. Pourquoi ? N’importe qui peut intercepter le flux, ça prend deux minutes et on peut tout savoir de vous 🙂

Comment faire ?

Voici la marche à suivre pour Pidgin donnée par l’un de ses développeurs[3], même si n’importe quel client pourra être paramétrer de la même sorte :

  1. En pré-requis, vérifier que vous possédez un nom d’utilisateur Facebook[4].
  2. Ajouter un compte sur Pidgin avec les infos suivantes :
    • Utilisateur : nom d’utilisateur Facebook (et non pas votre nom ou adresse mail)
    • Domaine : chat.facebook.com
    • Ressource : peu importe
    • Mot de passe : il vous faut un dessin ?
  3. Dans l’onglet avancé, vérifier les options suivantes :
    • Décocher (à contre cœur) « Nécessite SSL/TLS »
    • Décocher « Autoriser l’authentification en clair pour les flux cryptés »
    • Port : 5222
    • Serveur de connexion : chat.facebook.com
  4. Enjoy !

Si vous avez le moindre problème pour vous connecter (erreur 503), signalez-le moi.

Voilà, c’est pas demain la veille qu’on aura du normalisé dans la communication instantanée, mais j’espère que ça montrera enfin au grand public que jabber est tout sauf un joujou de geeks.

Le Manchot Enragé

Liens :

[1] Annonce officielle des développeurs : http://developers.facebook.com/news.php?blog=1&story=361

[2] Précédent billet sur l’usage de protocoles non sécurisés : https://manudwarf.wordpress.com/2009/01/20/msn-ou-lart-de-chuchoter-a-haute-voix/

[3] Annonce par un développeur de Pidgin : http://blog.caseyho.com/2010/02/how-to-enable-facebook-chat-in-pidgin.html

[4] Obtenir un nom d’utilisateur Facebook : http://www.facebook.com/username/

Tagué , , , , , , ,

DbMaster – démarrage de la branche 0.5

Salux !

DbMaster a atteint les limites de QtSql semble-t-il. Aujourd’hui je mets à disposition la version 0.5, dernière version avec cette base de code. Elle est boguée et peu fonctionnelle je l’avoue, mais elle sera suffisante pour être présentée le jour du BTS. Je fournirai surement des correctifs avec des versions 0.5.x.

Changements majeurs pour la version 0.5

  • Auto-complément du code basé sur la norme SQL et le contexte (noms de tables, champs). Je recommande de la désactiver car cette fonction est assurément la plus instable.
  • Exécution des sous-requêtes par sélection de celles-ci.

Voir le changelog complet pour plus d’informations.

En route pour 0.6

Pour la version 1.0 une réécriture des drivers de base de données sera nécessaire. Malgré la puissance de QtSql, celui-ci n’est pas adapté. En effet, il est orienté données et non structure. Il est impossible de l’interroger sur les déclencheurs ou les schémas par exemple. Je m’inspirerai d’AnySQL pour l’interface (capture d’écran), notamment l’arbre à gauche.

Je m’appuierai notamment sur QtPlugin pour générer un module pour chaque type de base de données. Je mettrai en priorité ODBC, MySQL et PostGreSQL parce qu’ODBC est compatible avec la majorité des SGBD mais reste trop générique et MySQL et PostGreSQL sont ceux que j’utilise le plus. Pour les autres, cela dépendra du temps dont je disposerai (sans parler des possibilités techniques, par ex. DB2 me semble inaccessible).

Je reste ouvert à toute suggestion/bogue et je remercie tous ceux qui m’ont aidé pour ce projet.

Site du projet : http://sourceforge.net/projects/dbmaster/

Le Manchot Enragé

Tagué , , , ,