HNHacker News
TopNewBestAskShowJobs

Yomguithereal

493 karma · joined January 30, 2014

https://github.com/Yomguithereal
submissionscomments
Yomguithereal··on ASCII Art Data Visualization in the Terminal like it's still 1970
I would not call this ASCII art per se. Some of the used characters are not ASCII. How about Unicode art?
Yomguithereal··on New technique to easily partition CSV files for parallel processing
> ‘Safely’. An attacker who has control over a row in that file can easily embed data that satisfies the statistical checks, thus injecting data.

This is clearly not the sort of thing you should expose to anyone, it is an optimization technique. The same way you would not use a fast but DOSable hash function for your hashmap.

Yomguithereal··on Cursed engineering: jumping randomly through CSV files without hurting yourself
TL;DR: Seeker struct from simd-csv Rust crate knows how to perform approximate random access in a CSV file [1]

The `xan` command line tool is therefore able to use it to perform single-pass map-reduce parallelization over CSV files and also binary search within sorted CSV data! [2]

[1]: https://docs.rs/simd-csv/latest/simd_csv/struct.Seeker.html [2]: https://github.com/medialab/xan/

Yomguithereal··on The SIMD-CSV crate chose not to use simdjson tricks to parse CSV with SIMD
There is a section here with a table describing the kind of boost you might observe vs. rust-csv used by xsv: https://docs.rs/simd-csv/latest/simd_csv/#regarding-performa...
Yomguithereal··on A love letter to the CSV format
the reversing bytes part is encoding agnostic. you just feed the reversed bytes to the csv parser then re-reverse both the yielded rows and the cells bytes and get the original order of the bytes themselves.
Yomguithereal··on A love letter to the CSV format
xan is a maintained fork of xsv
Yomguithereal··on A love letter to the CSV format
xan is a maintained fork of xsv
Yomguithereal··on A love letter to the CSV format
A good way to parallelize CSV processing is to split datasets into multiple files, kinda like manual sharding. xan has a parallel command able to perform a wide variety of map-reduce tasks on splitted files.

https://github.com/medialab/xan

Yomguithereal··on A love letter to the CSV format
I would add xan to this list: https://github.com/medialab/xan

But of course, I am partial ;)

Yomguithereal··on A React custom renderer to build user interfaces for the terminal using blessed
An equivalent for Titanium: https://github.com/yuchi/react-titanium
Yomguithereal··on What is code?
no more
Yomguithereal··on Redux: Atomic Flux with Hot Reloading
I think you are right. It's time we give a proper name to these unidirectional data flow architectures and fly away from the Flux naming.
Yomguithereal··on Baobab: A JavaScript data tree supporting Om-style cursors, with React mixins
Hello DougBTX. Could you post an issue on the repository describing what you would need for this library to work nicely with TypeScript so we can see whether things can be improved?
Yomguithereal··on Artoo, the client-side scraping companion
This is an interesting point. I created an issue on the github repository concerning this matter. Maybe you'd like to comment on it about your use case so we can improve the tool?
Yomguithereal··on Artoo, the client-side scraping companion
This would indeed be nice and this is precisely what we intend to code next.
Yomguithereal··on Artoo, the client-side scraping companion
Backend and frontend scraping just don't attend the same needs. Running backend monsters to scrape small to medium amount of data only once is such a drag when frontend scraping can take less than half an hour to perform the same task. Plus you can see the results of your code live while browsing the DOM comfortably. Finally, nobody prevents you from using artoo backend when you execute javascript.
Yomguithereal··on Artoo, the client-side scraping companion
jquery is injected carefully by artoo so it does not break anything on the host page. However, CSP override is not default on artoo and you have to install the chrome extension to perform this. But this extension has solely to be activated when scraping and only developers should use them while knowing its effects.