#101 Le 13/09/2011, à 18:21
- grim7reaper
Re : /* Topic des codeurs [6] */
helly : je ne poste pas de photos de moi sous pseudo
Il nous suffit donc de découvrir ta véritable identité :]
Je vais demander à notre ami zQ&r27v$F8e de faire une enquête sur toi
grim7reaper a écrit :c’était un peu la lose à une époque
Marrant que tu cites cet article. Kaworu (un pote IRL) avait écrit ce post quand je lui avais parlé de zathura à l'époque. Marrant, lui son premier réflexe quand on lui parle d'un soft, c'est d'aller voir les sources. Si le code est trop affreux, il n'installe pas.
J’ai découvert son blog car tu avais posté un lien vers un de ses articles sur ce topic.
J’approuve son comportement, cela dit il est difficile de l’appliquer à 100% : trop d’outil GNU n’ont pas d’équivalents (ou d’équivalent assez mûr)
↓↓↓ Pour avoir mater le code de mencoder/mplayer, je confirme qu’il y a des trucs crado (je parle pas des optimisations à coup d’assembleur inline (dans un tel logiciel, c’est justifié) mais du main de ~2000 lignes…)
Dernière modification par grim7reaper (Le 13/09/2011, à 18:25)
Hors ligne
#102 Le 13/09/2011, à 18:21
- The Uploader
Re : /* Topic des codeurs [6] */
grim7reaper a écrit :c’était un peu la lose à une époque
Marrant que tu cites cet article. Kaworu (un pote IRL) avait écrit ce post quand je lui avais parlé de zathura à l'époque. Marrant, lui son premier réflexe quand on lui parle d'un soft, c'est d'aller voir les sources. Si le code est trop affreux, il n'installe pas.
Il doit éviter mencoder et pas mal d'autres bons logiciels au code (soi-disant) crade. ^^
Dernière modification par The Uploader (Le 13/09/2011, à 18:22)
- Oldies PC : Intel Pentium 3 @ 800 Mhz sur CM ASUS P2B-F, GeForce 4 Ti4800 SE, Disque Dur Hitachi 160 Go, 512 Mo de RAM, 3DFX Voodoo 2, Sound Blaster 16 ISA PnP, Windows 98 SE / XP)
- Desktop : Intel Core i7 6700K @ 4 GHz sur CM ASUS Z170-P, GeForce GTX 1070, SSD Samsung 850 EVO 1 To, 16 Go de RAM, Disque Dur Seagate Barracuda 3 To, Windows 10
Hors ligne
#103 Le 13/09/2011, à 18:24
- helly
Re : /* Topic des codeurs [6] */
EDIT: Oops, j'ai lu zathura et ai pensé jumanji... bon, c'est le même type qui a écrit les deux...
Hein ?
Heu nan, mais j’ai peut être glissé dessus sans le voir !
N’oublie pas qu’en ce moment, j’manque d’hémoglobine et que ça faaaaaaaaaaaaaaaaaaaaaatigue !
Archlinux-wmii-dwb.
Un problème résolu ? Faites le savoir en mettant [résolu] à côté du titre de votre topic.
Un problème non résolu ? Faites le savoir en insultant ceux qui cherchent à vous aider.
Un site bleu super remasterised©, un wiki cherchant des volontaires pour traduire un site.
Hors ligne
#104 Le 13/09/2011, à 18:25
- helly
Re : /* Topic des codeurs [6] */
helly : je ne poste pas de photos de moi sous pseudo
Bha, une photo sous vêtement, ça me va au pire.
Nan, mais le terme « sous pseudo » je l’ai pas compris…
Archlinux-wmii-dwb.
Un problème résolu ? Faites le savoir en mettant [résolu] à côté du titre de votre topic.
Un problème non résolu ? Faites le savoir en insultant ceux qui cherchent à vous aider.
Un site bleu super remasterised©, un wiki cherchant des volontaires pour traduire un site.
Hors ligne
#105 Le 13/09/2011, à 18:28
- Pylades
Re : /* Topic des codeurs [6] */
Les développeurs savent coder correctement en C maintenant ?
Nan, parce que bon, c’était un peu la lose à une époque
Ce n’est pas la plus grave des erreurs… même si c’est bien moche quand même.
Sinon, en fouillant dans le blog que t’as lié, j’ai trouvé un lien vers ma signature !
C’est là que tu l’avais trouvée ?
“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
Linus Torvalds – 12 janvier 2003
Hors ligne
#106 Le 13/09/2011, à 18:29
- grim7reaper
Re : /* Topic des codeurs [6] */
Rolinh a écrit :EDIT: Oops, j'ai lu zathura et ai pensé jumanji... bon, c'est le même type qui a écrit les deux...
Hein ?
Heu nan, mais j’ai peut être glissé dessus sans le voir !
N’oublie pas qu’en ce moment, j’manque d’hémoglobine et que ça faaaaaaaaaaaaaaaaaaaaaatigue !
D’ailleurs tu nous fait un très beau fail quote
kamui57 a écrit :helly : je ne poste pas de photos de moi sous pseudo
Bha, une photo sous vêtement, ça me va au pire.
Tiens helly, en attendant voilà une série de pix de moi (au diable l’anonymat !)
C’est là que tu l’avais trouvée ?
Non, je la tiens de la source.
Dernière modification par grim7reaper (Le 13/09/2011, à 18:31)
Hors ligne
#107 Le 13/09/2011, à 18:31
- The Uploader
Re : /* Topic des codeurs [6] */
helly a écrit :kamui57 a écrit :helly : je ne poste pas de photos de moi sous pseudo
Bha, une photo sous vêtement, ça me va au pire.
Tiens helly, en attendant voilà une série de pix de moi (au diable l’anonymat !)
- Oldies PC : Intel Pentium 3 @ 800 Mhz sur CM ASUS P2B-F, GeForce 4 Ti4800 SE, Disque Dur Hitachi 160 Go, 512 Mo de RAM, 3DFX Voodoo 2, Sound Blaster 16 ISA PnP, Windows 98 SE / XP)
- Desktop : Intel Core i7 6700K @ 4 GHz sur CM ASUS Z170-P, GeForce GTX 1070, SSD Samsung 850 EVO 1 To, 16 Go de RAM, Disque Dur Seagate Barracuda 3 To, Windows 10
Hors ligne
#108 Le 13/09/2011, à 18:39
- helly
Re : /* Topic des codeurs [6] */
helly a écrit :Rolinh a écrit :EDIT: Oops, j'ai lu zathura et ai pensé jumanji... bon, c'est le même type qui a écrit les deux...
Hein ?
Heu nan, mais j’ai peut être glissé dessus sans le voir !
N’oublie pas qu’en ce moment, j’manque d’hémoglobine et que ça faaaaaaaaaaaaaaaaaaaaaatigue !D’ailleurs tu nous fait un très beau fail quote
>_<*
/me va se cacher.
…
Goto foire au vin \o/
Archlinux-wmii-dwb.
Un problème résolu ? Faites le savoir en mettant [résolu] à côté du titre de votre topic.
Un problème non résolu ? Faites le savoir en insultant ceux qui cherchent à vous aider.
Un site bleu super remasterised©, un wiki cherchant des volontaires pour traduire un site.
Hors ligne
#110 Le 13/09/2011, à 18:45
- helly
Re : /* Topic des codeurs [6] */
Oups, j’me souviens plus de quoi tu parlais ^^’.
Nan, je ne snobais pas, logiquement, c’est que j’avais pas lu ou que je m’en souvenais plus.
Archlinux-wmii-dwb.
Un problème résolu ? Faites le savoir en mettant [résolu] à côté du titre de votre topic.
Un problème non résolu ? Faites le savoir en insultant ceux qui cherchent à vous aider.
Un site bleu super remasterised©, un wiki cherchant des volontaires pour traduire un site.
Hors ligne
#111 Le 13/09/2011, à 18:49
- Rolinh
Re : /* Topic des codeurs [6] */
@helly:
Je viens de retrouver le post original auquel je faisais référence.
J'avais écrit ça qui était une sorte de réponse face à ton désarroi de ne pas savoir quoi coder dont tu as fais mention un peu avant.
Hors ligne
#112 Le 13/09/2011, à 18:59
- Ras'
Re : /* Topic des codeurs [6] */
Ras'
http://uni.xkcd.com/
http://goosh.org/
liens trouvés ici yen a sûrement d'autres http://news.ycombinator.com/item?id=1870857edit : Emulating a terminal-like caret with javascript and css. http://www.dynamicdrive.com/forums/show … hp?t=17450
Ouaip.
Ben j'ai regardé le code source des exemples sus-cités et me rends compte que j'ai carrément sous estimé la charge de travail (à mettre en adéquation avec l'état de mon cerveau en sortant du taff)
On s'en passera, donc.
Va t'faire shampouiner par le compteur_V2 en timezone[Canada/Eastern] !
Les types awesome n'ont rien à prouver. À personne.
'k bye là
Hors ligne
#113 Le 13/09/2011, à 19:17
- grim7reaper
Hors ligne
#114 Le 13/09/2011, à 19:47
- Rolinh
Re : /* Topic des codeurs [6] */
void
main(void)
{
(void)puts("En même temps, on peut mettre 255 autres valeurs dans un octet...");
}
EDIT pour grim (un truc qui me ressemblerait plus):
#include <stdio.h>
#include <stdlib.h>
int
main(void)
{
(void)puts("En même temps, on peut mettre 255 autres valeurs dans un octet...");
/* yep, no check for errors so it is a success..... */
return EXIT_SUCCESS;
/* NOTREACHED */
}
Dernière modification par Rolinh (Le 13/09/2011, à 20:16)
Hors ligne
#115 Le 13/09/2011, à 19:56
- grim7reaper
Re : /* Topic des codeurs [6] */
Rolinh, tu me déçois
Non, pas toi :
« void main(void) » !!!
(et puis il manque le include aussi)
Dernière modification par grim7reaper (Le 13/09/2011, à 19:57)
Hors ligne
#116 Le 13/09/2011, à 20:11
- Rolinh
Re : /* Topic des codeurs [6] */
Je t'avoue que quand je l'ai écrit, je me suis dit:" mmmh, jamais fait ça...m'étonnerait que ça puisse se faire. On va voir si grim gueule".
EDIT: je n'aurais pas du faire ça à cette heure tardive. Tu vas faire pleins de cauchemars.
EDIT2: Ayant toujours écrit des main qui retournent au moins un code d'erreur, je ne m'étais jamais posé la question. Mais en fait, ça le fait carrément pas un void main(void) pour le compilo.
Dernière modification par Rolinh (Le 13/09/2011, à 20:25)
Hors ligne
#117 Le 13/09/2011, à 20:34
- grim7reaper
Re : /* Topic des codeurs [6] */
En fait, y’a certains cas où ça le fait :
The function called at program startup is named main. The implementation declares no prototype for this function. It shall be defined with a return type of int and with no parameters:
int main(void) { /* ... */ }
or with two parameters (referred to here as argc and argv, though any names may be used, as they are local to the function in which they are declared):
int main(int argc, char *argv[]) { /* ... */ }
or equivalent; or in some other implementation-defined manner.
mais ça reste rare (certains codes embarqués, C en mode freestanding (kernel par exemple), …)
Dernière modification par grim7reaper (Le 13/09/2011, à 20:36)
Hors ligne
#118 Le 13/09/2011, à 21:42
- Elzen
Re : /* Topic des codeurs [6] */
Bon : mon éditeur de texte commence à ressembler à quelque chose
J'suis même en train de l'utiliser pour le finir, ç'fun ^^
J'ai juste la base de la base, pour le moment (gestion des onglets (ça, c'était déjà géré par ma bibli pour les nouveaux utilitaires Touhy) ; ouvrir/enregistrer/enregistrer sous ; annuler/refaire au clavier (c'était géré automatiquement) et avec des boutons ; copier-coller par raccourcis clavier (c'était géré automatiquement, il faut que je rajoute les boutons), recherche de texte (un peu buggée, ça ne scrolle pas encore tout seul quand le texte trouvé n'est pas dans la zone visible) et coloration syntaxique (automatique, pour le moment, pas encore de choix de langage)).
J'vais voir pour ajouter un rechercher/remplacer, une correction orthographique, quelques réglages d'options et les deux-trois autres fonctionnalités saugrenues auxquelles j'ai pensé (notamment : la possibilité d'afficher le contenu non-modifié du fichier dans le panneau latéral, pour comparer), mais déjà, j'ai un logiciel qui me convient pour bosser avec, c'est le principal.
J'ai juste un petit soucis : je n'trouve pas comment récupérer la colonne à laquelle se trouve actuellement le curseur, pour afficher dans la barre de statut (j'ai trouvé comment récupérer le numéro du caractère sur la ligne, mais ça n'prend pas en compte les tabs, et vérifier manuellement le contenu de la ligne à chaque déplacement du curseur pour régler la taille des tabs, ça me paraît lourd).
Elzen : polisson, polémiste, polymathe ! (ex-ArkSeth)
Un script pour améliorer quelques trucs du forum.
La joie de t'avoir connu surpasse la peine de t'avoir perdu…
timezone[blocklist]
Hors ligne
#119 Le 13/09/2011, à 21:49
- Pylades
Re : /* Topic des codeurs [6] */
Tu ne feras pas mieux que Vim, t’façons.
“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
Linus Torvalds – 12 janvier 2003
Hors ligne
#120 Le 13/09/2011, à 22:02
- Elzen
Re : /* Topic des codeurs [6] */
Mieux, probablement pas ; plus adapté à mon utilisation personnelle, très certainement
(Ceci dit, si vous avez des suggestions de fonctionnalités, j'garantis rien, mais j'veux bien les entendre)
(Pis tiens, toi : j'crois que tu n'as pas encore répondu à ça (ou alors j'ai loupé))
Elzen : polisson, polémiste, polymathe ! (ex-ArkSeth)
Un script pour améliorer quelques trucs du forum.
La joie de t'avoir connu surpasse la peine de t'avoir perdu…
timezone[blocklist]
Hors ligne
#121 Le 13/09/2011, à 22:06
- Pylades
Re : /* Topic des codeurs [6] */
Si je le savais, j’aurais fait un lanceur pour avoir une icône kisèr-aryen qui ouvre les menus dans Tint2, bien kikoolol. Mais là, non, désolé.
“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
Linus Torvalds – 12 janvier 2003
Hors ligne
#122 Le 13/09/2011, à 22:18
- grim7reaper
Re : /* Topic des codeurs [6] */
Bon, j’ai avancé dans ma rédaction. Dans le meilleur des cas je fini demain soir (peu probable…) ou après‑demain (plus réaliste) voire vendredi (au pire).
En attendant, voilà un extrait
Il faut savoir qu’en C les types sont classés en trois catégories (Cf. ISO/IEC 9899:TC3, 6.2.5 Types) :
- Les types « fonction » : ce sont les types qui décrivent une fonction. Ils sont composés du type de retour et du nombre et du type des arguments ;
- Les types incomplets : ce sont les types dont on ignore la taille. Cette catégorie de type est elle-même divisée en trois parties :
- Le type void : c’est le seul type incomplet qui ne peut pas être complété ;
- Les tableaux dont la taille n’est pas spécifiée ;
- Les structures et les unions dont le contenu est inconnu ;
- Les types « objet » : ce sont les types qui décrivent totalement un objet. Ils rassemblent tout ce qui n’entre pas dans les deux catégories précédentes.
Sur ce, BN World!
Hors ligne
#123 Le 13/09/2011, à 22:27
- Rolinh
Re : /* Topic des codeurs [6] */
@grim: je te vois bien tenir un beau blog plutôt qu'un semblant de site web
Enfin, j'aimerais bien moi un blog de grim avec un beau flux RSS et tout et tout.
Hors ligne
#124 Le 13/09/2011, à 23:37
- The Uploader
Re : /* Topic des codeurs [6] */
#!/usr/bin/env ruby
require "ruby-debug"
module Security
class Caesar < String
def initialize(str)
@alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
@english_freqs = {
'A'=>8.11, 'B'=>0.903, 'C'=>3.49, 'D'=>4.27, 'E'=>17.22,
'F'=>1.14, 'G'=>1.09, 'H'=>0.769, 'I'=>7.44, 'J'=>0.339,
'K'=>0.097, 'L'=>5.53, 'M'=>2.89, 'N'=>7.46, 'O'=>5.38,
'P'=>3.02, 'Q'=>0.999, 'R'=>7.05, 'S'=>8.04, 'T'=>6.99,
'U'=>5.65, 'V'=>1.30, 'W'=>0.039, 'X'=>0.435, 'Y'=>0.271,
'Z'=>0.098
}
@english_freqs_infos = {'max_val'=>17.22, 'kappa'=>0.0746}
super
end
def islower(string)
if string == string.downcase
return 1
else
return 0
end
end
def sum_residual_error_squared(dict)
sum = 0
dict.each do |k, v|
sum += (v - @english_freqs[k])**2
end
return sum
end
def frequency(string)
dict = {}
for c in string.upcase.chars
if @alphabet.index(c) != nil
dict[c] = dict[c] == nil ? 1 : dict[c] + 1
end
end
return scale(dict)
end
def scale(dict)
v = dict.values
v.sort
max_val = v[-1]
dict.each do |k, v|
dict[k] = v*@english_freqs_infos['max_val']/max_val
end
return dict
end
def guess_shift_and_decipher(string)
best = 0
smallest_sum = -1
for shift in Range.new(0, 26)
encoded_text = encipher(string, shift)
char_freqs = frequency(encoded_text)
current_sum = sum_residual_error_squared(char_freqs)
if smallest_sum == -1
smallest_sum = current_sum
else
if current_sum < smallest_sum
best = shift
smallest_sum = current_sum
end
end
end
return decipher(string, best)
end
def encipher(instance=self, shift)
ciphertext = ""
for p in instance.chars
if @alphabet.index(p) != nil
ciphertext << ((p.ord - 'Aa'[islower(p)].ord + shift) % 26 + 'Aa'[islower(p)].ord).chr
else
ciphertext << p
end
end
return Caesar.new('' << (ciphertext))
end
def decipher(instance=self, shift)
return instance.encipher(-shift)
end
end
class Vigenere < String
def initialize(str)
@alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
super
end
def islower(string)
if string == string.downcase
return 1
else
return 0
end
end
def encipher(instance=self, key)
ciphertext = ""
k = 0
n = key.length
for p in instance.chars
if @alphabet.index(p) != nil
#ciphertext << (p.ord + islower(p) == 0 ? (key[k % n].upcase).ord => (key[k % n].downcase).ord - 2 * (('Aa'[islower(p)]).ord % 26 + ('Aa'[islower(p)]).ord % 26)).chr
k = k + 1
else
ciphertext << p
end
end
return Vigenere.new('' << ciphertext)
end
def decipher(instance=self, key)
plaintext = ""
k = 0
n = key.length
for c in instance.chars
if @alphabet.index(c) != nil
#plaintext << (c.ord - key[k % n].downcase.ord % 26 + 'Aa'[islower(c)].ord).chr
end
end
return Vigenere.new('' << plaintext)
end
end
#v = Vigenere.new("HAHALEPSICESTCOOLZZ").encipher('MASSEFFECT').decipher('MASSEFFECT')
#puts v
c = Caesar.new("ATTACK AT DAWN ATTACK AT DAWN ATTACK AT DAWN ATTACK AT DAWN ATTACK AT DAWN ATTACK AT DAWN ATTACK AT DAWN ATTACK AT DAWN ATTACK AT DAWN ATTACK AT DAWN ATTACK AT DAWN ATTACK AT DAWN ATTACK AT DAWN ATTACK AT DAWN ATTACK AT DAWN ATTACK AT DAWN").encipher(5)
g = Caesar.new('').guess_shift_and_decipher(c)
puts c
puts g
end
Ah ben oui 'craquer' un codage Caesar (automatiquement) et un codage Vigenere (donner la clé la plus probable) spa facile.
Et encore, je me limite à la langue anglaise..
Dernière modification par The Uploader (Le 13/09/2011, à 23:37)
- Oldies PC : Intel Pentium 3 @ 800 Mhz sur CM ASUS P2B-F, GeForce 4 Ti4800 SE, Disque Dur Hitachi 160 Go, 512 Mo de RAM, 3DFX Voodoo 2, Sound Blaster 16 ISA PnP, Windows 98 SE / XP)
- Desktop : Intel Core i7 6700K @ 4 GHz sur CM ASUS Z170-P, GeForce GTX 1070, SSD Samsung 850 EVO 1 To, 16 Go de RAM, Disque Dur Seagate Barracuda 3 To, Windows 10
Hors ligne
#125 Le 14/09/2011, à 07:53
- grim7reaper
Re : /* Topic des codeurs [6] */
Hello World!
@grim: je te vois bien tenir un beau blog plutôt qu'un semblant de site web
Hum oui et non.
C'est vrai qu'il y a des trucs intéressant dans les blogs comme :
- le classement par tag ;
- les commentaires ;
- et c'est tout ! (en ce qui me concerne).
Bon, à la limite on peut ajouter les thèmes tout fait qui permettent d'avoir un truc plus eye-candy sans se casser la tête :]
Après, il y a des trucs que je n'aime pas. Déjà faut souvent (bon pas pour tous c'est vrai) une BDD et/ou PHP, ça fait/génère des trucs dans ton dos du coup quand t'as des emmerdes (comme kamui57 en ce moment) bah tu sais pas d'où ça vient (alors que là avec mon truc 100% fait main je trouve vite le souci quand y en a un et j'ai la main sur 100% des fichiers (bon un peu moins en fait, y a du JS/CSS que j'ai récupéré pour la colo syntaxique)).
Puis y'a aussi une relation d'ordre chronologique entre les articles, choses que je ne souhaite pas vraiment...
En plus, j'ai l'impression qu'aujourd'hui tout le monde fait un blog et plus de bon vieux sites comme avant (et comme chacun sait, c'était mieux avant ).
Et puis ouais mon site à un design (très) épuré, mais de toute façon en général les gens balèze en prog font des sites "moches", c'est bien connu (Bjarne Stroustrup, RMS, ESR, Larry Wall (lui c'est le "meilleur"), Donald Knuth, ...)
Enfin, j'aimerais bien moi un blog de grim avec un beau flux RSS et tout et tout.
Quoi, qu'est ce qu'il à mon RSS ?
Il est beau, fait à la main et valide :]. Que demande le peuple ?
Hors ligne