Brackets - Eine neue Generation von Codeeditor

Brackets ist ein neuer Texteditor für Coder. Er wird als OpenSource Projekt von Adobe entwickelt. Eine Besonderheit von Brackets ist es das er in HTML und Javascript programmiert ist. Dadurch ist es für Webentwickler einfacher den Editor an eigene Anforderungen anzupassen oder neue Plugins zu entwickeln. Optisch ähnelt Brackets dem ebenfalls immer beliebter werdenden Sublime Text kann es aber noch nicht mit dessen Features aufnehmen (Sublime Text kein OpenSource und auch keine Freeware, auch wenn eine unbegrenzter Testzeitraum eingeräumt wird). Alle rudimentären Features sind bereits vorhanden. Brackets kann durch Plugins erweitert werden, von denen bereits eine beachtliche Anzahl existiert. Auch Emmet (vomals Zen Coding) wird bereits als Plugin unterstützt. Ein bisher einmaliges Feature ist eine quick edit Funktion für CSS. Befindet man sich in einem HTML dokument können die CSS eigenschafteen einer Node direkt im Dokument geändert werden. Dazu Blendet Brackets einfach die entsprechenden Definitionen aus der CSS-Datei als eine Art Snippet ein, wodurch nicht mehr so oft zwischen Dateien gewechselt werden muss.

Brackers befindet sich momentan noch in der Entwicklung kann aber bereits unter brackets.io heruntergeladen werden.

ShoeBox - Multifunktionswerkzeug für 2D-Spiele

ShoeBox ist ein auf AdobeAir basierendes Tool mit dem viele unterschiedliche Arbeiten aus dem Kontext der Spieleentwicklung erledigt werden können.

In der folgenden Aufzählung werden die wichtigsten Features vorgestellt:

  • Extract Tiles
    Aus einem Screenshot eines beliebigen Tiles-Basierten Spiels wird ein Tileset rekonstruiert. Damit ist es möglich auf einfache und schnelle Art Background-Tileset aus jedem beliebigen Retrospiel zu extrahieren.
  • Pack Sprites und Extract Sprites
    Einfaches erstellen eines Texturatlas und zerlegen eines Atlanten in seine Einzelbilder.
  • Slice 9
    Mit dieser Funktion wird z.B ein Button-Bild so zerschnitten das sich damit beliebig große Buttons erstellen lassen. Dabei erfolgt das erkennen der Schnittstellen halbautomatisch. Jedes Bild wird im Normalfall in neun Teile zerlegt: Ränder, Ecken und zwei Mittelteile.
  • Bitmapfont
    Erstellen von Bitmapfonts aus PNG-Dateien. Es können Schriften mit beliebigen Grafikprogrammen erstellt werden.  

ShoeBox kann unter renderhjs.net/shoebox kostenlos heruntergeladen werden.

Apache Proxy für Node.js einrichten

Will man auf einem Rootserver parallel einen Apache und einen Node.js Server betreiben hat man das Problem das beide nicht einfach auf dem selben Port laufen können. Zwar ist es theoretisch möglich Node.js oder Apache auf unterschiedlichen Ports laufen zu lassen. Allerdings ist das bei Webserver unüblich und kann zu Problemen führen wenn bei einigen Benutzern nur der Port 80 in der Firewall geöffnet ist.  Auch ist es damit nicht möglich nur eine bestimmte Subdomain unter Node.js zu betreiben.

In der folgenden Anleitung wird beschrieben wie man eine Subdomain unter Apache an einen Node.js Server weiterleitet, alles wurde unter Ubuntu erfolgreich getestet. Die hier vorgestellte Lösung ist performance-technisch nicht optimal aber einfach umzusetzen.

Hier der verwendete minimale Node.js Server:

var http = require("http");
var s = http.createServer(function(req,res){
  res.writeHead(200, {'content-type': 'text/plain'});
  res.end("Node working on 8080"); 
});
s.listen(8080); 
console.log("Server running...") 

Für den Apache müssen über zwei zusätzliche Module installiert werden: sudo apt-get install libapache2-mod-proxy-html Danach müssen die beiden Module über  sudo a2enmod proxy_http
sudo a2enmod proxy
aktiviert werden. Die Virtualhost-Datei muss wie folgt aufgebaut sein:

<VirtualHost *:80>
   ServerName tour.ragersweb.de
   ServerAdmin webmaster@ragersweb.de 

   ProxyRequests On
   <Proxy *>
    Order deny,allow
    Allow from localhost
   </Proxy>
   ProxyPass / http://localhost:8080
   ProxyPassReverse / http://localhost:8080 
</VirtualHost>

In diesem Beispiel werden alle Anfragen an die Subdomain bps.ragersweb.de an den unter Port 8080 laufenden Node.js Server weiterleitet.

node-webkit - Desktop Applicationen mit Node.js

node-webkit ist eine auf Chronium und Node.js basierende Laufzeitumgebung für Desktopanwendungen. Dafür wurde die in Chronium normal einsetzte V8-Engine durch die von Node.js ersetzt bzw. erweitert. Dies war möglich da Node.js ebenfalls auf die V8-Engine aufsetzt. Durch die Integration von Node.js in die Webkit-Rendering-Engine von Chronium kann die gesamte Node.js API verwendet werden. Es sind also Zugriffe auf Netzwerk, das lokale Filesystem möglich. Auch können beliebige Node.js Extensions verwendet werden. Da für Node.js momentan noch kein ausgereiftes GUI-Buinding zur Verfügung steht ist node-webkit eine gute Möglichkeit Desktop-Applikationen in JavaScript zu erstellen. Durch die Verwendung von WebGL ist es sogar möglich 3D-Anwendungen auf den Desktop zu bringen. Die Laufzeitumgebung ist existiert für Windows, Linux und MacOs.

Tiled - Map-Editor

Tiled ist ein Open-Source-Map-Editor für 2D-Spiele. Er ist einfach zu benutzen und kann dennoch mit vielen Game-Engines verwendet werden. Mit Tiled können Maps/Level für beliebige Spiele wie z.B. Jump & Run oder RPGs erstellt werden. Das Programm exportiert die fertigen Maps im XML-Format dadurch ist es einfach Importscripte zu schreiben, alternativ können auch Export-Filter für Tiled erstellt werden. Das Programm basiert in der aktuellen Version auf den Qt-Framework und ist für Windows und Linux verfügbar.

Websites mit Node.js

Das Entwickeln von Webanwendungen mit Node.js unterscheidet sich Grundlegend von der Herangehensweise in PHP. Wo PHP eine sehr umfangreiche Standartbibliothek bietet ist die von Node.js auf das wichtigste reduziert.

Um Node.js zu erweitern stehen zahlreiche Module zur Verfügung. Module können über die Paketverwaltung NPM installiert werden. Inzwischen ist NPM standardmäßig in der Node.js Installation enthalten.

Nachfolgend einige wichtige Module die für Standardwebanwendungen hilfreich sind:

  • Express
    Webframework welches die Arbeit mit Node.js extrem erleichtert
  • Swig
    Templateengine für express, benötigt Consolidate um zu funktionieren
  • Xml2js
    Einfacher Wrapper wandelt XML in JSON um und ermöglicht so direkten Zugriff. Funktioniert unter Linux und Windows
  • Eyes
    Bringt Farbe in die Console
  • MongoJs
    Datenbanktreiber für MongoDb
  • Prompt
    Nimmt Eingaben von der Commandline entgegen
  • Cheerio
    jQuery Implementierung für Node.js ermöglicht den Zugriff auf das DOM über die bekannten jQuery Selektoren
  • Request
    einfacheres Screen-Scraping für Node.js, funktioniert auch unter Windows 

UMLet

UMLet ist ein kostenloses UML-Editor. Im Gegensatz zu anderen UML-Editoren können Diagramme regelrecht programmiert werden. Der Code ist zum großen Teil selbsterklärenden. Vorlagen können in den Arbeitsbereich gezogen und dann per Code bearbeitet werden. Das ausrichten und skalieren Erfolg danach wie üblich mit der Maus. UMLet ist als Standalone und als Eclipse-Plugin verfügbar.

Weitere Informationen: www.umlet.com

ASCII-Art online Erstellen

ASCII-Art (englisch für ASCII-Kunst) ist eine Kunstrichtung, die mit Buchstaben, Ziffern und Sonderzeichen einer nichtproportionalen Schrift kleine Piktogramme oder ganze Bilder darzustellen versucht. Auf Computern eignet sich der ASCII-Zeichensatz hierfür besonders, da er weltweit auf nahezu allen Systemen verfügbar ist (Quelle: wikipedia).

Will man nur schnell mal eine beeindruckende Überschrift für ein kleines Scriptprogramm erstellen muss man nicht extra ein Programm wie JavE installieren.

Auf der Webseite patorjk.com können beliebige Texte in ASCII-Art umgewandelt werden. 

Bat To Exe Converter

Mit dem "Bat To Exe Converter" kann aus beliebigen Batch und/oder Scriptdateien ein Executables erzeugt werden. Durch das Einbinden von zusätzlichen Dateien ist es es möglich PHP-Scripte in EXE-Dateien zu verpacken. Dafür muss lediglich eine aufrufende BAT-Datei erstellt werden. Der entsprechende PHP-Interpreter kann der EXE einfach hinzugefügt werden, wodurch sich die Dateigröße natürlich vergrößert. Des weiteren können noch Startoptionen, Versionsinformationen sowie ein Icon festgelegt werden. Weitere Informationen und den Download von "Bat To Exe Converter" finden man unter: www.f2ko.de