OpenSourceWaffeln
From Chaos Communication Camp 2007
Contents |
[edit] OpenSourceWaffeln
Bei diesem Projekt geht es darum das ich (Elch) der OpenSource community etwas zurück geben möchte. Da ich selber aber nicht programmieren kann dachte ich mir, dass OpenSource und Freeware Waffeln genau das richtige sind.
[edit] Variables
Deutsch | English | ||
---|---|---|---|
Menge | Zutat | Ammount | Incredient |
500 g | Mehl | 500 g | Flour |
300 g | Butter | 300 g | Butter |
250 g | Zucker | 250 g | Sugar |
16 g (2 Pck.) | Vanillezucker | 16 g (2 Pck.) | vanilla sugar |
2 g (1 Prise) | Salz | 2 g (1 dash) | salt |
150 g (3 Stk.) | Ei(er) | 150 g (3 pieces) | egg(s) |
400 g (400 ml) | Milch | 400 g (400 ml) | milk |
Note: There are different Egg sizes. See Wikipedia for further reference.
[edit] Options
Es gibt einige verschiedene Optionen die man zu seiner Waffel hinzufügen kann. Diese hängen allerdings von der lokalen Verfügbarkeit ab und werden vor Ort aushängen.
-p Puderzucker
-n Nutella
-b Blaubeeren | not available
-k Kirschen | not available
-s Sahne
-a Apfelmus | not available
-z Zimt
[edit] Suggested Features
-v vegan: s/milk/soy drink/g | s/butter/marge/g | s/eggs//g
- For compatibility reasons. Just as tasty, but executable on more systems with dietary preferences.
Notice from Autor: Not in this version
-m mate: s/milk/club-mate/g
- For experimental caffeine powered systems.
Doesnt work
[edit] Code
- RELEASE NOTES
- ALPHA RELEASE: do not use for production environment!
- KNOWN BUGS:
- does not support arguments yet
- missing incredient preparation
- POSSIBLE BUGS:
- everything in right order?
- are egg yolks added all at once or one after the other while mixing?
- LICENSE:
- released into Public Domain
void Main(String [] args) { #region Prepare Incredients // TODO #endregion #region Prepare Requisites Bowl bowl1, bowl2; Pan pan = new Pan(); // HACK: if there is no pan, use the Waffle compiler Whisk whisk = new Whisk(); Putty putty = new Putty(); WaffleIron compiler = new WaffleIron(); bowl1 = new Bowl(); // WARNING: bowl for Eggwhite should be made off copper // on copper the fat don't clings so much // try to avoid plastic bowls if possible bowl2 = new Bowl(); #endregion foreach(Egg egg in Eggs) { // NOTE: use a knife, the rand of the bowl, or some other hard&sharp tool egg.Brake(Middle); // NOTE: separete the egg yolk and egg white // by giving the yolk from one egg-half to the other and back bowl1.Insert(egg.Yolk); // Dotter bowl2.Insert(egg.White); // Eiklar egg.Flat.Dispose(); } // HACK: if there is only one Whisk, then first execute t1 and then t2 // If you don't (by accident) then you need to clean the whisk from fat. // Yolk in the egg white would avoid the creation of good foam. Thread t1 = new Thread( Task_CreateEggWhiteFoam (ref bowl2) ); Thread t2 = new Thread( Task_CreateEggYolkFoam (ref bowl1) ); Thread t3 = new Thread( Task_MeltButter (ref pan1) ); t1.Execute(); t2.Execute(); t3.Execute(); Thread.WaitAll(t1, t2, t3}; // wait till the bowls are finished mixed and butter melted // HACK: give some of the butter on the waffle iron (if not already) // You can use a brush for that. With the butter on it, // the paste will stick less on the iron. // TODO: check if butter is in right order bowl1.Insert(bowl2.Content); // add egg white bowl1.Insert(pan.Content); // add butter; much fat // WARNING: do not use the whisk here // Because the egg white foam and the egg yolk form have different densities // they wouldn't distribute well. Use the putty to under-lift the bottom mass up // until the mixture is well mixed. bowl1.Mix(putty); // HACK: if you want the waffles crusty, use a temperature of 200°C (392°F) // HACK: if you want the waffles more soft, use a tempearature of 160°C (320°F) compiler.SetTemperature(453.15); // 453.15K = 180°C = 356°F compiler.Insert(bowl1.Content); // NOTE: because of the riffles, the waffles have a very big surface // compared to their volume. Therefore the paste will be finished much // faster than a cake, where the overall shape is more cylindric. Thread.Wait(150000); // 2-3 minutes Waffle waffle = compiler.Content; case(waffle.Look) { good: Waffle.Eat(); return; bad: Waffle.Dispose(); SendBugReport(); return; } }
void Task_MeltButter(ref Pan pan) { pan.Insert(butter); pan.Heat(); // Thermodynamic heat will now melt the butter // WARNING: no themolysis should occur // NOTE: the optimal melting temparture is at about 60-70°C // avoid overheating. Also, if its kept to long on this tempearature, // the butter separates its caseine. while(!Butter.IsMelt){continue;} }
void Task_CreateEggWhiteFoam(Bowl bowl) { // NOTE: the mass is ready when you turn bowl around and it don't comes out // WARNING: do not mix it to less // WARNING: do not mix it more then needed // The proteines in the egg have a hydrophil and a hydrophob end. // The sticky end will bound to the water, while the not sticky end will // bound to the air. If you mix it, the air bubbles are getting devided and // become smaller and the foam becomes stronger. // HACK: add a very little ammount of vinegear or lemon (or similar acid) // to improve the bindings of the molecules so that the foam becomes finished faster while(!bowl.Content.IsFluffy) { bowl.Mix(Whisk); } }
void Task_CreateEggYolkFoam(ref Bowl bowl) { bowl1.Insert(Sugar); // gives electrons while burning bowl1.Insert(Milk); // proteines bowl1.Insert(Salt); // used for osmosis processes bowl1.Insert(VanillaSugar); // aromates while(!bowl1.Content.IsFoamy){ bowl1.Mix(Whisk); } // NOTE: The flour serves here for the connection the paste // with the help of contained strength. The water contained // in the mass penetrates between the strengt-grains and // connects the grains by capillary attraction. The water // takes some time to penetrate by the capillary effect, // so the mass should rest a short time. // During baking, the water will vaporize and the strength will // get sticky. The strength-grains clue together. // HACK: By the addition of melted butter, the paste // becomes tougher and more flexible, since the clue can't connect // in the places the butter is. After baking the paste becomes // instable. After the cooling of the butter, the butter // builds a creamy connection. bowl1.Insert(Flour); // carbonhydrates // HACK: Insert backing powder // With the baking powder, carbon dioxide gets produced during baking, // results in loosen the paste up together with the air. while(!bowl1.Content.IsFoamy) { bowl1.Mix(Whisk); } // NOTE: liquid butter is added right after this // but it is still melting within the pan... }