27 votes

Éthique de l'utilisation d'une langue «marginale» pour votre travail?

Juste envie de vous demander un avis ici. Comment vous sentez-vous à propos de l'utilisation d'une langue (et/ou cadre) qui n'est pas largement utilisé dans votre emplacement pour écrire le logiciel pour une entreprise? Par exemple, je vis dans une région dominée par .NET, avec parfois des PHP de travail. Disons que je suis en train d'apprendre le langage Python et de décider de l'utiliser pour écrire des logiciels pour mon travail (je suis une "Équipe d'Un" je peux très bien utiliser tout ce que je veux).

Aujourd'hui, leur logiciel est écrit dans une langue que presque personne dans la zone utilise ou connaît; si je devais quitter l'entreprise, qu'ils avaient fondamentalement, n'ont personne pour les entretenir, de les ajouter à moins qu'ils conservent sur moi en tant que consultant. Alors que c'est vraiment bon pour moi, il me semble un peu "tordu" - accordé, c'est la manière dont le monde fonctionne.

Quelles sont vos pensées?

EDIT: je me dois de mentionner que ce est une très petite entreprise et je suis le seul, C'personne, donc j'ai plein règne de choisir notre plate-forme de développement. Je ne suis pas spécialement à l'aide de Python, mais il a choisi comme un exemple depuis que ma région est presque entièrement .NET; je ne l'aime pas .NET plus que, c'est pourquoi je ne veux pas envisager de l'utiliser. Aussi, la société est.. comment dire... très frugal et ne voudrais pas acheter les ressources nécessaires pour .NET (par exemple, le serveur de licences, licences SQL, Visual Studio, composants). Personnellement, j'ai un abonnement MSDN mais je ne peux pas l'utiliser pour eux.

Aussi FWIW là sont les gens de la région qui utilisent la langue je suis en train d'étudier à l'aide de (Ruby on Rails), mais nulle part près aussi grand nombre de personnes .NET développeurs. Ce n'est pas comme je suis en utilisant quelque chose que je sais.

27voto

Sam Meldrum Points 7405

Vous pouvez penser que cette démarche est la bonne pour vous. Mais en fait, tout cela n'est la peinture dans un coin. La meilleure façon d'obtenir une promotion - au sein d'une organisation est de faire vous-même inutiles dans votre position actuelle. Cela peut sembler absurde, mais c'est vrai, en fait. Pensez-y comme ça, si elle est essentielle à la société que vous continuez à maintenir le code python que vous avez écrit pour eux, et ils ne peuvent pas aller à quelqu'un d'autre pour obtenir cette compétence, alors ils continueront à payer (peut-être un peu au-dessus des taux du marché) afin de maintenir le code.

Si toutefois, vous écrivez ce code dans .net où il y a une offre abondante dans votre région, alors que la société s'étend et le code que vous avez écrit s'avère être un succès, vous serez en mesure d'embaucher des gens pour maintenir ce code et vous pouvez passer à la conception d'autres systèmes. Ou de déménager dans la gestion d'une équipe de .net codeurs - si vous le souhaitez.

Même si vous voulez quitter, la meilleure chose pour votre carrière va être d'obtenir le meilleur de référence. Pour ce faire, écrire du code qui est facile à entretenir. Les aider à embaucher quelqu'un pour vous remplacer pour le maintenir. Ils vous en seront reconnaissants et vous recommande en tant que consultant à leurs amis.

Code dans quelque chose d'ésotérique pour laquelle il existe peu de soutien dans votre région - et ils vont dire à leurs amis sur le terrain de golf "pas de ne pas engager de ce mec, il a écrit ce système pour nous qui fait le travail, mais personne d'autre ne peut le maintenir. Nous sommes coincés avec lui pour toujours et maintenant il est trop occupé à s'occuper de nous bien!"

Faire ce qui est mieux pour le business, pas ce qui pourrait être d'intérêt pour vous ou apparaissent de cette manière sur le visage de celui-ci. Vous allez gagner dans le long terme.

18voto

mquander Points 32650

Je pense que vous êtes responsable de décider de la langue qui convient le mieux à l'emploi. Cela inclut une évaluation objective des mérites de la langue et du cadre, cela inclut vos propres compétences personnelles avec la langue (puisque c'est vous qui faites le travail) et cela inclut la maintenabilité par d'autres. Seuls vous et votre entreprise pouvez décider de l'importance à accorder à chacun d'eux.

8voto

HLGEM Points 54641

Pour votre propre développement personnel, si votre domaine est dominé par .net, pourquoi ne voulez-vous pas vous familiariser avec cela au lieu de Python?

D'un point de vue éthique, je n'écrirais pas quelque chose qui ne pourrait pas être facilement entretenu par quelqu'un d'autre.

7voto

AlexCuse Points 9823

Je pense que l'utilisation de python serait la bonne chose à faire si elle répondait aux exigences des clients et leur ferait économiser de l'argent par rapport à l'alternative. Qu'il y ait ou non un large éventail de personnages pour travailler sur l'application en cours de route n'est pas pertinent, sauf s'ils l'ont spécifié comme une exigence non fonctionnelle.

Comme d'habitude, l'utilisation du meilleur outil pour le travail à effectuer vous sera utile.

7voto

Zak Points 887

Beaucoup de réponses semblent être un mauvais ajustement de la question. Nous ne parlons pas de l'aide non approuvés langue dans un environnement avec les normes en vigueur. Nous parlons d'une situation où l'affiche est l'ensemble de l'informatique et du département de développement pour son entreprise.

Il est certainement important de garder à l'esprit la disponibilité de talent, mais Ruby est à peine une frange de la langue de ces jours. Dans un environnement où il n'y a qu'un seul développeur, la productivité est également une considération très importante. Être en mesure de construire et maintenir des logiciels facilement et rapidement, sans une grande équipe nécessite des outils avec des caractéristiques différentes d'une grande équipe pourrait avoir besoin.

Je pense que ce est plus important que de savoir si l'utilisation de Ruby ou (autre chose) est d'essayer de choisir quelque chose comme usage général comme pratique et l'utiliser pour tout, sauf si il y a une vraiment bonne raison d'utiliser autre chose. Si vous allez avec Ruby, bâton avec Ruby pour votre utilitaire scripts cron jobs et que peu de GUI application du patron a voulu automatiquement SMS au stagiaire, lorsqu'il prend plus de cinq minutes pour lui apporter un café.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X