python vs php (per i project manager)

3

Fino ad ora, come sviluppatore preferivo Python per la programmazione e lo scripting web. Ora gestirò alcuni progetti. So che trovare sviluppatori che conoscono php è più facile che trovare sviluppatori che conoscono Python. Ho uno sfondo di Python, quindi se gli sviluppatori usano Python; Sarò in grado di controllare e guidare più facilmente. Questo è un compromesso.

Qual è il tuo suggerimento?

    
posta ndemir 03.02.2011 - 11:25
fonte

11 risposte

16

Easier to find developers

È una scusa povera per scegliere una tecnologia secondo me. Gli sviluppatori PHP sono ovunque, ma questo non significa che troverai uno buon sviluppatore PHP.

Quello che vuoi è un buon sviluppatore, indipendentemente dalle lingue che conosce o non conosce. Raccogliere una nuova lingua dovrebbe essere relativamente indolore per un buon sviluppatore.

Se credi che Python sarebbe la scelta migliore per tutti, ma assumendo il potenziale, allora vai con Python e prosegui fino a quando non trovi un contratto decente.

    
risposta data 03.02.2011 - 13:07
fonte
7

Se conosci già Python, dovresti essere in grado di acquisire PHP in pochissimo tempo (il contrario non è necessariamente vero). C'è un motivo per la popolarità di PHP.

    
risposta data 03.02.2011 - 11:33
fonte
3

I concetti, non la sintassi, sono ciò che conta. Se uno sviluppatore conosce PHP, allora dovrebbe essere in grado di diventare ragionevolmente esperto in python in un breve periodo di tempo e viceversa.

    
risposta data 03.02.2011 - 11:35
fonte
3

Sono stato in una situazione simile per circa un anno.

Un anno fa ho iniziato a gestire un team che sviluppava e gestiva un sito Web di oltre 10 anni, programmato in PHP, con il quale non avevo precedenti esperienze. Ho usato molti linguaggi (C, C ++, Java, Python, Common Lisp, ecc.) E avrei preferito sviluppare con Python.

Il sistema legacy esistente costruito con PHP ha reso la scelta (continua ad usare PHP) molto semplice.

Non ho avuto problemi a trovare PHP, anche se è un mix un po 'strano di concetti di basso e alto livello e manca seriamente l'armonia e l'amplificazione; eleganza e "visione coerente" dietro il linguaggio e l'implementazione. E ora capisco perché alcuni chiamano PHP "template engine gone berserk". Ciononostante, PHP fa il lavoro. Consiglio vivamente di utilizzare un buon framework, come Zend, che sfrutta PHP in un ambiente linguistico migliore (sano) con cui lavorare.

In ogni caso, conoscere o avere esperienza con il linguaggio di implementazione, non è un requisito per il project manager. Molti PM fanno un ottimo lavoro senza alcuna esperienza di programmazione, anche se aiuta ad avere uno sfondo di programmatore (in generale).

Se non hai legacy e puoi iniziare con una lavagna pulita, suppongo che entrambe le lingue vadano bene e sarà più una questione di gusti personali e / o disponibilità di risorse.

Ancora ... Non posso sfuggire al sentimento, che Python attragga i programmatori più competenti. In qualche modo, la cultura intorno a PHP è meno orientata verso soluzioni "robuste ed eleganti", e più propensi a suggerire un attacco rapido nell'abitudine "questo funziona per me".

Per concludere: l'abilità / esperienza di PM non dovrebbe avere nulla a che fare con la scelta della lingua. È più sui meriti della lingua (e della cultura) stessa. E disponibilità di risorse.

    
risposta data 03.02.2011 - 14:06
fonte
2

Se vuoi costruire un muro, allora alcuni punti da prendere in considerazione sono:

  1. La necessità del muro.
  2. Come deve essere costruito il muro.
  3. Quale materiale dovrebbe usare.

La domanda meno importante è: "chi costruirà il muro?"

Verifica i tuoi requisiti e prendi la decisione. In alcuni progetti troverai che Python sarà l'opzione migliore, e in altri PHP sarà la scelta giusta.

    
risposta data 03.02.2011 - 11:59
fonte
1

Assumere un esercito di programmatori mediocri non è solo uno spreco di denaro (e tempo e pazienza e, in definitiva, la tua vita), ma solitamente si traduce in software che è peggio di ordini di grandezza. Se sei fortunato, il risultato può essere in qualche modo uguale a un rock gigante, quando si tratta di dimensioni, velocità e flessibilità.

Vuoi la squadra più piccola possibile, scrivendo il codice meno possibile per completare il lavoro (ok, è un po 'esagerato, ma sento che ho davvero bisogno di enfatizzarlo). Per questo, sono necessari gli strumenti giusti (si tratta più di framework e toolkit che di lingue). Scegli quegli strumenti (se ritieni di non poterlo fare, quindi trova qualcuno di cui ti puoi fidare per fare quella scelta per te) e poi assumi persone disposte a lavorare con loro e in grado di lavorare con loro.

(Personalmente, penso che non dovresti usare PHP. Tranne se c'è un vantaggio tecnico cruciale nell'usarlo, il che è improbabile che accada, per non dire altro.)

    
risposta data 15.04.2011 - 23:39
fonte
0

As a developer

quindi scegli quello che conosci e con quello che potresti consigliare al tuo sviluppatore, capirli, ecc. Penso che la cosa peggiore tra un project manager e uno sviluppatore sia quando non sono in grado di comunicare le loro difficoltà che accadono la maggior parte del tempo a causa di un lago di competenze del project manager. Vai per Python.

A proposito, è facile trovare sviluppatori PHP, ma è anche difficile assumere sviluppatori PHP validi e competenti, come lo sarà comunque con Python.

    
risposta data 03.02.2011 - 11:31
fonte
0

Sono d'accordo con Maglob, "che Python avrebbe attratto i programmatori più competenti." La mia sensazione è: uno sviluppatore PHP davvero valido è quello che ha migrato da PHP a un linguaggio progettato meglio, come Python o Ruby. Questa è la mia esperienza. Ho lavorato con PHP per cinque anni e non potevo continuare a lavorare con i limiti di quella lingua. Man mano che i progetti crescono, le carenze di PHP diventano visibili e la complessità dei workaround aumenta.

Quindi, il mio suggerimento (in ritardo) è: Vai per Python. Sarà migliore dopo la metà del progetto.

    
risposta data 30.03.2011 - 23:02
fonte
0

IMHO, direi che PHP sarebbe più adatto ai project manager per i seguenti motivi:

  1. PHP è una lingua creata per il web
  2. Supporta la modalità tradizionale, orientata agli oggetti e mista per lo sviluppo
  3. Un sacco di quadri
  4. Supporto della comunità
  5. Facile trovare gli sviluppatori
  6. La più piccola curva di apprendimento possibile

Questo è tutto.

    
risposta data 15.04.2011 - 10:23
fonte
0

HipHop per PHP trasforma il codice sorgente PHP in C ++ altamente ottimizzato. È stato sviluppato da Facebook ed è stato rilasciato come open source all'inizio del 2010.

HipHop trasforma il codice sorgente PHP in C ++ altamente ottimizzato e poi lo compila con g ++ per creare file binari. Continui a programmare in PHP più semplice, quindi HipHop esegue il tuo codice sorgente in modo semanticamente equivalente e sacrifica alcune funzioni usate raramente - come eval () - in cambio di prestazioni migliori.

Facebook rileva una riduzione del 50% dell'utilizzo della CPU quando serve una quantità di traffico Web uguale rispetto ad Apache e PHP. Il livello API di Facebook può raddoppiare il traffico utilizzando il 30% in meno di CPU.

link

link

    
risposta data 15.04.2011 - 19:47
fonte
0

Dalla mia esperienza di prima mano è estremamente difficile trovare sviluppatori PHP competenti. Non perché ce ne siano così pochi, ma piuttosto perché è molto difficile trovarne uno tra 100 non così buono e 1000 pateticamente orribili (questi sono i tipi che falliscono nel test di FizzBuzz). Inoltre, mentre cercano gli sviluppatori indipendenti dal linguaggio, alcuni di loro hanno rifiutato l'offerta non appena hanno saputo che parte del lavoro avrebbe funzionato con il codice PHP.

Con Python la mia esperienza è esattamente l'opposto, la razione S / N è molto alta quando stai cercando uno sviluppatore Python, e dal punto di vista del linguaggio le reazioni dei ragazzi erano piuttosto simili a "Python, fantastico, è quello che volevo prova il prossimo ... ".

    
risposta data 15.04.2011 - 23:05
fonte

Leggi altre domande sui tag