Войдите или зарегистрируйтесь
Вы сможете писать комментарии и посты, ставить лайки и другое
Поиск
Тёмная тема

How wind turbine power depends on blade length: looking at real data

недавно
Wind turbines keep getting bigger every year. There's one main reason for that: the longer the blades, the more powerful the turbine. But couldn't you just install two smaller turbines instead of one large one? To answer this, let's take a look at real-world data.

Goldwind is a Chinese wind turbine manufacturer. Here are photos of their operating turbines from the company website:
Goldwind GW 82 / 1500 - output: 1500 kW (1.5 MW). Rotor length: 82.3 meters, meaning a blade diameter of roughly 41.15 meters.

Goldwind GW 171 / 6000 - output: 6000 kW (6.0 MW). Rotor length: 171 meters, giving a blade diameter of about 85.5 meters.

Even here you can already see that the relationship between blade length and output is nonlinear. The second turbine's blade is 2.07x longer, but the power is 4x higher!

Vestas is a wind turbine manufacturer from Denmark (their turbines are shown in the next photo):
Показать полностью...
+2
18

The real altitude of spaceflight

недавно
Humans have been flying to space since 1961 - that's over 60 years now. These days, we even have tourist spaceflights. In sci-fi movies, people travel between planets, stars, and even galaxies.

But what is space from the perspective of aviation and astronautics? Technically, it starts somewhere between 100 and 122 kilometers above Earth's surface. The range exists because different organizations define the boundary of space slightly differently.

Is 120 kilometers really that high? The average diameter of our planet is 12,742 kilometers - quite a lot. Below, I drew a simple picture to show what a spaceflight looks like to scale:
See that tiny red dot? That’s our trip to "outer space". Not exactly impressive, right? For comparison, the International Space Station orbits at an altitude of about 418.2 km - on this scale, its point would only be a couple of pixels higher.

Human technology is still in its infancy. Legally, we can say we fly to space - but in reality, it looks more like what you see above. As for interplanetary travel, so far, only our robots have made the journey.
+2
45

Sometimes restrictions create beauty in architecture

недавно
Restrictions don't always lead to something bad. Let's look at the Blue Mosque in Istanbul - it is adorned with stunning patterns, yet there are no images of people or other living beings, because this is prohibited by Islamic norms. The restriction influenced the architecture, resulting in interiors like these:
Or take Amsterdam as an example. At one time, taxes in the city depended on the width of a building's façade, so future homeowners constructed rather narrow but tall houses. As a result, a distinctive Amsterdam architectural style emerged.
Показать полностью...
+2
8

How to use Quill Editor with Nuxt 3 and SSR (Vue)

недавно
If you try to use Quill Editor with Nuxt 3 when rendering a page in SSR you will get this error:
500 document is not defined.
That means NodeJS doesn't have the global variable 'document'. Because SSR rendering is executed in
a NodeJS environment, not a browser.

The sad fact: <client-only> won't help with this problem. The problem with quill's code is that during import, it assumes it's being executed in the browser. I hope you remember that the code imported from the module is not just imported, but executed, i.e. the authors of Quill wrote it so that the 'document' object is immediately accessed there. Very bad.

One solution is to disable SSR, but its an awful solution. But the second solution is to use dynamic JS imports.

My <script lang="ts" setup> in QuillEditor.vue in Nuxt 3 project:
import 'quill/dist/quill.core.css';
import 'quill/dist/quill.snow.css';
// import Quill from 'quill'; // SSR problem with 'document', need to use dynamic import
import type Quill from 'quill';

const elemForQuillEditor = ref<HTMLDivElement|null>(null);

let editor: null|Quill = null; // Do not store in ref() - it causes bugs!

// ...

async function createQuillAndSetListeners() {
  const Quill = (await import('quill')).default; // This is most important thing - usage of JS dynamic import

  if (!elemForQuillEditor.value) return;
  editor = new Quill(elemForQuillEditor.value, {
    theme: 'snow',
    modules: {
      history: {
        delay: 2000,
        maxStack: 500,
        userOnly: true,
      },
      toolbar: {
        container: [
          ['bold', 'italic', 'underline', 'strike'],
          ['link'],
          [{ list: 'ordered' }, { list: 'bullet' }],
          [{ script: 'sub' }, { script: 'super' }],
          [{ header: [1, 2, 3, 4, 5, 6, false] }],
          [{ color: [] }, { background: [] }],
          ['clean'],
          ['undo', 'redo'],
        ],
        handlers: {
          undo() {
            editor?.history.undo();
          },
          redo() {
            editor?.history.redo();
          },
        },
      },
    },
    placeholder: props.placeholder,
  });
  
  editor.on('text-change', () => {
    if (!editor) return;
    // ... my other code
  });
}

// ...

onMounted(createQuillAndSetListeners);

Now your Quill editor will work in Nuxt 3 even during SSR!
+2
84

A Naked Gun (2025) reference to the TV series Police Squad! (1982)

недавно
The new Naked Gun has one subtle reference that doesn't point back to the original film trilogy, but much further - to the TV series that served as the blueprint for all three movies. In other words, it's a nod to Police Squad! from 1982.

In the final scene of the new film, everyone around the main characters suddenly freezes, while the protagonists themselves are confused about what's happening - yet they're still able to move:
This is a direct callback to the endings of every episode of "Police Squad!". That exact gag happened each time - for example, here's how episode two ends:
Показать полностью...
+2
13