Martin Lantzsch
Software Entwickler
10. Januar 2012

WD Elements öffnen

10. Januar 2012 - Geschrieben von Martin - Keine Kommentare

image

Die Western Digital Elements Festplatte weißt auf den ersten Blick keine Schrauben, steckverbindungen oder ähnliches auf.

Schaut man sich das Gehäuse genauer an, so erkennt man, das die Unterseite mit dem Rahmen nicht bündig ist. In diesen Spalt kann man sanft mit einem Küchenmesser einfahren und an den oben zu sehenden Stellen die Klipser nach innen öffnen und die Oberschale heraushebeln. Sollte es Anfangs recht schwer gehen, so muss erst ein mal rundum das Gehäuse etwas gelockert werden.

Ist das Gehäuse offen, so sieht man die Platte und den Controller mit 4 Gummifüsschen in der oberen Gehäuseschale sitzen. Die Platte kann herausgezogen und die Gummipropfen entfernt werden. Den Controller kann man nach lösen der 2 Schrauben abziehen.

7. Dezember 2011

NodeJS auf Windows installieren und nutzen

7. Dezember 2011 - Geschrieben von Martin - 4 Kommentare

Was unter Linux so leicht ist, ist unter Windows auch nicht viel schwerer, wenn man weiß wo man anpacken muss. Da NodeJS seit Version 0.6 einen Windows Build hat, muss man sich gar nicht mit kompilieren herumschlagen sondern kann es direkt per Setup installieren.
Den Download gibt es hier: NodeJS Windows installer
Das Setup verläuft wie jedes andere ganz unspektakulär. Das war es auch schon.

Die node.exe, also das Herzstück von NodeJS findet sich unter

C:\Program Files\nodejs\node.exe

Um effektiv mit NodeJS arbeiten zu können öffnen wir cmd und wechseln in dieses Verzeichnis. Für die Noobs ;-)

cmd.exe
cd C:\Program Files\nodejs\

Hier können wir nun mittels

node.exe

den Server starten. Es begrüßt uns ein Kommando Promt, in dem wir Befehle eingeben können. Wie zum Beispiel Console.Log()

console.Log('Hallo Welt');

Nun wird uns „Hallo Welt“ ausgegeben. Schön, nicht?

Aber jetzt ran an den Speck, wir legen uns nun irgendwo ein NodeJS Arbeitsverzeichnis an, in dem wir unsere JavaScript Dateien ablegen. Ich habe zum Beispiel unter „C:\Users\Martin\Documents\NodeJS\“ ein solches Verzeichnis. Darin erstellen wir uns eine Datei namens „helloWorld.js“

var http = require('http');
var server = http.createServer(function(req, res) {
	res.writeHead(200);
	res.end('Hallo Welt');
}).listen(8080);

Dieses Script lauscht auf den Port 8080 und gibt „Hallo Welt“ aus wenn eine Anfrage per HTTP kommt.
Um nun den Server mit diesem Script zu starten wechseln wir wieder zur Konsole und starten die node.exe folgendermaßen

node.exe C:\Users\Martin\Documents\NodeJS\helloWorld.js

Nun den Browser der Wahl öffnen und „localhost:8080“ in die Adresszeile eingeben und vòila

Hallo Welt

24. November 2011

Kein Kommentar

24. November 2011 - Geschrieben von Martin - 4 Kommentare

Anfänger wird immer und überall eingebleut „Kommentiert alles“, „Schreibt viele Kommentare, damit auch andere euren Code verstehen“.

Sorry, aber das ist Schwachsinn! Wenn mein Code schon so schlimm ist, das ich kommentiere muss was ich mache, sollte ich lieber zurück an ans Papier und alles noch mal überdenken. Code kann sprechen. Code kann sich selbst erklären. Wer sagt denn, das ich „kryptische“ Funktionsnamen vergeben oder lauter Abkürzungen schreiben muss? Am Ende holt es mich doch eh wieder ein, denn

  • Code lesen ist ansträngender
  • Klassenexplorer nahezu sinnlos
  • ständig am Suchen der entsprechenden Funktionen und Methoden um nachzuvollziehen was gemacht wird
  • Einarbeiten in den Code nur möglich wenn man alle Kommentare liest und versteht!

Warum also

// erzeuge neues Fenster Objekt aus dem System Objekt s
$win = $s->cwin();

da schreibt man doch gescheiter

$window = $system->createNewWindow();

Wer nun noch sagt aber der Kommentar ist auf Deutsch den versteh ich wenigstens, dem kann ich nur sagen – falscher Job ;-)

Das ganze soll aber nicht heißen, das man gar nichts mehr Kommentieren sollte. Stellen, die etwas Tricky oder vielleicht noch nicht ganz ausgereift sind, können gern mit einem kurzen und knackigen Kommentar versehen werden, der das Anliegen gut rüberbringt.

24. November 2011

Excel CSV, CSV phpMyAdmin

24. November 2011 - Geschrieben von Martin - Ein Kommentar

Aus Excel kann man ja schöne CSV Dateien exportieren, die man bequem weiterverwenden kann. Wie zum Beispiel mittels phpMyAdmin in eine MySQL Datenbank importieren.

Soweit klappt das auch ganz gut, wenn da nur die fiesen Umlaute nicht wären. Nach dem Import wird ein String entweder am Umlaut abgeschnitten oder selbiger fällt heraus. Um dies zu umgehen muss man in Excel das Sheet als UTF-8 Enkodiert exportieren. Doch importiert man es nun auch als UTF-8 kodiertes CSV mit phpMyAdmin hat man das selbe Fehlverhalten wie vorher.

Stellt man nun beim Import die Kodierung auf „latin2“ (auch bekannt als ISO 8859-2) um, sind die Umlaute da. Klingt komisch, ist aber so.

15. November 2011

Win 7 Upgrade – schwarzer Bildschirm mit Mauszeiger

15. November 2011 - Geschrieben von Martin - Keine Kommentare

Gestern habe ich einen PC hier (DELL Precisition 5400) von Windows XP Professional über Windows Vista Business auf Windows 7 Professional upgegraded. Nach ca. 7h war der Spuk vorrüber (ca. 70% der Zeit gehen auf Vistas Konto) doch die Windows 7 Installation fuhr nur noch zu einem schwarzen Bildschirm hoch, auf dem man den Mauszeiger bewegen konnte. Mehr ging nicht. Der Abgesicherte Modus sagte er könne nicht starten, weil die Erstinstallation nicht abgeschlossen wurde.

Wie man es als alter Linux User gewohnt ist, steckt man erst einmal alles an Hardware ab, die dran ist und tatsächlich, nach ausstecken des 2. Bildschirmes (via VGA) und einem reboot konnte die Installation fertiggestellt werden! Krank.

14. November 2011

Notepad++ Menü anpassen

14. November 2011 - Geschrieben von Martin - Ein Kommentar

Eben habe ich eine lang von mir gesuchte Erweiterung für Notepad++ entdeckt Customize Toolbar. Damit kann man das Menü hervorragend abspecken und lauter „nutzlose“, bzw. ungenutzte Funktionen los werden.

So sieht das schon viel besser aus.

11. November 2011

Unable to find a version of the runtime to run this application

11. November 2011 - Geschrieben von Martin - Keine Kommentare

Habe vorgestern einen Rechner mit Windows XP Professional aufgesetzt und bekam nach der Installation von Office, Browser, Virenscanner, etc. und einem reboot die Fehlermeldung

Unable to find a version of the runtime to run this application


Da leider keine Runtime genauer spezifiziert wurde habe ich mich dran gemacht diverse .NET Versionen zu installieren. Welche Runtime sollte auch sonst fehlen. Folgende Kombination hat dann schließlich gefruchtet und der Fehler war verschwunden:

  • .NET Framework 4.0
  • .NET Framework 3.5
  • .NET Framework 3.0
  • .NET Framework 2.0
  • .NET Framework 1.1

Dazu dann jeweils noch die jeweiligen Service Packs per Windows Update.

9. November 2011

Joomla eigenes Basis Template – Teil 2

9. November 2011 - Geschrieben von Martin - 2 Kommentare

Im letzten Artikel habe ich die Entwicklung eines Basis Templates für Joomla begonnen, welches als Entwicklungsgrundlage für eigene Templates ganz dienlich ist.

Die tempalteDetails.xml
Wie ich bereits angesprochen habe ist die „templateDetails.xml“ zu vergleichen mit einer „manifest.xml“. Um es kurz zu machen Zeige ich euch einfach mal die fertige „templateDetails.xml“ die ihr nach belieben anpassen könnt.

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE install PUBLIC "-//Joomla! 1.5//DTD template 1.0//EN" "http://www.joomla.org/xml/dtd/1.5/template-install.dtd">
<install version="1.5" type="template">
	<name>basis_template</name>
	<creationDate>2011-11-09</creationDate>
	<author>Dein Name</author>
	<authorEmail>deine@email.tld</authorEmail>
	<authorUrl>http://deinedomain.tld</authorUrl>
	<copyright>Dein Name 2011</copyright>
	<license>Deine Lizenz</license>
	<version>1.0.0</version>
	<description>Basis Template für eigene Entwicklungen</description>
	<files>
		<filename>index.php</filename>
		<filename>templateDetails.xml</filename>
		<folder>images</folder>
		<folder>css</folder>
	</files>
	<positions>
		<position>sidebar</position>
		<position>footer</position>
	</positions>
</install>

Ich denke die meisten Knoten sind selbstverständlich, lediglich „files“ und „positions“ würde ich noch ein mal gern explizit ansprechen. Ach genau, „name“ muss exakt den Ordner Name beinhalten, also heißt euer Template Ordner „basis_template“ so muss auch „name“ genau so heißen.

<files>
	<filename>index.php</filename>
	<filename>templateDetails.xml</filename>
	<folder>images</folder>
	<folder>css</folder>
</files>

„filename“ springt direkt eine eine Datei an. „folder“ hingegen schnappt sich den ganzen Ordner mit Inhalt. Oft sieht man wie „verzweifelte“ Entwickler alle CSS und Bild Dateien von Hand mit „filename“ aufführen, aber warum kompliziert wenn’s auch einfach geht ;-)

<positions>
	<position>sidebar</position>
	<position>footer</position>
</positions>

Joomla holt sich von hier die verfügbaren Positionen, d.h. es werden in den Klappboxen nur die hier definierten Positionen angezeigt, das Template selbst wird nicht nach ihnen abgegrast!

Die templte.css – Struktur für unser Template
Bisher würde das Template nach gar nichts aussehen:


Nicht mal eine Struktur hat es, deshalb machen wir das nun mit CSS:

body {
	margin : 0;
	padding: 0;
}
 
#wrapper {
	width: 900px;
	margin: 0 auto;
}
 
#wrapper #header {
	width: 100%;
	height: 80px;
	background-color: #e5e5e5;
}
 
#wrapper #sidebar {
	float: right;
	width: 20%;
}
 
#wrapper #content {
	float: right;
	width: 80%;
}
 
#wrapper #footer {
	clear: both;
	width: 100%;
}


Das nun in die „template.css“ kopieren, abtippen oder wie es sein sollte. Selbst schreiben ;-) Here we go:

Okay nicht so der Brüller aber für ein Basis Template ausreichend, schließlich ist das hier kein Design Tutorial ;-)

Für Joomla publizieren
Packt einfach das Template Verzeichnis „basis_template“ als .zip. Das ist alles, nun könnt ihr das Tempalte in jeder Beliebigen Joomla Installation installieren.
Damit es nicht so leer wie bei mir aussieht, müsst ihr natürlich noch Module an die entsprechenden Positionen packen. Also z.B. eine Navigation an die „Sidebar“ Position, einen Footer Text an die Position „footer“, etc.

Und jetzt?
Jetzt könnt ihr das Template nach belieben anpassen, nur wem das jetzige noch zu unflexibel ist, sprich wer die Joomla Ausgabestruktur ändern möchte, der sollte den nächsten Teil lesen, in dem ich zeige wie man eigene Views erstellt und damit die Standard Views überschreibt.