Pas besoin de prouver que tu passes root pour devoir corriger ce type de problème, il faut le corriger dans tous les cas.
Ben si. Si tu veux vendre un patch comme resolvant une elevation de privilege, faut bien prouver qu'il ya une elevation de privilege. Si ca fait juste un segfault, personne ne va acheter le patch.
C'est discutable.
Faut bien verifier que le patch corrige le probleme, non? Il te faut l'exploit pour 1) prouver que le probleme existe 2) prouver que le probleme est corrige.
Ceux qui aiment la haute dispo ont probablement un pool de serveurs derriere un load balancer et rebootent les machines une a une, donc ils voient pas trop la difference.
Sans compter qu'il reste toujours des mises a jour soft qui sont plus simple a appliquer avec un reboot: si tu met a jour libssl, t'as le choix entre redemarrer tous les process qui l'utilisaient, ou rebooter la machine. Perso je prefere rebooter la machine: quitte a avoir du downtime, autant etre sur que t'as effectivement tout redemarre.
C'est moins évident. Vaut-il mieux donner 1.5 Milliards à des boites étrangères ou 10x plus à des boites françaises (pour la partie économique) et à l'ensemble des français (pour la partie libre) ?
Il vaut mieux donner 1.5 milliard a la boite qui le merite.
Si les francais sont pas foutu d'ecrire du soft (probablement parce qu'ils preferent sous traiter l'ingenierie et sous payer leur developeur), ya aucune raison qu'ils soient recompenses, et c'est meme pas plus mal qu'ils aient pas un rond, j'ai pas specialement envie que les fond publics servent a financer des esclavagistes qui ruinent la profession d'ingenieur en informatique en france. La nature a horreur du vide, donc il se comblera, tant qu'on le maintient pas artificiellement rempli.
Par contre, ya un paquet de raison pour recompenser celui qui fait le meilleur produit - a commencer par le fait qu'il rende service.
Meh, ca se discute. Apres 18 mois a bouffer de l'objc et ses import a la mord moi le noeud, et clang qui se chie dessus parce qu'une enum est declaree deux fois, et le pch qui vient foutre la chtouille aussi. Apres 18 mois, t'y penses plus trop, t'es resigne.
Je viens de passer 2 jours a ecrire du java, ben putain. Taper un type, sauver et avoir l'import automagiquement apparaitre, ou retrouver un nom de classe juste en tapant qq lettres, ben ca fait plaisir.
Je fais du proof of concept la, donc du refactoring, j'en ai fait, des typos dans les noms de classes, j'en ai bouffe, et pas qu'un peu, des signatures et des noms de methodes des bois, en veut tu en voila, quand a changer des classes de package (voire de projet), j'en ai fait pas mal aussi.
Cmd alt r pour renommer, et paf, c'est fait. Le changement de package? Drag n drop. V'la le sentiment de liberation d'avoir du refactoring qui marche (bordel). A l'inverse j'ai des classes/methodes avec des typos qui se balladent dans mon projet iOS depuis des mois parce que je sais qu'elles sont utilisees un peu partout, et j'ai autre chose a foutre de tout peter pour inverser 2 lettres.
Desole, mais non, objective c (ou c++ si ca ca te fait plaisir) ca a rien de plus sympa. Devoir faire le yoyo en permanence a remonter, trouver le bon endroit pour ton import, faire gaffe qu'il y soit pas en double (on sait jamais), nettoyer un ou deux imports inutiles pour enfin redescendre et se rendre compte que t'as perdu ton fil de pensee, ca va 5 minutes.
La grosse difference, c'est qu'un ide va t'apporter tres peu en c/c++ la ou le java se prete tres bien a un refactoring super efficace. Quand t'as goute a ca, t'as aucune envie de retourner a gerer les choses a la mano, et a l'inverse, en c/c++ tu l'acceptes et tu fais avec parce que de toute facons, beeen… Tu peux pas vraiment faire autrement, alors…
Je me fais engueuler parce que j'utilise la fonction standard de la bibliothèque standard pour écrire un truc à l'écran… Mais merci du conseil.
Non, tu te fais engueuler parce que t'as un avis peremptoire sur des choses dont tu ne connais strictement rien, sans avoir fait le moindre effort pour te renseigner, tout en pretendant que tu aimes comprendre ce que tu fais.
Sur ce je vais arreter la, le coup de demander si ddg etait le linker java m'a bien fait rigoler, mais ya un moment ou il faut savoir s'arreter.
Mais voilà deux autres exemples de code
current_line = file_descriptor.readline()
current_line = int(current_line) # on sait que le fichier contient que des entiers
=> bouh, c'est sale, on change le type de current_line (de str à int).
Et quel est l'interet de ce code par rapport a:
current_line = file_descriptor.readline()
current_int = int(current_line) # on sait que le fichier contient que des entiers
Le deuxieme me parait vachement clair, et correct. Je sais pas ce que retournes int() mais j'imagines que si string n'est pas un nombre, tu perds la valeur de string, ce qui t'empeche de logger correctement l'erreur en plus (oui, parce que les "on sait" sur un fichier, ca fini toujours par te peter a la gueule un jour).
Tu confirmes juste que le probleme, c'est toi, la.
Bon déjà je comprend tout à fait comment ça se passe en C (des .c que l'on compile en .o et que l'on assemble en fichier binaire), j'imagine qu'en Java c'est pas bien différent, sauf qu'il y a pas binaire, et que les .o sont les .class que l'on assemble des fois en .jar (mais je ne savais pas qu'on était pas obligé).
Ya des differences fondamentales entre le c et le java, qui sont dues essentiellement au fait que java est compile vers un bytecode et tourne dans une jvm qui est tres haut niveau par rapport a l'environnement d'execution du c. Ca simplifie beaucoup de choses.
Le simple fait que tu "imagines" quelque chose qui est largement documente sur le web et dans la literature en dit long sur ton gout de comprendre.
c'est super chiant pour commencer un programme. Parce que si je met public static void main(), il me dit qu'il ne trouve pas la classe main.
Pov chou. Il faut que tu tapes 10 characteres de plus. Non, 12, t'as oublie le []. Une fois dans la vie de ton programme. Trop dur! Ca justifie de dire que le java c'est pas bien, effectivement.
bouffe toute la ram
Regardes les parametres de la jvm. Une heap par defaut a 64mb (si je ne m'abuse), ca me parait pas "bouffer toute la ram", ou alors tu codes sur un iphone. Et vu que tu ne sais meme pas compiler, je doute que tu aies trouve -Xms/-Xmx. Mon petit doigt me dit que tu te contentes de repeter des choses que tu as lues ailleurs - choses qui peuvent etre vraies dans un certain contexte, mais probablement pas dans le tien.
println
Println, personne ne l'utilise en java. C'est pas comme si les loggers etaient rare dans ce langage.
Utilises logger.debug("whatever"), c'est aussi simple a taper que printf et c'est beaucoup plus flexible (niveau de log et appenders, entre autre).
Si vraiment tu veux rester ignorant, utilises les static import et continues a utiliser println.
Ce qui est rare chez moi c'est les segfault et les exceptions non rattrapees, parce que ca c'est pas vraiment dur a eviter.
Et je suis pas le seul visiblement, des bugs dans des softs en production, ca se trouve souvent et ces softs ne crashent que tres peu.
Des erreurs off by one, oublier de remettre un compteur a zero, une typo qui par le plus grand des hasards compile, c'est un peu plus courant.
pas dur! Emacs + cedet (ou cscope), puis macro (next-tag -> replace)
Compiler, regarder les erreurs de compil en priant le grand créateur que les foirrages provoquent effectivement des erreurs de compil ;)
Et le jour ou tu dois renommer getId, t'y passes 2 jours, avec 250 errrurs de compilation, effectivement, "pas dur".
D'où le mapping clavier pour avoir l'aide sur le mot en cours. Reste à savoir si cette fonction peut marcher avec des délimiteurs "." comme évoqué par un autre message.
Et il est capable de faire la difference entre HibernateSessionFactory.createSession et HTTPServlet.createSession?
Ou alors je peux utiliser un ide adapte, qui fera la meme chose, sur mon code et celui des autres, sans avoir besoin de changer de fenetre en permanence. Juste une idee, hein.
Un bug, c'est pas qu'une exception non rattrapee, ca peut etre un paquet de truc ou le programme s'execute tres bien mais me donne juste pas le resultat attendu… A quoi va te servir la stack trace inexistante dans ce cas?
Le probleme du json, c'est que ca ne conserve pas l'ordre des champs, l'ordre etant dependant du hash, qui est implementation specific.
En pratique, ca te donne de vilain diffs des qu'un outil manipule le pom de facon automatique (que ca soit un mvn release ou un editeur haut niveau qui t'ajoute/exclue des dependances).
Ya beaucoup de choses a redire sur le xml, mais pour de la config dans ce style, les schema et la rigidite de la specs sont plutot des atouts je trouve.
CMake ça fonctionne pas sous tous les système d’exploitation? (vraie question)
Ca va tres probablement pas tourner sous windows du premier coup, et t'as de grande chances d'avoir diverses incompatibilites subtiles entre linux et macosx.
Je suis en première année de DUT Informatique, et quand on compilait du Java à la main c’était javac programme.jar et ça s’arrêtait là (et je trouve ça dommage, mais on a un peu approfondi avec le C quand même, mais je ne vois pas à quoi sert l’option -d — il y a plusieurs .class à la fin? Ça peut tourner sans être assemblé dans un JAR?).
Et sinon j’ai toujours pas compris comment on gérait les packages
J'allais ecrire un paquet plus haut, a propos de ton "manque de controle dans un ide". En gros, j'allais dire que si tu sens que tu perds le controle dans un ide, c'est que tu ne comprends pas la chaine de build. Si tu comprends la chaine de build, tu comprends ce que fait l'ide, et t'as pas la sensation de perdre le controle, parce que l'ide fait generalement quelque chose d'adapte (il a ete ecrit par des gens qui savent ce qu'ils font). Tu peux ne pas etre d'accord, mais il va falloir argumenter serieusement, et vu le niveau de questions, je doute que tu en soit vaguement capable (et ya pas de mal, tout le monde commence un jour).
A la vue de tes questions, effectivement tu as des lacunes monstrueuses dans la chaine de compil java.
Pour faire simple: oui, chaque class est compile dans un .class (meme les classes anonymes). La jvm mange ces .class, qu'ils se trouvent dans un zip ou directement sur le fs.
Les "packages" ne sont ni plus ni moins qu'une archive zippee.
cd class; zip ../projet.jar * et t'as un jar (ou un war, ou un ear).
On s’est mal compris. Je veux juste qu’il ne m’affiche plus certaines erreurs dans le code, pas que le compilo ne me signale plus aucune erreur.
Si le compilo te dit que c'est une erreur, il a probablement une bonne raison de te le dire, tu crois pas?
De meme pour les warnings, si on te dit de faire gaffe, c'est probablement qu'il faut que tu fasses gaffe, non? @SuppressWarning est la pour les tres rares cas ou le warning est un faux positif.
que je connaissais pas — que c’est moche le XML, mais bon quand je regarde les makefile générés par CMake je me dis que de toute façon c’est imbuvable
C'est peut etre moche, mais maven a clairement montre que le declaratif pur pour un systeme de build, ca marche vachement mieux et ca permet a tout le monde de builder le projet comme il faut avec une ligne, tout en evitant au mainteneur de passer des heures a s'assurer que tout va marcher correctement que tu sois sous linux/window/macos ou dans un context CI.
Certes, mais si je suis incapable de recompiler le projet actuel sans l’IDE, c’est quand même problématique (bon tu me diras je fais du Java donc je suis pas à ça prêt :p).
Si t'es incapable de builder un projet d'ecole java en ligne de commande, comment dire?
javac -classpath libs/*.jar -sourcepath src/ -d class/
Ca fait bien 5 ou 6 ans que j'ai pas lance javac a la main et j'ai retrouve cette ligne de memoire a 80%…
Dans la vraie vie, t'aurais un pom.xml que ton IDE mangerais avec plaisir et tu ferais mvn install
Logique. Évidemment. Les erreurs affichés dans l’interface utilisateur dans les options du compilo…
Oui, les flags de compilation se configurent generalement dans la partie "option de compilation". Ca me parait tres logique personnellement. Si je voulais changer la couleur du soulignage, par contre, j'irais voir sous Appearance.
Pour l'apprentissage, j'en envie de dire que c'est le contraire, l'ide masque tout la build chain, le packaging et un paquet de trucs du style.
J'aurais plutot envie que les eleves comprennent pourquoi eclipse peut "souligner un truc en rouge" la ou le mvn install va compiler sans problemes. Par contre, une fois que tu comprends comment marche tout ca, c'est une grosse perte de temps de s'emboucanner avec ca.
Yen a encore pour se poser cette question en 2013?
Ou c'est juste une tentative de troll?
Que ca soit Eclipse/VisualStudio/IntelliJ/Xcode/autre ou emacs/vi avec 12000 plugins finis a la pisse, ya serieusement quelqu'un qui code encore uniquement avec un simple editeur de texte de nos jours?
Un IDE est un outil, savoir utiliser les outils de programmation me parait etre une competence indispensable d'un ingenieur.
C'est quoi le prochain journal? Un debuggeur est il reellement utile? Les outils graphiques servent ils reellement a quelque chose?
C'est ma complainte qui n'avait rien à voir. Je trouve dommage qu'il n'y ai pas plus de langage qui utilisent man.
D'un autre cote, autant man sleep, ca va, mais man org.springframework.database.hibernate.HibernateSessionFactory.createSession ca le fait un peu moins a taper.
De meme quand c'est pour ton propre code que tu modifies souvent, tu vas pas t'emboucanner a reinstaller toutes les man pages a chaque git pull.
Justement, parfois ça aide : genre le ticket client arrive à 18h heure locale (US), je le prend, je développe, livre le patch, à 8h le lendemain le client est heureux son fix est la, il a perdu 0 heures de travail.
Et des fois ca fait chier. Le ticket est cree a 12:00PM PDT, et t'es comme un con a attendre jusqu'au lendemain parce qu'ils ont plie les gaules en face. La difference de temps arrange pas trop les californiens pour le coup, surtout ceux qui se levent pas a l'aube.
Ca m'arrive de boire des coups avec eux aussi (bon, ok, 1 fois par an, mais on se connait). Pas besoin d'être toujours ensemble, et on peut voyager de temps à autre.
Pas beson d'etre toujours ensemble. Mais si tu bavassait avec les ops a la machine a cafe, ou que t'allais t'en jeter un de temps en temps avec eux, tu saurais qu'ils vont reclaimer une demi douzaine de serveur la semaine prochaine. Tu pourrais en utiliser une pour "inserer ta tache ici", et si t'etais pote avec eux, vu qu'ils gerent le matos, ils pourraient se demerder pour te garder au chaud une box. Mais t'es pas pote avec eux, les serveurs vont partir ailleurs, tu vas devoir mettre une purchase request et attendre 2 mois. C'est ballot!
Et john, de la services team, comme il te connait et que vous marrez bien a midi, ben il va passer qq heures en plus cette semaine pour etre sur que ta feature request soit merge avant la fin du sprint, comme ca t'auras pas a attendre 15 jours pour que ca parte en prod.
C'est un peu le concept du relationel, tu peux faire sans, mais avec c'est plus facile.
Justement, je dis que je ne suis pas d'accord sur le terme "mieux".
Bon. On reprend. Deux gars a competence egales. Avec le gars qui est sur place, ca se passe mieux.
Apres, oui, ya des exceptions, des gars qui sont tellement mieux ou avec des competences tellement rares qu'ils posent leurs conditions et tu doit accepter.
[^] # Re: Silent patching
Posté par groumly . En réponse à la dépêche Root exploit sur les noyaux linux 2.6.38 à 3.8.8. Évalué à 1.
Ben si. Si tu veux vendre un patch comme resolvant une elevation de privilege, faut bien prouver qu'il ya une elevation de privilege. Si ca fait juste un segfault, personne ne va acheter le patch.
[^] # Re: Silent patching
Posté par groumly . En réponse à la dépêche Root exploit sur les noyaux linux 2.6.38 à 3.8.8. Évalué à 0.
C'est discutable.
Faut bien verifier que le patch corrige le probleme, non? Il te faut l'exploit pour 1) prouver que le probleme existe 2) prouver que le probleme est corrige.
[^] # Re: Et?
Posté par groumly . En réponse au journal 1.5 Milliards dépensés par l'État dans du non libre. Évalué à 0.
Probablement du support aussi, j'imagine.
Quel est le fond de la question?
[^] # Re: Et?
Posté par groumly . En réponse au journal 1.5 Milliards dépensés par l'État dans du non libre. Évalué à 1.
Comme tu le dit, le but c'est de cocher la case "embauche en france", non?
Donc tant que la case est cochee, l'image est amelioree.
[^] # Re: Et?
Posté par groumly . En réponse au journal 1.5 Milliards dépensés par l'État dans du non libre. Évalué à -1.
Microsoft France rentre dans les criteres du coup. Ils sont locaux et embauchent en france, non?
Le concept de la vente, c'est que ca couvre tes frais, impots compris, j'ai du mal a comprendre comment ca peut rapporter a l'etat.
[^] # Re: et quid de Ksplice ?
Posté par groumly . En réponse à la dépêche Root exploit sur les noyaux linux 2.6.38 à 3.8.8. Évalué à 2.
Ceux qui aiment la haute dispo ont probablement un pool de serveurs derriere un load balancer et rebootent les machines une a une, donc ils voient pas trop la difference.
Sans compter qu'il reste toujours des mises a jour soft qui sont plus simple a appliquer avec un reboot: si tu met a jour libssl, t'as le choix entre redemarrer tous les process qui l'utilisaient, ou rebooter la machine. Perso je prefere rebooter la machine: quitte a avoir du downtime, autant etre sur que t'as effectivement tout redemarre.
[^] # Re: Et?
Posté par groumly . En réponse au journal 1.5 Milliards dépensés par l'État dans du non libre. Évalué à 2.
Il vaut mieux donner 1.5 milliard a la boite qui le merite.
Si les francais sont pas foutu d'ecrire du soft (probablement parce qu'ils preferent sous traiter l'ingenierie et sous payer leur developeur), ya aucune raison qu'ils soient recompenses, et c'est meme pas plus mal qu'ils aient pas un rond, j'ai pas specialement envie que les fond publics servent a financer des esclavagistes qui ruinent la profession d'ingenieur en informatique en france. La nature a horreur du vide, donc il se comblera, tant qu'on le maintient pas artificiellement rempli.
Par contre, ya un paquet de raison pour recompenser celui qui fait le meilleur produit - a commencer par le fait qu'il rende service.
[^] # Re: Non, mais ...
Posté par groumly . En réponse au journal Point de vue : un IDE est il un outil de programmation indispensable ?. Évalué à 1.
Meh, ca se discute. Apres 18 mois a bouffer de l'objc et ses import a la mord moi le noeud, et clang qui se chie dessus parce qu'une enum est declaree deux fois, et le pch qui vient foutre la chtouille aussi. Apres 18 mois, t'y penses plus trop, t'es resigne.
Je viens de passer 2 jours a ecrire du java, ben putain. Taper un type, sauver et avoir l'import automagiquement apparaitre, ou retrouver un nom de classe juste en tapant qq lettres, ben ca fait plaisir.
Je fais du proof of concept la, donc du refactoring, j'en ai fait, des typos dans les noms de classes, j'en ai bouffe, et pas qu'un peu, des signatures et des noms de methodes des bois, en veut tu en voila, quand a changer des classes de package (voire de projet), j'en ai fait pas mal aussi.
Cmd alt r pour renommer, et paf, c'est fait. Le changement de package? Drag n drop. V'la le sentiment de liberation d'avoir du refactoring qui marche (bordel). A l'inverse j'ai des classes/methodes avec des typos qui se balladent dans mon projet iOS depuis des mois parce que je sais qu'elles sont utilisees un peu partout, et j'ai autre chose a foutre de tout peter pour inverser 2 lettres.
Desole, mais non, objective c (ou c++ si ca ca te fait plaisir) ca a rien de plus sympa. Devoir faire le yoyo en permanence a remonter, trouver le bon endroit pour ton import, faire gaffe qu'il y soit pas en double (on sait jamais), nettoyer un ou deux imports inutiles pour enfin redescendre et se rendre compte que t'as perdu ton fil de pensee, ca va 5 minutes.
La grosse difference, c'est qu'un ide va t'apporter tres peu en c/c++ la ou le java se prete tres bien a un refactoring super efficace. Quand t'as goute a ca, t'as aucune envie de retourner a gerer les choses a la mano, et a l'inverse, en c/c++ tu l'acceptes et tu fais avec parce que de toute facons, beeen… Tu peux pas vraiment faire autrement, alors…
[^] # Re: Les IDE, c’est chiant
Posté par groumly . En réponse au journal Point de vue : un IDE est il un outil de programmation indispensable ?. Évalué à 1.
Non, tu te fais engueuler parce que t'as un avis peremptoire sur des choses dont tu ne connais strictement rien, sans avoir fait le moindre effort pour te renseigner, tout en pretendant que tu aimes comprendre ce que tu fais.
Sur ce je vais arreter la, le coup de demander si ddg etait le linker java m'a bien fait rigoler, mais ya un moment ou il faut savoir s'arreter.
[^] # Re: IDE python
Posté par groumly . En réponse au journal Point de vue : un IDE est il un outil de programmation indispensable ?. Évalué à 2.
Et quel est l'interet de ce code par rapport a:
current_line = file_descriptor.readline()
current_int = int(current_line) # on sait que le fichier contient que des entiers
Le deuxieme me parait vachement clair, et correct. Je sais pas ce que retournes int() mais j'imagines que si string n'est pas un nombre, tu perds la valeur de string, ce qui t'empeche de logger correctement l'erreur en plus (oui, parce que les "on sait" sur un fichier, ca fini toujours par te peter a la gueule un jour).
[^] # Re: Les IDE, c’est chiant
Posté par groumly . En réponse au journal Point de vue : un IDE est il un outil de programmation indispensable ?. Évalué à 1.
Tu confirmes juste que le probleme, c'est toi, la.
Ya des differences fondamentales entre le c et le java, qui sont dues essentiellement au fait que java est compile vers un bytecode et tourne dans une jvm qui est tres haut niveau par rapport a l'environnement d'execution du c. Ca simplifie beaucoup de choses.
Le simple fait que tu "imagines" quelque chose qui est largement documente sur le web et dans la literature en dit long sur ton gout de comprendre.
Pov chou. Il faut que tu tapes 10 characteres de plus. Non, 12, t'as oublie le []. Une fois dans la vie de ton programme. Trop dur! Ca justifie de dire que le java c'est pas bien, effectivement.
Regardes les parametres de la jvm. Une heap par defaut a 64mb (si je ne m'abuse), ca me parait pas "bouffer toute la ram", ou alors tu codes sur un iphone. Et vu que tu ne sais meme pas compiler, je doute que tu aies trouve -Xms/-Xmx. Mon petit doigt me dit que tu te contentes de repeter des choses que tu as lues ailleurs - choses qui peuvent etre vraies dans un certain contexte, mais probablement pas dans le tien.
Println, personne ne l'utilise en java. C'est pas comme si les loggers etaient rare dans ce langage.
Utilises logger.debug("whatever"), c'est aussi simple a taper que printf et c'est beaucoup plus flexible (niveau de log et appenders, entre autre).
Si vraiment tu veux rester ignorant, utilises les static import et continues a utiliser println.
[^] # Re: Pas si on est un grand ponte apparemment.
Posté par groumly . En réponse au journal Un debugger est-il indispensable ?. Évalué à 4.
Ce qui est rare chez moi c'est les segfault et les exceptions non rattrapees, parce que ca c'est pas vraiment dur a eviter.
Et je suis pas le seul visiblement, des bugs dans des softs en production, ca se trouve souvent et ces softs ne crashent que tres peu.
Des erreurs off by one, oublier de remettre un compteur a zero, une typo qui par le plus grand des hasards compile, c'est un peu plus courant.
[^] # Re: IDE
Posté par groumly . En réponse au journal Point de vue : un IDE est il un outil de programmation indispensable ?. Évalué à 1. Dernière modification le 12 mai 2013 à 10:39.
Et le jour ou tu dois renommer getId, t'y passes 2 jours, avec 250 errrurs de compilation, effectivement, "pas dur".
[^] # Re: On peut toujours creuser un trou à mains nues...
Posté par groumly . En réponse au journal Point de vue : un IDE est il un outil de programmation indispensable ?. Évalué à 3.
Et il est capable de faire la difference entre HibernateSessionFactory.createSession et HTTPServlet.createSession?
Ou alors je peux utiliser un ide adapte, qui fera la meme chose, sur mon code et celui des autres, sans avoir besoin de changer de fenetre en permanence. Juste une idee, hein.
[^] # Re: Pas si on est un grand ponte apparemment.
Posté par groumly . En réponse au journal Un debugger est-il indispensable ?. Évalué à 3.
Un bug, c'est pas qu'une exception non rattrapee, ca peut etre un paquet de truc ou le programme s'execute tres bien mais me donne juste pas le resultat attendu… A quoi va te servir la stack trace inexistante dans ce cas?
[^] # Re: Les IDE, c’est chiant
Posté par groumly . En réponse au journal Point de vue : un IDE est il un outil de programmation indispensable ?. Évalué à 1.
Le probleme du json, c'est que ca ne conserve pas l'ordre des champs, l'ordre etant dependant du hash, qui est implementation specific.
En pratique, ca te donne de vilain diffs des qu'un outil manipule le pom de facon automatique (que ca soit un mvn release ou un editeur haut niveau qui t'ajoute/exclue des dependances).
Ya beaucoup de choses a redire sur le xml, mais pour de la config dans ce style, les schema et la rigidite de la specs sont plutot des atouts je trouve.
[^] # Re: Super workflow
Posté par groumly . En réponse au journal Un debugger est-il indispensable ?. Évalué à 4.
A noter que j'ai deja vu des NSLog ecrits a la truelle planter une appli qui n'avait aucun probleme par ailleurs.
[^] # Re: Les IDE, c’est chiant
Posté par groumly . En réponse au journal Point de vue : un IDE est il un outil de programmation indispensable ?. Évalué à 1.
Ca va tres probablement pas tourner sous windows du premier coup, et t'as de grande chances d'avoir diverses incompatibilites subtiles entre linux et macosx.
[^] # Re: Les IDE, c’est chiant
Posté par groumly . En réponse au journal Point de vue : un IDE est il un outil de programmation indispensable ?. Évalué à 3.
J'allais ecrire un paquet plus haut, a propos de ton "manque de controle dans un ide". En gros, j'allais dire que si tu sens que tu perds le controle dans un ide, c'est que tu ne comprends pas la chaine de build. Si tu comprends la chaine de build, tu comprends ce que fait l'ide, et t'as pas la sensation de perdre le controle, parce que l'ide fait generalement quelque chose d'adapte (il a ete ecrit par des gens qui savent ce qu'ils font). Tu peux ne pas etre d'accord, mais il va falloir argumenter serieusement, et vu le niveau de questions, je doute que tu en soit vaguement capable (et ya pas de mal, tout le monde commence un jour).
A la vue de tes questions, effectivement tu as des lacunes monstrueuses dans la chaine de compil java.
Pour faire simple: oui, chaque class est compile dans un .class (meme les classes anonymes). La jvm mange ces .class, qu'ils se trouvent dans un zip ou directement sur le fs.
Les "packages" ne sont ni plus ni moins qu'une archive zippee.
cd class; zip ../projet.jar * et t'as un jar (ou un war, ou un ear).
Si le compilo te dit que c'est une erreur, il a probablement une bonne raison de te le dire, tu crois pas?
De meme pour les warnings, si on te dit de faire gaffe, c'est probablement qu'il faut que tu fasses gaffe, non? @SuppressWarning est la pour les tres rares cas ou le warning est un faux positif.
[^] # Re: Les IDE, c’est chiant
Posté par groumly . En réponse au journal Point de vue : un IDE est il un outil de programmation indispensable ?. Évalué à 3.
C'est peut etre moche, mais maven a clairement montre que le declaratif pur pour un systeme de build, ca marche vachement mieux et ca permet a tout le monde de builder le projet comme il faut avec une ligne, tout en evitant au mainteneur de passer des heures a s'assurer que tout va marcher correctement que tu sois sous linux/window/macos ou dans un context CI.
Si t'es incapable de builder un projet d'ecole java en ligne de commande, comment dire?
javac -classpath libs/*.jar -sourcepath src/ -d class/
Ca fait bien 5 ou 6 ans que j'ai pas lance javac a la main et j'ai retrouve cette ligne de memoire a 80%…
Dans la vraie vie, t'aurais un pom.xml que ton IDE mangerais avec plaisir et tu ferais mvn install
Oui, les flags de compilation se configurent generalement dans la partie "option de compilation". Ca me parait tres logique personnellement. Si je voulais changer la couleur du soulignage, par contre, j'irais voir sous Appearance.
[^] # Re: Les IDE, c’est chiant
Posté par groumly . En réponse au journal Point de vue : un IDE est il un outil de programmation indispensable ?. Évalué à 0.
Va faire un tour dans les parametres du compilo java et decoche la case qui va bien si ca te gene tant que ca.
Ant? Yen a encore pour utiliser ce monstre?
Pour l'apprentissage, j'en envie de dire que c'est le contraire, l'ide masque tout la build chain, le packaging et un paquet de trucs du style.
J'aurais plutot envie que les eleves comprennent pourquoi eclipse peut "souligner un truc en rouge" la ou le mvn install va compiler sans problemes. Par contre, une fois que tu comprends comment marche tout ca, c'est une grosse perte de temps de s'emboucanner avec ca.
# Serieux?
Posté par groumly . En réponse au journal Point de vue : un IDE est il un outil de programmation indispensable ?. Évalué à 3.
Yen a encore pour se poser cette question en 2013?
Ou c'est juste une tentative de troll?
Que ca soit Eclipse/VisualStudio/IntelliJ/Xcode/autre ou emacs/vi avec 12000 plugins finis a la pisse, ya serieusement quelqu'un qui code encore uniquement avec un simple editeur de texte de nos jours?
Un IDE est un outil, savoir utiliser les outils de programmation me parait etre une competence indispensable d'un ingenieur.
C'est quoi le prochain journal? Un debuggeur est il reellement utile? Les outils graphiques servent ils reellement a quelque chose?
[^] # Re: On peut toujours creuser un trou à mains nues...
Posté par groumly . En réponse au journal Point de vue : un IDE est il un outil de programmation indispensable ?. Évalué à 2.
D'un autre cote, autant man sleep, ca va, mais man org.springframework.database.hibernate.HibernateSessionFactory.createSession ca le fait un peu moins a taper.
De meme quand c'est pour ton propre code que tu modifies souvent, tu vas pas t'emboucanner a reinstaller toutes les man pages a chaque git pull.
[^] # Re: m'en fous
Posté par groumly . En réponse au journal Debian Wheezy, une distribution aux finitions impeccables !. Évalué à 10.
Clair, ca vaut bien la peine de se taper des softs vieux de 18 mois au moment de la sortie, quand on voit la qualite de la finition, ca fait rever!
[^] # Re: Demenage aux USA
Posté par groumly . En réponse au journal [HS] Développeur un peu perdu… ou pas… Que faire maintenant ? Changer de vie ?. Évalué à 3.
Et des fois ca fait chier. Le ticket est cree a 12:00PM PDT, et t'es comme un con a attendre jusqu'au lendemain parce qu'ils ont plie les gaules en face. La difference de temps arrange pas trop les californiens pour le coup, surtout ceux qui se levent pas a l'aube.
Pas beson d'etre toujours ensemble. Mais si tu bavassait avec les ops a la machine a cafe, ou que t'allais t'en jeter un de temps en temps avec eux, tu saurais qu'ils vont reclaimer une demi douzaine de serveur la semaine prochaine. Tu pourrais en utiliser une pour "inserer ta tache ici", et si t'etais pote avec eux, vu qu'ils gerent le matos, ils pourraient se demerder pour te garder au chaud une box. Mais t'es pas pote avec eux, les serveurs vont partir ailleurs, tu vas devoir mettre une purchase request et attendre 2 mois. C'est ballot!
Et john, de la services team, comme il te connait et que vous marrez bien a midi, ben il va passer qq heures en plus cette semaine pour etre sur que ta feature request soit merge avant la fin du sprint, comme ca t'auras pas a attendre 15 jours pour que ca parte en prod.
C'est un peu le concept du relationel, tu peux faire sans, mais avec c'est plus facile.
Bon. On reprend. Deux gars a competence egales. Avec le gars qui est sur place, ca se passe mieux.
Apres, oui, ya des exceptions, des gars qui sont tellement mieux ou avec des competences tellement rares qu'ils posent leurs conditions et tu doit accepter.