![](https://webcf.waybackmachine.org/web/20231130165924im_/https://habrastorage.org/r/w1560/getpro/habr/upload_files/d27/383/097/d27383097f362c1d12b8d083055f19fe.png)
Как динамическое программирование может упростить нашу жизнь? Как можно оптимизировать решение задач?
Сегодня мы разберем динамическое программирование на пальцах с примерами на Python!
Усаживайтесь поудобнее, леди и джентльмены!
Искусство создания компьютерных программ
Как динамическое программирование может упростить нашу жизнь? Как можно оптимизировать решение задач?
Сегодня мы разберем динамическое программирование на пальцах с примерами на Python!
Усаживайтесь поудобнее, леди и джентльмены!
В этой статье я расскажу вам о том, как мы в Ozon оптимизируем базовый поиск: как у нас выстроены процессы, как найти бутылочное горлышко, конкретные рекомендации по написанию горячего кода, реальные примеры значимых оптимизаций и что делать, когда все низко висящие фрукты уже сорваны, а хочется ещё.
Привет, Хабр! Меня зовут Александр Демидов, я директор по разработке департамента управления технологиями МТС. Сегодня поговорим про использование в программировании нейросетей, включая ChatGPT и конкуренцию нейросетей и программистов.
Всё чаще слышны разговоры, что вот-вот компьютер может заменить специалистов-людей, и кодерам придется искать новую работу. Так ли это на самом деле? На олимпиаде True Tech Champ я выступал с докладом по этой теме, и теперь хотелось бы обсудить этот вопрос здесь, на Хабре. Моё мнение и анализ текущей ситуации — под катом. Буду рад любым комментариям.
Как известно нет ничего более постоянного чем временное. Нам нужно было сделать по возможности простую программу для визуализации сложных структур бинарных данных, считанных из разных типов-версий устройств.
Адаптированный проект для публичного использования, рабочий на Гите, компилируется в простой exe-файл. Можно скачать как exe-файл, если доверяете своему антивирусу. Надеюсь, кому-то пригодится. Но чтобы начать пользоваться надо научиться писать XАML определения вложенных структур, по которым работает парсер. Ссылка в конце статьи.
Не будет никаких модных слов, только то, что нужно для работы.
Всем привет! Меня зовут Владислав Шиханов, я ведущий программист в CDEK. В этой статье я хочу рассказать о том, как мы пришли к проектированию и review плана разработки до начала реализации задачи, что это дало и как повлияло на скорость и качество разработки. Также поделюсь практическим руководством: как проектировать и проверять технический дизайн, чтобы это было быстро и удобно. Статья будет полезна разработчикам любой квалификации, но особенно тимлидам и менеджерам для внедрения практики в командах.
Падающий снег мягко приглушал вой полицейских сирен, пронзительным гулом звенящих в моей голове. Прогретое часовой ездой по пробкам лобовое стекло жадно пожирало души снежинок, оставляя от них лишь слёзы сожаления на поверхности.
«Введённое сегодня утром чрезвычайное положение из‑за аномальных метеоусловий остаётся в силе на территории всего штата. Метель свирепствует в городе третий день, и конца ей пока не предвидится» — тревожно вещал радиоприёмник. На облачное небо медленно взбирались наполненные тревогой сумерки.
Полиция прибыла на место происшествия в мотель «Burnout Meteo Inn» за час до меня. В 911 сообщили о подозрительном…
Я думаю начать учиться писать код. Какой ноутбук мне купить? Нужно ли участвовать в буткемпе? Нужны ли моему ребёнку особые курсы или подготовка, чтобы поступить на computer science?
Прочитал как‑то на Хабре заметку «Что делать с детьми летом, если ты айтишник?» Ответил на нее двумя своими заметками (раз и два). А теперь предлагаю взглянуть на поднятую тему немного с другой стороны: с точки зрения «борьбы с цифровым неравенством»? С тем самым, которое проявляется в ограниченном доступе к информации. По мнению некоторых отечественных экспертов, для ее преодоления, якобы, достаточно всего лишь «100% обеспечение образовательных учреждений, учреждений здравоохранения, органов государственной власти и местного самоуправления современными услугами цифровой связи»... Про борьбу с «цифровым неравенством» учреждений здравоохранения и органов госвласти промолчу... А вот про образование скажу — «Хошь, как хошь, а маловато будет!» А что, по‑вашему, уважаемые эксперты, получат «преодолев цифровое неравенство» наши «рядовые» школьники? Складывается стойкое убеждение, что единственное, что они получат — это игромания. Где те ресурсы, которые помогут расширить их знания, разовьют полезные навыки? Где (адаптированные на соответствующий возраст) методические материалы, которые сделают доступными нашим детям хотя бы уже имеющиеся в сети Интернет полезные ресурсы, созданные в других странах?
Печенья, кеки, кукисы, ку-ку, кексы… нет, куки!
– Cookie — это что?
– Почему их не нужно принимать?
– Безопасно ли это?
– CookieJar, CookieManager, CookieStore… WebView?
А также истории про то, как жить с cookie в большом приложении, и сколько эмоций вы испытаете, если в вашем приложении есть WebView.
Старые программы покрываются коркой сомнительных фич.
ls
просто создаёт список файлов, cat
просто выводит содержимое файлов, grep
просто фильтрует данные, wc
просто подсчитывает слова и так далее. У каждой программы есть несколько опций, меняющих её поведение, но не слишком сильно. Например: wc
можно сконфигурировать для подсчёта строк или слов, но не для подсчёта количества абзацев или вхождений какой-то фразы.wc
, если с этим уже способна справиться grep
?Автор статьи обращает внимание на проблему, которая заключается в использовании метода __init__
для сложной логики создания объектов, что приводит к разрастанию и усложнению кода. Статья предлагает использовать вспомогательные методы, чтобы разделить логику создания объектов на более мелкие и понятные части. Это упростит код и облегчит понимание того, как объекты создаются и инициализируются.
Очень часто нас спрашивают о хороших веб-сайтах для новичков по изучению программирования графики. Разумеется, мы бы с радостью порекомендовали GPUOpen, но правда в том, что основная целевая аудитория GPUOpen — программисты среднего или высокого уровня. Для только начинающих погружаться в мир графики есть более подходящие веб-сайты.
Как и во многих других сферах, в графике нет одного единственно правильного пути. В основном он зависит от имеющихся знаний, предпочитаемого способа обучения, личного выбора, доступного оборудования и так далее. Поэтому это руководство будет перечнем веб-сайтов, которые, по нашему мнению, полезны для новичков, и небольшим обсуждением плюсов и минусов этих веб-сайтов и их программы обучения.
Меня всегда тянуло к обучению людей и шарингу знаний. Когда я был разработчиком, то охотно становился ментором у стажеров. И даже сейчас, работая тимлидом, я являюсь пипл-менеджером уже у senior-разработчиков. Но у меня никогда не было опыта работы преподавателем или наставником сразу для большой аудитории. Мне всегда казалось это чем-то интересным и вдохновляющим. Но мои ожидания не оправдались, как вы уже поняли из названия статьи.
Концепция implicit в Scala представляет собой одну из наиболее уникальных и мощных особенностей этого языка программирования. Этот ключевой механизм позволяет разработчикам создавать более гибкий и чистый код, улучшая читаемость и расширяемость программ.
В этой статье мы погрузимся в мир implicit в Scala, исследуем его суть, применение и возможности. Мы рассмотрим, как implicit обеспечивает поддержку для реализации различных паттернов и шаблонов программирования, а также как его использование способствует созданию более элегантных и эффективных решений задач. Давайте углубимся в эту удивительную возможность Scala и узнаем, как использовать implicit для улучшения вашего кода.
Привет, Хабр! Сегодня поговорим о парном программировании, с передачей опыта Сбера — наши разработчики знают о методике парной работы не понаслышке. Команда программистов становится командой только при постоянном взаимодействии. Если один кодит, а другой просто смотрит — это просто наблюдение, а не парное программирование. Как же заниматься этим правильно? Подробности под катом.
/system routerboard settings set gpio-function=serial1
/system reboot
Всем привет! В этой статье я бы хотел погрузить в мир жизненного цикла потоков начинающих программистов на Java, заранее извиняюсь за злоупотребление слова "поток" в этой статье, но я надеюсь так будет даже лучше для понимания. Поехали!
Жизненный цикл потока - основная концепция Java, которую мы подробно рассмотрим в этой статье. Мы будем использовать краткую иллюстрированную диаграмму и фрагменты практического кода, чтобы более глубоко понять состояния потока во время его выполнения. Эта статья о создании потока - отличное начало для понимания потоков в Java.
В прошлой части мы определили основную проблему: исходный код любой программы со временем устаревает. Это выражается в росте сложности разработки. Данное утверждение не требует доказательств, ведь почти каждый разработчик сталкивался с подобной ситуацией и понимает, о чем идет речь.
Основной способ борьбы с неизбежным усложнением ПО — модификация главной причины — структуры, тех самых деталей реализации, невидимых конечным пользователям. Но рефакторинг чрезвычайно непрост, особенно при работе с достаточно сложными или вовсе незнакомыми проектами. Причина тому — регресс, от которого призваны нас защитить тесты, но не любые, а те, которые обладают достаточными показателями в приведенных ранее свойствах.
«640 КБ хватит всем», — предположительно Билл Гейтс, примерно 1981 год.
Мы решили, что в нашей системе управления финансовыми базами данных TigerBeetle для хранения всех финансовых сумм и балансов будут использоваться 128-битные числа, и что мы откажемся 64-битных целых чисел. Хотя кто-то может заявить, что 64-битного integer, способного хранить в себе целые числа от нуля до 264, достаточно для подсчёта всех песчинок на Земле, мы осознали, что для адекватного хранения всех транзакций нам нужно подняться выше того предела. И в статье мы расскажем, почему.
Дообучение 7-миллиардной модели Saiga2 под свои задачи, используя сгенерированный датасет с помощью GPT. В данной статье есть все необходимые ссылки и код для предобработки и запуска обучения модели, а также квантования модели.
Ваш аккаунт