On 06/30/11 03:00, Stephan Beal wrote:
On Thu, Jun 30, 2011 at 11:40 AM, Lex Trotman <elextr@gmail.com mailto:elextr@gmail.com> wrote:
I'm sure you had a very embarrassing interview with someone about why you broke the production server and are very annoyed with yourself,
i didn't actually - the marketing people who complained got the generic technical explanation that a software bug caused it.
The good old PEBKAC bug :)
especially as the full file path shows in the title bar ('aint I a
Nobody who works with a document-editing tool reads the titlebar on a regular basis.
Nobody?
As Matthew pointed out there is a use-case (and a common one from past user input) where project files don't go in the tree, they live in the users ~/projects. In this case the sources are probably not under your project file so relative is irrelevant, its back to absolute.
And i believe that such a use-case lies in the realm of gnome-text-editor instead of an IDE. IDEs are (traditionally) designed to manage specific source-based projects, not OS-wide collections of arbitrary trees.
The way I store the project files has nothing to do with OS-wide collections of arbitrary trees or realms of wrongly named editors, it has to do with not storing my project/session data in a public source tree where other coders have no interest in it. Why does the guy on the other side of the world who uses VIM or Emacs care what build commands I use in Geany? And what would the Debian packager making a package of the source tree care what indentation settings one of the many developers uses? Would the project's core developers want a changeset which includes noise from changing project files? What about Joe Random User scanning the source tree, would he get confused by all the geany, anjuta, vim, emacs, eclipse, etc files littering the source tree root?
Its actually we big system people who tend to have the need to keep project data in the vcs, and who have the control over the projects to be able to do it. Can you imagine approaching Linus asking to put a Geany project file in the Linux vcs? or any GNU project? or ... so in all these cases the project file is user local outside the tree.
If i was hacking the /usr/src/linux i would drop (or symlink) my .geany file into that directory. Problem solved. With the current behaviour, my project file will be invalid the next time i upgrade and get /usr/src/linux-X.Y.Z+1.
Or you could just have your project file in /usr/src and point to the project base directory of /usr/src/linux where the current tree will/should always be symlinked to. I can't even imagine what the kernel source tree would look like littered with the probably hundreds of different editor/IDE project files that it's thousands of developers use between them.
i'm not convinced that having the project file outside the repo provides any benefit or any safety against path-related errors. Not only that, but it challenges common conventions (unsuccessfully, it turns out).
The benefit is that you don't have it in VCS, so when you checkout the code somewhere else, you don't have John Coder's IDE-specific project file in the tree pointing to files stored god knows where :)
I can't think of a single project's source tree I've checked out where the developers store their personal editor/IDE preferences in the project's source tree, at least not that I've noticed. Still, I don't think it would qualify as "common convention", except maybe with VisualStudio projects/solutions.
But hobby-wise going on 30 years - since 25 December, 1983 :). My first line of code was something like:
I was 1 year old in 1983, but I was already coding in QBasic :)
Cheers, Matthew Brush