• 0 Posts
  • 18 Comments
Joined 1 year ago
cake
Cake day: August 11th, 2023

help-circle







  • You seem to talk about different things when you say “visual clue”. Yes, there will be a small duration in the video where the event happens and maybe a short aftermath. That’s not a visual clue, that’s the thing you’re looking for. What all others mean by visual clue is a definite indicator that you can see when picking any random frame in the video that tells you if that frame is before or after the event. That allows you to exclude all other frames from your search, reducing your search range by half.

    A stolen bike, a broken window, your examples that trash the place or end up with a crowd of people in the area, all leave such a visual clue. At any random frame you can check if the bike is there or not, the window is broken or not, etc.

    But let’s say you have footage of the street facing CCTV and you need to find at what time the suspect left the scene (crime happened somewhere else). There’s nothing that tells you when looking at the halfway point if the suspect already passed or didn’t. You still have to look at both sides of that point in time.

    The classic example for binary search is looking for a word in a dictionary. You open it halfway and see if the words there are before or after the one you’re looking for. Then you know which half of the dictionary you need to look in next. Then you use the same method for that half and so on.

    But what if someone highlighted a word in the dictionary and you don’t know which word? Binary search is useless. You have to skim through the whole thing until you see it.



  • It probably depends a lot on where you live. My wife’s bike got stolen and she was woken up by police coming to check on it (one of the maintenance guys at our apartment noticed a man at 7-Eleven riding it and recognized it; came back running to check if it’s indeed missing and called the police). We fully expected the police would do nothing about it (it was the cheapest Walmart bike), but an hour later they called that they found the bike and have the culprit in custody. It did help that the bike was a girly mint green with a wicker basket, so they instantly recognized it when they saw it.

    Then again, in San Francisco, when my wife got her car window smashed and wallet stolen (she was late for class and dropped her wallet under the car seat, didn’t stop to take it; but it wasn’t the wallet that caught the thieves’ attention, it was the breast pump bag that looked like a laptop bag; they threw it on the floor when they saw what it was), we never heard anything back from the police.



  • That is totally a non-trivial problem, which requires a lot more conception before it can be solved.

    Most candidates don’t realize that. And when I say they split by single space I mean split(' '). Not even split(/\s+/).

    Does “don’t” consist of one or two words? Should “www.google.com” be split into three parts? Etc.

    Yes, asking those questions is definitely what you should be doing when tackling a problem like this.

    If I got that feature request in a ticket, I’d send it back to conception.

    If I got it, I’d work together with the product team to figure out what we want and what’s best for the users.

    If you asked me this question in an interview, I’d ask if you wanted a programmer, a requirements analysis, or a linguist and why you invite people for a job interview if you don’t even know what role you are hiring for.

    That would be useful too. Personality, attitude, and ability to work with others in a team are also factors we look at, so your answer would tell me to look elsewhere.

    But to answer that question, I’m definitely not looking for someone who just executes on very clear requirements, that’s a junior dev. It’s what you do when faced with ambiguity that matters. I don’t need the human chatGPT.

    Also, I’m not looking for someone perfectly solving that problem, because it doesn’t even have a single clear solution. It’s the process of arriving to a solution that matters. What questions do you ask? Which edge cases did you consider and which ones did you miss? How do you iterate on your solution and debug issues you run into on the way? And so on


  • I always feel bad when I try out a new coding problem for interviews because I feel I’m going to offend candidates with such an easy problem (I interview mostly for senior positions). And I’m always shocked by how few are able to solve them. The current problem I use requires splitting a text into words as a first step. I show them the text, it’s the entire text of a book, not just some simple sentence. I don’t think I’ve had a single candidate do that correctly yet (most just split by a single space character even though they’ve seen it’s a whole book with newlines, punctuation, quotes, parentheses, etc).



  • I use it both ways. As a software engineer I use it for various packages, which don’t even need a releases page. But also as an end-user of open source software, I use it to download pre-built binaries of said software. Idk if you know, but there’s a lot of open-source software out there. And github is the most popular platform for hosting it. And when I say software, I mean the kind where you don’t expect your users to know how to build it from code themselves.




  • If you use it as a developer you don’t care about the releases page. You want to see the code and for latest version you just need the git tags. But I’ve also used it for stuff I just needed to run on my machine as an end-user. And for those you turn to the Releases page. That’s where pre-built binaries go.

    But it also depends on the target audience. Some projects, even if meant more as software to run than code to import, still target mainly developers or tech users in general and will not have more than just instructions on how to build them. Others, say a Minecraft launcher, or some console emulator, will target a wider audience and provide a good Releases page with binaries for multiple platforms.