3 ms·
There is a reason memcached does not have mult. One could argue even incr and decr should be handled by clients. Starting to add more arithmetic support is sco
by yokoprime 5y ago
There is a reason memcached does not have mult. One could argue even incr and decr should be handled by clients. Starting to add more arithmetic support is scope creep. Why stop there, why not add sqr or bitwise ops, maybe a text based adventure game? Just blindly implementing this feature without any questions should be a huge red flag
- pubby 5y agoYou could say the same thing about web apps not needing fizzbuzz, but that wouldn't get you hired. As an aside, I think atomic incr/decr are useful. I don't see how you would implement them client side without some more complicated mechanism (like CAS).
- macintux 5y agoAbsolutely. At Basho, the company learned over time that developers needed help using a distributed key/value store correctly, and started building CRDTs into the server.
- yokoprime 5y ago> You could say the same thing about web apps not needing fizzbuzz, but that wouldn't get you hired. fizzbuzz is not great, but its also implemented as a stand alone webapp (or console app), not added to an existing codebase. im not against incr/decr, my point is moving beyond these simple operators is pushing the product into feature bloat territory.
- db48x 5y agoI don’t completely disagree with you, but every interview question has some artificiality. This interview question cleverly moves that artificiality out of the way, so that it isn’t part of the programming task. Since the point of the question is to test the candidate’s programming ability, that is a great boon. And it’s not like you can’t chime in after you’ve done the task to say that you don’t think that the multiplication operation is a good fit for memcached’s role. You might even get extra points for that; nobody wants to hire someone who can’t think intelligently about the tasks they are given. Just don’t blow it by refusing to do the programming task on those grounds; sometimes we don’t get the opportunity to choose every task we work on. Sometimes they turn out to be a bad idea, and yet it is still to our benefit to complete those tasks to the best of our ability.
- yokoprime 5y agoMy perspective is not from someone taking the interview. I understand the goal here, but it's artificial enough it's something which actually degrades the product they are modifying. It's also quite time consuming for everyone involved in the process. A lot of moving parts, where only identifying how to solve the problem is actually relevant.
- db48x 5y agoI think all the moving parts, as you say, are in getting the build dependencies of memcached set up. As stated in the article, the candidates were given an existing machine to ssh into, where that had all been done already. As for whether the modification “degrades” memcached or not, that is a great thing to bring up with the interviewer _after_ you have taken the opportunity to show off your programming skills.