AlexanderYastrebov
+1
Папа, ты сейчас с кем разговаривал?
AlexanderYastrebov
0
Я не настоящий с#варщик, но код многих ваших (я насчитал 22) индикаторов можно улучшить (в т.ч. Highest) за счет использования кольцевого буфера, т.к. в них используется Buffer.RemoveAt(0) со сложностью O(n).

А еще у вас кто-то догадался семплы запихать в репозиторий — git clone --depth=1 дает аж 589M
AlexanderYastrebov
+1
Это ж так можно секретные комнаты на карте искать!
AlexanderYastrebov
+1
Как мы создали удачный бизнес и развалили его

www.biznet.ru/topic244743.html
AlexanderYastrebov
0
Есть ощущение что задачу теоретически можно также решить через DocValues

shaierera.blogspot.com/2014/04/updatable-docvalues-under-hood.html
AlexanderYastrebov
+2
Регулярки - зло
package ru.nullpointer.jugtest;

import java.util.regex.Pattern;

public class CommentCleaner {

    public static void main(String args[]) {
        String source = "/***/";
        Pattern p = Pattern.compile("/\\*(?:[^*]|\\*[^/])*\\*/");

        String result = p.matcher(source).replaceAll("");
        if (!result.isEmpty()) {
            throw new OHSHIException();
        }
    }

    static class OHSHIException extends RuntimeException {

        OHSHIException() {
            super("OH SHI--");
        }
    };
}


AlexanderYastrebov
+4
Без единого разрыва
package\u0020ru.nullpointer.jugtest;
public
class
Hello{
public
static
void
main(String
args[]){
System.out.println("Hello\u0020world");
}
}

AlexanderYastrebov
+9
Мимо белого яблока луны,
Мимо красного яблока заката
Облака из неведомой страны
К нам спешат и опять бегут куда-то.
AlexanderYastrebov
0
Стоит также отметить следующее:
— разработчики не стремились сохранить обратную совместимость схем по 223 ФЗ
— нигде точно не указано с какого момента меняется схема документа
— в самом документе версия схемы не указывается
— на FTP отсутствуют некоторые извещения и протоколы
— поддержка не работает и не отвечает
AlexanderYastrebov
+2
Netbeans 8.0.2 не поддерживает @ParametersAreNonnullByDefault

Я написал патч, посмотрим как пойдет дело дальше

netbeans.org/bugzilla/show_bug.cgi?id=250702
AlexanderYastrebov
0
А возможно ли сделать мультисиг с неравными долями, где доля покупателя равна 2х, а продавца 1х и чтобы после совершения сделки, участник получал залог контрагента? Тогда покупателю не надо платить отдельной транзакцией — цена товара уже в залоге.
AlexanderYastrebov
0
Есть готовый продукт по теме — Графический анализ аффилированных лиц от Национального кредитного бюро

Страница продукта: www.creditnet.ru/search/relations/

Пример отчета: www.creditnet.ru/2d
AlexanderYastrebov
0
С джунами эт я погорячился, да :) Неоднократно встречался с этим антипаттерном и адом в логах.

О бросании NPE холивар древний и каждый похоже выбирает для себя что-то свое.
stackoverflow.com/questions/3881/illegalargumentexception-or-nullpointerexception-for-a-null-parameter

Я сам NPE никогда не кидаю, кидаю IllegalArgument или IllegalState
AlexanderYastrebov
–1
Вот статья для джунов про логгирование и исключения от 2006 года

today.java.net/article/2006/04/04/exception-handling-antipatterns#logAndThrow
AlexanderYastrebov
+1
Забавно, ИНН нетрудоспособного юрлица :)

Я вам подкину идей для ОГРН:
— установите вероятность первой цифры равной 1 до 0,95 и 0,05 для 5
— второй цифры равной 0 до 9/14=0,64 и 0,36 для 1
— также вероятность сочетания второй и третьей цифры можно соотнести со статистикой по количеству регистрации юрлиц из вестника госрегистрации или из статрегистра.
— запилите справочники кодов инспекций по регионам

Еще можно сделать проверку существования ИНН и ОГРН в онлайне у стороннего поставщика данных Статрегистра или ЕГРЮЛ — это вообще повысит качество до 0,999 если применять ИНН и ОГРН в паре и с учетом наименования юрлица.
AlexanderYastrebov
0
Выше писал уже про финал головного мозга; дополню про final вообще, вдруг джуниор какой будет к собеседованию готовится :)

Когда целесообразно использовать финал?
1. Объявление полей-констант
2. Объявление полей неизменяемого (immutable) класса
3. Передача ссылки на переменную в анонимный класс
4. Запрещение наследования
5. Запрещение переопределения метода
AlexanderYastrebov
0
Пример highlighter.indexisto.com/?md5=w71PdpvimgKbITUvpld9hQ==&url=http%3A%2F%2Fya.ru&expires=13905820300

Обратите внимание на expires — оно равно Sat, 28 Aug 2410 23:51:40 GMT
AlexanderYastrebov
+1
В этот раз код для критики не выкладываете? :) Тогда покритикую практику финализации всего и вся — она не дает никаких преимуществ, но усложняет чтение и без того многословного ява кода. В самом деле, какого размера у вас методы, что вы боитесь случайно изменить локальную переменную или аргумент? Я называю этот антипаттерн «финал головного мозга».
Также есть еще ощущение, что я смогу запроксировать произвольный урл сроком годности до 2410 года, тоесть бессрочно. При подписывании параметров всегда два правила: использовать разделители и не ставить ключ впереди при конкатенации (hash extension attack).
Проверить с планшета затруднительно, могу и ошибаться.
AlexanderYastrebov
+2
По мотивам habrahabr.ru/post/113145/#comment_3630589

Каждый программист за свою жизнь должен написать тетрис, систему логирования и библиотеку конфигов :)
AlexanderYastrebov
+2
Не говоря уже про портлеты, которые так и не взлетели
AlexanderYastrebov
+1
> У технологии есть недостатки — картинка грузится после того, как загрузится страница, поэтому пользователь увидит информацию от своего предыдущего посещения.
А нельзя на саму страницу вешать ETag и менять его каждый раз, обновляя соответствие в своей базе ID Пользователя <-> ETag?
AlexanderYastrebov
+3
Там ошибка, следует читать так «Получатель должен опубликовать свой публичный ключ»
Схема на пальцах работает так: пишет кто хочет, но читает только один
AlexanderYastrebov
0
Этот афоризм не о том что не надо трудиться, а о том что надо думать чаще.
AlexanderYastrebov
+24
Большинство людей готово безмерно трудиться, лишь бы избавиться от необходимости немножко подумать. (Т. Эдисон)
AlexanderYastrebov
0
Надо было назвать «Кома»
AlexanderYastrebov
0
Проще тогда вообще одну выбрать и в нее тыкать
AlexanderYastrebov
0
Что еще можно попробовать:
— раззиповать все или по очереди, но не питоном
— попробовать не создавать парсер для каждого файла, возможно проканает (надо проверять)
— парсить не все, а подмножетство, например 10% от библиотеки

Хотя лично я думаю, что для разовой оценочной задачи можно часок и подождать :)
AlexanderYastrebov
+2
Есть ощущение что если надо просто посчитать частоты тегов, то можно и без xml парсера обойтись. Возможно это будет быстрее.
AlexanderYastrebov
+5
Плагин полезный, пара предложений:

1. При уходе фокуса с поля ввода пароля — маскировать его.

2. При переключении режима маскирования исчезает сам контрол переключения (иконка трех точек или abc) — поэтому приходится подвигать мышкой или кликнуть лишний раз для обратного переключения (Ubuntu chromium 25.0.1364.97)

3. Криво отрисовывается подсказка, но заскриншотить нет возможности, т.к. окно видимо отлавливает нажатие принтскрина и перерисовывает нормально. Воспроизвести можно так: Открыть дему — назать клавиши 123 — дождаться всплытия подсказки — кликнуть на значок abc = подсказка отрисуется в левом верхнем углу страницы и криво. (Ubuntu chromium 25.0.1364.97)
AlexanderYastrebov
+1
Тогда — да. Или виртуалку поднять для тестирования.
AlexanderYastrebov
+2
Он имееет ввиду что в своем коде проще использовать свою обертку над currentTimeMillis, чем городить огород с инструментацией.
Другое дело что если есть сторонний код, который тоже хочется проверить.
AlexanderYastrebov
+6
Какая магия? for(;;) — это же классический бесконечный цикл
AlexanderYastrebov
0
Метод красивый. Лекарство есть — контакту и фейсбуку надо прописать для всех страниц X-Frame-Options DENY и разрешить открытие во фрейме только для виджетов.
AlexanderYastrebov
+3
Я нашел этому поистине чудесное доказательство, но поля книги слишком узки для него.
AlexanderYastrebov
+3
Рефакторинг — это не только переименование, %username%
AlexanderYastrebov
+3
и? это можно сделать