28 Stimmen

Ethik der Verwendung einer "Randsprache" für Ihre Arbeit?

Ich möchte hier nur um einige Meinungen bitten. Was halten Sie von der Verwendung einer Sprache (und/oder eines Frameworks), die an Ihrem Standort nicht weit verbreitet ist, um Software für ein Unternehmen zu schreiben? Ich lebe zum Beispiel in einem Gebiet, das von .NET dominiert wird, mit gelegentlichen Aufträgen für PHP. Nehmen wir an, ich lerne Python und beschließe, es zu verwenden, um Software für meine Arbeit zu schreiben (ich bin ein "Team of One", also kann ich so ziemlich alles verwenden, was ich will).

Jetzt ist ihre Software in einer Sprache geschrieben, die so gut wie niemand in der Gegend benutzt oder kennt; wenn ich das Unternehmen verlassen würde, hätten sie im Grunde niemanden, der sie pflegen/erweitern könnte, es sei denn, sie würden mich als Berater behalten. Das ist zwar wirklich gut für mich, kommt mir aber ein bisschen "schief" vor - zugegeben, so funktioniert die Geschäftswelt.

Was denken Sie darüber?

Ich sollte erwähnen, dass dies ein sehr kleines Unternehmen ist und ich die einzige IT-Person bin, so dass ich bei der Wahl unserer Entwicklungsplattform freie Hand habe. Ich verwende nicht speziell Python, sondern habe es als Beispiel gewählt, da mein Bereich fast vollständig auf .NET basiert; ich mag .NET allerdings nicht mehr, weshalb ich es nicht in Betracht ziehen möchte. Außerdem ist das Unternehmen... wie sollen wir sagen... äußerst sparsam und würde die erforderlichen Ressourcen für .NET (z. B. Serverlizenzen, SQL-Lizenzen, Visual Studio, Komponenten) nicht kaufen. Ich persönlich habe ein MSDN-Abonnement, aber das kann ich nicht für sie verwenden.

Auch FWIW dort son Leute in der Gegend, die die Sprache verwenden, die ich verwenden möchte (Ruby on Rails), aber bei weitem nicht so viele wie .NET-Entwickler. Es ist ja nicht so, dass ich etwas verwende, das nur ich kenne.

1 Stimmen

Btw, Python ist keine "Rand"-Sprache, selbst auf StackOverflow, das von .NET-Entwicklern dominiert wird.

0 Stimmen

Ja, ich persönlich würde mir keine Sorgen über einen Mangel an Entwicklern machen, wenn es um Ruby on Rails oder Python geht; das sind Mainstream-Sprachen, und ein Unternehmen sollte sich nicht darum bemühen müssen, Leute zu finden, die sie schreiben können.

1 Stimmen

Okay - ich habe diese Sprache als "Randsportart" bezeichnet, weil ich auf den üblichen Jobbörsen keine Stellenanzeigen für Rails/Python-Entwickler sehe.

0voto

Al Katawazi Punkte 7052

Mit der Veröffentlichung des MVC-Frameworks bin auch ich in ein ähnliches ethisches Dilemma geraten. WebForms verwenden oder auf MVC Framework für alles umsteigen. Die Antwort ist wirklich, dass man das Richtige tun muss und den Standard des Unternehmens verwenden sollte. Wenn man vom Standard abweicht, schafft das eine Menge Probleme für die Leute.

Stellen Sie sich vor, wie Sie sich fühlen würden, wenn man Ihnen ein Projekt mit VB6 aufhalsen würde, obwohl Sie seit Jahren nur .Net machen. Dies sind also die beiden Lösungen, die ich mir ausgedacht habe.

  1. Verwenden Sie Ihre Spaßsprachen für Beratungsverträge, die Sie nebenbei abschließen. Vergewissern Sie sich, dass der Kunde weiß, was Sie tun, und wenn er einverstanden ist, machen Sie es.
  2. Versuchen Sie, Ihr derzeitiges Unternehmen davon zu überzeugen, auf diese großartige neue Sprache umzusteigen, mit der Sie arbeiten.

Wenn Sie diese Wege gehen, werden Sie Ihre Sprache lernen und dabei niemanden verärgern.

0voto

John D. Cook Punkte 28817

Früher war ich der Meinung, dass man das beste Werkzeug für die jeweilige Aufgabe verwenden sollte, aber ich habe meine Meinung geändert. Es reicht nicht aus, nur zu fragen: "Wie kann I diese Aufgabe am schnellsten erledigen." Wenn Sie glauben, dass Sie der Einzige sind, der sich jemals einen Code ansehen muss, ist die Wahrscheinlichkeit groß, dass Sie sich irren. Die Gesamtkosten für die Einführung einer neuen Sprache in eine Umgebung sind höher, als Sie vielleicht zunächst denken.

Wenn Sie nur ein Ergebnis und kein Programm brauchen, können Sie verwenden, was Sie wollen. Nehmen wir an, Sie brauchen einen Bericht oder Sie müssen einige Dateien verarbeiten. Wenn es wirklich nur auf die Ausgabe ankommt, z. B. etwas, das Sie auch von Hand hätten machen können, können Sie jede Sprache verwenden, die Sie wollen.

0voto

Jeremy Punkte 1208

Sie können .NET mit kostenlosen Tools adäquat entwickeln; die Kosten sind kein Grund, diese Plattform zu meiden. Ruby on Rails wird immer mehr zum Mainstream für die Erstellung von datengesteuerten Internet-Websites. Sie haben uns aber noch nicht einmal gesagt, ob das die Art von Software ist, die Sie entwickeln.

Mit den Informationen, die Sie zur Verfügung gestellt haben, kann Ihnen wirklich niemand eine einzige richtige Antwort geben.

Wenn Sie fragen, ob es ethisch vertretbar ist, Ihre Arbeit so zu verrichten, dass das Unternehmen von Ihnen abhängig ist, lautet die Antwort natürlich nein. Wenn Sie fragen, ob es ethisch vertretbar ist, in RoR zu entwickeln, dann lautet die Antwort "wir wissen es nicht" - aber meiner Meinung nach wäre es wahrscheinlich in Ordnung, wenn es das richtige Werkzeug für die Aufgabe ist.

Unterschätzen Sie aber nicht die Fähigkeit anderer, Sie zu unterstützen oder zu ersetzen - wenn Sie Ihre Arbeit einigermaßen gut machen, sollte jeder Programmierer, der sein Geld wert ist, in der Lage sein, die Plattform gut genug zu erlernen, um sie zu warten. Ich habe zum Beispiel ein paar PHP-Anwendungen debuggt, migriert und unterstützt, ohne jemals auch nur das Geringste über PHP gelernt zu haben. Ich wäre verloren, wenn ich eine neue PHP-Anwendung von Grund auf neu erstellen müsste und würde es nicht einmal versuchen, aber es ist kein Problem, eine Anwendung zu unterstützen. Ich denke, dasselbe gilt auch für die von Ihnen genannten Sprachen - sie haben die kritische Masse erreicht, was bedeutet, dass es viele Bücher, Foren usw. gibt. Natürlich kann es in jeder Sprache schwierig sein, Support zu leisten, wenn sie schlecht genug geschrieben ist, unabhängig davon, wie gut jemand die Sprache beherrscht...

0 Stimmen

Es wäre für eine E-Commerce-Website und das dazugehörige Back-Office-ERP-System sowie ein kundenspezifisches Auftragsverwaltungssystem zur Erstellung von Angeboten.

0 Stimmen

Rails ist eine ziemlich gute Lösung für diese Aufgabe. Wie ich erwähnt und andere haben in den Kommentaren seine nicht wirklich so ein Rand Sprache - die einzige Sache, die mir in dieser Situation Sorgen ist die Hosting-Seite davon - wenn Sie mit einem Drittanbieter mit anständigen Rails-Unterstützung hosten Sie sind ok dort aber.

0voto

jTresidder Punkte 492

So viel Diskussion für eine so eindeutige Situation...

Es liegt nicht an Ihnen, sondern an ihnen. Wenn sie nicht technisch genug sind, um die Entscheidung zu treffen, dann müssen Sie sie für sie treffen. in gutem Glauben . Alles andere ist unehrlich, und ich bin mir ziemlich sicher, dass das nicht in Ihrer Stellenbeschreibung steht ;)

0voto

Robert Rossney Punkte 91100

Sie haben das Wasser mit all dem Herumirren im Dickicht der persönlichen Motivationen verwirrt. Die Antwort auf diese Frage lautet, dass Ihre persönlichen Beweggründe irrelevant sind, solange Sie nicht den Business Case für die möglichen Entscheidungen formuliert haben. Wenn Sie das getan haben und die Antwort immer noch nicht eindeutig ist, dann ist es natürlich schön, wenn Sie die Antwort wählen, die Ihnen am besten gefällt, denn das ist einer der Vorteile, wenn man überhaupt in der Lage ist, technische Entscheidungen zu treffen.

Was die eigentliche Frage angeht: Wenn die technisch geeignetste Wahl auch eine ist, mit der nur sehr wenige Menschen arbeiten, dann gibt es zwei Möglichkeiten: a) Es ist eine gute Wahl, und die Zahl der Menschen, die damit arbeiten, wird in den nächsten 18-24 Monaten explodieren (z. B. Django), oder b) meine Analyse ist falsch. Technologien können am Rande stehen, weil die Leute sie nur langsam annehmen, aber das ist im Allgemeinen nicht der Grund, warum sie am Rande stehen bleiben.

Wenn Sie sich dabei ertappen, dass Sie denken: "Ich kann mich nicht für Technologie X entscheiden, das macht es ihnen leichter, mich zu ersetzen", dann sind Sie in der falschen Branche. In fast jedem Unternehmen, das nicht gerade scheitert, steigt der IT-Mitarbeiter, der sich leicht ersetzbar macht, zu einer schwierigeren, interessanteren und lukrativeren Tätigkeit auf.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X