Daily Coding 🔥
8.72K subscribers
1.91K photos
6 videos
1 file
1.75K links
Канал, который научит вас программировать лучше и эффективнее.

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

Ссылка: @Portal_v_IT

Сотрудничество: @oleginc, @tatiana_inc

Канал на бирже: telega.in/c/dailycoding
Download Telegram
🔥 Лучшее на канале за неделю

1
. Идеи проектов машинного обучения для начинающих.

2. NimbleText — это инструмент для работы с текстом и генерации кода, который можно использовать онлайн или скачать бесплатно.

3. Проверяйте и тестируйте условия при UPDATE и DELETE.
📑 50 лет Паскаля

В начале 1960-х в мире доминировали языки Фортран (Джон Бэкус из IBM) для научного и Кобол (Жан Саммет из IBM и Министерство обороны) для коммерческого применения. Программы писались на бумаге, затем перфорировались на картах, после чего результатов их выполнения ждали целый день. Языки программирования считались важными помощниками и ускорителями процесса программирования.

#статьи
📑 PowerShell — это язык программирования?

Является ли PowerShell языком программирования? Совершенно определённо — является. И не обращайте внимание на тех, кто говорит, что это не так. Многие, работающие в сфере программирования, могут просто посмеяться над мыслью о том, что код, написанный для PowerShell — это нечто большее, чем обычные скрипты. Такие люди категорически неправы. Здесь мы поговорим о том, почему это так.

#статьи
📑 Как освоить Vim?

Vim — это редактор, реализующий совершенно необычный подход к редактированию кода, не говоря уже о работе с простым текстом.

В Vim имеется несколько «режимов работы», переключение между ними приводит к изменению функционала клавиатурных клавиш. При таком подходе клавиатура используется и для ввода символов, и для перемещения по тексту. Другими словами — при работе в Vim не нужна мышь.

Daily Coding #статьи
📑 Реактивное программирование на Java: как, зачем и стоит ли? Часть II

Перед прочтением рекомендуем ознакомиться с первой частью.

Реактивное программирование — один из самых актуальных трендов современности. Обучение ему — сложный процесс, особенно если нет подходящих материалов. В качестве своеобразного дайджеста может выступить эта статья. На конференции РИТ++ 2020 эксперт и тренер Luxoft Training Владимир Сонькин рассказал о фишках управления асинхронными потоками данных и подходах к ним, а также показал на примерах, в каких ситуациях нужна реактивность, и что она может дать.

В первой части статьи рассказывалось о том, что привело к появлению реактивного программирования, где оно применяется, и что нам может дать асинхронность. Пришло время рассказать о следующем шаге, позволяющем получить максимум преимуществ от асинхронности, и это — реактивное программирование.

#статьи #java
🔥 Лучшее на канале за неделю

1
. Как освоить Vim?

2. Fiddler — простой, чистый и мощный инструмент прокси-сервера для веб-отладки.

3. Визуализация моделей.
📑 Пишите библиотеки вместо сервисов

Сервис связан с постоянными административными затратами, нести которые приходится поставщику сервиса. Правильно спроектированная библиотека переносит все эти затраты на её пользователей.Это означает, что библиотека (если её применение возможно) способна обеспечивать пользователю ту же функциональность, при этом стоя разработчику дешевле, чем сервис.

Daily Coding #статьи
📑 Sourcetrail: инструмент, чтобы разобраться в чужом коде и не выстрелить себе в голову

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

Daily Coding #статьи
📑 Устройство поисковых систем: базовый поиск и инвертированный индекс

Под капотом почти каждой поисковой строки бьется одно и то же пламенное сердце — инвертированный индекс. Именно инвертированный индекс принимает текстовые запросы и возвращает пользователю список документов, а пользователь смотрит на всё это дело и радуется котиками, ответам с StackOverflow и страничкам на вики.

В статье описано устройство поиска, инвертированного индекса и его оптимизаций с отсылками к теории. В качестве подопытного кролика взят Tantivy — реализация архитектуры Lucene на Rust.

Daily Coding #статьи
📑 Нам точно нужен фреймворк?

К 2021 году появилось много статей о том, что фреймворки не нужны и не стоит делать из них культ. Отчасти это верно. Зависимость от фреймворка затрудняет процессы рефакторинга и тестирования, часто негативно влияет на выстраивание бизнес-логики приложения. Но во всём нужен разумный подход. И прежде чем встать на путь отрицания фреймворков, руководитель Программного комитета PHP Russia Александр Макаров советует прочитать статью Маттиаса Нобака (Matthias Noback) «Should we use a framework?»

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

Daily Coding #статьи
📑 Вышел язык программирования Crystal версии 1.0: достоинства, возможности и немного истории

Языков программирования в мире много — около 8 тысяч, если учитывать вообще все, что может считаться языком программирования, включая всякие шуточные и теоретические проекты. На днях вышла версия 1.0 еще одного языка — Crystal.

Его создатели утверждают, что язык является простым, как Ruby, и быстрым, как С. Назвать его новым нельзя, поскольку разрабатывается он с 2011 года, именно как альтернатива Ruby. Авторы проекта заявляют, что язык теперь готов к использованию в обычных условиях, и является стабильным.

Daily Coding #статьи
📑 Вышел язык программирования Crystal версии 1.0: достоинства, возможности и немного истории

Многие начинающие и не очень Scala разработчики принимают implicits как умеренно полезную возможность. Использование обычно ограничивается передачей ExecutionContext во Future. Другие же избегают неявного и считают возможность вредной.

Daily Coding #статьи #scala
📑 Поиск секретных данных в исходном коде

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

Daily Coding #статьи
📑 Подводные камни в бассейне строк, или ещё один повод подумать перед интернированием экземпляров класса String в C#

Будучи разработчиками программного обеспечения, мы всегда хотим, чтобы написанное нами ПО работало быстро. Использование оптимального алгоритма, распараллеливание, применение различных техник оптимизации – мы будем прибегать ко всем известным нам средствам, дабы улучшить производительность софта. К одной из таких техник оптимизации можно отнести и так называемое интернирование строк. Оно позволяет уменьшить объём потребляемой процессом памяти, а также значительно сокращает время, затрачиваемое на сравнение строк. Однако, как и везде в жизни, необходимо соблюдать меру – не стоит использовать интернирование на каждом шагу. Далее в этой статье будет показано, как можно обжечься и создать своему приложению неочевидный bottleneck в виде метода String.Intern.

Daily Coding #статьи #C_Sharp #dotnet
🔥 Лучшее на канале за неделю

1
. Поиск секретных данных в исходном коде.

2. Carnac — эта замечательная небольшая утилита с открытым исходным кодом показывает горячие клавиши, которые вы нажимаете.

3. Команды для Python по работе с файлами и файловой системой.
📑 Программирование — это скучная магия

Есть один карточный трюк, который запомнился мне навсегда. Вот его краткое описание: доброволец выбирает карту и запечатывает её в конверт. Затем фокусник предлагает добровольцу выбрать чай. У него есть десятки коробок чая, и все они упакованы в пластик. Доброволец выбирает одну из коробок, срывает обёртку и выбирает один из упакованных пакетиков с чаем. Потом он вскрывает упаковку, и… внутри оказывается его карта.

Если вы не хотите знать, в чём хитрость этого трюка, то дальше не читайте.

Daily Coding #статьи
📑 Печальная правда о пропуске копий в C++

Пропуск копий (copy elision) – это оптимизация компилятора, которая, как и следует из имени, устраняет лишние операции копирования и перемещения. Она аналогична классической оптимизации размножения копий, но выполняется конкретно для объектов C++, которые могут иметь нестандартные конструкторы копирования и перемещения. В этой статьей я продемонстрирую пример, в котором очевидная ожидаемая от компилятора оптимизация на практике не происходит.

Daily Coding #статьи #C_plus_plus
📑 Amazon, Microsoft, Facebook, Tesla, Lyft — история поиска работы мечты или Вредные советы для карьерного развития

«Я давно хотел поделиться советами и своим опытом по прохождению интервью и развитию карьеры. Пока думал о заголовке, вспомнилась книга из детства — "Вредные советы". Но в отличие от Григория Остера, мои советы могут вам пригодиться.

У меня за плечами 11 лет работы в индустрии, 6 из них в Северной Америке. Сейчас я работаю инженером данных в Microsoft Ванкувер. До этого почти 5 лет проработал в Амазоне в Ванкувере, Бостоне и Сиэтле.»

Daily Coding #статьи
📑 Самые полезные новинки C++ 20

В сентябре прошлого года профильный комитет ISO утвердил С++ 20 в качестве текущей версии международного стандарта. Предлагаем ознакомиться с самыми полезными и долгожданными изменениями нового стандарта.

Daily Coding #статьи