QuTe
Nun läuft das kompilieren von QT endlich, der Fehler war aber doch schwerer zu finden als gedacht, aber nach einiger Zeit hatte ich ihn dann doch raus.
Problem war folgendes, ich habe parallel mit MinGW und VisualStudio als Kompiler gearbeitet, somit hatten beide ihren Eintrag im Classpath, dadurch lief zwar configure mit dem Visual Studio, aber nmake wurde dann aus dem Path von MinGW genommen, ich hab keine Ahnung wieso und weshalb, und wieso es mit MinGW nicht möglich war es zu kompilieren, aber jetzt ackert er grad im Hintergrund gemütlich vor sich hin.. Naja gut, gemütlich isses nicht, meine 3 Kerne haben jeweils 100% Auslastung.
Den Fehler hab ich übrigens auf Recht kuriose Art und Weise entdeckt, beim googlen hab ich ein CuteBuilder gefunden, ein Tool welches das Kompilieren von QT völlig automatisch übernehmen soll, welches aber aus oben genannten Gründen auch den Dienst verweigerte, zwar gab es die Möglichkeit zur Auswahl von Visual Studio 2008, aber in den genutzen Apps habe ich dann auf einmal nmake von MinGW entdeckt, MinGW entfernt und voila, schon rattert die Kiste durch
qT(error)
Erstmal muss ich mich wohl selbst für das absolute geniale Wortspiel in der Überschrift loben, diese Eingebung war einfach nur genial
.
Prinzipiell bin ich derzeit versucht mich in C++ mit den ersten Gehversuchen für eine GUI zu versuchen, leider wird dies auf bestmöglichem Wege durch QT verhindert. Bevor fiese Sprüche kommen, von wegen nutz doch was vernünftiges, ich hab mich "erkundigt" und mir wurde mehrfach QT empfohlen. Vielleicht auch deswegen, weil die jenigen die Empfehlung ausgesprochen haben, in ihrem Gedanken gedacht haben, der hängts nach den ersten Misserfolgen eh wieder an den Nagel
. Gestützt wurde die Entscheidung aber auch dadurch, das qt eine Java API anbietet.
Nun hab ich schon gefühlte 1000 Configure Vorgänge hinter mir, und wohl nochmal soviele Versuche ein erfolgreiches make auszuführen. Bisher bin ich kläglichst gescheitert, erste Hinweise in Foren deuten zwar darauf hin, dass es da ein Grundlegendes Problem mit Windows 7 64bit zu geben scheint, aber wirklich bestätigt oder auch wiederlegt wurde es noch nicht. Da der schwarze Peter bisher auch nicht wirklich eindeutig zugeordnet werden konnte, ob es jetzt an qt liegt oder doch an MinGW.
Aber ich bin ganz optimistisch, dass ich heute entscheidende Fortschritte machen werde.
Ich traue keiner Statistik..
.. die ich nicht selbst gefälscht habe. Daher bin ich seit einigen Tagen mehr oder weniger intensiv damit beschäftigt mich in den Methoden und Verfahren der Statistik einzulesen. Statistik ist in meinem Studium leider nicht integriert, auch in meiner bisherigen Schullaufbahn hab ich es nur ganz am Rande, eigentlich sogut wie gar nicht mitbekommen.
Laut der Aussagen einiger Freunde ist es eines der leichteren Teilgebiete der Mathematik, bisher kann ich da noch nicht wirklich zustimmen. Zwar sind für mich durchaus Fortschritte erkennbar, aber von leicht würd ich da bisher nicht im Ansatz reden. Leider hab ich auch noch nicht wirklich gute Literatur für absolute Einsteiger gefunden, auch die Vorlesungsskripte die bei uns im Pool online stehen sind leider ohne die zugehörige Vorlesung für mich großteils relativ wertlos. Leider hab ich in diesem Semester nicht die Zeit für eine zusätzliche Vorlesung.
Zwar hab ich in diesem Semester nur verhältnismäßig wenige Vorlesungen, diese sind aber dafür im Bereich der Eigenarbeit umso umfangreicher, so dass ich derzeit zeitlich stellenweise durchaus ein bisschen ins rudern komme, noch gehts zwar, aber mehr dürfte es definitv nicht mehr sein.
Wenn jemand gute Literaturempfehlungen hat, ich bin immer dankbar darum.
Java vs. C++
Derzeit bin ich Intensiv am pauken von Java EE und C++, aber das Thema mit Java EE ist eine andere Geschichte gehört hier nicht hin..
Will hier nur mal meine Eindrücke wiedergeben, die sich mir als Java "Umsteiger" so ergeben haben. Besonders hierbei sticht natürlich ins Auge, die wie ich finde, deutlich besseren IDEs auf der Seite von Java, Fehler werden in Eclipse "on-the-fly" markiert, lästige Klammerungsfehler können somit quasi beim entstehen vermieden werden, in C++ muss man eben den Kompiler erst drüberlaufen lassen, in Eclipse (ist ja eigentlich nur eine Sache der IDE) wirds eben im Hintergrund gemacht.. Gut dafür kann weder Java noch CPP was, wobei ich natürlich nicht weiß, ob es entsprechende IDEs auch für C++ gibt, hab aber ehrlich gesagt auch noch nicht wirklich danach gesucht.
Der Punkt für die Übersichtlichkeit geht hingegen für mich an C++, hier die strikte Trennung zwischen Header und Implementierung find ich top, die gibts in Java in dieser direkten Form leider nicht, aber wieso sollte man
.
Referenzen: Prinzipiell bei C++ wohl etwas besser gelöst, da hier ja die Unterscheidung zwischen Pointer, Referenz und Kopie klar definiert ist, bei Java ist hier die Unterscheidung mitunter (Stichwort "call-by-reference" und "call-by-value") etwas verzwickter, aber prinzipiell auch sehr gut gelöst. Wenn man in C++ die Sache mit den Pointern einmal raus hat, ist der Unterschied zu Java minimalst, der fehlende Garbage Collector in C++ hingegen ist stellenweise find ich sehr störend, da dieser in Java einfach unheimlich viel Arbeit abnimmt und man sich über Speicher bzw. dessen Nutzung deutlich weniger Gedanken machen muss.
Die Punkt für die Dokumentation geht aber eindeutig an Java, Javadoc ist einfach "geil", dies kann in meinen Augen fast nicht besser gelöst werden. Auch wenn hier die entsprechende IDE natürlich wieder ungemein dazu beiträgt, da Eclipse die Dokumentation direkt per Mouseover anbietet.
In der Geschwindigkeit unterscheiden sich die beiden Sprachen (für mich) nicht merklich, auch wenn von Java oft behauptet wird, es sei sehr langsam. Dies kann ich bei Java nach meinen Erfahrungen nur soweit bestätigen, das die GUIs sich oft etwas träge anfühlen, aber dabei hatte ich immer öfter den Eindruck, das hängt nicht nur von Java sondern auch vom verwendeten Betriebssystem ab.
Große Unterschiede hingegeben gibt es bei der Vererbung, C++ erlaubt die Mehrfachverbung, Java hingegen nicht. Spielt aber für mich bisher keine Rolle, da ich die Mehrfachvererbung noch nie aktiv (ausser für Beispiele) genutzt habe, da man hierbei auf eine Reihe komplizierter Probleme stoßen kann. Es mag durchaus Anwendungsfälle geben, bei denen die Mehrfachvererbung einen entscheidenden Vorteil bringt, mir ist aber bisher unter realen Bedingungen keiner über den Weg gelaufen, daher ist der Vorteil für mich nur auf dem Papier existent.
Templates/Generics gibt es auch in beiden Sprachen, auch wenn deren Implementierung jeweils ein bisschen anders aussieht, beide erfüllen ihren Zweck.
Prinzpiell kann ich zusammenfassend nur sagen, beide Sprachen sind sehr gut, die Unterschiede sind teilweise sehr gering, teilweise aber auch sehr groß. Beide Sprachen sind (selbstverständlich) Turing komplett *klugscheiß*, womit sich mit ihnen die exakt selben Aufgaben lösen lassen. Mit was für einer Sprache ich in Zukunft meine Aufgaben angehen werde ist mir nach wie vor unklar, aber momentan bin ich eher daran interessiert beide gut in den Griff zu bekommen, somit wechsel ich die verwendete Sprache derzeit sehr oft ab.
Die Ereignisse der letzten Tage…
Sodale, vieles, den Blog betreffend ist in den letzten 2 Tagen passiert. Hier mal eine kurze Zusammenfassung der Ereignisse. Am Dienstag hab ich meinen internern Patchday für WordPress gemacht, Plugins up2date gebracht, WordPress auf Vordermann gebracht, die Datenbank geputzt etc.
Mittwoch war ich dann auf dem Geburtstag eines Verwandeten von mir, komme dann heim und Stelle fest dass der Server offline ist, aus mir unbekannten Gründen. Habe dann selbstverständlich kurz die Mails gecheckt und siehe da, eine Mail vom Provider meines Servers ("von ihrem Server wurde ein Angriff verübt"), sprich die Kiste wurde geknackt. Bisher war es mir nicht möglich das Einfallstor für den Angriff zu bestimmen, was vielleicht auch an der mangelhaften Kooperation meines Anbieters bestehen mag, dazu später mehr. Da ein direkter zeitlicher Zusammenhang zwischen dem Update und dem Angriff bzw. der Infiltration meines Servers wohl nicht von der Hand zu weisen ist, gehe ich stark davon aus, dass eines der verwendeten Plugins und/oder Updates für WordPress wohl einen weniger netten Begleiter dabei hatten, wobei das natürlich nicht feststellt und für mich auch nur schwerlich nachvollziehbar ist.
Nun gut, mein Anbieter hat dann die Kiste offline genommen, aber dann nahm das Drama auch schon seinen Lauf. Es wurde von mir eine Stellungnahme gefordert, in welcher ich mich dazu verpflichten sollte, zu zu sichern, das eine erneute Infiltration zu 100% ausgeschlossen ist. Dies kann natürlich von mir nicht zugesichert werden, da ich weder Einfluss noch Einblicknahme auf Sicherheitslücken habe die ausserhalb meines Zugriffsbereichs liegen (da es sich hier um einen vServer handelt -> Kernel), aber auch für andere Server Applikationen und Dienste kann ich natürlich keinen Einfluss auf die im Code verursachten Sicherheitslücken nehmen. Daher habe ich aus offenliegenden Gründen verweigert eine dermaßen weitreichende Erklärung abzugehen. Als Antwort kam dann nur "dann kann der Server mit dem vorhandenen System nicht wieder gestartet werden", gut, dass ich das jemals gefordert gewünscht habe, nicht das es so wäre, dass ich bereits in der ersten Email eine Neuinstallation gewünscht habe... Aber gut, lesen muss man ja anscheinend nicht können... Auf meine Antwort darauf, kam leider keine Antwort mehr.
Ich gehe aber stark davon aus, dass mir spaßige Wochen ins Haus stehen, da ich die Erklärung in diesem Umfang nicht abgeben werde/kann/will und mein Vorschlag mich dann sofort aus dem Vertrag zu entlassen auch abgelehnt wurde, bzw. stillschweigend ignoriert wurde. Die Kündigung des Vertrages ist für mich nach diesem Erlebnis mit dem Support natürlich obligatorisch, bin derzeit auf der Suche nach einem neuen Anbieter, wer einen guten empfehlen kann, ich bin für Tipps dankbar. Die wahrscheinliche Wahl wird aber (wieder) dogado sein, zwar ist der Preis für wengier Leistung etwas höher, dafür habe ich aber einen überaus kundenfreundlichen und freundlichen! Support, welcher diese Bezeichnung auch verdient hat.
Mal abwarten was die nächsten Tage bringen werden, vorrübergehend habe ich mir nun Webspace "ausgeliehen". Leider ist auf dem Server nicht nur meine Homepage gelaufen, sondern auch diverse SVN Repositories für meine Projekte und Uniarbeiten, was die ganze Sache etwas verkompliziert, da ich Zugriff auf diese fürs Arbeiten benötige. Es existiert zwar ein tägliches Backup, was aber die Erreichbarkeit der Repos nicht besser macht, werde mich da aber wohl die Tage nach einem Anbieter umsehen. Habe auch schon google Code in Betracht gezogen, aber meinem Verständnis nach, stellt man damit seinen Code automatisch unter eine public License (kann auch sein, dass ich beim schnellen lesen etwas falsch interpretiert habe) stellt, werde dies aber die Tage noch mal genauer in Augenschein nehmen. Zwischenzeitlich läuft eben alles über die mehr oder weniger schnelle DSL Leitung.