Skip to content

Instantly share code, notes, and snippets.

View Chudesnov's full-sized avatar

Alexander Chudesnov Chudesnov

View GitHub Profile
// capitalize words
function ucFirstAllWords( str )
{
var pieces = str.split(" ");
for ( var i = 0; i < pieces.length; i++ )
{
var j = pieces[i].charAt(0).toUpperCase();
pieces[i] = j + pieces[i].substr(1);
}
return pieces.join(" ");
@Chudesnov
Chudesnov / sqlcl-cursor-json.log
Created May 4, 2016 15:28
SQLPlus, SQLcl and cursors
SQL> set sqlformat json
SQL> select cursor(select 1 as num from dual) cursor_column, 32767 number_column from dual;
������������ ��� �������: getOracleObject not implemented for class oracle.jdbc.driver.T4CResultSetAccessor
{"results":[{"columns":[{"name":"CURSOR_COLUMN","type":"NUMBER"},{"name":"NUMBER_COLUMN","type":"NUMBER"}],"items":
[
]}]}no rows selected
ymaps.modules.define(
'DeliveryCalculator',
['util.defineClass'],
function (provide, defineClass) {
/**
* @class DeliveryCalculator Расчет стоимости доставки.
* @param {Object} map Экземпляр карты.
*/
function DeliveryCalculator (map) {
this._map = map;
@Chudesnov
Chudesnov / Close Clipboardic.ahk
Last active December 8, 2016 15:35
Clipboardic auto-close script (to be used with "Put Icon in Tray" option)
; Clipboardic is a clipboard manager for Windows by Nir Sofer (http://nirsoft.net).
; It does have a "stay in tray" option, but does not have a "start minimized" one.
; This script, when added to Startup, waits for the Clipboardic window to appear, closes it,
; and if it doesn't appear for a given amount of seconds (should be passed to the script,
; depends on your average load time, defaults to 5), unloads itself.
#NoEnv
SendMode Input
SetWorkingDir %A_ScriptDir%
@Chudesnov
Chudesnov / fizzbuzz.js
Created July 31, 2017 10:19
The mighty FizzBuzz
for (let i = 0; i <= 100; i++) {
const divisibleByFive = !(i % 5);
const divisibleByThree = !(i % 3);
console.log(((divisibleByThree ? 'Fizz' : '') + (divisibleByFive ? 'Buzz' : '')) || i);
}
@Chudesnov
Chudesnov / QA.md
Last active October 7, 2017 09:02
Вопросы слушателей

Какие опции за что отвечают в package.json

Основной список можно посмотреть в документации npm, есть также подробное описание всех стандартных опций. Все остальные опции (babel, jest, eslintConfig, etc.) предназначаются для соответствующих пакетов, соответственно, описание опций вы сможете прочитать на их сайтах.

Чем отличается добавление команды в scripts от такой же команды в консоли (или алиаса)

  1. Доступом к дополнительным путям в $PATH. Если вы, к примеру, установили в проекте webpack, то это не позволит вам запустить его, находясь в папке с проектом, просто командой webpack – придется писать ./node_modules/.bin/webpack или вовсе node ./node_modules/webpack/bin/webpack.js. Добавив в package.json скрипт, скажем, с названием build, и текстом webpack вы обнаружите, что при вводе npm run build или npm build webpack будет запущен
@Chudesnov
Chudesnov / project ideas.md
Last active October 11, 2017 17:01
Темы курсовых
@Chudesnov
Chudesnov / gist:e84db6bf17ca5d0fec6095139e2aff81
Created November 24, 2017 13:15
Как убрать закомментированный (или просто не работающий код) в git stash
  1. Делаем git status, убеждаемся, что working tree is clean. Если нет, делаем коммит со всем несохраненным.
  2. Находясь в редакторе, удаляем ненужный код. Если надо, добавляем один строчный комментарий вида // TODO: добавить запрос к API
  3. Делаем git add файла, который исправляли.
  4. Делаем undo в редакторе, чтобы код появился в файле снова. Если он был закомментирован, удаляем символы // или /*
  5. Делаем git commit
  6. Делаем git stash save -u "[описание удаленного кода, например, «запрос к АПИ (не реализовано)»]"
  7. Проверяем, что git status снова показывает working tree is clean, а в git stash list появилась новая запись
  8. Когда пришло время вернуть код на место, пишем git stash apply stash@{0} (тут вместо 0 номер из git stash list)
@Chudesnov
Chudesnov / callbacks.js
Created December 1, 2017 11:32
Callbacks
// const myFetch = require('data-fetching');
function myFetch (url, callback) {
const request = new XMLHttpRequest();
request.onload = function(data) {
callback(null, data);
}
request.onerror = function(error) {
callback(error);
}
@Chudesnov
Chudesnov / Promises.js
Created December 1, 2017 11:53
Promises
const ourPromise = new Promise((resolve, reject) => {
setTimeout(() => resolve('Hello'), 1000)
});
ourPromise
.then(resolvedValue => {
return resolvedValue;
})
.then(anotherValue => {
return new Promise((resolve, reject) => {