Un petit journal pour signaler aux personnes intéressé par avoir un remplaçant à tomboy qu'une re-écriture de ce logiciel dans un autre langage (C++) a eu lieu. On peut remercier Hubert Figuière pour cela. D'après les premiers commentaires que j'ai pu lire il y a eu grâce à cela une un amélioration très notable de la rapidité.
Le liens annonçant le projet:
http://www.figuiere.net/hub/blog/?Gnote
et un ppa pour ubuntu a été mis en place:
https://launchpad.net/~vperetokin/+archive/gnote
# Novell
Posté par med . Évalué à 5.
[^] # Re: Novell
Posté par Anonyme . Évalué à 4.
[^] # Novell... toxique pour le libre?
Posté par blubliblo . Évalué à 1.
Hum... hum... ça sent mauvais...
[^] # Re: Novell... toxique pour le libre?
Posté par med . Évalué à 3.
[^] # Re: Novell... toxique pour le libre?
Posté par blubliblo . Évalué à 3.
[^] # Re: Novell
Posté par Mouns (site web personnel) . Évalué à 4.
mais qu'attend le pôle emploi pour réintroduire tout le monde et nous fournir 4 000 000 de libristes en plus ?
[^] # Re: Novell
Posté par snt . Évalué à 6.
--
ça va trancher
[^] # Re: Novell
Posté par windu.2b . Évalué à 2.
# un amélioration très notable de la rapidité
Posté par Troy McClure (site web personnel) . Évalué à 10.
Comment se fait-ce ? Je croyais que grace au JIT le code C# était mieux optimisé en profondeur alors que le c++ qui est optimisé statiquement ne peut rivaliser ? On nous aurait bourré le mou pendant toutes ces années ?
[^] # Re: un amélioration très notable de la rapidité
Posté par ndesmoul . Évalué à 5.
[^] # Re: un amélioration très notable de la rapidité
Posté par psychoslave__ (site web personnel) . Évalué à 6.
[^] # Re: un amélioration très notable de la rapidité
Posté par gnumdk (site web personnel) . Évalué à 1.
Par contre, dès que j'ai voulu installé un soft mono: "Horreur, malheur". Ca met beaucoup trop de temps à se lancer, tomboy en particulier (vu que c'est pas un énorme soft).
# Mono
Posté par JoeltheLion (site web personnel) . Évalué à 7.
;-)
[^] # Re: Mono
Posté par Adrien . Évalué à 4.
[^] # Re: Mono
Posté par Anonyme . Évalué à 2.
Enfin il y a les officieuses tel que banshee ou f-spot.
[^] # Re: Mono
Posté par ploum (site web personnel, Mastodon) . Évalué à 9.
Mes livres CC By-SA : https://ploum.net/livres.html
[^] # Re: Mono
Posté par Anonyme . Évalué à 6.
[^] # Re: Mono
Posté par Loic Dreux . Évalué à 3.
[^] # Re: Mono
Posté par yohann gabory (site web personnel) . Évalué à 2.
:
1.Libre
2.Bien intégré à l'environnement
3.Ne bouffe pas trop de ressources ...
Je vois pas où est le problème.
[^] # Re: Mono
Posté par ǝpɐןƃu∀ nǝıɥʇʇɐW-ǝɹɹǝıԀ (site web personnel) . Évalué à 1.
« ...si tu le laisses gérer à 100% tes photos... »
« IRAFURORBREVISESTANIMUMREGEQUINISIPARETIMPERAT » — Odes — Horace
[^] # Re: Mono
Posté par patrick_g (site web personnel) . Évalué à 3.
J'ai eu le même problème mais j'ai fini par trouver la solution évidente :
http://forum.ubuntu-fr.org/viewtopic.php?id=241410
[^] # Re: Mono
Posté par ǝpɐןƃu∀ nǝıɥʇʇɐW-ǝɹɹǝıԀ (site web personnel) . Évalué à 1.
« IRAFURORBREVISESTANIMUMREGEQUINISIPARETIMPERAT » — Odes — Horace
[^] # Re: Mono
Posté par Ozz . Évalué à 8.
Bon, par acquis de conscience, j'ai testé picasa (v3) pour montrer à ma mère que tu vois, grosso merdo c'est la même chose en pas pareil, et éventuellement chercher à améliorer la configuration de F-spot.
Las, même avec une dose raisonnable de mauvaise foi, je n'ai pas pu me persuader que f-spot est "un très bon équivalent libre à picasa". libre et bien intégré à l'environnement, tu as cité les 2 seules arguments (important pour moi, pas pour ma mère) que l'on peut citer en faveur de f-spot, mais il est désespérément inférieur sur tous les autres points et principalement sur un point qui me semble important pour ce genre d'application: gérer et retrouver ses photos rapidement et sans prise de tête :)
[^] # Re: Mono
Posté par jeffcom . Évalué à 2.
à quand l'ouverture de Picasa ?
[^] # Re: Mono
Posté par Anonyme . Évalué à 5.
[^] # Re: Mono
Posté par Letho . Évalué à 3.
Je me contente de classer mes photos par "album", avec des tags supplémentaires si besoin.
J'aime bien la "ligne de temps", et quelques options sympas comme la synchronisation avec des galleries en ligne.
J'apprécie également le fait qu'on puisse conserver différentes versions de photos, selon qu'elles soient retouchées ou pas.
Digikam & cie font certainement tout ça très bien, et même bien plus, mais pour simplement gérer mes photos je n'ai vraiment pas besoin de plus.
Et en plus c'est en GTK, parfait pour mon bureau Gnome :)
[^] # Re: Mono
Posté par patrick_g (site web personnel) . Évalué à 6.
[^] # Re: Mono
Posté par Ririsoft . Évalué à 1.
J'ai un seul regret : je ne trouve pas le développement très actif comparé aux autres. J'ai l'impression que le projet est plus en mode 'bug fix' qu'en mode 'enhancement'.
Dans tous ces logiciels de photos j'attend une killer feature qui me fera basculer vers l'un ou l'autre : la reconnaissance des visages comme sur picasaweb.
# Sacré Hubert !
Posté par ploum (site web personnel, Mastodon) . Évalué à 8.
Mes livres CC By-SA : https://ploum.net/livres.html
# Vala ?
Posté par téthis . Évalué à 6.
Je suis tout de même content qu'on développe des équivalents aux programmes écrits en C# (ou tout autres langages .net). Ce n'est pas pour faire du troll.net, juste parce que ça permet d'avoir à installer tout le bazar mono alors qu'on a déjà tout ce qu'il nous faut par ailleurs.
PS: genie¹ a aussi l'air très sympa.
[1] http://live.gnome.org/Genie et http://puppylinux.com/genie/
The capacity of the human mind for swallowing nonsense and spewing it forth in violent and repressive action has never yet been plumbed. -- Robert A. Heinlein
[^] # Re: Vala ?
Posté par blubliblo . Évalué à 2.
Il est très facile de tomber dans le bloat brainfucké avec le C++ dans un effort d'exploiter la "beauté" de ce langage bardé d'algos génériques saupoudrés de pleins de templates surchargés virtuellement d'opérateurs.
D'ailleurs, il suffit de regarde le front-end C++ de GCC, la libstdc++ et l'abi C++ pour se rendre compte que ce langage n'est qu'a peine plus compliqué que le C a implémenté... c'est bien connu!
(mouhahaha!)
[^] # Re: Vala ?
Posté par ecyrbe . Évalué à 1.
très joli troll! pourtant je trouve la logique et la puissance qu'amène tout ce foutoir des templates tellement puissante que je l'utilise de plus en plus (via std/boost/gtkmm). Mais c'est vrai, débugger des template c++ c'est le cauchemard...
[^] # Re: Vala ?
Posté par blubliblo . Évalué à 1.
[^] # Re: Vala ?
Posté par Thomas Douillard . Évalué à 2.
[^] # Re: Vala ?
Posté par blubliblo . Évalué à 2.
Perso (et je ne suis pas le seul), le C++ n'est pas un bon compromis.
[^] # Re: Vala ?
Posté par Anthony Jaguenaud . Évalué à 4.
J'ai donc fait une sorte de liste chaînée par index et pas par pointeur. Le problème c'est que l'appliquer à des nouveau type et un cauchemar en macro, faire du copier coller c'est bien, sauf pour une évolution, correction de bug, quand il y a dix type utilisé. Là où un jeu de fonction, structure "patron" serait très utile. Même pas besoin d'aller à la classe, le C++ c'est bien plus que la réduction habituelle à la classe.
[^] # Re: Vala ?
Posté par Thomas Douillard . Évalué à 2.
Après j'ai du mal à voir l'intérêt d'implémenter une liste chaînée dans un tableau ...
Tu ordonnes tes éléments ? C'est pour parcourir l'ensemble de tes éléments en une seule passe comme avec une liste chaînée sans tester si une case est vide ?
C'est pour éviter les allocations / désallocations mémoires ? Parce que si c'est ça t'as des techniques genre les "memory chuncks" ou memory pool qui sont adaptées, par exemple dans glib : http://www.gtk.org/api/2.6/glib/glib-Memory-Chunks.html - et ça reessemble peut
Parce que pour l'accès rapide,
* soit tu as déja un indice dans le tableau et là c'est la même chose avec un pointeur ou un iterateur sur une liste chainée pour l'accès. Donc ça ne change rien, tableau ou liste.
* soit t'en as pas t'as besoin de rechercher ton élément, et là ce qu'il te faut c'est plus une table de hachage (on se rapproche du tableau), ou un arbre de recherche si tu ordonnes tes éléments (un set en C++ par exemple), sinon t'es obligé de parcourir toute ta liste ou tout ton tableau (et on se ramène au cas de la liste)
Donc la question principale, ça t'apporte quoi d'insérer / supprimer comme dans une liste ? une petite optimisation du temps de recherche ?
[^] # Re: Vala ?
Posté par Anthony Jaguenaud . Évalué à 2.
Le seul intérêt, c'est de trouver un élément libre en O(1) et d'y accéder en O(1).
Tu ordonnes tes éléments ?
Non.
C'est pour parcourir l'ensemble de tes éléments en une seule passe comme avec une liste chaînée sans tester si une case est vide ?
Non plus. Je chaine juste les élément de façon a facilité l'usage de champ généraux : first_free_index, first_use_index et last_use_index.
J'obtiens un truc du genre :
struct
{
int first_free_index;
int first_use_index;
int last_use_index;
struct {
...
int prev_index;
int next_index;
}
};
Pour ajouter un élément, je prends le first free, et je le chaine avec le first use, je déchaine avec le next du first free.
Pour enlevé un élément, je rechaine ensemble le prev et le next, je le note en first free, je le rechaine avec l'ancien first free.
C'est pour éviter les allocations / désallocations mémoires ?
Oui. Contrainte produit :-(
[^] # Re: Vala ?
Posté par Thomas Douillard . Évalué à 3.
Dans ces trucs pour faire générique, t'as besoin en gros de connaître la taille des trucs que tu veux stocker, t'as des fonctions genre "get next free elem" ou "free elem" qui te retournent un "void *" que tu n'as plus qu'à caster dans un pointeur vers le type en question. Du coup pour un type donner tu peux te limiter à faire des macros qui castent.
http://www.codeproject.com/KB/cpp/MemoryPool.aspx par exemple
[^] # Re: Vala ?
Posté par nazcafan . Évalué à 1.
Je suis sûr qu'il doit bien y avoir un dev kernel dans le coin qui décrira ça bien mieux que moi.
[^] # Re: Vala ?
Posté par blubliblo . Évalué à 1.
J'ai utilisé directement le header de linux avec les 2-3 modifs qui vont bien pour qu'elles marchent en user space. Bon... c'est pas les listes protéger par RCU... ça serait trop beau.
[^] # Re: Vala ?
Posté par alberthier (site web personnel) . Évalué à 5.
Tu peux très bien coder en C++ comme tu le ferais en Java par exemple en te limitant toi même à de l'héritage simple, pas trop de templates, etc...
Un très bon exemple de ça, c'est Qt: Ils se limitent à un sous ensemble de C++ et le tout reste très simple et très compréhensible.
[^] # Re: Vala ?
Posté par Gof (site web personnel) . Évalué à 6.
Qt est juste une bibliothèque simple d'utilisation qui rends le C++ plus simple car les trucs de bas niveau sont déjà implémenté, laissant au programmeur la liberté de se consacrer au choses de plus aut niveau. Le tout avec une belle API multi-platforme, intuitive et facile à apprendre.
[^] # Re: Vala ?
Posté par blubliblo . Évalué à 1.
L'autre aspect, que même une hygiène de code drastique en C++ ne peut éviter, est le "cout logiciel" du C++ en lui-même. Voir:
- front-end C++ de GCC
- libstdc++
- ABI C++
[^] # Re: Vala ?
Posté par tanguy_k (site web personnel) . Évalué à 3.
En meme temps, si c'est pour un petit projet perso pourquoi pas :)
[^] # Re: Vala ?
Posté par Axioplase ıɥs∀ (site web personnel) . Évalué à 2.
Ben oui, justement ! Pourquoi C++ et pas Scheme ou Common Lisp ?
[^] # Re: Vala ?
Posté par téthis . Évalué à 4.
Relecture fail!
The capacity of the human mind for swallowing nonsense and spewing it forth in violent and repressive action has never yet been plumbed. -- Robert A. Heinlein
# Superbe nouvelle
Posté par manatlan (site web personnel) . Évalué à 5.
Je suis maintenant mono-free ;-)
C'est vraiment une excellente nouvelle ...
[^] # Re: Superbe nouvelle
Posté par blubliblo . Évalué à 5.
[^] # Re: Superbe nouvelle
Posté par manatlan (site web personnel) . Évalué à 2.
un simple "mv ~/.tomboy/*.note ~/.gnote", et un "sudo apt-get purge tomboy" ;-)
ça se lance à la vitesse de la lumière, et ça prends rien en ressources (--> je vais le mettre en lancement au démarrage session ;-) )
que du bonheur ;-)
[^] # Re: Superbe nouvelle
Posté par manatlan (site web personnel) . Évalué à 3.
j'ai poussé le vice jusqu'à un "sudo apt-get purge mono-common" ;-)
(103Mo de libs mono en moins ... ça faisait cher pour juste tomboy)
[^] # Re: Superbe nouvelle
Posté par nicko . Évalué à 5.
[^] # Re: Superbe nouvelle
Posté par liberforce (site web personnel) . Évalué à 3.
[^] # Re: Superbe nouvelle
Posté par manatlan (site web personnel) . Évalué à 2.
car en pleine dist-upgrade de jaunty beta vers jaunty rc ...
(ça doit pas faire loinde 100mo en moins à DL)
# C'est quoi ?
Posté par Anthony Jaguenaud . Évalué à 3.
[^] # Re: C'est quoi ?
Posté par sanao . Évalué à 1.
Son équivalent KDE serait BasKet : http://basket.kde.org/
[^] # Re: C'est quoi ?
Posté par boulde . Évalué à 2.
[^] # Re: C'est quoi ?
Posté par seginus . Évalué à 1.
[^] # Re: C'est quoi ?
Posté par Anonyme . Évalué à 1.
# Python, Ruby, etc
Posté par seginus . Évalué à 2.
Parce que personnellement, j'aurai tendance à pense que le le c, c++ etc est plus adapté à du code demandant de fortes ressources (créations des libs, codecs, algorithmes de calculs, etc) et les languages de très haut niveau tels Python, Ruby et autres pour la création d'interface.
En effet, quelles différences de performances pour la création d'une « boite à boutons » en c et en python ?
La complexité de programmation (et donc de maintenances, etc) a-t-elle ici une utilité ?
[^] # Re: Python, Ruby, etc
Posté par Dup (site web personnel) . Évalué à 2.
python, ruby, perl, mono, quel sera le prochain ?
[^] # Re: Python, Ruby, etc
Posté par liberforce (site web personnel) . Évalué à 2.
http://www.figuiere.net/hub/blog/?2006/07/26/428-porting-tom(...)
[^] # Re: Python, Ruby, etc
Posté par JoeltheLion (site web personnel) . Évalué à 6.
Parce que personnellement, j'aurai tendance à pense que le le c, c++ etc est plus adapté à du code demandant de fortes ressources (créations des libs, codecs, algorithmes de calculs, etc) et les languages de très haut niveau tels Python, Ruby et autres pour la création d'interface.
C'est sûr que l'avantage du c++ est plus marqué pour les trucs qui consomment beaucoup de ressources, mais même pour une application simple comme tomboy, ça fait une différence, et si tu comptes le nombre de petites applis qu'on a sur un pc standard et que tu les additionnes, tu verras l'intérêt de les écrire dans un langage qui permet une bonne vitesse à l'éxécution.
Je n'ai rien contre les langages de haut niveau, mais à mon sens c'est plus pour faire du prototypage ou des projets limités que pour distribuer à la moitié de la planète.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.