• Что использовать для фиксирования багов?

    @pudovMaxim
    web-developer
    Я бы посоветовал засунуть багу в какое-нить выходное отверстие на вашем теле, но боюсь это не очень вежливо :)
    Почему так говорю? Потому что фразы вроде лень баг заводить, и кому нечем заняться говорит о неправильном отношении к процессу разработки. Если Вам лень оформить по-человечески баг и Вы его скидываете отпиской в слаку, то точно такое же отношение будет и разрабов, они просто не будут смотреть на такие ленивые записки кого-то там.

    Теперь более конструктивно.
    Если есть жира, то лучше все делать через жиру, просто приоритет ниже или свои какие-то теги.
    Можно делать общую табличку багов в гуглодоках, или эверноте или вроде того. Оттуда ответственное лицо будет оформлять баги каждые н-дней в жиру. Если баги начинают расползаться по всяким докам и сервисам - это, имхо, полный отстой для разработчиков.
    Если же нет багтрекеров, то любой удобный для всей команды инструмент(а не только для манагеров) - трелло, гуглодоки, эвернот, асана, совсем простые todo листы и другие.

    По-хорошему должно быть одно место в конвейере разработки откуда нужно брать багу, а также одно место куда выдавать результат ее обработки.
    Ответ написан
  • Существуют ли микроконтроллеры с частотой 600 Мгц -- 1 Ггц?

    Ocelot
    @Ocelot
    Смотря что считать микроконтроллером? Если SoC с кучей встроенной периферии, то вряд ли. Если годится просто процессор или DSP, то навалом их:
    Cortex A7/A8, Analog Devices BlackFin, Texas Instruments C66x
    Ответ написан
    Комментировать
  • Что за устройство /dev/watchdog, что оно делает?

    Ocelot
    @Ocelot
    /dev/watchdog - это интерфейс к сторожевому таймеру (если он у вас есть). Процесс watchdog - демон, с этим таймером работающий. Сторожевой таймер - это железяка, которой периодически шлётся сигнал "всё ок, система не зависла". Если этого сигнала долго нет, он аппаратно перезагружает систему.
    lexpr.ru/node/513
    Ответ написан
    Комментировать
  • Как правильно собрать .exe на C++/CLR?

    Nipheris
    @Nipheris Куратор тега C++
    1. Нужно собрать релизную версию приложения. Не распротраняйте на другие компьютеры дебажные версии. Тогда "d" требовать не будет.
    2. Т.к. приложение на C++, оно будет требовать рантайм. Этот рантайм можно как слинковать статически, так и оставить динамически загружаемым. Это настраивается в свойствах проекта. Если слинковать статически - то тогда dll не потребуется, но и обновить рантайм отдельно от приложения будет невозможно.
    3. Если поставлять рантайм отдельно, как динамически загружаемый (т.е. чтобы была dll), то можно либо класть его рядом с exe, либо устанавливать redistributable версию райнтайма. Второе предпочительнее, т.к. тогда рантайм можно будет обновить с помощью системной обновлялки, если в нём будут найдены критичные проблемы.
    4. Чтобы точно узнать, что требует EXE для своего запуска (не считая модулей, загружаемых с помощью LoadLibrary), воспользуйтесь Dependency Walker.

    Более подробную информацию вы сможете получить на MSDN в разделе деплоя C++ приложений.
    Ответ написан
    2 комментария
  • Как правильно написать драйвера для usb устройства?

    ipswitch
    @ipswitch
    IT-инженер
    Ваша USB-хрень должна эмулировать клавиатуру. USB HID Ваше спасение. И никаких драйверов не надо. Гуглите USB HID class.
    Ответ написан
    Комментировать
  • Как хранить результат вызова системной команды?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    man popen
    #include <stdio.h>
    
    int main()
    {
        int n;
        FILE *f = popen("grep -c \"a\" < 1.txt", "r");
        fscanf(f, "%d", &n);
        pclose(f);
        ...
    }
    Ответ написан
    2 комментария
  • Как поместить "нетривиальный" объект в стуктуру?

    @Mercury13
    Программист на «си с крестами» и не только
    Одно из полей (в данном случае data в реализации item<Edge>) не имеет конструктора по умолчанию. Есть три пути.

    РАЗ. Придумать, как сделать, чтобы конструктор всё-таки был.
    class Edge : public EdgeBase
    {
    public:
      Edge (Point* firstPoint, Point* secondPoint) { init(firstPoint, secondPoint); }
      Edge () { init(NULL, NULL); }
      void init (Point* firstPoint, Point* secondPoint)
      {
        this->firstPoint = firstPoint;
        this->secondPoint = secondPoint;
      }
    private:
      Point* firstPoint;
      Point* secondPoint;
    };


    ДВА. Если объект копируется/переносится, можно воспользоваться такой штукой. С вашего позволения, упрощу задачу и вместо Edge заведу другой класс — ImmutableInt. Правда, этот код — попытка совместить ежа с ужом (непонятно, какую концепцию должен поддерживать Payload), но, тем не менее, работает.
    #include <iostream>
    
    class ImmutableInt
    {
    public:
        explicit ImmutableInt(int x) : fData(x) {}
        int data() const { return fData; }
    private:
        int fData;
    };
    
    template <class Payload>
    class ListItem
    {
    public:
        Payload payload;
        ListItem* next;
    
        ListItem() : next(NULL) {}
        ListItem(const Payload& x) : payload(x), next(NULL) {}
    };
    
    // Так писать нельзя — эта конструкция расшаблонивает все функции,
    // а конструктора по умолчанию как не было, так и нет!
    //template class ListItem<ImmutableInt>;
    
    int main()
    {
        ListItem<ImmutableInt> li(ImmutableInt(42));
        std::cout << li.payload.data() << std::endl;
        return 0;
    }


    ТРИ. Воспользоваться переменными шаблонами (variadic templates) C++11.
    #include <iostream>
    
    class ImmutableInt
    {
    public:
        explicit ImmutableInt(int x) : fData(x) {}
        int data() const { return fData; }
    private:
        int fData;
    };
    
    template <class Payload>
    class ListItem
    {
    public:
        Payload payload;
        ListItem* next = nullptr;
    
        template<class... Args>ListItem(Args... args) : payload(args...) {}
    };
    
    int main()
    {
        ListItem<ImmutableInt> li(42);
        std::cout << li.payload.data() << std::endl;
        return 0;
    }


    P.S. Хотя ImmutableInt — семантически тот же int и теоретически explicit не надо, всё-таки отметил — просто чтобы показать, что во втором случае мы передаём параметром ImmutableInt<42>, а в третьем — 42.

    P.P.S. Я упомянул слово «концепция». Это набор требований к типу. Что-то типа интерфейса — но, во-первых, никак не связано с ООП и его динамическим полиморфизмом, и, во-вторых, не столь жёсткое: как ты интерфейсом из Java наладишь концепцию «есть конструктор копирования» или «может делить себя на число и что-то выходит»? Синтаксическая поддержка концепций откладывается на C++17, но уже в C++03 было несколько концепций: InputIterator, DefaultConstructible, CopyAssignable и другие. А пока… концепция не поддерживается — ошибка компиляции где-то в страшенном стандартном хедере.

    P.P.P.S. Написав код
    template<typename type_t>
    struct item
    {
      item* next;
      type_t data;
    };

    вы автоматически потребовали от type_t концепцию DefaultConstructible (есть конструктор по умолчанию)
    Ответ написан
    1 комментарий
  • Какой купить микроконтроллер домой?

    4. Arduino Uno оригинал от китайских отличается обычно микрухой для связи с ПК (надо будет лишь поставить драйвер), разъемами USB и др мелочами, не влияющими на работу. По функционалу они одинаковы.

    3. Насчет паяльника не знаю, а вот беспаечная макетная плата (лучше большую), мультиметр, рассыпуха (диоды, резисторы, сервоприводы, I2C - модули, сдвиговые регистры и прочее содержимое Arduino Kit'ов будет весьма полезно) + блок питания будут не лишними, скорее всего.
    Причем с ценами Китая можно и мегу сразу взять за ~400-500 руб.
    Также весьма полезен будет логический анализатор для анализа того, что на ножках Ваших устройств происходит.
    Может быть провода.
    Как надоест Arduino перейдете на её программирование на C, asm или чем-либо еще, прямо на этой же плате.

    Как вариант что-то простое и быстрое из STM. Я вот сейчас STM32F103C8T6 балуюсь (140р) + ST-LINK (190 р.). 32 разрядные вычисления и возможность компенсировать кривизну рук задиранием частоты вплоть до 72 МГц. :)
    Ну или поискать DISCOVERY, у неё изначально уже много плюшек на плате есть.
    Правда по STMкам уже меньше информации, чем по Arduino. Также из возможных минусов 3.3 В логика. Правда есть и преобразователи уровней, довольно недорогие.

    Если брать Kit'ы, то возможно что-то будет лишнее и нафиг не нужное, с другой стороны очень удобно, когда у тебя есть с чем начать обучение. По крайней мере таже серва, индикаторы, резисторы и т.п. , а не осознать, что мне нужно это и это, но теперь ждать еще месяц посылку.

    А с бюджетом 100$ можно купить практически всё вышеперечисленное на Ali.

    ______________
    UPD
    5.
    По ардуине есть на сайте амперки видеоуроки от Джереми Блума (вроде так)
    Там же простенькие проекты, которые помогут освоить железки
    https://www.youtube.com/watch?v=bO_jN0Lpz3Q&list=P...

    Последнее, что использовал по STMке вот отсюда:
    https://www.youtube.com/channel/UCG6ukCIfzURcjdq4T...
    ну и это еще немного
    https://www.youtube.com/user/Sappise/playlists
    Ответ написан
    7 комментариев
  • Какую программу использовать для проектирования принципиальных схем?

    @aol-nnov
    KiCAD, например.
    Ответ написан
    Комментировать
  • Как преодолеть барьер перехода от теории к практике?

    trevoga_su
    @trevoga_su
    забудь об фреймворках, МВС и OOP
    не засоряй себе сейчас мозги этим
    тебе до понимания этих вещей как до китая пешком
    пиши свой гвнокод и все
    ты сам ко всему этому потом прийдешь

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

    На Github есть Awesome
    Это корневой список с которого можно начать поиск.
    Ответ написан
    Комментировать
  • С чего начать или где найти информацию по схемотехние?

    @ruGuardian
    Харрис и Харрис «Цифровая схемотехника и архитектура компьютера»
    Там про всё и то, что вам нужно - тоже. Правда архитектура mips, но в вашем случае это скорее даже плюс.
    Ответ написан
    Комментировать
  • Как убрать постоянную перекомпиляцию проекта (и всех его зависимостей) в Visual Studio?

    GavriKos
    @GavriKos
    Возможно у вас была/есть неправильная дата. Что можно попробовать сделать: удалить все pdb, obj и прочие временные файлы, оставить только код. Если есть какие то файлы среди кода, которые были созданы "в будущем" - поставить им адекватную дату (пересохранить). Убедиться что у всех файлов в проекте дата <= текущей. Ну и перекомпилить все.
    Ответ написан
    Комментировать
  • Выдает ошибку при компиляции C++, Как решить?

    @res2001
    Developer, ex-admin
    Какая ошибка то?
    У вас подозрительные какие-то символы » и «. Если они же и в реальном коде, то это не правильно - правильно >> и <<.
    Ответ написан
    1 комментарий
  • Как стать программистом в банке?

    @LowCoder
    Takoi
    Работал.
    Устроится можно - тут совершенно правильно подсказали, что изучите требования на сайтах работодателя и постарайтесь под них подстроится. Изучите технологии, которые востребованы в описаниях вакансий. Очень советую написать несколько статей и дать в резюме на них ссылки. Этим хоть как то можно показать свою экспертность. Это ценится. Очень нелишне будут всякие сертификаты. Можно от Майкрософта, очень неплохо от Оракла - оракл часто юзают в банковской сфере. Так же как и Sybase. По MSSQL тоже можно. MCSD не помешает. Жаль по юниксу нет (скажем так лично я не знаю) представительных сертификаций но можно найти что то на BrainBench.
    Из преимуществ работы в банке могу сказать, что наверно у программистов банковских программ скорее выше зарплата. И она достаточно стабильна. На этом пожалуй все преимущества заканчиваются и начинаются недостатки.

    А именно - в банках есть некое негласное разделение золотые воротнички (высший менеджмент, который обитает в своих сферах и редко снисходит - у них там своя вселенная со своими законами своей гравитацией и законами физики) , белые воротнички - клерки и синие. Это уборщики, техперсонал и ... программисты, как правило. Я не могу сказать про все банки ... но будучи сам и белым и немного позолоченным и потом программистом могу сказать что в целом картина такая. Наверно есть оазисы ... но сейчас не могу сказать, давно ушел из мира банков, хотя сейчас работаю именно в области финансов.
    Т.е. отношение .. ну как к тех персоналу. Какая-нибудь тетя из кредитного отдела, у которой обязанности нажимать в день две кнопки, по которым получается какой-нибудь отчет для начальства будет смотреть с высоты своего положения :) немного свысока на молодого выпускника физтеха кто во сне решает дифуры сходу.
    Работа как правило тоже малоинтересная с точки зрения программиста - довольно скучные приложения в основном клиент сервер туда сюда данные, формы, формы с числом полей приближающихся к бесконечности, джава апплеты зачастую страшные как атомная война.
    Но это еще хорошо, ибо большая часть работы это поддержка. И это самый ужос. Копаться в технологиях, зачастую древних как мумие мамонта. Я сейчас работаю на американскую финансовую контору - так там даже еще майнфремы пашут. Все это было написано тогда когда еще компьютеры были большими и тепло-ламповыми и везде ползали трилобиты и трилобайты. И самое страшное, что это все работает. На эмуляторах конечно. Представьте себе эмулятор под древний майнфрейм - и причем оный эмулятор работает из под винды. А на нем проги бегут на Алголе. И ЭТО рулит реальными (по российским масштабам нереальными) деньгами. Как … никому не ведомо. Интересно? И это в то время как космические бульдозеры сравнивают Большой театр за самострой :).
    Сюда прибавить бюрократию и строгую иерархию (начальник моего начальника не мой начальник) – никаких диванчиков в стиле гугла и яндекса и детских игрушек. Все строго с 9 и до "солнце еще высоко" – обеды в офис и все такое. Никаких, как правило, удаленок и прочих элементов сладкой жизни. Опять же, как правило, никаких поездок и загранкомандировок с интеллектуальными играми, тургеневскими барышнями, ночными освежающими прогулками по Тендерлойн и Кастро в Сан Франциско (для тех кто понимает :)), веществами и напитками в номер. Для рядовых программистов конечно.
    Как правило, весь действительно интересный софт для банков пишут отдельные конторы. Хотя есть гиганты в, которых довольно мощные центры разработки. Есть в Москве такой банк из крупных международных.
    Т.е. если интересная финансовая сфера, то лучше таки пойти в контору, которая изначально программисткая и для программистов. Работа там гораздо интереснее и вы как вроде там не синий воротничок на седьмом киселе, а самая что не на есть белая кость и уважаемый человек – одним словом Программист, а не какой то там клерк :).
    В связи с массовым «импортозамещением», платными парковками и прочими радостями современных реалий (вт.ч. курсом доллара) многие конторы сейчас переводят весь персонал в какие то более теплые и спокойные страны, что конечно делает жизнь скучнее но работу плодотворнее и вообще открывает перспективы. Да и свой евро ближе к телу. Так что может повезти чего не скажешь, про работу в среднем Российском банке. Ах да из преимуществ можно еще отметить мегакорпоративы на новый год )) Но это только раз в году. Так что преимущество сомнительное тем более, если не любитель пышных женщин и вообще жизненных излишеств.
    Вот где действительно интересно – это все что связанно с биржами и трейдингом. Это некий свой особый мир, лежащий чуть в стороне от классического банкинга (читай расчеты). Это специфическая область и там все серьезно и плане математики и в плане технологий. Одна из лучших контор в которой мне довелось работать, это контора связанная с биржевыми данными и трейдингом. Контора американская, но работает в Москве. Очень высокий уровень разработки и культуры управления. Требует серьезного уровня подготовки. Все в основном на С++ и С - все остальное по скорости безнадежно сливало – работа в терминах микросекунд) под правоверный линкус. Советую, если не радует рутинная бесконечная унылая работа рваться в эту область. Еще можно попробовать оценки рисков. Но вообще советую именно программерскую контору а не банк. Кстати мир загнивающего капитализма точно такой же, а не только в России такая картина. Тока на загнивающим надо пару нулей приписать к любой цифре, ну и в долларах все, а так в принципе то же самое.
    Но в трейдинговых конторах интересно, особенно если допустят до торговых алгоритмов. Для этого нужна хорошая мат. подготовка и программерская тоже. Но там зарплаты бывают ну очень большими и бонусы еще.. бонусы
    На хабре есть цикл статей от ITinvest – можно поискать .. почитать проникнутся. Написано очень интересно. Я проработал в этой области много лет но и сам много чего нового и интересного нахожу. Так на всякий случай я с ITinvest никак не связан вообще – так что с них стакан мангового сока за рекламу.

    Если сухой остаток то советую C C++ (Страуструп, Мейерс, Александреску, Саттер помогут и подскажут стандарты 11, 14, 17, boost и stl само собой после всего советую C++ Concurrency in Action, Williams - THE MUST и совершенно адскую книжищщу Addison.Wesley.C++.Template.Metaprogramming.Concepts.Tools.and.Techniques.from.Boost.and.Beyond - вырыв мозга с корнем), к сожалению много стало Java (не люблю жаву но реальность данная нам в ощущениях такова), хорошее ... очень хорошее знание Linux (само собой bash и Perl, Linux.in.a.Nutshell.6th.Edition - хорошая), Python совсем не лишен, алгоритмы - особенно на загнивающем - страсть как любят алгоритмы, 80% времени собеседований не про языки а про алгоримы ( советую скачать Introduction to Algorithms 3th, Cormen, Leiserson, Rivest, Stein.pdf ну и Кнута конечно) и очень хорошо это знание стека протоколов TCP/IP (UNIX._Network_Programming._3rd_ed Стивенса). Еще POSIX многопоточность - я лично учился по Системное программирование на C++ для Unix, Теренс Чан - книжка старая но по моему не потеряла актуальность и Unix Взаимодействие процессов, Уильям Стивенс и QNX-UNIX. Анатомия параллелизма, Цирюлик .О - последняя написанна просто и толково). С этим багажом можно уже выходить на очень приличный уровень. Конечно сразу не взять такой объем но в целом как то так. Ах да .. и английский конечно. На нормльном разговорном уровне.

    Вообще очень хорошая выжимка - короткая но четкая из брошюры по собеседованию для гугла. Она свободна доступна но вот из нее выдержка

    "Coding: You should know at least one programming language really well, preferably C++ or Java. For specific projects, we do also use C
    and Python but these are normally secondary languages at Google. You will be expected to write code in most of your interviews. You will
    be expected to know a fair amount of detail about your favorite programming language. Make sure to check out our Google code style
    guides. You will be expected to know about API’s, OOD/OOP, how to test your code, as well as come up with corner cases and edge cases
    for yours and other peoples code.

    Algorithms: You will be expected to know the complexity of an algorithm and how you can improve/change it. Big-O notations also
    known as the run time characteristic of an algorithm. If you get a chance, try to study up on fancier algorithms, such as Dijkstra and A*. For
    more information on algorithms you can visit TopCoder.

    Sorting: What common sorting functions are there? On what kind of input data are they efficient, when are they not? What does
    efficiency mean in these cases in terms of runtime and space used? E.g. in exceptional cases insertion-sort or radix-sort are much better
    than the generic QuickSort / MergeSort / HeapSort answers.

    Data structures: You should study up on as many other structures and algorithms as possible. You should especially know about the
    most famous classes of NP-complete problems, such as traveling salesman and the knapsack problem. Be able to recognize them when an
    interviewer asks you in disguise. Find out what NP-complete means. You will also need to know about Trees, basic tree construction,
    traversal and manipulation algorithms, hash tables, stacks, arrays, linked lists, priority queues.

    Mathematics: Some interviewers ask basic discrete math questions. This is more prevalent at Google than at other companies
    because counting problems, probability problems and other Discrete Math 101 situations surrounds us. Spend some time before the
    interview refreshing your memory on (or teaching yourself) the essentials of elementary probability theory and combinatorics. You should
    be familiar with n-choose-k problems and their ilk – the more the better.
    "

    Всего дело то :))
    Ответ написан
    2 комментария
  • Что значит использование внутриклассового инициализатора в конструкторе?

    "in-class initialization"
    Это фича C11;
    При объявлении класса раньше нельзя было делать вот так:
    class Foo {
     public:
      int bar = 42;
     };

    Инициализировать подобным образом можно было ток static const int типы. Для всего остального использовались списки инициализации после конструктора. Плохо когда конструкторов много. В 11 стандарте теперь разрешено инциализировать значением сразу же после объявления в классе.
    Ответ написан
    Комментировать
  • Почему AVR глючит на вычислениях в основной программе при разрешенных прерываниях?

    gbg
    @gbg Куратор тега Программирование
    Любые ответы на любые вопросы
    Арккосинус на AVR? Вы серьезно?
    FFT в реальном времени на AVR делается только по готовым таблицам, и то впритык по тактам умещается.
    Ответ написан
    Комментировать
  • Актуально ли второе высшее образование для программиста в области медицины?

    @NortaBirdo
    Для начала о себе: по образованию я врач-психиатр, по должности я ведущий бизнес-аналитик в фирме, которая пишет медицинский софт.

    Ответ коротко: нет, не нужно.

    Подробно:
    1. Высшее образование в медицине (я имею ввиду лечебный факультет, стоматологию (5 лет) и фармацевтику (5 лет) не рассматриваю) это 6 лет. После этого вы обязаны 3 года отработать врачом общей практики. После этого у вас специализация от 2 до 5 лет в зависимости от специальности. Чтобы пройти специализацию бесплатно, вам надо быть краснодипломником или к ним приближенным (что ой как не просто) чтобы пройти конкурс на федеральную льготу. Если по федералке не прошли, то остаются два способа: заплатить (простейшие специальности типа терапевта участкового стоят порядка 100 тыс./год), либо продаться больнице на 3 года (больница оплачивает вам обучение, а вы потом эти деньги отрабатываете). Если вы не проходите специализацию (это возможно) то значит практического опыта у вас по нулям. Ценность ваших знаний для разработки ПО -10 по шкале от 0 до 10 (я не опечатался, величина отрицательная при положительной шкале). чтобы понимать реальные потребности бизнеса вам нужен опыт, чтобы его получить вам надо: 1) пахать студентом в ночные смены мед.сестрой 2) пройти практику специализации.
      Кстати летние практики вам тоже надо проходить, и ночные дежурства в них тоже входят.
    2. На лечебном факультете заочки нет.
    3. Пропускать занятия - нельзя. Пропускать лекции - нельзя. Присутствие на лекциях проверяют, часто не ленятся пофамильно проверить весь курс (~300 человек). Пропускать сдачи историй болезни крайне не рекомендуется (хрен найдешь потом препода, а если найдешь - еще и хрен сдашь). Двойки получать - нельзя. Они штрафуются и/или отрабатываются (очно). Деканат обычно на стороне кафедры. Т.е. то что ты получил пару, потом не осилил 3 из 3 отработок в этом семестре и теперь тебя кафедра не допускает до сессии (кстати экзамена у этой кафедры в эту сессию может и не быть, но она все равно должна поставить допуск) - твои проблемы и только твои. Не выход на сессию - отчисление.
    4. Обучение медицине одно из сложнейших. Вам придется заучивать огромные объемы информации. Там нет логики. Например, чтобы сдать простейший (!) экзамен по нормальной (бог с ней, с патологической) анатомии вам придется заучить три тома анатомического атласа формата а4 по 600 страниц в каждом мелким шрифтом на латыни+русском + уметь все это показать на трупе (да-да, на три года ваш второй дом - анатомичка, есть, одной рукой ковыряя в трупе - это норма) Когда заучите, это первые года три - придется учится принимать решения исходя из всей этой информации
      Добавьте к этому: мудаков профессоров коих +50% в каждом вузе, разброс знаний: вам нужно будет ориентироваться в мед.биофизике, органической и неорганической химии, биохимии, биологии, ну профильных дисциплинах (первые три года - норма и патология тела+общая фармакология, вторые три года - клинические кафедры, когда собственно начинаем учить болячки (и да, тут снова придется кучу всего заучивать, но уже проще). Завершается это клинической фармакологией, которую заучить не возможно. Ты либо помнишь и понимаешь все свои 6 лет, либо очень плохо быть тобой)
    5. Для того чтобы писать медицинский софт в команду нужны бизнес-аналитики + грамотный архитектор + нормальный представитель на стороне клиента. Как и везде. Именно эти люди формируют техническое задание, осуществляют проектирование. К тебе в итоге уже придет конкретное задание вида "сделай класс А"
    6. Что бы быть хорошим бизнес-аналитиком, тебе на старте нужна не столько предметка, сколько методологии бизнес-анализа. Ты должен понимать как вытащить из пользователя что ему надо и зачем
    7. 95% рынка - это базовые учетные контуры (регистрация пациентов и их историй болезней/мед.карточек). Мед. тут не поможет вообще ни как от слова совсем. А вот хороший лид + внятный клиент + светлая голова и скрупулезность = profit. Оставшиеся 5% это исследовательские задачи, но тут без domain subject expert все равно не обойтись, даже если ты медик.


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

    На сколько востребованы в целом специалисты по медицинской информатике? Очень востребованы. Рынок только развивается, поле - не паханное.

    P.S. Если хочется по работать в сфере мед.информатики - напишите, можем пообщаться.
    Ответ написан
    8 комментариев
  • Си или Go для приложения по обработке сетевого трафика до 1.5М пакетов/с?

    @mantyr
    Пишу много Golang кода с удовольствием:)
    Для обработки сетевого трафика больше подойдёт модуль ядра Linux написанный на Си. Если кто-то умеет такое делать на Golang - дайте знать, с удовольствием послушаю, почитаю на эту тему... Агрегированные же данные (прилетающие от такого модуля) вполне хорошо обрабатывать на Golang (в этом случае можно не заморачиваться одной железкой, а поставить сразу несколько распределив по ним трафик).

    P.S. Возможно речь идёт не о linux, но в топике это как-то отдельно не оговаривалось.
    Ответ написан
    4 комментария
  • Как скомпилировать "hello world" на с++ при помощи кросс-компиляции?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    как использовать кросс-компиляцию

    Ровно так же как и обычную, только вместо обычного компиятора вызывать кросс-компилятор.
    Например, нужно Hello World, написанный на c++ скомпилировать под ARM Cortex™-A7 с помощью gcc. Как это сделать?

    arm-buildroot-linux-gnueabi-gcc hello-world.c -o hello-world

    Если у вас есть какая-то система сборки -- смотреть документацию системы сборки о том, как указать архитектуру и компилятор.
    Например, для autotools нужно вызвать ./configure --target=arm-linux-gnueabi CC=arm-buildroot-linux-gnueabi-gcc
    (или --host=arm-linux-gnueabi, зависит от самого приложения).
    Ответ написан
    Комментировать