Posts mit dem Label Beruf werden angezeigt. Alle Posts anzeigen
Posts mit dem Label Beruf werden angezeigt. Alle Posts anzeigen

Samstag, 15. November 2014

[.NET] Microsoft geht mit .NET in Open Source Offensive

In der letzten Woche ist etwas passiert was ich nie erwartet hätte.
Microsoft will das .NET Framework komplett Open Source legen.
Dies heißt also, dass es möglich wird bei entsprechender Lizenz das Framework auf allmögliche Systeme zu portieren.

Bisher gab es nur zwei Möglichkeiten.
Entweder unter Windows direkt auf das .NET Framework setzen.
Oder unter anderen Systemen wie Linux oder MacOS auf Mono als .NET Implementierung für Linux zu setzen.
Da es bei Mono bisher nur eine Zusage von Microsoft gab, dass man Mono nicht juristisch belangen wollte, haben die meisten Linux Entwickler/Nutzer von Mono abstand gehalten.
Meine Erfahrungen mit Mono liegen zwar schon einige Jahre zurück, aber damals konnte ich ohne Probleme einfache C# Konsolen Anwendungen programmieren, kompilieren und auch ausführen.

Da .NET bei Windows Bestandteil des Systems ist, muss man bei Linux eben das Programm mono wie bei Java Anwendungen aufrufen um die Laufzeitumgebung zu starten.
Bei Windows wird dies natürlich vom System direkt erkannt.
Dies wäre noch ein tolles Mittel um die Linux Puristen zu verwirren. :)

Ansonsten freut mich der Schritt schon sehr.
Bisher habe ich Projekte, die eben Platformübergreifend sollten, in Java entwicklet.
Dies ist aber manchmal doch umständlicher als nötig.
Wer einmal mit C# entwickelt hat, wird nie wieder ohne auto Properties arbeiten wollen.
Auch einige semantischen Lösungen wie using für Disposable Implementierungen sind in Java nur mit dem seit Java 7 bekannten Try Block umsetzenbar.

Bei Java muss man immer noch die Properties einer Klasse umständlich ausschreiben.
Hier hat C# mit get/set den saubereren Weg.

Entsprechend werde ich meine zukünftigen Projekte mit Mono auch für Linux umsetzen.
Meine bestehenden Projekte, sind auch schon einige Jahre alt, werde ich aber nicht mehr rüber portieren.

Ansonsten freue ich mich riesig.
Mal schauen wie der geplante Merge zwischen Mono und .NET ablaufen wird.
Vielleicht werden einige Lösungen von Mono bei .NET eingepflegt.
Lassen wir uns mal überraschen.

[Datenbanken] Neuigkeiten und Aussichten

Da wir bei uns im Büro mal wieder Nominatim von OpenStreetMaps aufsetzen müssen, Update des Server ist wegen fehlendem Speicherplatz nicht möglich, hatte ich mich mal wieder etwas näher mit Nominatim sowie der verwendeten Datenbank PostgreSQL beschäftigt.

PostgreSQL ist für mich aktuell das bessere MySQL.
Seit der Übernahme von MySQL hat Oracle angefangen MySQLs Entwicklungsprozess intransparenter zu gestalten.
Das Problem hier ist, dass einige wichtige Tests von Oracle nicht mehr in den Entwicklungszweig von MySQL eingepflegt werden was die QS natürlich erschwert.
Aussicht von Oracle ist natürlich klar warum man das macht.
Gerade Oracle hat mit seiner eigenen kommerzielle DB einen großen Konkurrenten mit MySQL nun im Haus.
Und gerade hier versucht man natürlich auch die kostenlose Alternative nur noch teuer gegen Geld anzubieten.
Deshalb sollte man sich gut überlegen ob man noch auf MySQL setzen möchte.
Früher oder später dürfte auch MySQL verschwinden.

Einen Fork mit dem Namen "MariaDB" gibt es schon seit einige Jahren, der dieses Problem lösen möchte.
Ebenfalls bietet er Features die die freie MySQL Variante nicht besitzt.
Es wurden auch viele Optimierungen und Verbesserungen sowie neue Tabellen Engines hinzugefügt.
Dies spricht also sehr für MariaDB und gegen MySQL.
Lediglich die Popularität von MySQL dürfte noch einige Jahre dafür sorgen, dass MySQL bevorzugt wird.

Aktuell liebäugle ich ja mit PostgreSQL.
Dabei handelt es sich ähnlich wie bei MySQL und MariaDB um eine recht freie Datenbank.
Diese befindest sich aktuell noch in der Version 9.3
Version 9.4 ist bereits im Betastadium und dürfte in den nächen 1-2 Monaten auch soweit sein.

Zwar fehlen noch die ein oder anderen Möglichkeiten bei PostgreSQL aber insgesamt ist die aktuelle Version schon von Features her genauso gut wie MySQL, MariaDB oder sogar kommerzielle Datenbanken.

PostgreSQL zeichnet sich durch gute erweiterbarkeit aus.
Man kann in eigene Funktionen sowie Datentypen in PostgreSQL einpflegen.
Projekte wie Nominatim wäre mit MySQL oder anderen Datenbanken nicht so einfach und eben frei umsetzbar.
Durch die Extensions kann PostgreSQL mit PostGIS ebend auch mit Geopositionen(Latitude/Longitude) arbeiten und rechnen.

Diese Features machen PostgreSQL für mich interessant.
Aktuell habe ich mir auch einige Bücher zu PostgreSQL besorgt.
Ebenfalls habe ich mir auch mal das Buch "SQL Performance Explained" gekauft.

In den PostgreSQL Bücher geht es um alle möglichen Themenbereiche.
Von der Installation, Kompilation sowie der Konfiguration der Instanzen bis hier zur Absicherund und auch Datensicherung.

Das letzte Buch behandelt im groben die Verwendung von Indizies.
Auch geht sie, ausgehend von Oracle Datenbanken aber auch gültig für andere Datenbanken, in die internen Verarbeitungen der Datenbanken Indizies ein.
Somit kann man auch besser verstehen wie und warum einige Abfragen mit Indizies mal gut und mal schlecht laufen.
Das Buch fängt aber schon sehr technisch an.
Man sollte sich mit Binären Bäumen und auch den Baum Strukturen auskennen.
Dies macht sich schon im ersten Kapitel bezahlt.

Insgesamt haben sich die Bücher schon gut bezahlt gemacht, da ich nun auch weiß wie ich aus der Default Config, die Debian verwendet, noch mehr Performance rausholen kann.
Ich bin nur verwundert warum gerade für Datenbankserver wie PostgreSQL so geringe Datenbank Einstellungen verwendet werden.
Hier kann die DB nicht mal im Ansatz ihre Stärken ausspielen.
Auf der anderen Seite muss sich dann aber der Administrator auch mal mit dem System auseinander setzen.
Dies ist gerade in der heutigen Zeit doch zu begrüßen.

Mittwoch, 7. Juli 2010

Ausbildung beendet

Nach 2 Jahren habe ich nun erfolgreich meine Ausbildung am 16.06 mit meiner Präsentation und dem Fachgespräch bestanden.
Mit 75% und somit einer 3 habe ich erfolgreich den Abschluss geschafft.

Anbei habe ich mal das Design des Blogs etwas angepasst, was man wohl seit geraumer Zeit machen kann.
Ich hoffe das neue Design gefällt.