![](https://programming.dev/pictrs/image/15c9c78d-2924-41e6-b392-0dc0657ff24e.jpeg)
![](https://programming.dev/pictrs/image/8140dda6-9512-4297-ac17-d303638c90a6.png)
Better to ask a rubber duck than an LLM.
It has better results, is cheaper, and makes has a positive compounding effect on your own abilities.
Better to ask a rubber duck than an LLM.
It has better results, is cheaper, and makes has a positive compounding effect on your own abilities.
At least it was better than the developer survey that was only about AI. That one still makes me facepalm just thinking about it.
Asking just because I’m curious… why are you using xpath?
Also, is this for a website you control or for some else’s website?
If you’re rendering the page (in a browser, e2e test-runner, spider bot, etc…), have you considered running some js on the page to get the image? Something like: const imagePath = document.getElementById('exampleIdOnElement').style.backgroundImage
Lol, well I could change it, but it was based on the gif at https://quietkit.com/box-breathing/
I think it’s because you’re not supposed to expand your lungs so much that they feel like they’re going to burst.
But if you scroll to the bottom of the css and look at line 69, you can change transform: scale(90%);
to transform: scale(100%);
to see if you like it better.
Are you using the group policy editor?
Why would I leave windows if Linux isn’t offering anything better?
Because Linux offers an ad-free experience, whereas Windows offers a free ads experience.
I’m not seeing anything in the data collected that I wouldn’t want to be sent if the app crashed.
Presenting: an excerpt from my lua windows management script:
-- Exists because lua doesn't have a round function. WAT?!
function round(num)
return math.floor(num + 0.5)
end
Yeah, not a fan.
It seemed pretty clear to me that the article states that css is doing it’s job and it’s actually fonts that are the problem
The windows 11 teams runs better, but if you’re using a school or work account, you need to use the old AngularJS+Electron version, or the new React+Webview2 version.
So for the time being, the Windows 11 teams is more catered for personal use only. It’s kind of like a modern reboot of Microsoft’s old MSN Messenger. It was included in Windows 11 (rebranded as “Chat”) but it’s been unbundled from Windows 11 installs and I think rebranded again. But not having the school/work account support means not a lot of people use it.
The transition between the AngularJS+Electron version and the React+Webview2 versions is happening now. At some point soon, anyone who is running an OS too old to run the new teams will be forced to use the browser version.
So after their transition, we’ll have to wait and see if they add the school/work account support to the native version because everyone using teams right now only uses those accounts.
There’s a reason Teams is/was shit.
The first teams was written in AngularJS (which is a slow to run resource hog, but fast to develop) wrapped in Electron. It was kind of a minimum viable product, just to build something quickly to get some feedback and stats on what people needed.
The plan was to build a new native version of teams and build it into the next windows while having an web fallback (built on react) for everyone else.
They stopped working on the original teams and started working on the new versions.
They got half-way through working on the native and react versions when suddenly, covid happened.
They couldn’t keep working on the new versions because they wouldn’t be ready for a while, so they had to go back and resume development on the old one, introducing patch after patch to quickly get more features in there (like more than 2 webcam streams per call).
Eventually covid subsided and they were able to resume development on the new teams versions.
Windows 11 launched with a native teams version (which has less features but runs super quick), and the new react based teams (which can now be downloaded in a webview2 wrapper) has been in open beta since late last year (if you’ve seen the “Try the new Teams” toggle, then you’ve seen this). The React+Webview2 teams will replace the AngularJS+Electron version as the default on July 7th.
Tailwind is only feels like a successor to CSS to developers writing css like it was 10 years ago (or using frameworks that write it like that, e.g. bootstrap), or projects not using visual regression testing.
Modern css is so much better.
:has()
, +
, ~
, nth-...
, … selectors.If you’re using something like BEM, or bootstrap to make columns, your knowledge is way out of date and you’re doing it wrong.
There’s absolutely a massive internal bias people have where they naturally believe that others develop the same kinds of content, when really it’s half working on page based content, and half working on component based content.
Both are correct.
The real problem is developers thinking that there are only two methods for making styles: external css files, and tailwind/atomic styles in class names.
Component developers should have their styles inside their components, but not inlined in style attributes (like in tailwind).
Component developers should instead place a style
tag inside their component that is scoped to just that component.
So let’s say you’re making an accordion component.
Make your html+js/jsx like you already do, and add an “accordion” class to your component’s root element. Now add a style tag in your component with a single selector targetting the .accordion
class. Now you can use nesting to style anything in the accordion exactly how you want. Want to style something based on whether an element is open or not? Use an attribute selector. Want to style something based on whether it’s child is doing something? Use the :has()
selector. etc…
If you’re making a widget system, use container queries. If you’re making a card system, use subgrid.
There’s so many obvious use cases that modern css provides for, so use modern css! and not any of this BEM or tailwind nonsense. Now your css is so much smaller, robust and more maintainable.
Follow up questions:
Q: But I don’t know modern CSS
A: Learn, it’ll be much better for you in the long run compared to using tailwind, then needing to learn something else once people switch off tailwind for something else.
Q: But wouldn’t putting a style tag in every component mean that there’s going to be two style tags on the page if I put two of the same component on the page?
A: It’ll only do that if you make it do that. Most component based frameworks are already set up to reduce repetition, check your framework’s docs. (e.g. react’s many css-in-js solutions, web component’s :host
selector, vue’s <style> and <style scoped>
elements, SSGs like Eleventy have Asset Bucketing, and even native html is getting it’s own solution this year with @scope
).
I’ve seen people advocate for Tailwind because “CSS is too hard, I don’t want to think about selectors”.
CSS isn’t too hard, there are easy ways to do things, and hard ways to do things (for backwards compatibility reasons). If you don’t learn modern CSS then you’re only going to be doing things the hard way.
Windows 95, 98, 2000, XP and 7 are generally regarded as having great UIs.
Of course, we know what happened later:
You mean a whole different window at the OS level?
Yes, that way I could switch between windows in a single shortcut, or even place them side by side so I can see both at the same time with other shortcuts.
That’s just a way inferior hack to the way vim does it by default.
Can you explain this more?
Why wouldn’t you want window management to be managed by the window manager?
Have you considered the Required<T>
generic?
https://www.typescriptlang.org/docs/handbook/utility-types.html#requiredtype
I’m assuming for your example that only one tab is shown at a time?
In that case, you can do that in vscode, the only difference is the semantics of what is considered a “window”, and what is considered a “tab”.
To do this in vscode:
Have one window with four panes, and another window with three panes:
Window 1
┌──────────┬──────────┐
│ │ │
│ Pane 1 │ Pane 2 │
│ │ │
├──────────┼──────────┤
│ │ │
│ Pane 3 │ Pane 4 │
│ │ │
└──────────┴──────────┘
Window 2
┌──────────┬──────────┐
│ │ │
│ Pane 1 │ Pane 2 │
│ │ │
├──────────┴──────────┤
│ │
│ Pane 3 │
│ │
└─────────────────────┘
You can then switch between your windows (or “tabs” in your example) by keyboard shortcut.
In vscode, you can make the Panes different files, or even different views of the same file.
There’s a whole bunch of pull requests and issues sitting there for a start.
Personally I’d also update the example in the readme and set an engine value in the package.json file.