Hacker Newsnew | past | comments | ask | show | jobs | submit | rthz's commentslogin

Have you tried opening an issue about it? Maybe someone would be happy to work on it. I concur that Excel parsing is rather slow.


Nice. It might be worth copying some of the introductory text from the Tauri package explaining what this does. Otherwise a person to lands on the readme gets a lot of technical detail about how it is built without any idea what it actually does.


Going further, what can I build using it? Basically, can I use Python on a Tauri project or can I use Tauri on a Python project?


Tauri in Python project


The first word in the README (other than the title) is a hyperlink to Tauri.


Interesting problem, not sure it’s worth solving. A larger diameter and slower rotating fan would likely produce less noise for a comparable air flow.


A 20" Lasko box fan is about as cheap as they come - and, consequently, noisy and inefficient. The thing retails for $20, the budget for quieting measures is $0. In particular, especially when placed at a window (where it's expected to generate a pressure differential) you get a counterflow effect in the corners, and the 5 blades create individual pressure pulses as they move near to the 4 flat sides of the enclosure and then out into open air.

A quality high-volume, low-speed industrial drum or axial HVAC wall fan costs a whole lot more than $20 but the quiet, low-frequency noise is so much less intrusive.

Another mechanism (if you don't want a 36", 1/2 HP galvanized industrial contraption on your desk) is to concentrate the airflow near the user. Less power, but more concentrated. I've got a big fan that helps in the morning and evening to exchange air through the entire house, but on my desk I've got the biggest PC case fan I could find (a 230mm monster) wired to a speed controller cable and then directly to a 12V wall wart. At ~300 RPM, you can almost keep up with the motion of a single blade with your eyes, at 500 or 800 RPM it's barely perceptible... but it's only about 8x8x1" and keeps the air moving over your skin!


Ceiling fans are silent or nearly so in my experience and work a lot better than separate fan units imo.


Windows dimensions are a limiting factor to this approach


On iOS you can use the plappa client. It’s open source and works well in my experience.


Seconded, I've been using plappa for a couple months after Apple messed up PWAs after bringing them back (Audiobookshelf didn't want to change to next chapter when the app was in the background) and I'm generally very happy


oh nice, I'll have a look into that. thanks!


Pyodide maintainer here, we would have certainly seen more reports if JsDelivr was blocked in UK. That URL works fine for me from France, and when using a UK VPN end point. Maybe something specific about your network (corporate proxy etc)?

Are you getting an HTTP status other than 200 or the domain name not being resolved?


It's being blocked at the DNS level, yeah. Must be happening fairly close to me. I wasn't on a VPN, but jumping on a VPN fixes it.

Thanks for checking! Good to know this isn't affecting too many people.


Are you using a DNS ad blocker? An adblock list mistakenly added jsDelivr and later removed it. It would cause this issue


It's done currently in Pyodide: Python with DOM integration running with WASM. Minimal application with stdlib is around 5.5MB after compression now. Not small but still manageable depending on the use case.

Still I agree with your other comments, and in particular not being able to share caches in the browser is very unfortunate (but understandable).


Yes, it works...but it puts python at a big disadvantage in terms of size and performance. The DOM integration, for example, works, but isn't what it could be if WASM had more direct support for it.


For people wanting to do more functional programming in Python, have a look at toolz (https://toolz.readthedocs.io/en/latest/). It goes a bit further in that direction.


Concrete Python applications wouldn't be 100x faster if re-coded in some low level language.

In most places where performance matter Python packages would be using either C extension, Cython or numba to get near native performance. Pyodide is able to build those packages (except for numba). So overall it's currently 3 to 5 slower than native Python (which uses C extensions). See detailed benchmarks in https://hacks.mozilla.org/2021/04/pyodide-spin-out-and-0-17-...


A chat channel is mentioned in the readme: https://gitter.im/pyodide/community

Yes, we are working on adding more examples.

Well you need to be able to serve static files. So if you are building locally you need to start a webserver, otherwise you can use the JsDelivr CDN.

Memory leaks can happen if you translate objects between Python and JS. So of it is unavoidable because it's difficult to know when to destroy Python objects from JS vice versa, but lots of work on it has been done in the 0.17 release with more to come in 0.18

Why do you find the example misleading?


> Well you need to be able to serve static files. So if you are building locally you need to start a webserver, otherwise you can use the JsDelivr CDN.

I don't understand, can't I just use offline, static files ?

I would still expect to use my own webserver, unrelated to pyodine, like flask or whatever.

> Yes, we are working on adding more examples.

Glad to hear this :) !

> Why do you find the example misleading?

I haven't really seen that example in the doc or elsewhere, and I don't understand the steps required to make such example work offline or without a webserver.

EDIT:

Another cool thing of brython is that could "inline" a python script inside a html file, such as:

    <script type="script/python">
or

    <script src="thing.py"></script>


If you just open an HTML file in your browser via its local path (e.g. /home/user/...) the browser will prevent you from loading other files by JS due to CORS. So we need a web-server to set the appropriate CORS headers. Any web-server would do.

For inline code, yes it would be doable someone would need to continue https://github.com/pyodide/pyodide/pull/692

For examples, I'll respond in the Pyodide issue where you commented.


Any other way to agree with CORS without a webserver? What about embedding some js code, or moving the WASM files locally?

Thanks for the answers.

Cheers and good luck for this project, I can't wait for it to progress!


You can work around it by embedding data into HTML files but it's really not recommended https://github.com/pyodide/pyodide/pull/606


Work on Node.js support is in progress in Pyodide. And as you mentioned there is also the Wasmer build that could be updated.


How does Node play into this? Can I embed a v8 engine in my C program and use pyodide, or do I need to bring Node along too? Does the compatibility layer depend on any Node-specific concepts like the event loop or garbage collector? (I think maybe V8 does its own GC? This just shows how thin my experience is with this topic.)


Consider applying for YC's Fall 2026 batch! Applications are open till July 27.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: