2010-03-02 18 views
9

Die Joel Test klingt wie eine Liste von Attributen, mit denen ich gerne arbeiten würde (und nicht für die meisten von uns?) Aber in einem Beratungskontext kann es sehr unterschiedlich sein. Mir wurde gesagt, dass es auf den Kunden ankommt, der in einigen Fällen nicht einmal die Quellcodeverwaltung hat (zB!)Beratung und der Joel Test

Ist es gerechtfertigt, einen Beratungsauftrag auf der Grundlage eines potenziell niedrigen Joel-Testergebnisses in einigen Situationen abzulehnen ?

Wie konnte auch ein niedriger Joel-Test-Score behoben werden? Ist On-the-Go-Versionskontrolle möglich (sagen Sie, Sie haben es auf einem Laptop, den Sie bei jedem Job mitbringen)? Würde das überall akzeptiert? Ideen? Annecdotes?

(machen dies ein Community Wiki aus der sich gehen, da es offensichtlich sehr subjektiv ist)

+1

Nicht sicher, was die Frage ist - fragen Sie, ob es möglich ist, einen hohen Joel-Test-Score als Berater zu haben? –

+1

Kann nicht herausfinden, was "Beratung und ein hoher Joel-Test-Score" bedeuten kann. empfangen? Ich kann auch nicht herausfinden, was "SVN" in diesem Zusammenhang bedeutet. –

+0

@ S.Lott: Ich denke, mit "SVN" meint er ein selbstgesteuertes Quellcode-Kontrollsystem, um seine Arbeit für den Kunden zu speichern, um das Source Control-Feld anzukreuzen und seinen Joel-Test-Score zu erhöhen. – glasnt

Antwort

35

Sie kostenlos sind die Beratungsaufträge auszuschlagen alle, die nicht die Joel-Test.

Sie können auch verhungern.

Wählen Sie eine aus.

+0

Auf den Punkt gebracht. Ich mag es. – MPelletier

+0

+1 obwohl dies nicht wirklich eine Entweder-Oder-Situation ist! Aber ich verstehe die Absicht. –

+1

Aber ich möchte lieber nicht verhungern und Joel Test Complete Jobs machen. Ist es sicher zu denken, dass die meisten Menschen hier nicht verhungern? – MPelletier

2

Die meisten Jobs, die ich hatte, die 8 + dieser Tests füllten, brauchten keine Berater.

Kunden (aus meinen Berater Jahren) entweder haben keine Notwendigkeit für die 12 (schneller Vertrag) sind nicht interessiert ("Ich bezahle Sie Code, so Code") oder wenn Ihr Glück wird gerne zu hören und zu helfen du bringst ein solches System auf, und du solltest am Ende ein permanentes Jobangebot haben.

Das Beste daran, ein Berater zu sein, ist in der Lage zu wählen, mit wem Sie arbeiten. Der Grund, einen weiteren Vertrag mit einem Kunden abzulehnen, ist die Art und Weise, wie er mich zuvor behandelt hat, und dazu gehört auch, wie ich gute Programmierpraktiken anwenden kann. Ratet mal, wer dafür verantwortlich gemacht wird, wenn alles ohne Spezifikationen, minimale Tests und Beta und Raubkopien der Entwicklungssoftware rauskommt. Am Anfang erzeugt es mehr Job (Supportanrufe), aber der Kunde wird sich bald beschweren, wie die Dinge nie erledigt werden.

3

Der Joel Test bewertet grob die Qualität einer Software Team. Sie können Dinge als Einzelperson tun, um zu versuchen, ein niedriges Testergebnis zu erzielen, aber das wird die grundlegenden Probleme, die für ein bestimmtes Team endemisch sind, nicht ändern. Wenn ein Software-Team keine Quellcodeverwaltung verwendet, können Sie verdammt sicher sein, dass sie auf viele andere Arten ernsthaft dysfunktional sein werden.

Viele Unternehmen, die Berater einstellen müssen, werden beim Joel Test nicht wirklich hoch punkten. Das heißt, dass Sie sich als Berater in einer guten Position befinden, um dieses Team positiv zu beeinflussen - Sie könnten die Person sein, die SVN oder GIT irgendwo installiert und jeden davon überzeugt, es zu benutzen. Manchmal braucht ein schlechtes Team nur jemanden mit neuen Ideen, um Dinge zu verbessern.

Sie müssen selbst entscheiden, wo Sie die Linie auf dem Joel Test zeichnen. Persönlich würde ich NIEMALS akzeptieren einen Job an einem Ort ohne Kontrolle der Quelle, es sei denn, sie waren buchstäblich Lastwagenladungen von Bargeld an meiner Haustür, und selbst dann könnte ich es einen zweiten Gedanken geben. Es ist einfach nicht den Stress wert.

10

In 30+ Jahren der Beratung hat fast keiner meiner Kunden mehr als 1 oder 2 auf dem Joel-Test erzielt. Ein paar trafen in den High 8's, aber das war die Ausnahme, nicht die Regel.

"Ist es gerechtfertigt, einen Beratungsauftrag auf der Grundlage eines potenziell niedrigen Joel-Test-Scores in einigen Situationen abzulehnen?"

Sie können drehen Sie alles, was Sie für wollen welchem ​​Grund auch immer Sie wollen. Niemand kümmert sich um die Begründung.

Ernsthaft. Sie sind Meinung nicht für etwas zählt.

Kunden, die sind verzweifelt nach Personal wird sich nicht kümmern warum Sie abgelehnt haben Ihre Ablehnung wird nicht zu plötzlichen moralischen Krise führen, wo sie ihre Fehler überdenken

Ihre Meinung über ihre Entwicklungspraktiken spielt überhaupt keine Rolle sie tun es Es ist egal. Sie müssen nichts "rechtfertigen".

Tatsächlich lachen sie normalerweise, wenn Sie erklären, warum Sie sie ablehnten. Sie wissen, dass das, was sie tun, das unter ihren Umständen beste Niveau ist. Sie wissen absolut, dass sie zum Beispiel die Quellcodeverwaltung nicht nutzen können, weil sie weder Zeit, Budget oder Serverraum noch eine andere lächerliche Ausrede haben.

Sie können darauf hinweisen, was Sie wollen. Ihnen wird es im Allgemeinen egal sein. Sie können sich nicht kümmern, da sie wissen, was sie tun, ist bereits ideal unter ihren einzigartigen Umständen.

"auch, wie könnte ein niedriger Joel-Test-Score behoben werden?"

Es kann nicht sein. Eine Kultur, die schlecht abschneidet, wird weiterhin schlecht abschneiden, bis signifikante Veränderungen in der Kultur und Belohnungsstruktur vorgenommen werden.

Eine Möglichkeit, Veränderungen herbeizuführen, besteht darin, zu arbeiten und den Fall innerhalb der Organisation so zu gestalten, dass die Dinge besser sein könnten. Wenn Sie erfolgreich sind, versuchen einige Leute zu emulieren, was Sie tun, was erfolgreich ist. Sie zu deaktivieren, zeigt keine erfolgreichen Praktiken der Softwareentwicklung.

"Ist on-the-go-Versionskontrolle möglich?"

Ja.

Ich habe einen Laptop, den ich auf jeden Job bringe.

"Würde das überall akzeptiert?"

Meistens. An einigen Orten wird es nervös, dass Berater "externe" Geräte mitbringen. Sie beklagen auch, dass Video- und Tonaufzeichnungsgeräte streng verboten sind, aber iPhones sind erlaubt. Also, wenn sie Ärger für dich schaffen wollen, können sie.

An einigen Stellen können Sie keinen Code auf Ihrem Laptop erstellen. Einige werden dich lassen.

+0

"Video-und Tonaufzeichnungsgeräte sind streng verboten, noch iPhones sind erlaubt" - klingt für mich wie sie noch nie von iPhones gehört, und nicht zu wissen Was sie sind, lass sie einfach sein. – MPelletier

1

Dies ist ähnlich den Fragen von direkten Mitarbeitern über die Einführung besserer Prozesse (oder besser agil) in einer Umgebung, wenn Sie nicht kaufen von der Verwaltung.

Ich denke, es ist einfacher, die Dinge auf eigene Faust zu verbessern, ohne das Management zu kaufen, wenn das Problem gutartige Vernachlässigung ("Source Control, was ist das?") Und nicht aktive Sabotage ("Ich werde keinen Cent für jede Zeit bezahlen für Fehlerverfolgung, Quellcodeverwaltung, Komponententests oder Build-Automatisierung ausgegeben! ")

Einige Prozessverbesserungen können eigene durchgeführt werden. Führen Sie einen Issue Tracker und Subversion auf Ihrem eigenen Rechner aus und verfolgen Sie Ihre eigene Arbeit.Verwenden Sie portable Apps wie XAMPP, um Apache und ggf. einen Php-Bug-Tracker zu hosten, oder einen Internet-bug-tracker und Quellcode-Host, wenn der Client es nicht ausdrücklich verbietet. Wenn sie den Joel-Test nicht bestehen, sind sie ahnungslos genug, um nicht in der Lage zu sein, Sie zu managen. Sie sollten also die Flexibilität haben, Ihren Build zu automatisieren, indem Sie TeamCity oder Luntbuild verwenden, wenn Sie kein Geld im Vertrag haben für Werkzeuge. Die meisten Kunden möchten, dass Entwickler in der lautesten Umgebung sind, also investieren Sie in gute Kopfhörer - einige Kopfhörer können bis zu 20 Dezibel Hintergrundgeräusche blockieren.

Selbst Joel (auf einem der SO-Podcasts) hat gesagt, dass Spezifikationen als ein Kommunikationstool mehr versprechen, dass sie liefern können. Wenn der Client auf alles versagt, außer dass er eine Spezifikation hat, dann würde ich seiner Spezifikation auch nicht vertrauen. Sie können zwar nach der Spezifikation codieren, aber das macht sie nicht glücklich, denn ein erfahrener Kunde muss beim Kauf von benutzerdefinierter Software genau wissen, was er will. Ein Unternehmer kann sich immer dafür entscheiden, eine Spezifikation zu schreiben, es ist nur eine Frage der Zeit und Sie können dafür eine Rechnung stellen. Der Rest der Joel-Testelemente sind Verwaltungsprobleme, die einzelne (sei es eine Auftragnehmer- oder Direktverleiher-) Initiative nicht beeinflussen kann (außerhalb einer unverbindlichen Empfehlung) - Budget, Interviewprozess, Bürolayout, wer ist zum Testen verfügbar usw.