In seinem Artikel "Some Words About Visual Studio Extensibility" geht Keyvan Nayyeri ziemlich mit den Möglichkeiten zu Visual-Studio-Erweiterungen zu schreiben ins Gericht. Ich selber habe bisher nur ganz kleine Visual-Studio-Addins geschrieben, kann das also nicht wirklich beurteilen.
Was er schreibt klingt plausibel, aber ist es wirklich so schlimm oder will er hauptsächlich Werbung für sein Buch machen? 😉
Visual-Studio-Erweiterungen
Ich bin so schön…
Eine heute eingetrudelte Spam weicht deutlich von der aktuellen Masche ab, ist in deutsch und flutschte durch meinen zweilagigen Spamfilter:
Herzlichen Glückwunsch! Sie, Herr Glörfeld, wurden ausgewählt bei einem Casting für Models oder Darsteller mit zu machen.
Sie wollten schon immer mal als Fotomodel oder TV-Darsteller arbeiten?
Dann sind Sie bei Casting.AG genau richtig.
Den angegebenen Link probierte ich nicht aus, aber wer mich kennt, der weiß, dass die mich nicht gesehen haben… 😉
automatische Erkennung von Kfz-Kennzeichen
Es ist ja schon mal erfreulich, dass solche Vorkommen inzwischen diskutiert werden. Leider erst nachdem das Verfahren eingesetzt wurde. Das sollte eigentlich nicht mehr vorkommen. Worum es geht:
Die Polizei in Hessen fotografiert mit neuen automatischen Kennzeichenlesegeräten Autokennzeichen und gleicht diese automatisch mit Fahndungsdatenbanken ab.
Jetzt ist die aufregende Frage: Ist das in Ordnung oder nicht
Für mich ist die Sache eindeutig:
- Wenn die gescannten Kennzeichen nur mit der Fahndungsdatenbank verglichen und danach nirgend gespeichert werden, also nur in Hauptspeicher aber nicht in Protokollen vorhanden sind, dann ist gegen das Verfahren nichts einzuwenden. Es ist dann für mich wie bei einer normalen Verkehrskontrolle.
- Wenn hingegen alle Nummern erst mal gespeichert und danach verglichen werden – also danach alle Nummern noch persistent sind, dann ist das eindeutig nicht in Ordnung.
Laut Polizei werden die Nummern, die in der Datenbank nicht gefunden wurden, nicht gespeichert.
Da steht es: "Polizei scannt eine Million Auto- Kennzeichen"
späte Einsicht
Wie selten erlebe ich, dass jemand einen kapitalen Fehler so eingesteht. Ich bin tief beeindruckt, dass Edgar Bronfman der Vorstandsvorsitzende von der Warner-Music-Group seine Einsicht so deutlich zeigt:
Nun warnte Bronfman die Mobil-Industrie davor, dieselben Fehler wie die Musikindustrie zu machen. Deren Verweigerung gegenüber digitalen Zeitalters habe zum Krieg zwischen Musiklabels und Verbrauchern geführt. Dabei hätten sie den Verbrauchern nur nicht das geboten, was sie haben wollten, weshalb diese auf die Filesharing-Portale ausgewichen seien.
Bei Heise.de steht der Rest.
Und, schon konvertiert?
Manche Listen sind einfach überwältigend. Diese Liste mit über 80 verschiedenen Konvertierungswerkzeugen ist schon ziemlich beeindruckend. Von den meisten habe ich zwar noch nie etwas gehört, dennoch macht es Spaß sie zu lesen…
Beispiele: Code Converter von VB nach C#, Währungsumrechner, Grafikkonverter, Vidiokonverter, PDF-Konverter, …
ganz schön Patent
Wer hätte gedacht, dass ich Microsoft in Bezug auf Softwarepatente mal beglückwünsche… 😉
Tatsächlich bin ich froh, dass die Patentklage gegen Microsoft für nichtig erklärt wurde. Die Begründung ist schon ganz gut:
In dem Verfahren […] urteilte die Jury nun gegen die Kläger. Microsoft habe das fragliche Patent nicht verletzt. Darüber hinaus erklärten die Geschworenen das Patent für insgesamt ungültig, weil das beschriebene Verfahren zum Zeitpunkt der Anmeldung schon existiert habe (Prior Art).
Ich finde allerdings, dass die Idee so trivial ist, dass man sowas einfach nicht patentieren darf. Das Ereignisse protokolliert und später ausgewertet werden finde ich so trivial, dass es gerade mal an die Schöpfungshöhe der legendären "1-Klick-Bestellung" herankommt. Mir graut schon vor dem Tag an dem ich damit konfrontiert werde, dass eines meiner Programme angeblich so ein hochgeistiges Patent verwendet. So geht es wohl den meisten Entwicklern. Wer hat schon soviel in der "Kriegskasse" wie Microsoft, um einen Rechtsstreit so lange durchzustehen… 🙁
Besser nicht auf die Angabe "Query cost" verlassen
Bei einer Sache bin ich in den letzten Monaten böse reingefallen. Ich beschreibe das mal hier, vielleicht erspare ich anderen damit Kummer…
Beim SQL-Server-2005 kann man sich für einen oder mehrere SQL-Batches, die man in einem Query-Fenster hat mit einem Klick auf "Include actual query plan" den Zugriffsplan anzeigen lassen. Wenn es mehrere Zugriffspläne sind, dann bekommt man pro Query/Zugriffsplan jeweils oben den Wert "Query cost (relative to the batch)" angezeigt. Leider sind die angegebenen Prozentwerte nicht das, was ich erwartet hatte.
Nehmen wir mal an, es seien 3 Queries, für die jeweils die Werte 49%, 42% und 9% angezeigt werden. Dann muss man wissen, dass diese Prozentwerte auf den geschätzen Kosten des Optimizers beruhen. Die echten Zeiten werden nicht gemessen.
Die Prozentwerte beruhen auf den jeweiligen "Estimated Subtree Costs" des obersten Knotens des jeweiligen Ausführungsplanes.
Im Beispiel waren das die Werte 0.266, 0.225 und 0.046.
Wegen des Namens "Query cost" dachte ich, es seien die echten Kosten. Es sind aber die geschätzten Kosten auf denen der Optimizer seinen Zugriffsplan aufbaut.
Und tatsächlich musste ich erst nachmessen: Die tatsächlich gemessenen Zeiten waren in meinem Beispiel 220ms (estimated 49%), 140ms (estimated 42%) und 343ms (estimated 9%).
Resümee: Die als "Query cost" angegebenen Werte darf man nur als Hinweis nehmen, wie der Optimizer damit umging ("estimated"). Man kann daraus keine Performanceaussagen "der unterste ist der Beste" ableiten…
Wer mehr darüber erfahren will, wird auf dem Blog vom SQL Server Query Processing Team fündig.
SyncToy v2.0 Beta – Toys for boys
Von dem relativ simplen, aber eleganten Kopiertool SyncToy kommt bald die Version 2.0 heraus. Für alle, die es nicht erwarten können, ist kürzlich die Beta bereit gestellt worden.
Mit dem Tool kann man automatisch den Inhalt von Verzeichnissen abgleichen, z.B. den Laptop mit dem Server oder eine Wechselplatte/Stick mit dem heimischen PC. Das klingt sehr begeisternd. Ich muss allerdings zugeben, dass ich exakt dafür Beyond Compare verwende. Allerdings nicht automatisch, sondern mit kritischem Blick…
Lädst Du da: SyncToy v2.0 Beta
Profiler-Traces in einer Tabelle auswerten
Im SQL-Team-Blog von Mladen PrajdiÄ wird ein guter Tipp veröffentlicht, wie man in einer Tabelle gespeicherte Profiler-Traces etwas lesbarer machen kann: Durch einen Join auf die View sys.trace_events.
Hier stehts: "Map SQL Server Profiler EventClass ID to its name in a saved trace table"
SQL-PASS im November: Indexes und Table-Partitioning
Beim nächsten Treffen der PASS-Franken geht es um das Thema "Tipps und Tricks in T-SQL". Referent ist Jürgen Leis, der bisher schon durch seine fundierten Beiträge angenehm auffiel.
Zeit: Am Dienstag, den 20.11.2007, um 18 Uhr.
Titel: Indexes und Table-Partitioning
Schweregrad: 200-400 – je nach Fragen / Diskussionen der Teilnehmer
Ich hoffe in diesem Zusammenhang, wir machen es dem Sprecher "nicht all zu leicht" ;-))
Sprecher: Jürgen Leis
Er wird besonders gerne dann von Anderen geholt, wenn diese „nicht mehr weiter wissen“ oder ein besonders kniffliges Problem zu lösen haben, oder die Performance nicht (mehr) stimmt – frei nach dem Motto: Herr Leis wird’s schon richten …
Hier findet Ihr das Profil von Jürgen Leis und seine Homepage sqlprofessionals.de.
Ort: it innovations GmbH
Thomas-Mann-Str. 59
90471 Nürnberg
Anfahrt
Gugst Du hier…
Wie groß ist Dein Cache gerade, SQL-Server?
Der SQL-Server verwaltet seinen Daten-Cache grundsätzlich immer dynamisch, sogar wenn ich Min- und Max-Server-Memory auf den gleichen fixen Wert setze, trifft das zu.
Wenn man wissen will, wie viel Speicher der SQL-Server aktuell belegt hat und wofür genau, dann kann man das mittels DBCC erfragen:
DBCC MemoryStatus
Wenn es einem nur um den Daten-Cache (genauer den Buffer-Pool) geht, dann kann man das auch so rausbekommen:
SELECT
bpool_committed*8 as "UsedBufferPoolSize [KBytes]",
bpool_commit_target*8 as "ReservedBufferPoolSize [KBytes]",
physical_memory_in_bytes/1024 as "PhysicalMemoryOfOS [KBytes]",
virtual_memory_in_bytes/1024 as "VirtualMemoryOfOS [KBytes]"
FROM sys.dm_os_sys_info
mehr Unterstützung mehr Leistung?
Aus der letzten Auswertung zu den monatlichen Fragebögen des Arbeitsweltmonitor.de kann man entnehmen, dass vile Mitarbeiter sich mehr Entwicklungschancen wünschen, also mehr Verantwortung, mehr Kompetenzen, mehr Weiterbildung. Ich glaube der Wunsch wird deswegen immer stärker, weil durch den Personalabbau und andere die Einsparmaßnahmen der Druck auf den Einzelnen zunimmt. Ich beobachte in meinem Freundeskreis ganz krass die Tendenz, dass die Mitarbeiter immer einen Tick über dem Limit arbeiten.
Mitarbeiter sind mit der Anzahl ihrer Maßnahmen zur Personalentwicklung nicht zufrieden. Immer mehr wird der Wunsch nach mehr geäußert. So sind die Befragten der Ansicht, dass sie nicht genügend Personalentwicklung am Arbeitsplatz (41%) und auf Veranstaltungen erhalten (50%). Doch im Gegenzug zu einer stärkeren Förderung bieten die Mitarbeiter eine Steigerung ihrer eigenen Leistung an. Die Befragten geben an, dass bei ihnen bei einem „Mehr an Schulung“ auch ein deutliches „Mehr an Leistung“ machbar ist (49%).