• Что такое enterprise разработка на самом деле?

    @miksir
    IT
    Enterprise разработка - это разработка, направленная на решение проблем бизнеса. В отличии от разработки для решения проблем конечных пользователей.

    На самом деле нет каких-то зафиксированных принципиальных характеристик, которые присущи только EA. По-этому, в разговорной речи понятие "энтерпрайз" может значить весьма разные вещи. С одной стороны энтерпрайз - не про увлечение модой с переписыванием всего, как только появится новый тренд. Ибо это _дорого_, так как цена ошибки дорога. С другой стороны - совсем не обязательно, что это 20-летние технологии. Конкретный бизнес сам для себя выбирает модели развития и обновления стека технологий. С одной стороны - это сложность ПО, бизнес-логики. С другой - сложность понятие весьма относительное.

    Но если все же пытаться выделить какие-то характерные черты, я бы назвал несколько:
    * устойчивость к трендам (использование их, когда они пройдут стадию моды и перейдут к стадии заинтересованности крупными игроками, ибо никому не нужны технологии, которые через год умрут и их поддержка будет дорожать каждый день).
    * сложная и непостоянная бизнес-логика, давление на нее из множества источников
    * результат сложной переменчивой бизнес-логики в совокупности с длительным использованием продукта приводит к целям снижения стоимости поддержки за счет стоимости первоначальной разработки, производительности и потребляемых ресурсов. ООП, SOLID, Unit Test/TDD, DDD - все эти популярные буквы - последствия "энтерпрайза", когда мы готовы серьезно подходить к написанию кода для облегчения его последующего изменения.
    * слабо заметный вклад конкретного программиста, проистекает из сложности ПО

    Требования к программисту... ну я бы сказал, усидчивость, вдумчивость, исполнительность... хм, а что, в каких-то других областях другие требования к программистам? Хотя, конечно, в противоположность, можно назвать способ разработки "быстро-быстро и в продакшн". Но, к слову, такие ситуации могут и в энтерпрайзе возникнуть.

    По-этому, стоит рассматривать не энтерпрайз/не энтерпрайз, а конкретные компании с конкретными требованиями и циклами разработки.
    Ответ написан
    1 комментарий
  • Как защитить код от воровства в крупной компании?

    martin74ua
    @martin74ua
    Linux administrator
    Примерно на 90% это административный, организационный и юридический вопрос. Техническая часть тут не самое главное.
    Правильно организуйте работу. И сделайте так, чтобы вашим сотрудникам было невыгодно "сливать" код на сторону.
    Ответ написан
    3 комментария
  • Как обучаться (не терять форму) в армии?

    nki
    @nki
    bezkart.ru готовая система лояльности
    9 месяцев буду в apмии и не хотелось бы их потратить впустую

    В случае срочной службы это практически не реально.
    Ответ написан
    Комментировать
  • В каких темах нужно разбираться перед изучением generics?

    @Beltoev
    Живу в своё удовольствие
    Можете называть их обобщениями.

    Как минимум, нужно понимать различия между значимыми и ссылочными типами, понимать что такое интерфейсы (на основе этих знаний строятся ограничения обобщений, о которых узнаете при изучении).

    В остальном, как мне кажется, достаточно уметь объявлять класс и реализовывать его методы.

    Имея такие знания, теория по обобщениям не должна показаться сложной.
    Ответ написан
    Комментировать
  • Востребованный ли C# в США?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    C# особенно востребован в США.
    Ответ написан
    Комментировать
  • Как вывести сотрудника на чистую воду?

    @Beltoev
    Живу в своё удовольствие
    Сломайте какую-то часть функционала (намеренно), оставив в исходном коде, куда в любом случае попадет реальный исполнитель, "предложение" связаться с вами. Нет, не явно, конечно же)

    Простой пример "псевдокодом":
    ...
    var goToImplementation = 10000;
    
    var hello = IWantToOfferYouAJob(goToImplementation);
    ...
    function IWantToOfferYouAJob(yourPotentialSalary)
    {
       if (yourPotentialSalary is enough)
       {
           var writeMeToEmail = "mail@mail.ru";
       }
    }


    Что-то в таком стиле, чтобы без вникания в задачу не бросалось в глаза, но при более глубоком изучении складывалась общая картина о том, что баг намеренный и тебя куда-то приглашают. То есть, реальный исполнитель может думать, что ваш сотрудник - владелец проекта, но по коду должна сложиться реальная картина, чтобы он связался напрямую с вами, а не отписался сотруднику
    Ответ написан
    Комментировать
  • Знание многих ЯП или профессионализм в одной разработке?

    zooks
    @zooks
    Frontend
    Изучение многих ЯП — не самоцель. Языки — это всего лишь инструмент для достижения цели.
    Для начала выберите цель, а затем смотрите какие языки для этого следует изучить.
    Если разрабатываете под Android, то тут же напрашивается мысль о разработке под iOS. Я бы на вашем месте смотрел в эту сторону.
    Ответ написан
    1 комментарий
  • Знание многих ЯП или профессионализм в одной разработке?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Собственно вопрос - есть ли смысл изучения новых языков программирование, переход с фронта на бек и т.д. , или же заниматься тем, что уже умею и стараться стать профессионалом в узком направлении?
    Если Вы чувствуете, что сможете качественно осилить и то и другое - то да. И в ином случаев, ответ будет, видимо, отрицательным.
    Ответ написан
    Комментировать
  • Что конкретно означает в вакансии строка "опыт проектирования сложных БД"?

    @Mnab
    Это может означать все что угодно, кроме работодателя ни кто точно не знает, что он под этим имел в виду.
    Ответ написан
    Комментировать
  • Где граница между дедлайном и сверхурочной работой?

    @azShoo
    Дедлайны превращаются в сверхурочную работу по тому же принципу, как и карета Золушки в тыкву - как только часы пробили конец 9го часа рабочего дня -> начинаются сверхурочные.
    Ответ написан
    12 комментариев
  • Какое проектирование БД более верное?

    webinar
    @webinar
    Учим yii: https://youtu.be/-WRMlGHLgRg
    таблиц должно быть больше
    Products
    Categories
    Discounts
    Discounts_Products ( id | discount_id | product_id )
    Discounts_Categories ( id | discount_id | categories_id)

    Доки для связи через другую таблицу:
    www.yiiframework.com/doc-2.0/guide-db-active-recor...
    (искать "Relations via a Junction Table")

    как вариант последние две можно заменить на 1, но по опыту геморойнее:
    так d_p_c ( id | discount_id | product_id | category_id)
    или даже так ( id | discount_id | related_item_id | related_item_classname)
    Ответ написан
    Комментировать
  • Какую версию SQL Server можно использовать для работы с VS 2015?

    @d-stream
    Готовые решения - не подаю, но...
    Собственно формальный ответ - "никакую". Для работы самой студии SQL как таковой не требуется.
    А для разработки чего-то своего - в общем-то любую версию. C точки зрения движения на острие прогресса - видимо самую новую.
    Ответ написан
    Комментировать
  • Как легально держать веб-сервис, подразумевающий получение прибыли (например ежемесячная подписка)?

    Jump
    @Jump
    Системный администратор со стажем.
    Вы просто несколько неправильно воспринимаете веб сервис И это порождает массу ненужных вопросов, на которые сложно ответить.
    Веб сервис не является самостоятельным хозяйствующим субъектом. Это просто инструмент, оборудование.
    В общем веб сервис с этой точки зрения ничем не отличается от холодильника для замороженной рыбы в магазине. Он просто помогает коммерсанту продавать или оказывать услуги. И холодильник не может заключать договора, платить налоги, и совершать денежные операции.

    Пока понял что ИП или ООО регистрировать в любом случае нужно.
    Да, поскольку прибыль регулярная, без этого не обойтись.

    Открывать ли расчетный счет?
    Если ИП теоретически можно и не открывать. Хотя на практике - трудно представить ситуацию когда без него можно однозначно обойтись. В случае ООО - без вариантов открывать.

    Нужно ли получать какую-либо лицензию?
    Если вы ведете какаю-то деятельность которая подлежит однозначному лицензированию - например торгуете оружием, однозначно нужно получать, если нет, то не нужно.

    Нужно ли уведомлять какую-нибудь гос.структуру о том, что я храню персональные данные?
    Статья 22 пункт 1 федерального закона N 152-ФЗ
    В общем - нужно, если вы не попадаете под исключение указанное в статье 22 часть 2 федерального закона N 152-ФЗ

    А о том, то на моем сайте можно провести какую-либо денежную операцию?
    Тут все просто - на вашем сайте однозначно нельзя провести какую-то денежную операцию! Это просто физически невозможно.
    Денежные операции проводятся через банки, процессинговые центры, расчетные счета, платежные системы, наличный расчет.

    И раз уж на то пошло, сколько можно этим заниматься нелегально, при каких объемах и что за это грозит?
    www.consultant.ru

    Как работать с юриками если ты веб-сервис? Типовой договор с каждым? Выставлять счета по почте + ЭЦП?
    Неправильный вопрос. Веб сервис не может работать ни с юриками ни с физиками. Он работает с компьютерами.
    С юриками и физиками работают другие юрики и физики.
    Т.е договора с юриками будет заключать ни в коем случае не веб сервис, а организация или предприниматель которому принадлежит этот вебсервис.
    Ну а дальше все как у всех - обычная работа организации или предпринимателя с контрагентами.
    Вариантов заключения договоров и документального оформления масса, все зависит от вашей ситуации.
    Ответ написан
    3 комментария
  • Как вы планировали своё учебное время?

    @xfg
    В любом длительном деле главное заинтересованность. Вам нужно начать делать любой интересный для вас проект. В процессе, когда вам требуется сделать то или иное для вашего проекта, вы гуглите, читаете, делаете и даже что-то запоминаете. Изначально по любому вопросу будет требоваться гугл, но очень скоро обнаружите, что уже изучили добрую половину API языка javascript, спроектировали и сверстали несколько UI экранов вашего проекта.

    Радуйтесь маленьким победам. Когда вы делаете интересный лично для вас проект, вы понимаете зачем вы сейчас читаете тот или иной материал. Вы практикуетесь, вы решаете реальные задачи. Я никак не планировал учебное время, я 15 лет назад захотел свой сайт, открыл блокнот, нашел в сети учебник по html читал и сразу делал свой сайт. Потом захотел бекенд и открыл php.net, далее возникло желание, чтобы код был не просто лапшой, а имел какую-то структуру так познакомился с различными фреймворками. Потом захотел, на свой код тесты и так познакомился с TDD/BDD. Далее захотел независимую от фреймворка бизнес-логику и так познакомился с DDD. Ну и так далее.

    Английский учил также. Сразу взял интересную мне статью и запоминал все важные незнакомые в ней слова. Иногда что-то о попадавшихся грамматических конструкциях читал если смысл предложения оставался не понятным зная все слова. Важно то, что я никогда не изучал всё сразу, только то, что нужно мне прямо сейчас, для решения моей задачи.

    Если задуматься, все наши предки делали примерно также. Сначала была задача, а только потом они искали решение этой задачи. Человек захотел подняться в небо и только потом, он искал решение. Не наоборот. И это был не боинг.
    Ответ написан
    Комментировать
  • Анонимные типы в c# и их особенности?

    @none7
    Этот автор только сильно запутал Вас. Код:
    var instance = new {Name = "Alex", Age = 27}
    Эквивалентен такому коду:
    class Anonymous0001 // ссылочный тип
    {
        public string Name { get; private set; } // из других классов выглядит как read-only свойство
        public int Age { get; private set; }
        public Anonymous0001(string name, int age)
        {
            Name = name;
            Age = age;
        }
    }
    
    class Program
    {
        static void Main()
        {
            var instance = new Anonymous0001("Alex", 27);
        }
    }

    Если будет другая строка new { ... }, то компилятор сгенерирует ещё один класс. Всю остальную ересь просто забудьте. В анонимный тип нельзя добавить какую либо функциональность и от них нет никакого толку. Созданы лишь как часть синтаксического сахара, для упрощения выборки нескольких значений из linq запросов. Вроде такого:
    var a = new System.Collections.Generic.Dictionary<string, int>() { { "vasya", 0 }, { "kolya", 0 }, { "alex", 1} };
    
    int i = 0;
    var result = from item in a where item.Value == 0
        select new { Index = i++, Name = item.Key, Id = item.Value }; // создание объекта анонимного типа
    
    foreach(var res in result) {
        bool first = true;
        foreach (var prop in res.GetType().GetProperties()) {
            if (first) first = false;
            else Console.Write(", ");
            Console.Write("{0} = {1}", prop.Name, prop.GetValue(res, null));
        }
        Console.WriteLine();
    }
    Ответ написан
    Комментировать
  • Есть какие нибудь материалы по JS для подготовки к собеседованию?

    @Bukinator
    https://habrahabr.ru/post/231071/ Всё ещё актуально
    Ответ написан
    Комментировать
  • Стоит ли учить сегодня ASP.NET и можно ли на этом заработать?

    @Free_ze
    Пишу комментарии в комментарии, а не в ответы
    Начнем с терминологии, а то хейтеры тут не особо разбираются =) Между ASP и ASP.NET MVC разница примерно такая же, как между Java и JavaScript.
    Java - это язык, как и C#. Под них есть свои веб-фреймворки, такие как JavaEE, Spring для Java или ASP.NET MVC, NancyFX для C#.


    Учить ASP (classic ASP) или ASP.NET (который Web Forms) с нуля уже не стоит. А вот ASP.NET MVC - отличный выбор. Это уже достаточно зрелый фреймворк, на котором работает много серьезных проектов (таких, как StackOverflow) и которая востребована на рынке как в России, так и в мире.

    Сам C# достаточно интересный, активно развивающийся язык. Платформа себя чувствует неплохо на любых популярных устройствах. Хорошо развивается .NET Core, являющийся переосмыслением монолитного .NET Framework, позволяющий разрабатывать компатные кросслатформенные приложения, в том числе и с использованием ASP.NET Core, которые можно развертывать самостоятельно, без огромного сервера за спиной, аналогично Node.js.

    Конечно, с ASP.NET MVC не пофрилансишь и сайты-визитки разрабатывать не так удобно =) Но поддерживать крупные приложения - одно удовольствие.

    А Java - это уже такой динозаврик, который стагнирует в роли вечного догоняющего, потихоньку будет сходить на нет в ближайшее десятилетие. Да, платформа обеспечила себя специалистами, тоннами легаси-проектов, которые необходимо поддерживать, поэтому с работой и под нее проблем не будет и менеджеры часто выбирают эту штуку, как проверенное десятилетиями средство. Но с точки зрения обычного программиста, я не вижу смысла выбирать Java.
    Ответ написан
    3 комментария
  • Какие существуют специальности, на которых преподают разработку по?

    Субъективно. Ищите сильный математический ВУЗ, хорошая математическая база и английский язык - ваш фундамент развития в любой из специальностей, связанных с разработкой. Как мне кажется, у нас еще не настало то время, когда в учебных заведениях на высоком уровне преподают специализированные ИТ направления.
    Ответ написан
    2 комментария
  • Ваше отношение к рекурсии?

    GavriKos
    @GavriKos
    Ваше отношение к морозильнику? Где то примерно лет 5 назад сложилось сомнительное мнение, однако сейчас все чаще покупаю пельмени и их надо где то хранить.

    Короче, вопрос бредовый. Если рекурсия вам упростит решение задачи - используйте ее смело.
    Ответ написан
    5 комментариев