Archives 2005 - 2019

Batch convert Gimp XCF files to JPEG

published Feb 05, 2013 01:48   by admin ( last modified Feb 05, 2013 01:48 )

Works like a charm!

 

A little while ago I wrote this very simple Gimp script to do a batch conversion of all .xcf files in a directory into .jpg files of a moderate quality. To install just copy the below code into a suitable in your gimp profile “scripts” directory, e.g.


Read more: Link - Simple XCF to JPEG Batch Conversion Script | Dan's Outsourced Memory


Letting varnish always serve out cached content, and update its cache in the background

published Jan 31, 2013 05:35   by admin ( last modified Apr 12, 2014 02:29 )

Update 2014-04-12

This function now seems to be in the new varnish 4. From the release notes:

Background (re)fetch of expired objects. On a cache miss where a stale copy is available, serve the client the stale copy while fetching an updated copy from the backend in the background.

If you cache content in Varnish, it serves out pages really quickly. But when the cached object expires, the next visitor has to wait for the slow back end, and then the object gets cached once again.

What about if I'd like Varnish to always serve out cached content even when it has expired and then silently - in the background - fetch a new copy for its cache? In that way no visitor ever has to wait for the back end.

Update 2013-10-19:

See the link near the end of this blog post for what seems to be a working, but complex solution (or better, just update to varnish 4.x).

This holy grail feature is called "stale-while-revalidate". It does not currently seem possible in straightforward way, from the linked documentation (my boldface):

With this exercise, you should see that as long as the content is within the regular TTL, there is no difference. Once the TTL expires, the first client that asks for the content should be stuck for 15 seconds, while the second client should get the graced copy.


However, you can trigger an external http client when the time comes close:

Varnish trick: Serve stale content while refetching | Blog of Lasse Karstensen

...that is kludgy, though.

Read more: Link - Saving a request — The Varnish Book


Taleb i Reason.tv, saker som inte står i "Antifragility"

published Jan 29, 2013 01:57   by admin ( last modified Jan 29, 2013 01:57 )

Nicholas Nassim Taleb har låtit sig intervjuas i Reason.tv (finns på Youtube)

 

och han nämner några saker som inte står i hans nya bok Antifragility:

  • Taleb ser sig själv inte som nyliberal (trots att han stöttade det nyliberala presidentalternativet i det republikanska primärvalet) utan ser sig som konservativ. Närmare bestämt "vänsterkonservativ". Min uppfattning är att man ur Talebs filosofi kan hämta argument både för liberalism, konservatism och ekologism.
  • Taleb hämtar mycket från antiken, men ser sig själv inte som arvtagare till antikens greker eller araber (Taleb är kristen arab från Libanon, men naturaliserad i USA) utan som arvtagare till romarna.
  • Taleb menar att man inte ska ta lån. Alls. Eller rättare sagt, man kan ta lån i en betydelse som använts i handel väldigt länge: Nämligen något som så vitt jag kan bedöma motsvarar Escrow (en slags deposition medan en transaktion, t ex utväxling av varor, görs klar).
    Istället ska man finansiera saker med equity, vilket i detta sammanhang tycka vara investeringar i andelar. Ta inte lån för att starta eller utöka ett företag, sälj istället andelar som andra kan investera i. Min reflektion är att bolån skulle kunna ses som andelar, men inte i Sverige: Man kan inte inte knalla ifrån ett hus och bli skuldfri med motivationen att banken kan ta sin andel i huset, vilket man kan i USA.
  • Taleb påpekar att när finansvärlden fick enorma mängder pengar inpumpat 2010 så valde de också att ge sig själv enorma bonusar. Taleb förespråkar på ett ställe i intervjun så vitt jag kan bedöma nationalisering av företag som är för stora för att tillåtas gå omkull (too big to fail) om de kommer på obestånd.

What Lightbox clone/ gallery slideshow to use for small screens?

published Dec 23, 2012 10:30   by admin ( last modified Dec 23, 2012 10:28 )


I noticed that the current javascript library used on one site that I take care of, does not do a good job of presenting a lightbox kind of slide show of the gallery images. On smartphones the margins it makes to the right and left make the "enlarged" images smaller than the thumbnails it is supposed to present!. I have looked at demos for a dozen libraries now, and Pirobox seems to do a good job, although I will need to get back with an update once I have implemented it on the site in question.
 

Hello and welcome, this is an advanced version of pirobox, I implemented a few things more than the previous version. One of the most important things is the ability to open any kind of files, from inLine content to the swf files, from simple images to pdf files. Other things are: automatic image resizing and drag and drop.


Read more: Link - Pirobox Extended V.1.0. jQuery plugin


Python decorator to make functions into command line scripts

published Dec 22, 2012 12:05   by admin ( last modified Dec 22, 2012 12:05 )


Command line arguments are generated from the functions' arguments.

Function decorator to quickly turn Python functions into CLIs as we know them.


Read more: Link - epsy/clize · GitHub


Link: A guide to make a half-decent web design

published Dec 21, 2012 04:24   by admin ( last modified Dec 21, 2012 04:24 )



With the above techniques, you can make a site that is starting to look slightly more professional, pretty quickly.


Read more: Link - 24 ways: How to Make Your Site Look Half-Decent in Half an Hour


Link - Tutorial on how to use Clojure for a web project

published Dec 13, 2012 12:46   by admin ( last modified Dec 13, 2012 12:46 )



Building A Clojure REST Service: Part One


Read more: Link - Internistic: Building A Clojure REST Service: Part One


lprm removes jobs from the print queue on Linux

published Dec 10, 2012 11:28   by admin ( last modified Dec 10, 2012 11:28 )

When the GUI applets don't work or have gone into hiding, you can use lprm to clear out the print queue

sudo lprm

will clear out all from the print queue of the default printer, There seems to be more options if you do

man lprm
Fortunately, system administrators and even individuals can remove job from the print queue using the "lprm" command.


Read more: Link - How to Remove Jobs From the Print Queue in Linux | eHow.com


mupdf opened a tricky PDF file

published Dec 07, 2012 08:41   by admin ( last modified Dec 07, 2012 08:41 )

I got sent a tricky PDF file that would not open in:

  • Document Viewer
  • XPDF
  • ePDFViewer
  • gv
  • Chrome's builtin PDF viewer,
  • The Gimp or
  • Okular

on my Ubuntu Linux 12.04. But mupdf opend it fine.

MuPDF is a Free and open source software library written in C that implements a PDF and XPS parsing and rendering engine. It is used primarily to render pages into bitmaps, but also provides support for other operations such as searching and listing the table of contents and hyperlinks.


Read more: Link - MuPDF - Wikipedia, the free encyclopedia


Lista på filmer som jag inte sett

published Dec 07, 2012 04:29   by admin ( last modified Dec 07, 2012 04:29 )

...så många av. Kanske dags att göra det?

 

As good as the original or maybe even better … the finest films taken from books


Read more: Link - The 10 best screen adaptations – in pictures | Film | The Observer


How to add filtering parameters to a Slickback request in Backbone.js

published Dec 05, 2012 01:05   by admin ( last modified Dec 10, 2012 11:48 )

Slickback has an object, Slickback.PaginatedCollection, that you can build a collection from that will not only interface with SlickGrid, but also paginate by adding parameters to the the request to the back end server. Slickback aslo contains a mixin object, Slickback.ScopedModelMixin, that allows you to send arbitrary parameters with the fetch request. The back end can then use these parameters to filter the result. if we start with a Slickback.PaginatedCollection that looks like this:

  var employeesFactory = Slickback.PaginatedCollection.extend({
    model: employee,
    url: '/employees',
  });

Then we can add Slickback.ScopedModelMixin functionality by first mixing it in:

  var employeesFactory = Slickback.PaginatedCollection.extend({
    model: employee,
    url: '/employees',
  }, Slickback.ScopedModelMixin);


However jsut mixing it in will not give us any exposed property where we can specify at run time what filter setting we want. Inorder to do that, an initialize method needs to be in place too:

  var employeesFactory = Slickback.PaginatedCollection.extend({
    initialize: function(){    
    this.extendScope({});
    },
    model: employee,
    url: '/employees',
  }, Slickback.ScopedModelMixin);

extendScope will make an object available at

employees.defaultScope.dataOptions

Instead of {}, extendScope can take an associtive hash-like object too, like {foo:'bar'}

But, now Slickback.PaginatedCollection stopped working, because it wants to run its initialize too, and we just overrode that by writing our own. But help is on the way. From the Backbone.js documentation:

Brief aside on super: JavaScript does not provide a simple way to call super — the function of the same name defined higher on the prototype chain. If you override a core function like set, or save, and you want to invoke the parent object's implementation, you'll have to explicitly call it...

So our final employeesFactory will look like this:

  var employeesFactory = Slickback.PaginatedCollection.extend({
    initialize: function(){    
    this.extendScope({});
    Slickback.PaginatedCollection.prototype.initialize.call(this);
    },
    model: employee,
    url: '/employees',
  }, Slickback.ScopedModelMixin);

Now if we want to add the cgi parameter fab=flum at run time. we do like this:

employees.defaultScope.dataOptions.fab='flum'
Slickback integrates Backbone and SlickGrid, extending Backbone collections to support pagination and filtering ("scoping"), and adapting them to serve as SlickGrid "DataView" objects


Read more: Link - teleological/slickback


Sanitizing SQL input in python

published Dec 03, 2012 05:37   by admin ( last modified Dec 03, 2012 05:37 )

I'm toying with a fictional employees database ontaining 300'000 records as a back-end for a course in backbone.js. I use bottle.py to convert to and from JSON over http, and I needed a way of sanitizing (untaint) what the user sends back to the database. I found this:

 

Note that the placeholder syntax depends on the database you are using.


Read more: Link - bobby-tables.com: A guide to preventing SQL injection in Python


Pipelining in javascript

published Nov 29, 2012 04:29   by admin ( last modified Nov 29, 2012 04:29 )



By using $.flatMap() you also get error handling for free. If the request to fetch a post fails or the request to fetch the post’s author fails the promise that this version of authorForPost() returns will also fail with the appropriate failure values.


Read more: Link - Promise Pipelines in JavaScript


Nicholas Nassim Taleb och sårbarhet

published Nov 29, 2012 02:45   by admin ( last modified Nov 30, 2012 02:43 )

I dagarna kommer Nicholas Nassim Talebs nya bok "Antifragility" ut. Jag har följt hans hemsida och läst några av hans böcker, och jag tror att jag har koll på vad han menar är problemet som behöver rättas till inom många områden, t ex inom finans och ekonomi. Först lite bakgrund:

Världen är inte fysik

Andra världskriget avslutades med två atombomber. Om inte innan så blev det då i alla fall uppenbart vilken makt fysiker hade. Med sina komplexa matematiska modeller kan de förstöra hela städer eller för den delen försörja hela städer med energi.

När ett verksamhetsområde är framgångsrikt och får hög status, så tenderar man att låna terminologi från det området, för att ge ett skimmer av framgång och hög status till vad det nu är man själv håller på med. En gång i tiden var krig ett sådant högstatus verksamhetsområde och från den tiden har vi uttryck som "en person av den kalibern", "skydda min flank" osv. Uttryck som används utanför artilleri och kavalleri.

I och med att fysiker och ingenjörer varit så framgångsrika, så har man inom ekonomi velat pråla med deras lånta fjädrar. Man har använt komplexa matematiska modeller och man har länkat samma system med ett självförtroende som en processingenjör.

Men, alla som har jobbat som ingenjörer eller liknande vet att det mesta här i världen kan man inte kvantifiera och styra. Fysikers och ingenjörers framgång bygger på just den insikten, och en anpassning till den insikten. Man är mycket försiktig med att påstå saker, och de system som man bygger i ingenjörers fall, är testade med rejäla säkerhetsmarginaler.

Finansvärldens problem, och därmed vårt, är att man tror sig kunna hantera system som man inte begriper.

Normalfördelningen

Normalfördelning är en fördelning kring ett medelvärde. T ex om man mäter hur långa kvinnor är i en befolkning, så visar det sig att de flesta flockas kring ett medelvärde i längd, och ju längre man går från det medelvärdet, desto färre kvinnor finns det där. Utanför vissa värden blir det helt uppenbart att det inte finns några kvinnor. Det finns t ex inga fem meter långa kvinnor och inte heller några tjugo centimeter långa kvinnor. Men vad händer om vi inte vet vad det är vi mäter? Talebs insikt om att allt inte står rätt till vilar bl a på en analys av hur finansvärlden använder normalfördelning.

När Taleb analyserade vad finansvärlden använder normalfördelning till, så upptäckte han att modellerna inte stämde med verkligheten. Extrema händelser inträffade långt ut på skalan, ungefär som om en 100 meter lång kvinna plötsligt skulle materialisera sig och ställa till det. I finansvärlden avfärdade man detta, men Taleb noterade att dessa extrema händelser var så stora när de inträffade att de utplånade allt man byggt upp tidigare. Som jag tolkar det så försöker finansvärlden mäta och hantera saker som man inte begriper. Det är inte osökt man kommer att tänka på gamla folksagor där man väcker ett monster, som sedan förstör världen.

Om man antar en normalfördelning och sedan ignorerar extrema värden så är det ett säkert tecken på att man inte vet vad det är man mäter och modellerar. Och Talebs poäng är att man kanske inte ens kan ändra på modellen utan man ska bara ge tusan i att försöka hantera saker man inte begriper.

Antag till exempel att man vill fundera över vad den genomsnittliga återsående livslängden kommer att vara för människor år 2014. Då kanske man tror att det blir någon slags normalkurva som är ganska hög och skarp. Men för att återknyta till atombomben, det finns fortfarande en risk att alla människor dör i ett globalt kärnvapenkrig år 2014. Och då så blir medellivslängden 0. Det är denna typ av kritik som Taleb riktar mot Steven Pinker och dennes bok "Better angels of our nature", i vilken man kan få intrycket att vi blir fredligare och fredligare framåt i historien. I Talebs ögon har vi snarare skiftat riske från en daglig risk att bli ihjälslagen för individen, till ett utplånande av hela mänskligheten.

Om man ser de som tänker som Pinker som "optimister" och de som tänker som Taleb som "realister" kan föreställa sig följande dialog:

Realisten: Så man dödar färre människor?

Optimisten: Ja, det gör man

Realisten: Men om jag tittar på hur mycket man dödar på vissa platser och under vissa månader under de senaste hundra åren så är det väldigt många

Optimisten: Ja, men det händer så sällan

Realisten: Men man verkar ha en rejäl kapacitet att döda

Optimisten:  Ja, men vi har blivit så milda

Realisten: Hade man en sådan kapacitet att döda för några hundra år sedan?

Optimisten: Nej, hurså?

Realisten: I rest my case

"Inte mitt problem, det är ditt"

Om en ingenjör skulle bygga ett system, där han inser att extrema världen plötsligt kan inträffa, säg t ex ett hus med en termostat som vart tjugonde år dödar alla i huset genom att höja temperaturen till 150 grader, så avbryter han arbetet, testar igenom systemet och ändrar på det eller kanske ännu bättre låter bli att göra något han inte begriper.

Inom finansvärlden och även inom politiken har man inte riktigt samma självkritik i alla länder och lägen. Istället ser man till att skörda frukterna av när det går bra, i finansvärlden med fullkomligt osannolika bonusar, och sedan när det går dåligt har man försvunnit från scenen eller så slår man upp händerna och säger "Detta hade ingen kunnat förutse". Att leva innebär en risk genom det man företar sig. Vad dessa människor gör är att skifta risken från sina egna liv över till våra. Lurendrejeri.

-6 och stockholmsbörsen

Igår så gick stockholmsbörsen ner när någon försökte handla med värden som översteg Sveriges bruttonationalprodukt många många gånger om. Den hundra meter höga kvinnan uppenbarade sig skulle man kunna säga. Programmerare världen runt har diskuterat vad som hände och kommit fram till att det var siffran -6 som slogs in i systemet, som sedan översattes till den största siffra systemet kan hantera, minus sex. Man har kopplat in ett datorsystem som kan ge extrema värden rakt in i börsen. De saker som Taleb varnar för är större och mer sammanlänkade saker med globala konsekvenser, men här i Sverige fick vi en liten varning, när finansvärlden nu inte ens klarade av att hantera en liten dator som de programmerat själva.

När du läst denna text så tror jag du håller med mej om slutsatsen: Problemet är inte att man glömde range-checka ett värde. Problemet är att man byggde ett automatiskt system överhuvudtaget.

 

"Ordern låg på köpsidan i orderboken och omfattade drygt 4,2 miljarder terminer, till ett styckpris på nästan 107 000 kronor. Det ger ett teoretiskt värde på 459 561 500 030 000 kronor, alltså knappt 460 biljoner kronor. Sveriges bruttonational produkt, som jämförelse, uppgick under 2011 till drygt 3 500 miljarder kronor."

Läs mer:  Monsterorder stoppade börsen | Sverige | SvD


How to make the wireless handle local connections and the mobile modem take care of the rest on Ubuntu Linux

published Nov 16, 2012 11:27   by admin ( last modified Nov 16, 2012 11:27 )

My Internet provider is a bit shaky today so I switched over to a 3G modem. Unfortunately when I switch that 3G modem on and the wireless off, I lose contact to my local resources. And when I switch the wireless on, I lose contact to the Internet. In "Network", do this:

1) Select Wireless to see your wireless connections, select your wireless connection

2) Select "Options..."

3) Select the "IPv4 Settings" tab

4) Click the "Routes..." button

5) Check "Use this connection only for resources on this network" and click OK

 

You're done! Remember to uncheck when you need the wireless to reach the Internet again


Den ekonomiska krisen förklarad som saga

published Nov 13, 2012 12:59   by admin ( last modified Nov 13, 2012 12:59 )

Just nu diskuteras det hur man ska fördela vem som ska betala för krisen. Det är dock viktigare hur man tar sig ur den.

Låt oss anta att man har en liten by med tre invånare. En person sköter jordbruket, en gör verktyg till jordbruket och en är allt-i-allo. Bredvid byn ligger en likadan by.

I vår lilla by så producerar alla något av värde. I början så halvsvalt alla men då kom verktygsmakaren på ett bättre arbetsverktyg till jordbrukaren, så nu är alla mätta. Man kan säga att med det nya verktyget så växte ekonomin.

En dag kommer en resande försäljare till byn. Han har ett som han säger magiskt preparat som dubblar avkastningen på jordbruket vid nästa skörd. Alla väljer att tro på detta. Då inser plötsligt de tre i byn en sak: De är visserligen mätta nu, men det de alltid lustat efter är lakritsremmar. Så de går till grannbyn (som också har tre invånare) och säger:

"Vi kan nu täcka era matbehov nästa år också. Det enda ni behöver göra är att istället producera lakritsremmar, som vi kan äta sedan"

Vad som har hänt nu är att ekonomin i de två byarna är överhettad. Det är nämligen så att det magiska preparatet inte fungerar. Men alla är jätteoptimistiska om framtiden. Ur psykologisk synvinkel skulle man kunna säga att de är maniska.

Hösten kommer, och skörden blir inte större än vanligt. Men grannbyn har producerat en massa lakritsremmar, men det finns ingen som vill köpa dem. De måste nu hitta något annat att göra som snabbt ger dem mat.

Och där var sagan slut!

Och vad har detta med vår verklighet att göra?

Observera att denna saga och denna modell inte talar om stödpaket, devalveringar, trycka valuta eller andra sådana saker som politiker talar om idag. Det är därför att de sakerna inte är viktiga. De är istället ofta skadliga.

Människor måste sluta producera sådant som inte värdesätts så högt längre, och börja jobba med det som behövs. Det är det hela. Glöm resten.

Desto fler hinder som ställs upp för människor att byta jobb och ju fler hinder det ställs upp för att organisera dessa jobb, desto svårare blir det. De länder som har mest hinder, minst kreativitet och minst organisationsförmåga kommer det att gå sämst för, och omvänt de som har

  • Få hinder
  • Hög uppfinningsförmåga
  • Hög organisationsförmåga

...kommer det att gå bra för.

 

 


DJ with your Android phone/tablet and Mixxx on Linux

published Nov 12, 2012 01:00   by admin ( last modified Dec 25, 2012 01:08 )
  • Make sure the phone/tablet and the computer are on the same network
  • Install "DJ Control" from Google Play and start it, no configuration needed
  • Install http://code.google.com/p/dsmi/downloads/detail?name=dsmidiwifi-v1.01.tgz&can=2&q= on your Linux computer and start the executable in the unpacked archive
  • Install the  DJ application Mixxx on the computer (from e.g. the Ubuntu repositories)
  • Start Mixxx, go to Options->Preferences->MIDI Controllers
    • "DSMIDIWiFi" should be visble there, select it and in "Load preset" in the upper right part of the window, select "Hercules Dj Console RMX"
    • Now you should be able to control Mixxx från Android, DJ away!
Wireless DJ MIDI controller for your favorite computer DJing application! Exact emulation of Hercules's "DJ Console RMX" DJ MIDI controller functions by using MIDI over WiFi!


Read more: Link - DJ Control - Android Apps on Google Play


Jade - indentation based template language

published Nov 11, 2012 11:55   by admin ( last modified Nov 11, 2012 11:55 )

There is a whole group of these template languages
 


Read more: Link - Jade - Template Engine


Fram för dags-ljus i tunnelbanan!

published Nov 10, 2012 10:15   by admin ( last modified Nov 11, 2012 12:06 )

Under vinterns mörkaste månader får människor i Stockholm alldeles för lite dagsljus. Detta bidrar till depressioner och andra åkommor. Genom att installera ett rejält dagsljus i tunnelbanestationerna skulle man på vintern kunna mildra detta problem. Om man man riktigt vill lyxa till det kan man dessutom komplettera med smalstrålande belysning som hälper med D-vitamin.

Människan verkar aldrig riktigt ha anpassat sig helt och hållet till ett liv i den höga nord: Bristen på ljus under den mörkaste tiden påverkar oss negativt på flera sätt, dygnsrytmen kan få problem och vi vet att dålig dygnsrytm är skadlig. Man har i Norge också märkt att den norra delen av landet har mer depressioner på vintern än den södra.

I Stockholm har vi dock en för Sverige unik möjlighet att påverka allt detta. Vi har ett antal stora utrymmen, tunnelbanestationerna, där hundratusentals människor befinner sig varje dag. Och inte nog med det, dessa stationer är rikligt försedda med elektricitet som utan problem skulle kunna hantera mer belysning.

I första hand bör man se till att man får ett rejält dagsljus mitt på dagen under vintern. I andra hand kan man om man vill, installera belysning som ger UV-ljus, men eftersom UV-ljus har skadliga effekter bör det i så fall begränsas till spektrumet 295 - 300 nm, där kroppen har nytta av det för att producera Vitamin D.

Hur mycket lampor behövs det då?

Mycket lampor blir det. "Tänkte inte på det" frestas man väl att säga. Men det kan nog funka ändå, se under "Justeringar" nedan. Här ett överslag på en tiopotens när:

Enligt Wikipedia så ger en mulen dag 10'000 lux. Om man tittar på webbsidor som handlar om årstidsdepression så talar de också om 10'000 lux som en terapeutisk dos. Så låt oss ha det som mål. Vidare antas att all belysning går neråt, antingen direkt eller genom 100% effektiva reflektorer. En tunnelbaneperrong är ungefär 100m lång och säg 10m bred. Det ger 1000kvm.

Ett bra lysrör har en verkningsgrad på 100 lumen per watt. Lysdioder på marknaden kommer att nå dit och behöver inga reflektorer. En lux är sedan helt enkelt 1 lumen per kvadratmeter. Man kommer alltså då att behöva 100 watt lysrörseffekt per kvadratmeter. Vilket ger 100'000 watt per tunnelbanestation. Det finns lysrör att köpa i butik, som har 100W effekt. Så man behöver alltså 1000 lysrör per tunnelbanestation. Om man kan gruppera dem i armaturer med 8 i varje, säg 10 för enkelhetens skull, så blir det 100 armaturer per station. Man kan då ha tre rader med 30 armaturer, dvs en armatur var tredje meter ungefär. Det innebär i alla fall att det är fysiskt möjligt att installera det rent ytmässigt.

Värmeutveckling på 100kW blir ett problem. Om man har lysdioder kanske man kan använda fiberoptik, kombinerat med vattenkylning från fjärrvärmenätet.

Justeringar

Men, lysrör i taket är inte samma sak som en öppen himmel som går ner till horisonten, och man kan nog inte räkna med att folk går och tittar i taket. Alltså bör lamporna installeras längs en artificiell horisont, dvs längs väggarna, eller så väljer man att inreda stationerna med väldigt ljusa färger på väggarna, och riktar ljuset ditåt.

Sedan blir ju frågan, man stirrar ju inte på himlen en mulen sommardag och man promenerar ju inte heller dagarna i ända över öppna fält eller seglande på öppna havet utan man befinner sig ju ofta i stadsmiljö eller i skogig terräng, så man behöver kanske inte 10'000 lux längs väggarna för att uppnå en sommarlik ljusmiljö? Om man kan gå ner med en faktor 10 så blir projektet inte bara genomförbart utan tycks det mig dessutom ganska enkelt. 10 armaturer på en hel tunnelbanestation är ju ingenting, och måste nästan ligga i linje med vad som redan finns, vilket antyder att det inte är tillräckligt iofs.

Enligt Wikipedia så har f ö islänningar anpassat sig till föga solljus på vintern och visar inte samma korrelation ellan dagsljus, breddgrad och depression som i övriga Norden. En hypotes är att de har haft begränsat genflöde söderifrån.

 

 


apologies-to-the-readers-of-planet-plone

published Nov 02, 2012 11:17   by admin ( last modified Nov 02, 2012 11:17 )

I upgraded to Plone 4 from Plone 2.5 with quintagroup.transmogrifier and it all went very well, but the import script set the modified date on all documents to the import date. Basesyndication then used that date for the atom feeds and not the effective date. So all my old Plone posts clogged up the planet.  Additionally it was impossible to edit any document on the site probably because the import script used attribute storage that got stuff into infinite recursion. So I had to rebuild the document tree and lost this post which is now back Sorry!