4 ms·
I’d rather take the humble exploratory academic than a cocky programmer. Just as an example he writes: “ Unfortunately many programmers, due to their lack of e
by danielscrubs 6y ago
I’d rather take the humble exploratory academic than a cocky programmer. Just as an example he writes:
“ Unfortunately many programmers, due to their lack of experience, of some knowledge of computer architecture(s), or of an in-depth understanding of the task they are given, spend countless hours by making life harder for themselves in the name of marginal performance gains, often trading many other conveniences (such as type safety, garbage collection, etc) too.”
And then he himself doesn’t use type safety making the text very superfluous. As others have brought up he then uses pythonwrappers for the heavy lifting. It’s just a very shallow thought process that you are supposed to hammer out in the university.
Modify the README to just say: I wanted to scratch an itch so I built PoC for a Redis alternative, and it would have been an amazing achievement. Now? Not so much.
- boramalper 6y agoI am sorry to see that you presume I am a cocky programmer. :) > And then he himself doesn’t use type safety making the text very superfluous. You are partially right, in that I did not use type annotations thoroughly in my code. Though what I had in mind was that there are much "better" languages out there (compared to C) with strong static/gradual type systems. > As others have brought up he then uses pythonwrappers for the heavy lifting. Indeed, and you can read my answer to that here: https://news.ycombinator.com/item?id=25101200 https://news.ycombinator.com/item?id=25101200 > It’s just a very shallow thought process that you are supposed to hammer out in the university. If you specify what you refer to by "it", I would be happy to respond but it feels more like a personal attack now.
- ZephyrBlu 6y ago> it would have been an amazing achievement 250 lines of Python code wrapping C libs is an amazing achievement..? This is so small I wouldn't even classify it as a project personally.
- boramalper 6y agoAuthor here: I am not arguing that this is an amazing achievement, but I think you are being overly dismissive here, which I find unfair, and think you are missing the point: It is 250 lines because I was experienced enough to implement it in 250 lines. Again, it's a small proof-of-concept, but the concepts employed there aren't necessarily beginner level: 1. Asynchronous I/O using `asyncio.Protocol`. 2. Sans I/O networking, see https://sans-io.readthedocs.io/ https://sans-io.readthedocs.io/ . 3. Python performance optimisations (e.g. knowing where to choose `collections.deque` over `list`) 4. Knowledge of the modern Python ecosystem (e.g. using uvloop to for event loop).
- ZephyrBlu 6y agoI was responding to the parent comment saying it would have been an amazing achievement. I haven't passed any judgement on the code, and I never stated it was beginner level. > It is 250 lines because I was experienced enough to implement it in 250 lines If you had written a clever algorithm I would agree, but the code seems pretty straightforward. I'm not really sure how being inexperienced would make someone unable to implement this. Yes, there's some knowledge required to do what you have done but given that the implementation seems relatively straightforwards and it doesn't seem to have much substance (Only 250 LOC + you said you wrote it in 1 day) I would _personally_ not classify this as a project. I think you are reading too much into an offhand comment.