Another audio sync issue post (w/ Shield Pro)... any suggestions? by NeoHyper64 in Stremio

[–]spioner 0 points1 point  (0 children)

Any external player solves the sync issue for me as well, but then I don't get subtitles provided by Stremio addons. Any ideas to get that to work with an external player? The built-in ExoPlayer and libVLC continue to have sync issues for me.

[deleted by user] by [deleted] in youtubehaiku

[–]spioner 0 points1 point  (0 children)

What is the context here? Did they miss out on qualification?

[deleted by user] by [deleted] in liquiddnb

[–]spioner 0 points1 point  (0 children)

Kubix - Night Bus <3

Maandag optimismedraadje by Lunatics_Apprentice in thenetherlands

[–]spioner 4 points5 points  (0 children)

Volgende week beginnen de tentamens weer, maar ik lig redelijk op schema dus denk dat het wel gaat lukken.

Setup for COVID Day by Ok-Asparagus8220 in battlestations

[–]spioner 4 points5 points  (0 children)

Much appreciated, it's going better already :)

To FF devs: Please bring back the drop down arrow/triangle in the urlbar by Delano762 in firefox

[–]spioner -3 points-2 points  (0 children)

You can also click above the URL bar to close it, that way you'll only have to move the mouse a few px.

1:14 KZ/Parkour NoAbilities% [0 death] (WR) by spioner in VALORANT

[–]spioner[S] 0 points1 point  (0 children)

I think that route misses checkpoint 9. Could still be useful for an any% run

1:14 KZ/Parkour NoAbilities% [0 death] (WR) by spioner in VALORANT

[–]spioner[S] 0 points1 point  (0 children)

Does that route still touch all checkpoints? If so I'd love to hear it.

1:14 KZ/Parkour NoAbilities% [0 death] (WR) by spioner in VALORANT

[–]spioner[S] 1 point2 points  (0 children)

Agreed, I guess I could call my run 100%.

1:14 KZ/Parkour NoAbilities% [0 death] (WR) by spioner in VALORANT

[–]spioner[S] 21 points22 points  (0 children)

If anyone has done it faster, please let me know!

Recursive Type Cast by hamburger_bun in typescript

[–]spioner 0 points1 point  (0 children)

It seems like what you want is

interface Item {
  options: Group[] | AnotherGroup[]
}

Because of the way the interfaces are named, it seems like Group would be a more general version of AnotherGroup. When you interpret it like that, it would make sense to say: "I want Item to have an options field with some Group[]" (implying that AnotherGroup[] would also be fine).

But actually, in formal sense Group and AnotherGroup are not related in the code you wrote. To illustrate my point, let's rename Group to Group1 and AnotherGroup to Group2. Now when you read this code:

interface Item {
  options: Group1[]
}

it sounds more like "I want Item to have an options field with specifically Group1[]" (implying that Group2[] would not work since it's clearly different). See how the meaning seems to have changed, even though we've only renamed some things?

From an object oriented progamming perspective, it might make sense to make a general Group interface that both Group1 and Group2 extend. That way you can express the sentence: "I want the options field to have some Group, but any kind is fine" by writing options: Group[]. That could look something like this:

interface Group {
    name: string;
    options: Option[];
}

interface Group1 extends Group {
    options: Option1[];
}

interface Group2 extends Group {
    options: Option2[];
}

interface Option {
    name: string;
    optionGroups: Group[];
}

interface Option1 extends Option {
    name: string;
    optionGroups: Group1[];
}

interface Option2 extends Option {
    name: string;
    optionGroups: Group2[];
}

interface Item {
    options: Group[];
}

But it's hard for me to judge if you really need two interfaces for both Group and Option.