Brød med sesamfrø

Jeg har lenge bakt med sesamfrø, men da har jeg blandet sesamfrøene i deigen. Det smaker jo ekstra godt når sesamfrøene er litt ristet, men når jeg har strødd dem oppå, har det meste drysset av etter steking. Det viste seg at jeg måtte gå litt mer drastisk til verks. Når brødene er knadd ut, fukter jeg overflaten litt (med speltbrød er det ikke nødvendig, de er klissete nok i seg selv) og ruller brødene i sesamfrø.

De utbakte brødene blir litt fuktet og så rullet i sesamfrø.

De utbakte brødene blir litt fuktet og så rullet i sesamfrø.


Dermed sitter frøene godt gjennom heving og steking.
Ferske brød med ristede sesamfrø

Ferske brød med ristede sesamfrø

Posted in Mat | Comments Off on Brød med sesamfrø

Arduino thermometer / hygrometer

I am using an arduino uno bought in a kit with a LCD/button shield and a DHT11, both parts bougth from dealextreme, although also available from a lot of other places.

The DHT11 is connected to the arduino:
* pin 1 (signal) – digital 2
* pin 2 (Vcc) – 5v
* pin 3 (gnd) – gnd

Connection

DHT22 break out board connected to arduino uno


(The cables are taken from a discarded PC cabinet)

Then the display is put on top and the sketch is downloaded:

Complete arduiono / DHT22 termometer / hygrometer

Complete arduiono / DHT22 termometer / hygrometer

sketch:

#include "DHT.h"
#include <liquidcrystal.h>
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);

#define DHTPIN 2 // what pin we're connected to

// Uncomment whatever type you're using!
#define DHTTYPE DHT11 // DHT 11
//#define DHTTYPE DHT22 // DHT 22 (AM2302)
//#define DHTTYPE DHT21 // DHT 21 (AM2301)

DHT dht(DHTPIN, DHTTYPE);

void setup() {
lcd.begin(16,2);
dht.begin();
}

void loop() {
// Reading temperature or humidity takes about 250 milliseconds!
// Sensor readings may also be up to 2 seconds 'old' (its a very slow sensor)
float h = dht.readHumidity();
float t = dht.readTemperature();

// check if returns are valid, if they are NaN (not a number) then something went wrong!
if (isnan(t) || isnan(h)) {
lcd.setCursor(5,1);
lcd.println("Failed to read from DHT");
} else {
lcd.setCursor(5,1);
lcd.print(h);
lcd.print(" %");
lcd.setCursor(5,0);
lcd.print(t);
lcd.print(" *C");
}
}

The LiquidCrystal library should come with the arduino ide, the DHT library can be downloaded from http://playground.arduino.cc/Main/DHTLib.

Posted in arduino, Diverse | 1 Comment

Postgresql – handling bytea data through php

postgres 9.1 / php 5.3.10 on ubuntu.

The combination of postgres and php has not made it easy and intuitive to handle blob-data. I tried first to use the large objects, as that seemed to be the easiest way, but the bytea turned out to be the best solution – having read up a few places, I have found this to work, at least for not-too-large-files where the size “too large” has to be determined for the actual application. (a few megs should hardly ever be “too large”)

I have a table defined as

create table blobstore(
   id serial primary key,
   doc varchar,
   blob bytea);

the following php-code allows storage and reading of images in this table
NOTE: This is a “proof of concept”-script. For real use, more checking must be added.

<?php
  $dsn = 'pgsql:dbname=test;host=127.0.0.1';
  $user = 'user';
  $password = 'password'; 
   // these variables must be set to match the actual connection
  try {
    $dbh = new PDO($dsn, $user, $password);
  } catch (PDOException $e) {
    die('Connection failed: ' . $e->getMessage());
  }
  $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

// Stores a file:
  if($_GET['file']){ 
  $filename=$_GET['file']; // Normally, the file will probably be uploaded, but that's another howto  ;-)
  $data = bin2hex(file_get_contents($filename)); // This may be a problem on too large files
  try{ 
    $sql="insert into blobstore (doc,blob) values('test',?)";
    $sqlh= $dbh->prepare($sql);
    $sqlh->execute(array($data));
  }
  catch(Exception $e){
    die($e->getMessage());
  }
  print("<p>Done</p>");

}
// reads a file out of the database:
if($_GET['id']){
  $sql="select blob from cddoc where id=?";
  $sqh=$dbh->prepare($sql);
  $sqh->execute(array($_GET['id']));
  $data=$sqh->fetchAll(PDO::FETCH_NUM);
  $data=$data[0][0]; // print($data) here will just return "Resource id # ..."
  header('Content-Type: image/png'); // must be adjusted accordingly for other file types, maybe filetype stored as a field in the table?
  $data=fgets($data); // The data are returned as a stream handle gulp all of it in in one go, again, this may need some serious rework for too large files 
  print(pack('H*',$data)); // reverses the bin2hex, no hex2bin in my php... ????
}

If this code is stored as e.g. blobtest.php, it can then be called (on a debian or ubuntu system) to store the image (when looking it up in the database it should look like \x38393530346534…)

http://localhost/blobtest.php?file=/usr/share/pixmaps/debian-logo.png

(/usr/share/pixmaps/debian-logo.png is a file that should exist on any debian or ubuntu system, if it does not exist on your system, just modify the url to point to an image file on the system)
To have the image displayed, run

http://localhost/blobtest.php?id=1 (or whatever image you want to restore)

The latter may be used directly in a web-page as

<img src="http://localhost/blobtest.php?id=1" />
Posted in php | Comments Off on Postgresql – handling bytea data through php

Eplekakevariant

En litt grov lite søt eplekake.

2 egg
120 gram sukker (snaut 1.5dl)
90 gram smør
1 dl melk eller fløte
180 gram fin sammalt spelt (eller hvete) (3 dl)
1.5 ts bakepulver
Saft av 1/4 sitron

6-7 epler (ca 700 gram)

kanel / kardemomme og eller koriander

pisk eggedosis av egg og sukker. Hell melken og legg smøret i en gryte og varm opp til smøret er smeltet og melken koker. Hell den kokende blandingen i eggedosisen. Bland sammen mel og bakepulver og rør det inn. Bland inn sitronsaft. Hell i en springform. Skjær eplene i tynne båter og stikk dem ned i røra. (Evt skjær eplene i biter og bland dem inn). Dryss over med litt sukker og kanel, kardemomme eller koriander.

Stekes ved 180-200 grader i ca 30 minutter, evt 160 grader på varmluft. Skjekk med pinne!

Det blir lett litt lutsmak av bakepulverbakst med grovt mel – sitronsaften hindrer dette. Dersom eplene er svært sure, kan sitronsaften kuttes ut.

Posted in Diverse, epler, Mat | 1 Comment

Eplepresselogg 2012

Eplepressingen er igang igjen.

29. september

6 liter juice – hovedsaklig james grieve

6. oktober

6 liter fra james grieve,
6 liter fra torstein

7. oktober

6 liter blanding (hovedsakelig james grieve)

14. okotober

6 liter fra james grieve

… to be continued …

Posted in Diverse, epler | Comments Off on Eplepresselogg 2012

Hvordan lage en flygel-kake

Jeg målte aldri kaken,men den var ca 30 cm bred, 40 cm lang og 6 cm tykk.

To lag langpannesukkerbrød. Lagt vaniljekrem i mellom og skåret til

To lag langpannesukkerbrød. Lagt oppå hverandre og skåret til

Skåret av litt av det øverste laget og lagt i mellom tykk vaniljekrem
Skåret av litt av det øverste laget og lagt i mellom tykk vaniljekrem
Dekket med sjokoladekrem
Dekket med sjokoladekrem
Svarte tangenter av lakris
Svarte tangenter av lakris (nb, bør legges på så kort tid som mulig før kaken skal på bordet,de misfarger kremen litt)

Og – som så ofte når det utvises godt kunstnerisk håndverk i familien, skal jeg ikke ta æren for utførelsen, selv om jeg vel var skyld i noen av de praktiske løsningene…

Posted in Mat | Comments Off on Hvordan lage en flygel-kake

Rikstv – paybacktime!

Jeg er ikke helt sikker på om vi er kunde i rikstv, men de driver nå og ringer fra tid til annen, jeg slenger på røret, andre i familien lar seg overtale, men sjelden har vel telefonsalg vært mer mislykket for selgeren. Noen synes det å betale x kr i måneden for flere kanaler med en gratis ny digitalmottaker på kjøpet og hjelp til oppkobling hørtes bra ut – vel jeg må vel innrømme at jeg i mange tilfeller regnes som en ikke-TV-fundamentalist.

Mottakeren kom i posten og noen dager etter kom montøren. Etter å ha svimet omkring i hagen med måleinstrumenter som en annen lisenskontrollør måtte han bite i det sure eplet, nei, her var mottakerforholdene for dårlige, vi kan faktisk ikke ta inn det vi skulle betalt for. Montøren måtte returnere med uforrettet sak og mottakeren ble returnert.

Hevnen er søt -får se om de klarer å få oss ut av systemet på en bedre måte enn sist.

Posted in Diverse | Comments Off on Rikstv – paybacktime!

R – barplot with error-bars

I have not found any simple way to make a barplot with error-bars in R, so I had to write a script for it:

errorbarplot< -function(data,error,ylab,xlab,main){
  palette(c('gray75','grey50','grey25','white'))
  mar=par()$mar
  par(xpd=T, mar=par()$mar+c(0,0,0,8)) # Makes a bit space to place the legend
  maxy=max(data+error)*1.05            # Space enough for the max error + some space
  bp<-barplot(data,beside=TRUE,ylab=ylab,xlab=xlab,main=main,ylim=c(0,maxy),col=c(1,2))
  segments(bp,data-error,bp,data+error) # Draws the vertical lines in the error plot   
  ew=(bp[2,1]-bp[1,1])/2                # Sets the width of the error bars as half the bare
  ew=ew/2
  segments(bp-ew,data-error,bp+ew,data-error)
  segments(bp-ew,data+error,bp+ew,data+error)
  legend(max(bp)+1,maxy,rownames(data),fill=c(1,2))
  par(mar=mar)                           # Resets the width of the plotmargins. 
}

This is called with a data set like: (It may of cource be produced other ways, just as long as you end up with one data matrix and one error-matrix)

rn=c('Aa','Bv','La','Pap','Sg','Vm','Ac','Ao','Af','Fr')
li=c(99.9,116.1,291.8,98.5,33.7,142.9,5.4,13.8,3.5,74.9)
sh=c(26.1,254.9,252,77.6,62.7,147.4,0,17.6,0.4,54.8)
seli=c(9.1,13.3,73.4,10.5,5.9,40.2,1.8,5,1.7,8.7)
sesh=c(7.7,84.6,54.2,4.4,11.3,17.4,0,13.7,0.2,3.8)


dimnames=list(c('Something','Something else'),rn)
data=matrix(c(li,sh),nrow=2,byrow=TRUE,dimnames=dimnames)
error=matrix(c(seli,sesh),nrow=2,byrow=TRUE,dimnames=dimnames)
ylab=expression(paste(alpha,'something'))
main='Main title'
xlab='X-label'
errorbarplot(data,error,ylab,xlab,main)

A bar plot with errorbars - made in R

Posted in R | Comments Off on R – barplot with error-bars

På tide å avslutte denne dagen

På veien hjem var bussen blitt over en time forsinket på grunn av kaos med kongejubileum i sentrum, så regnværet hadde gitt seg litt til jeg måtte gå av, men det bøtta rimelig godt ned allikevel…. Men, etter å ha blitt frastjålet lommeboka litt tidligere i dag, så var det å måtte henge jakka til tørk da jeg var vel hjemme ikke så ille. Helt klassisk opplegg med folk som dytter så mye omkring på trikken at man må slite med å holde seg på beina for å ikke dette oppå de som står i nærheten… Men et par hundre kroner, og en liten bunke med kort kan også erstattes. Det som virkelig ødela denne dagen var nyhetene på jobben om at vakre, stilige, flotte, sterke Anne Lene er diagnostisert med langtkommen lungekreft. og da kan det være det samme med forsinkede busser, gjennomvåte klær eller tapte penger (og medfølgende pes med bank og andre).

Hva skal man ellers si til sånt?

Tror jeg går og legger meg…

Posted in Diverse | Comments Off on På tide å avslutte denne dagen

Speltscones

Svært enkle og raske brød uten gjær.

8-9 dl fin sammalt spelt (fint sammalt mel inneholder det samme som grovt sammalt, bare mer knust)
1/2 ts salt
4 ts bakepulver
100 g smør
eventuelt 2 egg
snaut 4.5 dl surmelk (eller søt) (se i oppskriften)

Kan selvfølgelig også bakes med hvete,

Bland mel, salt og bakepulver, bland i smøret og kna eller skjær det sammen til alt er blandet. Pisk eggene, bland sammen pisket egg og melk så det til sammen blir 4.5 dl (eller bare bruk 4.5 dl melk hvis man vil unngå egg). Rør egg-melk blandingen raskt sammen med melblandingen. La gjerne deigen stå en stund (jeg blander det ofte sammen på kvelden og lar deigen stå i kjøleskap over natten og baker ut neste morgen). Sett ut sconesene med skje på smurt plate eller plate med bakepapir.

Stekes ved ovn forvarmet til 250 grader (ikke varmluftssteking, dvs i så fall må temperaturen være lavere, ca 225 grader og ovnen må da også forvarmes) i ca 12 minutter.

Posted in Mat | Comments Off on Speltscones