• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

cachebox ist nun quelloffen

Ging-Buh

Geowizard
Hi an alle Entwickler der CacheBox!

Bin auf der Suche nach dem perfekten Geocaching-Programm vor einiger Zeit auf die CacheBox gestoßen. Die ersten Tests und die Tatsache, dass CB quelloffen ist hat mich neugierig gemacht.
Da ich beruflich seit über 15 Jahren Softwareentwickler bin (seit einigen Jahren auch C#) hat es nicht lange gedauert, bis ich versucht habe CB selbst zu compilieren. Zu meiner Überraschung hat dies auch gleich geklappt. Ich habe mich dann interessehalber etwas durch den Quelltext geklickt und muss feststellen, das die CB echt genial programmiert ist (mein Respekt an Hannes! :applaus: ).
Da mich programmieren, PDA's und GeoCaching sehr interessiert, würde ich mich gerne and der Entwicklung beteiligen.
Ich habe auch schon eine Änderung gemacht, die möglicherweise manch anderen auch interessieren könnte:
Bei der Trackaufzeichnung wurde der aktuelle Track in der Map-Ansicht immer nur dann aktualisiert, wenn sich der Zoom-Level änderte.
In meiner Version wird der aktuelle Track jetzt immer sofort aktualisiert.

Ich habe bisher allerdings noch keinerlei Erfahrung mit Versionsverwaltungen (SVN) oder open source Projekten. Ist dies hier so gedacht, dass jeder einfach seine Änderungen zu sourceforge.net hochladen kann ohne das vorher mit den Entwicklern (Hannes!...) abzusprechen?

Viele Grüße
Hubert
 

Toette

Geomaster
Hey!

Das ist MEIN Bug ;)....bzw. ich hab ihn eingetragen ;)
Klasse, dass der nun auch Geschichte ist.

Wende ich hier im Forum doch einfach mal an Tower27, der ist sowohl hier als auch auf SF sehr aktiv und wird Dir sicher weiter helfen.

CU
Toette
 

tower27

Geowizard
Toette schrieb:
Hey!

Das ist MEIN Bug ;)....bzw. ich hab ihn eingetragen ;)
Klasse, dass der nun auch Geschichte ist.

Wende ich hier im Forum doch einfach mal an Tower27, der ist sowohl hier als auch auf SF sehr aktiv und wird Dir sicher weiter helfen.

CU
Toette
ne, das ist in Wirklichkeit MEIN bug, denn ich hab den Blödsinn programmiert und es nicht besser hinbekommen :p
Und "Ging-Buh" hat auch schon ne PN von mir :D
 

Der Gieger

Geocacher
Hallo Hannes!

Dein Programm finde ich von Aufbau sehr gut, nur bekomme ich es wegen des uralten besagten Datenbankservers nicht mehr dazu, Caches in der DB abzulegen.
Die Fehlermeldung sieht dann so aus:

System.Exception: Failed to parse GPX.
bei
Cachebox.Geocaching.GpxImport.ImportGpx()
bei
Cachebox.FormImportPocketQuery.threadEntryPoint()

Die älteste bei MS erhältliche DB hat Version 3.1. Jedoch benutzt Dein Programm DLL's im Programmverz. selbst. Nach wiederentfernen der DB's aus WIN mobile selbst lief das Programm an sich ja weiter. Es gibt aber im Programmverzeichnis selbst eine update.exe. Die habe ich einfach mal ausgeführt. Nun meldet Dein Programm, dass es mit den aktualisierten Dateien nichts anzufangen weiß.
Deshalb fände ich es gut, das Programm neu auf SQL -Server 3.5 SP2 zu kompilieren oder zumindest die Installationsdateinen für den SQL-Server 3.0 mit anzubieten. (Oder brauchts das am Ende wegen der Dateien im Programmverzeichnis gar nicht? Der Begrüßungsbildschirm meldete ja ein Laden der DB!)

Die Idee mit Java finde ich sehr gut, da JAVA auf den meisten Plattformen läuft, ob man das Original von ORACLE/SUN oder EWE nimmt, soll erst einmal dahingestellt sein.

Warum aber unbedingt eine richtige DB? Eine Verzeichnisstruktur mit HTM(L) und Textdateien wäre weniger fehleranfällig.

Bisher hatte ich GCzII, nur das dauernde Problem mit dem "Cache nicht gefunden" bei Änderungen auf der GC-Seite nervt dort langsam.

Grüße von dem Gieger
 

GeoSilverio

Geowizard
Der Gieger schrieb:
...
Warum aber unbedingt eine richtige DB? Eine Verzeichnisstruktur mit HTM(L) und Textdateien wäre weniger fehleranfällig.
...
Hmmm, ob das nun weniger fehleranfällig wäre weiß ich nicht.
Aber eine der Stärken von cachebox ist ja die Möglichkeit viele Caches verwalten zu können.
Da stoßen dann textbasierte "Pseudo"-Datenbanken doch schnell an ihre Grenzen.
 

Der Gieger

Geocacher
Silverio schrieb:
Der Gieger schrieb:
...
Warum aber unbedingt eine richtige DB? Eine Verzeichnisstruktur mit HTM(L) und Textdateien wäre weniger fehleranfällig.
...
Hmmm, ob das nun weniger fehleranfällig wäre weiß ich nicht.
Aber eine der Stärken von cachebox ist ja die Möglichkeit viele Caches verwalten zu können.
Da stoßen dann textbasierte "Pseudo"-Datenbanken doch schnell an ihre Grenzen.

Stimmt schon, aber wichtiger ist auf so einem kleinen PDA doch zum Einen die Übersichtlichkeit des Programms selbst (in so einer großen DB sucht es sich nicht so gut - eher noch am PC), zum Anderen die Portierbarkeit (versuche mal diese DB auf Android!), eben auch die einfachere Installationsprozedur und nicht zuletzt der begrenzte Platz auf dem PDA. Ein Zusammenspiel mit einer großen DB-Anwendung auf PC oder Mac wäre da sinnvoller. Man nimmt einfach nur die Caches mit, die man eben braucht.

Sinnvoller wäre da eher noch, ein Cache oder einen Wegpunkt "per Handbetrieb" eintragen zu können, weil man eben z.B. im Hotel oder Internetcafe nicht am eigenen Rechner sitzt.

Grüße vom Gieger
 

GeoSilverio

Geowizard
Stimmt, Wegpunkt von Hand ist ja schon im SVN als Anforderung.
Bei der Anzahl der Cache bin ich mit der derzeitigen Lösung dennoch zufrieden.
Ich wohne in Hamburg und trage auf meinem PDA somit immer die Caches von Hamburg und näherer Umgebung mit mir. Das finde ich praktisch.
Mit der DB hatte ich bislang keine Probleme, außer bei der Cachebox-Version, bei der damals versucht wurde auf die neuere SQL-DB-Version umzusteigen. ;)

Was den Speicherverbrauch angeht, sollte eine Datenbank mit großen Datenmengen wesentlich weniger Speicher brauchen, als ein großes Textfile, das ja komplett in den Hauptspeicher geladen werden muss, damit man einen Datensatz daraus lesen kann.
Wenn man nur wenige Caches im System hat, ist das Textfile natürlich im Vorteil, weil es keinen DB-Overhead gibt.

Es gibt ja ein sehr ähnliches Programm für Android, also auf Java-Basis, da ist die Limitierung tatsächlich die "Datenbank", also das File mit den Caches, das eben komplett hoch gezogen werden muss.

Wie auch immer, derzeit läufts mit einer MS-SQL-Compact-DB und das läuft meiner Meinung nach sehr gut. Probleme gibts ja eher mal bei den Funktionen um die DB herum. :D
 

Toette

Geomaster
Der Gieger schrieb:
Stimmt schon, aber wichtiger ist auf so einem kleinen PDA doch zum Einen die Übersichtlichkeit des Programms selbst (in so einer großen DB sucht es sich nicht so gut - eher noch am PC),

Hmm?
Die Datenbank, so wie sie ist, lässt doch nun wirklich keine Wünsche offen, Filtermöglichkeit nach x-Kriterien, Suchfunktion, "nearest Cache".
Was fehlt Dir denn?
Ich habe (nur als Faulheit) ca. 2200 Caches in der Datenbank, egal wo ich bin, Cachebox sortiert mir die beim ersten Satfix nach Entfernung und fertig.
Ob da nun noch 400 Caches in der DB sind, die 500km entfernt sind, interessiert weder mich noch Cachebox, es läuft einfach.
Und die Bedienbarkeit ist genial, fingerfreundlich, schnell, selbst auf alten Geräten.

zum Anderen die Portierbarkeit (versuche mal diese DB auf Android!)
,

Warum muss es portierbar sein?
Cachebox hat eine GPX-Exportfunktion, damit kann man andere Programme nutzen.
Wer Android will, findet dort auch andere passende Programme....gibts es den GeOrg für Windows Mobile?

eben auch die einfachere Installationsprozedur und nicht zuletzt der begrenzte Platz auf dem PDA. Ein Zusammenspiel mit einer großen DB-Anwendung auf PC oder Mac wäre da sinnvoller. Man nimmt einfach nur die Caches mit, die man eben braucht.

*Maulwurfn-Modus*: Nähnähnäääh
Das gibts schon und nennt sich Cachewolf ;)
Wozu dieser Datenbank Overkill?
Ich fahre ins Gebiet X...also erstelle ich mir rasch eine PQ, tu die in die Cachebox und los gehts.

Sinnvoller wäre da eher noch, ein Cache oder einen Wegpunkt "per Handbetrieb" eintragen zu können, weil man eben z.B. im Hotel oder Internetcafe nicht am eigenen Rechner sitzt.

Japp, die fehlt definitv.
Ich behelfe mir derzeit damit, dass ich einfach die Additional Waypoints eines anderen Caches mißbrauche.

Viele Grüße
der Toette
 
OP
hannes!

hannes!

Geocacher
moin gieger,

just my 2 cents:
- der fehler liegt wahrscheinlich eher an der gpx-datei bzw. meinem parser dafür. nicht an der datenbank.
- der sql server von ms ist sehr performant. jedenfalls deutlich schneller als etwa sqlite, das hab ich schon mal ausprobiert.
- das killerfeature, das mit sqlce 3.5 eingeführt wurde, ist replikation für geräte mit beschränkter konnektivität. brauch ich nur leider nicht. und die 3.0er ist deutlich kleiner. fehler sind mir da jetzt auch noch nicht aufgefallen. man könnte wechseln, aber die anwendung wäre die selbe.
- solche funktionen wie den filter will ich mal mit einzelnen dateien annährend so schnell implementiert sehen
- java ist ja von der idee ganz nett, aber der wirklich plattformunabhängige teil ist auch nicht wirklich sexy. läuft swing eigentlich auf android? ich weiss es nicht, aber ich würde dagegen wetten. wenn man schlanke, reaktive anwendungen auf handys programmieren will, gibt es derzeit leider keine plattformunabhängige lösung dazu. java gibts zwar auch auf android, aber man entwickelt ja schon gegen die android api. activities und intents gibts halt nur da. deshalb können android-anwendungen auch nirgenwo anders gestartet werden.

sollte ich einen bedeutenden trend in der softwareentwicklung für mobiltelefone verpasst haben, klär mich bitte auf :)

5. zum "handbetrieb": stimmt, seh ich auch so :) der fehlt.

schöne grüße,
hannes!
 

DunkleAura

Geowizard
wenn der ms-sql-server probleme macht, migriert doch auf sqlite…

sqlite finde ich chic weil:
- es ist public domain
- es reicht eine dll
- hat eine gute performance
- speichert den gesamten datenbestand in einer datei… was interessant wäre für eine desktop anwendung. einfach das db file rüber kopieren und gut ist.
 

GeoSilverio

Geowizard
Hmmm, wie hannes! kurz vorher beschrieb, hat er ja sqlite schon probiert, war performancemäßig aber wohl im Nachteil.
Die Datenbank für den Desktopbetrieb und den PDA gleichermaßen verwenden zu können, ist allerdings toll.
Vielleicht lässt sich der MS-SQL-Compact auch am Desktop verwenden? Also ich meine: Nicht nur verwenden, sondern auch auf Fileebene austauschen?
 

MarcLandis

Geocacher
Silverio schrieb:
Hmmm, wie hannes! kurz vorher beschrieb, hat er ja sqlite schon probiert, war performancemäßig aber wohl im Nachteil.
Die Datenbank für den Desktopbetrieb und den PDA gleichermaßen verwenden zu können, ist allerdings toll.
Vielleicht lässt sich der MS-SQL-Compact auch am Desktop verwenden? Also ich meine: Nicht nur verwenden, sondern auch auf Fileebene austauschen?

Die Datenbank ist auch auf dem Desktop nutzbar - es fehlt halt nur ein Programm, welches sie nutzt. [:D]
 
OP
hannes!

hannes!

Geocacher
moin,

sqlce und sqlite sind was selects angeht ungefähr gleich schnell. allerdings ist bei einem select auf 4000 datensätzen wahrscheinlich jede datenbank schnell genug.
bei inserts hingegen schnitt sqlite um faktor 3 schlechter ab. die datenbank ist zwar schön klein (etwa halb so gross), aber der import ist ohnehin schon grenzwertig schnell. public domain ist zwar schönes ding, und auch das deployment wäre schmerzfreier gewesen. aber die performance war mir in dem fall wichtiger.

schöne grüße,
hannes!
 

GeoSilverio

Geowizard
Ja, so denke ich auch.
Ich bin zwar kein Microsoft-Fanboy, allerdings kann ich auch gerne mal sagen:
Läuft gut, passt...
Ansonsten: Ich könnte da noch Oracle ins Spiel bringen. Meine absolute Lieblings-Datenbank :)
Nur müssen wir da leider auf PDA mit 4 Prozessoren à 2GHz und 16GB Hauptspeicher warten, fürchte ich :D
 

rstweb

Geocacher
Lol. Oder wir machen zentralen Speicherort bspw. in einer Cloud und Cachebox holt sich die Daten immer live via Internet, aber dann brauche ich kein Cachebox mehr ;-)

Aber vllt ist die Oracle-DB ja eine Option für Cachebox@Home :lachtot:
 

GeoSilverio

Geowizard
Na war ja nur Spaß.
Aber eine geile DB ist Oracle definitiv. Sehr flott und gutmütig.
Nur die Firmenleiter haben ja meiner Meinung nach alle irgendwie einen Hau, oder? Egal ob sie nun Steven Jobbs, Larry Ellison oder Steven Balmer heißen.
Für cachebox@home soll mal alles schön so bleiben wie es ist, denke ich. Wenn man damit dann die erstellten DB-Files einfach auf den PDA kopieren kann, ist das doch genial.
 
Oben