3 ms·
You have to be really GOOD at your field to have this freedom. Good for you, dude. I also like to abstract away the non-sense part of a problem, so that I can
by hxchen 8y ago
You have to be really GOOD at your field to have this freedom. Good for you, dude.
I also like to abstract away the non-sense part of a problem, so that I can focus on the real intellectual puzzles.
- Const-me 8y ago> I also like to abstract away the non-sense part of a problem Some boring problems need to be solved anyway, and they can’t be abstracted away. Just when you’re picking the right tools, it shouldn’t take too much time. For example, that CAD/CAM app I’ve developed has a lot of very interesting algorithms inside. But the software still need to appear on the user’s PCs somehow, i.e. we needed an installer. I’ve picked http://wixtoolset.org/ http://wixtoolset.org/ It’s mature, well supported, first-party i.e. made by Microsoft, open source, integrates nicely into visual studio. Because of these things, I’ve spent less than a week in total over the course of 1.5 years working (=develop, test, and support combined) on the relatively boring installer part of that software. The installer was just an example, many commonly encountered boring problems already have good solutions. E.g. need RPC, pick .NET and WCF. Need to store structured data, pick the highest level library that fits other requirements (despite I generally don’t like SQL, I still know it and I’ve used sqlite a couple of times when it fit well). Need to expose JSON HTTP API on MacOS without much performance constraints, pick Python + CherryPy, the Python is sufficiently high level and it’s already installed there. Without picking the right tools, I’d spent a lot of time solving these boring problems.
- hxchen 8y agoYeah a good point. I think the issue here is order: solving which first. Algorithms motivate you, Handling interface demotivates. So start with the motivator.