Skip to content

Instantly share code, notes, and snippets.

@monolithed
monolithed / WYSIWYG.md
Last active August 19, 2023 14:28
WYSIWYG редакторы

Обзор WYSIWYG-редакторов (2017 г.):

  • Свободная лицензия (в идеале)
  • API
  • Масштабировать текст по количеству символов (в идеале)
  • Быть кроссбраузерным
  • Сокращать ссылки и подсвечивать ссылки
  • Иметь защиту от XSS
  • Конфигурироваться
  • Поддерживать историю
openssl genrsa -out privkey.pem 768
openssl pkcs8 -topk8 -nocrypt -in privkey.pem -out privkey2.pem
@monolithed
monolithed / jest.md
Last active January 3, 2019 17:41
Почему Jest вызывает боль!

Причины, по которым мне не правится Jest

  • Нельзя задать директорию для снепшотов. На первый взгляд это не кажется проблемой, но когда вы начнете создавать файлики с постфиксом .spec.js, то на каждом уровне у вас будут папки __snapshots__. Представьте, что открываете вы директорию, а там папка с кешом, открываете другую и там тоже самое — жуть!

  • testPathDirs не поддерживает glob-паттерн.

  • Jest как и Webpack 2 валидирует все поля. Это означает, что подключив какой-то сторонний препроцессор вы должны описывать его конфигурацию в вашем package.json, и даже не в секции jest, поскольку она там тоже валидируется!

  • setupFiles включаются в набор тестов, если они попадают в testPathDirs.

Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@monolithed
monolithed / index.html
Last active February 1, 2017 18:23 — forked from iketari/index.html
Object.keys vs for..in #jsbench #jsperf (http://jsbench.github.io/#9edc79f26350c0e90d8dddb48dc19f31) #jsbench #jsperf
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<title>Object.keys vs for..in #jsbench #jsperf</title>
<script src="https://cdnjs.cloudflare.com/ajax/libs/benchmark/1.0.0/benchmark.min.js"></script>
<script src="./suite.js"></script>
</head>
<body>
<h1>Open the console to view the results</h1>
https://bugsnag.com/
https://airbrake.io/
https://getsentry.com/welcome/

Please do not put test harnesses or transpilers in your dependencies object

Why so adamantly? In fact, the final product we can build using CI.
And for this reason I can not agree with the fact that grunt, browserify and so on are local dependencies.
The current scheme is relevant only for the server-side development, but not for the client.

Alternative scheme:

git/hooks/pre-push

@monolithed
monolithed / mocha_vs_jasmine.md
Last active January 30, 2021 18:54
Mocha vs. Jasmine

Почему Mocha, а не Jasmine?

Ниже будут приведены аргументы в пользу выбора Mocha

  • Высокая популярность:
    — 4m против 400k загузок в месяц

  • Высокая активность:
    — 1 890 против 1400 коммитов (всего)
    — 171 против 101 коммитов (последний год)

@monolithed
monolithed / nginx.conf
Created December 24, 2015 10:18 — forked from micho/nginx.conf
nginx config for http/https proxy to localhost:3000
First, install nginx for mac with "brew install nginx".
Then follow homebrew's instructions to know where the config file is.
1. To use https you will need a self-signed certificate: https://devcenter.heroku.com/articles/ssl-certificate-self
2. Copy it somewhere (use full path in the example below for server.* files)
3. sudo nginx -s reload
4. Access https://localhost/
Edit /usr/local/etc/nginx/nginx.conf:
@monolithed
monolithed / testing-frameworks.md
Last active March 15, 2018 15:30
Сравнение фреймворков для интеграционного тестирования
Название Движок Язык Преимущества Ограничения
Feta Selenium Java * Ориентирован на интеграционное тестирование
* Уже используется в команде тестирования
* Интегрировано с нашим CI и JIRA
* Учтены многие многие проблемы
* Исходный код написан на Java
* Требуются знания Java
Selenium WebDriver Java * Высокая популярность
* Развитая экосистема
* Слишком "косолапое" API
* Требуются знания Java
Thucydides
(Serenity)
WebDriver Java * Развитая экосистема * Требуются знания Java
Browserstack WebDriver JavaScript * * Проект в забвении
webdrvr WebDriver JavaScript * * Обертка над WebDriver и не более того
* Проект в забвении
Buster PhantomJS,