Skip to content

Instantly share code, notes, and snippets.

@korniychuk
korniychuk / touch-typing_how-to.md
Last active October 23, 2024 23:50
Печатать быстрее чем говорить? Вам сюда! | Touch Typing - How To
@korniychuk
korniychuk / rxjs-awaitable-observables-ex2.ts
Created June 27, 2020 21:10
Awaitable Observables :: Example 2
import { Component, OnInit } from '@angular/core';
@Component({ /* ... */ })
export class MyComponent implements OnInit {
public readonly currentUser$: Observable<User | undefined> = this.store.select(fromStore.getCurrentUser);
public constructor(
private readonly store: Store<AppState>,
private readonly my: MyService,
@korniychuk
korniychuk / rxjs-awaitable-observables-ex1.ts
Created June 27, 2020 21:02
Awaitable Observables :: Example 1
import { Component, OnInit } from '@angular/core';
interface Product { /* ... */ }
@Injectable()
class ProductApiService {
public async saveProduct(data: { product: Product; userId: number; pickUpTime: Date }): Promise<Product> {
// ...
}
}
Здравствуйте Вячеслав! Вопрос по стакану. Заранее благодарен!
Как правильно трактовать такие ситуации.
Вчера в одно мгновение в 1 одну милисекунду (а именно в 18:30:57 и 342 милисекунды по нулевому часовому поясу)
- было исполнено 702 BUY ордера на bitfinex (public trades)
- общая сумма 901.2 BTC
- разброс цен эти ордеров был от $5371 до $5443.9 за BTC
- что интересно примерно секундо до этого цена скаканула в верх на $72.9 без объема с $5371 за BTC до $5443.9(то самое число).
Вот выдержка со стакана:
docker run --rm --interactive --tty --volume $PWD:/app --volume /etc/passwd:/etc/passwd:ro --volume /etc/group:/etc/group:ro --user $(id -u):$(id -g) composer install
@korniychuk
korniychuk / zf.fm-downloader.js
Last active March 17, 2018 11:34
zf.fm downloader bookmark URL
javascript: (() => {
window.ankorDownloader = window.ankorDownloader || {
download: (html) => {
/*
console.log('Downloading... html:', [html]);
const html = prompt('Enter html with links');
*/
const reg = /class="song-artist"[^>]*?>.+?<span>(.*?)<\/span>.+?class="song-name"[^>]*?>.+?<span>(.*?)<\/span>.+?data-sid="([^"]+)"/gs;
const songs = [];
let matches;
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Encoder</title>
<script>
var numberSystem = +prompt('Введите систему счисления(число от 2 до 36):', '16');
if (numberSystem >= 2 && numberSystem <= 36) {
var data = prompt('Введите данные для обработки:');
@korniychuk
korniychuk / bash-mysql_has-database.sh
Created September 2, 2017 14:53
check if mysql database exists
hasDatabase() {
DB_NAME=$1;
return $(MYSQL_PWD="${MYSQL_ROOT_PASSWORD}" mysql -u${DB_USER} --skip-column-names --batch -e "SHOW DATABASES LIKE '${DB_NAME}'" | wc -l)
}
@korniychuk
korniychuk / to.ts
Created July 10, 2017 14:26
types converter
/**
* This is helper class for parse server response
*/
export class To {
public static number(raw: any): number {
const n = Number(raw);
return raw === undefined || raw === null || isNaN(n) ? null : n;
}