Transparent 1 x 1 pixel billede i ren markup

Nogle gange er det ønskværdigt at bruge en 1x1 pixel transparent billede som fx placeholder i en Javascript-baseret web-app. Man kan selvfølgelig vælge at have en fysisk .PNG eller .GIF liggende til formålet, men det betyder også at man så har en ekstra fil at skulle rode rundt med - plus det faktum, at billedet genererer et ekstra HTTP-request.

I stedet kan et så lille billede, som der her er tale om, indlejres direkte i HTML-markuppen således:

<img src="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==" />


Tags:

Adobe Edge Fonts Browser

Coming across the new initiative by Adobe and Google to further promote the use of webfonts, I got rather frustrated that the Adobe website does not provide even a remotely useable way of previewing the available fonts. They want me to use either Adobe Edge Code or Adobe Muse to simply view the fonts in a list?! What the ...?!

Not willing to let frustration ruin an otherwise cool thing, I just used a few hours to pull together a little tool allowing you to preview all the available Adobe Edge webfonts in various sizes and with a single click get the required Javascript code to use a font on your website.

The quick tool was build using YUI and (of course) Bootstrap for the UI looks.

Enjoy the first version her: www.usewebfonts.com

Additional favorites and hate lists coming soon! Smile

Tags: , ,

Permanent redirect IIS

Ønsker du at skifte domæne på et website og automatisk lave 301-redirects fra det gamle til det nye domæne (eller fra domain.com til www.domain.com) kan det gøre via .NET kode, men kan også gøres elegent direkte på IIS'en (IIS 7).

Opret et ekstra site med det gamle domæne (eller dit primære domæne uden www.).

Åben Redirect Modulet:

Og udfyld med dit primære domæne samt det vigtigste:  $V$Q - umiddelbart efter domænenavnet. Bemærk, der skal ikke være hverken mellemrum eller / efter domænenavnet. 

$V$Q tager den oprindelige URL og fjerner hostnavnet ($V) og tilføjer den oprindelige querystring ($Q).

En ekstra detalje for at URL'er med + i adressen også virker, er at tillade double-esacping. Det gør du i åbne Request Filtering modulet:

Gp til fanebladet "Hidden Segments" og klik på "Edit Feature Settings ..."

Og check af i "Allow double escaping":

Done!

Tags: , , ,

RegEx søg/erstat i Visual Studio 2011

I Visual Studio 2011 har Microsoft valgt at skifte til en mere konventionel RegEx motor i Søg/Erstat-dialogen, så den fungerer på samme måde som i .NET.

Det betyder så, at dette eksempel ikke længere fungerer i VS 2011.

Den grundlæggende forskel er, at der nu benyttes () og ikke {} til gruppering og $ i stedet for \ i replace-delen. Eksempel? Ja, tak!

Tidligere eksempel vil i VS 2011 se således ud:

Som søgekriterier bruger vi dette udtryk/mønster:

name="(.*)" value="(.*)"

Erstat/replace udtrykket skal så se således:

name="$2" value="$1"

Tags: ,

Generisk object value i LINQ database

Ind i mellem kan man have behov for at kunne differentiere i sin kode, hvilket database-felt man ønsker en værdi fra; fx hvis man har et felt pr. sprog ("col_dk", "col_en", "col_de" osv.) og vil have værdien afhængig af det aktuelle domænenavn. Det kan også være at du har en tabel med at antal kolonner, hvor du ønsker at traversere hver enkelt ("col_1", "col_2", "col_3", "col_4", osv.)

Med Subsonic er det nemt ved hjælp af .GetColumnValue(), men noget tilsvarende findes ikke umiddelbart i LINQ.

Løsningen er lidt klodset, men virker dog:

string myValue = instance.GetType()
.GetProperty("some-computed-column-name")
.GetValue(instance, null).ToString();

I ovenstående er instance en enkelt database-record, hvor vi finder værdien i en kolonne med et navn angivet i form af en string ("some-computed-column-name").

Lidt mindre klodset bliver det med en static function som denne:

public static object GetPropertyValue(object obj, string propertyName)
{
    return obj.GetType().GetProperty(propertyName).GetValue(obj, null);
}

Tags:

Kokossnitter (aka kakaosnitter)

Bagerens mørke kokossnitter smager på de gode dage fantastisk, men på de dårlige kan det desværre også være en tør og kedelig oplevelse. Derfor er det jo oplagt at lave dem selv.

Efter lige Googling fandt jeg denne opskrift:
http://www.madopskrifter.nu/Opskrifter/Kokossnitter.opskrift?0=10088

Udgangspunktet i opskriften er 30 styk, hvilket for de fleste nok er lidt i overkanten, så jeg valgte at "nedskalere" til 8 styk. Det giver nogle "skæve" mængder, men hvad værre er; dejmængden passer langt fra til mængden af fyld (giver mere end dobbelt så meget dej som nødvendigt).

Her er så min version.

8 stk.

Du skal bruge:

  • 200 g mel
  • 50 g flormelis
  • 125 g smør
  • 1 tsk vaniliesukker
  • 1 æg
  • 125 g kokosmel
  • 250 g sukker
  • 25 g kakao
  • 3 æggehvider
  • Ca. 50 g hindbærmarmelade

Sådan gør du:

Mel, flormelis og vaniliesukker blandes. Smør smuldres i til det har konsistens som grove brødkrummer (brug evt. en gaffel så du ikke får varmet smørret for meget op). Saml dejen med ægget til en glat kugle og sæt på køl i 30-60 minutter.

Rul den kolde dej ud til et rektangel på 20 x 30 cm. Læg bagepapir i bunden af en form af tilsvarende størrelse, og læg dejen heri. Bag bunden ved 225 grader i ca. 6-8 minutter til den er let gylden i kanterne. Lad bunde køle af i ca. 10-15 minutter.

Kom kokosmel, sukker, kakao og æggehvider i en kasserolle og varm det op til det smelter godt sammen til en tyk "kokos-kakao-grød" - tilføj evt. 1-2 spsk vand hvis det virker for tørt.

Når bunden er kølet af fordeles hindbærmarmelade i et tyndt lag på bunden. Kom kokos-kakao-massen ovenpå og fordel det så jævnt som muligt og således at der ikke er "huller". Bag i yderligere 20-25 minutter. Den skal virke sprød på toppen, men samtidig give lidt efter; så ved du at den stadig er lækker og "saftig" i midten.

Lad kagen køle af og skær ud i 8 store snitter - eller flere mindre, hvis du er til det :-)

Tags:

Første LiteWerx demo i 10 år

Så kom dagen, hvor vi i \\\ LiteWerx. endelig fik udgivet en ny demo. Og for første gang ikke en animation, men derimod en real-time-demo.

Nogle hektiske uger og kreativitet gjorde, at Ruben og undertegnede kunne deltage med ANAEMIA på TRSAC 2001.

Demoen udnytter nyeste webteknologier som HTML5 og WebGL og kører således i de nyeste browsere, fx Google Chrome.

Du kan se demoen online her: http://litewerx.dk/anaemia

Pasta penne med kødboller, spicy tomatsauce, grillede løg og peberfrugter

Siden jeg første gang spiste på "Ask Italian" i Brighton har jeg været forelsket i deres ovnbagte "RIGATONI DI MANZO PICCANTE" - en fantastisk velsmagende kombination af små oksekødboller, penne (Rigatoni), tomat, ost m.m.

Jeg har siden da forsøgt at replikere retten i mit eget køkken, og kan kun på det varmeste anbefale at prøve at gøre kunsten efter :-)

(Til 2 personer - ca. 60 minutter)

Du skal bruge:

  • 1 rød/orange peberfrugt
  • 1 rødløg
  • 1 finthakket løg
  • 1 gulerod, finthakket
  • 1 halv stilk bladselleri, finthakket
  • 1 fed hvidløg, finthakket
  • 1 dåse hakkede flåede tomater
  • 200 g hakket oksekød
  • 1 æg
  • Ca. 2 spsk mel
  • Olivenolie
  • 200 g paste penne (Rigatoni)
  • ½ tsk tørret hakket chili
  • ½ tsk tørret timian
  • ½ tsk tørret basilikum
  • Ca. 4 spsk revet parmesan
  • 1 kugle frisk mozarella skåret i skiver

Sådan gør du

Halvér og fjern kernerne fra peberfrugten. Pil rødløgget og skær det i halve. Bag begge dele i ovnen ved 200 grader ca. 30 minutter mens du forbereder resten.

Tomatsauce

Svits løg, gulerod, selleri og halvdelen af hvidløget i rigeligt olivenolie i ca. 5 minutter. Tilsæt chili samt halvdelen af timian og basilikum. Tilsæt tomaterne samt salt og peber. Skru ned og lad simre.

Kødboller

Rør oksekødet sammen med æg, det finthakkede løg, resten af hvidløget, timian og basilikum, ca. 1 spsk mel samt ca. 1 spsk revet parmesanost samt salt og peber. Rør grundigt alle ingredienserne sammen indtil farsen er meget sammenhængende. Rul farsen til små kødboller - brug en stor teskefuld fars til hver kødbolle, så der bliver ca. 15 kødboller i alt. Kødbollerne rulles lettest ved at have lidt mel på hænderne. Slut med at ryste ovenskydende mel af, men lad endelig lidt sidde tilbage, da det sikrer at de bliver faste og sprøde når de steges.

Kog pastaen i en gryde med rigeligt kogende vand og rigeligt salt ca. 8 minutter.

Kødbollerne steges gyldne i olivenolie ca. 5-7 minutter og vendes jævnligt.

Samling

De bagte løg skæres i mindre stykker. Skindet fjernes fra peberfrugterne og "kødet" skæres i strimler. I et ildfast fad blandes den kogte pasta med rødløg og peber. Tomatsaucen tilsættes og blandes forsigtigt i. Kødbollerne fordeles i pastablandingen. Mozarella-skiver fordeles over fadet og der drysses yderligere med ca. 1 spsk parmesan.

Retten bages i ovnen i ca. 15 minutter eller indtil mozarellaosten er gylden og smeltet.

Serveres rygende varm toppet med resten af den revne parmesan.

Tags:

Decode UTF8 i URL'er

Efter at have kæmpet med dette i laaang tid, viser det selvfølgelig at løsningen ligger lige foran fødderne:

HttpUtility.UrlDecode(Request.Url.AbsoluteUri)
Helt uundværdligt i forbindelse med fx URL-rewriting når du gerne vil have danske tegn i URL'erne.

Tags:

Chokoladesmør: Syndigt og ufatteligt godt

Jeg er helt sikkert ikke den eneste der er vokset op med en forkærlighed for Nutella. Det er ingen hemmelighed, at det næppe er verdens sundeste "pålæg", men godt er det og på et rundstykke i weekenden går det da nok også ...

Men hvorfor nøjes? Kunne man ikke lave en "hjemmelavet Nutella"? og måske endda få det til at smage endnu bedre? Jo!

I min barndom var det ren lykke når min morfar lavede "chokoladesmør" og minderne om, hvor godt det smagte, blev da heller ikke gjort til skamme da jeg fik gravet opskriften frem. Dette er simpelthen et helt igennem fantastisk produkt at smøre på brødet, når det skal være ekstra lækkert - og så er det oven i købet super nemt at lave.

Du skal bruge:

  • 100 gram mørk chokolade
  • 100 gram flormelis
  • 100 gram smør
  • 1 æg
  • ½ dl mælk
Hele molevitten kommes i en kasserolle og varmes/smeltes ved middel varme under jævnlig omrøring. Når det er tæt på kogepunktet og helt jævnt sigtes cremen over i en skål for at fjerne eventuelle små klumper. Hældes på glas og stilles straks på køl i minimum 12 timer, hvorefter det har en smuk "smørbar" konsistens.

Husk at købe et nyt sæt ingredienser straks, da du helt sikkert vil lave en ny portion når den første er spist :-)

 

Tags: