Hello, it has been a long time since I posted something here!

I want to talk about my next project. My project is called ‘devpoint’, and it will be a website. This is some sort of a school project. We can add our own ideas, a teacher looks at them, says if it’s a good project, …

the project I have entered was approved, so I could form a group with 2 other people. So the team that will be working on this project this semester will look like this:

  • Adinda (#): PHP coding (view, logic), HTML
  • Lester (#): CSS / HTML / usability / contact with teachers
  • Bert (#): PHP (data), MySQL, Perl, server configuration.

But we will all be working on how the system will work, we want to make it so extendable as possible, like working with packages, around a core or so. you can see it a bit like an operating system with other programs.

I have described the project on IRC this way:

it’s a multilingual website that provides a forum, tutorial system (wiki system), code lib, project manager
you as a user can start projects, and each projects gets a forum, a wiki, svn, ftp, bug-tracker, mailing-list
and we’ll all code it from zero =)
on our own core (engine), and each thing (eg: forum) is a package
and for our own good, we’ll make it so, that one package can use another package too.. :)

the first meeting with our ‘promoter’ will be this Tuesday, where we will talk about our project, about what we want to do, and how we will do it.

I’ll keep everyone up to date via this blog ;-)

ps: yes we are crazy!

for the duch people: mijn ingediend voorstel:

devpoint – the point for every developer!

//devpoint is een naam die nogal veel gebruikt wordt voor domeinen, dus nog andere zoeken

1. Doel van de website:
een meertalig platform ontwikkelen voor developers waar ze tutorials kunnen schrijven / vinden, waar zowel experten als beginners kunnen informatie vinden over hun favoriete programmeertaal,
en waar mensen opensource projecten kunnen starten. ieder project krijgt space, svn toegang, mailing list functionaliteit, bugtracker, en ftp acces.
samengevat: hét platform ontwikkelen voor de (opensource) ontwikkelaar

2. principes
2.1 MEERTALIG
Iedere gebruiker moet de site kunnen zien in zijn eigen taal, en andere talen dat hij verstaat, dat wil zeggen dat hij moet kunnen
aanduiden welke talen hij verstaat + wat zijn hoofdtaal is, zodat hij bvb newsposts geen 2x maal ziet (1x in het Engels, en 1x in het Nederlands ofzo).
ook goed nadenken over in welke taal de site standaard te zien is, voor mensen uit verschillende landen.
2.2 ALLESOMVATTEND
Het moet MOGELIJK zijn om informatie in de database te hebben over echte IEDERE programmeertaal, waardoor echt iedere developer hier zijn gading kan vinden.
2.3 CODE-COLORING
waar ook dat je code kan posten op de website, code moet ingekleurd worden. en of het nu PHP is of C#, het moet echt wel instaat zijn om ze correct in te kleuren. Ik denk dat er al genoeg libraries zijn
die je kan gebruiken, en samenvoegen tot een grote lib om dit alles mogelijk te maken.
2.4 INPUT
alle input moet gebeuren door een WYSIWYG venster. (zeker de XWIKI pagina checken, de plugin dat zij binnenkort beschikbaar zouden stellen lijkt super zijn!)
input mag ook enkel voorzien worden voor personen die zich op de site geregistreerd hebben.
2.5 EXTENDABLE
bouw de site zo op dat ze werkt met een ‘core’ waar je verschillende applicaties (plug-ins) kunt opzetten, zodat de site makkelijk te onderhouden valt, en er makkelijk
extra functionaliteiten kunnen aan toegevoegd worden (of terug verwijderd).

3. functies:
3.1 LOGIN SYSTEEM
een ‘solid’ login systeem met de mogelijkheid van pm’s te sturen, informatie over jezelf te verstrekken, en opties van de website aan te passen.
Het aanmaken van een account geeft je (enorm) veel meer mogelijkheden op de site.
daarnaast moet er een uitgebreid systeem komen die iedere gebruiker specifieke rechten kan geven tot de website. (news poster, moderator, …, …)
voorzie de mogelijkheid om te ‘registeren’ via een open-id account.
3.2 TUTORIAL SYSTEEM
een tutorial systeem dat is uitgewerkt volgens wiki standaarden, dat wil zeggen: iedereen (die ingelogd is) kan tutorials toevoegen / wijzigen.
Je moet uiteraard niet ingelogd zijn om ze te lezen. wijzigingen worden bijgehouden, om misbruik te voorkomen.
de menu’s moeten zeer goed uitgedacht worden door te verscheidenheid van dingen die we behandelen (java, C, C++, C#, python, html, css, php, asp, …, …., …, …)
het moet overzichtelijk en handig in gebruik blijven! iedere tutorial moet worden voorzien van een moeilijkheidsgraad, en een rating (idee uitwerken,
hoe de rating aanpassen na een verandering aan de tutorial?). ook moet iedere tutorial van commentaar kunnen voorzien worden van andere gebruikers.
3.3 FORUM
een goed forum a la ict-blue, maar zelf geprogrammeerd. ook hier wordt overzicht een uitdaging! moet van de mogelijkheid voorzien worden om een gebruiker zijn eigen post te
sluiten na het oplossen van zijn topic. een soort TREE forum (a la tweakers.net reacties onder nieuws) vind ik nog een goed idee, maar moet niet. Eventueel ook smileys voorzien in
het forum onderdeel, en werken met UBB tags.
3.4 NEWS / BLOG SYSTEEM
op de homepage moet een news/blog systeem voorzien worden waar we nieuwe evoluties in het programmeren kunnen aankondigen, of waar andere nuttige dingen aangekondigd kunnen worden.
op iedere post moet kunnen gereageerd worden. bij de reacties eventueel smileys voorzien, bij de echte posts is dit niet nodig denk ik.
3.5 PROJECT MANAGER
iedere gebruiker moet projecten kunnen starten, waarbij het hem gemakkelijk maakt om zijn eigen opensource programma te schrijven, en er andere mensen bij te betrekken.
hierbij moet het project wat ruimte op de server krijgen (100MB ofzo)
3.5.1 beheer
de project-admin moet kunnen subprojecten starten (art-team, doc-team, dev-team, …, …), en deze toegang kunnen geven tot verschillende dingen (svn (+rechten beheren), bugtracker, ..).
dit alles moet zo simpel mogelijk verlopen voor de gebruiker.
3.5.2 SVN
ieder project moet zijn eigen SVN krijgen (of ander alternatief). de admins van het project moeten mensen rechten kunnen geven tot de SVN.
maar er moet voor gezord worden dat het downloaden van projecten via SVN voor IEDEREEN toegankelijk is (op de hoofddir toch), want het is een service voor opensource projecten.
3.5.3 bugtracker
een goede bug tracker a la mantis voorzien. misschien zijn al die opties niet nodig, maar soit ;-)
3.5.4 mailinglist
een mailinglist programmeren, omdat die nog veel gebruikt worden bijnnen de open source community!
3.5.5 FTP
net zoals de SVN ook de FTP volledig kunnen laten configureren, omdat deze handig kan zijn voor bvb het uploaden van het art team ofzo!
3.5.5 WIKI
ieder project moet zijn eigen wiki kunnen starten.
3.5.6 FORUM
ieder project moet ook zijn eigen forum krijgen, waarvan de toegang tot volledig moet kunnen geregeld worden door het admin team van het project.
3.6 KALENDER
er moet een kalender komen op de website waar gebruikers informatie kunnen posten over developers-events. mensen moet kunnen aanduiden of ze al dan niet gaan en de mogelijk
moet bestaan om commentaar te geven op een event.
3.7CODELIB
een biblioteek met vele fragmenten code / classes / etc / etc in :) ook hier wordt het ordenen een grote uitdaging!

4. competenties:
je zal zeker PHP / HTML / CSS / JavaScript / shell scripting (of alternatief) nodig hebben.
je zal ook je kennis over LINUX servers uit de kast moeten halen, over hoe je de verschillende dingen op een veilige manier kan opbouwen, hoe je ze via scripts kunt configgen etc.

5. materiaal:
een eigen server, waar linux op draait om alles te testen / configureren.

6. vakoverschrijdend:
dit project steunt op de vakken webtech 1 & 2, databanken, besturingssystemen en Computerbeveiliging.