Category Archives: Coding

let’s start with coding

Ranking von Programmiersprachen von Februar 2012

tpci_trends[1]

Das Unternehmen Tiobe, welches das Ranking  der populärsten Programmiersprachen für Februar 2012 veröffentlicht hat, zeigt deutlich, dass

  • Java und C sind die populärsten Programmiersprachen.
  • JavaScript ist die TOP-Sprache für Client-Programmierung im Web
  • PHP ist immer noch der Vorreiter in der Webentwicklung. Python und Perl sind relativ weit von PHP entfernt
  • Wahrscheinlich durch die Popularität der Apple Produkte ist auch die Popularität der Programmiersprache Objectiv-C  so schnell gestiegen. Wie man sieht, steht diese auf Platz 5.
  • Der Anteil der OOP Sprachen liegt bei ca. 50%, der prozeduralen Sprachen bei ca 36%

Die Ratings basieren auf der Anzahl an qualifizierten Ingenieuren weltweit, Anzahl von Kurse und Drittanbietern, die die Sprache unterstützen und weiterbringen.

Der Index  sagt jedoch nicht aus, welche  die beste Programmiersprache ist, oder die Sprache in der die meisten Zeilen Code geschrieben worden sind.

Hier noch die Abbildung der Top-20

9118a2163a3c37d45a7cb3c7fb2af078[1]

Quelle: http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

PL/SQL Challenge vom 31.03.2011

Es war eine super Frage von Jeff Kemp in dem gestrigen PL/SQL Challenge. Die Frage war kurz und verständlich und zwar
was kommt raus?

DECLARE
   d1   DATE := TO_DATE ('09/2011', 'MM/YYYY');
   d2   DATE := TO_DATE ('10/2011', 'MM/YYYY');
   v1   VARCHAR2 (10);
   v2   VARCHAR2 (10);
BEGIN
   v1 := TO_CHAR (d1, 'Month');
   v2 := TO_CHAR (d2, 'Month');

   DBMS_OUTPUT.put_line (
      CASE
         WHEN v1 = 'Sep' AND v2 = 'Oct' THEN 'Short and Sweet'
         WHEN v1 = 'September' AND v2 = 'October' THEN 'Long and Sour'
         ELSE 'Not Short and Not Long'
      END);
EXCEPTION
   WHEN OTHERS
   THEN
      DBMS_OUTPUT.put_line ('Something else entirely');
END;

Auf den ersten Blick sieht der Code recht simpel aus, so dachten ich mit den Arbeitskollegen auch. Ohne das ganze auszuprobieren, wusste ich, dass TO_CHAR (d1, ‘Month’); den vollen Monatsnamen zurückgibt. So war die Variante mit ‘Short and Sweet’ ganz klar ausgeschlossen. Da wir aber eine deutsche Session benutzen, würden wir statt, October, Oktober zurückbekommen.
So habe ich mir überlegt, wenn der Autor nicht erwähnt hat, dass es explizit die englische Session sein müsste, wird ein rerank geben.
Mit Kollegen haben wir zuerst auch nur das Session Problem ausdiskutiert, und haben auf rerank gehoft.
Der Hacken war aber woanders, nämlich wird beim Format ‘month’ in der to_char Funktion, der String auf die Länge 9 gepadded im oberen Beispiel, und somit scheitert beim Vergleich von v2 = ‘October’, da v2 := ‘October ‘ und somit in dem ELSE Zweig landet.

Echt erstaunlich, was es für Kleinigkeiten in einer Sprache geben kann, die man nicht kennt, und evnt. später nicht beachtet.

RoR: Rake – Mysql2 Error

Habe mich wieder mal entschlossen mich mit Ruby on Rails auseinander zu setzen, und habe mir das Buch Ruby on Rails 3 besorgt.
Nach knapp einem Kapitel muss ich sagen, dass das Buch mir doch relativ gut gefällt. Es wird an einem praktischem Beispiel erklärt.

Beim erstellen von Datenbanken bin ich auf ein Problem gestossen, dass das

Rake db:create:all

nicht funktioniert, wenn man die database.yml laut Buchbeispiel zusammenstellt. Nach dem ich alle 3 Datenbanken expliziet konfiguriert haben

development:
  adapter: mysql2
  encoding: utf8
  reconnect: false
  pool: 5
  username: root
  password:
  host: localhost
  database: shopping_list_development

test:
  adapter: mysql2
  encoding: utf8
  reconnect: false
  pool: 5
  username: root
  password:
  host: localhost
  database: shopping_list_test

production:
  adapter: mysql2
  encoding: utf8
  reconnect: false
  pool: 5
  username: root
  password:
  host: localhost
  database: shopping_list_production

ging es ohne Probleme weiter. Die Frage warum die bessere Variante nicht funktioniert, habe ich nicht rausgefunden.

PL/SQL Challenge von 01.10.2010

Ich hatte ja schon geschrieben, dass ich an dem PL/SQL Challenge. Und heute war wieder die Beginner Frage die uns allen, bzw. den meisten Sorgen bereitet hat. Die Frage war recht einfach, doch welche Antwort soll man den wählen.

Ich hatte die beiden unteren angekreuzt, da ich da nach 5 Minuten hinschauen kein Unterschied bemerkt habe. Doch es gibt ein Unterschied. Wenn man genauer hinschaut heißt es bei dem oberen CURSOR cur AS und bei dem unteren CURSOR cur IS.
AS ist natürlich schwachsinnig, aber so schnell kann man es nicht sehen, da kriegt man schon Augenkrebs:)
Aufjedenfall eine blöde Frage zum Monatsanfang.

PL/SQL Challenge Freitag 17 September 2010

Kennt Ihr schon das tägliche PL/SQL Challenge von Steve Feuerstein. Da ich schon seid knapp einem halben Jahr als Datenbankentwickler arbeite und wir Oracle einsetzen, programmieren wir auch in PL/SQL.

Zum Üben und damit der Arbeitstag nicht immer langweilig ist, nehmen wir an dem Challenge teil. Macht wirklich Spass!
Man bekommt Punkte, je nach dem wie schnell man geantwortet hat und was für ein Level der Frage es war(Bginner, Intermediate, Advanced). Die besten können auch Preise gewinnen, wie z.B. Amazon Gutschein oder Ebook.

Ich muss aber echt sagen, dass die Beginner fragen manchmal echt schwerer vorkommen als die Advanced… Aber vielleicht kommt es ja nur so vor:)

Heute war z.B folgende Beginner Frage:

PL/SQL Challenge 17092010

Wenn man schnell Punkte machen möchte, dann kann man bei dieser Frage wirklich einiges falsch machen:) Aufmerksamkeit war gefragt… Vieles Sieht richtig aus, aber es sieht eben nur so aus. Durch Ausschlussverfahren bin ich auf die Antwort 2 gekommen, die ist auch als einzige richtige Lösung.

In der ersten ist der Datentyp falsch, in der zweiten ist die Variable nicht deklariert, beides eigentlich leicht zu übersehen. Und  in der letzten Variante ist die Funktion, NEXTVAL,  nicht vorhanden in der Sprache.
Fast hätte ich die ersten 3 Angekreuzt :)

Ruby lernen..

Ich habe mir vorgenommen, meine Kenntnisse aus dem Studium wieder aufzufrischen und etwas vertieft Ruby zu lernen. Und später vielleicht auch in die Welt der Rails Entwickler einzusteigen. Als erste müßte ich aber die Grundkenntnisse auffrischen, da ich seid dem ersten Semester kein Ruby mehr programmiert habe(leider).
Ruby ist eine wunderschöne Sprache die auch für Anfänger, als erste Programmiersprache, geeignet ist.
Für alle die es auch gerne lernen möchten, werde ich am Ende des Beitrages eine kleine Liste mit Büchern, Blogs, Tutorials posten. Diese sind meiner Meinung nach sehr gut geeignet um mit Ruby zu starten. Also…

Habe ein Webservice BrowsInfo geschrieben.

Habe heute für mich ein Webservice mit Hilfe von PHP Klasse BrowsCap geschrieben. Folgende Informationen werden aus den Browser Einstellungen ausgelesen.

  • HTTP_USER_AGENT Header
  • Browser Version
  • Betriebssystem
  • Werden Frames unterstützt?
  • Werden Tabellen unterstützt?
  • Werden cookies unterstützt?
  • Wird Java applet unterstützt?
  • Wird Javascript unterstützt?
  • Wird CSS unterstützt?
  • CSS Version

Habe es für meine privaten Zwecke gecodet, wenn es aber jemand gerne nutzen möchte, so bitte.

Meine Tools und Tipps findet Ihr hier.