Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

In your daily programming activities, how many times do you have to implement a binary tree? I'm genuinely interested.


Quite a few times. If you are doing things related to computer vision, machine learning, maps, language processing, compilers, speech etc - you are going to use all these CS stuff fairly regularly. You are even going to need stats, linear algebra and probabilities (I'd to literally do bunch of math quite a few times at work on whiteboard).

Most of the crowd here seems to be doing CRUD, JS, iOS stuff. You won't need much of CS/Algorithm skills there and I understand their statements like "I have never needed to touch binary trees in 15 years". Unfortunately they are trying to make case that this is same everywhere. Sure not all jobs at GOOG/FB/MS require strong CS skills but lot of projects at these companies do. It's not reasonable expectation to walk in to these companies who literally thrive just because of their algorithms and say I don't give a damn about CS but look at this package manager I built. In my opinion, people who can't work with something as simple as binary trees won't last a day in many of the projects at these companies. Learning frameworks and languages are easy, problem solving using CS primitives is hard earned skills.


I find myself implementing trees fairly often (and manipulating them even more often), but since I'm not using a language that requires lots of pointer juggling and lifetime reasoning, I consider implementing them a pretty basic task.


Interesting. What type of software do you work on? I ask because I write code for robotic control loops and looking to explore any possible angle. Someone who writes trees often could help broaden my horizons.


I work a pretty regular dev job (database analytics/reporting tool essentially). I of course never have to _invert_ binary trees, that's a pretty artificial example, but I had to write a method for pretty-printing tree structures for debugging something just this week. This is a good question.


Normal web dev job? Never. Having fun with genetic algorithms? More than once.

At my day job, I did have to write a CSV parser once. Once. Don't quite remember why using an existing solution wasn't an option. I think the input wasn't exactly proper CSV format, but was very similar.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: