• Какие разработчики работают с алгоритмами?

    wataru
    @wataru Куратор тега Алгоритмы
    Разработчик на С++, экс-олимпиадник.
    К сожалению, алгоритмы применяются не очень часто, а во многих областях - практически не применяются. Могу лишь сказать, что чем фундаментальнее проект, тем больше там алгоритмов.

    Например браузер. Лично мне приходилось в хромиуме писать и динамическое программирование и дихотомию и всякие хитрые структуры данных.

    Из вашего списка скорее подходят бакенд и desktop. Еще очень алгоритмоемкая область - разработка игр. Вот там нужно много чего использовать, потому что надо все делать эффективно, иначе игра будет тормозить.

    По поводу второго вопроса, похоже большинство разработчиков алгоритмы презирают. Считают что это не нужно знать вообще и очень ненавидят алгоритмические интервью в ФААНГах и им подражающим.
    Ответ написан
    5 комментариев
  • Как решить задачу о распределении?

    Alexandroppolus
    @Alexandroppolus
    кодир
    Смотреть соотношение уже переданных заказов первой и второй службам. Если оно меньше 3/7, то передавать первой, иначе второй
    Ответ написан
    4 комментария
  • Ультразвук из ПК, что можно сделать?

    @pfg21
    ex-турист
    свистит дроссель/катушка в цепях питания.
    найти можно с помощью стетоскопа, в автомастерских часто так выслушивают, у них специальный стетоскоп с узким носиком.
    разобрать комп - прослушать каждый дроссель материнки (питание процессора) и блока питания. все делать крайне аккуратно ибо в БП 220 вольт гуляет.
    обычно свистят "квадратные" и броневые. они в отличии от тороидальных состоят из двух половинок, стянутых/склеяных меж собой. стяжка ослабляется, клей разрушается и половинки начинают вибрировать/стучать об друг друга.
    хотя теоритически и тороиды могут треснуть...
    ремонт "правильный" - замена элемента/платы/блока.
    ремонт "подручный" - выключить, подожать полчаса на разряд кондеров и прокапать суперклеем места стыков магнитопровода и сжать. неплохо еще прокапать места крепления магнитопровода к корпусу элемента.
    Ответ написан
    4 комментария
  • Почему ArrayList пустой?

    xez
    @xez Куратор тега Java
    TL Junior Roo
    Тут я вижу два варианта.
    1. Вы никакой асинхронщины не хотите, но вам попался асинхронный клиент. Тогда нужно что-то типа такого сделать:
    public List<Response> getAdditionalData(List<ExcelModel> excelList) {
            return Flux.fromIterable(excelList) // Превращаем лист во флюкс
                    .flatMap(excel -> webClient.get()  // по каждому элемену делаем асинхронный запрос
                            .uri(sybase + excel.getTransactionID())
                            .retrieve()
                            .bodyToMono(Response.class))
                    .collectList() // Собираем поток в лист. Тут получается Mono<List<Response>>
                    .block(); // Блокируем тред и ждем завершения. Можно в скобочках указать сколько ждать.
        }


    2. Либо вы пересаживаетесь на асинхронный стек, тогда вам нужно флюкс и отдавать, как и написал Михаил. И подписка на него дожна быть, скорее всего, где-то выше по стеку.
    public Flux<Response> getAdditionalData(List<ExcelModel> excelList) {
            return Flux.fromIterable(excelList)
                    .flatMap(excel -> webClient.get()
                            .uri(sybase + excel.getTransactionID())
                            .retrieve()
                            .bodyToMono(Response.class));
        }
    Ответ написан
    4 комментария
  • Загружается файл index.php вместо входа на сайт. Почему так?

    karabanov
    @karabanov
    Системный администратор
    Некому передать скрипт на обработку и http сервер его просто отдаёт, как файл. Надо настроить PHP-FPM или, если используется Apache, включить соответствующий модуль.
    Ответ написан
    9 комментариев
  • Почему алгоритм добычи блока не распараллеливается?

    vabka
    @vabka
    Токсичный шарпист
    Ведь это просто же навесить в алгоритм майнинга использование например 4 потоков и каждый поток будет проверять, подходит его nonce или нет, что ускорит майнинг в 4 раза. Первый проверяет nonce = 1, 5, 9, … и тд

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

    Почему это нигде не пишут:
    1. Обывателю это не нужно, да и не интересно
    2. Программисту это и так очевидно
    3. В спецификации не описывают детали реализации - только математику.
    Ответ написан
  • Как лучше всего отучиться на программиста чтобы вкатиться в it?

    Jacen11
    @Jacen11
    пойти на заочку думаю ибо уже почувствовал вкус каких-никаких денег и сидеть с пустыми карманами как-то уже некамильфо.

    бросить работу и учиться в вузе, живя на гроши и не получая опыт работы хоть в какой-то сфере

    кажется вы уже выбрали вариант и просто ждете одобрения. Ну ок, одобряю

    я потеряю два года жизни
    ну вы же будете продолжать жить, в чем потеря то. Со временем разница в стаже все больше будет сглаживаться

    как мне быть?
    эта ответственность полностью на вас. Ваша же жизнь, вам и виднее со своей колокольни. В принципе все правильно описали. Правда не совсем понял зачем эта учеба все таки. Сейчас книжки курсы все доступны, репетитора нанять можно если что
    Ответ написан
    Комментировать
  • Как лучше всего отучиться на программиста чтобы вкатиться в it?

    @12rbah
    Вуз в целом не обязателен для работы программистом, но иногда может пригодиться особенно если вы собираетесь иммигрировать.
    да и к тому же, как я уже читал, для обучения нужен уровень английского как минимум В2
    Честно говоря это тоже не похоже на правду, с английским будет явно проще, но можно и без B2 освоить программирование.

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

    но так мне смогут дать какую-то базу именно со стороны живых учителей
    Имеет смысл если вы не разбираетесь в it, условно не можете отличить udp от tcp, или http от https, но если вы говорите что достаточно усидчивы и уверены что не выгорите, то диплом реально пригодится только как корочка.
    Ответ написан
    Комментировать
  • Как лучше всего отучиться на программиста чтобы вкатиться в it?

    AgentSmith
    @AgentSmith
    Это мой правильный ответ на твой вопрос
    Делай свои проекты, нарабатывай опыт.
    Когда научишься программировать, у тебя будет портфолио и тебя смогут нанять на галеры работать.
    Программирование - это не язык программирования, а стиль мышления и образ жизни.
    Ответ написан
    2 комментария
  • Актуальность исследования логики предикатов?

    hint000
    @hint000
    у админа три руки
    Прежде всего, актуальность для вас в том, что это довольно хорошее упражнение, которое научит программировать не самые тривиальные штуки.
    В реальной жизни, конечно, никакой новизны в этом нет. Существет софт, умеющий всё это и гораздо больше, на гораздо более продвинутом уровне, чем учащийся способен реализовать в выпускной работе.
    гугл и иные поисковики меня не спасли
    Ну вот это я нагуглил за несколько секунд, может быть вам это не попадалось, тут есть и про реальное применение.
    https://ru.wikipedia.org/wiki/Автоматическое_доказ...
    английская версия wiki описывает подробнее: https://en.wikipedia.org/wiki/Automated_theorem_proving
    и автоматический перевод с английской версии: https://translated.turbopages.org/proxy_u/en-ru.ru...

    https://habr.com/ru/post/519368/
    и дальше уже описывают терминологию и кучу формул
    Да, вот и они:
    https://qudata.com/ds/ru/theory/theorem_proving.html
    Кстати, с языком Prolog знакомы?
    https://habr.com/ru/post/124636/
    Ответ написан
    Комментировать
  • На что установить сервер?

    @mureevms
    Adamos rPman Drno

    Позволю себе вас поправить. Dedicated - это выделенный сервер, но само название не говорит виртуальный он или железяка. Слышали же аббревиатуру VPS или VDS, где VS - Virtual Server. P и D - Private и Dedicated. Может и был ранее какой-то смысл в разделении, но сейчас это синонимы. Таким образом, Dedicated просто значит, что сам сервер (OS) вы не делите ни с кем, т.е. это не хостинг на котором может быть множество клиентов. Только вы им владетее. Но ни как не указывает на его железячность или виртуальность.

    А то о чем вы говорите, имея ввиду железяку, называется Bare Metal server.
    Ответ написан
    2 комментария
  • На что установить сервер?

    @rPman
    В конечном счете все решает стоимость решений

    Выделенный сервер (dedicated server upd или bare metal) - это буквально физический сервер, мощности которого принадлежат тебе и твоим программам
    Виртуальный сервер (virtual private server) - это когда физический сервер делят на части и продают по отдельности, что сильно дешевле, и удобнее хостеру (он может перекидывать виртуальные машины между физическими, оптимизируя нагрузку), мало того он может оверселить, продавая и обещая больше мощности чем доступно в среднем, надеясь что пиковую нагрузку сервис клиента будет давать редко а остальное время она будет низкой (так обычно и бывает), такие машины обычно самые дешевые (когда видишь предолжения ниже ~30$ это оно самое)

    Кстати нормальная практика даже для dedicated server жесткие диски заменять на NAS например iscsi, а реальный диск предлагать как опцию. Сетевые накопители обычно медленней но сильно дешевле для хостера, так как их так же можно делить, снапшотить (например за их счет делать дешевый бакап) и оверселить (а главное централизованное обслуживание, так как диски чаще всего выходят из строя).

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

    Но нужно понимать что фишки гибкой конфигурации даются не бесплатно и если у тебя постоянная нагрузка, VPS оказываются дороже dedicated server. Правильный подход кроется в комбинировании.

    И еще одна услуга у хостеров - предоставление не сервера а услуги - доступа к програмному обеспечению по какому то внутреннему алгоритму тарификации (Software As A Service). Например можно приобрести услугу http сервера (или к примеру хостинг nodejs бакэнда, отдельно базы данных, сервиса бакапов и т.п., такие точно есть), без покупки самой машины, с тарификацией по запросам, трафику или по внутренним cpu тикам, при этом пользователю не важно, сколько там в реальности задействовано серверов, хостер будет обеспечивать заказанный трафик с обещанной скоростью, только плати. Такие крупные провайдеры как гугл или амазон могут встраивать в свои прайсы на такие сервисы ловушки, не изучив и не подготовившись как следует к которым можно попасть на значительное повышение стоимости, к тому же часто такой доступ еще и привязывает клиента к конкретному провайдеру, так сильно что когда придет известность и нагрузка, может не получиться легко сменить хостера на более оптимальный.
    Ответ написан
    Комментировать
  • На что установить сервер?

    Adamos
    @Adamos
    "Дедик" - это dedicated server, полностью ваш железный сервер в чьем-то датацентре.
    Да, на нем можно без всяких раздумий запустить винду и елозить мышкой. Но он стоит, как крыло от самолета, и вас вообще не должен интересовать.
    Для пет-сервера, которому не нужно ни выдерживать наплыв пользователей, ни крутить тяжелые задачи - самый дешевый VPS за 55 руб./мес., скорее всего, будет более чем достаточен.
    НО! Никаких мышек по рабочему столу. Линукс, командная строка, вся свобода администрирования...
    Ответ написан
    2 комментария
  • Законно ли писать программу из процедур без in/out параметров, которые оперируют глобальными переменными?

    @Akina
    Сетевой и системный админ, SQL-программист.
    Не стреляйте в пианиста - он играет как умеет.

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

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

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

    Армянское Радио
    Такие программы пишут или в лютой спешке, или при полном отсутствии опыта - а это больше говорит о работодателе, чем о разработчике программы.

    Такие программы сплошь и рядом начинаются как маленькие приблуды, создаваемые одним работником для себя, для облегчения своей работы и снятия с себя тупой рутины. И работодатель тут вообще никаким боком - он не поручал и не заказывал, оно само родилось. И тут уж как работник смог, так и сделал. И то, что программа не просто работает, но и полезна настолько, что принято решение её развивать и это развитие оплачивать - так это работнику жирный плюс.
    Ответ написан
    2 комментария
  • Законно ли писать программу из процедур без in/out параметров, которые оперируют глобальными переменными?

    AgentSmith
    @AgentSmith
    Это мой правильный ответ на твой вопрос
    Этот код писал школьник, который не знаком с программированием от слова "совсем".
    У тебя два выбора:
    - переписать всё с нуля
    - бежать оттуда
    Тот факт, что ты сам этого не понял, говорит о том, что твой уровень программирования на том же уровне.
    Законно ли писать программу из процедур без in/out параметров, которые оперируют глобальными переменными?

    Нет, не законно, согласно законам программирования DRY/SOLID и прочих. Но ты же о них не слышал, не так ли?
    Ответ написан
    Комментировать
  • Как отключить "связь" с проектом в гитхаб/битбакет?

    sergey-kuznetsov
    @sergey-kuznetsov Куратор тега Git
    Автоматизатор
    Отключить связь локальной и внешней ветки. Эта связь у каждой ветки своя.
    git branch --unset-upstream [локальная_ветка]

    Удалить псевдоним адреса внешнего репозитория от которого мы клонировались
    git remote remove origin

    Ну либо через меню Git — Manage Remotes...
    625df2f6011dd404569686.png

    В принципе достаточно последней команды.
    Если удалить origin, то очищаются и все связи между ветками, в которых упоминался origin.
    Ответ написан
    Комментировать
  • Какими минимальными и необходимыми инструментами можно выяснить исправность тензометрического датчика давления на объекте?

    gbg
    @gbg Куратор тега Электроника
    Любые ответы на любые вопросы
    Прибор с токовым входом называется миллиамперметр и входит в мультиметр. Токовые клещи тоже подойдут, но у них точность плюс-минус лапоть может быть.

    Дальнейший пересчет миллиамперов в попугаи можно сделать по табличке в даташите.

    Также, чтобы проверять датчик, нужно иметь хотя бы тройник с манометром, которому можно доверять. А то вы узнаете, что датчик что-то выдает, а вот не белиберду ли он выдает - не узнаете.

    Чтобы подсунуть прибору тестовый сигнал, нужно иметь лабораторный блок питания, переделанный так, чтобы уставка тока свыше 20ma была невозможна.
    Ответ написан
    Комментировать
  • Должен ли программист при получении заказа выполнять и роль девопса?

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    software engineer
    Можно тщательнее узнавать техзадание, перед тем как браться за работу.
    Сейчас у тебя появился опыт, что нужно с заказчиком уточнить вопрос инфраструктуры, прежде чем браться за заказ.
    А так - нет никаких "нельзя" или "можно". Есть договоренности и оплата.
    ДевОпс - это тоже не универсальный человек. Если девопс проработал с виртуализацией 5 лет, а потом его попросили разобраться с AWS - он будет также смореть на новые ворота.
    Ответ написан
    4 комментария