I must be a masochist....

Ok, I'm starting a new program, and am looking for some feedback
before I really get into it, or get anyone else involved.

In the most simple terms, I'm makeing a gui interface to cvs.
I know, now your going "So what?? simple AND pointless, grats.",
But thats only the begining....

I'm going to combine cvs some other concepts, like irc style chat,
and "Sync'd" mode. As to the chat part, imagin that everytime you 
when into "Sync" mode, you got loged into a chat window that all the
other "Sync'd" developers were in, and you had all the interaction
of a irc channel, and more(Like shareing images, more personalized 
stuff like made a color or an icon<This does have perpose, as 
explained later>).

Also: you (Of course :) have the cvs your loged into (and 
I say cvs in general as it will work with many directorys at 
once), and each file thats open will have the developer icon or color
next to it, and be highlighted as influx. As soon as any app falls out
of flux, a broadcast is sent out to all "Sync'd" and everyone preforms
a cvs update of the specific file. A note to the "Open"ness of a file,
when you open things from a cvs tree, it uses the programs you have 
ready'd, via a small toolbar at.. well where ever happens to be, this
is gnome :), the toolbar is filled with all the apps you've made links
to, and you just drop the file on the one you want to open it. Or 
theres a openwith submenu on the file itself.

Now you have realtime intercomuniation for developing, can see what
other developers are curently working on, work on the files you have
access to with anytool you want, what more do you need? 

I'll tell you....

You can send files to each other.
You can send realtime images.
You can set a tag on a file you editing, to give a note to others as 
to what your doing(Or trying to do :) with the file.
You have a 100% realtime TODO menu, as well as knowen bugs menu, with
a interface for developers to add and remove the enteries, and a way
to keep track of (in general) where you can go about locating the
bugs, and where a TODO should be started/put/whatever(You understand)
if such is aplicable to the TODO in question.
You can be sure you have the LATEST copy of everything.

Now as for how I'm going to go about this sync'd thing, I'm thinking
that there should just be a new directory added to any cvs tree that
wants to use this, that contains a list of th address of all the 
people curently working on it, and your client reads it, tells 
everyone about YOU, and adds your address to the list. This is so
cvs polling doesn't ocure, everyone just keeps juggleing , circle
jerk style networking, but async, so if one person is slow, they lag,
not everyone. Doesn't work for mission critical, but it's fine for
most things. If people tell me I should really design it miscrit to
begin with(And I mean miscrit in the sence of 100% sync, so that 
everyone WILL be up todate, at all times) then I'll start with a 
server style setup. I don't want to do this, as we REALLY have enough
servers in unix.

As to the masochist subject line, thats becouse not only is this going
to be a large and intricet progect, but I'm:

	A: Only a fair programer. Luckly a C programer.
	B: New to Gtk+(Been through the samples, and testgtk).
	C: REALLY new to Gnome.
	D: New to cvs.
	E: Did I mention that the little Gtk+ I know, is ALL I know
	   about gui programing?

Now this isn't a total loss, as I am a programer, I just haven't done
anything in this area. ever. I'm a fast learner, I learned the MPI
parallel procsesing library, and did a course's worth of programing
with it (4 moderate parallel programs), in 3.5 days. And I wasn't even
takeing the class :), just helping a friend out.

Anyway again, send me your comments, sugestions, flames, whatever...

Get Your Private, Free Email at http://www.hotmail.com

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]