Programmieren lernen einfach so?

Miner schrieb:
Digitalisierung bedeutet für mich nicht, dass ich den Zettel nicht mehr auf dem Tisch habe sondern als PDF auf dem Schirm.

Da PDF eigentlich nicht dafür geschaffen wurde, umfangreich geändert oder gar neu layoutet zu werden, lassen sich die Inhalte auch mit teureren PDF-Editoren nicht grundlegend umbauen.
Q: Heise PDF FAQ
siehe auch PDF Versions-Geschichte

Zu den guten Hinweisen von BeBur könnte vlt. noch ergänzt werden
- Eventuell Arbeitet die Webseite im Hintergrund (Javascript) mit einer API : die kann/muss nicht öffentlich dokumentiert sein , dazu den Quelltext der Webseite über die integrierte Entwicklerkonsole im Browser untersuchen

- Bei Datenbanken und Zugriff bzw. "Automatisierung" gibt es eventuell Probleme mit "geistigem Eigentum" - ich kenn das von 2012 bei OSM (heise) - und in Deutschland zb hier - keine Ahnung ob / welche / wieviel Probleme das sein könnten und wie die persönliche Risikobereitschaft und Stressresistenz da bei dir aussieht - "web scraping" / "screen scraping" hat bereit Gerichte beschäftigt.

aw48 schrieb:
Bilde Dir nicht ein, den unersetzbar-Status zu erreichen. So etwas gibt's schon lange nicht mir.
Den haben eher die "Experten", die das "unverzichtbare" Datenbanksystem oder das Webportal programmiert haben - oder sich in COBOL, ... auskennen.

Die Softwareentwicklung geschieht nicht im Vakuum - Anwender-Forderungen / Pflichtenheft / rechtlicher Rahmen , "digitaler Workflow" , Dokumentenstandards .... das ist kein eingeübtes "jahrhundertealtes" Aktenmanagement der Papier-Bürokratie (Geschichte des Beamtentums).
 
Ob die Automatisierung Deiner Tätigkeit direkt das beste Startprojekt ist wage ich ja zu bezweifeln, vor allem weil es zumindest in Teilen nach Qualitätssicherung aussieht was Du machst.

PS. wenn Du wirklich mit dem programmieren anfangen willst, ist die Beherschung von Google essentiell. Verlaß Dich nicht zu sehr auf die Antworten hier im Thread, zerstückel Dein Thema in einzelne Probleme (Page auslesen etc.) und schau was in den Weiten des Webs dafür empfohlen wird.
 
Hi!

Automatisierung kann man auch ohne API erreichen, falls keine angeboten wird. In der Testautomatisierung verwendet man sehr häufig Selenium für UI Smoke Tests oder andere UI Tests aber man kann es natürlich auch für andere Arten von Automatisierung "missbrauchen", solange das UI eine Website ist. Einloggen, Daten eintippen, auslesen, alles kein Problem. Geht auch Headless ohne, dass das Browserwindow überhaupt aufgehen muss. Dafür gibt es Pakete in fast allen gängigen Sprachen.

Die Daten aus deinen Dokumenten kannst du in eigentlich jeder Sprache geschickt auslesen und anschließend weiterarbeiten per Selenium. Ob Python, C# oder JS (Node) spielt kaum eine Rolle. Nach einer Weile sind die Sprachen eh alle mehr oder weniger identisch - Python mal ausgenommen :D Wichtig ist zu wissen, was man erreichen möchte und welche Tools dafür zur Verfügung stehen. Das ist aber leider etwas Erfahrungssache und wird man so in kurzer Zeit auch nicht erlernen. Das soll dich aber nicht abschrecken - Zu Beginn wichtig sind vermutlich Google und Stackoverflow.


LG Stefan
 
MrFlip0815 schrieb:
u Beginn wichtig sind vermutlich Google und Stackoverflow.

Google kann jeder, suchen mit Google ist schon schwieriger, Stackoverflow hat so seine Probleme,
a) mit newbies
b) englisch, und das kann im Einzelfall kompliziert werden.
ComputerBase ist vollkommen ausreichend, zumindest für den Neuanfänger
 
Irgendwie sehe ich nur so gar keinen Angriffspunkt.
Das einzige wäre jetzt, ich suche mit Google, lese haufenweise Kram bei dem ich kaum was verstehe und nicht mal beurteilen könnte ob es richtig/wahr ist und ob ich das überhaupt brauchen kann.
Sicherlich ist bei meinem Anliegen schon gleich der Fehler, weil ich wo anders (an einem Browser bzw. einer Webseite) andocken will. Wie will man etwas programmieren was man nicht kann an etwa was man nicht kennt. Englischfähigkeiten sind zu dem überschaubar.
Ich denke, das sind 2 verschiedene Dinge. Mein Anliegen - da wäre es vermutlich zielführender alle möglichen Programme zu testen. Programmieren... einfach etwas kleines nach Anleitung probieren um überhaupt zu sehen was sich tut. Für mich als Laien ist dennoch der Gedanke der, Problem mittels programmieren lösen.
Programmiert man überhaupt noch selber? Verwendet man nicht eher fertige "Textbausteine" und passt diese dann nur an?
 
Miner schrieb:
Unter anderem! Ich habe eine Liste mit Daten. Dahinter stehen Kunden/Klienten. Aus einem Datensatz nehme ich einen Teil z.B. im weitesten Sinn eine Kundennummer. Dann logge ich mich auf einem Webportal ein. Dann wird ein bestimmtes Menü aufgerufen. Dort wird diese Nummer eingetragen. Dann sieht man in der Ausgabe andere Daten z.B. Datumswerte. Nun vergleiche die Daten dort mit den uns bereits bekannten Daten. Stimmt es überein, wird nichts weiter unternommen. Weiter mit dem nächsten Datensatz.
Miner schrieb:
Irgendwie sehe ich nur so gar keinen Angriffspunkt.
Das Problem zerlegen, darum geht es immer beim Programmieren.
Fang mit was relativ leichtem an. In deinem oben geschilderten Problem:
Lies aus der Exceldatei deine Nummern und die zu vergleichenden Datumswerte aus und gib sie irgendwo aus (z.B. einfach nur in der Konsole).
Das ist der erste Schritt, der dich bereits dutzende Dinge lehren wird.

Um dieses erste Problem zu lösen, unterteilst du es wieder. Was musst du machen?
  • Aus Excel auslesen
  • Ggf. die Daten irgendwie bearbeiten, strukturiert im Speicher halten
  • Daten in der Konsole ausgeben, als Erweiterung das vernünftig formatieren

Und die Dinge kannst du dann schon fast googlen.
"[deine Programmiersprache] read excel file"
"[deine Programmiersprache] write to console"
was auch immer gerade dein Problem ist.

Am besten versuchst du erstmal ganz einfach nur einen direkt in den Code geschriebenen Datensatz auszugeben. Dann gehst du weiter, wie du stattdessen die Daten aus Excel bekommst. Usw.

Miner schrieb:
Programmiert man überhaupt noch selber? Verwendet man nicht eher fertige "Textbausteine" und passt diese dann nur an?
Nein, man nutzt Bibliotheken, um "high level" Probleme zu lösen. Das Ziel ist, dass sich der Programmierer voll auf sein eigentliches Problem konzentrieren kann und sich z.B. nicht ewig damit beschäftigt, wie er nun ein Zeichen in die Konsole geschrieben bekommt.
 
  • Gefällt mir
Reaktionen: BeBur
Miner schrieb:
Irgendwie sehe ich nur so gar keinen Angriffspunkt.

Es gibt zwei grundlegende Sachen die du brauchst um mit diesem Projekt anzufangen: Ein Grundverständnis wie Webseiten bzw. Webanwendungen funktionieren und ein paar ganz grundlegende Programmierkentnisse.

Die beiden Teile sind erstmal voneinander unabhängig. Zur Programmierung würde ich mir einen Kurs/Tutorial suchen der sich ausdrücklich an Anfänger richtet. Nachdem man diese Grundlagen kennt, kann man viele Details dann später einfacher raussuchen, wenn man sie braucht. Ich kenne jetzt leider keine guten deutschen Quellen dafür.

Um zu Verstehen wie Webseiten und Webanwendungen funktionieren kann man entweder selbst welche erstellen, oder sich mit Browser Tools einfach mal existierende Seiten ansehen. In Firefox/Chrome einfach mal Strg+Shift+I eingeben, dann öffnen sich die Entwicklertools. Und dort ist ein Tab "Netzwerk" oder "Netzwerkanalyse". Wenn du jetzt mit dem Tab offen die Seite neu lädst kannst du die gesamte Kommunikation von deinem Browser mit der Webseite sehen.

Wenn die Seite die du auslesen willst eine klassische Webseite ist, ist die Information die zu rausholen willst sehr wahrscheinlich in der allerersten Antwort vom Server vom Typ HTML. Wenn es eine Webanwendung ist, dann ist Information in einer Antwort vom Typ JSON. Ich würde mir aber evtl. erstmal ein paar einfachere Seiten anschauen, Seiten mit viel Werbung und so sehen sehr unübersichtlich aus mit diesen Tools.

Als Stichworte zur Suche für das was du machen willst, wenn es eine klassische Webseite ist dann willst du einen sogenannten "Web Scraper" programmieren. Wenn es eine Webanwendung ist, dann willst du eine REST bzw. JSON API abfragen.
 
Will hier mal meine two cents beitragen, weil ich eine eigene Sicht auf das im Eröffnungspost geschilderte Unterfangen habe:
Ich berate meine Kunden, stelle Datenbanken her und programmiere die Anwendungen (meist als Webanwendungen, SPA), mit denen die ihre Anforderungen erfüllt haben. Das mache ich also genau so auf eine gewisse Weise, weil es der Kunde einmal genau so gewollt hat.
Im Ergebnis könnte dann eine Anwendung entstehen, die auf die geschilderte Weise genutzt wird: Jemand liest Werte aus z.B. einer Excel-Datei oder einer anderen Liste, trägt sie im Programm an bestimmter Stelle ein und erhält möglicherweise Werte, welche man womöglich mit anderen Werten vergleicht.

Dass die Software dann (in meinem Fall bzw. dem meines Kunden) aus dem Benutzer des Programms einen "Sachbearbeiter" macht, ist im Sinne des Erfinders, weil der Kunde genau diese Entwicklung des Programms so einmal in Auftrag gegeben hat. Eine weitergehende Automatisierung des Programms wäre möglicherweise teurer gewesen und war daher wohl nicht vorgesehen.

Wenn jetzt der sog. Sachbearbeiter aus Frustration das beim Arbeitgeber vorhandene Programm anders als vorgesehen nutzen will, könnte man aus dieser Perspektive betrachtet diese Aktion als Zweckentfremdung betrachten und auch als Hack. Sicherlich würde bei Problemen (welche bei dieser Verwendung auftreten könnten) eine Gewährleistungsfrage und/oder Haftungsfrage aufkommen und auch die Frage, ob damit die Daten nicht kompromittiert werden könnten und der Betrieb gestört werden könnte.

Daher würde ich niemandem empfehlen, als Laie ein solches Unterfangen anzugehen und damit möglicherweise unabschätzbare Probleme zu verursachen.

Es gibt Millionen Wege und Möglichkeiten, sich das Programmieren selbst beizubringen; bei mir hat ein "altmodisches" Werkzeug dabei toll geholfen - es heisst Buch.
 
  • Gefällt mir
Reaktionen: BeBur
Miner schrieb:
Irgendwie sehe ich nur so gar keinen Angriffspunkt.
Das einzige wäre jetzt, ich suche mit Google, lese haufenweise Kram bei dem ich kaum was verstehe und nicht mal beurteilen könnte ob es richtig/wahr ist und ob ich das überhaupt brauchen kann.
Willkommen in der Software-Branche als Einsteiger :D. Keine Sorge, nach 1-3 Jahren kontinuierlichem Programmieren (10-40 Stunden / Woche) ist das nicht mehr so.
Den super Weg zum Lernen der für alle toll ist hat noch niemand ausgetüfelt, die einen empfehlen erst einmal 6 Monate bzw. so 250 Stunden Grundlagen mit Übungsaufgaben zu Lernen, andere verbringen die Zeit lieber direkt mit dem was du machst, also try&error, bevor dann die Phase kommt die in jedem Fall folgt nämlich "ich dachte ich habe das jetzt halbwegs drauf aber ich muss 10 mal pro Stunde für jede Kleinigkeit Googlen".

Miner schrieb:
Programmiert man überhaupt noch selber? Verwendet man nicht eher fertige "Textbausteine" und passt diese dann nur an?
Ein Schachspieler denkt nicht darüber nach, wie er seinen Arm benutzt oder wie man sein Gleichgewicht auf einem Stuhl hält. Genau so denken Programmierer nicht mehr darüber nach, wie sie jetzt einen Buchstaben oder ein Bild auf den Bildschirm kriegen, aber genau so wie man kein guter Schachspieler wird nur weil man weiß wie man mit seiner Hand nach einer Figur greift kann man nicht fertige Bausteine zusammen klicken um ein Programm zu erhalten.

Miner schrieb:
Englischfähigkeiten sind zu dem überschaubar.
Wenn du die nächsten Jahre am Ball bleibst hast du das was du an Englisch (lesen) brauchst dir direkt mit angeeignet. Die IT-Welt spricht Englisch. Serien auf Englisch mit (erst deutschem, dann englischem) Untertitel könnten helfen.

Miner schrieb:
Ich denke, das sind 2 verschiedene Dinge. Mein Anliegen - da wäre es vermutlich zielführender alle möglichen Programme zu testen.
Ja, vielleicht. Das kann man vorab nie sagen und manchmal auch hinterher nur begrenzt einschätzen.

Die wichtigste Fähigkeit eines Programmier-Anfängers ist Frustrationstoleranz.
 
  • Gefällt mir
Reaktionen: aw48 und AW4
Merkst du was da jetzt schon an theoretischen Überlegungen auf dich niederprasselt ?
Also ich würde Dir zu JAVA raten. Sehr gut wäre natürlich Visual Studio aber MS hat leider mit Java nix am Hut.
Ich selbst habe keine grosse Erfahrung mit Java, also ich weiss nicht ob es da eine Entwicklungsumgebung ähnlich VS gibt, aber Java ist sehr vielseitig einsetztbar.
Was Dein beabsichtigtes Projekt angeht, davon solltest Du Dich zunächst mal lösen. Zum Erlernen einer Programmiersprache ist es nicht gut, von vorneherein ein bestimmtes Projekt im Auge zu haben (meine Meinung).
Das wird auch gar nicht funktionieren, denn in der Lernphase schlägst Du dich ständig mit Problemem herum, die dann Dein ursprünglich anvisiertes Projekt immer weiter in den Hintergrund drängen.
Möglicherweise wird sich Dein Einstieg, egal wofür Du Dich entscheidest, später als falsch erweisen, aber das Risiko musst Du eingehen und mit der inzwischen erworbenen Erfahrung wird Dir dann ein Umstieg viel leichter fallen, ganz abgesehen davon, wenn Du einmal Blut geleckt hast, wirst Du Dich mit weiteren Programmier-sprachen befassen wollen.
toi, toi, toi
 
Programmieren lernen kann jeder. Aber... Maurer oder Schweißer lernen kann auch jeder. Aber viele dann halt 0815. Deshalb: ist es wirklich was für dich?

(Und grad in der IT meinen viele, dass das ja "yolo" ist. Nein ist es nicht!)
 
GroMag schrieb:
Programmieren lernen kann jeder. Aber... Maurer oder Schweißer lernen kann auch jeder. Aber viele dann halt 0815. Deshalb: ist es wirklich was für dich?

(Und grad in der IT meinen viele, dass das ja "yolo" ist. Nein ist es nicht!)

Wann ist denn etwas wirklich was für jemand ?
Anstatt ihm zu erklären, wie er herausfinden kann ob das wirklich was für ihn ist, schreibst Du so einen Quatsch.
 
Na ja um ehrlich zu sein frage ich mich schon "ist das wirklich was für dich (=mich)?".
Ich habe pausenlos Dinge dir mir so einfallen, wo ein Computer mittels Software etwas in Sekunden machen könnte um dann ein Ergebnis auf wenige Dinge zusammenzufassen. Dann genügt ein Blick und man weiß was los ist bzw. eigentlich blickt man nur noch um zu kontrollieren, ob das Programm noch läuft & funktioniert (Quellen unterliegen oft Updates was eine Anpassung auf der eigenen Seite erfordert) oder aus Langeweile/Interesse. Denn natürlich würde sich das Tool bemerkbar machen, sobald etwas erhofftes/befürchtetes erreicht wird.

Ich denke da vielleicht zu "kaufmännisch". Natürlich ist der Nutzen von Tools unbestritten. Die Frage ist, ob die Arbeit zur Entwicklung da noch in Relation steht. Wie wenn jemand, der es nie gelernt hat, beginnt sein eigenes Haus zu bauen. Dauert viel länger (was Effekt auf Kosten hat), er macht Fehler (was auch Effekt auf Kosten hat) usw.
Lernprozesse sind eigentlich immer ätzend und Quälerei. Und doch hab ich schon Probleme mit Excel gelöst, wo ich Stunden am Stück an der Tabelle gearbeitet habe, völlig im Thema versunken und fast Stolz wo ich sehen konnte wie cool und schnell das am Ende funktioniert. Excel kann auf einen Zwischenschritt darstellen. Excel kann nicht nur rechnen sondern auch Texte verarbeiten. Nach Worten oder Zeichen suchen und dann mit anderen Passagen verbinden, ergänzen, ändern, Fehler beheben usw. - aktuell nutze ich es um Daten die aus Programm A stammen so "umzuformatieren" dass sie in Programm B integriert werden können. Alles nur über Formeln = "wenn dann". Jede Frage ist irgendwann nur eine Verschachtelung von vielen "wenn->dann's".

Ich könnte meine eigene "Frusttoleranz" gar nicht einschließen. Bei Excel z.B. wusste ich, dass es funktionieren würde. Ich wusste auch, ich könnte es machen. Ein paar Formeln nachschauen wie sie aufgebaut sein müssen aber grundsätzlich schon mit den vorhandenen Fähigkeiten. Da sieht man wie es Stück um Stück wächst und bei jedem Schritt sieht man direkt dem Ziel nähert. Da kam eigentlich kein Frust auf. Sonst bin ich eher schnell genervt :p - besonders, wenn ich mit schlechter Software arbeiten muss. Es ist manchmal traurig, was man so bekommt, wenn man den Preis sieht. Stichwort: Corona-App. Ich will die nicht schlecht reden oder kritisieren. Ich denke nur beim Preis hätte man vielleicht "mehr" bekommen können? EGAL! Letztlich ist meine ganze Fragestellung hier dem geschuldet, dass Software etwas nicht kann und weil das "wir" bezahlen müssten um nur eine unbefriedigende Lösung zu erhalten viel viel viel zu teuer wäre (wenn Hersteller da überhaupt ran gehen würde).

Ich überlege im Moment mehr bestehende Programme zu testen ob sie sich vielleicht dazu "missbrauchen" lassen.
Ergänzung ()

Ach so: zum Thema "programmiert man heute eigentlich noch selber?" ... ich dachte dabei eigentlich mehr in eine andere Richtung. Frühe (geschätzt 1 Mio. Jahre vor unserer Zeit) gab es mal ein Programm von MS namens Frontpage. Das hat Webseiten-Code erstellt, nach dem was der Anwender gemacht hat. "ich füge hier ein Bild ein" und das Programm erstellt an richtiger Stelle den dazu gehörigen Code. Der Anwender musste nicht zwingend den html Code verstehen um eine Webseite zu erstellen.
Der Gedanke ist, die Basis mit so einem Tool erstellen und dann gezielt um das erweitern, was das Tool nicht anbietet.
 
Zuletzt bearbeitet:
So wie du grad schreibst, ist dir wahrscheinlich am besten geraten, einfach weiter bei Excel zu bleiben und dich darin gegen Visual Basic zu schmeißen.
In Excel findest du dich ja scheinbar schon sehr gut zurecht. Spräche also absolut nichts dagegen, deine Sheets mit etwas VBA aufzuwerten, aufzubohren oder zu erweitern.
Je nachdem wie das betroffene Webportal aufgebaut ist, kannst du das irgendwann, nachdem du nach und nach das nötige Know-How sammeln konntest, vielleicht teilweise oder auch vollständig darüber abhandeln.
Ja und wenn nicht, hats auch nicht geschadet. Dann bleibst du halt bei den Standard-Sheet-Funktionen mit oder ohne ein paar kleinen VBA-Sachen.

"programmiert man heute eigentlich noch selber?":
Kommt schon auch drauf an, wo du dich bewegst.
Im Bereich von Webseiten gibts sowas zum zusammenklicken schon vermehrt.
Und auch im Ingenieuresbereich mit LabVIEW eine visuelle Programmiersprache.
Selbst für Hochsprachen gibt es über Visualisierungprogramme mit integriertem Softwaresystementwurf die Möglichkeit Programme und Algorithmen zu erstellen, (fast) ohne eine Zeile Code schreiben zu müssen.
Aber die Klassen an Problemen, die du damit erschlagen kannst, sind begrenzt.
Im Endeffekt kannst du damit nur Probleme lösen, die schon einmal gelöst wurden.
In allen anderen Fällen reicht das dann aber nicht und jemand muss sich hinsetzen und das spezifische Problem "wegprogrammieren".
Vor allem bei Hoch- und Interpreter-Sprachen sind visuelle Tools eher weniger verbreitet.
Ich würde mich da auch aus dem Fenster lehnen und behaupten, dass die Probleme da zu oft einfach auch zu speziell sind, als dass das Zeiteffizient mit visueller Software gelöst werden könnte.
 
Zuletzt bearbeitet:
GroMag schrieb:
Das sind keine Formeln! Das sind Algorithmen.
Manch einer möchte so etwas auch schon "KI" nennen. :)
----
Zu aller erst: Ich finde es vernünftig zu hinterfragen, warum der Mensch sich mit stupider Arbeit befassen sollte. Andererseits wird der TE dafür bezahlt, weil irgendwer die Automatisierung nicht bezahlen möchte. Das kann kurzfristig die wirtschaftlichere Entscheidung sein oder eben langfristig teurer werden.

Mir ist aber auch schon so manchmal der Gedanke gekommen, dass ich bei meiner Arbeit teilweise andere Menschen wegautomatisiert habe und theoretisch sogar an meinem eigenen Stuhl säge.

Kürzlich war ich selbst innerlich gespalten, ob man dem Kunden zeigen sollte, dass so ein Deployment mit einem Klick in wenigen Sekunden erledigt ist. Als Kunde könnte man da den Eindruck bekommen, dass das doch ganz einfach ist. Aber das ist ein ganz anderes Thema. :)

Stichwort Programmieren lernen. Also richtig und nicht "Programmieren Light" oder wie ich gerne sage: Office- und Makrohelden. Es ist jedes Mal wieder verblüffend, was manche Leute in diesen Tools zusammenschrauben.

Du hast eine (oder auch mehrere Ideen). Das ist eine sehr gute Voraussetzung zu lernen. Denn mitunter das Wichtigste ist, dass Du ein Ziel hast. Dieses Ziel sollte natürlich auch erreichbar sein. Du wirst auf dem Weg wahrscheinlich öfter mal alles über den Haufen werfen wollen, weil Du eine neue Herangehensweise oder auch ein neues "Pattern" gelernt hast, das Dein Problem vielleicht mit nur 10 statt 100 Zeilen Code lösen kann.

Fang am besten den kleinsten Ideen an. Eine kleine Konsolenanwendung, die eine kleine Sache macht mit möglichst keinen Schnittstellen. Jede Schnittstelle bedeutet Komplexität und die will man tunlichst vermeiden.

Als Beispiel Eingabedaten: Es macht einen Unterschied, ob die Daten dem Programm als Argument vorliegen oder ob der Benutzer sie interaktiv eingibt. Denn wenn der Benutzer etwas eingeben kann, muss man überlegen, wie man damit umgeht, wie man mit Falscheingaben (Buchstaben, wenn Zahlen erwartet werden, Leerzeichen am Ende von Eingaben usw) umgeht.

Bei Deiner ursprünglichen Idee, die Eingaben und Auswertungen im Browser zu automatisieren, fällt das mögliche Komplexitätsspektrum recht groß aus. Je nachdem, wie das Portal implementiert ist, kann es für Dich zur Hölle werden, mit einem Programm eine Automatisierung zu versuchen.
Im einfachsten Fall hast Du jedoch eine API und Du musst einfach nur eine HTTP Bibliothek benutzen und Anfragen abschicken und die Antworten auswerten.
Im schwierigen Fall musst Du eine Authentifizierung bedienen und eine komplette Browserapplikation durchdringen. Statisches HTML gegen eine Anwendung, die den DOM ständig verändert, Dinge und Felder dynamisch aufblendet und verschwinden lässt usw.

Da steckt man eventuell viele Komponenten zusammen und genau da sehe ich die Kunst des Software-Engineerings, diese Komplexität zu erkennen und beherrschbar zu gestalten.

Wie üblich gilt: Man sollte sich nicht übernehmen. Sich als Anfänger das Ziel Mt. Everest zu stecken ist schon sehr ambitioniert. Lieber kleiner anfangen und Erfahrung sammeln. Wer nach stundenlangem Marsch den Gipfel erreicht hat und merkt, dass es bereits dämmert und kein Zelt dabei hat, wird sicherlich eine Lehre daraus ziehen. :)

Miner schrieb:
Ach so: zum Thema "programmiert man heute eigentlich noch selber?" ... ich dachte dabei eigentlich mehr in eine andere Richtung. Frühe (geschätzt 1 Mio. Jahre vor unserer Zeit) gab es mal ein Programm von MS namens Frontpage. Das hat Webseiten-Code erstellt, nach dem was der Anwender gemacht hat. "ich füge hier ein Bild ein" und das Programm erstellt an richtiger Stelle den dazu gehörigen Code. Der Anwender musste nicht zwingend den html Code verstehen um eine Webseite zu erstellen.
Der Gedanke ist, die Basis mit so einem Tool erstellen und dann gezielt um das erweitern, was das Tool nicht anbietet.
Grundlegend funktionieren Computer immer noch wie vor 1 Mio. Jahren. Den Unterschied machen die ganzen Softwarekomponenten, die jetzt zwischen dem Benutzer und dem Prozessor arbeiten.
Um viele Dinge muss man sich nicht mehr kümmern, weil es automatisiert wurde bzw. einfach ein Framework benutzt wird.
So etwas wie Frontpage existiert heute als "Homepage Baukasten" von diversen Webhosting Anbietern. Vorgefertigte Templates und Funktionsblöcke zusammenklicken, Inhalte schreiben, Bilder einfügen und fertig ist eine ansprechende Webseite. Die nächste Stufe ist wahrscheinlich so etwas wie Wordpress oder ein gar ein großes Content Management System.
Je nachdem, was man denn vorhat. In den letzten 15 Jahren haben Browser immer mehr Funktionalitäten gelernt und übernommen. Google Chrome OS hat ja dem Nutzer quasi nur noch über einen Browser mit dem Computer interagieren lassen.

Visuelle Tools gibt es heute immer noch und erfreuen sich auch großer Beliebtheit. Es ist eben doch teilweise einfacher, einen Prozess zu verstehen, wenn er grafisch dargestellt wird anstatt als Text.
Apache Nifi fällt mir spontan ein. Damit kann man sich Datenpipelines zusammenklicken. Eventuell reichen ja einfache Funktionen, wie "zähl mir mal alle Zeilen", aber eventuell benutzt man dann doch ein selbstprogrammiertes Skript.

Was ich nach dem ganzen Text sagen will: Ja, man kann sich ganze Anwendungen [aus Makroblöcken] zusammenklicken (siehe Excel und Co). Aber je nach Fall, ist ein eines Skript/Programm auch ganz gut. Man muss einfach selbst einschätzen, was die beste Lösung ist.
 
Zurück
Oben