Дежурное напоминание, что 8 марта — это не праздник весны, красоты и женственности
❤10
Forwarded from мне не нравится реальность
Сегодня 8 марта, буду банален: желаю равных прав, равных зарплат, чтобы вещи и пространства были спроектированы с мыслями о вас, поменьше сексизма и побольше безопасности, побольше сил чтобы бороться с ужасами реальности и поменьше ужасов реальности с которыми нужно бороться. Ну и конечно, хоть это и не относится напрямую к феминизму, желаю чтобы война закончилась, желаю чтобы вы и ваши близкие были в порядке, на столько, на сколько это теперь возможно.
/в общем да, вафель как обычно за всё хорошее против всего плохого/
Хотелось бы верить, что всё это близко, но верится с трудом...
Берегите себя, всего хорошего <3
/в общем да, вафель как обычно за всё хорошее против всего плохого/
Хотелось бы верить, что всё это близко, но верится с трудом...
Берегите себя, всего хорошего <3
❤26
#prog #rust #article #successstory
Parsing logs 230x faster with Rust
As fantastic gravy on top of this whole situation, after a few days I realized that I needed to know exactly how much it would cost. With each log file taking about 23 seconds, and there being about 500 log files per day, it seemed like I would need about 350,000 seconds of Lambda execution time per month.
Then, when I went to look up Lambda pricing, I noticed that it has a free tier: 400,000 seconds per month. So in the end, it seems like I’m parsing 500GB of logs per day… for free. 😆
Parsing logs 230x faster with Rust
As fantastic gravy on top of this whole situation, after a few days I realized that I needed to know exactly how much it would cost. With each log file taking about 23 seconds, and there being about 500 log files per day, it seemed like I would need about 350,000 seconds of Lambda execution time per month.
Then, when I went to look up Lambda pricing, I noticed that it has a free tier: 400,000 seconds per month. So in the end, it seems like I’m parsing 500GB of logs per day… for free. 😆
Cloud City Development
Parsing logs 230x faster with Rust
Perhaps surprisingly, one of the most challenging things about operating RubyGems.org is the logs. Unlike most Rails applications, RubyGems sees between 4,000 and 25,000 requests per second, all day long, every single day. As you can probably imagine, this…
Forwarded from Санечка Ъысь (Anna Weiss)
This media is not supported in your browser
VIEW IN TELEGRAM
👍9🔥5
#prog #js #typescript #abnormalprogramming
github.com/jamiebuilds/json-parser-in-typescript-very-bad-idea-please-dont-use
github.com/jamiebuilds/json-parser-in-typescript-very-bad-idea-please-dont-use
GitHub
GitHub - jamiebuilds/json-parser-in-typescript-very-bad-idea-please-dont-use: JSON Parser written entirely in TypeScript's type…
JSON Parser written entirely in TypeScript's type system - jamiebuilds/json-parser-in-typescript-very-bad-idea-please-dont-use
Forwarded from Антон
Это индустриальный стандарт. То есть нечто настолько плохое, что те, кто поддались на обманчивую простоту, обиделись достаточно сильно, чтобы заставить также страдать и своих коллег
👍5🔥2👎1😢1
Блог*
#prog #rust #cpp #java #article A Rust Gem: The Rust Map API
Вдобавок ко всему тому, что написано в статье, хочу отметить, что Entry API позволяет просто делать то, что в других языках выглядит зачастую весьма неловко: получить значение по ключу и в случае его отсутствия вставить новое значение, сконструированное при помощи функции, которая может завершиться ошибкой.
Пример:
Пример:
fn get_file_contents(
name: PathBuf,
contents: &mut HashMap<PathBuf, String>,
) -> std::io::Result<&str> {
use std::collections::hash_map::Entry;
Ok(match contents.entry(name) {
Entry::Occupied(e) => e.into_mut(),
Entry::Vacant(e) => {
let file_contents = std::fs::read_to_string(e.key())?;
e.insert(file_contents)
}
})
}
Известные мне альтернативы в других языках позволяют сигнализировать об ошибке в подобных ситуациях лишь при помощи исключений👍2
Using Go is a no-brainer in the sense that one has to have no brain in order to even consider using it
👎20👍11😁7👏1💩1