Categories
Computer Science

Thoughts on Development Time Estimation

Estimating development time is similar to the coastline paradox. The more detailed your project description gets, the longer you estimation will be.

Britain-fractal-coastline-combined.jpg
 CC BY-SA 3.0 made by Avsa mixed by Acadac

You start with “building a blog will take me 20 hours”, then go to “OK actually I will need 10 hours for the data structure, 10 hours for a way to create posts and 10 hours for the actual website”. For each of this estimations you will end up with more hours needed the further you break them down.

Breaking tasks down reveals more of the complexity of a task, leading to higher (hopefully more accurate) estimations.

Categories
Cooking

Aubergine & Onions Pan

Ingredients (2 servings):

  • 1 Aubergine (eggplant)
  • 3 spring onions
  • 1 small onion
  • 150 ml water
  • 1 table spoon soy sauce
  • 1 table spoon rice vinegar
  • 1 tea spoon curry paste
  • 2 tea spoons sugar
  • 1/2 tea spoon salt
  • 1-2 cm of ginger root
  • 3 cloves of garlic
  • 1 table spoon starch
  • peanut oil
  • rice

Recipe:

  • Cut aubergine into large, long pieces (~4 cm long, ~2 cm thick)
  • Chop ginger and garlic, cut spring onions and onions into thin rings
  • Mix water, soy sauce, rice vinegar, sugar and salt
  • Mix starch with a small amount of water.
  • Fry in oil until golden brown. Press with spatula to release water
  • Put aubergine pieces aside and add new oil into the pan
  • Fry curry paste, garlic, ginger, green onions and onions for a short time
  • Add mixed water and aubergine pieces to the pan and cook everything for 2 minutes
  • Add starch to thicken the sauce
  • Serve with rice

Categories
Uncategorised

Global Climate Strike

Categories
Cooking

Best Carrots Cake

Origin: https://www.tinesveganebackstube.de/karottenkuchen/

Ingredients:

  • 400 g carrots
  • Juice of a lemon
  • 175 ml sunflower oil
  • 400 g flour
  • Pack of baking soda
  • 2 Packs of vanilla sugar
  • 200 g sugar
  • 100 g chopped almonds
  • 1/2 table spoon cinnamon
  • 2 cm ginger
  • pinch of salt
  • powdered sugar and lime juice

Recipe:

  • Preheat your oven to 165°C
  • Grate the carrots and ginger and mix it with the oil and lemon juice
  • Mix all dry ingredients (flour, sugar, almonds, baking soda, vanilla sugar, cinnamon and salt) in another bowl.
  • Add the mixed dry ingredients to the carrots and mix everything thoroughly.
  • Fill everything in your cake pan and bake at 165°C for 60 minutes
  • Mix powdered sugar and lime juice to a viscous liquid and spread if over the finished cake

Categories
Cooking

Vegan Beluga Lentils Curry

Origin: https://www.rewe.de/rezepte/veganes-beluga-linsen-curry/

Ingredients for 2-3 servings:

  • 1 Onion
  • 1 Garlic
  • 1 cm fresh ginger root
  • 1 Carrot
  • 3 table spoons Coconut oil
  • 1,5 table spoons red curry paste
  • 300 g Beluga lentils
  • 1 can tomatos (chunky or whole)
  • 1 can Coconut milk
  • 550 ml vegetable stock
  • 1 sweet potato
  • 2 table spoons lime juice
  • Salt and pepper

Preparation:

  • Peel and chop the onions, garlic, ginger root and carrots.
  • Fry for 2 minutes. Add curry and lentils and fry for a short time
  • Add Tomatos, coconut milk and 200 ml vegetable stock.
  • Cook for 10 minutes and peel the sweet potato
  • Add sweet potato and cook for 20 minutes. Add vegetable stock periodically
  • Add lime juice. Season with salt and pepper.
Categories
Computer Science

Debugging Web APIs with session based authentication in Postman

  • Open the web app in Chrome or Firefox and open the Developer Tools (F12 or Ctrl+Shift+I).
  • Login and look for an API call in the Network Tab of the Developer Tools.
  • Right click the request and select Copy -> Copy as cURL
  • Open Postman and use the Import Button -> Paste Raw Text
  • You can now execute the same request as done in the browser.
  • Start modifying it and happy hacking.
Categories
Uncategorised

Lessons learnt: First Hackathon

  • Be prepared. In my case the material was sent out a week beforehand. Use the time to setup your machine(s) and code base so you can start directly.
  • Do research on the topic. I’ve not looked into state of the art algorithms for the problem beforehand. This cost me a lot of time in the Hackathon, to understand the algorithm we used.
  • Have compute resources ready. I could have used 2 further machines, but forgot to setup ssh, Teamviewer or any other remote control on them.
  • Do whatever you know best. Some of my team members had far more experience on the topic than me. I’ve tried to follow there example, which wasn’t successful. I think I would have been more successful using more basic approaches (which I have enough knowledge about) than trying to follow the “state of the art” approach. At the end I’ve tried to support them as best as I could (mostly doing evaluations).
  • Push for more organization. We quickly came to the conclusion that only 1 or 2 approaches (transfer learning on common models) would be feasible in the short time of a hackathon. This led to us being rather unorganized. Everybody tried to get the models running as fast as possible and tweaking them the rest of the time. I think we could have produced more insight on the topic with regular “stand ups”.

Categories
GameDev

AutoTexture

I’ve built a small tool to create tileable, seamless textures.

https://autotexture.libove.org/

Categories
Photography

Commute to Work

Categories
Photography

[Helsinki] View on City

View on City
View on City