Яндекс масштабно обновил поиск: коротко о главном
Ребята из поиска Яндекса рассказали о своём самом важном изменении за десять лет. Они научили и запустили свою нейросеть-трансформер YATI. Трансформеры по определению очень прожорливые, поэтому её подключение — отдельный вызов для разрабов и инженеров.
По факту, теперь мы имеем поиск Яндекса, который не просто (хотя и качественно) ищет и сопоставляет ключевые слова, но и глубже анализирует смысл запроса и релевантность выдачи. Проще говоря, он как будто бы лучше понимает, о чём его спрашивают. И ещё умеет анализировать порядок слов и контекст запроса, читает огромные тексты, а не только бегает по хедам, обучен «механизму внимания», то есть умеет определять и выделять важные фрагменты в любом массиве.
Подробнее ребята рассказали в своем блоге на Хабре
#programming #clean_code
Ребята из поиска Яндекса рассказали о своём самом важном изменении за десять лет. Они научили и запустили свою нейросеть-трансформер YATI. Трансформеры по определению очень прожорливые, поэтому её подключение — отдельный вызов для разрабов и инженеров.
По факту, теперь мы имеем поиск Яндекса, который не просто (хотя и качественно) ищет и сопоставляет ключевые слова, но и глубже анализирует смысл запроса и релевантность выдачи. Проще говоря, он как будто бы лучше понимает, о чём его спрашивают. И ещё умеет анализировать порядок слов и контекст запроса, читает огромные тексты, а не только бегает по хедам, обучен «механизму внимания», то есть умеет определять и выделять важные фрагменты в любом массиве.
Подробнее ребята рассказали в своем блоге на Хабре
#programming #clean_code
Чтобы быть крутым разработчиком, нужно создавать крутые проекты!
Представляем вам список простых и в то же время очень полезных с точки зрения необходимых навыков проектов, которые позволят вам не только прокачать навыки в распространенных фреймворках, но и получить от этого удовольствие.
Много ли из вас использует Trello или Asana, а может, и вовсе Jira? Думаете, у вас не получится создать что-то подобное? А что если вы бы хотели пользоваться лично разработанным плеером? Это круто! А мы в этом поможем списком интересных идей...
Читать статью (5 мин)
#programming #clean_code
Представляем вам список простых и в то же время очень полезных с точки зрения необходимых навыков проектов, которые позволят вам не только прокачать навыки в распространенных фреймворках, но и получить от этого удовольствие.
Много ли из вас использует Trello или Asana, а может, и вовсе Jira? Думаете, у вас не получится создать что-то подобное? А что если вы бы хотели пользоваться лично разработанным плеером? Это круто! А мы в этом поможем списком интересных идей...
Читать статью (5 мин)
#programming #clean_code
Travis CI
С Travis CI вы можете с уверенностью тестировать и выпускать свои приложения. Его достаточно легко интегрировать с GitHub, не говоря уже о том, что процесс наката приложения происходит сразу же после прохождения всех тестов.
Поддерживаемые языки:
• Javascript и Node.js
• Ruby
• PHP
• Python
Подходит как для небольших команд разработчиков, так и для крупных подразделений. Ну, Travis, не подведи!
GitHub
#tools #ci
С Travis CI вы можете с уверенностью тестировать и выпускать свои приложения. Его достаточно легко интегрировать с GitHub, не говоря уже о том, что процесс наката приложения происходит сразу же после прохождения всех тестов.
Поддерживаемые языки:
• Javascript и Node.js
• Ruby
• PHP
• Python
Подходит как для небольших команд разработчиков, так и для крупных подразделений. Ну, Travis, не подведи!
GitHub
#tools #ci
Пора сделать инверсию нуля.
В статье речь пойдет о самых распространенных убеждениях программистов, которые мешают им достичь высоких профессиональных результатов.
Сомнения, нервы, неуверенность в принятых решениях и написанных строчках кода — неизбежные спутники разработчика. Пора менять ситуацию и покорять новые вершины.
Читать статью (5 мин)
#programming #self_improvement
В статье речь пойдет о самых распространенных убеждениях программистов, которые мешают им достичь высоких профессиональных результатов.
Сомнения, нервы, неуверенность в принятых решениях и написанных строчках кода — неизбежные спутники разработчика. Пора менять ситуацию и покорять новые вершины.
Читать статью (5 мин)
#programming #self_improvement
А вы точно знаете все структуры данных?
Зачастую, разработчики, очень старательные и самостоятельные по своей натуре, которые привыкли изучать программирование на просторах Интернета, пренебрегают знаниями о структурах данных.
И это очень большая ошибка, ведь механизмы функционирования многих сервисов, которыми вы пользуетесь повседневно, основаны на самых распространенных структурах данных, которые хорошо описаны в следующей статье.
Читать статью (6 мин)
#programming #data_structures
Зачастую, разработчики, очень старательные и самостоятельные по своей натуре, которые привыкли изучать программирование на просторах Интернета, пренебрегают знаниями о структурах данных.
И это очень большая ошибка, ведь механизмы функционирования многих сервисов, которыми вы пользуетесь повседневно, основаны на самых распространенных структурах данных, которые хорошо описаны в следующей статье.
Читать статью (6 мин)
#programming #data_structures
Правило звездочки
Работая с указателями, необходимо очень аккуратно передавать параметры, полностью осознавая, что необходимо сделать с данным параметром в функции.
Если вы передаете указатель на некоторую область памяти и внутри метода присваиваете ему новое значение, предварив его звездочкой, то фактически меняется значение, на которое указывает указатель.
Если же не предварять звездочкой при присвоении, то указателю присваивается новый адрес, который может оказаться отнюдь не корректным. Будьте аккуратны с указателями.
#programming #clean_code
Работая с указателями, необходимо очень аккуратно передавать параметры, полностью осознавая, что необходимо сделать с данным параметром в функции.
Если вы передаете указатель на некоторую область памяти и внутри метода присваиваете ему новое значение, предварив его звездочкой, то фактически меняется значение, на которое указывает указатель.
Если же не предварять звездочкой при присвоении, то указателю присваивается новый адрес, который может оказаться отнюдь не корректным. Будьте аккуратны с указателями.
#programming #clean_code
Зомби-код: он жив или мертв
Насколько часто встречаются, особенно open-source проекты, в которых каждая функция предварена комментарием. А теперь задумаемся: будем ли мы править комментарии, если придется в сжатые сроки добавлять новый функционал.
Думаю, такой сценарий исключен, поэтому код должен быть ясен и понятен и требовать комментариев только в исключительных случаях.
Youtube
#programming #clean_code
Насколько часто встречаются, особенно open-source проекты, в которых каждая функция предварена комментарием. А теперь задумаемся: будем ли мы править комментарии, если придется в сжатые сроки добавлять новый функционал.
Думаю, такой сценарий исключен, поэтому код должен быть ясен и понятен и требовать комментариев только в исключительных случаях.
Youtube
#programming #clean_code
Junior vs Senior
Привет клинкодерам! Всех нас очень волнует вопрос написания чистого, легко поддерживаемого кода, от одно вида которого поднимается настроение.
На отличных примерах из видео можно детально сравнить подходы Junior и Senior-разработчиков, тем самым, понять, каких механизмов избегать, а к каким приучатся.
Youtube
#programing #clean_code
Привет клинкодерам! Всех нас очень волнует вопрос написания чистого, легко поддерживаемого кода, от одно вида которого поднимается настроение.
На отличных примерах из видео можно детально сравнить подходы Junior и Senior-разработчиков, тем самым, понять, каких механизмов избегать, а к каким приучатся.
Youtube
#programing #clean_code
YouTube
Junior Vs Senior Code - How To Write Better Code
Writing code is easy. Writing clean code, though, is much harder. In this video I take a look at two different code examples from a beginner, intermediate, and advanced level. The goal of this is to show you how a senior developer will think while programming…
Как начать использовать лямбда-выражения в Java.
Привет клинкодерам! На самом деле, Java здесь только для примера. Функциональное программирование предлагает великолепные возможности по улучшению качества и выразительности кода.
Компактное встраивание анонимных методов поможет поддержать поток вычислений без вызова методов, которые описаны в других участках кода. Было тяжело знакомиться с концепцией лямбда-выражений, но, однажды разобравшись, понял, что код стал на порядок чище! Знакомимся...
Читать статью (5 мин)
#clean_code #programming
Привет клинкодерам! На самом деле, Java здесь только для примера. Функциональное программирование предлагает великолепные возможности по улучшению качества и выразительности кода.
Компактное встраивание анонимных методов поможет поддержать поток вычислений без вызова методов, которые описаны в других участках кода. Было тяжело знакомиться с концепцией лямбда-выражений, но, однажды разобравшись, понял, что код стал на порядок чище! Знакомимся...
Читать статью (5 мин)
#clean_code #programming
С Наступающим Новым 2021 Годом!
Привет клинкодерам! Поздравляем вас с наступающим, а может, и с наступившим новым годом, желаем вам бесконечной энергии для реализации ваших бесподобных идей в мире программирования! Мы очень благодарны, что вы остаетесь с нами, цените о оцениваете наш труд.
Нам очень приятно, что вы принимаете активное участие в обсуждении раскрываемых тем! Уходящий год был тяжелым, будем надеяться, что мы справимся! Желаем здоровья вам и вашим близким, берегите себя! На ваших светлых головах держится вся индустрия!
#clean_code #happy_new_year
Привет клинкодерам! Поздравляем вас с наступающим, а может, и с наступившим новым годом, желаем вам бесконечной энергии для реализации ваших бесподобных идей в мире программирования! Мы очень благодарны, что вы остаетесь с нами, цените о оцениваете наш труд.
Нам очень приятно, что вы принимаете активное участие в обсуждении раскрываемых тем! Уходящий год был тяжелым, будем надеяться, что мы справимся! Желаем здоровья вам и вашим близким, берегите себя! На ваших светлых головах держится вся индустрия!
#clean_code #happy_new_year
Бабушкины сказки
Вы когда-нибудь пробовали описать цикл так, как показано на примере справа? Вы скажете, что это безумие, однако вот какой интересный факт хранит в себе этот фрагмент кода.
Казалось бы, меньше строк кода - быстрее и эффективнее он работает, однако тесты на Java и Microsoft Visual Basic показали, что второй фрагмент минимум на 60% быстрее первого.
#tips #cycles
Вы когда-нибудь пробовали описать цикл так, как показано на примере справа? Вы скажете, что это безумие, однако вот какой интересный факт хранит в себе этот фрагмент кода.
Казалось бы, меньше строк кода - быстрее и эффективнее он работает, однако тесты на Java и Microsoft Visual Basic показали, что второй фрагмент минимум на 60% быстрее первого.
#tips #cycles
Деструктуризация в JavaScript за 100 секунд
Сделайте свой код более кратким и читаемым с помощью деструктуризации. В этом видео всего за 100 секунда расскажут как.
📺 YouTube
#видео #js
Сделайте свой код более кратким и читаемым с помощью деструктуризации. В этом видео всего за 100 секунда расскажут как.
📺 YouTube
#видео #js
YouTube
JS Destructuring in 100 Seconds
Make your code more concise and readable by learning destructuring assignment in JavaScript in 100 seconds https://fireship.io/courses/javascript/
#webdev #js #100SecondsOfCode
MDN Docs https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…
#webdev #js #100SecondsOfCode
MDN Docs https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…
Инкапсулируйте граничные условия
Отслеживать граничные условия нелегко. Разместите их обработку в одном месте. Не позволяйте им «растекаться» по всему коду. Не допускайте, чтобы в вашей программе кишели многочисленные +1 и –1.
#cleancode
Отслеживать граничные условия нелегко. Разместите их обработку в одном месте. Не позволяйте им «растекаться» по всему коду. Не допускайте, чтобы в вашей программе кишели многочисленные +1 и –1.
#cleancode
Сколько параметров можно передать в деструктор?
Anonymous Quiz
5%
Не более 3
3%
Не более 10
3%
Не более 15
10%
Максимум 1
79%
Нелья передавать параметры в деструктор
👨💻 Не используйте "магические числа"
Магические числа не случайно относят к анти-паттернам программирования, проще говоря, правилам того, как не надо писать программный код. Чаще всего магическое число как анти-паттерн представляет собой используемую в коде константу, смысл которой неясен без комментария. Такие числа не только усложняют понимание кода и ухудшают его читабельность, но и приносят проблемы во время рефакторинга.
#совет #код
Магические числа не случайно относят к анти-паттернам программирования, проще говоря, правилам того, как не надо писать программный код. Чаще всего магическое число как анти-паттерн представляет собой используемую в коде константу, смысл которой неясен без комментария. Такие числа не только усложняют понимание кода и ухудшают его читабельность, но и приносят проблемы во время рефакторинга.
#совет #код
📖 Чистый код
🖋 Роберт Мартин, 2013
Считается, что программирование — это прикладная дисциплина, и в её изучении упор нужно делать не только на практику, но и на теорию. Хотим представить вам книгу, за счет которой вы точно повысите свою ценность как профессионала.
Книга о том, как писать код без лишних комментариев, чтобы он был понятен другим людям, прост и лаконичен. Издание научит вас писать поддерживаемый и хорошо структурированный код, а также постоянно совершенствоваться в его качестве. Есть большое число актуальных советов – от длины и выразительности имен до содержимого функций.
В сети много хороших отзывов о книге и если вы новичок, и нуждаетесь в основах – эта книга будет очень полезна.
💾 Скачать книгу
#книги
🖋 Роберт Мартин, 2013
Считается, что программирование — это прикладная дисциплина, и в её изучении упор нужно делать не только на практику, но и на теорию. Хотим представить вам книгу, за счет которой вы точно повысите свою ценность как профессионала.
Книга о том, как писать код без лишних комментариев, чтобы он был понятен другим людям, прост и лаконичен. Издание научит вас писать поддерживаемый и хорошо структурированный код, а также постоянно совершенствоваться в его качестве. Есть большое число актуальных советов – от длины и выразительности имен до содержимого функций.
В сети много хороших отзывов о книге и если вы новичок, и нуждаетесь в основах – эта книга будет очень полезна.
💾 Скачать книгу
#книги
🧑💻 Хороший код — это лучшая документация.
Каждый раз, когда вы захотите добавить комментарий, спросите себя: «Как я могу улучшить этот код, чтобы он не требовал комментирования?»… Стив МакКоннелл
Пишите простой, понятный, но в то же время логичный код
Как и в других областях, формула KISS (Keep it simple and short — делай короче и проще) работает и в программировании. Пишите логичный код и избегайте усложнений. Иногда люди пишут сложный код только для того, чтобы доказать, что они умеют писать такой код, но опыт подсказывает, что простой и логичный код всегда работает хорошо, приносит меньше проблем и лучше поддается расширению.
#совет #код
Каждый раз, когда вы захотите добавить комментарий, спросите себя: «Как я могу улучшить этот код, чтобы он не требовал комментирования?»… Стив МакКоннелл
Пишите простой, понятный, но в то же время логичный код
Как и в других областях, формула KISS (Keep it simple and short — делай короче и проще) работает и в программировании. Пишите логичный код и избегайте усложнений. Иногда люди пишут сложный код только для того, чтобы доказать, что они умеют писать такой код, но опыт подсказывает, что простой и логичный код всегда работает хорошо, приносит меньше проблем и лучше поддается расширению.
#совет #код
Requests
Имея больше 44 тысяч звезд на GitHub и тысячи скачиваний ежедневно, Requests занимает первую строчку рейтинга самых популярных и полезных библиотек для разработки на Python. Эта библиотека используется в проектах Spotify, Microsoft, NPR, Heroku, Amazon, BuzzFeed, Reddit, Twitter, Mozzila ...
Requests уменьшает тяжелую ручную работу и автоматизирует такие задачи как добавление строки запроса к URL, шифрование форм отправки данных, постоянное HTTP-соединение, объединение HTTP-соединений и т. д. путем использования urllib3.
Для облегчения разработки также обеспечивается автоматическое дешифрование контента. Библиотека предлагает загрузку других функций, таких как журнал аутентификации, элегантные key/value cookies, Unicode-представление для атрибута body объекта response, потоковое скачивание, тайм-аут соединения, поддержка
📑 Документация
#инструменты #python
Имея больше 44 тысяч звезд на GitHub и тысячи скачиваний ежедневно, Requests занимает первую строчку рейтинга самых популярных и полезных библиотек для разработки на Python. Эта библиотека используется в проектах Spotify, Microsoft, NPR, Heroku, Amazon, BuzzFeed, Reddit, Twitter, Mozzila ...
Requests уменьшает тяжелую ручную работу и автоматизирует такие задачи как добавление строки запроса к URL, шифрование форм отправки данных, постоянное HTTP-соединение, объединение HTTP-соединений и т. д. путем использования urllib3.
Для облегчения разработки также обеспечивается автоматическое дешифрование контента. Библиотека предлагает загрузку других функций, таких как журнал аутентификации, элегантные key/value cookies, Unicode-представление для атрибута body объекта response, потоковое скачивание, тайм-аут соединения, поддержка
.netrc.📑 Документация
#инструменты #python
📌 Используйте осмысленные имена для переменных, функций, классов
Всем программистам известен термин "обфускация кода” — сознательное запутывание программного кода с помощью приложения-обфускатора. Она делается с целью скрыть реализацию и превращает код в невнятный набор символов, переименовывает переменные, меняет имена методов, функций и прочее.
К сожалению, случается так, что код и без обфускации выглядит запутанно — именно за счёт бессмысленных имён переменных и функций:
Между тем, переименовав функцию, можно избавиться от комментариев — её имя будет само говорить о том, что она делает.
#код
Всем программистам известен термин "обфускация кода” — сознательное запутывание программного кода с помощью приложения-обфускатора. Она делается с целью скрыть реализацию и превращает код в невнятный набор символов, переименовывает переменные, меняет имена методов, функций и прочее.
К сожалению, случается так, что код и без обфускации выглядит запутанно — именно за счёт бессмысленных имён переменных и функций:
var_3698, myBestClass, NewMethodFinal и т.д. Это не только мешает разработчикам, которые участвуют в проекте, но и приводит к бесконечному количеству комментариев. Между тем, переименовав функцию, можно избавиться от комментариев — её имя будет само говорить о том, что она делает.
#код