>> Avec Skype, bien que le protocole soit distribué, le binaire est unique, ce qui fait qu'en cas de panne, vu que le client est aussi nœud pour d'autres, tu peux faire écrouler le réseau.
Ça veut dire quoi « le binaire est unique » ?
Quand j'éteins mon ordi, le réseau Skype ne s'écroule pas !
Par ailleurs, quand le réseau est tombé, je n'avais plus accès à l'Europe (et je ne sais pas si c'est rétabli) mais je pouvais toujours appeler le Japon.
1/ si l'admin réseau est incompétent ? C'est je crois bien le cas, avec la solution miracle "j'héberge mon jabber pour moi et mes potes". C'est aussi pas son métier de gérer son jabber, ça relève souvent plus du hobby le week end et le soir.
2/ "Je peux toujours communiquer". J'ai l'impression de lire en gros (et sans cesse) "si SFR est en panne, je prend mon téléphone orange, qu'il est bien qu'il est compatible GSM." Oui, bien sûr que tu peux, mais *personne* n'a de cellulaire de rechange ou ne va s'offrir un autre abonnement pour pallier une panne.
La répartition des emmerdes est différentes, mais dans le cas présent, le service vaut *vraiment* la peine. Je suis bien content de ne pas avoir à gérer mon serveur skype, de ne pas dépendre du serveur de mon pote qui est parti en vacances au ski lors de la panne de courant chez lui...
Autant j'aurais réagi comme ça il y a encore 3 ans, autant ça m'a passé, et je préfère les solutions qui me satisfont en pratique à celles qui flattent mon côté barbu. Tant qu'il n'y aura pas de solution viable, je resterai sur Skype. Et il y a fort à parier qu'une alternative à succès demandera un tel investissement technique que ça finira de toute façon en quasi monopole...
>> Bah au moins ils vont pouvoir me le réparer plus rapidement que si c'était l'ensemble des clients qui étaient impactés
FUD !
Là, je dis non.
Surtoutvu l'arguement "j'héberge mon jabber moi-même, et pour mes copains", qui est généralement tout sauf un hébergement pro avec garanties de service...
Quand tu appelles le service après-vente, que tu dis que ton machin est cassé, et que l'opérateur te répond "pourtant chez un autre client ça marche. Vous êtes pas seul sur la planète, hein" ça te fait une belle jambe, non ?
>> Après, que tu choisisses google, jabber.fr ou ton autohébergement, ça ne change rien à l'histoire
Si, ça change tout, et c'est précismment de ça qu'il parle !
Je veux te parler, ton serveur tombe en panne, ben c'est foutu.
Je veux te parler mon serveur tombe en panne, c'est foutu aussi.
Il y a plus de risques de communications qui ne passent pas. La disponibilité *globale* du système est sans doute meilleure avec Jabber, mais la disponibilité locale est moindre par conception.
Que ce soit ton serveur, le mien, ou celui du service unique, du moment qu'il m'affecte moi, c'est la même chose : l'impossibilité de communiquer par le biais voulu.
C'est ce que Zenitram (je crois bien) et moi défendons dans les faits avec Skype, en plus du "ça marche".
Personne ne voudrait d'un service ou exactement la moitié des serveurs est en panne un jour sur deux. Pourtant, tu pourrais toujours dire que jabber marche tous les jours, et ça serait vrai...
>> C'est une belle démonstration pratique des problèmes de dépendance à un fournisseur unique dans les systèmes centralisés.
Noël ou pas, c'est 'dredi.
Alors je dis que fournisseur unique ou pas, quand ça marche, ça marche. Et plutôt bien. Chez moi, chez mes parents, chez ma blonde, chez ma grand-mère… Sur Debian GNU/Linux, sur Windows, sur OSX (j'ai pas testé la vidéo sur FreeBSD). Pas besoin de régler de firewall, de NAT.
Si le prix à payer, c'est une panne de deux jours une fois tous les cinq ans, ben crois moi, je suis satisfait du service.
La dernière fois que gmail était tombé en rade aussi, ça avait fait du boucan d'ailleurs, mais la qualité du webmail fait que toujours plus de gens l'utilisent (même si pour ma part, y a pas mal du trucs qui m'insupportent et que j'aimerais voir améliorés.)
Mais sinon, c'est un *service*.
Si c'était ton troll, alors je crois qu'un service n'a *aucune* raison d'être sous GPL.
En plus, GPL.sapue.fr (contrairement à BSD¹)
¹: pan ! mange-toi ton troll du dredi dans les dents !
1. Je lis la news, j'essaye de comprendre de quoi il s'agit.
2. Je clique sur envoyer un commentaire.
3. Le système m'informe que je ne suis pas connecté.
4. Je tape mon identifiant et mon mot de passe.
5. Le système refuse de m'authentifier
Et voilà ! Finies les conneries !
Super facile à intégrer à la version RoR, en plus !
Oui oui, on est d'accord :)
C'est juste que = n'est pas un opérateur d'égalité (ou d'assignation), mais de « matching » (ou d'assignation).
Pour moi, un opérateur d'égalité rend une valeur vraie en cas d'égalité, et une valeur fausse en cas de différence. Comme je le faisais remarquer,
X=3, % assigne
Y=4, % assigne
X=Y. % lance une exception
montre bien qu' = n'est pas un test d'égalité.
C'est un truc que je trouve laid, mais auquel on s'habitue vite, car ça a ses avantages pratiques quand on code.
>> Encore une fois, le comportement "variable existante = test d'égalité" de Erlang est parfois bien pratique (si on sait définir l'égalité).
En fait, c'est du pattern matching plus qu'un test d'égalité.
Ça retourne l'objet matché, et fait potentiellement des déclarations si des noms de variables non associés sont utilisés. [3=3,_=3,3==3,{Z,_}={42,3}].
==> [3,3,true,{42,3}]
Z.
==> 42
Si je fais 1=2 j'obtiens ** exception error: no match of right hand side value 2
>> Je crois que c'est la principal question à se poser : pour quel usage le langage d'apprentissage doit-il être choisi ?
Question inutile.
Tu prends Scheme/Common Lisp, c'est fait pour tous les usages :)
T'as du fonctionnel, de l'impératif, de l'objet, du concurrent (à la Erlang, avec Termite/Gambit-C), etc.
Ça marche pour les calculs matheux (maxima), pour le jeu vidéo (abuse, farmageddon (sur iphone !)), pour comparer les prix les moins chers de vols en avion (itasoftware), pour animer la tête de Gollum dans Le seigneur des anneaux (Mirai), pour faire des serveurs webs ultra rapides (teeteepeedee), des WM (stump), etc.
Un truc de ce genre, ptet ?
-module(toto).
-export([main/0]).
%% Retourne {false,3}
foo() ->
X = 3, % Assigne
R = case {1,2} of
{X,_} -> true; % teste si la première projection vaut 3. Vrai si oui,
_ -> false % Faux si non.
end,
{R,X}.
%% Retourne {true,1}
bar() ->
case {1,2} of
{X,_} -> X = X; % teste si la valeur est une paire, si oui, lie X et 1, puis
% vérifie via pattern match si X = X est vrai.
_ -> X = ohmygod % assigne ohmygod à X sinon
end, %% Maintenant, X vaut 1, alors qu'on est sorti de la portée du CASE
{true,X}.
% Que retourne cette fonction?
% quux() ->
% X = 41,
% X = 42.
>> Le problème, c'est que les parenthèses retirent l'ambiguïté au niveau du compilateur / interpréteur, mais qu'au niveau du programmeur humain la chose la plus visuelle est l'indentation.
C'est pas un problème !
C'est même un avantage certain !
Vu que les parenthèses reflètent la structure du code, tu peux, de manière automatique et sans ambiguïté, recréer l'indentation, la bonne seule et unique qui correspond à l'intention du programmeur (s'il a écrit ce qu'il voulait écrire), et à celle de toute personne qui sait lire un programme.
Donc, impossible de se tromper, vu que l'indentation *dépend* du parenthésage, et que le parenthésage est en bijection avec la structure intentionnelle du code.
[^] # Re: explications...
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse à la dépêche Whippet : un langage de script sans prétentions. Évalué à 4.
[^] # Re: Jabber HS hier soir
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse au journal Skype HS hier soir. Évalué à 2.
Ça veut dire quoi « le binaire est unique » ?
Quand j'éteins mon ordi, le réseau Skype ne s'écroule pas !
Par ailleurs, quand le réseau est tombé, je n'avais plus accès à l'Europe (et je ne sais pas si c'est rétabli) mais je pouvais toujours appeler le Japon.
[^] # Re: Jabber HS hier soir
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse au journal Skype HS hier soir. Évalué à 1.
2/ "Je peux toujours communiquer". J'ai l'impression de lire en gros (et sans cesse) "si SFR est en panne, je prend mon téléphone orange, qu'il est bien qu'il est compatible GSM." Oui, bien sûr que tu peux, mais *personne* n'a de cellulaire de rechange ou ne va s'offrir un autre abonnement pour pallier une panne.
La répartition des emmerdes est différentes, mais dans le cas présent, le service vaut *vraiment* la peine. Je suis bien content de ne pas avoir à gérer mon serveur skype, de ne pas dépendre du serveur de mon pote qui est parti en vacances au ski lors de la panne de courant chez lui...
Autant j'aurais réagi comme ça il y a encore 3 ans, autant ça m'a passé, et je préfère les solutions qui me satisfont en pratique à celles qui flattent mon côté barbu. Tant qu'il n'y aura pas de solution viable, je resterai sur Skype. Et il y a fort à parier qu'une alternative à succès demandera un tel investissement technique que ça finira de toute façon en quasi monopole...
[^] # Re: Avis d'un dev Jingle
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse au journal Skype HS hier soir. Évalué à -1.
FUD !
Là, je dis non.
Surtoutvu l'arguement "j'héberge mon jabber moi-même, et pour mes copains", qui est généralement tout sauf un hébergement pro avec garanties de service...
[^] # Re: Avis d'un dev Jingle
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse au journal Skype HS hier soir. Évalué à 1.
C'est pas parce que ça marche chez les autres que je dois me sentir satisfait.
[^] # Re: Avis d'un dev Jingle
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse au journal Skype HS hier soir. Évalué à 2.
[^] # Re: Jabber HS hier soir
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse au journal Skype HS hier soir. Évalué à 2.
Si, ça change tout, et c'est précismment de ça qu'il parle !
Je veux te parler, ton serveur tombe en panne, ben c'est foutu.
Je veux te parler mon serveur tombe en panne, c'est foutu aussi.
Il y a plus de risques de communications qui ne passent pas. La disponibilité *globale* du système est sans doute meilleure avec Jabber, mais la disponibilité locale est moindre par conception.
Que ce soit ton serveur, le mien, ou celui du service unique, du moment qu'il m'affecte moi, c'est la même chose : l'impossibilité de communiquer par le biais voulu.
C'est ce que Zenitram (je crois bien) et moi défendons dans les faits avec Skype, en plus du "ça marche".
Personne ne voudrait d'un service ou exactement la moitié des serveurs est en panne un jour sur deux. Pourtant, tu pourrais toujours dire que jabber marche tous les jours, et ça serait vrai...
[^] # Re: Jabber HS hier soir
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse au journal Skype HS hier soir. Évalué à 1.
C'est gentil pour tes utilisateurs.
[^] # Re: Avis d'un dev Jingle
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse au journal Skype HS hier soir. Évalué à 3.
# Au moins
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse au journal Skype HS hier soir. Évalué à 3.
Noël ou pas, c'est 'dredi.
Alors je dis que fournisseur unique ou pas, quand ça marche, ça marche. Et plutôt bien. Chez moi, chez mes parents, chez ma blonde, chez ma grand-mère… Sur Debian GNU/Linux, sur Windows, sur OSX (j'ai pas testé la vidéo sur FreeBSD). Pas besoin de régler de firewall, de NAT.
Si le prix à payer, c'est une panne de deux jours une fois tous les cinq ans, ben crois moi, je suis satisfait du service.
La dernière fois que gmail était tombé en rade aussi, ça avait fait du boucan d'ailleurs, mais la qualité du webmail fait que toujours plus de gens l'utilisent (même si pour ma part, y a pas mal du trucs qui m'insupportent et que j'aimerais voir améliorés.)
[^] # Re: Avis d'un dev Jingle
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse au journal Skype HS hier soir. Évalué à 2.
Avec le même compte ?
(J'en sais rien, j'ai pas lancé mon jabber (ni mon msn, icq, yahoochat, etc) depuis…fiou… longtemps…)
[^] # Re: Et la licence ?
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse au journal saimal.fr RIP?. Évalué à 3.
Mais sinon, c'est un *service*.
Si c'était ton troll, alors je crois qu'un service n'a *aucune* raison d'être sous GPL.
En plus, GPL.sapue.fr (contrairement à BSD¹)
¹: pan ! mange-toi ton troll du dredi dans les dents !
# Heureusement il y a une alternative !
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse au journal saimal.fr RIP?. Évalué à 6.
# Facile !
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse au journal Proposition de fonctionnalité anti-connerie pour la nouvelle version de Linuxfr. Évalué à 4.
2. Je clique sur envoyer un commentaire.
3. Le système m'informe que je ne suis pas connecté.
4. Je tape mon identifiant et mon mot de passe.
5. Le système refuse de m'authentifier
Et voilà ! Finies les conneries !
Super facile à intégrer à la version RoR, en plus !
[^] # Re: Mais qui valide la publication de ces torchons ?
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse à la dépêche Le FBI a-t-il introduit des portes dérobées dans OpenBSD ?. Évalué à 3.
[^] # Re: Synchrones
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse à la dépêche Apprendre un langage de programmation par an. Évalué à 2.
Mais j'ai eu des cours d'Esterel et de Lustre autrefois, et je trouve que c'est sympa la programmation synchrone ou réactive.
[^] # Re: 3 type de langage a connaitre:
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse à la dépêche Apprendre un langage de programmation par an. Évalué à 2.
Ne serait-ce que prolog (puis langage synchrone, comme dit dans mon message plus bas).
Lisp, c'est pas tant la peine si c'est juste pour apprendre les concepts et qu'il a déjà l'objet, l'impératif et le fonctionnel en poche.
# Synchrones
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse à la dépêche Apprendre un langage de programmation par an. Évalué à 2.
Ça aussi, c'est fun !
(Ni intercal ou unlambda, mais c'est une autre histoire…)
[^] # Re: Mainstream || hype || marginal
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse à la dépêche Apprendre un langage de programmation par an. Évalué à 2.
[^] # V
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse à la dépêche Apprendre un langage de programmation par an. Évalué à 2.
C'est juste que = n'est pas un opérateur d'égalité (ou d'assignation), mais de « matching » (ou d'assignation).
Pour moi, un opérateur d'égalité rend une valeur vraie en cas d'égalité, et une valeur fausse en cas de différence. Comme je le faisais remarquer,
X=3, % assigne
Y=4, % assigne
X=Y. % lance une exception
montre bien qu' = n'est pas un test d'égalité.
C'est un truc que je trouve laid, mais auquel on s'habitue vite, car ça a ses avantages pratiques quand on code.
[^] # Re: Erlang
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse à la dépêche Apprendre un langage de programmation par an. Évalué à 2.
En fait, c'est du pattern matching plus qu'un test d'égalité.
Ça retourne l'objet matché, et fait potentiellement des déclarations si des noms de variables non associés sont utilisés.
[3=3,_=3,3==3,{Z,_}={42,3}].
==> [3,3,true,{42,3}]
Z.
==> 42
Si je fais
1=2
j'obtiens** exception error: no match of right hand side value 2
[^] # Re: Mainstream || hype || marginal
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse à la dépêche Apprendre un langage de programmation par an. Évalué à 4.
Question inutile.
Tu prends Scheme/Common Lisp, c'est fait pour tous les usages :)
T'as du fonctionnel, de l'impératif, de l'objet, du concurrent (à la Erlang, avec Termite/Gambit-C), etc.
Ça marche pour les calculs matheux (maxima), pour le jeu vidéo (abuse, farmageddon (sur iphone !)), pour comparer les prix les moins chers de vols en avion (itasoftware), pour animer la tête de Gollum dans Le seigneur des anneaux (Mirai), pour faire des serveurs webs ultra rapides (teeteepeedee), des WM (stump), etc.
[^] # Re: Différents langages
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse à la dépêche Apprendre un langage de programmation par an. Évalué à 4.
Tu réécris DLFP en Lisaac ?
[^] # Re: Erlang
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse à la dépêche Apprendre un langage de programmation par an. Évalué à 2.
-module(toto).
-export([main/0]).
%% Retourne {false,3}
foo() ->
X = 3, % Assigne
R = case {1,2} of
{X,_} -> true; % teste si la première projection vaut 3. Vrai si oui,
_ -> false % Faux si non.
end,
{R,X}.
%% Retourne {true,1}
bar() ->
case {1,2} of
{X,_} -> X = X; % teste si la valeur est une paire, si oui, lie X et 1, puis
% vérifie via pattern match si X = X est vrai.
_ -> X = ohmygod % assigne ohmygod à X sinon
end, %% Maintenant, X vaut 1, alors qu'on est sorti de la portée du CASE
{true,X}.
% Que retourne cette fonction?
% quux() ->
% X = 41,
% X = 42.
main() ->
%io:format("~w, ~w, ~w~n",[foo(),bar(),quux()]).
io:format("~w, ~w~n",[foo(),bar()]).
[^] # Re: LISP
Posté par Axioplase ıɥs∀ (site web personnel) . En réponse à la dépêche Apprendre un langage de programmation par an. Évalué à 6.
C'est pas un problème !
C'est même un avantage certain !
Vu que les parenthèses reflètent la structure du code, tu peux, de manière automatique et sans ambiguïté, recréer l'indentation, la bonne seule et unique qui correspond à l'intention du programmeur (s'il a écrit ce qu'il voulait écrire), et à celle de toute personne qui sait lire un programme.
Donc, impossible de se tromper, vu que l'indentation *dépend* du parenthésage, et que le parenthésage est en bijection avec la structure intentionnelle du code.