Hacker News new | ask | show | jobs
by WickyNilliams 5326 days ago
That's an interesting perspective that had never occurred to me. I'll be sure to take note of the subtleties of installation, the file system etc to see how this OS-as-IDE thing is manifested. To be perfectly honest, I'm not even familiar with how the file system works in Unix. I almost feel embarrassed saying that as a computer science graduate with many years of professional programming experience!

Are you recommending avoiding IDEs completely(in the traditional definition of the IDE, not the OS-as-IDE paradigm you described) to expose myself to Unix as much as possible, or just to have an awareness of what's going on behind the curtain?

Cool, i'm already 95% decided on Ubuntu, so that's no longer a concern. Good to hear someone weighing in with other distros though, you rarely hear of anything beyond Ubuntu these days, so thanks for that.

I only really know one Linux aficionado/proponent, so i will definitely be leaning on him when i need to, though as you say i want to put myself through the pain for the purpose of learning and rather than seeking help at every opportunity. Saying that, last time i discussed Unix with him he ended up recommended that i just skip GUIs completely and go for FreeBSD. He must think i'm either a sadist or incredibly brave! Hopefully he won't shun me because of my need for a GUI :)

1 comments

IDE's are a bit of a closed off garden, to use a bad metaphor. They provide all the components you need, editors, terminals, shortcuts to run commands, but when you learn that you can choose between using an IDE or building up a toolset on your own, then you can make a better choice for the job at hand. There are some really good IDEs out there and once you learn both, it's personal preference. I certainly use both depending on the task.

/bin and /sbin - binary files go here, namely programs /lib - all the shared libraries and other code that gets executed by programs /libexec - other kinds of executables that are not shared libraries or command line programs /src - source code /src/include - all your C headers /share - shared resources, data, game data, pictures, wallpaper, icons etc... /share/doc - documentation /var - runtime data, log files

So what's /usr? These resources get split between / and /usr for historical reasons. There's a push to put everything in /usr and get rid of the split. Go look it up if you want to know why it's this way.

The thing to notice here is there are no program specific directories at the top level. This is because all programs are thought of as small tools or cogs that you can build larger tools upon. It's a system, not a way to run a couple of different apps in their own sandbox.