3 ms·
This sentiment gets expressed every time programming is made more accessible. It always turns out that the difficulty of "setting up a basic [hello world appli
by marshray 7y ago
This sentiment gets expressed every time programming is made more accessible.
It always turns out that the difficulty of "setting up a basic [hello world application]" is entirely unrelated to the essential complexity of the problem space and attracting a broader range of new users is later viewed as a valuable advance.
- king_magic 7y agoYeah, but... the sentiment exists for a reason. Look, I’m all for growing programming talent, but I’ll leave the toy visual/drag and drop interfaces to those who are interested in using them to build intuition (absolutely nothing wrong with that). But beyond that, I’m going to use the grown up tools to build real things (and get paid for doing so).
- marshray 7y agoUse whatever works for you. That's the point. I'm a fan of plain text and source control myself.
- blackflame7000 7y agoWell for example if people don't understand the difference between continuous, discrete, and unrelated values then they will have major flaws. For example, say they are trying to build a NN to predict customer orders by geographic area. If they treat zip codes as continuous or discrete values they're going to get really strange results because ML is ultimately just interpolation/extrapolation. Idk how well drag and drop can convey those principles
- jmngomes 7y agoI see user skills and the fact that the tool is drag and drop as two different issues, in this context. A fluent Python developer that doesn't understand basic ML concepts can easily use something like Scikit to code and build "wrong" models. By "basic concepts" I mean standard tasks like data preparation for specific algorithms, sampling, evaluation methods, testing for bias, or just generally how to properly execute most ML tasks like the ones prescribed by something like CRISP-DM. Someone with basic coding skills - e.g. knows SQL and some imperative programming - but with a solid understanding of ML tasks, and how to execute them properly, probably has a better chance of coming up with better results than the former, using something like IBM Modeller or RapidMiner. Note that I'm not saying that a drag and drop tool is superior; you could build a flow-based GUI for Scikit, so a tool like this is always, at most, an interface to some code libraries (Scikit, in this example). Having full access to the actual lib, or just better libs, is likely to be less constraining, and more apt for more sophisticated approaches.