Ruby: Ubuntu LAMPP Control

Nachdem ich mich vor einiger Zeit mal mit der Skriptsprache Python beschäftigt habe, hab ich nun auch einmal die aus Japan stammende Alternative Ruby ausprobiert. Ruby ist wie auch Python eine interpertierte, objektorientierte Skriptsprache. Sie ist noch objektorientierter als Python (Alles ist ein Objekt) und wurde besonders durch das Web-Framework Ruby on Rails bekannt.

Ich habe nun als „Testprogramm“ eine kleine Anwendung für Ubuntu programmiert, welche die einfache Verwaltung einer LAMPP Installation auf einem Ubuntu ermöglicht. So bietet sie eine GTK-Oberfläche mit Buttons zum Starten/Stoppen von Apache und MySQL sowieso zum Eintragen/Austragen von diesen aus dem Autostart. Dies find ich ganz praktisch, da ich einen Apache Webserver lokal am laufen habe um PHP Skripte zu testen und diesen nur beim programmieren an haben möchte. Und da fand ich dann eine kleine GUI um diesen zu starten/stoppen ganz praktisch. Im Grunde ist dies aber dennoch mehr ein Lernprogramm.

Weiterlesen

Windows Vista: LAN Verbindung schmiert bei einem simplen ARP-Paket ab

Ich hab grade einen lustigen Exploit für Microsoft Windows Vista gefunden: Wenn Vista ein ARP-Paket mit der gefälschten Absenderadresse FF:FF:FF:FF:FF:FF erhält, wird die LAN Verbindung getrennt. Wie das wohl in einem großen Netzwerk mit Vista-Clients aussieht wenn die sich gegenseitig solche Pakete schicken? 😉

Coden in Delphi

Borland DelphiDa ich jetzt im Informatik Leistungskurs die Programmiersprache Delphi lerne möchte ich mal mein erstes Programm vorstellen…
Es handelt sich um einen einfachen „Taschen“-rechner, der die Addition, Multiplikation, Division und Subtraktion beherrscht. o.O Ein sehr sinnvolles Programm also! 😉
Der entscheidene Quellcode kann unter diesem Link eingesehen werden: http://paste.pocoo.org/show/1026/
Es handelt sich lediglich um die Funktionen, welche bewirken, dass die Operationen ausgeführt werden… Das ganze Paket (Project-File+ compilierte .exe) kann auch heruntergeladen werden. -|Download|-

Rechner 0.1 Beta -Screenshot

Ich finde den Quellcode sehr unübersichtlich, jedoch wird das programmieren sehr vereinfacht, da man mit Borlands Delphi (der Editor) leicht mit Drag&Drop Buttons hinzufügen, etc kann, doppelklickt man nun auf diese spring man direkt an die richtige Stelle im Quellcode.

Python gefällt mir jedoch besser, da ich den SourceCode übersichtlich und logisch finde.

[Edit: Inzwischen gefällt mir der Code ganz gut, die vielen Semikolons, etc haben mih anfangs nur abgeschreckt…]

NST.exe

EDIT: Zur Zeit der Erstellung des Eintrags fand ich es lustig das Programm ab und an zu benutzen. Inzwischen hat sich meine Meinung geändert, ich finde man sollte es nicht übertreiben sinnlos PCs zuzuspammen. Dennoch möchte ich das Programm nicht herausnehmen und lasse es bestehen, hoffe aber, dass keiner Unsinn damit anstellt.

Und wieder ist ein kleines Programm fertig! Es heißt NST.exe und kann wie immer hier runtergeladen werden! NST steht für Net Send Tool.
Bei NST.exe handelt es sich um ein in Python geschriebenes, sinnfreies Programm, welches im Hintergrund läuft, nach zwei Minuten schlägt es dann zu!…
Das Programm greift auf den Nachrichtendienst von MS Windows zurück, welcher Standartmäßig bei Win2K gestartet ist. Bei XP kann man ihn unter Systemsteuerung/Verwaltung/Dienste/Nachrichtendienst aktivieren.
Nun werden an alle erreichbaren Rechner, die den Nachrichtendienst aktiviert haben Nachrichten im Intervall von 10 Sekunden gesendet.
Anwendung findet NST.exe z.B. in der Schule, ca. 100 Rechner vernetzt, alle mit Win2k und alle mit aktiviertem Nachrichtendienst. Man kann sich den Spaß ausmalen, wenn 100 Rechner anfangen alle 10 Sekunden zu piepen.
Den Countdown von 2 Minuten habe ich eingebaut, damit man sich von dem infizierten Rechner entfernen kann und man nicht verdächtigt wird.
Und zu guter Letzt, das kostenlose 😉 Programm:

Beenden lässt es sich einfach über den Task-Manager.

Windows-Bash vs. Python?

In der Schule schreiben wir derzeit kleine CMD Skripte in Batch-Dateien und sind nun dabei angelangt ein Skript zu schreiben, welches beim Starten dem User eine Eingabe erlaubt und entsprechend der Eingabe einen bestimmten Text anzeigt. Dieses simple Programm in dieser Windows CMD Sprache zu schreiben ist aber garnicht so simpel – also jedenfalls ist der Code unleserlich… (Okay, vielleicht lässt er sich noch verbessern ich kenn mich mit der Windows CMD nicht so aus…)

Ich hab mir dann gedacht, dass ich das ganze ja mal in Python ausprobieren kann und habe auch gleich mal ein ähnliches Skript geschrieben welches sich jedoch nicht unsauber wieder selber aufruft, sondern das ganze mithilfe einer Schleife durchführt.

Also in meinen Augen ist CMD keine ernst zu nehmende Skriptsprache und schon garnicht eine richtige Programmiersprache. Gut, um in wenigen Zeilen mal schnell eine Anwendung mit bestimmten Parametern zu starten wird es reichen aber ich finde es eine Zumutung soetwas im Unterricht durchzunehmen. Da können wir doch lieber gleich mit TurboPascal oder so beginnen 😉

Schaut euch mal die beiden Skripte an:

Python
Batch-file (Folgt so schnell wie möglich, hab die Datei grade nicht hier)

Naja okay, im großen und ganzen ist das kein fairer vergleich, da beide „Sprachen“ ja für andere Dinge vorgesehen sind.

PyZufall_0.1!

Ich habe mit großer Hilfe eines Freundes (php4you.de) mein erstes Programm fertig! Es ist in Python geschrieben. Die graphische Oberfläche (GUI für Graphical User Interface) habe ‚ich‘ mit Glade angefertigt.
Mit dem Programm PyZufall kann man das Werfen einer Münze simulieren und anschließend wird ausgegeben, wie oft Kopf oder Zahl geworfen wurde… Je höher die Anzahl der Würfe desto genauer kommt man auf das Ergebnis ’50-50′.

Hier einige Beispiele:

  • 2 Würfe: Kopf: 0 Zahl: 2 (0% | 100%)
  • 10 Würfe: Kopf: 6 Zahl: 4 (60% | 40%)
  • 100 Würfe: Kopf: 43 Zahl: 57 (43% | 57%)
  • 1000 Würfe: Kopf: 479 Zahl: 521 (47,9% | 52,1%)
  • 10000 Würfe: Kopf: 5081 Zahl: 4919 (50,81% | 49,19%)
  • 100000 Würfe: Kopf: 49835 Zahl: 50165 (49,835% | 50,165%)
  • 1000000 Würfe: Kopf: 499829 Zahl: 500171 ( 49,9829% | 50,0171%)

PyZufall

<- Graphik in OpenOffice.org erstellt…