9 ms·
Algo Deck: an open-source collection of 200 cards on algorithms
- melling 7y agoI followed the link for Anki on the iPhone and it’s $25. No other options?
- TheAdamAndChe 7y agoIt's free on Android. Works fine in windows and ubuntu too.
- m3kw9 7y agoFree on safari
- pavedwalden 7y agoThe explanation that iOS users are subsidizing all other Anki users with that price somehow made it easier for me to swallow than if I viewed it as mere price-gouging.
- winkelwagen 7y agoThink you are able to use the web ui. In my experience it works pretty well. It also syncs with the free desktop app. I still having a hard time understanding the use for this after the job interview. The few times I’ve had to deal with data that was large enough to be big O and needed to optimize it, I just spend some time researching it a bit. Plenty of answers online for those cases. Someone who actually enjoys thinking and researching this subject, but not I’m not going to grind hackerrank. It actually stopped me for even considering to apply at a company that uses this as a bar. A developer generally is someone who solves business problems, sometimes with code. I’m happy that I work in a country where this grinding is not the norm.
- typicalhn 7y agoThe authors (imho valid) argument (paraphrased) is that if you have 1k usd to buy a phone when there are equally functional and more open 100usd phones then you can pay $25 for an app. Otherwise buy a $100 android and use the free app. Or use the windows and Linux versions (free too)
- iillexial 7y agoThat’s a strange argument. There are many Android phones that cost $1k. Also, my iPhone didn’t cost $1k
- cycrutchfield 7y agoAs somebody that interviews a lot of candidates, I almost never ask rote memorization questions like these. I have to wonder, are there people who do? What sort of signal do you hope to gather by doing so?
- GaryNumanVevo 7y agoUnfortunately there’s a large amount of grifters out there providing tech interview “coaching” to people with no prior experience. Fortunately as someone who also interviews SW candidates it’s really easy to spot who just memorized Cracking the Coding interview and Geeks for Geeks answers. I literally had someone write down the exact answer for an algorithm question that appears on GeeksforGeeks down to the small bugs which the post had originally.
- dominotw 7y ago> I literally had someone write down the exact answer for an algorithm question that appears on GeeksforGeeks down to the small bugs which the post had originally. how did you know/verify this? wondering why an interviewer would go GeeksforGeeks and other interview sites and match a candidates answer line by line.
- steev 7y agoIt seems pretty reasonable to me, as an interviewer, to look up the question I am thinking about asking to see what is available online. Is there a reason you wouldn't do this?
- dominotw 7y ago> to look up the question I am thinking about asking to see what is available online. ok if you find that your question is very common leetcode problem. What do you do with that information? Looks like GP decided to use that common question anyways in the interview. Write some sort of automated plagiarism test that checks against all common sites and answers ( leetcode can have 100's of user posted solution) ?
- gwilliams 7y agoboolean checkExactlyOneBitSet(int num) { return (num & (num - 1)) == 0; } That looks like it'll fail when num == 0. I think it should be: return num && ((num & (num - 1)) == 0);
- deleted 7y ago[deleted]
- anentropic 7y agomaybe posting a github issue would be helpful
- contingencies 7y agoUnpopular opinion: Programmer time is more valuable than machine time. Maintenance is 90% of the life of a system. Therefore, just know the concepts for each .md file, be able to describe their general properties, and be able to work with existing implementations in the real world. Formal complexity is rarely useful, because on cheap hardware very inefficient code scales very well. Certainly, don't re-implement basics like sort, graph traversal or queuing algorithms unless there is a pressing need. For example, it is infinitely more useful (faster implementations, more proven code, less maintenance overhead, free upgrades) to be familiar with iconv and the data available in the Unicode database than to memorize random facts about encodings.
- anonsivalley652 7y agoThere's more craftsmanship nuances between being lazily obliviousness to real-world impact and prematurely optimizing everything. Build something that works and is useful first, make it not suck and then try to make it awesome with what time is left. IOW, pull model of development from the real world rather than pushing through arbitrary/unprioritized development obsessed with using particular technological fashions. Yes, reuse optimized libraries that are best at solving common problems but don't deploy Hadoop to make an Arduino toaster, e.g., apply engineering discretion long learned from much trial-and-error and then verify it works and is correct with proper testing and benchmarking.
- VvR-Ox 7y agoThis is the gap between theory and practice. When you study you will learn a lot of stuff that seems useless for a Software developer at his daily job. When you only know practice you will be able to use the tools but probably do not understand what most of them do, how they do it and why. Of course this may seem useless in many cases but on certain occasions like optimization some more theoretical knowledge may help you to dramatically improve your code or architecture (It could be the other way around of course). In the end I think no matter if it is practical or theoretical know how you may gain something from it in the future even if it is not a (typical) topic of your field of work. A very important insight for me is that you can learn as long as you breathe and it helps you to age more gracefully while being better at what you do.