Обновить
0

Пользователь

1
Подписчики
Отправить сообщение
Сейчас понял, что всегда старался придерживаться этих правил.

Первое правило работает не только в написании кода.
Я бы сделал так:

// validation
Article.path('title').validate(function (v) {
    return !!v && v.length > 5 && v.length < 70;
});
Это все фичи не первой важности.
Только сегодня размышлял о необходимости такого приложения. Решил, что как закончу текущие проекты — возьмусь. И, бац, через 20 минут ваша статья. :)

Респект за планы в issue tracker`е.
Будто вы сейчас сделали его лучше…
Самое крутое рабочее место, которое я когда-либо видел. :)
Пожалуй возьму платный аккаунт для своих проектов.
Тут видимо имелся ввиду CEO yahoo.
А я-то думаю, почему они мне на письмо, о проблеме с оплатой через них, не отвечают…
А я то думаю, что с Dropbox`ом случилось.
Залипаю пытаясь понять почему вы залипли.
Красивое решение. Мне так сделать и в голову не пришло.

Ради интереса сравнил производительность: jsfiddle.net/EzwkA/
Благодаря таким рассуждениям и опущенным рукам можно сильно застрять на месте и уже по-настоящему начать растрачивать свой ценнейший ресурс — талант.
А я-то думал, что ценнейший ресурс — время.
На неделе задумался об этом.
2-ая задача (JavaScript)
// Приветствуются конструктивные замечания по коду

function problem2(input) {
	var openIndex = input.indexOf('{');

	if (openIndex === -1) return [input];

	var result = [''];

	while (openIndex !== -1) {
		var firstPart = input.substring(0, openIndex);
		var parts = [];

		var openCount = 0;

		for (var i = openIndex + 1, length = input.length; i < length; ++i) {
			if (input[i] === '{')
				++openCount;
			else if (input[i] === '}') {
				--openCount;

				if (openCount < 0) {
					parts.push(input.substring(openIndex + 1, i));

					input = input.slice(i + 1);
					break;
				}
			}
			else if (openCount === 0 && input[i] === '|') {
				parts.push(input.substring(openIndex + 1, i));

				openIndex = i;
			}
		}


		var newResult = [];

		parts.forEach(function (part) {
			problem2(part).forEach(function (partResult) {
				result.forEach(function (resultItem) {
					newResult.push(resultItem + firstPart + partResult);
				});
			});
		});

		result = newResult;

		openIndex = input.indexOf('{');
	}

	if (input.length > 0) {
		result.forEach(function (element, index, array) {
			array[index] = element + input;
		});
	}

	return result;
}


И часто в ваших проектах приходится писать такие алгоритмы?
Нет. Секрет в том, что вы его не ровно положили. Одна из его передних лапок загнута назад — тогда он начинает ползти.
Скрытый текст
Какое интересное поведение.
Сейчас случайно наткнулся:

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность