Complètement. Dans le meilleur des cas, on se dit que si le logiciel est bien, après un petit moment, on fera un don. Et puis on oublie. Mais la plupart du temps, c'est gratuit, on prend. C'est humain.
Rhaaa, flûteuuuu, il s'agit en effet de la groseille à maquereau, également, si l'on en croit Wikipédia, appelée croupoux, croque poux, gratte poux, ou pétasse (!). Je m'en vais réviser tous mes fruits rouges (avec travaux pratiques!).
Leur site est très joli, mais un peu fouillis, j'ai failli abandonner quand, à force de cliquer, je me suis retrouvé à promettre $1000 sans savoir comment annuler… Je vais me refaire une cure de Big Bucks Bunny pour faire passer.
Intéressant, l'article reflète bien les avantages de Blender pour obtenir ce genre d'icônes: approche vectorielle, textures procédurales, et résultat plus réaliste.
J'adore Blender. Je m'en sers plus particulièrement pour modeler des icônes pour mes applications, je trouve que cela permet une approche plus précise et un bien meilleur rendu que mes tentatives "à main levée" dans Gimp ou même Inkscape.
Il est facile d'ajuster le modèle, de changer un angle de caméra, de bidouiller une couleur ou une texture, et avec quelques outils de base, modelage par extrusion, textures procédurales pour la couleur et pour les normales, on atteint quelque chose de plutôt joli.
Une même requête ne peut malheureusement pas tourner sur plusieurs CPUs en parallèle dans Postgresql. De ce que j'en comprends, ce serait assez difficile à mettre en oeuvre, en particulier parce que Postgresql n'utilise pas de threads, mais de multiples processus, mais les développeurs y travaillent (voir par exemple http://www.databasesoup.com/2013/05/postgresql-new-development-priorities-4_20.html)
Pour moi, les grosses questions seront: est-ce que ce sera libre? Est-ce que je serai root dessus? Est-ce que je pourrai installer n'importe quel paquet Ubuntu? Et est-ce que Steam fournira des jeux?
Je me tâte vraiment à participer, mais c'était plutôt une tablette libre, que je voulais… (Vivaldi a l'air de bouger?)
En effet, c'est à Londres, et d'autant que je puisse comparer nous payons bien nos développeurs.
Je ne compte pas recevoir des réponses parfaites à toutes mes questions. Le but est de faire réfléchir le candidat, et s'il ne connaît pas par coeur la complexité d'insertion dans un std::set, c'est une bonne occasion de le faire réfléchir sur les opérations de base sur les arbres binaires.
Mais au final, c'est l'attitude qui compte le plus. On fait tous des erreurs et on ne peut pas tout savoir, mais l'envie d'apprendre et de s'améliorer, la petite étincelle dans les yeux quand ils découvrent quelque chose de nouveau, c'est ce qui fait généralement le bon candidat, je trouve. La manière dont un candidat va réagir lorsqu'on lui donne finalement la réponse à un problème sur lequel il vient de plancher est incroyablement utile pour le juger, d'ailleurs. Et j'ai horreur des entretiens dans lesquels on ne donne pas la réponse au candidat à la fin. C'est généralement le signe que les questions cherchent à coller ou à coincer le candidat, plutôt qu'à démarrer la conversation lui laissant sa chance de montrer là où il est bon.
Ma première question en entretien (C++): "Quel est ton conteneur préféré?". Ensuite, je les grille dessus. Complexité de toutes les opérations, détails d'implémentation, efficacité vis à vis des caches du CPU, algorithmes standards (fusion de deux conteneurs triés…). Quant on est allé au fond des choses, je fais écrire un peu de code avec des templates (par exemple, retourner le max d'un conteneur), ce qui permet de reparler un peu des performances (incrémenter un itérateur de vecteur et un itérateur de liste, par exemple).
Après, quelques questions de culture générale sur les ordres de grandeur en temps pour accéder à un registre, la mémoire cache, la mémoire, le disque, et le réseau.
On parle ensuite un petit peu multithread, de réseau, de SQL.
Enfin, je les fait parler un peu de leur expérience, en leur demandant ce qu'ils considèrent comme étant la chose la plus difficile qu'ils aient faite cette année.
Tout à fait. Depuis l'apparition en standard des std::unique_ptr et des std::shared_ptr, je n'ai pas encore rencontré de cas où j'aurais eu envie d'un ramasse-miettes. Cela me semble très à l'opposé des principes du langage, très déterministe, très RAII, et un poil TOC sur les bords avec la mémoire. Mais bon, c'est comme les singletons: ce n'est pas parce que c'est possible qu'une bonne base de code doit l'utiliser.
J'ai convaincu mon employeur de passer à C++11, et c'est très plaisant d'utiliser les listes d'initialisation, les variables auto, et bien sûr la sémantique de déplacement. Le gain de performances lors de la redimension de vecteurs de pointeurs partagés est impressionnant.
C'est une nouvelle vie pour le langage, et ça me donne une bonne excuse pour passer du temps sur les nouveaux Guru of the Week d'Herb Sutter.
J'avais parlé de mon projet Médoc. J'en suis à plus de 200 documents et 300MB de données.
De manière générale, numériser et archiver proprement ses documents prend un peu de temps, mais le retour sur investissement est très bon, surtout quand on a pas la place d'avoir un beau range-documents bien classé.
Si je comprends bien, c'est différent: ils s'étaient vendus à O2, mais gardaient leur propre réseau et support. Là, c'est tous les abonnés qui vont passer au réseau de Sky. Leur FAQ est un peu courte, mais cela donne l'impression que BE va être phagocytée et disparaître…
Be There, très bien! J'apprécie le côté pro, on a immédiatement quelqu'un au téléphone, et un système de tickets sur leur site Web permet de savoir exactement où on en est. L'on reçoit des SMS lorsqu'ils prévoient des travaux qui pourraient affecter la connexion.
Malheureusement, ils viennent de se vendre au grand méchant Sky. J'appréhende.
C'est pertinent. Mon cas est un peu particulier: la migration était "obligatoire", et passer à MySQL, nous forçant à émuler tout un tas de fonctionnalités, aurait été bien pire. La base est stable, donc peu de changements. Et enfin, l'environnement dit "d'intégration", où les tests grandeur nature se font, reste sous DB2.
Dans l'absolu, je suis d'accord que toute différence entre la prod et le test est une catastrophe en devenir.
Mes DBAs sont fans de Postgresql, mais n'ont pas réussi à convaincre leur management. Quelque part, cela se tient: ils doivent déjà supporter MySQL, Oracle, DB2 et Sybase, et tentent de réduire leur offre à Sybase pour les applications critiques, et MySQL pour les autres. Alors en proposer un de plus…
Par contre, quand j'ai expliqué à notre propre management que je ne pouvais pas remplacer notre base DB2 par MySQL, mais que je pouvais par contre passer "en douce" sous Postgres pour nos environnements de test, économisant ainsi des centaines de milliers de $, ça leur a plu. On ne passera jamais à Postgres en production, parce que nous avons besoin d'un vrai support de nos DBAs. Mais, comme dirait l'autre, il n'est pas interdit d'être habile.
Ce qui m'a toujours beaucoup rebuté dans l'édition de partitions, c'est la lenteur à laquelle j'arrive à entrer les notes. C'est rageant d'aller beaucoup plus vite avec un crayon qu'avec un clavier.
Le cliquodrome, peu précis, fait rapidement très mal à la main, et je n'ai pas encore trouvé d'éditeur dont le mode d'édition complètement au clavier me satisfasse.
Peut-être une combinaison clavier pour le rythme, et piano midi pour la hauteur du son?
Quelle est ta méthode préférée, et à quelle vitesse arrives-tu à créer tes partitions?
Je suis fan de types fantômes, et j'en colle partout (trop?). Mais quand je fais du C++ en lieu et place d'OCaml, je m'assure de toujours avoir dans un coin ma template StrongId:
template<typename DISCRIMINANT, typename TYPE>
class StrongId
{
public:
StrongId(const TYPE & type):
_type(type)
{
}
bool operator==(const StrongId<DISCRIMINANT, TYPE> & other)
{
return _type == other._type;
}
TYPE _type;
};
class DistanceDiscriminant;
class TempsDiscriminant;
typedef StrongId<DistanceDiscriminant, int> DistanceT;
typedef StrongId<TempsDiscriminant, int> TempsT;
int main()
{
DistanceT d1(1);
DistanceT d2(2);
d1 == d2;
TempsT t1(1);
d1 == t1; // Erreur de compile
}
Il est ensuite possible d'ajouter des méthodes supplémentaires pour comparer, sérialiser, afficher… Voire de rajouter un peu de template magic pour permettre de diviser une distance par un temps et d'obtenir une vitesse.
Je suis plutôt content de ma HP OfficeJet 6500, qui fait fax, scanner, et imprimante, via le réseau. Le driver hplip est dans les paquets Debian, la configuration est aisée, et une fois que c'est dans Cups, ça marche tout seul. Je ne suis pas sûr des capacités d'impression de photos, en revanche.
LWT est très bien, mais il faut s'accrocher au début pour comprendre comment l'utiliser, et comment adapter ses bibliothèques non coopératives. Une fois qu'on a compris, vient la phase où on veut tout faire en coopératif :)
Ayant présenté Médoc il y a quelques temps, je suis ravi de voir d'autres approches pour résoudre le problème de la paperasse qui s'accumule. Ton logiciel m'a l'air beaucoup plus intégré, ce qui est un plus: Médoc reste particulièrement crampon à installer.
De manière générale, je trouve l'OCR plutôt moins utile que les tags, parce que typiquement je cherche la "facture EDF d'il y a 2 ou 3 mois", plutôt que des mots spécifiques au document, mais c'est peut-être ma manière de chercher.
J'ai aussi pas mal creusé du côté des formats, et je trouve le PDF assez nul, au final. Je suis tout à fait satisfait de mes bons vieux JPEG, qui au moins sont triviaux à lire. Puis-je te demander quel format tu utilises pour tes documents?
[^] # Re: Prix
Posté par small_duck (site web personnel) . En réponse au sondage Quels sont les critères de choix pour adopter un logiciel libre pour un non informaticien ?. Évalué à 2.
Complètement. Dans le meilleur des cas, on se dit que si le logiciel est bien, après un petit moment, on fera un don. Et puis on oublie. Mais la plupart du temps, c'est gratuit, on prend. C'est humain.
[^] # Re: Vive la canneberge
Posté par small_duck (site web personnel) . En réponse à la dépêche Blender annonce le projet Gooseberry de campagne de dons pour film libre. Évalué à 2.
Rhaaa, flûteuuuu, il s'agit en effet de la groseille à maquereau, également, si l'on en croit Wikipédia, appelée croupoux, croque poux, gratte poux, ou pétasse (!). Je m'en vais réviser tous mes fruits rouges (avec travaux pratiques!).
# Vive la canneberge
Posté par small_duck (site web personnel) . En réponse à la dépêche Blender annonce le projet Gooseberry de campagne de dons pour film libre. Évalué à 0.
Souscription démarrée, plus qu'à être patient :)
Leur site est très joli, mais un peu fouillis, j'ai failli abandonner quand, à force de cliquer, je me suis retrouvé à promettre $1000 sans savoir comment annuler… Je vais me refaire une cure de Big Bucks Bunny pour faire passer.
[^] # Re: Blender et le programmer's art
Posté par small_duck (site web personnel) . En réponse à la dépêche Blender 2.69. Évalué à 2.
Intéressant, l'article reflète bien les avantages de Blender pour obtenir ce genre d'icônes: approche vectorielle, textures procédurales, et résultat plus réaliste.
Mes quelques tentatives dans ce domaine: http://aubedesheros.blogspot.co.uk/search/label/blender
En particulier, j'ai pris note de comment obtenir un arrière-plan transparent pour le rendu PNG, ce qui change complètement la vie.
# Blender et le programmer's art
Posté par small_duck (site web personnel) . En réponse à la dépêche Blender 2.69. Évalué à 4.
J'adore Blender. Je m'en sers plus particulièrement pour modeler des icônes pour mes applications, je trouve que cela permet une approche plus précise et un bien meilleur rendu que mes tentatives "à main levée" dans Gimp ou même Inkscape.
Il est facile d'ajuster le modèle, de changer un angle de caméra, de bidouiller une couleur ou une texture, et avec quelques outils de base, modelage par extrusion, textures procédurales pour la couleur et pour les normales, on atteint quelque chose de plutôt joli.
[^] # Re: Hints ?
Posté par small_duck (site web personnel) . En réponse à la dépêche PostgreSQL 9.3. Évalué à 4.
Une même requête ne peut malheureusement pas tourner sur plusieurs CPUs en parallèle dans Postgresql. De ce que j'en comprends, ce serait assez difficile à mettre en oeuvre, en particulier parce que Postgresql n'utilise pas de threads, mais de multiples processus, mais les développeurs y travaillent (voir par exemple http://www.databasesoup.com/2013/05/postgresql-new-development-priorities-4_20.html)
# Bon, mais alors, c'est libre?
Posté par small_duck (site web personnel) . En réponse au journal Ubuntu Edge : Révolution ou bide annoncé ?. Évalué à 10.
Pour moi, les grosses questions seront: est-ce que ce sera libre? Est-ce que je serai root dessus? Est-ce que je pourrai installer n'importe quel paquet Ubuntu? Et est-ce que Steam fournira des jeux?
Je me tâte vraiment à participer, mais c'était plutôt une tablette libre, que je voulais… (Vivaldi a l'air de bouger?)
[^] # Re: Mes questions
Posté par small_duck (site web personnel) . En réponse au journal Ce qu'on demande à un développeur aujourd'hui. Évalué à 3.
En effet, c'est à Londres, et d'autant que je puisse comparer nous payons bien nos développeurs.
Je ne compte pas recevoir des réponses parfaites à toutes mes questions. Le but est de faire réfléchir le candidat, et s'il ne connaît pas par coeur la complexité d'insertion dans un std::set, c'est une bonne occasion de le faire réfléchir sur les opérations de base sur les arbres binaires.
Mais au final, c'est l'attitude qui compte le plus. On fait tous des erreurs et on ne peut pas tout savoir, mais l'envie d'apprendre et de s'améliorer, la petite étincelle dans les yeux quand ils découvrent quelque chose de nouveau, c'est ce qui fait généralement le bon candidat, je trouve. La manière dont un candidat va réagir lorsqu'on lui donne finalement la réponse à un problème sur lequel il vient de plancher est incroyablement utile pour le juger, d'ailleurs. Et j'ai horreur des entretiens dans lesquels on ne donne pas la réponse au candidat à la fin. C'est généralement le signe que les questions cherchent à coller ou à coincer le candidat, plutôt qu'à démarrer la conversation lui laissant sa chance de montrer là où il est bon.
# Mes questions
Posté par small_duck (site web personnel) . En réponse au journal Ce qu'on demande à un développeur aujourd'hui. Évalué à 0.
Ma première question en entretien (C++): "Quel est ton conteneur préféré?". Ensuite, je les grille dessus. Complexité de toutes les opérations, détails d'implémentation, efficacité vis à vis des caches du CPU, algorithmes standards (fusion de deux conteneurs triés…). Quant on est allé au fond des choses, je fais écrire un peu de code avec des templates (par exemple, retourner le max d'un conteneur), ce qui permet de reparler un peu des performances (incrémenter un itérateur de vecteur et un itérateur de liste, par exemple).
Après, quelques questions de culture générale sur les ordres de grandeur en temps pour accéder à un registre, la mémoire cache, la mémoire, le disque, et le réseau.
On parle ensuite un petit peu multithread, de réseau, de SQL.
Enfin, je les fait parler un peu de leur expérience, en leur demandant ce qu'ils considèrent comme étant la chose la plus difficile qu'ils aient faite cette année.
Et puis, c'est à eux de poser des questions :)
[^] # Re: il manque une fonctionnalité inutile en c++, le ramasseur de miette
Posté par small_duck (site web personnel) . En réponse au journal C++11 : sur le fil. Évalué à 2.
Tout à fait. Depuis l'apparition en standard des std::unique_ptr et des std::shared_ptr, je n'ai pas encore rencontré de cas où j'aurais eu envie d'un ramasse-miettes. Cela me semble très à l'opposé des principes du langage, très déterministe, très RAII, et un poil TOC sur les bords avec la mémoire. Mais bon, c'est comme les singletons: ce n'est pas parce que c'est possible qu'une bonne base de code doit l'utiliser.
# On s'y met!
Posté par small_duck (site web personnel) . En réponse au journal C++11 : sur le fil. Évalué à 9. Dernière modification le 06 juin 2013 à 23:23.
J'ai convaincu mon employeur de passer à C++11, et c'est très plaisant d'utiliser les listes d'initialisation, les variables auto, et bien sûr la sémantique de déplacement. Le gain de performances lors de la redimension de vecteurs de pointeurs partagés est impressionnant.
C'est une nouvelle vie pour le langage, et ça me donne une bonne excuse pour passer du temps sur les nouveaux Guru of the Week d'Herb Sutter.
[^] # Re: Trollons
Posté par small_duck (site web personnel) . En réponse au journal OpenShot abandonne Gtk+.... Évalué à 3.
Et pgAdmin!
# Médoc
Posté par small_duck (site web personnel) . En réponse au journal Paperless.... Évalué à 2.
J'avais parlé de mon projet Médoc. J'en suis à plus de 200 documents et 300MB de données.
De manière générale, numériser et archiver proprement ses documents prend un peu de temps, mais le retour sur investissement est très bon, surtout quand on a pas la place d'avoir un beau range-documents bien classé.
[^] # Re: Be There
Posté par small_duck (site web personnel) . En réponse au sondage Votre FAI. Évalué à 1.
Si je comprends bien, c'est différent: ils s'étaient vendus à O2, mais gardaient leur propre réseau et support. Là, c'est tous les abonnés qui vont passer au réseau de Sky. Leur FAQ est un peu courte, mais cela donne l'impression que BE va être phagocytée et disparaître…
[^] # Re: Be There
Posté par small_duck (site web personnel) . En réponse au sondage Votre FAI. Évalué à 1.
Be There, très bien! J'apprécie le côté pro, on a immédiatement quelqu'un au téléphone, et un système de tickets sur leur site Web permet de savoir exactement où on en est. L'on reçoit des SMS lorsqu'ils prévoient des travaux qui pourraient affecter la connexion.
Malheureusement, ils viennent de se vendre au grand méchant Sky. J'appréhende.
[^] # Re: .
Posté par small_duck (site web personnel) . En réponse au journal Switch de MySQL vers MariaDB. Merci Oracle ?. Évalué à 1.
C'est pertinent. Mon cas est un peu particulier: la migration était "obligatoire", et passer à MySQL, nous forçant à émuler tout un tas de fonctionnalités, aurait été bien pire. La base est stable, donc peu de changements. Et enfin, l'environnement dit "d'intégration", où les tests grandeur nature se font, reste sous DB2.
Dans l'absolu, je suis d'accord que toute différence entre la prod et le test est une catastrophe en devenir.
[^] # Re: .
Posté par small_duck (site web personnel) . En réponse au journal Switch de MySQL vers MariaDB. Merci Oracle ?. Évalué à 1.
Mes DBAs sont fans de Postgresql, mais n'ont pas réussi à convaincre leur management. Quelque part, cela se tient: ils doivent déjà supporter MySQL, Oracle, DB2 et Sybase, et tentent de réduire leur offre à Sybase pour les applications critiques, et MySQL pour les autres. Alors en proposer un de plus…
Par contre, quand j'ai expliqué à notre propre management que je ne pouvais pas remplacer notre base DB2 par MySQL, mais que je pouvais par contre passer "en douce" sous Postgres pour nos environnements de test, économisant ainsi des centaines de milliers de $, ça leur a plu. On ne passera jamais à Postgres en production, parce que nous avons besoin d'un vrai support de nos DBAs. Mais, comme dirait l'autre, il n'est pas interdit d'être habile.
# Vitesse de frappe
Posté par small_duck (site web personnel) . En réponse au journal For musicians only (*). Évalué à 2.
Merci pour ce journal très complet!
Ce qui m'a toujours beaucoup rebuté dans l'édition de partitions, c'est la lenteur à laquelle j'arrive à entrer les notes. C'est rageant d'aller beaucoup plus vite avec un crayon qu'avec un clavier.
Le cliquodrome, peu précis, fait rapidement très mal à la main, et je n'ai pas encore trouvé d'éditeur dont le mode d'édition complètement au clavier me satisfasse.
Peut-être une combinaison clavier pour le rythme, et piano midi pour la hauteur du son?
Quelle est ta méthode préférée, et à quelle vitesse arrives-tu à créer tes partitions?
[^] # Re: ◉ Aucun
Posté par small_duck (site web personnel) . En réponse au sondage Avez-vous migré vers Gnome 3 ?. Évalué à 10.
Le temps de copier mon .emacs!
# En C++...
Posté par small_duck (site web personnel) . En réponse au journal Les types fantômes. Évalué à 9.
Je suis fan de types fantômes, et j'en colle partout (trop?). Mais quand je fais du C++ en lieu et place d'OCaml, je m'assure de toujours avoir dans un coin ma template StrongId:
Il est ensuite possible d'ajouter des méthodes supplémentaires pour comparer, sérialiser, afficher… Voire de rajouter un peu de template magic pour permettre de diviser une distance par un temps et d'obtenir une vitesse.
# L'avenir est à la décentralisation!
Posté par small_duck (site web personnel) . En réponse au journal Newton Adventure la soluce 2/6: terminer le Vatican sans papoter. Évalué à 3.
Bittorrent?
[^] # Re: Quelle imprimante jet d'encre actuellement ?
Posté par small_duck (site web personnel) . En réponse au sondage Quelle imprimante utilisez-vous le plus souvent ?. Évalué à 2.
Je suis plutôt content de ma HP OfficeJet 6500, qui fait fax, scanner, et imprimante, via le réseau. Le driver hplip est dans les paquets Debian, la configuration est aisée, et une fois que c'est dans Cups, ça marche tout seul. Je ne suis pas sûr des capacités d'impression de photos, en revanche.
[^] # Re: vitesse ?
Posté par small_duck (site web personnel) . En réponse à la dépêche Ocsigen : repenser le développement des applications HTML5. Évalué à 2.
LWT est très bien, mais il faut s'accrocher au début pour comprendre comment l'utiliser, et comment adapter ses bibliothèques non coopératives. Une fois qu'on a compris, vient la phase où on veut tout faire en coopératif :)
[^] # Re: Précisions sur la facilité de maintenance?
Posté par small_duck (site web personnel) . En réponse à la dépêche Ocsigen : repenser le développement des applications HTML5. Évalué à 1.
Toutafé: il est possible d'envoyer un signal au serveur Ocsigen pour lui faire recharger tous ses modules.
# Saine émulation
Posté par small_duck (site web personnel) . En réponse au journal Gérer sa paperasse quand on est une feignas^W^W un programmeur. Évalué à 4.
Ayant présenté Médoc il y a quelques temps, je suis ravi de voir d'autres approches pour résoudre le problème de la paperasse qui s'accumule. Ton logiciel m'a l'air beaucoup plus intégré, ce qui est un plus: Médoc reste particulièrement crampon à installer.
De manière générale, je trouve l'OCR plutôt moins utile que les tags, parce que typiquement je cherche la "facture EDF d'il y a 2 ou 3 mois", plutôt que des mots spécifiques au document, mais c'est peut-être ma manière de chercher.
J'ai aussi pas mal creusé du côté des formats, et je trouve le PDF assez nul, au final. Je suis tout à fait satisfait de mes bons vieux JPEG, qui au moins sont triviaux à lire. Puis-je te demander quel format tu utilises pour tes documents?