Official Coding Projects in HProg
A bit of organisation
May I suggest that:
- We keep the number of projects low: 2 or 3.
- 1 responsible person be named at the head of each project. That person will take decisions and make sure that the project doesn't get stuck on sensible questions like the programming language to be used.
- Preferably hosted on Savannah for a bit more visibility. SF will do too.
- Members of the projects report their progress on a wiki page once in a while.
Brainstorming of project ideas
Rules:
- Do not comment ideas on the page even if they sound stupid (we'll do that later).
- Add you ideas below and put your name beside it.
- If you like an idea from another person, put your name beside it.
- Avoid very general ideas (ex: "a game", "an app").
- Keep your ideas short.
The ideas
A MoinMoin compatible wiki to run this site. - FrancoisDenisGonthier
A offline wiki submitter. - FrancoisDenisGonthier
Some kind of InfoBot IRC bot for #hprog. - FrancoisDenisGonthier
A 2D turn based game using IRC: "Find Muffy The Magic Goat". - FrancoisDenisGonthier
System to teach "good" programming habits to newbies (see below) - CharlesKrohn
A multi-user text editor. This could allow people working together on future projects to collaborate better. - MikeNolan
not so much "collaborate better" as "collaborate differently" - I think a cvs repository is enough for collaboration purposes. -- IainMcCoy
However, if people want to do this I've worked out a protocol for multi-user text-editing and written most of a server for it. The project could be one of producing a client for the protocol; I am happy to document the system, act as arbiter for protocol issues, and so on. -- IainMcCoy
Maybe an interpreter for a simple programming language, possibly of our own design? - CharlesKrohn
Well, I like the idea of having collaborative group projects, but I'm, not quite sure how well it's going to play out due to the fact that most #hprog-ers have widely varying tastes in languages, and there's a lot of disagreement between the different camps. However, all is not lost. I think that an interesting idea might be to provide some kind of a system to help teach "good" programming habits to newbies. But DrScheme and HTDP may have this already covered... -- CharlesKrohn
Groups projects as I see them should not be community-wide. Otherwise, for the reason you stated, we'd end up not deciding what language to use or even what to do. 2 or 3 programmers per projects should be enough with one of them taking the decisions to help the advance of the project. Smaller project team will allow the different programming languages clans to get together to work on something. -- FrancoisDenisGonthier
I see that nobody seems interrested. Sad. -- FrancoisDenisGonthier
This one is interested, but he is not as far into programming as the majority of the active contributers here. He is willing to learn (or at least try his best), but the other members would perhaps need to be patient with him. His understanding of programming is better than that of most newbies, but he doesn't have much design experience. Despite all of that, he would be glad to get involved in one of those projects and he thinks it would be a blast. (I decided to type that without saying "I") -- MikeNolan
Working with newbies personally doesn't bother me. Many of them, like you I think, are better than they think they are. I know some people are interrested, but few suggested ideas. -- FrancoisDenisGonthier
One of my personal projects lately has been an interpreter for a Lisp-like language. It might be a lot of fun to do something like that as a group; furthermore, those involved would gain a better understanding of what makes up a "good" programming language. We could pick a pre-existing simple language, or design our new one. I'd be a bit cautious about designing a new one though. I've seen a serious attempt to do this before, but the language was relatively complicated and the people involved got bogged down over disagreements about the type system. We'd have to be careful not to spend our entire time arguing over the design, but actually getting something done. -- CharlesKrohn
Perhaps you should make a page about your LISP-like'ish interpreter on the wiki where you could explain how you proceeded to make something that works (or should be working, I don't know :D). Maybe somebody(ies) will be interrested to join the developpment and evolve it into something likely to be useful. With some code already written, it's less likely people will fight over the design. You can also ask for a project page at Savannah. -- FrancoisDenisGonthier
Hmm, I dunno. I have some ideas on where I'd like to go with this thing, and one of those is a complete re-write. It's on re-write #2 now, and it had pretty elegant code (IMO) at one point. It even worked (mostly). But then I started adding new features, and the thing got quite crufty. So I think I'm going to re-do the whole thing at some point in the future. Furthermore, I don't have all that much time to devote to it at the present, since I'm currently engaged in working and studying for the computer science and chemistry placement exams at my college. -- CharlesKrohn
FrancoisDenisGonthier >> Interested, yes; But I'm still waiting for some concrete ideas (either of my own or from someone else)... Having nothing to say makes answering somewhat hard :)
Anyway, just a comment on the problem of choosing a language: depending on the "type of languages" one doesn't have to choose a single language - as long as you can link the different object files in the end. (Obviously this is harder with different interpreted languages). -- MarkusB
I've send the URL of this site to one of my old time friends. He said he bookmarked the site but seemed sad we did not have any project running. He is doing things on his own but has got plenty of time on his hand since he has recently graduated and looking for a job. I just thought it would be nice to mention it...
