Ich habe es ja bereits erwähnt: Ich suche jemanden, der/die die Neuentwicklung der eldoDB-Software übernehmen möchten. Ein paar Interessenten haben sich bereits gemeldet. Deswegen möchte ich in diesem Thread darlegen, wie ich mir die Software und das Zusammenspiel mit mAirList vorstelle. Auf einzelne Features der neuen Software will ich hier nicht eingehen, dafür können wir einen zweiten Thread aufmachen.
Ich teile meine Vorstellungen in zwei
“Muss-Anforderungen”:
Die eldoDB-Software (oder wie immer sie dann heißt) soll weitesgehend unabhängig von mAirList entwickelt werden, anhand einer vorher definierten Schnittstelle. Hintergrund: Ich gebe das Projekt ja aus Zeitgründen ab. Wenn ich dann jede Menge Zeit zum Koordinieren aufbringen muss, hat das Auslagern wenig gebracht
Die Daten müssen in einer SQL-Datenbank abgelegt sein.
Schnittstelle zwischen mAirList und eldoDB ist die gemeinsam benutzte SQL-Datenbank.
Als Grundlage kann das vorhandene Datenbankschema verwendet werden, nötigenfalls mit Anpassungen.
Als Server muss mindestens PostgreSQL unterstützt werden.
“Sollte-Anforderungen”:
Unterstützung von anderen SQL-Servern (MySQL, …)
Schön wäre es, wenn die Anwendung auf Linux oder andere Betriebssysteme portierbar wäre, oder eine spätere Portierung von vornherein mit eingeplant wird, ohne dass man dann alles nochmal neu schreiben muss.
Open Source?
Mehr fällt mir bestimmt später ein
Vielleicht können ja die Interessenten mal dazu Stellung nehmen, wie sie sich die Umsetzung vorstellen könnten. Würde mich freuen.
Ich habe heute mal begonnen erste Entwürfe in Java zu Programmieren. Ich denke das Java hervorragend dazu geeignet ist eldoDB zu programmieren, dar eldoDB dann auf allen Betriebssystemen die JAVA unterstützen laufen würde.
Kann mir jemand nochmal genau schicken was in welcher Tabelle in der Datenbank gespeichert wird und wie. Ich will das Rad nicht neu erfinden.
Außerdem wäre es gut wenn ihr mir ein bisschen eure Vorstellungen von der Oberfläche schreibt oder einfach ein paar Screenshots von anderer Software schickt. Ansonsten orrientiere ich mich jetzt mal an de rOberfläche don d’Accord.
Ich bin leider gerade etwas im Stress. Ich könnte morgen nachmittag evtl. mal was dazu schreiben. Wenn sich wer vordrängeln will, hätte ich aber auch nichts dagegen
Nach einigem hin und her, habe ich mich jetzt dazu entschlossen das neue eldoDB erstmal in VB zu entwickeln, da es mit JAVA zwar crossplatformtauglich wäre aber der Programmieraufwand einfach zu groß ist.
Um schneller eine funktionierende Version zur Verfügung stellen zu können, werde ich zuerstmal jetzt in VB programmieren und dann, sollte es gewünscht sein vielleicht eine kleine abgespeckte Version in JAVA schreiben, die dann auch auf Linux, etc. laufen würde.
Ich habe ja angekündigt, mich aus der Neuentwicklung und der zugehörigen Dikussion weitesgehend rauszuhalten. Trotzdem hier ein paar Gedanken zum Thema Cross-Platform:
Du sprichst von einem zu hohen “Programmieraufwand”. Dieses Argument kann ich nicht ganz nachvollziehen; ist es nicht “aufwändiger”, das Programm zunächst in Visual Basic zu schreiben, um es dann später nochmal komplett in eine andere Sprache zu portieren?
Vermutlich beziehst du dich darauf, dass du mit Java bislang nichts gemacht hast und dich nur mit VB auskennst. Das kann ich durchaus nachvollziehen, bei mir ist es ähnlich (nur mit Delphi statt VB). Trotzdem würde ich mir überlegen, ob sich der Mehraufwand des Einarbeitens nicht lohnt, wenn man damit 1. eine Menge anderer Leute glücklich machen und sich 2. selbst eine Menge Arbeit ersparen kann.
Ein guter Kompromiss wäre es vielleicht, sich auf die .NET-Plattform zu konzentrieren. Als ich mich zuerst damit beschäftigte, dachte ich auch “Oh Gott, wer braucht denn das?”. Auf den zweiten Blick ist .NET aber gar keine so schlechte Idee, insbesondere aus zwei Gründen: Es gibt etliche Programmiersprachen dafür, neben C# kann man auch VB nutzen, und sogar einen Delphi-ähnlichen Compiler (“Chrome”) gibt es. Zweitens existiert das Mono-Projekt, und damit die Möglichkeit, .NET-Programme auch unter anderen Plattformen (Linux, …) laufen zu lassen (zur Zeit noch mit einigen Einschränkungen, aber man arbeitet dran). Damit hätte man dann eine gewisse Plattformunabhängigkeit erreicht.
Du kannst ja mal darüber nachdenken, ob VB.NET ein geeigneter Kompromiss wäre. Wir sollten dann auch mal Kontakt miteinander aufnehmen, um einige Dinge abzusprechen, unter anderem, was die Datenbankschnittstelle angeht.
Ich habe schon einiges in JAVA geschrieben. Nur das große Problem bei JAVA ist die Audioausgabe. Java direkt unterstüzt nur die Formate WAV oder AU jedoch nicht MP3, OGG usw. Zudem sind in JAVA viele Sachen wie z.B. bestimmte Controls einfach nicht verfügbar.
Und der letzte und vielleicht entscheidenste Punkt: Für eine GUI in JAVA braucht man unheimlichen Programmieraufwand. Und die Geduld dafür habe ich im Moment nicht.
Mit .NET habe ich mich noch nie beschäftigt. Wegen dem gleichen Gedanken wie du: Wer braucht das? Dazu kommt noch das ich mir dann erst wieder die Programmierumgebung kaufen müsste, und die allgemeine Meinung über VB.NET fällt recht negativ aus.
Gibt es denn viele Leute die Linux/UNIX Systeme haben und darauf mAirlist oder wenigstens die Administation laufen lassen wollen?
Im Notfall gibt es ja noch VirtualPC
und die allgemeine Meinung über VB.NET fällt recht negativ aus.
Eigentlich ganz im Gegenteil
Ich fange demnächst an, mich in die .NET Programmierung einzuarbeiten.
Das Argument wegen der Kosten stimmt allerdings, ich bekomme es zum Glück von der Firma…
Das kann laut Homepage sowohl C# als auch VB.NET. Und benutzt die kostenlosen Compiler aus dem .NET SDK. Ich hab das selbst noch nicht ausprobiert, aber auf den ersten Blick sieht es irgendwie “schlanker” aus als VS 2005
ich schaue morgen mal auf der arbeit, da habe ich ein paar artikel über VB.net; u.a. kostenlose bzw. günstige Alternativen zum VisiualStudio, und ein sehr gutes kostenloses “e-book” (wie das so schön heißt) über die Grundlagen von VB.net - Habe mir das mal ein bisschen durchgeschaut - ist wirklich nicht schlecht.
Wird das Projekt eigentlich OpenSource; Hätte nämlich Lust ab und an auch mit zu programmieren, schaffe es aber momentan leider zeitlich nicht.
Ich hab noch nen Wunsch: Eine Aktualisierungsfunktion für die DB. Damit gelöschte oder umbenannte Dateien nicht mehr als tote Daten in der Datenbank eingetragen sind, wäre ein abgleich, zwischen Daten auf der Platte und Daten in der Datenbank wünschenswert.
Ich hab übrigens inzwischen mal ein bisschen mit .NET, ADO.NET, C# und SharpDevelop rumgespielt. Wenn man weiß, welche Buttons man nicht drücken darf, ist das sogar halbwegs stabil und brauchbar
Vielleicht ist die Idee, ein Open-Source-Projekt daraus zu machen, gar nicht so schlecht. Wenn sich ein paar willige Leute finden, könnte das bestimmt gut klappen. Tools sind jedenfalls frei verfügbar, und der ganze .NET-Krempel bietet eine Menge Möglichkeiten, ohne dabei kompliziert zu sein.
Ich habe übrigens - wie oben erwähnt - mal ein bisschen mit .NET und PostgreSQL rumgebastelt. Nur so aus Interesse, um das mal etwas zu lernen. Mehr als das “Hauptfenster”, wo man sich Rotationen und Playlisten anzeigen (nicht bearbeiten) lassen kann, ist aber nicht dabei herausgekommen.