Webslice, böse SEO Falle

Monday, March 08, 2010 11:30:25 PM (Mitteleuropäische Zeit, UTC+01:00)

Im Rahmen des EYSA Wettbewerbs hatte ich den ein oder anderen Webslice entwickelt. Unter anderem hab ich auch einen Webslice für das dotnet-forum.de erstellt, der die aktuellen Beiträge anzeigt.
Ein Webslice ist nichts anderes, als ein DIV Container in der HTML-Seite, der mit einem Inlinestyle-Attribut  ausgeblendet wird (style="display: none").
Durch die CSS Klasse hslice erkennt der IE8 diesen DIV Container als Webslice und zeigt ihn nach der Installation an:

webslice

So weit so gut, das Webslice funktioniert. Als ich das Webslice damals erstellt hatte, habe ich mich an Beispielen aus der MSDN orientiert und die Headline des Webslice als H2 eingebaut:

Webslice-code 


Und genau diese Notation hat den Besucherstrom, der über Google ins Forum kommt, drastisch reduziert. Google hat diese H2 Headline für so wichtig gehalten, das dieser Text in den Google Suchergebnissen immer als Headline angezeigt wurde. Bsp:

serps 

Wer klickt schon auf "Aktuelle Beiträge aus dem dotnet-forum.de" wenn man nach "WMI Abfrage für Ereignisprotokoll" gesucht hat?

Das Verhalten von Google ist für mich vollkommen unverständlich, denn zum einen ist der DIV Container ausgeblendet und zum anderen ist auf der entsprechenden Seite eine ordentliche META Description und eine H1 Headline vorhanden. Beide sind besser für die Headline der Suchergebnisse geeignet.

Behelfen kann man sich, in dem man das H2 entfernt und durch ein SPAN ersetzt:

<span class="entry-title">Aktuelle Beiträge aus dem dotnet-forum.de</span>

Kick it on dotnet-kicks.de

Kostenlose Webcast DVDs im dotnet-forum.de

Monday, March 08, 2010 6:30:03 PM (Mitteleuropäische Zeit, UTC+01:00)

Im dotnet-forum.de gibt's im Moment kostenlose Webcast - DVDs! Schnell zugreifen!

http://dotnet-forum.de/forums/p/2350/36097.aspx#36097

WebcastDVD

Update: Alle DVDs sind vergeben!

Kick it on dotnet-kicks.de

Dotnet Cologne 2010 mit Party des dotnet-forum.de

Monday, March 01, 2010 4:28:18 AM (Mitteleuropäische Zeit, UTC+01:00)

Die Konferenz

Im letzten Jahr fand in Köln die erste dotnet Cologne mit großem Erfolg statt. Rund 180 Teilnehmer wurden in 11 Session umfassend über das Thema WPF und Silverlight informiert.

IMG_4282
Rückblick: dotnet Cologne 2009

Auch in diesem Jahr werden Roland Weigelt, Albert Weinert und Stefan Lange von den .NET Usergroups Köln und Bonn wieder eine dotnet Cologne organisieren. Die Schwerpunkte in diesem Jahr werden .NET 4.0 und Visual Studio 2010 sein. In diesem Jahr sind sogar 18 Sessions geplant!
Ab dem 3. März kann man sich für die Konferenz anmelden.
Die drei Organisatoren haben sich ein interessantes Preismodell einfallen lassen: die ersten 150 Teilnehmer zahlen nur 25 Euro wer sich später entscheidet zahlt 40 bzw. 55 Euro.

Die Party

Im Rahmen der Konferenz wird das dotnet-forum.de am Abend eine Grillfete veranstalten. Eingeladen sind alle User des Forums sowie alle Besucher der Konferenz. Bei schönem Wetter wird draußen am See gegrillt :-)

Für die Konferenz werden noch Sprecher und Sponsoren gesucht. Wer sich beteiligen möchte, setzt sich am besten mit dem Orga-Team in Verbindung.

Wer keine Info über die Konferenz verpassen möchte folgt der dotnet Cologne am besten bei Twitter.

Kick it on dotnet-kicks.de

Was gibt es neues in ASP.NET 4.0 ? ..

Sunday, February 14, 2010 5:39:45 PM (Mitteleuropäische Zeit, UTC+01:00)

.. das war das Thema meines Vortrages am 11.02.10 bei der Dodned Usergroup Franken.
Wie versprochen, möchte ich hier die Demos und Slides zum Download bereitstellen.

Die Demo, die ich zum erweiterten Output Caching gezeigt habe, kann im Blog von Gunnar Peipman runtergeladen werden: ASP.NET 4.0: Writing custom output cache providers

Die restlichen Downloads liegen im Downloadberich vom dotnet-forum.de:

Slides - Neues in ASP.NET 4.0
Charting Demo
Object Caching Demo

Viel Spaß mit ASP.NET 4.0!

Kick it on dotnet-kicks.de

Geballtes VisualBasic Wissen fast geschenkt!

Monday, February 08, 2010 6:42:49 PM (Mitteleuropäische Zeit, UTC+01:00)

20705967N

Der Online Buchversand terrashop bietet allen Freunden von dotnet-snippets.de und dotnet-forum.de wieder einmal ein unschlagbares Angebot:
Das Buch Visual Basic 2008 Profihandbuch & Referenz bietet auf über 500 Seiten geballtes Wissen in der aktuellen VisualBasic Version. Das Buch ist sowohl zum Lernen als auch zum Nachschlagen hervorragend geeignet.
Ab einem Bestellwert von 19€ wird innerhalb Deutschlands versandkostenfrei geliefert. Ansonsten fällt eine Versandpauschale von 3,95€ an.

Zum Angebot >>

Kick it on dotnet-kicks.de

Neue Blogs im dotnet-forum.de

Monday, December 28, 2009 8:18:51 PM (Mitteleuropäische Zeit, UTC+01:00)

Wie ich hier schon einmal berichte habe, besteht innerhalb des dotnet-forum.de die Möglichkeit sich einen eigenen, kostenlosen Blog einrichten zu lassen.
Ich freue mich sehr, daß dieses Angebot seit einigen Wochen von zwei neuen Autoren genutzt wird.



Nico Franze ist freier Softwareentwickler sowie Autor für Fachzeitschriften. Er beschäftigt sich schon seit der Version 1.0 mit der .NET - Technologie. Seine Erfahrung, die er über die vielen Jahre gesammelt hat, gibt er in diesem Blog weiter.
Mit seinem Blogbeitrag Restriktiv vs. Robust hat er es geschafft, eine sehr rege Diskussion anzustoßen. Innerhalb weniger Tage wurde sein Blogposting über 40-mal kommentiert. Das findet man selten in der deutschen .NET – Bloglandschaft.



Auch Lars Schmitt bloggt nun im Forum. Er ist in vielen .NET Communities als BlackCoin bekannt.  Lars ist Microsoft Certified Professional, außerdem verstärkt Lars seit kurzem das Team des Forums. In seinem Blog geht es vorwiegend um das Thema WPF, zusätzlich informiert Lars über Neuigkeiten rund um das kommende Visual Studio 2010 und .NET 4.0.

Ebenfalls neu ist ein nicht öffentliches Unterforum in dem sich alle dotnet-forum.de - Blogger untereinander austauschen können.
Über diesen Weg konnten schon viele Wege gefunden werden die Blogs individuell anzupassen, wofür der Blog von Nico Franze das beste Beispiel ist.

Wer sich der wachsenden Bloggergemeinde anschließen möchte, kann gern Kontakt zu mir aufnehmen.

Kick it on dotnet-kicks.de

Zwei neue Blogs im dotnet-forum.de

Wednesday, September 09, 2009 10:41:22 PM (Mitteleuropäische Sommerzeit, UTC+02:00)

Ich freue mich sehr, zwei neue engagierte Blogger im dotnet-forum.de begrüßen zu dürfen.
Rainer Hilmer und Patrick Sperneder haben sich entschieden, einen kostenlosen Blog im dotnet-forum.de einrichten zu lassen.



Rainer ist quasi seit der ersten Stunde mit dabei im .NET-Forum. Er hat bis jetzt auf live.com gebloggt und ist nun umgezogen ins Forum.
Patrick kennt sicher der ein oder andere von dotnet-snippets.de, dort ist er schon seit April 2008 registriert und hat den ein oder anderen interessanten Snippet veröffentlicht.

Thorsten Hans und Rainer Schuster bloggen schon etwas länger im dotnet-forum.de:



Thorstens Schwerpunkt liegt im Moment bei der Entwicklung von ASP.NET und Sharepointanwendungen.
Rainers Blog beschäftigt sich vorwiegend mit Architektur, Clean Code und dynamischen Sprachen.

Wie oben schon erwähnt, Blogs im dotnet-forum.de sind kostenlos und unverbindlich. Wer das dotnet-forum.de als Sprachrohr zur Community nutzen möchte, kann mich gern kontaktieren.

Kick it on dotnet-kicks.de

Einfacher Formularspamschutz mit JavaScript

Thursday, April 23, 2009 4:52:20 PM (Mitteleuropäische Sommerzeit, UTC+02:00)

Im dotnet-forum.de kommt es immer wieder vor, das sich Spammer registrieren. Diese Spammer registrieren sich unter zufällig erzeugten Namen und das war’s. Sie posten nichts und hinterlassen nicht einmal einen Link im Profil. Was die Spammer mit diesen Registrierungen erreichen wollen, ist mir ein Rätsel. Sicher ist nur, dass diese Anmeldungen manuell durchgeführt werden, das habe ich durch ein paar Experimente herausgefunden. Was die Spammer scheinbar noch nicht mitbekommen haben, ist, dass sie nach wenigen Minuten verbannt werden. Ein verbannter User kann sich nicht einmal anmelden. Das automatische Verbannen erreiche ich mit Hilfe eines Spamfilters, den ich für den CommunityServer entwickelt habe. Der Filter findet bekannte Spamadressen über einen externen Dienst und nutzt zusätzlich eine Blacklist, die ich selbst pflege. Somit arbeitet er sehr zuverlässig. Diesen Spamfilter habe hier schon einmal vorgestellt.

Im zweiten Schritt der Spambekämpfung habe ich etwas früher angesetzt, damit die Spammer sich erst gar nicht anmelden können. Ich habe nach einer Lösung gesucht, mit der ich Personen aussperren kann, die kein Deutsch können. Das hat nichts mit meiner politischen Einstellung zu tun, sondern damit, dass Spammer oft aus Ländern kommen, in denen die Arbeitskraft wenig kostet…

Zur Lösung des Problems gab mir Thomas einen entscheidenden Tipp. Er hat eine serverseitige Lösung mit dem Namen The Riddle entwickelt. Der User, der das Formular absenden möchte, muss zwei Zahlen addieren und das Ergebnis ausgeschrieben in eine TextBox eintragen. Damit setzt man voraus, dass der User etwas deutsch kann und ggf. auch mit Umlauten umgehen kann. Zuerst wollte ich die Lösung von Thomas übernehmen, habe mich aber später dafür entschieden, eine clientseitige Variante davon zu entwickeln. Das hat den Vorteil, dass Assemblys des zugrunde liegenden Systems (im meinem Fall CommunityServer) nicht angefasst werden müssen. Es wäre auch auf nicht-.NET Systeme leicht übertragbar.

Spamschutz

Bei meiner Lösung ist der Absende-Button deaktiviert wenn das Formular geladen wird, hat man das Ergebnis richtig ausgeschrieben, wird der Button aktiviert und das Registrierungsformular kann abgesendet werden.

Es folgt das kurze JavaScript:

var numbers = new Array("null", "eins", "zwei", "drei", "vier", "f&uuml;nf", "sechs", "sieben", "acht", "neun", "zehn", "elf", "zw&ouml;lf", "dreizehn", "vierzehn", "f&uuml;nfzehn", "sechzehn");
var number1;
var number2;
var SendButtonID = ""; // ID des Absende - Buttons eintragen!

function InitializeRiddle() {
number1 = GetRandomNumber();
number2 = GetRandomNumber();
document.getElementById("task").innerHTML = "<b>Spamschutz: Addiere " + numbers[number1] + " und " + numbers[number2] + " !</b><br />Das Ergebnis muss <b>ausgeschrieben</b> werden.<br />Beispiel: sieben und sechs ergeben dreizehn!";
}

function CheckResult() {
var result = number1 + number2;
var resultToCheck = document.getElementById("result").value.toLowerCase();
resultToCheck = resultToCheck.replace(/ö/g, '&ouml;');
resultToCheck = resultToCheck.replace(/ü/g, '&uuml;');

if (numbers[result] == resultToCheck) {
document.getElementById(SendButtonID).disabled = false;
}
else {
document.getElementById(SendButtonID).disabled = true;
}
}

function GetRandomNumber() {
var randomNumber = Math.random();
randomNumber = 8 * randomNumber;
randomNumber = Math.round(randomNumber);
return randomNumber;
}

Den Spamschutz kann hier ausprobiert werden.

Fazit: So ein Schutz kann es den Spammern immer nur erschweren ihr Vorhaben umzusetzen und somit hab ich auch die Spammer nicht vollständig aussperren können. Es war allerdings ein deutlicher Rückgang an russischen und indischen Registrierungen spürbar. Außerdem schützt es das Forum vor Usern die nicht 6 und 7 addieren können ;-)

Kick it on dotnet-kicks.de

Das dotnet-forum.de ist ein Jahr alt

Tuesday, January 20, 2009 10:56:43 PM (Mitteleuropäische Zeit, UTC+01:00)

Heute vor einem Jahr ist das dotnet-forum.de offiziell online gegangen, doch wie ist es eigentlich dazu gekommen?

1JahrDotnetForum

Es gibt bekanntlich im deutschsprachigen Raum einige gute Foren, die sich mit .NET Entwicklung beschäftigen.

Warum noch ein Forum?

Angefangen hat alles mit der Domain, die ich zufällig beim Surfen entdeckt habe. Ich habe verwundert festgestellt, dass diese nicht genutzt wurde. Die Domain "dotnet-forum.de" war registriert auf eine Firma aus Berlin die sich auf Java Entwicklung spezialisiert hat: GEBIT Solutions. Nach einem kurzen Telefonat, war der Geschäftsführer bereit, mir diese Domain kostenlos zu überlassen. An dieser Stelle noch einmal Herzlichen Dank dafür an GEBIT Solutions!
Auf dotnet-snippets.de ist es zu dieser Zeit immer wieder vorgekommen, dass unter den Snippets Fragen per Kommentar veröffentlicht wurden, da kam ein eigenes Forum also wie gerufen.
Die Domain war gefunden, jetzt fehlte noch die passende Forensoftware. Einige Monate vorher, hörte ich mir auf der NRW 07 einen Vortrag von Thomas Freudenberg über den Community Server an. Thomas ist MVP für den Community Server und hatte das System sehr ausführlich erklärt. Da für mich nur eine ASP.NET Lösung in Frage kam, war die passende Software also schnell gefunden.
Thomas hat bei diversen Erweiterungen des Forums immer wieder geholfen und ist heute Teil des Teams.
In den folgenden Monaten habe ich einige Erweiterungen für den Community Server entwickelt. Das war nicht immer ganz leicht, weil es keine offizielle Doku gibt, hinzu kamen einige Bugs vom CS die man umschiffen musste.

Was kann das Forum jetzt mehr?

Es gibt täglich frische News rund um das Thema .NET Entwicklung die vom Team zusammengetragen werden.
 
Damit man kein wichtiges Usergrouptreffen oder keine Entwicklerkonferenz verpasst, gibt es einen Terminkalender, der jedem registrierten User per Routenplaner den Weg zum Ziel weist.
Die DeveloperBlogs sind eine Zusammenfassung der bekanntesten deutschen Blogs die sich mit der .NET Entwicklung beschäftigen. Die KnowledgeBase wurde uns freundlicherweise vom VB-Magazin.de zur Verfügung gestellt, diese Webanwendung wurde von Alex und Jan in VB.NET entwickelt und setzt konsequent die neuen Sprachfeatures von Visual Basic 9.0 ein.
Auf die Mitgliederkarte haben aus Datenschutzgründen nur registrierte Mitglieder Zugriff. Es macht immer wieder Spaß in der Karte UserMapnach Usern in der näheren Umgebung zu suchen, dabei hilft die Ajax-Umkreissuche.

Die ganzen Zusatzfeatures machen natürlich noch mehr Spaß, wenn sich möglichst viele User daran beteiligen.

Du kannst mitmachen, in dem du News vorschlägst, Termine deiner Usergroup einträgst, Artikel für die KnowledgeBase schreibst, deinen Blog bei den DeveloperBlogs anmeldest und in dem du Fragen im Forum stellst und beantwortest.
Es erwartet dich im Forum ein sehr freundlicher und respektvoller Umgangston, versprochen!

Ich möchte mich bei allen bedanken, die das Forum unterstützt haben, dabei möchte ich das Team besonders hervorheben, das vor, aber auch hinter den Kulissen, richtig gute Arbeit leistet!

Kick it on dotnet-kicks.de

Stop Forum Spam Modul für CommunityServer 2007

Sunday, August 10, 2008 12:56:34 PM (Mitteleuropäische Sommerzeit, UTC+02:00)

Seit einigen Wochen gab es im dotnet-forum.de tägliche mehrere Anmeldungen mit merkwürdigen Benutzernamen. Die Emailadressen dieser User endeten mit .ru oder .in.
Rainer hatte mich auf die  Internet Spam Datenbank Stop Forum Spam aufmerksam gemacht, in der solche Spam User gesammelt werden. Darauf hin habe ich mir diese Webseite einmal genauer angesehen. Mir war aufgefallen, dass es dort eine einfache API gab, mit der die Emailadressen kontrolliert werden können. Für einige PHP Foren gab es schon passende Erweiterungen um Spam User zu identifizieren. Thomas Freudenberg und ich, haben kurzerhand eine Erweiterung für den CommunityServer 2007 geschrieben, welche im Abstand von 15 Minuten alle neuangemeldeten User mit Hilfe dieser API kontrolliert.
Wurde ein User als Span User identifiziert, wird er verbannt. Das bedeutet, der User existiert weiterhin im Forum, jedoch kann er sich nicht mehr anmelden und somit keinen Schaden anrichten.
Im Event log des Forums kann man gut beobachten, wann sich der User registriert hat und wann er verbannt wurde:

StopForumSpamEventLog

Wer das Modul im CommunityServer nutzen möchte, kann es sich kostenlos herunterladen. Die Installation ist sehr einfach. Es müssen nur 2 config Dateien editiert und eine DLL kopiert werden. Eine Installationsanleitung ist im Download enthalten.

Download Stop Forum Spam Modul für CommunityServer 2007

Kick it on dotnet-kicks.de

Die Gewinner vom Artikel Wettbewerb stehen fest!

Monday, August 04, 2008 9:08:30 PM (Mitteleuropäische Sommerzeit, UTC+02:00)

Der Artikel Wettbewerb im dotnet-forum.de ist beendet.
Das Team hat die Artikel in den letzten Tagen genau unter die Lupe genommen und hat zwei Gewinner ausgewählt.
Der Erste Platz geht an Gordon Breuer für den Artikel "Grundlagen zu LINQ, λ-Expressions und Extension-Methods". Gordon bekommt das .Net Productivity Pack bestehend aus einer Lizenz Jetbrains Resharper 4.0 und einer Lizenz Jetbrains dotTrace.
Der Zweite Preis geht an Rainer Hilmer. Er bekommt den Zweiten Preis , eine Lizenz für Jetbrains Resharper 4.0 für seinen Artikel "Extension Methods (C#3 Spracherweiterung) am Beispiel eines Value Limiters"

Herzlichen Glückwunsch den beiden Gewinnern!

Es wurden insgesamt 7 Artikel eingereicht. Um die neuen Sprachfeatures von C# 3.0 kennenzulernen lohnt es sich, jeden einzelnen Artikel zu lesen:

Kick it on dotnet-kicks.de

Die Community Termine immer im Blick.

Monday, July 28, 2008 11:05:52 PM (Mitteleuropäische Sommerzeit, UTC+02:00)

Im dotnet-forum.de gibt es seit heute einen Terminkalender für die .NET Community.
In einer Monatsübersicht werden Usergrouptreffen, Stammtische und Konferenzen angezeigt.
Ist man im Forum registriert und hat seinen Wohnort im eigenen Profil gespeichert, wird zu jeder Veranstaltung die Entfernung in Kilometern angezeigt.
Damit man keinen Termin mehr verpassen kann, kann jeder Termin nach Outlook exportiert werden.
Über ein Eingabeformular können jederzeit  neue Termine vorgeschlagen werden.

overview

detail

Viel Spaß!

Kick it on dotnet-kicks.de

Artikel Wettbewerb im dotnet-forum.de

Monday, June 30, 2008 5:32:17 PM (Mitteleuropäische Sommerzeit, UTC+02:00)

Es gibt wieder etwas zu gewinnen! Im Zeitraum vom 1.7. bis 31.7. 2008 gibt es im dotnet-forum.de einen Artikel Wettbewerb. Gesucht werden Artikel für die Knowledge Base zum Thema „Spracherweiterungen in C# 3.0 und VB 9.0“

Als Preise winken Lizenzen von ReSharper und dotTrace.
Details zum Wettbewerb gibt es unter: http://dotnet-forum.de/forums/t/460.aspx

Viel Erfolg!

Kick it on dotnet-kicks.de

Einführung in Linq to XML

Saturday, June 28, 2008 12:11:28 AM (Mitteleuropäische Sommerzeit, UTC+02:00)

Vor kurzem habe ich eine dreiteilige Artikelserie geschrieben die den Einstieg in das Thema Linq to XML erleichtern soll. Die Artikel sind analog zu dem 4 grundlegenden Datenbankoperationen CRUD (Create, Retrieve, Update und Delete ) gegliedert.
Zu jedem Artikel gibt es ein Beispielprojekt zum Download.

LINQ to XML Teil 1 – Erstellen einer XML Datei
LINQ to XML Teil 2 – Abfragen einer XML Datei
LINQ to XML Teil 3 – Manipulieren einer XML Datei

Viel Spaß beim Lesen!

Kick it on dotnet-kicks.de

dotnet-forum.de mit eigener Knowledge Base

Monday, June 09, 2008 8:04:00 AM (Mitteleuropäische Sommerzeit, UTC+02:00)

Im dotnet-forum.de gibt es ab sofort eine eigene  Knowledge Base. Die Knowledge Base ist eine strukturierte Sammlung von Fachartikeln aus den Bereichen .NET-Entwicklung, IT-Professional und Testberichten von Büchern und Entwicklersoftware.

Die Knowledge Base bietet gegenüber dem Forum einige Vorteile:

1. Artikel können mit dem Windows Live Writer veröffentlicht werden
2. Artikel können kommentiert werden, diese Kommentare können vom Autor moderiert werden
3. Artikel können von den Lesern bewertet werden
4. Die Kategorien der Knowledge Base können jederzeit flexibel angepasst werden
5. Es gibt RSS Feeds für jeden Autor und für jede Kategorie

Die Knowledge Base würde von Alex Bierhaus und Jan-Cornelius Molnar vom VB-Magazin.de entwickelt und uns freundlicherweise zu Verfügung gestellt. Jan und Alex haben bei der Entwicklung großen Wert darauf gelegt, die die neuen Sprachfeatures von VB 9.0 wie zum Beispiel Linq einzusetzen um so eine performante und skalierbare Anwendung zu schaffen die sich gut in den CommunityServer integrieren lässt.

Vielen Dank an Alex und Jan!

Zu erreichen ist die Knowledge Base unter diesem Link: http://dotnet-forum.de/KnowledgeBase/

Kick it on dotnet-kicks.de

Kostenlose Lizenz von SmartInspect abzustauben

Tuesday, June 03, 2008 9:38:43 PM (Mitteleuropäische Sommerzeit, UTC+02:00)

"SmartInspect is an advanced logging tool for debugging and monitoring .NET, Java and Delphi applications. It helps you to identify bugs, find solutions to customer problems and gives you a clear understanding of how your software works in different environments. Whether you need logging in the development phase, on production systems or at customer sites, SmartInspect is the perfect choice."

Wer Lust hat, diese Software zu testen und einen Testbericht darüber zu schreiben, sollte sich jetzt schnell im .NET-Forum.de anmelden und auf diesen Thread antworten.

Nach dem Test kann die Lizenz behalten werden!

// Edit:

Der erste Testbericht wurde veröffentlicht:
http://dotnet-forum.de/KnowledgeBase/articles/2008/06/18/294-gurock-smartinspect-version-2-3.aspx

Kick it on dotnet-kicks.de

Die besten Entwickler Blogs als RSS Feed im dotnet-forum.de

Wednesday, May 14, 2008 8:17:09 AM (Mitteleuropäische Sommerzeit, UTC+02:00)

Für alle Besucher des dotnet-forum.de ist ab sofort ein neues Feature verfügbar: die Developer Blogs. Unter diesem Link http://dotnet-forum.de/DeveloperBlogs/ sind die 25 neuesten Beiträge der besten Entwickler Blogs verfügbar. Die Blogposts werden direkt per RSS Feed von den entsprechenden Entwickler-Blogs geholt.
Die zusammengestellten Inhalte können per RSS Feed abonniert werden.

Vorschläge für weitere Blogs nehme ich gern entgegen. Bedingung für die Aufnahme ist ein RSS oder Atom Feed dessen Inhalt sich mit der Entwicklung rund um .NET beschäftigt.

Du hast noch keinen Blog? Für Mitglieder des dotnet-forum.de können kostenlos leistungsfähige Blogs freigeschaltet werden. Bei Interesse reicht eine PN oder Email.

Kick it on dotnet-kicks.de

CommunityServer: A non zero-length string is required.

Tuesday, May 13, 2008 9:32:01 PM (Mitteleuropäische Sommerzeit, UTC+02:00)

Heute wollte ich den RSS Reader vom CommunityServer ausprobieren, leider bekam ich nur die übliche CommunityServer Fehlermeldung:  „Oops something went wrong!“.
Um die Ursache des Problems zu herauszubekommen, hab ich zuerst das Debugging in der Web.config aktiviert:

serverfehler

Der Fehler ist in der RSS.NET Dll aufgetreten, die vom CommunityServer verwendet wird. Genauer gesagt, im Konstruktor der Klasse RssChannel:

public RssChannel(string title, string description, Uri link)
{
    :
    if (description.Length == 0)
    {
        throw new ArgumentException("A non zero-length string is required.", description);
    }
    :
} 

Mit Lutz Röders Reflector habe ich in der CommunityServer.Reader.dll den passenden Aufruf gefunden:

RssChannel channel = new RssChannel(current.SiteSettings.SiteName + ", Folder: " + str, current.SiteSettings.SiteDescription, new Uri(current.CurrentUri.ToString().Replace("rss.ashx", "default.aspx")));

Es wurde in meinem Fall ein Leerstring an die RSS.NET DLL übergeben, weil ich in den Systemeinstellungen des CommunityServers keine Seitenbeschreibung eingegeben habe.

Abhilfe schafft also momentan nur das Eingeben einer Seitenbeschreibung.
Ich habe den Fehler an Telligent weitergegeben. Ich bin gespannt, ob der Fehler noch behoben wird, da seit kurzem die Version 2008 verfügbar ist.

Kick it on dotnet-kicks.de

dotnet-forum.de mit eigener Mitgliederkarte

Saturday, April 12, 2008 7:49:22 PM (Mitteleuropäische Sommerzeit, UTC+02:00)

Aus vielen Internetforen kennt man Mitgliederkarten, in denen zu sehen ist, wo welches Mitglied zu Hause ist. So kann man auf einen Blick erkennen, wer in der Nähe wohnt.
Für das dotnet-forum.de setze ich den CommunityServer ein, eine hervorragende Community Plattform mit sehr vielen netten Features.
Leider gibt es keine "Membermap".
Auf externe Dienste, wie zum Beispiel Frappr, wollte ich nicht zurückgreifen, weil sie kaum konfigurierbar und meiner Meinung nach, auch nicht schön sind.
Solch eine Karte kann mit bestehenden APIs relativ schnell entwickelt werden. Ich habe mich als Grundlage für die Microsoft Virtual Earth API entschieden. Schnell musste ich allerdings feststellen, dass die Microsoft Klassen und Methoden viel zu langsam sind um einige hundert User auf der Karte darzustellen. Dies liegt daran, dass die komplette Logik auf dem Client läuft. Wenn z.B. 200 User dargestellt werden sollen, muss das clientseitige JavaScript bei jedem Seitenaufbau alle geografischen Koordinaten bei Microsoft abfragen. Das dauert bei 200 Usern und einer schnellen Internetverbindung etwas über 20 Sekunden.

Ich habe mich entschieden, die geografischen Koordinaten auf dem Server in der Datenbank zu speichern. Dank des ASP.NET Ajax Frameworks ist es nicht sehr schwer, die Daten im Hintergrund vom Server zu laden.
Wenn ein User seinen Wohnort im Profil ändert oder ein neuer User hinzukommt, holt der Webserver sich nur einmal die neuen Geodaten.

Ich hab zwei weitere Gimmicks implementiert: Jeder User wird mit einem farbigen Pushpin angezeigt Dabei werden User, die gerade online sind, mit einem grünen Pin gezeigt. Der eigene Pushpin ist rot, alle anderen sind blau.
Die benötigten Daten frage ich mit Hilfe der CommunityServer API ab.
Weiterhin habe ich eine Umkreissuche implementiert, auch hier ist wieder die komplette Logik auf dem Server.

Die Karte ist ab sofort online und ist für jedes registrierte Mitglied des dotnet-forum.de nutzbar.
Es können natürlich nur Mitglieder angezeigt werden, die auch einen Wohnort im eigenen Profil angegeben haben. ;-)

UsermapIII
Die Umkreissuche

UsermapIV 
Mouseover Effekt

Kick it on dotnet-kicks.de

{smartassembly} testen und Lizenz bekommen

Monday, April 07, 2008 8:36:42 PM (Mitteleuropäische Sommerzeit, UTC+02:00)
{smartassembly} ist ein Entwicklungswerkzeug zum Optimieren und Schützen (Obfuscator) von .NET Assemblys.

Einige Keyfeatures sind:
-    Anwendung verkleinern durch Entfernen von ungenutztem Code
-    Alle zusätzlich eingebundenen DLLs in der Anwendung integrieren
-    Sehr gute Code Obfuscation
-    Ausschließung von nicht abgeleiteten Klassen (ClassSealing)
-    Strings unlesbar machen

Mehr Informationen über {smartassembly} gibt es auf der Webseite des Herstellers.

Die Firma Cachupa bietet 2 Lizenzen für dotnet-forum.de Mitglieder kostenlos an.

Was zu tun ist, um die Lizenz zu bekommen, kann im Forum nachgelesen werden.

Nachtrag:
Der erste Testbericht ist online: zum Artikel
Der zweite Testbericht ist online: zum Artikel

Zum Forum...

Kick it on dotnet-kicks.de

Gratis XML.NET Buch

Thursday, March 27, 2008 9:49:29 AM (Mitteleuropäische Zeit, UTC+01:00)

Der Online-Buchversand Terrashop bietet allen .NET-Forum.de - Usern das Buch

XML und Web Services mit dem .NET Framework kostenlos an.



Das Angebot ist bis zum 1.Mai 2008 gültig.

Es fallen lediglich Versandkosten in Höhe von 3,95€ an.
Ab einem Bestellwert von 20,- € ist die Bestellung versandkostenfrei!

Hier geht es zur Aktion.

Kick it on dotnet-kicks.de

dotnet-forum.de Individualisieren

Tuesday, March 25, 2008 10:54:02 PM (Mitteleuropäische Zeit, UTC+01:00)

auf der Startseite des dotnet-forum.de ist folgendes zu lesen: Es werden alle Bereiche abgedeckt. Von der Entwicklung von Clientanwendungen, Webapplikationen,  bis zur Add-In Entwicklung für das Visual Studio.“

Diese Fülle an Themen bringt leider einen kleinen Nachteil mit sich, die Anzahl der Unterforen (zur Zeit 30), ist sehr hoch, dies kann schnell unübersichtlich werden. Vermutlich interessieren sich nicht alle Forenmitglieder für alle Themen bzw. Unterforen.

Die Foren – Software bietet hier ein sehr nützliche Funktion, das Individualisieren des Forums.

Durch einen Klick auf diesen unscheinbaren Link

IndividualisierenI

gelangt man zu einer sehr komfortable Oberfläche (Ajax) mit der man einzelne Unterforen ein und ausblenden kann.

IndividualisierenII

So können z.B. Webentwickler alle Foren ausblenden die sich mit der Entwicklung von Windows Clients beschäftigen.

Praktische Sache!

Kick it on dotnet-kicks.de

Mitschnitte des Launch Events online

Friday, March 14, 2008 2:28:42 PM (Mitteleuropäische Zeit, UTC+01:00)

Im Februar wurden die 3 Produkte Visual Studio 2008, SQL Server 2008 & Windows Server 2008 in Frankfurt vorgestellt.
Wer nicht dabei sein konnte oder sich einige ausgewählte Sessions nocheinmal ansehen möchte, kann dies jetzt tun.

Diese exklusiven Mitschnitte folgender Vorträge stehen ab sofort unter diesem Link bereit:

-   Keynote
-   Neu in Visual Studio 2008
-   SQL Server 2008
-   Überblick Windows Server 2008 Management
-   Internet Information Server 7
-   Virtualisieren mit dem Windows Server

Kick it on dotnet-kicks.de

Geburtstagsgewinnspiel: Die Gewinner stehen fest.

Monday, February 25, 2008 7:28:53 AM (Mitteleuropäische Zeit, UTC+01:00)

Zwei Wochen lang war Zeit abzuschätzen, wie viele Codezeilen auf .NET-Snippets.de gespeichert waren.
Stichtag war der 10. Februar. An diesem Tag waren 754 Snippets gespeichert. Diese 754 Snippets bestanden insgesamt aus 38504 Zeilen Code.

Zu diesem Ergebnis kamen gleich zwei User: ZiMD und Chrysler.

ZiMD war mit seinem Tipp etwas schneller und erhält den ersten Preis, ein Windows® Vista Ultimate® (NFR).

Der zweite Preis, eine Microsoft® LifeCam NX-6000, geht an Chrysler.

Tim lag mit seinem Tipp nur um eine Zeile daneben und belegt den dritten Platz, er erhält das Buch Hunting Security Bugs.

Herzlichen Glückwunsch an die Gewinner!

Die aktuelle Anzahl der Codezeilen ist ab sofort auf .NET-Snippets.de zu sehen.

LinesOfCode

Kick it on dotnet-kicks.de

Csharp-now.de goes dotnet-forum.de

Sunday, February 17, 2008 11:17:45 PM (Mitteleuropäische Zeit, UTC+01:00)

Ab sofort ist das dotnet-forum.de auch unter der Domain csharp-now.de erreichbar.
Ich würde mich freuen, die ehemaligen Mitglieder von Csharp-now.de im dotnet-forum.de begrüßen zu dürfen.

Kick it on dotnet-kicks.de