• Как организовать организацию процесса разработки команды?

    Команда ваша - очень маленькая. Так что не нужно париться. Все вопросы в такой команде можно решить лично, просто поговорив. Ваши задачи, как руководителя:

    1. Чтобы у каждого разработчика было чёткое задание и понимание как его выполнить.
    2. Контролировать исполнение, просто читая код, который разработчики выдают.

    Если вам что-то не нравится в исполнении - поговорите с исполнителем. Но только о конкретных недоработках. Не нужно всяких теорий типа "это не ООП" и "так в TDD не делается". Есть лишь требования к задаче и степень их выполнения. Всё остальное - от лукавого. Вы работаете с людьми, а не с теориями. Используйте их сильные стороны, а не заставляйте их делать то, что у них явно не получается. Так что если у конкретного разработчика есть, например, индивидуальная непереносимость TDD, то задайтесь вопросом: вам нужен разработчик или TDD?

    Так что выбор инструментария и методологии разработки для команды - это не ваше единоличное решение. Вы не начальник. Вы - всего лишь координатор. Вот и координируйте своих разработчиков.
    Ответ написан
    3 комментария
  • Как построить "дорогу", имея массив точек?

    sergiks
    @sergiks Куратор тега Алгоритмы
    ♬♬
    Линейная алгебра, школа же? Уравнение прямой через две заданные точки (отрезок дороги). Её смещение по перпендикуляру в обе стороны на ширину дороги = обочины этого сегмента.

    Пересечения соотв. прямых с обочинами соседних сегментов = углы обочин.

    Особенный случай очень острые углы (представьте угол около 1˚) – обочины могут уйти в бесконечность, чтобы пересечься. Надо ограничивать отдаление точки пересечения внешних обочин от точки угла центральной линии. См. термин «miter limit».
    Miter%20Limit%20Illustration.gif 
    Ответ написан
    Комментировать
  • Зачем программисту дискретная математика?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    А как же булева алгебра, комбинаторика, теория автоматов, формальные грамматики? Это тоже всё разделы дискретной математики. Если Вы не представляете их применения, значит Вам ещё не попадались действительно сложные задачи. Попробуйте, например, написать простейший валидатор html по BNF-правилам.
    Ответ написан
    10 комментариев
  • Почему программа глючит и закрывается?

    Kerman
    @Kerman
    Начнём с того, что 9000 строк в текстбоксе находиться не должны. Он тупо для этого не предназначен. Это нужно заливать в файл перед обработкой. А лучше читать в массив, уже преобразовав данные.
    Во-вторых, это что за 3,14здец?
    BeginInvoke(new MethodInvoker(() => label1.Text = (Convert.ToInt32(label1.Text) + 1).ToString()));

    Нельзя было сделать локальную переменную с инкрементом внутри цикла и выводом в label? Или вообще выводить значение i в label1.Text (и offset от i задать, если надо).
    Куда девается text_check, являющийся результатом всей этой непонятной конструкции?
    Зачем ставить sleep(100), если конструкция подразумевает брутфорс по ip адресам, сгенерированным случайным образом?
    И наконец, надо за собой закрывать открытые соединения, как уже сказал @maxaon.
    Ответ написан
    Комментировать
  • Как победить ошибку "In file included from sketch_jan09a.ino:1" при компиляции программы для Arduino?

    nochkin
    @nochkin
    Было бы классно посмотреть на сам код, которые компилируется, что бы не угадывать.

    Но если попробовать включить телепатические возможности (а они у меня слабы), но возможно в коде используется write, который уже определён в другом месте.
    Если это по функциональности одна и та же функция, то надо просто её убрать из своего кода и использовать встроенную.
    Так же можно обновить библиотеку MeetAndroid на более новую, которая совместима с последней версией Arduino IDE.
    Ответ написан
    Комментировать
  • Присвоение значений выводам в arduino

    @iilinegor Автор вопроса
    Нашёл решение: сделать через аналоговые выходы

    #include <Bounce.h>
    Bounce right_Pin = Bounce( 11,5 ); 
    Bounce left_Pin = Bounce( 12,5 ); 
    
    int right;
    int left;
    
    void setup() {
      pinMode(10, OUTPUT);
      pinMode(11, OUTPUT);
      Serial.begin(9600); 
    }
    
    void loop() {
    
      right_Pin.update ( );
      left_Pin.update ( );
    
      right = right_Pin.read();
      left = left_Pin.read();
    
      delay(100);
    
      if (analogRead(A0) > 900 || analogRead(A1) > 900) {
        Serial.print("RIGHT!\n" );
        digitalWrite(10, HIGH);
        tone(11, 300, 200);
      }
    
      delay(100);
      digitalWrite(10, LOW);
    
      if (analogRead(A0) > 600 && analogRead(A0) < 700 &&
        analogRead(A1) > 600 && analogRead(A1) < 700) {
        Serial.print("DOUBLE!\n" );
        digitalWrite(9, HIGH);
      }
    }
    Ответ написан
    Комментировать
  • Как в SQL запросе изменить значение поля, в зависимости от значения в другом поле?

    fornit1917
    @fornit1917
    Не проверял, но имхо как-то так должно работать (без использования T-SQL или других расширений).
    Написал для первого случая, для второго аналогично

    UPDATE t as t1 
    SET rev_val=1
    WHERE t1.field_id=402 AND t1.obj_id IN (
        SELECT t2.obj_id FROM t as t2 
              WHERE t2.field_id=208 AND t2.float_val>1000 AND t2.float_val<2000
    );
    Ответ написан
    Комментировать
  • Как в C# при помощи Regex найти вхождения с символов?

    martsen
    @martsen
    Программист-дроновод
    Только коментарии в стиле //:
    Regex comments = new Regex(@"(//.*)");
    Все коментарии:
    Regex comments = new Regex(@"(/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+/)|(//.*)");


    Finding Comments in Source Code Using Regular Expr...
    Ответ написан
    1 комментарий
  • VS 2010 не могу подключиться к облачному TFS

    SychevIgor
    @SychevIgor
    пишите на форум msdn. Там ответят тк там сидят в том числе и разработчики этого счастья.
    Ответ написан
    1 комментарий