4 ms·
He showed K @ Royal Society & bunch of apl & aplus guys were there. Someone asked , where are the comments? AW said comments get out of date with all the change
by rwillink 2y ago
He showed K @ Royal Society & bunch of apl & aplus guys were there. Someone asked , where are the comments? AW said comments get out of date with all the changes, if you can’t read the code you Shldnt be working on it. We then all looked at each other..
- 082349872349872 2y agoSo far the highest ratio of comment to code I've seen is Hsu's thesis (~200 pages of commentary[0] to ~20 lines of code[1]) at 10 pages/line. [0] https://scholarworks.iu.edu/dspace/bitstreams/dcbd5240-8454-4533-bc0c-ac3ee7628b8e/download https://scholarworks.iu.edu/dspace/bitstreams/dcbd5240-8454-... [1] https://www.bonfire.com/co-dfns-thesis-edition/ https://www.bonfire.com/co-dfns-thesis-edition/ (a) come to think of it, theses are one and done (b) thanks to Kragen for pointing out this 02019 work!
- 082349872349872 2y agoHeh, I just noticed Hsu's "above average" shirts: ⊢>+⌿÷≢ One of these days I need to (a) learn more about the Berber culture, and then (b) write an array language which exploits the ⵜⵉⴼⵉⵏⴰⵖ symbology. https://en.wikipedia.org/wiki/Tifinagh#/media/File:Tifinagh_alphabet.png https://en.wikipedia.org/wiki/Tifinagh#/media/File:Tifinagh_... https://www.win.tue.nl/~aeb/natlang/berber/tifinagh/tifinagh.html https://www.win.tue.nl/~aeb/natlang/berber/tifinagh/tifinagh... https://www.edition-originale.com/media/h-3000-saint-exupery_antoine-de_le-petit-prince-version-en-berbere-tamasheq_1958_edition-originale_4_82159.jpg https://www.edition-originale.com/media/h-3000-saint-exupery...
- deleted 2y ago[deleted]
- magicalhippo 2y ago> if you can’t read the code you Shldnt be working on it I don't know this AW guy, but to me that's a huge red flag and a sign that a programmer hasn't worked on anything substantial. Ie non-trivial stuff that's maintained by a team over time. Being able to read the code is irrelevant, as the comments should tell you why the code is doing what it's doing. For example, yeah I trivially can see the code is doing a retry loop trying to create a file with the same name. That looks like a bug, if you can't create the file with that name, you change the name in the retry loop. But the comment will tell me this is due to certain virus scanners doing dumb stuff, so we might have to try the same name a few times. Sure, good code will have few comments as most of it should be self-documenting through good structure and names of classes and variables. But in non-trivial code there will always be places where it is not obvious why the code does what it does.
- anonzzzies 2y ago> a sign that a programmer hasn't worked on anything substantial Maybe you want to check who he is?
- magicalhippo 2y agoI meant I don't know as in I haven't actually worked with him. Based on what I've seen before as well as the supplied code, I would be very skeptical to have him on my team.
- Pet_Ant 2y agoHe would be your entire team
- magicalhippo 2y agoEven worse, as then the bus factor is as bad as it can get.
- wood_spirit 2y agoThis is a bit of a tangent but it’s a thought experiment that I recently heard: Data pipeline A is written and maintained by a team in a type safe language with extensive unit tests. Data pipeline B be was written long ago by a scientist who has since left, in sql in a day. Both compute the same dataset, but B gets the answer correct. Which is the better pipeline, and why?
- koolala 2y agoWhere are the imaginary numbers?
- msla 2y agoThis immaturity is one reason I don't like array languages: They ape mathematical conventions but mathematicians are interested in communicating, if only with other mathematicians, and so write clearly and understandably. That source code (if you can call it that, as I'm not entirely convinced it's the form Whitney himself programs in) is the opposite of clear to the point of being comically dense, in every sense of the term. Concision is the handmaiden of clarity.
- harrison_clarke 2y agoi spent a day writing code like that. it becomes readable surprisingly quickly. i don't think i'm going to get into the practice of doing it to that extreme, but i'll probably adopt the multiple-things-per-line part for side projects, and skip the shortening of keywords with a wide monitor, you can have 3 files like this open at a time. you can fit a surprisingly large program on the screen at once, which is the benefit of coding like that
- hi-v-rocknroll 2y ago> if you can’t read the code you Shldnt be working on it An ultimate expression of insider elitism and knowledge hoarding, which can be a self-interested asset to profitable, closed-source, specialized software. For everyone else, code should present no surprises whenever possible with semantic expressiveness and reserve comments for explanation of surprises, design choices, and protocols.
- xelxebar 2y agoI don't know about you, but if you don't know the basics about woodworking and have no interest in learning, I certainly don't want you building my furniture. That, um, has nothing to do with elitism. There is a real tradeoff between making code friendly to the uninitiated and making code ergonomic for the expert. It's completely natural that non-initiates feel unwelcome when the code is written for domain experts. In your company's codebase, is it really best to optimize for onboarding newcomers over optimizing for the productivity of your engineers? Where along that spectrum maximizes your goals? Are we building chairs or are we building chair-builders?