Programmieren & Softwareentwicklung

2.481 Mitglieder, 27.615 Beiträge

Woher weiß ich ob ich ein guter Programmierer bin?

Ich bin grundlegend gut darin, Webdesign mit HTML und CSS zu praktizieren und beherrsche auch äußerste Grundlagen von Javascript praktisch. Verstehe aber auch die Restlichen Grundlagen eigentlich Problemlos Wenn es dann jedoch komplexer wird beim Programmieren, sei es in Java, Javascript und so weiter, dann dreht bei mir alles durch. Ich habe das Gefühl, dass man für jede Kleinigkeit irgendwas neues innerhalb der Sprache lernen muss und dass einem der Rest des vorher gelernten gar nichts mehr bringt. Und meist findet man für spezielle Sachen auch nichts im Internet. Hatte ich schon oft in Projekten in Java oder Javascript, dass ich bei komplexeren Sachen nie weiter gekommen bin, vor allem bei anderen APIs, mir die Dokumentation nie weiter geholfen hat, man aber auch nichts online finden konnte, was mir weitergeholfen hat… Was mache ich falsch?

Webdesign als Sidehustle?

Ich bin derzeit am Überlegen, meine Fähigkeit des Webdesigns als Sidehustle zu nutzen, um neben der Schule noch etwas Geld zu verdienen. Ich frage mich nur, wie ich das Umsetzen soll. Reichen meine Kenntnisse in HTML CSS und äußerste Grundkenntnisse in Javascript aus, um das als Dienstleistung anzubieten? Und wenn ja, wo kann ich es anbieten, Fiverr Z.B. ist ja glaube nicht sehr optimal. Bei dem was ich gehört habe, gibt es da fast zu viel Konkurrenz und man bekommt nicht unbedingt viele Aufträge, wenn man neu ist. Wie kann ich diese Fähigkeit vielleicht sonst nutzen, um Geld zu machen?

Minecraft Plugin wird nicht erkannt?

Hey, ich habe vor kurzem angefangen mit Java zu coden über IntelliJ und verstehe es einfach nicht. Ich wollte ein ganz normales Plugin coden, was gewisse Items an Spieler ausgibt, wenn sie diese joinen. Wenn ich allerdings ganz normal als Artifact erstelle und auf Build Artifact gehe, kommt da ne Datei raus die 2 KB groß ist (weiß nicht so genau ob das normal ist) und wenn ich die in mein Plugins Ordner mache wird das nicht erkannt. Es ist ne jar Datei aber Ingame wird bei /plugins nichts ausgegeben, noch erfüllt das Plugin seinen Zweck. Kann mir da jemand bitte helfen? Das sind nur 45 Zeilen Code und in der IDE wird mir keinen Fehler angezeigt.

Bei Coding Assessment dazu schreiben dass man ChatGPT verwendet?

Hallo Zusammen, ich habe vor zwei Tagen ein Coding assessment abgeschickt. Darin ging es darum, ein Backend mit Django zu entwickeln, das alle Funktionen für ein Quiz beinhalten. Also eigentlich recht simple. Anforderung war einfach, dass man ein Quiz erstellen kann. Diese Quizze sollen Multiple Choice Fragen haben. Und man kann ein Quiz einem Nutzer zuteilen, der kann dann akzeptieren und das Quiz machen. Dazu auch ein kleiner Progress Check, damit man gucken kann wie weit die "Quizer" gekommen sind und wie viele punkte sie bekommen haben. Hab ich alles erledigt, wunderbar dokumentiert also wirklich eine wirklich schöne Arbeit abgeliefert, sogar mit 100% Test coverage und einem Example usage Walkthrough. Nun jetzt ist das Ding, ich hab natürlich dafür ChatGPT verwendet. Ich verwende seit knapp einem Jahr eigentlich an jedem Arbeitstag ChatGPT für kleinere Tasks oder auch zum Mails checken (ich bin Legastheniker) oder schreiben (dafür hab ich jetzt meine ganz eigene Art gefunden wie ich meine ChatGPT Mail etwas verpersonalisieren kann). Jetzt stell ich mir die Frage, soll ich denn in mein readme schreiben als Note, dass ich ChatGPT verwendet habe oder kommt das unprofessionell? Oder ist es sogar unprofessionell das nicht zu schreiben und so zu tun dass das alles selber gemacht worden ist?

WPF DataGrid ContextMenu CommandParameter Null - Woran kann es liegen?

Hallo zusammen, ich arbeite an einer WPF-Anwendung und habe ein Problem mit einem ContextMenu in einem DataGrid. Das Ziel ist es, bei einem Rechtsklick auf eine Zelle im DataGrid einen Urlaubsstatus für den jeweiligen Tag eines Mitarbeiters zu setzen und diesen in der Datenbank zu speichern. Ich habe eine ContextMenuCommandParameter-Klasse, um die relevanten Daten wie den ausgewählten Tag und den entsprechenden Mitarbeiter zu speichern und weiterzugeben. Allerdings scheint der Entry-Parameter in der MarkiereUrlaub-Methode manchmal null zu sein, was zu einem Fehler führt. Hier ist mein Code: ViewModel: public partial class BearbeiteransichtViewModel : ObservableObject { // ... [RelayCommand] private void MarkiereUrlaub(object parameter) { System.Diagnostics.Debug.WriteLine("MarkiereUrlaub aufgerufen."); var contextMenuParameter = parameter as ContextMenuCommandParameter; if (contextMenuParameter == null || contextMenuParameter.Entry == null) { System.Diagnostics.Debug.WriteLine("Ungültiger Parameter oder Eintrag ist null."); return; } var entry = contextMenuParameter.Entry; int day = contextMenuParameter.Day; // Markiere den Tag im UI MarkiereTag(new ContextMenuCommandParameter { Entry = entry, Day = day, TagID = "1" }); // Speichere den Eintrag in der Datenbank als genehmigten Urlaub (Typ 1) SaveUrlaubInDatabase(entry.MitarbeiterID, day, 1); // 1 steht für genehmigten Urlaub // Aktualisiere die Anzeige UpdateMitarbeiterUrlaubEntries(); } // ... } ContextMenuCommandParameter-Klasse: public class ContextMenuCommandParameter { private MitarbeiterUrlaubEntry entry; private int day; private string tagID; public MitarbeiterUrlaubEntry Entry { get => entry; set { System.Diagnostics.Debug.WriteLine($"Entry gesetzt: MitarbeiterID = {value?.MitarbeiterID}, Name = {value?.MitarbeiterName}"); entry = value; } } public int Day { get => day; set { System.Diagnostics.Debug.WriteLine($"Day gesetzt: {value}"); day = value; } } public string TagID { get => tagID; set { System.Diagnostics.Debug.WriteLine($"TagID gesetzt: {value}"); tagID = value; } } } so sehen alle Tage 1-31 im xaml abschnitt aus; <DataGridTemplateColumn Header="1" Width="*"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <StackPanel Background="{Binding Tag1Background}" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" MinHeight="30" > <TextBlock Text="{Binding Tag1}" HorizontalAlignment="Center" VerticalAlignment="Center" TextWrapping="Wrap" /> <StackPanel.ContextMenu> <ContextMenu> <MenuItem Header="Urlaub" Command="{Binding DataContext.MarkiereUrlaubCommand, RelativeSource={RelativeSource AncestorType=DataGrid}}" CommandParameter="{Binding RelativeSource={RelativeSource AncestorType=DataGridCell}}"/> </ContextMenu> </StackPanel.ContextMenu> </StackPanel> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> das ContextMenu habe ich im viemodel erstell und es per CommandParameter an jeden Tag gehangen. Hat jemand eine Idee wo das Problem liegen könnte/liegt

Kann Verschlüsselungssoftware veralten?

Ich nutze gelegentlich das Freewareprogramm "Sophos Free Enterprise", das man bei Chip downloaden kann, um Dateien zu verschlüsseln. https://www.chip.de/downloads/Sophos-Free-Encryption_38183910.html Das Programm ist sehr benutzerfreundlich und man kann ein Archiv erstellen, wohin man Dateien verschieben kann, um sie zu verschlüsseln. Also besser als nur zu verschlüsseln wie mit dem Programm 7Z. Auch kann man das Archiv in der Cloud ablegen. Quasi ein virtueller Container. Das Programm wurde jedoch zuletzt 2009 vom Hersteller upgedatet. Ist das problematisch? Oder weiß jemand eine gute Alternative? Es gibt Vera, aber das ist, wie ehemals Truecrypt, nicht besonders nutzerfreundlich.

Was muss ich noch hinzufuegen, um eine zweite Plattform an einer anderen Stelle zu bekommen?

let player; // 360 | 455 let jumpForce = 0; let movement = 0; let ground; let platform; function setup() { createCanvas(720, 480); player = createVector(width / 2, height - 50); platform = createVector(560, 370); ground = height - 50; } function draw() { background(&apos;DeepSkyBlue&apos;); rectMode(CENTER); fill(&apos;white&apos;); rect(player.x, player.y, 50, 50); fill(&apos;green&apos;); rect(platform.x, platform.y, 150, 20); player.y += jumpForce; player.x += movement; if (player.y >= ground) { jumpForce = 0; } else if ( player.x + 25 >= platform.x - 75 && player.x - 25 <= platform.x + 75 && player.y + 25 >= platform.y - 10 && player.y + 25 <= platform.y + 10 ) { jumpForce = 0; player.y = platform.y - 35; } else { jumpForce += 0.5; } if (keyIsDown(87) && (player.y >= ground || player.y == platform.y - 35)) { jumpForce = -12; } if (keyIsDown(65)) { movement = -5; } else if (keyIsDown(68)) { movement = +5; } else { movement = 0; } }