Croissants

I forgot that I didnt have a recipe for my croissant here.

These are my best croissants eve! Important to use strong white flour (14% protein)

Ingredients:

  • 500g strong white flour (14% protein)
  • 12g fine salt
  • 55g sugar
  • 40g soft butter
  • 15g instant dried yeast
  • 140ml cold water
  • 140ml milk
  • 280g unsalted cold butter block
  • 1 egg for glazing

Part-1

  • Place flour, salt and sugar in a bowl and combine.
  • Add the yeast to the flour and mix
  • Add the butter and crumb through with your fingers.
  • In another bowl, add water and milk.
  • Make a well in the center of the flour and pour in the liquid.
  • Mix together until all of the dry ingredients are incorporated. Dont overwork it
  • Push down the dough so it is spread out in the bottom of the bowl.
  • Cover and place in the fridge for 8-12h
  • Using baker paper, make a 20x15cm aprox “envelope”. The block of butter should be inside. With the rolling ping, flat the butter out as it fills the envelope.

Part-2

  • Take the dough out of the bridge and place it onto a lightly floured surface.
  • Roll it out to form a square that fits your butter envelope.
  • Then roll each side out so you have 4 thin sides and slightly raised square center.
  • Place the butter in the center, then start by pulling the top side of the dough across to totally encase the butter. Next pull the bottom flap up until the top edge. Then bring the two sides flaps across.
  • Tap the dough gently with the rolling pin to seal the dough laps.
  • With the seam running top to bottom, roll the dough out into a rectangle, roughly 1/2 pin wide and 1 +1/4 pin long.
  • Brush off any flour and fold the dough in thirds. This is a half fold.
  • With a sharp knife, cut the seams so you have only layer of dough.
  • Wrap the dough in film and put in the fridge for 1h to rest.
  • Make two more half folds. So take the dough out of the bridge, with seam running top to bottom, roll the dough in a rectangle and fold in thirds.
  • After the last fold, put back in the bridge for 12h.

Part-3

  • Take the dough out of the bridge and place onto a lightly floured surface, seam running top to bottom. Roll into a rectangle roughly 1/2 pin wide and 1 +1/4 pin long. The dough should be 4mm thick aprox.
  • With a sharp knife, trim the sides to be sure you have a perfect rectangle.
  • With a sharp knife, make triangles. The base of each triangle should be roughly 4 fingers wide. Cut a small slit about 1/4″ long at the base of each triangle.
  • Gently stretch your triangle out, then roll up your croissant making sure the tails on the bottom of the rolled up croissant.
  • Place onto a tray lined with baking paper leaving enough space to prove.
  • Put the tray into the oven, just lights on. They should double in size.
  • Once they are ready, whisk up the egg and brush over each croissant
  • Preheat the oven at 210C.
  • Place the tray in the oven and lightly spritz the oven chamber with a water spray. That makes them super crunchy and give a nice color.
  • Bake until golden dark. You may need to turn the tray. It should be around 20 minutes at least.

This is the result.

The Three Body Problem

This book was recommended by an ex-college and really enjoyed it. I didnt have any background of the book and it was interesting that there is actually a three body problem. I struggled a bit about the science at the end of the book but I was hooked from nearly the beginning.

In general, I am surprised that this book wasn’t censured in China but still I am quite happy to read something coming from China. Taking into account that I meanly read books from Western countries (mainly USA and UK/EU) that is a small portion of the world.

Garlic Chili Noodles

I tried this recipe this weekend.

Ingredients:
150g extra firm tofu (more is ok)
5-6 pieces garlic
small piece ginger
3 sticks green onion
olive oil for frying
3 tsp dark soy sauce
150g noodles (of your choice)
1 tbsp paprika (didnt have gochugaru)
1 tbsp plant-based oyster sauce (didnt use)

Process:

  1. Mash the tofu into a crumble with a fork
  2. Finely chop the garlic, ginger, and green onions
  3. Heat up a nonstick pan to medium heat with olive oil. Add the crumbled tofu. Sauté for 3-4min
  4. Add 2 tsp dark soy sauce and sauté for another couple of minutes. Set the tofu aside
  5. Bring a pot of water to boil for the noodles
  6. Place the nonstick pan back on medium low heat. Add 2 tbsp olive oil and the garlic and ginger. Cook for about 2-3min
  7. When the water comes to a boil, cook the noodles for 1 min less to package instructions. Stir occasionally to keep them from sticking
  8. Add the paprika to the garlic and ginger. Cook for about 1min. Then, add the oyster sauce.
  9. Strain out the noodles and add to the pan. Add 1 tsp dark soy sauce and the crumbled tofu. Turn the heat up to medium and sauté for 2-3min. Add the green onions and sauté for another minute

This is my result:

As usual, doesn’t look like the video, but it is tasty!

Meta GenAI Infra, Oracle RDMA, Cerebras, Co-packaged optics, devin, figure01, summarize youtube videos, pdf linux cli, levulinic acid

Meta GenAI infra: link. Interesting they have built two cluster one Ethernet and the other Infiniband, both without bottlenecks. I don’t understand if Gran Teton is where they install the NVIDIA GPUs? And for storage, I would expect something based on ZFS or similar. For performance, “We also optimized our network routing strategy”. And it is critical the “debuggability” for a system of this size. How quick you can detect a faulty cable, port, gpu, etc?

Oracle RDMA: This is an ethernet deployment with RDMA. The interesting part is the development DC-QCN (some ECN enhancement)

Cerebras WSE-3: Looks like outside NVIDIA and AMD, this is the only other option. I wonder how much you need to change your code to work in this setup? They say it is easier… I like the pictures about the cooling and racks.

Co-packaged optics: Interesting to see if this becomes a new “normal”. No more flapping links anybody? It is the fiber or replace the whole switch….

I have been watching several videos lately and I would like to be able to get a tool to give a quick summary of the video so I can have notes (and check if the tool is good). Some tools: summarize.tech, sumtubeai

video1, video2, video3, video4, video5, video6, video7, video8, video9, video10, video11

Devin and Figure01: Looks amazing and scary. I will need one robot for my dream bakery.

I wanted to “extract” some pages from different pdfs in just one file. “qpdf” looks like the tool for it.

qpdf --empty --pages first.pdf 1-2 second.pdf 1 -- combined.pdf

levulinic acid: I learnt about it from this news.

Rebuild VPS/Blog

Quite overdue. I need to fill all the gaps properly

I went from Apache to NGINX to make it more challenging for me…

Make a proper backup of your VPS.

More details

Get latest Debian stable

Or try to upgrade…link:

SSL Cert

Be sure you have Let’s Encrypt setup for getting your free. Good thing, the DNS side was already done so it was just to configure NGINX

WordPress

Link.

phpMyAdmin

Link. I struggled with this. I had to make a minimal config and then put my backup. After that, I had my blog fully recover

NGINX config

Link. I struggled here because I had to serve my blog and phpadmin from nginx. I knew how to do it via Apache but was failing with nginx. I asked ChatGPT and at the end it gave me the solution

This is the final config:

server {
    server_name thomarite.uk blog.thomarite.uk;
    root /var/www/html/wordpress;
    index index.php;

    access_log /var/log/nginx/thomarite.uk.access.log;
    error_log /var/log/nginx/thomarite.uk.error.log;

    client_max_body_size 100M;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
        include fastcgi_params;
        fastcgi_intercept_errors on;
    }

    location /phpmyadmin/ {
        alias /usr/share/phpmyadmin/;
        index index.php;

        location ~ \.php$ {
            include snippets/fastcgi-php.conf;
            fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
            include fastcgi_params;
            fastcgi_intercept_errors on;

            fastcgi_param SCRIPT_FILENAME $request_filename;
            fastcgi_param PATH_INFO $fastcgi_path_info;
        }
    }

    location ~* \.(?:svgz?|ttf|ttc|otf|eot|woff2?)$ {
        add_header Access-Control-Allow-Origin "*";
        expires 90d;
        access_log off;
    }

    location ~ /\.ht {
        access_log off;
        log_not_found off;
        deny all;
    }

    listen [::]:443 ssl ipv6only=on; # managed by Certbot
    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/thomarite.uk-0001/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/thomarite.uk-0001/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}

server {
    if ($host = blog.thomarite.uk) {
        return 301 https://$host$request_uri;
    } # managed by Certbot

    if ($host = thomarite.uk) {
        return 301 https://$host$request_uri;
    } # managed by Certbot

    listen 80;
    listen [::]:80;
    server_name thomarite.uk blog.thomarite.uk;

    location / {
        return 404;
    }
}


Then

sudo nginx -t
sudo service nginx restart

IRCD

I need to check how this is installed properly. Check this.

Sales Psychology, BERT testing, EVPN asymmetric/symmetric, git sync fork

Sales Psychology: I have noticed with myself lately, since I subscribed to a youtube channel, everything is a “negativity bias”. I can’t see any video with a positive message. I subscribed because I want to learn and improve but the publicity is wrong.

BERT Testing: I wonder if there is anything opensource.

Git sync fork. This something I have never tried before

1- Add remote

0) check your remote
git remote -v
1) Add new remote
git remote add upstream URL
2) git fetch/pull from the upstream
git pull upstream

EVPN VXLAN Asymmetric/Symmetric routing: blog1

Asymmetric IRB
– Ingress VTEP does both L2 and L3 lookup
– Egress VTEP does L2 lookup only
– Bridge – Route – Bridge
– Pros: “easy” to configure – just copy/paste. Identical config with the only difference in SVI IP addresses.
– Cons: on the way back, traffic will be reversed => all VXLANs need to be configured on all VTEPs => increased ARP cache and CAM table sizes and control plane scaling issue => not very efficient.

Symmetric IRB
– Ingress VTEP does both L2 and L3 lookup
– Egress VTEp does both L3 and L2 lookup
– Bridge – Route – Route – Bridge
– L3 VNI should be configured on all VTEPS, L2 VNIs only where local ports exist

Other things about EVPN: link1 link2

Gaming Latency, LLM course, Anycast ipv6

Another LLM course: and looks quite good. But dont think I will have time to use it.

Nice video about Gaming Latency:

How to curl an ipv6:

$ curl -v -g -k -6 'https://[2603:1061:13f1:4c06::]:443/'
Trying [2603:1061:13f1:4c06::]:443...
Connected to 2603:1061:13f1:4c06:: (2603:1061:13f1:4c06::) port 443
ALPN: curl offers h2,http/1.1

The destination address is indeed IPv6 anycast: 2603:1061:13f1:4c06:: (notice the “::” at the end)

According to RFC4291 https://www.rfc-editor.org/rfc/rfc4291.html#section-2.6

Image

So it is indeed an anycast address.

According to Cisco (haven’t been able to find the RFC, haven’t looked much), this shouldn’t happen:

https://www.cisco.com/c/en/us/td/docs/ios-xml/ios/ipv6_basic/configuration/xe-3se/5700/ip6-anycast-add-xe.html

Image

So how I can curl and ipv6 anycast address from MS as it were a host??

No-Knead Sourdough

This was my standard bread for several years in London. I learnt it in BreadAhead.

Day 0: Feed starter

75g water room temperature
75g rye flour
Mix all well, and let it at room temperature covered with a lid but not airtight. 24h in winter, 12h in summer

Day 1: add flour

Starter should be active. Kind of double in size. Best test, it is take a tea spoon of starter and check if it floats in a glass of water
500g strong white flour
320g water room temperature
10g salt
150g starter

  • Mix starter and water well.
  • Add liquid to the flour, mix roughly with the hand or a fork. Not over do it!
  • Wait 1h and then add salt. Push it with wet fingers
  • cover and let it rest in the fridge for 24h

Day 2: Folds

  • Take the dough out of the bridge. Wet your hand and give it a full fold (4 corners)
  • Let it rest 30 minutes
  • Another fold
  • rest 30 minutes
  • Last fold.
  • Tap the dough into a work surface and shape it. Try to get a tight dough.
  • Transfer the dough to a basket that has been cover with semolina to avoid the dough to stick to the basket.
  • Put it in the bridge for 24h

Day 3: Bake

  • Preheat oven at 250C with a tray inside.
  • Take dough out of the oven 5-10m before the oven is ready
  • Once the oven is ready, take the tray out of the oven. Use a bit of semolina.
  • Flip the dough from the basket on the tray. Score it!
  • Put the tray back in the oven.
  • Water spray the oven. Very important for creating the crust!
  • Bake at 250C for 35m aprox.

It was a good bread. I liked it and people who tried it always said good things. But never had the open spring I saw in other breads in bakeries, books and videos.

Range: How Generalists Triumph in a Specialized World

I finished this ebook yesterday. With ebooks can’t hardly take notes so in this case was a pitty but as well a bit of a relief.

Really good and better than I expected. As the title says, it is about having range, being generalist and not ultra specialized.

It gives examples where specialized (at early age) is good because it is inside a domain of well-known rules and immediate feedback like golf (Tiger Woods) and chess. It was int

But provide example of exceptional sports figures (Federer) who didnt commit to one sport to late age.

And that affects not only to sport but to your career and the research. Teams with members from different backgrounds and knowledge produce more than specialized team. It provides examples from investing to solving science problems. So it is quite shocking.

Although an early specialization will give you a head start, the general view will win in the long run. It is not bad to be very good at something, but trying different things can bring extra benefits. That’s the summary of the book.

Personally, I buy it. I like networks, but I have interests in linux, automation, hardware, baking, etc. I will never win a Nobel prize (and I dont need it) but I think it gives me from options at the end of the day. You just need to see the job descriptions where they ask for everything.