Netzgeflüster: Forbes denkt also, dass man nicht programmieren muss, um ein Programmierer zu sein …

Neulich bin ich in den Untiefen des www über einen Artikel gestolpert, die mich auf professioneller Ebene sehr provoziert hat. Sie lautet „How To Become A Developer (Even If You Can’t Code)“ (zuletzt abgerufen am 14.05.17). Hm. Geht das? Um ehrlich zu sein: nicht, dass ich wüsste. Was weiß das Forbes Magazine, das ich nicht weiß!? Okay, wahrscheinlich viel. Aber was weiß das Forbes Magazine über Programmieren, das ich nicht weiß?

Forbes denkt also, dass man nicht programmieren muss, um ein Programmierer zu sein

Okay. Ich habe nicht vor das Forbes Magazine schlecht zu machen. Ich lese das normalerweise nicht und ein Artikel, der mich zudem auch noch sehr persönlich tangiert, sollte nicht ausschlaggebend für eine Meinungsbildung sein. Was aber diesen einen Artikel betrifft, so bin ich sehr skeptisch. Es ist meines Erachtens nach sehr unrealistisch zu schreiben „Many people want to become developers, but just don’t have the time or desire to learn to code.“ Erstens ist Lernen und sich weiterentwickeln gut. Wo kommen wir denn da hin, wenn niemand mehr lernt, um etwas zu erreichen? Und zweitens: das klingt für mich alles nach Business-Anekdoten, die versprechen, dass man sich auch irgendwie durchschlauchen kann. Und sowas macht mich etwas ärgerlich. Tatsächlich stellt das Forbes Magazin aber ein Konzept vor, dass es Menschen die nicht programmieren können, erlauben soll zu programmieren. Diese wären dann sogenannte Citizen Developers. Und das ist nichts, was sich das Forbes Magazine ausgedacht hat, sondern was sich scheinbar schon als Begriff etabliert hat. Allerdings muss ich zugeben, dass ich in den drei Jahren Berufserfahrung als Softwareentwicklerin noch nie über den Begriff gestolpert bin. Nimmt man meine Zeit als Studentin dazu, dann noch länger.

Was sind ‚Citizen Developers‘?

Laut dem Garner IT Glossary (Stand 14.05.17) ist ein Citizen Developer „[…] a user who creates new business applications for consumption by others using development and runtime environments sanctioned by corporate IT. In the past, end-user application development has typically been limited to single-user or workgroup solutions built with tools like Microsoft Excel and Access. However, today, end users can build departmental, enterprise and even public applications using shared services, fourth-generation language (4GL)-style development platforms and cloud computing services.“ Die Erklärung ist in dem Sinne erhellend, dass sie erläutert was genau für Software es ermöglicht zu programmieren ohne programmieren zu können. Also beispielsweise mit Tabellenkalkulation Skripte aufzusetzen, die was ausrechnen oder sich Fourth generation languages (SQL, Perl, Wolfram Language, …) zunutze machen, bei denen man ein relativ geringes set an Befehlen können muss oder reduzierter oder intuitiver sind. Auch What-You-See-Is-What-You-Get-Editoren (Klicki-Bunti) scheint das einzubeziehen. Wenn man es mal ganz krass ausdrückt ist jeder Blogger, der mit WordPress eine Seite zusammenschnipselt schon ein Citizen Developer, könnte man meinen. Forbes benennt außerdem noch Plattformen wie QuickBase und FileMaker. Damit würden laut Forbes die Citizen Developers die Softwareentwickler dabei unterstützen Anwendungen und Services zu bauen, indem sie die Fleißarbeit oder Arbeit an low-level-applications abnehmen.

Forbes und techopedia (zuletzt abgerufen am 14.05.17) geben außerdem an, dass Citizen Developers in der Regel viel Zuarbeit für interne Prozesse machen und keine Kunden-Anwendungen erstellen. Techopedia geht sogar soweit von Schatten-IT und den Risiken für bestehende Systeme zu sprechen und stellt die These auf, dass sich der Begriff deswegen entwickelt hat, weil Abschlüsse in IT nicht mehr den Stellenwert hätten, den sie mal hatten: „The rationale is that a formal computer science degree may be less valuable today than in the past and that new tools like cloud services and code abstraction platforms have allowed citizen developers to do more „programming on the fly,“ where they create applications without the specific commissioning of their employers.“ Obwohl es zahlreiche Webseiten gibt, die sich sehr lobend über citizen developer äußern (Oracle: „The Citizen Developer“, abgerufen am 14.05.17; „getting sh*& done“ – TechBeacon: „How IT can stop worrying and learn to love the citizen developer movement“, abgerufen am 14.05.17) und gar best practices anbieten (Zoho: „7 Best Practices to Be a World-Class Citizen Developer​“, abgerufen am 14.05.17), ist mir der Begriff bisher nie im Arbeitsumfeld begegnet. Da ist aber auch die Erkenntnis: auch in meinem Umfeld gibt es Citizen Developers, wenn man so will.

Warum Input von Nicht-Programmierern wichtig ist

So generell gesehen ist Input von Nicht-Programmiererin eine gute Sache. Es gibt Software-Tester, die fachliche Tests machen und damit Lücken und Corner Cases aufdecken, die den Programmierern durchaus einfach mal nicht auffallen. Als Programmierer muss man sich in zahlreiche fremde Themen einfühlen, auch wenn man vielleicht nicht viel Ahnung davon hat. Ich arbeite beispielsweise in einem Automotive Projekt, obwohl ich überschaubar viel/wenig über Autos weiß. Und so kann es möglicherweise passieren, dass man so vor sich hin-codet und mit Überzeugung etwas tut, was sich als fachlich falsch herausstellt. Usability-Experten und Designer sind wieder andere Spezialisten, die die Arbeit in der IT bereichern (und manchmal auch erschweren 😉 ). Sie sagen was an Oberflächen und Abläufen wie gestaltet sein sollte, um ein gutes Benutzererlebnis zu schaffen, barrierefreie Software zu entwickeln, etc. Und das sind nur zwei Beispiele für Leute in der IT, die nicht zwingend coden müssen. Aber Programmierer, die nicht coden müssen? Lasst es mich mal so ausdrücken: schwierig.

Theorie vs. Realität

Ich befürchte den Weg eines Citizen Developer gezielt einzuschlagen, wird einen nicht zum Heiligen Gral der IT führen. In meinem Umfeld gibt es einige Menschen, die eigentlich was anderes studiert oder gelernt haben, die aber irgendwie so in IT reingerutscht sind und quasi das machen, was hier als Citizen Developer bezeichnet wird. Es wäre unfair, wenn ich jetzt hier darüber sinniere, ob das der große Wurf ist. Für die einen mit Sicherheit, für andere vielleicht nicht. Denn die Sache ist die: man wird sicherlich als Citizen Developer an einen bestimmten Punkt kommen, wo es ohne coding Kenntnisse oder Hilfe nicht weitergeht. Das merke ich beispielsweise, wenn ich mal in die Situation komme mit einer Programmiersprache zu arbeiten, die ich nicht beherrsche. Nicht alles geht über googeln und learning-by-doing. Dazu kommt, dass man auch oftmals ein Verständnis für Prozesse haben muss. Logik, Mathematik, Server, REST, Antwortzeiten, Hardware, OCR, … und einfach Fachbegriffe.

Das Problem ist außerdem schon ein rein logisches. Wenn man Citizen Developer ist, wird man immer so gut sein wie seine Tools. Tools können abgelöst werden. Eingestampft werden. Nicht mehr unterstützt werden. Was macht ein Citizen Developer, wenn es seine Tools nicht mehr gibt? Welche Projekte und Beauftragungen bleiben, wenn das aktuelle vorbei ist? Java Developer und Web-Entwickler werden massig gesucht. Gibt es aber genügend Projekte und Plätze für Programmierer, die nicht programmieren? Die meisten Firmen werden vermutlich nicht in Citizen Developer investieren, sondern einfach schauen wer mit diesen Schatten-Aufgaben betreut werden kann so wie es sich oben in den Definitionen andeutet. Vielleicht ist das ein Konzept, dass auf dem US-Markt funktioniert, insbesondere wenn man bereit ist sehr mobil zu sein. Hier und da für Projekte zu arbeiten. Ich bezweifle das auf dem deutschen Markt Citizen Developer ein Berufsweg ist, den man gezielt einschlagen kann, wenn schon so stark an Berufszweigen wie Business Analyse und Usability gespart wird. Ich kenne viele Leute, die gerne in den Zweigen arbeiten würden, aber dort nicht Fuß fassen können, weil es zu wenig gefragt ist oder große persönliche Veränderungen mit sich bringt. Wie soll da jemand als Programmierer Fuß fassen, der nur WYSIWYG bedienen kann? Wenn man nebenbei in die Sache reinrutscht ist es mit Sicherheit nicht übel, man baut breit Wissen auf. Aber sich hinsetzen und sagen „Many people want to become developers, but just don’t have the time or desire to learn to code.“ – oh honey.

„How I Met Your Mother Clip 1 – „Oh Honey“, via LeanorPuccia67 (Youtube)
https://www.youtube.com/watch?v=YAoLNcGlNc8

Wie seht ihr das? Seid ihr vielleicht ‚Citizen Developer‘ und denkt, dass ich das falsch einschätze? Kanntet ihr den Begriff vorher? Und haltet ihr das für realistisch? Denkt auch ihr, dass Abschlüsse in der IT nicht mehr den Stellenwert haben wie früher? Ich halte das durchaus für möglich. Schließlich ist IT etwas, dass man durchaus zuhause am Rechner lernen und sogar ziemlich gut lernen kann. Aber ohne lernen geht es meines Erachtens nach nicht.

Netzgeflüster ist eine Kategorie meines Blogs in der ich mich immer zwischen dem 10. und 15. eines jedes Monats Themen rund um IT, Forschung, Netzwelt, Internet und eben auch Gerüchten widme. 🙂

7 Antworten

  1. In Deutschland studieren immer größere Teile der Bevölkerung und ich denke ebenfalls, dass das fachliche Niveau studierter Personen abgenommen hat. Ein Vorteil dieser Entwicklung liegt aber auch darin, dass mehr Leute die Chance erhalten ihr Potential auszuschöpfen als früher.
    IT ist ein lukrativer Bereich, weshalb viele Leute des Geldes wegen in diesem Bereich arbeiten und es nur als Mittel zum Zweck ansehen und nicht als erstrebenswerte Tätigkeit an sich.
    Aus meiner Sicht ist Programmieren das Erstellen einer Verhaltsbeschreibung. Man kann durch bessere Werkzeuge und schnellere Rechner sicherlich immer mehr die technische Schwierigkeit reduzieren, aber die der Anwendung innewohnende Komplexität lässt sich nicht reduzieren. Sprache ist die beste Beschreibungsform um komplexe Sachverhalte zu modellieren – ich sehe nicht wie andere Formen außerhalb eines Nischenbereichs eine Sprache ablösen können. Je größer die zu beschreibende Komplexität, desto schwieriger die Beschreibung. Einfache Sachverhalte können auch mit wenig Expertise beschrieben werden. In der Tat denke ich das zumindest rudimentäre Programmierfähigkeiten / Skriptfähigkeiten in vielen nicht direkt mit der IT verbundenen Bereichen sehr nützlich bis notwendig sind. Somit ist citizen programming eine positive Entwicklung neigt, aber man sollte nicht die intrinsische Komplexität einer Anwendung zu unterschätzen.

    1. Avatar von Miss Booleana
      Miss Booleana

      Das sehe ich ähnlich wie du. Dass man leichte Tätigkeiten mit leichten Mitteln beschreiben kann – warum nicht? Man muss sich das Leben nicht schwer machen, nur um Komplexität und Unabkömmlichkeit vorzugaukeln. Aber ich sehe es genauso, dass man nicht erzwingen darf Aufgaben ohne entsprechende Ausbildung und entsprechendes Know-How irgendwie dahinzuschludern. Das hat noch keinem geholfen.
      Und vielleicht fühle ich mich auch ein bisschen im Stolz verletzt, wenn einer behauptet, dass es auch ohne Kenntnisse geht, die ich lange studiert und erlernt habe 😉

  2. Hallo meine Liebe <3
    Dieser Begriff ist mir tatsächlich noch nie begegnet, obwohl ich ja in einer Art dieser Position arbeiten müsste, oder? 😀 Ich kann nur sagen, dass ich das echt erstaunlich finde, denn ich teile deine Meinung, dass es einen riesigen Unterschied zwischen "what you see is what you get" und Programmierung gibt. Dass Stellen wie bspw. in der Usability-Branche ihre Berechtigung haben, steht ja außer Frage, aber ich finde es wirklich merkwürdig, dass man einen eigenen Begriff für Leute schafft, die Programmieren nicht können müssen, aber dann trotzdem die Aufgaben eines Programmierers übernehmen sollen. Wozu? Ich denke ebenfalls, dass Fachwissen in diesem Bereich unbedingt notwendig ist, denn wie kann man seine Arbeit wirklich gut machen, wenn man nur einen Teil davon versteht? Und da spreche ich aus Erfahrung, wie du weißt. 😉 Gerade in meiner aktuellen Situation muss ich mich mit dem Backend rumschlagen und ich kann nur sagen: Wie gut wäre hier etwas Hintergrundwissen oder einfach jemand, der es einem gut erklärt. Denn wie du schon sagtest, an irgendeiner Stelle kommt man mit schönen Benutzeroberflächen und für "Citizen Developers" entwickelten Tools nicht mehr weiter, es ist einfach unabdingbar, irgendwann tiefer in die Materie zu gehen. Ich bezweifle auch, dass solche Tools wirklich das können, was ein waschechter Programmierer kann.
    Ich bin so froh, dass im Softwaretest auf der anderen Seite ein paar Entwickler sitzen, die Ahnung von dem haben, was sie machen. Denn wenn es wirklich ein Problem gibt, dann finden sie es auch garantiert. Wie soll das denn mit einem "Citizen Developer" funktionieren? Ich glaube jedes Release müsste um Jahre verschoben werden (ohne gemein zu klingen… denn es wäre so). Ohne richtige Programmierer wären wir total aufgeschmissen.
    Und zum Abschluss… ein bekennender "Citizen Developer" sollte sich vielleicht früher oder später überdenken, ob er sich nicht für eine der beiden "Seiten" entscheiden mag. Möchte ich mein IT-Wissen ausbauen und programmieren lernen, um mein bisheriges Wissen zu professionalisieren? Oder ist das nichts für mich und ich konzentriere mich auf meine derzeitige Arbeit oder mache etwas anderes, was mir besser liegt?
    (Danke dir nochmal dafür :D)
    Und last but not least … ich selbst fühle mich nicht wie ein "Citizen Developer", sondern ich sehe mich als klassischen und unwissenden "Nicht-Programmierer" 😀 hehe.

    1. Avatar von Miss Booleana
      Miss Booleana

      Hi Sani 🙂
      Joar … zum Teil wahrscheinlich. In deinem Berufsfeld gibt es aber auch massig Leute, die Backend-Tests schreiben. Datenbank-Lasttests machen etc. Und da ist man ja schon tief in der Materie und hat Coding Kenntnisse. Also würde ich das mal gar nicht so sagen, dass das Citizen Developer sind. Kommt in dem Fall wohl auf die Tools an. 🙂 Aber ich bin da ganz bei dir (und das nicht nur aus gekränktem Stolz das das was ich gelernt habe plötzlich abdingbar sein soll 😉 ) Ich denke, dass es ab einer gewissen Komplexität nicht ohne Kenntnisse geht. Coding sei mal dahingestellt, aber es gibt soviele Prozesse (nehmen wir einfach mal Signalverarbeitung, Routing, ein bisschen Hardware, …) über die man schon Bescheid wissen sollte.
      Deswegen finde ich den Titel den Forbes da gewählt hat, schon etwas vermessen … aber so hat man auch was zum diskutieren 😉

  3. Sehr spannendes Thema! Es erinnert mich ein wenig an die Diskussionen zum Journalismus und Bloggern – da gab es in den letzten 10 Jahren ja auch etliche Theorien, Modelle und neuen Begriffe (u.a. auch den Citizen Journalist 😉 ).

    Ich glaube, letztlich kommen wir in der heutigen Zeit nicht drum herum, dass sich jeder ein paar Basics in Programmierung aneignet oder zumindest ein Grundverständnis dafür entwickelt, was Programmierung ist und wie sie im Groben funktioniert. Dafür ist unsere Gegenwart zu sehr durch IT geprägt – und wird es ja nur noch mehr, indem es auf immer mehr Lebensbereiche übergreift. So langsam sickert das auch im Bildungssektor durch und die ersten Entscheidungsträger sprechen sich für die Förderung von IT-Kompetenzen (in Form von Coding-Basics) im Rahmen der schulischen Bildung aus.

    Und wie du schon schreibst, sind nach der oben genannten Definition ja auch wir Blogger schon Citizen Developer.

    Aber: Ich käme nie auf die Idee, dass man das auch nur ansatzweise mit der richtigen Programmierarbeit vergleichen könnte. Dafür ist Programmierung viel zu komlex und die Sprachen zu vielseitig. Das Selbstlernen von ein paar Programmierbefehlen macht also garantiert nicht die professionellen Programmierer obsolet – im Gegenteil: In Anbetracht der technologischen Entwicklungen werden Experten auf diesem Gebiet nur umso wichtiger, gerade wenn es um eine fehlerfreie Anwendung geht, umso mehr in Bereichen mit hohem Sicherheitsbedarf (z.B. Automotive Systeme).

  4. […] Das Forbes Magazine hat sich unlängst dem sogenannten Citizen Developer gewidmet und die Frage in den Raum geworfen, ob man zum Programmieren auch unbedingt Programmierkenntnisse benötigt. IT-Fachfrau Miss Booleana ist dieser Frage nachgegangen und klärt auf, was dran ist an der Behauptung, man müsse kein Programmierer sein, um zu programmieren. […]

  5. Hallo,
    Citizen Developer und dann über Access sprechen… Mich schüttelt es, da ich jedes Mal zu viel bekommen, wenn jemand Access Datenbank sagt. Natürlich ist es toll, wenn Leute in der Lage sind sich damit ein Tool für ihre Bedürfnisse anzupassen aber 1) Access kann nicht mal richtig SQL und 2) Ok, wenn die Leute da tatsächlich in die Tiefen der VB Möglichkeiten abtauchen bin ich schon beeindruckt. Allerdings wissen/können es die Wenigsten.
    Zu mir: Yay ich bin Citizen Developer, weil ich im WordPress auch mal direkt im Code rum fummel und auf Podcaster auch! Es ist übrigens die Hölle, dass jede Plattform die Inhalte anders anzeigt. Nach 2 Java Modulen kann ich sicher sagen, dass ich nie Java Entwickler werden will. Ich glaube Skriptsprachen liegen mir das mehr.
    Zum Thema Stellenwert von Abschlüssen. „Many people want to become developers, but just don’t have the time or desire to learn to code.“ Hat hier einen sehr wichtigen Inhalt. Auch ohne Abschluss können sich Leute sehr fundiertes Wissen angeeignet haben und Erfahrungen gesammelt haben. Das ist nicht zu unterschätzen. Ich arbeite ja selbst im öffentlichen Dienst und dort gibt es keine „Erfahrung“, dort zählt nur der „Abschluss.“ Der Abschluss ist alles und der Grund, warum ich Jahre nach meiner Ausbildung nochmal mit dem Studium angefangen habe.
    Liebe Grüße
    Ariane

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert