flan a écrit 1832 commentaires

  • [^] # Re: « impropre à la création d'applications web complexe » ?

    Posté par  (site web personnel) . En réponse au journal Normalisation du langage Dart de Google par l'Ecma. Évalué à 6.

    Je ne suis pas du tout d'accord. On ne trouve pas ça dans tous les langages, en tout cas pas à ce niveau.

    Sur wtfjs ou wtfphp, on parle de syntaxes qui ne font pas ce à quoi on pourrait logiquement s'attendre, ou qu'on ne peut pas prédire à la seule vue du code avant d'être déjà tombé sur ce cas pathologique.

    Au contraire, les trucs cités sur Python sont soit liés à la transition Python 2 -> Python 3 (dont le but est justement d'éliminer les bêtises de Python 2, donc, oui, il y a des incompatibilités), soit des trucs et astuces pour améliorer un code fonctionnel ; autrement dit, le code écrit fait bien ce qui est attendu, mais on peut faire plus efficace.

    Exemple de ce que tu cites sur stackoverflow :

    Don't
    for i in range(len(tab)) :
        print tab[i]
    Do :
    
    for elem in tab :
        print elem
    

    Les deux sont facilement compréhensibles, et font bien ce qui est attendu. Rien à voir avec ce qu'on trouve avec JS, où [,,,] est compris comme [,,],
    isFinite('42'); // true
    isFinite('hi'); // false

  • [^] # Re: Déploiement de Django

    Posté par  (site web personnel) . En réponse au journal Retour d'expérience sur la mise en ligne d'un nouveau site (Django). Évalué à 3.

    Pour faire rapidement :
    j'ai deux applications Django qui se ressemblent pas mal, avec chacune beaucoup de modèles (autour de la centaine).
    Je veux réimporter les données de l'une dans l'autre, mais je ne veux pas établir à la main la correspondance entre les modèles car ça serait trop pénible et source d'erreurs.
    Sachant qu'avec quelques règles simples du genre « les classes finissant par *X sont renommées en *Y », « tel attribut est renommé en truc », « tel nouvel attribut est la fusion de ces deux vieux attributs » , « les modèles avec deux clefs ForeignKey sont repris par des ManyToManyFields », etc, j'arrive à cerner 99% des modifications…
    J'arrive donc à programmer la correspondance des classes et des attributs en faisant de l'introspection pour les déterminer, pour faire une passe à la main pour corriger les erreurs restantes.

    Autre souci, j'ai plusieurs classes qui ont des dépendances réciproques. Dans ce cas, je peux déterminer automatiquement l'ordre de création des objets (la relation qui peut être vide n'est pas prise en compte lors d'une première passe).

    Puis au passage, je génère un graphe régulièrement, afin de déterminer les relations entre classes, en mettant en valeur les classes qui héritent d'une classe particulière, ainsi que celles dont la partie admin est faite (idem pour les relations).

  • [^] # Re: Ne pas être implémenté ailleurs

    Posté par  (site web personnel) . En réponse au journal Normalisation du langage Dart de Google par l'Ecma. Évalué à 9.

    Si Google ajoute quelque chose dans v8… ça sera utilisable dans les projets utilisant v8.
    Si Mozilla ajoute quelque chose dans *Monkey… ça sera utilisable dans les projets utilisant *Monkey.

    Je ne vois pas tellement la différence, à vrai dire.

  • # Déploiement de Django

    Posté par  (site web personnel) . En réponse au journal Retour d'expérience sur la mise en ligne d'un nouveau site (Django). Évalué à 5.

    Perso, je trouve que le déploiement reste le point faible de Django, à cause de son fichu fichier settings.py, qui contient à la fois du code et des paramètres. Je trouve dommage que Django propose par défaut une solution assez sale :(

    Dans deux petits projets récents pour chez moi (un clone de Pypi et un site d'upload de documentations), j'ai un peu contourné la chose avec un settings.py qui va lire un fichier de conf pour quelques paramètres à changer, ce qui me permet de faire un pip install mon_projet --upgrade (ce qui est quand même plus propre à mes yeux). Par contre, c'est plus difficile quand on a un settings.py avec pas mal de paramètres…

    Je suis également en train de bosser sur un projet de migration de site, mais je passe d'un projet Django à un autre, alors la migration est plus simple, je bosse sur un code d'importation automatique qui utilise massivement l'introspection Python.

    Sinon, la question qui fâche : Python 2 ou 3 ? :D

  • [^] # Re: Qt 5.2 + Python + iOS

    Posté par  (site web personnel) . En réponse à la dépêche Tendances de la semaine pour les développeurs. Évalué à 2. Dernière modification le 23 décembre 2013 à 20:31.

    Merci pour l'info, je vais aller regarder ça.

    Edit :
    En effet, ça a l'air de faire exactement ce que je veux. Merci beaucoup ! Je note ça précieusement :)

  • # Qt 5.2 + Python + iOS

    Posté par  (site web personnel) . En réponse à la dépêche Tendances de la semaine pour les développeurs. Évalué à 2.

    Je me demande si les trois en même temps seront compatibles (avec du Python 3, soyons fous !)… Ça m'intéresserait bien de pouvoir faire une appli mobile rapidement, sans avoir à apprendre un nouveau langage, ou à me mettre à Qt + C++.

  • [^] # Re: Résistance au changement…

    Posté par  (site web personnel) . En réponse au journal GnuPG peut encore avoir plus de sous. Évalué à 2.

    Sur OS X (je n'ai pas essayé sur les autres plates-formes), ce n'est pas trop compliqué : tu distribues à la personne qui doit chiffrer ou signer un fichier avec certificat + clef (par exemple un .p12), elle double-clique dessus ce qui va l'enregistrer dans son trousseau de clefs (contenant tous les certificats, mots de passe, clefs privées et autres joyeusetés du même style).

    Quand elle enverra un mail, le mail sera par défaut signé, voire chiffré par défaut si tu as le certificat du correspondant ; Mail détecte automatiquement les certificats utilisables (et avec quelle adresse mail).

    Mais c'est sûr, il y a toujours l'étape d'avoir le certificat initial…

  • [^] # Re: C vs Python pour des applis Gnome

    Posté par  (site web personnel) . En réponse au journal Quelques langages de programmation pour GNOME. Évalué à 3.

    Bof, si tu en es réduit à utiliser le type des arguments comme toute documentation d'une fonction, c'est que le code est mal fichu et c'est plus dangereux qu'autre chose.
    Personnellement, je me plonge régulièrement dans du code Python d'autres personnes, et j'ai rarement du mal à comprendre, bien au contraire.

    Une bonne documentation est importante, quelque soit le langage…

    Python offre un truc bien sympa pour ça, d'ailleurs : les doctests
    Petit exemple de Python 3 :

    def ma_fonction(argument1: int=default_value1, argument2: str=default_value2) -> float:
          """[documentation de ma_fonction]
          >>> ma_fonction(1, 'toto'):
          1.
          >>> ma_fonction(10):
          -5.
          """
          [...code...]
    

    Le code suivant >>> sert à la fois d'exemple et de « test unitaire ». Au moins, tu es sûr que les exemples sont fonctionnels :)

  • [^] # Re: ZFS

    Posté par  (site web personnel) . En réponse au journal RHEL 7 pourrait utiliser XFS par défaut. Évalué à 1.

    exFAT a l'avantage d'être fait pour les échanges, entre autres via clefs USB. En revanche, je n'ai pas essayé personnellement, du coup je ne sais pas trop ce que ça donne point de vue droits…

  • [^] # Re: configuration exagérée ?

    Posté par  (site web personnel) . En réponse au journal Sortie de la version 1 de SteamOS. Évalué à 3.

    La question est justement que parmi les machines avec UEFI, y en a-t-il beaucoup qui n'aient pas 4 Go de RAM ?

    Et là, clairement la réponse est non.

  • [^] # Re: On peut parler de version beta

    Posté par  (site web personnel) . En réponse à la dépêche ownCloud 6. Évalué à 1.

    Ça me fait un peu peur de lire ça… N'utilisent-ils pas un ORM digne de ce nom, permettant de se passer d'écrire du SQL directement (et donc d'être indépendant du backend SQL) ?

  • [^] # Re: Que du bonheur !

    Posté par  (site web personnel) . En réponse au journal La loi sur la programmation militaire est adoptée !. Évalué à 2.

    D'après http://www.population-demographie.org/pdf/Prop_Chine_monde.pdf (aucune idée de la qualité du site, mais les chiffres me semblent vraisemblables par rapport à ce que je sais), la Chine à elle seule a davantage d'importance que l'Europe depuis les 1 600 dernières années (en termes de population s'entend).

    Ton graphique est un peu trompeur quand on n'a pas vu que l'échelle est logarithmique.

  • [^] # Re: Que du bonheur !

    Posté par  (site web personnel) . En réponse au journal La loi sur la programmation militaire est adoptée !. Évalué à 2.

    J'imagine que tu voulais dire qu'on était le pays le plus peuplé au monde en Europe.

  • [^] # Re: Que du bonheur !

    Posté par  (site web personnel) . En réponse au journal La loi sur la programmation militaire est adoptée !. Évalué à 7. Dernière modification le 12 décembre 2013 à 00:54.

    J'en déduis donc que soit Descartes n'était pas cartésien, soit il n'était pas religieux. Dans les deux cas, ça me paraît un peu curieux :-D

  • [^] # Re: Ministre de l'économie et du budget ?

    Posté par  (site web personnel) . En réponse au journal La loi sur la programmation militaire est adoptée !. Évalué à 1.

    La sécurité intérieure ne se limite pas au terrorisme, mais comprend également le blanchiment d'argent et les transferts de fond illégaux de façon générale.

  • [^] # Re: ZFS

    Posté par  (site web personnel) . En réponse au journal RHEL 7 pourrait utiliser XFS par défaut. Évalué à 3.

    Tiens, d'ailleurs, où pourrait-on trouver un comparatif récent de systèmes de fichiers, avec les performances ?
    Ce n'est pas évident de tomber dessus…

  • [^] # Re: Plus efficace?

    Posté par  (site web personnel) . En réponse au journal Blackout contre la surveillance. Évalué à 2.

    PCInpact a eu droit à une interview du patron de l'ANSSI : http://www.pcinpact.com/news/84830-blocage-certificats-par-google-interview-patrick-pailloux-anssi.htm

    Bref, beaucoup de bruit pour rien, comme disait William

  • [^] # Re: Pacman

    Posté par  (site web personnel) . En réponse au journal Frugalware, une distribution pas comme les autres.. Évalué à 0.

    Je trouve quand même que 21% de paquets abandonnés, ça fait beaucoup… Je ne connais pas Arch ni Frugalware (je suis content avec Debian ou Ubuntu, je n'ai pas envie de changer de crèmerie), ça ne donne pas tellement envie d'y venir.

    Au passage, qu'est-ce donc que AUR ?

  • [^] # Re: Plus efficace?

    Posté par  (site web personnel) . En réponse au journal Blackout contre la surveillance. Évalué à 2.

    Oui, il y a en effet un certain nombre d'anciens du Ministère de la Défense (pas forcément des militaires), mais ils n'en font pas pour autant partie.
    Après, le respect du secret est quand même lié au fait qu'ils bossent sur les intrusions contre des cibles françaises (ministères et grandes entreprises), donc ils ont sûrement une habilitation assez élevée, avec les contraintes qui en découlent.

  • [^] # Re: Plus efficace?

    Posté par  (site web personnel) . En réponse au journal Blackout contre la surveillance. Évalué à 3. Dernière modification le 09 décembre 2013 à 18:17.

    Non, ce sont des civils (essentiellement des contractuels).

  • [^] # Re: Pourquoi ne pas aller plus loin ?

    Posté par  (site web personnel) . En réponse au journal USB réversible. Évalué à 1.

    Je connais… mais ça demande soit un adaptateur, soit un câble particulier B-B (ou A-A), en plus des câbles standards A-B.

    Avoir un protocole intrinsèquement symétrique (comme pour le firewire) permettrait de n'avoir qu'un seul câble. Perso, chez moi, j'ai des câbles USB, mini-USB, micro-USB, 2*USB -> micro-USB, sans compter quelques câbles purement USB propriétaires (Sony et Nokia notamment). C'est quand même relativement pénible d'avoir tous ces câbles qui sont presque identiques, mais pas totalement, et tout ça sans réelle justification.

  • [^] # Re: Plus efficace?

    Posté par  (site web personnel) . En réponse au journal Blackout contre la surveillance. Évalué à 1.

    Arf, trop tard pour éditer. Précision qui peut être utile : faire un MITM (man in the middle), c'est se mettre en coupure du trafic pour écouter ce qui passe
    (en l'occurrence, les utilisateurs étaient au courant).

  • [^] # Re: Plus efficace?

    Posté par  (site web personnel) . En réponse au journal Blackout contre la surveillance. Évalué à 1.

    Un certificat fourni par une CA intermédiaire d'un ministère a été utilisé pour faire du MITM sur un réseau interne (a priori d'un ministère).
    Ok, ils ne devraient pas utiliser un certificat indirectement issu de l'IGC/A pour faire ça (la faute est là), mais on est loin de certificats obtenus aussi facilement qu'avec Verisign.

    Et en soi, c'est normal de surveiller le trafic sortant des ministères, vu le nombre d'attaques dont ils sont l'objet.

  • [^] # Re: Plus efficace?

    Posté par  (site web personnel) . En réponse au journal Blackout contre la surveillance. Évalué à 2.

    Euh… comment obtiens-tu un certificat signé par l'IGC/A ?

  • [^] # Re: Pourquoi ne pas aller plus loin ?

    Posté par  (site web personnel) . En réponse au journal USB réversible. Évalué à 1.

    Comme dit plus haut, « l'intérêt serait visible sur les téléphones, les tablettes et les ordis ultra-portables, dont le nombre de ports est fortement limité par la taille de l'objet et qui représentent une part de plus en plus importante de l'informatique domestique. Au passage, cela nécessiterait d'avoir un port symétrique, pour brancher un périphérique sur le téléphone, mais aussi brancher le téléphone comme un périphérique. »

    Et de façon générale, ça permettrait de limiter le nombre de câbles reliant les mêmes objets sur un ordi de bureau.