Heute habe ich mal wieder eine ganz tolle Idee gehabt: Ein Freund von mir hat dieses Stardock Fences-Tool installiert, mit dem seine Desktop-Icons in Kästchen gruppieren kann. Ganz nett, aber ich habe relativ wenig Desktop-Icons, aber eine relativ hohe Auflösung, also krieg ich die auch ohne Kästchen sortiert.. Aber das Tool hat noch eine weitere Funktion: Man kann mit einem Doppelklick auf den Desktop die Icons sichtbar oder unsichtbar machen. Das ist nun wirklich nett und das könnte ich auch gut gebrauchen, nur mag ich mir deswegen nicht das „ganze“ Fences Tool aufladen. Außerdem steht aus der Seite wörtlich folgender Text: „Quickly hide/show your desktop icons with a double click – Patent Pending„. Die haben auf diese Funktionalität ein Patent oder wie habe ich das zu verstehen? „Toggle Desktop Icon Visibility onDoubleClick“?

Naja, aber wenn ich das richtig verstehe, kann einen das Patent ja nicht daran hindern, sich wenigstens zu überlegen, wie man eine solche Funktionalität implementieren könnte, oder?

Das habe ich dann auch gemacht und habe hier mal ein paar Links zusammengetragen, die einen Eindruck vermitteln können, wie das so gehen könnte:

In Fernando Machado Píriz’s Blog findet sich ein Eintrag, der ziemlich genau erklärt, wie man an ein IntPtr handle zu dem Window erhält, das die Desktop Icons enthält. Und zusätzlich zeigt er, wie man die Sichtbarkeit der Icons umschalten kann. Und er hat alles in eine schöne Klasse gepackt, auf die er auch verlinkt. Diese Klasse müsste man dann nur noch so anpassen, dass sie bspw. eine

public static void Toggle() { ToggleDesktopIconsVisibility(); }

enthält, die man dann aus einer Konsolen-Anwendung o.ä. aus aufruft. Und voilà schon haben wir eine kleine rund 8kb große exe, mit der wir die Sichtbarkeit der Desktop-Icons umschalten können. Alles für sich genommen sparen wir immerhin schon einen Rechtsklick auf den Desktop.. Aber in Kombination mit z.B. AutoHotKey ist das schon ein großer Fortschritt, denn nun haben wir alles, um einen Tastaturshortcut zu erzeugen, der die exe ausführt.. 😉

Das nächte Mal werden wir schauen, ob wir einen Service schreiben können, der die Events des Desktop „ablauscht“ und dann bspw. bei einem Doppelklick unsere Toggle()-Funktionalität aufruft.

Hier mal ein paar meiner Lieblings-GoogleTechTalks von YouTube (ich habe vor, in diesem Posting auf noch weitere TechTalks -es gibt so viele, die es sich lohnt anzuschauen- zu verweisen):

The Web that Wasn’t »

The Secret History Of Silicon Valley »

Write and Submit Your First Linux Kernel Patch »

Greg Kroah Hartman on the Linux Kernel »

How To Write Clean, Testable Code »

The Clean Code Talks: Inheritance, Polymorphism & Testing »

The Clean Code Talks: Unit Testing »

node.js »

Integrating R with C++: Rcpp, RInside, and RProtobuf »

Congratulations, Your Robot Just Accepted Your Friend Request »

How Ant Colonies Get Things Done »

Getagged mit:

Ich fasse hier mal zusammen, was ich so in letzter Zeit über Text Mining in R herausgefunden habe. Ich habe vorher noch nie etwas mit R gemacht, muss aber sagen, dass die ersten Eindrücke sehr gut sind: Ich habe die Vergleichsmöglichkeiten zu Stata und SPSS, weil ich mit beiden schon ein bisschen gearbeitet habe, und finde R von der Bedienung her (Stata ist hier auch sehr gut) wirklich top (dazu muss ich sagen, dass ich schon auch ein großer CLI-Fan insgesamt bin..), die Syntax ist relativ intuitiv, aber doch viel besser als v.a. bei SPSS, außer wohl wenn man nur SPSS macht, die Dokumentation sieht sehr umfangreich und gut zugänglich aus und es ist OSS.
Zur grundsätzlichen Einführung empfehlen sich diese Artikel auf der r-project-Seite; für Umsteiger: Quick-R. Daneben habe ich insbesondere noch diese Seiten gefunden, die mich weiter gebracht haben:

  • Luis Torgos Seite, auf der es zwar eher um Data Mining geht, aber er hat ein Buch darüber geschrieben und er hat dankenswerterweise alle in diesem Buch verwendeten Quellen auf seiner Seite veröffentlicht (vielleicht folgt das Buch ja noch).
  • Die Seite zum tm Paket von Ingo Feinerer: Die wohl wichtigste Ressource mit einem Paper, dass die Motivation hinter dem Design, das Design selbst und die Benutzung des tm Pakets für R beschreibt, und einem (alten) Version des Quelltextes von tm.
  • Ein weiterer Artikel von Ingo Feinerer, der als Einführung in tm gedacht ist.

Alles in allem bin ich nun immerhin soweit, dass ich weiß:

install.package("tm")

Und dann:

library(tm)

txtDir <- system.file("texts", "c:\some\data\", package = "tm")
(txts <- Corpus(DirSource(txtDir), readerControl = list(language = "en"))

(dtm <- DocumentTermMatrix(txts))

(dict <- Dictionary(c("word", "test", "more")))

(inspect(DocumentTermMatrix(analystTxts, list(dictionary = d)))

Installiert mir tm und lädt Texte aus einem Ordner, erzeugt eine Document Term Matrix daraus, erzeugt eine Häufigkeitsauszählung für eine Gruppe von Wörtern. Sehr nett!
Ein bisschen hab ich mir damit noch beschäftigt.

Getagged mit: , , ,