Fühle ich mich zurecht schlecht?
Hallo.
Ich programmiere liebend gerne. Ich bin dabei, eine einfache Social Media-Webseite herauszubringen.
Die Sache ist, dass ich das Grundgerüst der Webseite von GitHub habe.
- Login / Register
- Profil
- Posting
- Follow
- Like
Der Code hat eine MIT Lizenz, also man kann damit machen was man will.
Ich habe es vom Design und den Funktionen drastisch geändert, aber das meiste vom Code kommt halt von GitHub.
Ich fühle mich schlecht dabei, das zu benutzen, obwohl man es darf.
Ich schäme mich zu sagen, dass ich das gemacht habe, weil es einfach nicht so ist. Sind die Schuldgefühle gerechtfertigt?
Wie machen es die Großen: Twitter und Instagram? Ist das alles von 0 gecodet oder benutzten die auch Code von anderen, mit einer MIT Lizenz?
6 Antworten
Ich schäme mich zu sagen das ich das gemacht habe weil es einfach nicht so ist.
Du hast ja den Großteil auch nicht gemacht. Solange du ehrlich bist und sagst worauf dein Projekt basiert sehe ich kein Problem.
Wenn du behaupten würdest du hättest die Website von 0 aus aufgebaut wäre des selbstverständlich falsch.
Aber genau deswegen stellt man seinen Code Open Source, das andere davon profitieren und die Community ihn gemeinsam verbessern kann. Also am besten reichst du Verbesserungen von denen auch andere profitieren können beim original Projekt wieder ein, denke dann ist das auch alles okay. Ich persönlich würde mich denke ich verpflichtet fühlen auf des Original Projekt irgendwo auf der Website hinzuweisen.
Die Großen haben einfach die Ressourcen neue Dinge zu erschaffen, aber auch die stellen die dann oft open source eben um von Verbesserungen von anderen zu profitieren. Eventuell nutzen aber auch die Stellenweise Open Source Projekte solange die alle Requirements abdecken.
Ich kann jetzt nicht für ALLE sprechen, aber die meisten haben das auch schonmal gemacht, oder machen es öfter.
Es ist in der IT ganz normal, dass man auf vorhandenen aufbaut. Heute mehr denn je durch Paketmanager wie npm im JavaScript Bereich, Composer bei PHP oder eben durch GitHub.
Bei vielen, vielen, vielen Seiten ist im Hintergrund ein Framework, dass einen sehr, sehr viele Aufgaben abnimmt, sei es Laravel, React, Svelte oder was weiß ich. Auch CSS Frameworks und Libraries sind sehr verbreitet, ob nun Bootstrap, Tailwind oder, oder, oder.
Auch Programmkomponenten, wie du sie eingebunden hast. Viele Frameworks haben z.B. gerade für Logins und co. schon fertige Komponenten.
Die meisten richtig großen haben einen benutzerdefinierten Code und wenig fertige Sachen. Die wollen und brauchen aber auch die Kontrolle. Müssen optimieren für große Userzahlen, langsame Devices, brauchen gut wartbaren Code, mit denen sich die Leute auskennen, im Idealfall in einem Stil nach den Coding Guidelines des Unternehmens usw. Die haben aber auch ein paar mehr Leute und hatten schon etliche Überarbeitungen.
Und natürlich setzen auch die auf fertige Sachen auf. Die Protokolle da unter, das Server Betriebssystem, die Datenbanken, das Caching etc. pp. Auch die erfinden das Rad nicht neu, auch wenn es oft die Großen sind, die mit einen Einfluss auf Änderungen haben und an vorhandenen optimieren, wie z.B. Facebook mit Memcached oder PHP bzw. ihrem Hack. Seien es Sachen wie Webpack usw. Vieles könnte man davon natürlich auch selbst machen, man nutzt aber fertige Tools.
Am Ende kann ein einzelner Mensch auch zeitlich kaum eine komplexe Social Media Seite von Grund auf aufbauen, sich in all die nötigen Themen einlesen und das halbwegs ausgereift programmieren, immerhin dreht sich die Welt weiter und da gibt es auch so viele Themen über den Code hinaus wie das ganze System Design, die Datenbankstruktur etc. pp.
Ist eben verschieden, einige Projekte haben viele OpenSource Sachen eingebunden oder kostenpflichtige APIs, andere haben nix Externes drin. Wir haben als Firma z.B. etliche kostenpflichtige Sachen mit drin, für Sachen die einfach nicht unser Kerngebiet sind oder welche die Arbeit beschleunigen. Dafür zahlen wir eben auch ein paar Tausender pro Jahr pro Entwickler.
Gibs einfach in den Credits an und dann ist gut. Schau dir mal an wie Discord das gemacht hat. Das sind gefühlt 100 opensource Skripte wenn nicht noch mehr.
Wenn du den Code einfach nur kopiert hast, dann nen dich bitte nicht Programmierer. Natürlich würden die Websites von 0 programmiert