Het wiel opnieuw uitvinden
ik ben voor een onderzoek een stuk aan het schrijven, waarin ik uitleg waarom een bestaande (PHP) oplossing gebruiken en evt. aanpassen voordeliger is dat compleet opnieuw het wiel uit te vinden. In mijn geval staat de PHP oplossing op een externe server, dus ik kan ook evt. iets zeggen dat het qua server processing op eigen server scheelt?
Dat het wiel opnieuw uitvinden veel tijdrovender spreekt voor zich, maar ik kan even niet op andere (technische) punten komen. Heeft iemand wat suggesties?
Ook nadelen zijn welkom.
Dank!
Gewijzigd op 24/03/2018 06:24:13 door Danny Spinhuis
Meestal wordt een externe service continue voor je onderhouden (updates, systeembeheer, enz). Dat is een voordeel. Het nadeel is dat je meestal ook met updates "mee moet" (binnen 30 dagen even je hele interfacing omgooien ...). Of de stekker gaat er helemaal uit, en je moet van de een op de andere dag een andere "provider" zoeken.
Een externe oplossing hoeft niet perse veiliger te zijn. Als het open source is kun je in ieder geval nog een audit doen, maar dat is wel een enorme uitkam klus.
Het wiel opnieuw uitvinden is wel een hele klus (uren - tijd die je misschien niet hebt binnen je planning), maar het voordeel is dat je meteen alle ins en outs kent, het precies doet wat jij wilt (nu en in de toekomst), en je weer bakken met ervaring+kennis opdoet.
Als je wilt bewijzen dat iets voordeliger is, ligt het voor de hand om eerst eens de kosten in kaart te brengen, niet de technische (on) mogelijkheden.
Het wiel opnieuw uitvinden hoeft echt niet tijdrovender te zijn en spreekt dus NIET voor zich. Ervaren developers hergebruiken veel eigen code en kunnen doorgaans snel een nieuwe toepassing ontwerpen en bouwen. Minder ervaren bouwers juist niet omdat vaak meteen aan het toetsenbord begonnen wordt met verzinnen en inkloppen van (php)code zonder een gedegen ontwerp. Wellicht is dat wat je bedoelt met "steeds opnieuw het wiel uitvinden"
Gewijzigd op 24/03/2018 11:21:44 door John D
In welk opzicht zou dat een voordeel moeten zijn? Wat nu als die externe server een tragere processor heeft, of er op enig ogenblik volledig mee uitscheidt?
Een php-oplossing gebruiken op een externe server (ik neem aan dat je bedoelt een server waar je zelf geen invloed op hebt) lijkt me niet bepaald een voordeel. En wat als die server niet goed beveiligd blijkt te zijn en bijv. gegevens van klanten daardoor bij hackers terechtkomen?
Overigens is het een beetje vaag wat je precies bedoelt. Er zijn natuurlijk ook echt wel goede API's van erkende bedrijven die je kunt gebruiken, maar ik weet niet of dat is wat je bedoelt.
Ik moest in 3 maanden tijd een oplossing vinden voor een probleem. Ik heb een extensie gevonden (Hypothesis) die aan 90% van de requirements voldoet, de overige 10% heb ik zelf geprogrammeerd. De extensie kun je simpelweg embedden in je website, waardoor het 1 geheel wordt alleen draait de extensie op de externe server van Hypothesis.
Als ik het idee achter Hypothesis zelf zou moeten programmeren zou ik een jaar bezig zijn denk ik. Vandaar dat ik voor de extensie heb gekozen.
Het feit dat die extensie op een externe server draait zou ik niet per definitie een voordeel noemen. Het feit dat je ontwikkeltijd hebt bespaard is wel een voordeel. Daar staat dan weer tegenover dat je afhankelijk bent van die externe server, en de mensen die die server onderhouden, of jouw applicatie blijft werken. Op het moment dat zij er de stekker uittrekken of onverwachte aanpassingen maken, kan dat zorgen voor het stukgaan van jouw eigen applicatie. Dat is dus iets om even goed bij stil te staan.
Gewijzigd op 24/03/2018 16:33:09 door Danny Spinhuis
Het gaat om een schoolopdracht vermoed ik?
Ozzie PHP op 24/03/2018 16:35:25:
Het gaat om een schoolopdracht vermoed ik?
Correct
Voor de rest geldt nog steeds wat ik eerder zei. De afhankelijkheid van de externe server, in combinatie met veiligheid. Daar zou je vragen over kunnen krijgen.
Ja indd, zoiets zat ik ook aan te denken. Ik hoopte dat er meer voordelen aan gekoppeld konden worden haha. Maar bedankt, ik probeer mn keus zo goed mogelijk te verdedigen.
Wellicht kun je in je code een check inbouwen die eerst test of de verbinding/service wel beschikbaar is, zodat je een nette foutmelding kunt tonen wanneer de service down is. Je kunt dan tevens een waarschuwingsmailtje naar jezelf laten sturen, zodat je het kunt monitoren.
Ik denk dat je leraar zo'n extra check wel kan waarderen ;-)
En als dit een stageopdracht is: in mijn tijd was er altijd sprake van een inspanningsverplichting en niet zozeer van een resultaatverplichting. Ook is het volgens mij (nog steeds) niet de bedoeling dat stagiairs rechtstreeks met de "rode-draad-processen" van bedrijven bezig zijn, ook al gebeurt dat in de praktijk helaas vaak wel. Als hier sprake van is?
Je mag (en moet) jezelf ook een beetje indekken en als en onredelijke dingen van jou verwacht worden dan moet je dit ook gewoon aangeven en beargumenteren, waarbij je natuurlijk blijk geeft dat je mee wilt werken aan oplossingen, maar dat men niet kan verwachten dat de bomen tot in de hemel groeien - het is ook jouw verantwoordelijkheid om verwachtingen bij te schaven als deze onrealistisch zijn. Ik weet ook dat het soms lastig is om het... enthousiasme te temperen. Vooral als je van doen hebt met mensen die a-technisch zijn en "niet snappen waarom iets zolang duurt".
Dit onderzoek (wat eigenlijk niet echt een onderzoek is volgens mij?) gaat, zoals ik het begrijp, er dus niet zozeer over of reeds gemaakte producten beter zijn (dat hangt er maar helemaal vanaf, zie vorige antwoorden - hier is op voorhand geen eenduidig antwoord op te geven), maar meer om een onderbouwing/verantwoording voor gemaakte keuzen?
Gewijzigd op 24/03/2018 17:18:36 door Thomas van den Heuvel
@Ozzie: goed punt, zo'n check is indd wel handig ja! Thanks.
Bedankt voor het meedenken heren!
Graag gedaan en succes! Laat t.z.t. even weten hoe het is afgelopen :)
Ozzie PHP op 24/03/2018 17:54:15:
@Danny
Graag gedaan en succes! Laat t.z.t. even weten hoe het is afgelopen :)
Graag gedaan en succes! Laat t.z.t. even weten hoe het is afgelopen :)
Doe ik! Thanks