Goedendag,
Ik ben net nieuw in dit wereldje en vraag nu voor mij php kunsten een bedrag van 10 euro per uur. Ik vroeg mij af of dat een goed bedrag was. Misschien is het veel te weinig in zitten de mensen die scripts bij mij kopen met een big smile omdat ze 5x zoveel terug verdienen.
Dus de vraag: Hoeveel verdient een gemiddelde php programmeur hier?
- Uur salaris php programmeur
-
20-12-2009, 18:00 #1
- Berichten
- 14
- Lid sinds
- 14 Jaar
Uur salaris php programmeur
-
-
20-12-2009, 18:05 #2
- Berichten
- 1.499
- Lid sinds
- 16 Jaar
Hangt ervan af wat voor kwaliteit je levert.
-
20-12-2009, 18:05 #3
- Berichten
- 161
- Lid sinds
- 14 Jaar
Misschien heb je een voorbeeld om te zien op welk nivo jij script?
-
20-12-2009, 18:07 #4
- Berichten
- 1.484
- Lid sinds
- 15 Jaar
Uurloon is uiteraard afhankelijk van de kwaliteit die je levert en het minimum bedrag dat je zou willen overhouden na aftrek inkomsten belasting.
Als ik €10 per uur zou vragen en na het betalen van IB nog maar €5/€6 over hou is €10 per uur te weinig voor me.
-
20-12-2009, 18:08 #5
- Berichten
- 1.499
- Lid sinds
- 16 Jaar
Wanneer je naar dit uurloon zakt mag je me pb'en.
-
20-12-2009, 18:39 #6
- Berichten
- 14
- Lid sinds
- 14 Jaar
-
20-12-2009, 18:45 #7Regal Interactive
- Berichten
- 909
- Lid sinds
- 16 Jaar
Heb je ook een website, of iets dergelijks waarbij je het php gedeelte hebt gedaan? En doe je enkel php of ook html/css.
-
20-12-2009, 19:03 #8
- Berichten
- 14
- Lid sinds
- 14 Jaar
Ik heb niet echt een website die ik heb gemaakt. Ik heb vooral heel veel kleine test dingetjes gemaakt (soms ook hele ingewikkelde). Ik heb vroeger een text based game gemaakt maar was gestopt omdat het saai werdt. Ik heb ooit een php script gemaakt die ruwe html code scant naar juiste data, die data in een database zet en er vervolgens allemaal mooie statistieken van maakt.
Ik kan ook html en css maar ik ben veel beter in php. Daarnaast heb ik ook nog kennis van andere programmertalen zoals C++ en heb ik games gemaakt maar dat heeft niks met websites te maken :P.
-
20-12-2009, 19:16 #9Particulier
- Berichten
- 190
- Lid sinds
- 16 Jaar
Goed dat je OO probeert te programmeren. De code is echter zeer, zeer slordig en omslachtig. Ik raad je aan om je eens in PHP5 te verdiepen.
Om een uurloon te berekenen kun je alle kosten die je maandelijks maakt opschrijven. Vervolgens moet je eens bedenken hoeveel je per maand wilt verdienen, en met hoeveel uur per maand je dit wilt gaan doen.
Met behulp van dit sommetje kun je je uurloon uit gaan rekenen. Succes!
-
20-12-2009, 19:25 #10
- Berichten
- 14
- Lid sinds
- 14 Jaar
Goed dat je OO probeert te programmeren. De code is echter zeer, zeer slordig en omslachtig. Ik raad je aan om je eens in PHP5 te verdiepen.
Om een uurloon te berekenen kun je alle kosten die je maandelijks maakt opschrijven. Vervolgens moet je eens bedenken hoeveel je per maand wilt verdienen, en met hoeveel uur per maand je dit wilt gaan doen.
Met behulp van dit sommetje kun je je uurloon uit gaan rekenen. Succes!
Verder weet ik wel hoe ik mijn uurloon kan berekenen maar als ik een opdracht maak moet ik wel kunnen inschatten wat de prijs gaat kostte.
-
20-12-2009, 20:40 #11RJ webdevelopment
- Berichten
- 571
- Lid sinds
- 16 Jaar
Hij bedoelt slordig qua programmeren. Te veel code voor simpele dingen.
Aanvullend bericht:
Als ik mag schatten: 8 à 10 euro per uur.Laatst aangepast door René Vennik : 20-12-2009 om 20:41 Reden: Automatisch samengevoegd.
-
20-12-2009, 21:01 #12Diederik van Andel
- Berichten
- 400
- Lid sinds
- 14 Jaar
Wij berekenen alle offertes op een uurtarief van €50,00. Hiervan moeten wij de salarissen, auto's (2x), kantoorpanden (2x) etc. van betalen. En natuurlijk willen we ook nog winst maken om verder in dingen te kunnen investeren.
Daarnaast leveren we natuurlijk een bepaalde kwaliteit waar de klant op rekent. Ik vind 50 daarom in ons geval een zeer netjes tarief.
-
20-12-2009, 21:39 #13Particulier
- Berichten
- 26
- Lid sinds
- 18 Jaar
Daarnaast heb je heel veel get-functies. Opzich prima en duidelijk, maar iedere keer dat jij iets opvraagt wordt dit via een nieuwe query opgevraagt uit de database. Dit is onzinnig en absoluut onnodig zwaar voor de database server, het is veel efficiënter om gewoon één query te gebruiken waarin je het grootste deel van de (frequent nodige) gegevens ophaalt. Als ik nu een simpel profiel van een gebruiker wil afdrukken dan kost dat gemakkelijk tien queries: veel te veel.
Ook is de foutafhandeling gewoon zwak. Achter iedere query staat "or die", wat direct het script stopt, terwijl je ook, zeker als je slechts één query gebruikt, simpelweg kan nakijken of het resultaat gelijk is aan false en, indien zo, een alternatieve output kunt geven. Dat is niet alleen duidelijker voor jezelf: je kunt meer informatie meergeven, een backtrace, eventueel de gedane query, maar ook voor de bezoeker. Deze krijgt niet een witte pagina met een vage error te zien, deze kan een nette pagina in het layout van de website terug krijgen met het bericht dat er technische problemen zijn.
Verder lijk je o.a. input-filtering abstract te willen maken door middel van de statische "Anti_inject" functie, al is dat natuurlijk onzin tenzij je dit ook met "mysql_query" doet. Dit brengt me tevens bij het punt dat je classe veel te veel doet, niet alleen gebruikers-gerelateerde zaken, maar ook database communicatie en het vertalen van een boolean naar een string representatie. Verder nog wat kleine puntjes;
- Alle get_ functies halen wel iets op, zetten dit in een property, maar de property wordt vervolgens niet gebruikt.
- Inconsequent gebruik van hoofdletters in functienamen.
- Backticks rondom je SQL queries, dit is iets van MySQL en is niet nodig, enkel als je keywords als kolomnamen wilt gebruiken (wat sowieso niet moet).
- De Anti_inject methode vind "4 OR 1" een prima UserId, wat dan ook perfect geaccepteerd wordt in je Get_Username (e.a.) methode.
- De "Register_send_activation" methode mist heel veel informatie. De afzender moet tenminste een correct e-mail adres bevatten.
- Methode "Cookie_login" heeft twee fundamentele fouten. Allereerst kan ik de cookies vanaf een andere PC kopieëren (of stelen!), bij mij neerzetten en ik ben ingelogd, controleer op het IP adres of bedenk een veiligere methode. Verder zijn de return methods vaag, gebruik daar eventueel class constanten voor.
- In de "Random_password" methode kan je beter gebruik maken van mt_rand, dit is iets willekeuriger.
- De "yesno" methode is natuurlijk absolute onzin en hoort hier niet.
Ondanks dat je op de goede weg lijkt te zijn heb je nog best wel een stuk te gaan. Zowel de flexibiliteit als de performance- en veiligheid van je systeem zijn in deze, met alle respect, niet goed. Leer over OOP in PHP 5, PDO of MySQLi voor databasecommunicatie (met name prepared statements voor veiligheid!) en de verschillende filter functies voor data-filtering. Hou je logica gescheiden, bekijk de verschillende design patterns en kijk naar het vaak toegepaste MVC Patroon zoals toegepast in grote projecten als CakePHP, Symfony en het Zend Framework.
Voor nu vind ik de 10 euro prima, ontwikkel jezelf, groei door en blijf altijd leren, dan zal dat bedrag uiteraard ook omhoog gaan. Combineer je PHP kennis met HTML, CSS en Linux/Windows Server beheer, de vraag naar pure back-enders op junior niveau is best wel bescheiden.
:)
-
20-12-2009, 21:50 #14
- Berichten
- 14
- Lid sinds
- 14 Jaar
Allereerst maakt je code geen gebruik van propere PHP 5 OOP, Object Orientated Programming. Ondanks dat "var" in PHP 6 opnieuw wordt toegestaan (stom, stom..), is het een veel betere inzet om aan iedere functie- en property mee te geven wie er toegang tot heeft. Op dit moment kan alle code, dus niet alleen in de classe, maar ook code uit andere classen, bij de "password" property. Ondanks dat dit in een niet-modulair danwel een geen-plugin ondersteunend script weinig problemen oplevert heeft het praktische bezwaren. Dit noem je method- en property visibility, toch wel een heel primair iets.
Daarnaast heb je heel veel get-functies. Opzich prima en duidelijk, maar iedere keer dat jij iets opvraagt wordt dit via een nieuwe query opgevraagt uit de database. Dit is onzinnig en absoluut onnodig zwaar voor de database server, het is veel efficiënter om gewoon één query te gebruiken waarin je het grootste deel van de (frequent nodige) gegevens ophaalt. Als ik nu een simpel profiel van een gebruiker wil afdrukken dan kost dat gemakkelijk tien queries: veel te veel.
Ook is de foutafhandeling gewoon zwak. Achter iedere query staat "or die", wat direct het script stopt, terwijl je ook, zeker als je slechts één query gebruikt, simpelweg kan nakijken of het resultaat gelijk is aan false en, indien zo, een alternatieve output kunt geven. Dat is niet alleen duidelijker voor jezelf: je kunt meer informatie meergeven, een backtrace, eventueel de gedane query, maar ook voor de bezoeker. Deze krijgt niet een witte pagina met een vage error te zien, deze kan een nette pagina in het layout van de website terug krijgen met het bericht dat er technische problemen zijn.
Verder lijk je o.a. input-filtering abstract te willen maken door middel van de statische "Anti_inject" functie, al is dat natuurlijk onzin tenzij je dit ook met "mysql_query" doet. Dit brengt me tevens bij het punt dat je classe veel te veel doet, niet alleen gebruikers-gerelateerde zaken, maar ook database communicatie en het vertalen van een boolean naar een string representatie. Verder nog wat kleine puntjes;
- Alle get_ functies halen wel iets op, zetten dit in een property, maar de property wordt vervolgens niet gebruikt.
- Inconsequent gebruik van hoofdletters in functienamen.
- Backticks rondom je SQL queries, dit is iets van MySQL en is niet nodig, enkel als je keywords als kolomnamen wilt gebruiken (wat sowieso niet moet).
- De Anti_inject methode vind "4 OR 1" een prima UserId, wat dan ook perfect geaccepteerd wordt in je Get_Username (e.a.) methode.
- De "Register_send_activation" methode mist heel veel informatie. De afzender moet tenminste een correct e-mail adres bevatten.
- Methode "Cookie_login" heeft twee fundamentele fouten. Allereerst kan ik de cookies vanaf een andere PC kopieëren (of stelen!), bij mij neerzetten en ik ben ingelogd, controleer op het IP adres of bedenk een veiligere methode. Verder zijn de return methods vaag, gebruik daar eventueel class constanten voor.
- In de "Random_password" methode kan je beter gebruik maken van mt_rand, dit is iets willekeuriger.
- De "yesno" methode is natuurlijk absolute onzin en hoort hier niet.
Ondanks dat je op de goede weg lijkt te zijn heb je nog best wel een stuk te gaan. Zowel de flexibiliteit als de performance- en veiligheid van je systeem zijn in deze, met alle respect, niet goed. Leer over OOP in PHP 5, PDO of MySQLi voor databasecommunicatie (met name prepared statements voor veiligheid!) en de verschillende filter functies voor data-filtering. Hou je logica gescheiden, bekijk de verschillende design patterns en kijk naar het vaak toegepaste MVC Patroon zoals toegepast in grote projecten als CakePHP, Symfony en het Zend Framework.
Voor nu vind ik de 10 euro prima, ontwikkel jezelf, groei door en blijf altijd leren, dan zal dat bedrag uiteraard ook omhoog gaan. Combineer je PHP kennis met HTML, CSS en Linux/Windows Server beheer, de vraag naar pure back-enders op junior niveau is best wel bescheiden.
:)
Ik weet genoeg, ik houd het voorlopig bij 10 euro/u :).
-
20-12-2009, 22:12 #15Particulier
- Berichten
- 190
- Lid sinds
- 16 Jaar
Wat P Beverloo zegt.. :-)
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