Dit is de eerste scriptbattle van sitedeals. Eindelijk is hij er, na lang wachten. Ik hoop dat iedereen die zijn energie en tijd erin steekt er wat van zal leren en vooral dit als motivatie zal zien. Daarnaast kan de uitkomst van de wedstrijd handig zijn voor zowel jezelf als voor commerciële doeleinden.
De opdracht
Maak een POP3 mail client die mail kan versturen, ontvangen en opslaan in een database. Deze client mag voor één of meerdere accounts bruikbaar zijn en mag uitgebreid worden naar wens, zolang de gevraagde functionaliteit er nog maar inzit.
Ook al klinkt dit als een vrij simpele opdracht, het zal nog vrij lastig zijn dit te bewerkstelligen, zie het dan ook als een uitdaging. Door mee te doen aan deze opdracht zal je een aantal nieuwe technieken leren en wordt het duidelijk hoe pop3 werkt. Daarnaast zal je voortaan je eigen e-mail kunnen uitlezen via een website. Dit kan zeer handig zijn als je bijvoorbeeld achter een andere computer zit dan je eigen.
Deadline
Je zal hiervoor 6 weken de tijd krijgen, dit zou ruim genoeg moeten zijn. Maar ik kan begrijpen dat niet iedereen even snel is met het onderzoeken en uitvoeren van de opdracht.
De deadline is 31 Mei 2006.
De regels en richtlijnen
Voor deze battle zijn er een aantal regels vastgelegd waaraan voldaan moet worden om de wedstrijd eerlijk te laten verlopen. Als eerste mag men geen code gebruiken die niet van jezelf is. Alle klassen, functies en andere reguliere code moet zelf worden geschreven. Code van een derde partij mag wel worden ingekeken, maar slechts louter informatief worden opgenomen in jouw eindresultaat van het product.
Je mag zelf kiezen welke scripttaal je toepast. Het mag PHP, ASP, JSP, Perl of wat anders zijn. Het moet in ieder geval wel via (x)HTML worden weergegeven. Voor de database mag je ook zelf een optie kiezen. De meeste zullen waarschijnlijk MySQL gebruiken, maar het is ook interessant om MSSQL of PostgreSQL een keer te proberen.
Ik raad daarnaast nog aan dat je het niet voor de prijs doet, maar dat je er zelf iets van wilt en kunt leren. Het doel van deze wedstrijd is een leermoment en de prijs mag alleen als leuke bijkomstigheid en extra stimulans beschouwd worden.
Wij vertrouwen erin dat deelnemers zich aan deze regels zullen houden. Als deze regels worden verbroken kan de deelnemer geen kans meer maken op de prijs en zal deze worden gediskwalificeerd. Let op! De regels kunnen in het verloop van de wedstrijd worden aangepast om andere vormen van fraude en misbruik te voorkomen.
Het resultaat
Het werkende eindproduct mag in dit topic worden gepost. Let wel op dat je geen code op het forum zet. De code van het eindproduct kan ingepakt worden verstuurd naar:
Gelieve de database als tekstbestand er ook bij te zetten. Hierop zal ook worden beoordeeld. Daarnaast moet ook een link naar het voorbeeld mee worden gestuurd. Als je zelf geen hosting hebt is dit niet nodig maar dient er wel een installatiehulp bij het eindproduct te worden toegevoegd.
De beoordeling
De opdracht wordt beoordeeld door de medewerkers van sitedeals. Later zal hier nog meer informatie over worden vrijgegeven. Daarnaast zal er waarschijnlijk een poll komen waarbij de bezoekers van sitedeals kunnen stemmen, dit zal enkel geringe invloed hebben op de uitslag. Let wel op dat er meerdere aspecten worden beoordeeld. Hieronder staan een aantal van deze aspecten:
De prijs
- Functionaliteit
- Gebruiksvriendelijkheid
- De structuur van de code
- Het design van het systeem
- Commentaar in de code
- De extra functionaliteit
- De database
Als prijs zou ik zelf 50 euro ter beschikking willen stellen. Degene met de eerste plaats zal deze prijs in ontvangst kunnen nemen. Daarnaast zal voor de tweede plaats een account beschikbaar worden gesteld op websiteicons.com t.w.v 48 dollar.
De basis
Om de beginnende scripter ook kans te laten maken zal ik een aantal basisbeginselen geven om je op weg te helpen.
Als je PHP toepast zou je gebruik kunnen maken van de IMAP of socket functies, wat waarschijnlijk de beste oplossing is. Deze functies staan uitgebreid beschreven op php.net dus daar zou je een begin kunnen maken. Daarnaast zou je gebruik kunnen maken van het POP3 component dat Microsoft gebruikt. Let dan wel op dat PHP dan moet draaien in een Microsoft omgeving om het te laten werken. Als je tevens google’d naar PHP en POP3 dan vind je genoeg voorbeelden om je even uit te leven. Daarnaast zal ik een hint geven dat POP3 werkt door middel van commando’s die je stuurt en terug krijgt, net zoals bijvoorbeeld FTP.
Als je het eindproduct programmeert in ASP kan je gebruik maken van het standaard POP3 component van Microsoft. Met dit component kan je zeer gemakkelijk POP3 functies aanroepen. Ik weet zelf vrij weinig van ASP maar ik denk als je maar een klein beetje zoekt op internet er genoeg informatie over vindt.
Als je de POP3 commando’s wilt leren kan je beginnen met de RFC(Request for Comments) door te nemen. Dit is een document waar de POP3 standaard in wordt beschreven. Daarnaast is het ook leuk om commando’s naar de server te sturen en te kijken wat je terugkrijgt. Op de onderstaande website is de RFC terug te vinden, deze is in het engels. Daaronder bevindt zich een klein deel van de commando’s in het Nederlands.
http://www.ietf.org/rfc/rfc1939.txt
http://susehelp.l4l.be/netwerk/mail/pop3.html
Veel succes!
- De eerste scriptbattle...
-
20-04-2006, 22:20 #1
- Berichten
- 69
- Lid sinds
- 19 Jaar
De eerste scriptbattle...
-
-
20-04-2006, 22:58 #2
- Berichten
- 32
- Lid sinds
- 19 Jaar
Leuk idee, ik ga zeker meedoen! Ik denk dat ik in de mei-vakantie nog wel wat tijd hiervoor kan vrijmaken.
-
21-04-2006, 07:51 #3
- Berichten
- 144
- Lid sinds
- 19 Jaar
hmmm ben nu bezig met een ldap authicatie in php maar pop3 zal zeker ook leuk zijn na al dat ge-imap :)
ik zal kijken als ik tijd hiervoor kan vrij maken :)
-
21-04-2006, 07:59 #4
- Berichten
- 1.669
- Lid sinds
- 19 Jaar
Als je het eindproduct programmeert in ASP kan je gebruik maken van het standaard POP3 component van Microsoft. Met dit component kan je zeer gemakkelijk POP3 functies aanroepen. Ik weet zelf vrij weinig van ASP maar ik denk als je maar een klein beetje zoekt op internet er genoeg informatie over vindt.
-
21-04-2006, 08:11 #5
- Berichten
- 144
- Lid sinds
- 19 Jaar
nee dat denk ik niet want als je dat doet heb je gewoon voordeel maarja voor php heb je soms ook functies die dingen veel makkelijker maken dan andere programmeer talen :)
-
21-04-2006, 08:15 #6
- Berichten
- 69
- Lid sinds
- 19 Jaar
Ja dat klopt Erwin, maar IMAP functies zijn ook niet zelf gescript. Het is maar net hoeveel je inzoomt op het onderdeel. De bedoeling van de battle is dat je er geen extra elementen(libraries, klassen, functies) voor download. Als het goed is heeft ASP een aantal vaste pop3 elementen erin zitten die maar een beperkte functionaliteit bieden. Voor extra functionaliteit zou je dan nieuwe controls moeten downloaden, wat weer niet mag.
-
21-04-2006, 08:51 #7
- Berichten
- 1.669
- Lid sinds
- 19 Jaar
Ja, oké, dan is het goed, ik weet namelijk niet zoveel over ASP (alleen dat ik er geen behoefte aan heb), maar ik ga maar eens beginnen aan mijn onderdeel in plaats van een beetje over de regels lopen zeuren!
-
21-04-2006, 09:08 #8
- Berichten
- 292
- Lid sinds
- 19 Jaar
Wat zal er gebeuren met (de rechten) van de code als deze opgestuurd worden naar Sitedeals? Mag het product (of een gedeelte hiervan) nog gewoon verkocht worden?
-
21-04-2006, 09:29 #9
- Berichten
- 173
- Lid sinds
- 19 Jaar
Sorry, maar dit lijkt me in een aantal opzichten toch niet echt een goede opdracht.
- Hij is erg groot en kost echt wel veel tijd.
- Niveau van de opdracht lijkt me nogal hoog als ik kijk naar het SD-niveau
- PHP heeft al tig van dit soort classes PHPMailer, HtmlMimeMail(een goed voorbeeld van het wiel voor 2/3/10/40e keer uitvinden dus)
- Doordat er al tig van dit soort classes zijn, is het moeilijk te controleren of de code ook wel echt 'orgineel is'
- Perl heeft een core module Net::pop3, dus niet echt eerlijk.
- In Perl zal je voor een MySQL connectie de DBI-module moeten downloaden op CPAN, mag ik dan alle andere modules van CPAN ook gebruiken?!?!
-
21-04-2006, 11:39 #10
- Berichten
- 153
- Lid sinds
- 19 Jaar
Ik doe zeker mee. Vind het een leuke opdracht :)
-
21-04-2006, 11:54 #11
- Berichten
- 69
- Lid sinds
- 19 Jaar
Origineel gepost door Bas van Dorst
Sorry, maar dit lijkt me in een aantal opzichten toch niet echt een goede opdracht.
- Hij is erg groot en kost echt wel veel tijd.
- Niveau van de opdracht lijkt me nogal hoog als ik kijk naar het SD-niveau
- PHP heeft al tig van dit soort classes PHPMailer, HtmlMimeMail(een goed voorbeeld van het wiel voor 2/3/10/40e keer uitvinden dus)
- Doordat er al tig van dit soort classes zijn, is het moeilijk te controleren of de code ook wel echt 'orgineel is'
- Perl heeft een core module Net::pop3, dus niet echt eerlijk.
- In Perl zal je voor een MySQL connectie de DBI-module moeten downloaden op CPAN, mag ik dan alle andere modules van CPAN ook gebruiken?!?!
Je moet natuurlijk zelf een keuze maken of je mee wilt doen. Misschien past de volgende battle wel meer in je straatje. Daarnaast zal werken met POP3 je leren hoe je onder andere met telnet, ftp en ldap protocollen kunt communiceren.
-
21-04-2006, 12:13 #12
- Berichten
- 153
- Lid sinds
- 19 Jaar
Nog een vraagje. Mag je wel delen van scripts gebruiken die je zelf geschreven hebt eerder, en die in andere software wordt gebruikt waarvan je zelf developer bent?(Ik wil graag mijn template class gebruiken namelijk uit RCTS, is door mij geschreven, maar wordt daar wel in gebruikt)
-
21-04-2006, 12:17 #13
- Berichten
- 69
- Lid sinds
- 19 Jaar
Ja dat mag.. zolang het nog niet publiekelijk gebruikt wordt. Een zelf gemaakt template systeem of framework mag je wel gebruiken.
-
21-04-2006, 12:22 #14
- Berichten
- 153
- Lid sinds
- 19 Jaar
Het wordt al publiekelijk gebruikt.
Ik schrijf dan wel even een nieuwe :P
-
21-04-2006, 16:59 #15
- Berichten
- 1.832
- Lid sinds
- 19 Jaar
Als ik tijd heb zal ik eens even kijken hoe dit allemaal in eklaar steekt
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic