33 ms·
I went through the same thing. My experience showed that the difficulty rose from the two very different work flows. Windows is mosly a point and click deal. Ev
by orangethirty 14y ago
I went through the same thing. My experience showed that the difficulty rose from the two very different work flows. Windows is mosly a point and click deal. Even the .NET IDE of choice (VS) is less about coding and more about hitting the space bar. I'm not critizing it, because it is very good and helps save time. Though it did make me lazier, which I thought would be impossible. On the other hand, Linux/python/any language really, is a bit more raw. You have to do a lot of things yourself. There is little hand holding (though it has been improved over the last years). It pushed me to really dig into the OS and learn how it works, instead of just sitting there clicking. It has also helped as an engineer, because I know write code that is more modular, instead of platform specific. And by modular I dont mean OOP abstractions, but it the end product being able to be used by different OS versions.
I suggest you just jump right into it. Being well versed in Linux doesn't mean you will not hit walls. You will. I guarantee it. It just means you will understand why did you hit the wall and how to jump over it. I suggest you create a VM with Ubuntu running on it and just install stuff without a fear of breaking it. One of the most fun (and frustrating) experiences I had was with learning how to use chmod. I once changed almost every file on the OS to file settings 777 (writeable, readable by anyone).
Just keep hacking at it. It has taken me at least 6 years to reach this point.
- takluyver 14y agoPoint-and-click vs. the command line isn't just about hand holding. Setting things up with the command line might seem less convenient, but it's very easy to make a script when you want to automate that setup routine. I'm a little surprised that the grandparent post had trouble setting up Django, though. Once you've installed the python-django package, you should be able to follow the Django tutorial straight away.
- freehunter 14y agoSetting things up with the command line might seem less convenient, but it's very easy to make a script when you want to automate that setup routine. This comes off to me as a major disconnect. It almost looks like you're saying making a script to automate a setup is as easy as a point-and-click interface. I would say setting up the script is less convenient, in that you need to learn basic shell scripting first. Point and click requires you to learn basically nothing. Using a CLI rather than a mouse requires worlds more brain power and is worlds less intuitive when you're coming from a Windows world.
- klez 14y agoOk, now repeat your setup procedure on 50 machines. Writing scripts is a medium-long term investment. You're right that for one off tasks it's quicker to point and click, but once you need to repeat that task, scripts are faster.
- takluyver 14y agoI agree that it's much less intuitive, but it's worth explaining why we put up with that. It's not just because Linux isn't as polished as Windows - shell scripts are a feature. A case in point: I was setting up automated tests on a Windows machine today, and I had to install pywin32 automatically in a virtualenv. Both the download page and the installer are built for a human to click through, and are problematic to do from a script.
- webreac 14y agoWhen you want to document a process, it is easier to copy paste a couple of commands than to take a dozen of screendumps with check boxes.