Citat:
Ursprungligen postat av Nerix
Att MySQL ligger som en egen gem i stället för att vara inbyggd i core-delen betyder att utvecklingen kan ske parallellt med språket.
|
Borde då inte core vara fritt från allt? Jämförelsevis ligger dock mysql som extension till php (pecl install pdo_mysql - done).
Citat:
Jag har själv varit med och skrivit patchar för mongodb. Ändringarna kördes in i stable på mindre än 1 vecka.
Skulle mongodb eller mysql i stället varit native så skulle patchen förmodligen inte mergas in förrän nästa version, vilket när det kommer till Ruby och PHP tar sin lilla tid.
|
Pecl install mongo
Citat:
Det jag menar är att jag kan hitta allt och lite till, full dokumenterat, med tester som kräver att jag varken kopierar någon kod eller bryter mot några skumma, möjligen icke existerande licensavtal.
Skulle paketet vara utdaterat och finns på Github (vilket många utav paketen gör) så kan jag utan några konstigheter göra forka projektet, fixa felet, göra en pull-request var vid ägaren (förhoppninsgvis) mergar in min ändring. Vart efter paketet pushas upp till rubygems och finns tillgängligt för allmänheten.
En viktig del är även att jag får cred för patchen jag skrev, något som både Rubygems och Github fixar.
Lätt som en plätt.
|
Det finns 2 skillnader mot PHP här. Rubygems finns inte för automatiska uppdateringar osv och det finns BETYDLIGT mer bibliotek till PHP. Nej, allt som finns i Ruby finns inte i PHP. Det går dock åt båda hållen. Och detta gäller precis oavsett vilka 2 språk du går imellan.
Citat:
Sedan kanske det är värt att nämna att siter som Github ökar överlevnaden för ett projekt. Jag har sedan drygt ett år tillbaka valt att publicera alla smådelar för mina projekt som egna gems. Små finesser som byggt efter alla konstens alla regler. Jag kan där efter publicera paketet och låta OSS-comunity:t vidareutvecklare projektet.
|
Jag tycker detta är riktigt bra. Det är ett område där ruby-utvecklare är mycket bättre. Med en bråkdel av utvecklarna så är antalet projekt för ruby på github drygt dubbelt så många som för php. I mångt och mycket tror jag det handlar om fördelen med en kultur som växt från början - snarare än kommit efteråt. När PHP blev gigantiskt fanns inte github eller mostvarande tjänster. Ruby har växt till sig starkast i samma era som motsvarande tjänster.
Citat:
Jag menar; chansen att fler söker efter lösningar på samma problem som jag är ganska stor. Finns det fler användare så finns det även fler utvecklare som kan jobbare vidare på projektet.
Jag tror att det jag saknar mest är implementeringen av alla dessa API:er.
Om man te.x får för sig att skriva en site som jobbar mot eBay så kan man ge sig f*n på att någon redan har skrivit en gem.
|
Det är här du är fel ute. Bara för att det inte finns en centraliserad källa som har allt innebär det inte att vem som helst på en minut kan finna sådana saker. Skillnaden är att du får känna till ett par tre sajter eller göra en google-sökning
Citat:
Själv använder jag OmniAuth. Stöd för auktorisering mot ett 30-tal siter. Implementeras med ett fåtal rader kod.
|
Jag tror detta kan tas som ett exempel på att du aldrig finner exakt samma motsvarigheter i olika språk. Att hitta slimmade bibliotek för respektive inloggning är lätt för PHP. Men ett samlat bibliotek för alla vet jag inte om det finns.
Citat:
Hur hittar ni (PHP-utvecklare) kunder som kan tänkas betala för det här?
Utvecklingstiden måste ju vara flera gånger vad det skulle tagit att implementera samma funktionalitet i Python, Ruby eller exempelvis Haskell.
|
Nej. PHP-utveckling är generellt sätt både billigare och lättare att finna utvecklare för än python, ruby och haskell. Utvecklingstiden har du fått om bakfoten då du verkar tro att precis allting skrivs från scratch. Det används ofta/för det mesta ramverk, bibliotek, specialiserade plugins osv samtidigt som du har väldigt väldigt mycket inbyggt i språket så att du får mer standardiserad utveckling.
Om nu obskyr kod som ingen använder skulle vara av värde kan jag försäkra dig om att det finns gott om det för PHP också.
Citat:
json, mysql, sqlite3, xml-simple
|
Samtliga är med i en standard PHP-installation. Skulle du inte ha kompilerat med t ex mysql får du in den senaste genom en pecl install mysql
Citat:
Sedan så förstår jag inte riktigt hur jag ska få api-get att fungera under något annat än Linux.
Hur gör jag i OS X, eller Windows om jag väljer att sätta mig där?
|
Nej under de plattformarna får du nog nöja dig med en checkout från subversion/git efter en google-sökning.
Citat:
Det är därför man låser paket-beroenden. Man specificerar helt enkelt vilka version av ett paket som får installeras.
|
Låser man paketversionerna så blir man väl av med största nyttan av detta sätt att föra in funktioner? För mig är iallafall den enskilda ordentliga nyttan att du faktiskt kan uppdatera mjukvaran i ett steg. Men då har du såklart nackdelen med alla community-kod att du ofta inte har en aning om hur stabil den är. Prestanda-problem kan exempelvis smyga sig in utan att upptäckas i tester - och i sin tur slå ner hela systemet.
Jag är inte ute efter att övertyga dig om att PHP är bättre. Däremot så tycker jag att hela din insats i att ge dig på PHP verkar baseras på att allt ska fungera precis likadant som det språk du förälskat dig i. Om man inte kan överge det till en början tror jag inte det är någon större poäng med att försöka utöka sin värld med fler språk.