|
Paul Watson wrote:
Snippet items must definitley be stored as seperate physical files. This may be bad for performance but it will ensure Christian Graus can say "Sod it, I hate this app" then go into the store folder, copy all his code out as files and then kill the app. No proprietary single-file storage mechanism, no "exporting" to get at your code etc. Search performance can easily be managed by managing a search index file where with each edit, delete or update the index is updated. It also makes it easy to email files to co-workers or friends who do not have the app. The system must not lock people into using it for their code, it needs to be open like that.
Really? So we'd have a few hundred files to sift through if we didn't want the app? What's the big deal with exporting to separate files in this scenario?
How would it be easy to find a file (out of hundreds) to email? I think using windows explorer is a pain in the rear, especially when we would have an interface for the user to send a snippet through email in the app.
I don't like the idea of a real database like SQL Server, but a flat file with indexing sounds fine. The app could easily search it, export from it, and if its simple enough, the user may be able to open it in wordpad and find the code he needs.
Paul Watson wrote:
Storage of binary files (maybe a screenshot of the code in action or a compiled assembly DLL)
You realize what kind of crap people would be sending around in CodeCommunity? Pr0n, virii, mp3s, star trek episodes, etc. We'd be making the next Kazaa. Not to mention, its not code and this is a code snippet library. I think binaries should be left out.
Paul Watson wrote:
Syntax colouring
This could probably be built in the app without saving it in the file(s) depending on the language and user settings. Good idea.
Paul Watson wrote:
Do we need versioning?
Hmmm. Would the app do this automatically, or would the user just say this is version 2.0 if they choose to?
Paul Watson wrote:
For the CodeCommunity and CodeTeam systems a robust security model is needed so that we can assign Editors, Administrators etc.
Why not have a community rating system that deletes community snippets if they fall below a threshold?
Paul Watson wrote:
I must put together a Visio file of how I see the architecture working.
I don't have Visio. Is there a viewer or can you export to another format?
All very good ideas and well thought out I might add.
Jason Henderson latest CPP news
"If you are going through hell, keep going." - Winston Churchill
|
|
|
|
|
You realize what kind of crap people would be sending around in CodeCommunity? Pr0n, virii, mp3s, star trek episodes, etc. We'd be making the next Kazaa. Not to mention, its not code and this is a code snippet library. I think binaries should be left out.
Dead right, binary file capabilities for CodeCo woulbe be insane. But for the CodeTeam scenario it is useful. That is in a controlled environment, it is over a LAN so specialist file sharing routines won't be needed. It could even just be a link to a binary file. Hmm, maybe just a "related files" field and that could be to whatever the author chooses, a web page, a text file or an image.
But definitley no binary files in CodeCo. Not until we weed out all the trolls from humanity. i.e. Never.
[Syntax Colouring] ]This could probably be built in the app without saving it in the file(s)
Definitley. And we even have an awesome syntax colourer right here on Code Project, that Brain one. Apparently it is fast and open.
I am all for contacting article authors here on CP who have written code we could use. We should make use of CP
Would the app do this automatically, or would the user just say this is version 2.0 if they choose to?
Automatically I think. But we may be stepping on the toes of the source safe project in which case we should either find a way to integrate or leave it out. We will see.
I don't have Visio. Is there a viewer or can you export to another format?
Don't worry, I won't use any proprietary formats for our documents or designs (that is another thing that should be sorted out for the CP2 projects; What file formats for documentation etc., Word? Not everyone even has Word.) Visio can export to JPEG for now.
Really? So we'd have a few hundred files to sift through if we didn't want the app? What's the big deal with exporting to separate files in this scenario?
Not fully thought through yet. I probably jumped the gun a bit actually in even bringing it up. Like any good project we should first gather requirements and then only start thinking about the actual architecture and technologies. Closer to the time we can argue over this one
Paul Watson Bluegrass Cape Town, South Africa
Chris Losinger wrote:
i hate needles so much i can't even imagine allowing one near The Little Programmer
|
|
|
|
|
More info on the Hari Seldon/Foundation thing (My grand plan)
I don't have an elaborate plan of Galactic salvation though military might or mind control. Sorry.
However, peterchen expressed his concerns about the chosen projects not being useful, but being cool. I am also concerned about them, even though I don't think they will fail, there is a possibility they might. This is where you two come into the picture as my "Second Foundation."
The Foundation was open and known to the galaxy. It was founded as a scientific community to hedge against a midevil time period after the fall of the galactic Empire.
The Second Foundation, was an enigma, a legend. They were the psychohistorians that controlled the fate of the galaxy. They were around to make sure things turned out the way they should.
Our first three projects are open to all of CP and everyone not living under Bob's spaceship has heard about it. I'm trying my best to control things until the projects start then I will only have influence from afar. There is a possiblity that the projects may collapse in chaos and disarray when 20 or 200 people try to help out.
Your project will be somewhat less open. You'll have a project article series but I don't want you to let just anyone on the team, I want you to invite people based on their credentials. I'm sure you can find several high caliber people here, like Christian Grause and Daniel Turini who have expressed an interest in CPP. I'd like you to even ask people who haven't volunteered. If you want to open it up to anyone after you get a core of good people, that's fine.
Once we setup the other projects, I want you to improve on everything we've done. Even though I won't be directly involved, unless you ask me to be, I'd love to stay informed of your progress. So this is your baby, you do what you think is best. Just enjoy yourselves and write a great program that can be used by everyone on CP.
Jason Henderson latest CPP news
"If you are going through hell, keep going." - Winston Churchill
|
|
|
|
|
What a terific idea. No wonder Chris voted you Most Likely To Herd Cats Successfully.
But we must do this Second Foundation idea in a careful way. Not keen on being seen as elite or not following the "rules" of the other projects.
Just enjoy yourselves and write a great program that can be used by everyone on CP.
Yup, the moment someone starts getting anal about all of this I, and I bet many others, will shove off. This is our spare time, we want to enjoy it, learn from it and come out with something useful.
When peterchen gets back he and I can dig into the idea and set it up to move forward.
Paul Watson Bluegrass Cape Town, South Africa
Chris Losinger wrote:
i hate needles so much i can't even imagine allowing one near The Little Programmer
|
|
|
|
|
Paul Watson wrote:
No wonder Chris voted you Most Likely To Herd Cats Successfully.
I had no idea this honor had been bestowed upon me. When do I get my medal?
Paul Watson wrote:
But we must do this Second Foundation idea in a careful way. Not keen on being seen as elite or not following the "rules" of the other projects.
You should follow the rules, but modify them if you feel you must. If you need my signature on a change, then I'll be glad to lend my miniscule amount of credibility to the change. In the least, get a good core team that thinks this is a great idea then open it up to the masses. Most people understand that Platinum members and the "elite" CPians deserve the recognition they get.
Paul Watson wrote:
Yup, the moment someone starts getting anal about all of this I, and I bet many others, will shove off. This is our spare time, we want to enjoy it, learn from it and come out with something useful.
Don't let them get anal. Its your team, kick their butts off.
Jason Henderson latest CPP news
"If you are going through hell, keep going." - Winston Churchill
|
|
|
|
|
OK Paul, let's take number two
3 use cases:
agree.
I hope to count on your Experience for No. 3 - Code Community My webdev experience tops at a 6-person-intranet...
Storage:
Yes, I thought of XML because it's extensible and text. Yet, extracting the snippet from the XML file won't be that easy... (and we have to escape the snippet text)
I like the idea of using a folder structure for the storage, so CG can move around snippets by himself, folders can be used for "access control" (e.g. allow person A to access Folders X and Y...). Small teams could set up a shared snippet library on a file server etc. and implement security restrictions by themselves if required.
Problem: "CodeCommunity" does indeed need an index DB, but this needs to be re-index everytime CG moves around some snippets by hand.
Attribute Templates:
Definitely a good idea.
I already considered a "free" list of attributes for each snippet, just a map string name -> string value. There can be predefined attributes like "Language" (which affects the syntax colorer choosen) etc.
The template can store a set of attributes, with both default values, and "possible" values. e.g. Template "C++ snippet":
Language: C++
Target Platform : [empty] { Win32 | MFC | ANSI C++ | ... }
By just selecting "C++ snippet" I get the correct markup, and relevant fields, and can quickly pick "Win32" as platform.
(Of course, the setup provides default templates, and the user can make new ones)
Using only strings as attributes:
Might seems like an arbitrary restriction. However, the only relevant non-string attribute I can think of (i.e. that needs custom sorting) is "Date", but this can be stored as YYYY-MM-DD string, so it sorts correctly. Allowing arbitrary types as attributes seems to add quite some complexity without much benefit.
Your opinion?
Many-to-Many:
We definitely need a many-to-many indexing, but my experience is that people work better with "strict" hierarchies as long as complexity allows - and even beyond that. So I would favor a "Hierarchical" access (correlating with the storage structure) and a "M:N" - access (probably based on keywords and/or attributes)
Language Dependance
A simple version can well live without any knowledge of the language the snippet is in.
Language dependency only comes in with syntax coloring, search, etc.
Binaries:
Hot topic, I agree...
If we take them in, CodeCommunity and CodeTeam should both allow to
- limit adding binaries to individual users/directories
- allow setting a size limit
- allow all users to filter out binaries
Storage - as seen by user
CristianGraus and CodeTeam probaly get along well with a "local store" (i.e. accessible via the file system), and the possibility of importing a "remote" folder (creating a local copy) from an e-mail, a web server, or a P2P connection
(This is the only case where I see P2P could be handy - sharing over the internet without setting up a server. However, it makes sense only when we can piggyback a well-known IM client)
The Server.. needs to be different.
First, it should be applicable as "Web only", i.e. you can search snippets, copy them to the clipboard, etc.
Second, the client should be able to connect to it, so people can use the dedicated client to browse the library. However, we must avoid people DL'ing the whole snippet library and stalling the connection. (btw. A "proactive" solution would be offering a complete zipp'ed archive)
Well... here I need your ideas.
btw. could you contact me by IM again (tonite, or any evening)? Didn't store your ID... Would be good if we could discuss some "administrative" stuff, and basic design (like what langs to use and how to go on) P2P.
"Der Geist des Kriegers ist erwacht / Ich hab die Macht" StS
sighist | Agile Programming | doxygen
|
|
|
|
|
Great ideas guys. Sounds a lot like: http://artifactsoftware.com/[^]. I didn't think Artifact Desktop was that great though. Slow loading, crashed a lot (for me anyway), and a difficult UI. What you have planned sounds a lot better in so many ways.
Steve
McLenithan
Is Bert Evil? | Homer: "Hello, operator, gimme the number for 911!"
|
|
|
|
|
I realize it's been quite a few years since this was posted. I was curious as to how far the project progressed. I'm interested in the CodeTeam version of the project. It sounds like the perfect solution to a need my team has.
If the project was realized, is it available for use? if so, where can I find it?
Thank you
|
|
|
|
|
OK Code Project Project is the craze of the day.
disclaimer: it's cool to come back from 4 days off and see such a thing. Jason, you're doing good! (You must be doing good otherwise you would get quite som flak ) These are just casual observations.
1) Minor: the usual some "self-obsessison": We discuss the Tools before we have the Task. There is no "Until someone objects we use SourceForge". We all like to think about such tools (count me guilty), because they're cool. Tools to manage such a project even pop up as potential project. Mozilla Mistake.
2) MAJOR: The project to end all projects
Potential projects are voted on by "coolness". THE ai, THE ui library, a Project Management System - without a visionaire who has a clear idea what makes it so cool. Heck, one project gets votes for it's (admittedly cool) acronym. Are we fallen for the geek marketing yet?
I miss case studies, use cases, ideas, suggestions, limits, some driving force etc.
The only thing that stuck with me is the ASP.NET control replacement - because it's a limited and (for the moment being) well defined task. The others I remeber are so fuzzy. An AI? What? To discuss with? To play chess? Compose music? Take over the world? A "can be everything" AI?
Count me in, but we should do our homework before.
"Der Geist des Kriegers ist erwacht / Ich hab die Macht" StS
sighist | Agile Programming | doxygen
|
|
|
|
|
I must admit, I jumped on the idea of a massive project because that's the way my mind tends to go.
I quickly jumped off again, though, once it became apparent just how difficult the startup process was going to be. I think if the project can get past the decision-making stage, and then past the let's-everyone-agree-on-a-design stage, then there is a good chance the project will succeed.
Otherwise...
But I agree, AI? That's a little broad. And something best left to people with large budgets. The control libraries (ASP/MFC) is probably the best bet, with the book as the next, although the book would need someone who seriously knows the publishing industry.
Perhaps a better way of doing it would have been to find someone who is as keen on a project as you are, and in a small group hash out the details. Decide what you're going to do and how. Document it. Then come to the 400,000 members and say, "We're going to do this. Do you want to help?"
J
"You can get anything you want at Alice's Restaurant."
|
|
|
|
|
Jamie Hale wrote:
although the book would need someone who seriously knows the publishing industry.
Isn't it great that we have at the very least two well known authors (Tom Archer and Christopher Duncan) on board CP? What with Nish rising up the publishing ranks and I am sure a few other authors amongst the CPian-base we have a good amount of knowledge about the realities of publishing a book.
Jamie Hale wrote:
Perhaps a better way of doing it would have been to find someone who is as keen on a project as you are, and in a small group hash out the details. Decide what you're going to do and how. Document it. Then come to the 400,000 members and say, "We're going to do this. Do you want to help?"
The ownership would have been far less then. There would be a cabal of top men and then the rest are just grunts pushing code rather than believing in what they are doing.
Having an open policy is best IMO.
Paul Watson Bluegrass Cape Town, South Africa
Chris Losinger wrote:
i hate needles so much i can't even imagine allowing one near The Little Programmer
|
|
|
|
|
Paul Watson wrote:
The ownership would have been far less then. There would be a cabal of top men and then the rest are just grunts pushing code rather than believing in what they are doing.
Having an open policy is best IMO.
Granted. But just to get it off the ground, I think you need this kind of small focused group. If the active CPP is going to have 20 developers trying to get their say in on the design, the project will a) go nowhere or b) have such a lack of focus that it won't end up being very useful.
Just my 2 cents.
J
"You can get anything you want at Alice's Restaurant."
|
|
|
|
|
I know I risk being flamed but we could look at how Linus Torvalds has run his Linux kernel project. There have been thousands of people working without any problems.
jhaga
CodeProject House, Paul Watson wrote:
...and the roar of John Simmons own personal Nascar in the garage. Meg flitting about taking photos.Chris having an heated arguement with Colin Davies and .S.Rod. over egian values. Nish manically typing *censur*. Duncan racing around after his pet *c.* Michael Martin and Bryce loudly yelling *c.* C.G. having a fit as Roger Wright loads up *c.* . Anna waving her *c.* and Deb scoffing chocolates in the corner.
...Good heavens!
|
|
|
|
|
Yeah, but 0.01% of the people did 99.99% of the work...
(And last time I checked, Linus is still the one who approves code to go into the kernel)
"Der Geist des Kriegers ist erwacht / Ich hab die Macht" StS
sighist | Agile Programming | doxygen
|
|
|
|
|
Yeah, but 0.01% of the people did 99.99% of the work...
You can not say like that. They all work but only those whose code is best is included in the kernel. Linus talks alot about this evolutionary development of code. Only the strongest and best code survive.
jhaga
CodeProject House, Paul Watson wrote:
...and the roar of John Simmons own personal Nascar in the garage. Meg flitting about taking photos.Chris having an heated arguement with Colin Davies and .S.Rod. over egian values. Nish manically typing *censur*. Duncan racing around after his pet *c.* Michael Martin and Bryce loudly yelling *c.* C.G. having a fit as Roger Wright loads up *c.* . Anna waving her *c.* and Deb scoffing chocolates in the corner.
...Good heavens!
|
|
|
|
|
That's where a project leader would step in. The leader needs to be the man with a vision and the where-with-all to carry it through.
Jason Henderson My articles
"The best argument against democracy is a five-minute conversation with the average voter." - Winston Churchill
|
|
|
|
|
The first idea was "hey, we are 400.000 here, let's do something together". That's what I still like the best. Alot of people together doing something crazy. I wanted us to buy a house in Brasil, but nobody have still adopted that idea. As you can see from my signatur...
We are not banned from The Lounge but Chris "hinted" that the discussions should be in Testing/Collab. And we are all very well behaving people, as you can see.
jhaga
CodeProject House, Paul Watson wrote:
...and the roar of John Simmons own personal Nascar in the garage. Meg flitting about taking photos.Chris having an heated arguement with Colin Davies and .S.Rod. over egian values. Nish manically typing *censur*. Duncan racing around after his pet *c.* Michael Martin and Bryce loudly yelling *c.* C.G. having a fit as Roger Wright loads up *c.* . Anna waving her *c.* and Deb scoffing chocolates in the corner.
...Good heavens!
|
|
|
|
|
jhaga wrote:
The first idea was "hey, we are 400.000 here, let's do something together"
Remove the 350000 downloaders, then the 40000 inactives, also the 8000 lurkers, probably the 1000 Lounge addicts (how can you program when you hang out in the Lounge 23 hours a day?). That leaves us with about 1000 people. 800 of them are beginners, 100 egocentric pro's uncapable of teamwork (count me in), 100 left so far.
Half of these have not enough time to participate, the rest may have a few hours by week for a project like this.
How big are the chances to do anything "big" with these resources?
jhaga wrote:
I wanted us to buy a house in Brasil, but nobody have still adopted that idea.
Well, visit me when you are in Brazil next time
Off to Brazil in a few days
|
|
|
|
|
Your numbers are only advanced guesses at best and only rubbish at worst. Only joking. The biggest resource we have is Chris's weekly letter. I think alot of people really reads that.
Then we have the possibility of mass hysteria...
And yes, thank you for your invitation. Can I take my whole family and some friends with me?
jhaga
CodeProject House, Paul Watson wrote:
...and the roar of John Simmons own personal Nascar in the garage. Meg flitting about taking photos.Chris having an heated arguement with Colin Davies and .S.Rod. over egian values. Nish manically typing *censur*. Duncan racing around after his pet *c.* Michael Martin and Bryce loudly yelling *c.* C.G. having a fit as Roger Wright loads up *c.* . Anna waving her *c.* and Deb scoffing chocolates in the corner.
...Good heavens!
|
|
|
|
|
Oh, this is too good to resist.
400,000 members
minus 350,000 downloaders leaves 50,000
minus 40,000 inactives, leaves 10,000
minus 8,000 lurkers, leaves 2000
minus 1,000 lounge addicts, leaves 1000
minus 800 beginners, leaves 200
minus 100 egocentric pros, leaves 100
minus 99 VB programmers, leaves 1
Me! To do all the work!
Marc
Help! I'm an AI running around in someone's f*cked up universe simulator. Sensitivity and ethnic diversity means celebrating difference, not hiding from it. - Christian Graus Every line of code is a liability - Taka Muraoka Microsoft deliberately adds arbitrary layers of complexity to make it difficult to deliver Windows features on non-Windows platforms--Microsoft's "Halloween files"
|
|
|
|
|
And in which category am I in? An egocentric VB pro beginning to lurk in the Lounge
BTW: First time I see a 1 for you. Probably some who just lurks around
jhaga
CodeProject House, Paul Watson wrote:
...and the roar of John Simmons own personal Nascar in the garage. Meg flitting about taking photos.Chris having an heated arguement with Colin Davies and .S.Rod. over egian values. Nish manically typing *censur*. Duncan racing around after his pet *c.* Michael Martin and Bryce loudly yelling *c.* C.G. having a fit as Roger Wright loads up *c.* . Anna waving her *c.* and Deb scoffing chocolates in the corner.
...Good heavens!
|
|
|
|
|
peterchen wrote:
Jason, you're doing good! (You must be doing good otherwise you would get quite som flak )
Thanks. You know, I haven't gotten ANY flak yet. I'm utterly amazed. I guess I'm not being tough enough.
peterchen wrote:
1) Minor: the usual some "self-obsessison": We discuss the Tools before we have the Task. There is no "Until someone objects we use SourceForge". We all like to think about such tools (count me guilty), because they're cool. Tools to manage such a project even pop up as potential project. Mozilla Mistake.
I doubt if people will want to wait until we get a group projects wizard. However, Chris would rather we remain onsite than take this to SourceForge and I think he will accomodate us because he wants us to stay here. I practically live on CP now the way it is.
peterchen wrote:
2) MAJOR: The project to end all projects
This is a major big deal. One that might derail the idea altogether. Any project requires planning, and I hope at least a few volunteers will have the patience needed to get through the planning stage.
BTW, if you have any other thoughts/worries please let me know about them so I can bring them up before the group in the proper forum at the proper time. We must remain focused.
Jason Henderson My articles
"The best argument against democracy is a five-minute conversation with the average voter." - Winston Churchill
|
|
|
|
|
peterchen wrote:
An AI? What? To discuss with? To play chess? Compose music? Take over the world? A "can be everything" AI?
Well I wouldn't mind seeing a Neurotransmitter simulator (or a class library), something like a neural network simulator, or maybe two in the same. I agree that this is mentally heavy, but most coders would like to get there hands dirty for fun.
However, if this is a CP project, it would be most beneficial to all CPians to help develop stuff for Chris M to help improve the site and compete with other coding websites.
I am planning finishing my Jungian based ALife Demo soon, I can only work on it on the weekends, which is why it is taking me so long, Marc Clifton is also giving me feedback on my ideas and code, Thanks Marc!
Later, JoeSox www.humanaiproject.org
"Dream as if you'll live forever; live as if you'll die tomorrow."
- James Dean(ISTP)
|
|
|
|
|
I was too busy being flamed for suggesting we use a Yahoo mailing list to read what you had writting before about AI. I'm keen on neural nets - I'm dying to test them out on some financial data.
Let me know if you ever get some time to spend on them.
J
"You can get anything you want at Alice's Restaurant."
|
|
|
|
|
I notice some trepidation and hostility in your post and in some of your messages on your yahoo group.
Can you forgive and forget? Put this behind you as a learning experience and help us figure out how to go about this in the best possible way.
Jason Henderson My articles
"The best argument against democracy is a five-minute conversation with the average voter." - Winston Churchill
|
|
|
|
|