Rotate Left/Right

Tja.. jetzt ist es mir passiert. Shiften reicht mir nicht, ich brauche ein Rotate! In der .net Klassenbibliothek hab ichs nicht gefunden. Also mal fix selber überlegt und umgesetzt.

[code=c#;Integer Rotate Left/Right]
public static class Utils
{
///

/// Rotates the given int value right by the specified number of bits.
///

/// The integer to rotate
/// The number of bits to rotate
/// Returns the given int rotated right side by the given distance
public static int RotateRight(int i, int distance)
{
uint num = (uint)i;
int length = (sizeof(int) * 8);
distance = distance % length;
uint add = num << (length – distance);
num = num >> distance;
num = num | add;
return (int)num;
}

/// <summary>
/// Rotates the given int value left by the specified number of bits.
/// </summary>
/// <param name="number">The integer to rotate</param>
/// <param name="distance">The number of bits to rotate</param>
/// <returns>Returns the given int rotated left side by the given distance</returns>
public static int RotateLeft(int i, int distance)
{
    uint num = (uint)i;
    int length = (sizeof(int) * 8);
    distance = distance % length;
    uint add = num >> (length - distance);
    num = num << distance;
    num = num | add;
    return (int)num;
}

}
[/code]

Das ganze ist auch auf dotnet-snippets.de zu bewundern, und zu bewerten. 🙂

Gimme ECMAScript (JavaScript) Library

Durch Zufall bin ich kürzlich auf eine JavaScript Library gestossen. Bis jetzt schaut sie ganz nett aus, werde sie mal bei meiner aktuellen Tätigkeit verwenden und schauen ob sie sich bewährt.

Gimme

Gimme is a ECMAScript (or Javascript if you prefer) library designed to make working with "everyone's favorite scripting language" fun again!

Es existiert auch eine Promo-Seite mit ein paar Beispielen.

MonsterID HttpHandler – Done

English reader? Stay tuned, just a short german intro.. the rest of this posting is written in english (more or less.. 😉 ).

So, ich mach hier kurz mal eine deutsche Einleitung, der Rest des Postings wird in Englisch gehalten sein, weil vielleicht ein paar Leute vorbei schauen werden die kein Deutsch können. 😉

Mad Kristensens wrote a nice blog entry about cool projects that don't exist, and one of those projects is an ASP.net HttpHandler implementation of MonsterID. (look here, and here)

So I tried it, and voila here it is. =)

Just copy MonsterID.cs into your AppCode folder, the MonsterID folder into AppData, register the HttpHandler in your web.config (or just use the MonsterID.ashx file provided) and use it like that:

<img src="MonsterID.ashx?seed=[whatyoulike]&size=[size]" />

Me:

Download MonsterID ASP.net HttpHandler

He said it should be Open Source. So let it be. 😉 Mads distributes his blog engine under the Ms-PL, so I thought I will use this license too..

Comments on implementation etc are welcome.. 🙂

I hope it's good enough and free of errors,..

Foor a quick look at your monster I will provide a demo page soon..

Edit
Demo page online.. 🙂

Edit – 01.08.07
Added little security fix. (size limit.. ;-))

Edit – 03.08.07
Changed the call of Random.Next – Limit was too low..

Warum blogge ich so wenig?

Es ist ein Fluch! Immer wieder nehme ich mir vor mehr zu bloggen, mache es dann aber doch nicht..
Jetzt ists mal wieder soweit. 🙂 Ich blogge mehr, und jetzt fange ich damit an.

Damit ich meiner Software-Kategorie auch mal wieder ein wenig Content verschaffe gleich mal ein paar Software-News.

  • Es gibt die neue Visual Studio 2008 Beta 2 zu beziehen!

    Hab mir auch schon die Pro Version heruntergeladen. 3 GB Image.. hrhr. Bin noch nicht viel zum Testen gekommen, aber der Umstand, dass man endlich die .net Version unter der man entwickeln will auswählen kann ermöglicht es mir einfach mal in meine aktuellen Projekte mit VS08 reinzusehen.. Ich werde euch (hoffentlich) auf dem Laufenden halten.

  • Der Norbert produziert auch fleissig Software. Zu seinem Backup Tool gesellt sich nun ein kleiner, feiner Desktop Cleaner.

    Wer es schafft einen Blick auf meinen Destop zu werfen, wird feststellen, dass ich so einen auch gut brauchen könnte. Mal sehen ob ich die Zeit dazu finde.. 😀

  • Da in die Software-Kategorie nicht nur Programmier-Tools passen erzähle ich auch gleich von einer "wiederentdeckung". Ich habe durch den Markus wieder zu last.fm gefunden. Warum wieder? Weil ich schon seit 2003 dort registriert bin. Richtig benutzt habe ich es allerdings nie.

    Diese Woche hab ich aber gleich mal die Software runtergeladen, und mit freuden festgestellt, dass es auf Anhieb mit foobar2000 funktioniert.

    Mein last.fm Profil

  • Achja.. das hätt ich fast vergessen. Für die Lösung meines Website-Chaos seh ich mir gerade ein kleines CMS an. Ist ganz interessant wie ich finde. N2 CMS.

Tjo, das waren mal paar News aus der Welt der Software die mich so ein wenig umgibt. 😉 Eigenproduktionen gibts zwar auch, nur leider häng ich mich meistens nicht so dran, deswegen dauerts ein Weilchen bis da mal was herzeigbares rauskommt.

Mittlerweile gibts aber auch schon wieder zuviele Sachen die ich alle in einen veröffentlichbaren Zustand bringen möchte. Aber schön ist, dass zumindest schon eine Sache am lebenden Objekt getestet wird. Mein Sendeplan den Ihr unter fuubidoo.com bestaunen könnt, wird erfolgreich unter beim pRODIA Webradio eingesetzt.

Dieser gehört übrigens zu den Projekten die mal das Licht der Welt erblicken sollen. In welcher Form genau wird man noch sehen.. Die restlichen Projekte meiner unendlichen Liste gehören auch alle eigentlich irgendwie dazu.. Mal sehen wie es in den nächsten Wochen weitergeht.. 🙂

Für heute ist aber mal Schluss mit Bloggen! Werd mich zu meinem Bettzeug gesellen. 😉