• Как научиться строить модели БД sql в связке с С# (Цель- писать понятные ТЗ для программистов С#)?

    Nipheris
    @Nipheris Куратор тега C#
    Сложно вам посоветовать в такой ситуации что-либо. Интересно, чем занималась контора та, что программисты C# с sql не знакомы, разве что играми..
    В целом вам надо ознакомиться с современным представлением о реляционных БД (вы же все-таки аналитик, вам нужно знать на разных уровнях и масштабах), с архитектурой приложений, использующих РБД (толстые и тонкие клиенты, веб-приложения), и потом уже некоторые детали касающиеся языка.
    С точки зрения программиста C#, я бы от вас как от аналитика ожидал знание различных принципов и дисциплин доступа к рел. данным, а именно:
    - использование ORM: когда можно и нужно), когда хочется, но нельзя, когда можно "толстую" ORM (Entity Framework, NHibernate), а когда - тонкую (LINQ to SQL); использование кода на стороне БД - триггеры, хранимые процедуры;
    - принципы построения слоев доступа к данным в сочетании с бизнес логикой (паттерны и антипаттерны в этих ситуациях, например Anemic Data Model);
    - способы контроля версий схемы реляционной БД - миграции, source control для триггеров и хранимых процедур (если они есть), политики обновления схемы вместе с выкатыванием новой версии ПО;
    - формирование тестовых данных в тестовых базах;

    Вот если сможете по этим вопросам проконсультировать, то разработчикам останется только подучить SQL и конкретную ORM, если будете использовать.
    Ответ написан
    5 комментариев
  • Как хранить и записывать в базу большое количество строк?

    MaxDukov
    @MaxDukov
    впишусь в проект как SRE/DevOps.
    давайте для начала разберемся с математикой.
    3500 за 2 часа - это 49000 за 24 часа (а скорее меньше, загрузка то днем наверняка больше, чем ночью). Уже не 100 000.
    много ли 500Кб? все зависит от глубины хранения, производительности сервера и того, что Вы планируете с этими данными делать.
    глубина: 500кб(за 2 часа)*12 = 6Мб. 180 мб в месяц, 2,2 гига в год. У меня на одном из серверов есть БД на 12 гигабайт, с таблицами по 7-8 млн строк. работает вполне шустро.
    производительность: Если Вы решите хранить данные, предположим, 10 лет, и получите в результате 20-30 гигов данных - то глупо рассчитывать крутить все это богатство на сервере с 1-2 Гб памяти и медленными дисками.
    использование: Если эти данные будут только накапливаться и изредка извлекаться - это одно. Если параллельно с записью будут идти активно селекты - это другое. Но тут все опять-же повлияет на требования к производительности.

    скажем так, на любом современном железе с нормальным объемом памяти (гигов от 8) Ваша база в обозримом будущем(2-3 года) будет чувствовать себя нормально. Хотя активность запросов на выборку может внести свои коррективы в оценки.
    Ответ написан
    1 комментарий
  • Как откатить Windows 10?

    IonDen
    @IonDen
    JavaScript developer. IonDen.com
    Комментировать
  • Какие есть способы привязки банковского счета к сайту?

    tlito
    @tlito
    drupal, c++, seo
    RoboKassa
    Ответ написан
    Комментировать
  • Как при запросе к двум таблицам назначить для каждой свой WHERE?

    svd71
    @svd71
    Если я правильно понял, то вам выдать часть записей из таблицы comments со своим условием и к полученным записям добавить записи из dell со своим условием. При этом обе таблицы не имеют общих ключей друг на други и какую то общюю таблицу(!?). Без такого условия вы получите кортезиан: каждая запись их comments будет повторяться столько раз, сколько существут записей в dell.

    Если же Вам требуются всетаки такие отдельные куски из этих таблиц, то можно воспользоваться объединением. Но фокус в том, что отсуствующие столбцы из двуж таблиц нужно симулировать:
    Select
    comments.post, comments.id, comments.parent_id, comments.name, 
    Cast(0 as integer) as ban, cast('' as varchar(200) as adm
    from comments where comments.post LIKE '$docid'
    
    UNION
    
    select cast('' as varchar(250)), 0 , 0, '', ban, adm from dell where dell.adm LIKE '$adm'
    Ответ написан
    3 комментария
  • Как передать данные формы в .xls?

    @mib
    Лучше попробовать не JS а VBS - ведь и ексель и vbs - суть микрософт

    www.techrepublic.com/forums/questions/vbscript-to-...

    И желательно интернет експлорер - он тоже микрософт.

    Это не готовый ответ, просто размышления
    Ответ написан
    1 комментарий
  • Display: flex; - как прописать его свойства для кроссбраузерности?

    @desuvin
    О таких вещах думать вообще не нужно, юзайте автопрефиксер
    Ответ написан
    Комментировать
  • Есть ли редактор файлов для сервера?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Не надо так делать. По куче причин - от огромных размеров дырке в безопасности, до отсутствия истории кода.

    Начните пользовать git или mercurial и настройте автодеплой на сервер.
    Ответ написан
    Комментировать
  • Общие файлы *.cs в несколький проектах с разной версией .NET Framework?

    GavriKos
    @GavriKos
    Возможность - есть. Но лучше так не делать. Если у вас есть какие то общие cs файлы - то выделяйте их в отдельный проект, линкуйте и прочее.
    Ответ написан
    Комментировать
  • Как не заплыть жиром, работая удаленно программистом?

    akubintsev
    @akubintsev
    Опытный backend разработчик
    Я уже более 2-х лет активно тренируюсь и могу поделиться опытом.

    Спортзал - штука очень спорная. Я не верю в то, что можно заниматься бесконечно долго по одной и той же схеме без утомления. В моём случае получался такой расклад, чтобы пойти потренироваться:
    - собрать сумку с необходимыми вещами для тренировки
    - добраться до спортзала
    - переодеться
    Только на этот этап можно потратить порядка часа.
    Далее сама тренировка около 1 часа.
    Затем душ, переодевание и обратный путь и вынуть просушиться вещи - ещё час.

    Итого: чтобы потренироваться пойти в спортзал нужно заложить 3 часа времени. А если ещё график не очень гибкий, то можно и в час пик попасть, когда зал переполнен и это вызывает неудобства из-за плотного графика упражнений.

    Лучше всего ориентироваться на домашние и уличные тренировки. Плюс тут несомненный в том, что как только появилось желание подвигаться - пошёл и поделал упражнения. Ещё один: можно делать несколько тренировок в день с минимальными затратами времени.

    Главный секрет поддержания интереса к тренировкам - научиться получать удовольствие от них. Для этого нужна непринужденная атмосфера и медленное сосредоточенное выполнение.

    Есть замечательная книжка Пола Уейда "Тренировка заключенных", где очень системно описаны группы упражнений для любого уровня подготовленности и практически в любых окружающих условиях.

    Но это только то, что касается силового тренинга.
    Я считаю, что есть смысл хотя бы 1-2 раза в неделю выполнять аэробную тренировку: бег, велосипед и т.п. В спортзале это делать чрезвычайно быстро надоедает - вокруг только серые стены, никакой реальной движухи. Через месяц уже тошно становится от беговой дорожки или велотренажера.

    Наверное еще добавлю, что на первых порах очень важно придерживаться плана тренировок. Это касается и графика по дням недели, и по составу. Где-нибудь через полгода-год можно уже импровизировать.

    Что касается питания. На мой взгляд самой прогрессивной диетой сегодня является LCHF. Суть сводится к уменьшению потребления быстрых и медленных углеводов до нуля, а калорийность обеспечивать жиром. Соответственно, белок само собой тоже нужен. Хороша она тем, что организм не ощущает каких-то лишений, голода нет. Жиры очень долго расщепляются, а без углеводов излишки будут выводиться организмом, вместо переноса в жировую ткань.
    Градации потребления пищи в зависимости от времени суток считаю профанацией. Можно разве что избегать питания тяжелой пищей менее, чем за 2 часа до сна.
    Ответ написан
    9 комментариев
  • Есть ли способ указать что на странице не копировать часть текста при Ctrl+C?

    In4in
    @In4in
    °•× JavaScript Developer ^_^ ו°
    -khtml-user-select: none;          \*/* Safari *\*/
    -moz-user-select: none;           \*/* Firefox  *\*/
    user-select: none;               \*/* Для...всех *\*/
    -webkit-user-select: none;      \*/* Chrome,Яндекс*\*/
    unselectable: on;              \*/* Выпендрежник IE*\*/

    Хабропост
    Ответ написан
    1 комментарий
  • Какие разработчики и ЯП популярны в США?

    Ashlst
    @Ashlst
    Фанат эстетики и красивых решений.
    Высококвалифицированные разработчики популярны везде.
    Важен уровень Вашего скилла,а не конкретный язык.
    Ответ написан
    Комментировать
  • Как хранить токены пользователя?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Шифровать не получится. Plain text.

    Надо понимать что основная причина шифрования паролей пользователей в базах - не потенциальный риск "хохо у нас сольют базу, но пароли не подберут" - а просто кармическая ответственность т.к у подавляющего большинства людей пароли в разных сервисах и почте совпадают.

    upd смежный вопрос:
    Какой из способов безопасного хранения критически важных переменных оптимален?
    Ответ написан
    2 комментария
  • Какую роль играют 2 амперсанда стоящие вне условной конструкции в JS?

    Denormalization
    @Denormalization
    Это можно переписать так:

    if ($(window).width() >= tablet)
    {
      size_media_container();
      isotope_projects();
      init_project_info_control();
    }


    Оператор && имеет особенность:
    Если левая часть false, то правая часть не будет выполнена.
    Просто введите в консоли:
    test = true;
    test && (alert(1), alert(2), alert(3));
    test = false;
    test && (alert(1), alert(2), alert(3));


    И увидите разницу.

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

    edli007
    @edli007
    full stack, team lead
    1. перестаем говнокодить устаревшими на 10 лет функциями, изучаем PDO.
    2. Читаем про auto_increment в MySQL
    3. Читаем про ORDER BY в MySQL
    4. Читаем про иньекции в MySQL
    5. Учимся верстать и не используем устаревшие на 15 лет теги.
    Ответ написан
    4 комментария
  • Как сделать ЧПУ с динамическими параметрами?

    @Shaman739 Автор вопроса
    получается, что нужно всегда передавать обе переменные.С годом и месяцем я для примера привел. В переменных могут быть и строки, которые пользователь ввел и по длине строки определить переменную не получится
    Ответ написан
    2 комментария
  • Стоит ли исправлять предупреждения интерпретатора PHP?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Я в шоке от того что люди на полном серьезе задают такие вопросы.
    Единственный вариант который имеет право на существование: на локальных, тестовых и прочих не продакшен серверах вывод всех ошибок и нотисов является строго обязательным, как и их исправление.

    Напомню, что при включении предупреждений выводятся сообщения о необъявленных переменных и индексах массивов.

    Если у Вас отключены нотисы - возникает огромный ворох плавающих ошибок с целостностью данных которые вы никогда не поймаете. Условно в каких то случаях модель вернула объект в котором какого то поля не хватает.
    Если ошибки включены - вы это увидите и исправите. Если выключены - php молча подставит дефолтное значение. Вы никогда не поймете почему нотис - потому что вам лень объявить пустую переменную, или потому что где то реально произошел сбой. Единственный случай этого избежать - всегда писать код который в нормальном исполнении не кидает нотисы.

    Мало того что ошибки нужно исправлять, по хорошему код нужно писать с обработкой exception и логикой "что делать если что то вдруг сломалось".
    Единственное место где вывод любых ошибок должен быть отключен для пользователя (но они все равно должн ы логироваться, обрабатываться и исправляться) - это production.

    PS
    Больше приходится писать код, меньше сил остаётся на разработку.

    Разработка это и есть написание кода который максимально правильно работает при любых внешних условиях.
    Ответ написан
    2 комментария
  • С чего начать изучение баз данных(sets, normalization, crud..)?

    zoonman
    @zoonman
    ⋆⋆⋆⋆⋆
    Читайте про теорию БД и множеств, типы данных, хранилищ и нормальные формы баз данных.

    Начинайте отсюда https://ru.wikipedia.org/wiki/%D0%91%D0%B0%D0%B7%D... и вглубь.
    И потом руководство к каждой конкретной базе.

    Кстати, CRUD = create, read, update, delete - т.е. все стандартные операции.
    Ответ написан
    Комментировать
  • Как отследить переходы с пластиковой карты по QR коду?

    MaxDukov
    @MaxDukov
    впишусь в проект как SRE/DevOps.
    добавьте в URL, закодированный в QR, соответствующий код
    Яндекс директ, метки
    Ответ написан
    Комментировать
  • Как сделать магнитный замок с пин-кодом на коробке?

    Neuroware
    @Neuroware
    Программист в свободное от работы время
    Принципиальной сложности в этом нет, вопрос лишь в том зачем это нужно и как будет использоваться. Основная проблема тут будет в том, что электронный магнитный замок требует энергию и в достаточно больших количествах, либо для отпирания, либо для запирания (в зависимости от реализации). Если "коробка" будет автономной, то в случае разряда аккумулятора ее либо не нельзя будет открыть, либо она откроется (опять же в зависимости от реализации).
    Второя проблема в недостаточной силе магнитных замков, в том виде коробки, что на картинке для вскрытия достаточно будет сдвинуть крышку вверх, магниты этому никак мешать не будут. Если же сделать "запорный механизм", чтобы сдвинуть было сложно, то опять же не проблема будет чем то поддеть и открыть замок, потому как магниты не настролько сильные, чтобы хоть как то защитить от вскрытия.
    В домах двери более менее надежны только потому, что фактически идет отрывание одного магнита от другого и энергии на подпитку электромагнитов можно выделить много и магниты использовать больше и сильнее, в вашем случае энергия вероятно ограничена как и размеры и мощность магнитов.
    Итого:
    Реализовать подобное нет смысла, разве что в качестве игрушки.
    Сама идея "коробки" с пин кодом может иметь смысл, если:
    1. другое исполнение коробки
    2. коробка стационарна
    Ответ написан
    4 комментария