Posted by robost86 on 01:46:00 06-30-2001
Earlier today, fabs, I and Péter talked about this code sharing system. I said I would come with some more detailed suggestions about this project, here they are. Oh, and one more thing, how many of you are interested in coding on this? Please tell me soon, or else I'll make this project my own .
YPN Code Sharing System
Server
We haven't got a real server, so the server part of this project will be run
on the home computers of some of the YPN people. Reboots, crashes and other
things make it impossible to be up 24 hours/day, if we want to be up all the
time, we must have at least 2 or 3 servers running. These servers should
communicate with eatch other, and all data should be stored at al servers.
When one server goes down, and comes up again, it must be synched with the
others. We could also decide to have just one server, on a pretty reliable
computer. That would be a lot easier, and because this little project probably
never will become very big, the server doesn't have to be up 24 hrs/day, 365
(or 366) days/year. I suggest we just have one server.
Client
The server can be a console program running in the background on someones
computer, but the client must have a user interface. I see at least three
ways to make a portable (Linux and Windows) graphical user interface:
1) GTK+
2) Delphi/Kylix
3) Web based interface
A GTK+ or Delphi/Kylix client would need some porting (not very much), a
web based interface would need no porting at all. A GTK+ or Delphi/Kylix
client would have a look like Napster, but a web-based client would look
like SourceForge or YPN. You can also combine the above, do some stuff,
like registering via HTTP, and other stuff with the client. Some tasks
could even be made by a text-based program. Text mode programs are maybe
not for beginners and lazy people , but some tasks are simple enough to
be made om text mode.
YPN web page
Péter said he could do a PHP script that communicates with the server. One
thing we can use that to, is to make a "Code Sharing System status page",
showing stuff like online users. It would also be possible to send a message
to any online user using the client from that page. I admit that wouldn't be
very useful, but it would be a funny little feature .
What to do (priority order)
1) A working, but simple server with the basic functions, like
up-and-downloading files and chat. We also need to do a test client (that
one could be text based) for testing the server.
2) A better client, with a graphical user interface.
3) A web page with some administration/downloading functions (using CGI
programs written in C).
4) PHP scripts for communication with server.
5) Support for many cooperating servers.
Programming languages
Most of the project will be written in C (hehe, SilentStrike, low-level wins
this time . If we decide to make a Delhpi/Kylix client, we have to use
some Pascal. Maybe we (hrmm... Péter) does a PHP script for communication
YPN page Server. So, if you know C, that should be enough.
Posted by abhi on 12:18:00 06-30-2001
Hi,
By code sharing, i think u mean for project management. For this i suggest setting up a simple cvs server and installing tools like viewcvs or bonsai for web based frontend. I don't think we need to build another tool when tools like cvs exist (re-inventing the wheel !) and for the chat, give directions for the irc channel.
Bye,
Abhi.
Posted by Peter on 13:11:00 06-30-2001
I don't know about all that stuff... But I am the guy who's always bitchin' around about PHP, so there it goes.
I have a question, since I am starting to dive into C/C++: Is C more low-level than C++? Robert, why is it such a big difference in this particular case?
[addsig]
Posted by KaGez on 17:28:00 06-30-2001
I did some suggestions , but seems like it was on the wrong post ... go take a look at "Code Sharing System" (the one from fabs) in this section ...
[addsig]
Posted by Twintop on 01:00:00 07-01-2001
If Petér doesn't want to/can't do/needs help with the PHP side of this, I'm available to help with that.
[addsig]
Posted by KaGez on 03:38:00 07-01-2001
and some time ago he said that he won't use any PHP stuff .... or am I dreaming ?
[addsig]
Posted by fsvara on 10:43:00 07-01-2001
i don't think it's supposed to be a code/version management system.
More a napster for sourcecode.
Posted by Peter on 11:41:00 07-01-2001
exactly. and who said he's not gonna use php??
[addsig]
Posted by KaGez on 14:46:00 07-01-2001
Peter: I though robert said so before , but maybe I just mixed up some things ... dunno ...
[addsig]
Posted by Twintop on 20:13:00 07-01-2001
Whoa, ok...I got the impression that Peter was going "Ugh, I have to do the PHP coding" so I posted up and offered my assistance...but I'm not sure if there will be PHP in this now.
[addsig]
Posted by Peter on 10:46:00 07-02-2001
lol, as long as I am in, there WILL be PHP coding . But I will probably need some assistance - that depends though. Are you good at PHP?
[addsig]
Posted by KaGez on 15:10:00 07-02-2001
I oculd help you guys with a bit 3D power , but not with PHP , sorry
[addsig]
Posted by Twintop on 18:57:00 07-02-2001
Yeah, pretty good with it. The only real thing I've done with it is http://www.footbag.f2s.com/ and I haven't gotten a chance to work on it some more sice the start of May since I've been to busy.
[addsig]
Posted by robost86 on 22:12:00 07-02-2001
Péter: "I have a question, since I am starting to
dive into C/C++: Is C more low-level than C++? Robert, why is it such a big difference in this particular case?"
C is more low-level, yes. I recommend C before C++. The reason I want to use C for this is because there are more compilers for C than there are for C++.
Posted by KaGez on 07:56:00 07-03-2001
I though almost any C compiler can compile C++ stuff too ... at least in Linux almost every compiler does so ...
[addsig]
Posted by robost86 on 22:19:00 07-05-2001
"I though almost any C compiler can compile C++ stuff too ... at least in Linux almost every compiler does so ... "
Hmm.. Every C++ compiler can compile C stuff, but I don't think there are many C compilers that can compile C++ code, in that case they are C++ compilers
What I find funny about this is that you are figthing about what kind of program this is going to be. What is even funnier is that I don't know either.
Seriously, I am not going to just put a CVS server up, this is a "for fun" coding project, if we wanted something useful, we wouldn't have made it ourselves
Posted by KaGez on 09:14:00 07-06-2001
hehe
even a well-planned project can be "just-for-fun" =)
[addsig]
Posted by robost86 on 15:55:00 07-06-2001
Yeah, but what I meant was that I have no plans on anything but experimentating. If we got a working product, that's nice, but that isn't why I make it.
Posted by KaGez on 16:55:00 07-06-2001
hhhmmm ... ok , it's fun to code it , but if you don7t get it to work , that means that it wasn't fun enough to brint it to the end . Or am I thinking wrong ?
[addsig]
Posted by robost86 on 15:55:00 07-07-2001
Haha, you got it KaGez That's the way I work, even in school =)
Posted by KaGez on 16:59:00 07-07-2001
lol ... If I worked like that in school ... uhoh ... better don7t think about it
[addsig]
Posted by robost86 on 20:37:00 07-13-2001
Hehe, you're in a german school. We don't have _any_ dicipline at all in the swedish school =)
Posted by tcm1998 on 08:36:00 07-14-2001
You forgot a very important option to get it as portable as possible (sounds nice heh ?)
Why don't you code your client in JAVA. It can be run on almost ANY computer as long as you keep yourself with the standard of the
Sun JDK (version 2 is the newest I believe).
pro's
- Java is free (look at www.sun.com)
- Java is ultra portable
- Java is secure
- Java is easy to learn once you know C++ (it's like C++, but they removed the pointers and other difficult C++ stuff)
- Java is easy to port to the web, by just making it an applet
con's
- Just one, Java programs take a while to start, since there's a lot of internal initialisation and checking done.
(Actually, I don't know how long programs in java take to start, Applets take a while)
Posted by fabs on 10:05:00 07-14-2001
tcm, you do have a point there... Java is a bit slow but you're right, it'd probably be the best choice for a cross-platform client. Personally, I'm just not very good at Java
fabs
Posted by robost86 on 21:47:00 07-14-2001
I don't know much Java either, but I think Java is too much OO and not fast enough. We really need a portable client, maybe Java is the right language to use. I would prefer C.