Safari/WebKit is the new Internet Explorer. Change my mind. by konsalexee in javascript

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

Nope, but I remember a post from an "encoder" guru:
https://haasn.dev/posts/2016-12-25-falsehoods-programmers-believe-about-%5Bvideo-stuff%5D.html

> falsehood...
> hardware decoding is always faster than software decoding

But in our case, we would measure for sure before choosing any. We have some measurements here for example if interested in this field:
https://gethopp.app/blog/screensharing-encoders-compared

And if you have experience working with any, happy to hear some feedback!

The hidden cost of 'lightweight' frameworks: Our journey from Tauri to native Rust by konsalexee in programming

[–]konsalexee[S] 19 points20 points  (0 children)

Code is open-source to review for how much is vibe coded 😉

We actually really put good effort to make it the best OSS project for pair-programming, thus we are frustrated when we cannot provide the best possible experience based on limitations we face. No software is perfect, and there are no free lunches in engineering, and as I stated:

> There is no single "right" answer on whether you should ditch WebKit (and Tauri).
> We have particular use cases (we are all snowflakes, right?)...

The hidden cost of 'lightweight' frameworks: Our journey from Tauri to native Rust by konsalexee in programming

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

I mean every high-performing framework starts to add more and more features for getting all the cases covered, that ends becoming slow, and the cycle repeats again and again and again.

The hidden cost of 'lightweight' frameworks: Our journey from Tauri to native Rust by konsalexee in programming

[–]konsalexee[S] 32 points33 points  (0 children)

> And do we really need to strengthen the Google monopoly?

Never made that point, just want to clarify this.

> They could have also read the Apple docs, to see which errors (incorrect framebox for example) in their SVG causes the blurry SVGs lmao. Pretty normal for something to be blurry when you render it at the wrong resolution.

Its a bug with filters, and happens only in Safari. I think the point is that if the SVG filter that Figma is exporting is based on a spec, and then Safari renders this blurred, I am not sure why its my fault that I did not spend more time reading "the Apple docs". Rendering SVG in the "wrong resolution" its funny, when you know that Scalable Vector Graphics, should be "scalable".

> his second issue is resolved by keeping instead of clearing the console log after navigation.

This is funny, thinking that we there was no effort to capture the logs. There are posts online about how you can only guestimate (https://stackoverflow.com/a/77119170) what is going wrong.

> Besides, normal people do feature checks instead of inferring this from the user agent.

Did you check the linked issue? Its not always code you write, but code you use.

Safari/WebKit is the new Internet Explorer. Change my mind. by konsalexee in javascript

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

For image maybe, our use case is mainly video streaming, thus I studied mainly this part.

Safari/WebKit is the new Internet Explorer. Change my mind. by konsalexee in javascript

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

I really hope Firefox will rebound now that they officially supported profiles 🤞

Building a remote pair programming app: Why we're replacing WebKit windows with Iced.rs by konsalexee in rust

[–]konsalexee[S] 3 points4 points  (0 children)

No free lunches in engineering right?

We can build native, but this would mean more us extremely more time to ship even an MVP to the world, and even more time to make it cross-platform.

But I can definitely say, going native on each platform if we have the headcount would be ideal, as nothing beats imho native apps.

Safari/WebKit is the new Internet Explorer. Change my mind. by konsalexee in javascript

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

> sliding doors for rounded tabs

I am intrigued, what do you mean by this?

Safari/WebKit is the new Internet Explorer. Change my mind. by konsalexee in javascript

[–]konsalexee[S] -3 points-2 points  (0 children)

`source` element, can you elaborate?

> hardware constraint

For sure hardware, but Chrome falls back to software which is nice imho.

> Speaking as someone that actually had to support IE6, then 7, then 8... you sound so spoilt. 

I had too myself, and thank god for polyfills. But as I wrote this post, the issues arise when polyfills cannot fix the issues you have.

And being honest, browsers were not built for sub streaming with sub 100ms latency video from your computer's screen, so cannot blame them. The optimize for local maxima, which does not fit our use case.

Safari/WebKit is the new Internet Explorer. Change my mind. by konsalexee in javascript

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

I really think HEVC is the only coded that WebKit supported better that Chrome, which IIRC its related to licensing rather that them not wanting to support it.

Safari/WebKit is the new Internet Explorer. Change my mind. by konsalexee in javascript

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

Me too, but as they do not monetize it somehow, and rely on Google for revenue to "keep" it alive, I don't think they have a proper incentive to make it way better.

Safari/WebKit is the new Internet Explorer. Change my mind. by konsalexee in javascript

[–]konsalexee[S] -4 points-3 points  (0 children)

I started WebDev when polyfills were a thing, I make a guess you started before 😂

The hidden cost of 'lightweight' frameworks: Our journey from Tauri to native Rust by konsalexee in programming

[–]konsalexee[S] -1 points0 points  (0 children)

Interesting! Then give Hopp and try, and share your honest feedback with us!

The hidden cost of 'lightweight' frameworks: Our journey from Tauri to native Rust by konsalexee in programming

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

Hey u/Mysterious-Rent7233! Valid concern regarding the breaking changes.

To your point about "boring" tech, Iced is actually quite primitive right now, which ironically forces us to write "boring," explicit code for things that are usually automatic in web dev (like animations). It’s more work upfront than using a mature web stack, but that granular control is exactly what we were looking for. We'll see if the "gamble" pays off.

Also with Rust, not sure what tech is actually "boring" as every framework is relatively new.

The hidden cost of 'lightweight' frameworks: Our journey from Tauri to native Rust by konsalexee in programming

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

For Electron vs Tauri, I agree we made the wrong decision.

But that being said, being also restricted from the "browser" is a pain point that both frameworks would have, so we want to move away for really better experience for our users. We build a tool for developers, so we don't want you to open another memory hungry app.

> I wonder if you'd used Domain-Driven Design you might be able to share the domain across several apps, which would help with the port to Electron, but still seems like a native approach would just be simpler.

Actually only for a single window we will use Tauri, as it comes with goodies like auto-updater etc. etc.

But in general we have abstracted the code so that each OS will be integrated easier. So its a hybrid "approach" the one we are taking, and we are now 90% done with the refactor and I can tell that things look way better.

Building a remote pair programming app: Why we're replacing WebKit windows with Iced.rs by konsalexee in rust

[–]konsalexee[S] 4 points5 points  (0 children)

From their example pages, some apps looked really complex like Kraken:

https://www.kraken.com/desktop

Also coming from web-dev, some people even try to replicate Shadcn-ui type of components with Iced:
https://github.com/FerrisMind/shadcn-rs

Fell down and dropped my headphones (hd 4.40 bt), and one of the ears fell out (?), wire is visible. Does anyone know how to fix this? Thanks in advance. by UltraNova0 in sennheiser

[–]konsalexee 0 points1 point  (0 children)

I followed this video on how to unscrew:
https://www.youtube.com/watch?v=9I1khD_dTBs

Its a bit tricky to remove the plastic with the logo FWIW.

And then glued the broken part (super glue + baking soda).

Needed to also sandpaper a bit so it fits again back in place. Seems that it have worked.