Pull to refresh
4
0

Пользователь

Send message

[Личный опыт] Еще про работу в Uber в Амстердаме: интервью, рост внутри компании, коммуникации

Reading time11 min
Views11K

Какие этапы интервью ждут разработчика в Uber? Как расти внутри компании? Как происходит продвижение по грейдам? На вебинаре поговорили с Алиной Коваленко, Software Engineer II в Uber. 

В прошлой статье она рассказывала про рабочие процессы в компании и переезде в Амстердам, в этой — сосредоточимся на практических советах и ответах на частые вопросы про релокейт.

Читать далее

Создание favicon для сайта 2020

Reading time10 min
Views146K

Что такое favicon и для чего он нужен?


Favicon – это значок (иконка), который отображается во вкладке браузера, закладках, а также в сниппетах результатов поиска.

image

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

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

Какой формат использовать для favicon?


Раньше в качестве основного формата использовали ICO. Особенность данного формата – мульти-размерность. Данный файл может хранить в себе несколько размеров иконки. На смену ICO пришел формат PNG. ICO все еще поддерживаемый, но большинство современных браузеров выбирают PNG формат иконки, который легче. Некоторые браузеры не могут выбрать правильный значок в файле ICO, что приводит к неправильному использования значка с низким разрешением.

О каких платформах пойдет речь в этой статье?


  • Десктопные браузеры
  • Chrome на Android
  • Иконка закладки в iOS (PWA)
  • macOS
  • Windows

Читать дальше →

Keyboa: клавиатуры на максималках для ботов в Telegram

Reading time5 min
Views54K

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

Keyboa помогает создавать встроенные клавиатуры любой сложности для ботов, разработанных на базе pyTelegramBotAPI.

В этой статье рассмотрим базовые возможности модуля - создание клавиатур из разных наборов данных, автоматическое и ручное распределение кнопок по рядам, объединение нескольких клавиатур в одну. Научимся создавать сложные, динамические callback, сохраняя в них информацию о выборе пользователя.

Статья рассчитана на тех, кто знает основы Telegram Bot API и хотя бы немного знаком с фреймворком pyTelegramBotAPI.

Давайте разбираться

Как сделать интерактивную карту с помощью Python и open source библиотек

Reading time6 min
Views54K

Сегодня делимся с вами пошаговым руководством создания интерактивных карт для веб-приложения или блога. Просто сохраните эту статью в закладках. Хоть и существует, например, библиотека d3.js, которая может создавать пользовательские карты, есть несколько инструментов еще проще. В этом посте посмотрим на три простые в обращении, но мощные библиотеки Python с открытым исходным кодом и поработаем с ними.
Читать дальше →

Бесплатные аналоги популярных SaaS решений

Reading time5 min
Views11K


Мы подготовили небольшой обзор бесплатных альтернатив популярных в России платформ SaaS. С небольшими усилиями зачастую можно добиться практически такой же функциональной отдачи, но с меньшими финансовыми затратами.
Читать дальше →

Как сэкономить на разработке мобильного приложения

Reading time18 min
Views7.2K
image

Привет, я Евгений Бойченко – сооснователь студии, которая разрабатывает мобильные приложения. За 10 лет работы вопрос «Почему так дорого?» я слышу чуть ли не ежедневно. Для многих клиентов мы искали возможности безболезненно снизить цену разработки, и в итоге у меня накопилось некоторое количество кейсов, которые решают проблему высокой стоимости мобильного приложения. В этом треде я призываю комьюнити делиться знаниями о том, как удешевить разработку мобильного софта без потерь. Начну с себя и своих секретиков, а вы присоединяйтесь в комментариях – вместе создадим гайд по экономичной разработке, который будет полезен обществу.
Читать дальше →

Использование Nginx FastCGI Cache

Reading time9 min
Views29K

FastCGI Cache — это система кэширования данных реализованая на уровне HTTP-сервера Nginx.

Преимущество FastCGI Cache заключается в том, что Nginx вернёт закешированный ответ пользователю сразу, как только получит запрос, при этом слой приложения не будет вовсе обрабатывать поступивший HTTP-запрос, если он имеется в кэше Nginx. 

Использование FastCGI Cache — отличный способ снизить нагрузку на вашу систему.

Если на вашем сайте есть страницы, которые изменяются редко или задержка обновления информации на некоторое время не критична, то FastCGI Cache именно то, что нужно.

Читать далее

Самый точный прогноз погоды: бот для Telegram на облачных функциях

Reading time5 min
Views21K

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

Первой мыслью было собрать небольшую DIY погодную станцию с датчиками и получать данные с нее. Но я не стал «изобретать велосипед» и в качестве источника проверенных данных выбрал погодную информацию, которая используется в гражданской авиации, а именно METAR (METeorological Aerodrome Report) и TAF (TAF — Terminal Aerodrome Forecast). В авиации от погоды зависят жизни сотен людей, поэтому прогнозы максимально точны.

Охота за убегающей памятью в Go на этапе разработки

Reading time5 min
Views8.5K

В начале этого года я прочитал на habr любопытную статью "Почему Discord переходит с Go на Rust", переход был связан с неэффективным механизмом сборки мусора в Go. Тогда подумалось, что, наверное, было бы проще доработать приложение и не переходить. Но еще проще было бы избежать таких проблем на стадии разработки.

Читать далее

Что покупать для глубокого обучения: личный опыт и советы использования GPU

Reading time30 min
Views42K
Перевод статьи Тима Деттмерса, кандидата наук из Вашингтонского университета, специалиста по глубокому обучению и обработке естественного языка

Глубокое обучение (ГО) – область с повышенными запросами к вычислительным мощностям, поэтому ваш выбор GPU фундаментально определит ваш опыт в этой области. Но какие свойства важно учесть, если вы покупаете новый GPU? Память, ядра, тензорные ядра? Как сделать лучший выбор по соотношению цены и качества? В данной статье я подробно разберу все эти вопросы, распространённые заблуждения, дам вам интуитивное представление о GPU а также несколько советов, которые помогут вам сделать правильный выбор.

Статья написана так, чтобы дать вам несколько разных уровней понимания GPU, в т.ч. новой серии Ampere от NVIDIA. У вас есть выбор:

  1. Если вам не интересны детали работы GPU, что именно делает GPU быстрым, чего уникального есть в новых GPU серии NVIDIA RTX 30 Ampere – можете пропустить начало статьи, вплоть до графиков по быстродействию и быстродействию на $1 стоимости, а также раздела рекомендаций. Это ядро данной статьи и наиболее ценное содержимое.
  2. Если вас интересуют конкретные вопросы, то наиболее частые из них я осветил в последней части статьи.
  3. Если вам нужно глубокое понимание того, как работают GPU и тензорные ядра, лучше всего будет прочесть статью от начала и до конца. В зависимости от ваших знаний по конкретным предметам вы можете пропустить главу-другую.

Каждая секция предваряется небольшим резюме, которое поможет вам решить, читать её целиком или нет.
Читать дальше →

Поиграл == покодил

Reading time3 min
Views73K
image

Мой рекорд скорости написания кода «на C» был в консоли Quake II. Причем абсолютно без ошибок. В темноте, не глядя, трясущимися руками надо было набрать примерно такое:

bind SHIFT "+snipe"
alias +snipe "sensitivity 2.5; fov 30"
alias -snipe "fov 90; sensitivity 4"

Боги умели прописывать RocketJump.

RocketJump
bind t "superrjr"

bind a "superrjn"

alias superrjr "echo SuperRocketJump enabled; bind a +srj; bind t superrjc"

alias superrjn "echo SuperRocketJump disabled"

alias superrjc "echo SuperRocketJump disabled; bind a superrjn; bind t superrjr"

alias +srj "lookdown1;hand 2;rjump"

alias -srj "lookdown2"

alias lookdown1 "cl_pitchspeed 999999;+lookdown"

alias lookdown2 "-lookdown;cl_pitchspeed 200;-attack;-moveup;wait;wait;wait;centerview;hand 2;cl_maxfps 80"

alias rjump "+moveup;+attack;wait;wait;wait;wait;cl_maxfps 0"

alias +QLD "+lookdown;cl_pitchspeed 999"

alias -QLD "-lookdown;cl_pitchspeed 200"

alias +RocketJump "hand 2;+QLD;wait;wait;+attack;+moveup"

alias -RocketJump "hand 2;-QLD;-attack;-moveup"

alias SuperRocketJump "hand 2;+QLD;wait;wait;wait;wait;+attack;+moveup;wait;cl_maxfps 0;LWX3;cl_maxfps 90;-QLD;-attack;-moveup;hand 2" 


Под катом — подборка дюжины проектов, которые заточены на то, чтобы играючи повысить кодерское мастерство.

ИТ-иммиграция на Кипр: жизнь на острове в подробностях

Reading time11 min
Views32K

ИТ-иммиграция на Кипр: жизнь на острове в подробностях


Сегодня я решила затронуть тему переезда айтишников на Кипр для постоянного места проживания и трудоустройства. К написанию такого поста подвигли разнообразные новшества в законодательстве островного государства и особенности миграции граждан в связи с карантинными мерами и ограничениями на въезд. ИТ-иммиграция на Кипр – достаточно популярное решение среди российских специалистов и айтишников стран СНГ, поэтому стоит глубже погрузиться в кипрскую атмосферу и осветить не только заработную плату и возможности, но и простые жизненные нюансы, которые создают комфорт и удобство повседневной жизни.



Общие данные республики Кипр


Кипр – небольшая страна на острове в восточной части Средиземного моря, столицей которой является город Никосия, а население составляет около 1 200 000 человек. Бизнес–центр острова – город Лимассол, считается самым дорогим, но в то же время – самым привлекательным городом страны, сочетая активную деловую жизнь с комфортом курортного отдыха. Рассмотрим на примере г. Лимассол особенности и уровень жизни в этом государстве.
Читать дальше →

Как за два месяца пройти путь от начинающего питониста до сертифицированного TensorFlow-разработчика

Reading time11 min
Views29K
Я всё ещё помню тот день, когда сдал выпускную работу в университет. Я тогда вздохнул с облегчением, так как это означало окончание бакалавриата. Но мной скоро овладела скука. Делать было нечего, мир был охвачен пандемией. Мне очень хотелось найти новое занятие, которое избавило бы меня от безделья.



В этом материале я хочу рассказать о том, как скука от самоизоляции помогла мне стать сертифицированным TensorFlow-разработчиком менее чем за два месяца. И это — несмотря на то, что на Python я раньше не программировал. Здесь я, кроме того, дам список ссылок на материалы, которые я использовал, осваивая новую для себя сферу знаний и готовясь к сертификации.
Читать дальше →

Пишем движок полнотекстового поиска на Go

Reading time8 min
Views20K
Полнотекстовый поиск — один из тех инструментов, которые мы используем практически каждый день, когда ищем какую-то информацию в интернете. Full-Text Search (FTS) — это метод поиска текста в коллекции документов. Документ может ссылаться на веб-страницу, газетную статью, сообщение электронной почты или любой структурированный текст.

Сегодня мы собираемся написать собственный движок FTS. К концу этой статьи он сможет выполнять поиск по миллионам документов менее чем за миллисекунду. Начнём с простых поисковых запросов, таких как «Выдать все документы со словом cat», а потом расширим движок для поддержки более сложных логических запросов.

Примечание: самым известным движком полнотекстового поиска является Lucene (а также Elasticsearch и Solr, построенные на его основе).
Читать дальше →

Компьютерное зрение на страже конфиденциальности

Reading time7 min
Views3.3K


Профилактика – наше всё. Грамотная защита от утечек данных поможет предупредить негативные последствия, которые могут повлечь за собой многомиллионные потери. В современном мире каждая из организаций обрабатывает и хранит конфиденциальную информацию. Если речь идёт о крупных организациях, то объёмы конфиденциальной информации огромны. Состояние «безопасности» компьютера – это концептуальный идеал, достигаемый при соблюдении каждым пользователем всех правил информационной безопасности.

Находясь в офисе, любой сотрудник время от времени отлучается от своего компьютера, и тогда включённый компьютер оказывается без присмотра, зачастую с открытыми для доступа папками и файлами, поскольку многие сотрудники попросту забывают блокировать свой ПК, либо же не делают это намеренно, руководствуясь подобной фразой – «отошёл на пять метров, что его блокировать-то!?» К сожалению, такими моментами могут воспользоваться заинтересованные в материалах другие сотрудники.
Читать дальше →

Распространенные ошибки безопасности в приложениях Laravel

Reading time14 min
Views20K

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

CyberPanda Team

Читать далее

Потроха IPsec, меримся с TLS 1.3, ГОСТ и Go

Reading time37 min
Views23K
Приветствую! Очень хочется рассказать про устройство современного стэка IPsec протоколов ESPv3 и IKEv2. IPsec, как мне кажется, незаслуженно обходится многими стороной и детального разбора его работы, его протоколов и возможностей я не видел на русском языке. Кроме того, сделаю странное — сравню IPsec ESPv3 и IKEv2 (оба 2005-го года) с современным, модным, state-of-art TLS 1.3 2018-го года.


Почему я вообще так увлечён темой IPsec — возможно самого сложного стэка протоколов для защиты сетей? Ведь сложность это главный враг надёжности и безопасности! Во-первых, чем больше узнаёшь про его протоколы, особенно IKEv2, тем больше понимаешь как много возможностей в него закладывалось и впечатляешься его продуманностью, в отличии от распространённого подхода разработчиков «костыль костылём погоняет» и решением серьёзных проблем «пока гром не грянет». Во-вторых, IPsec протоколы хорошо продуманы с криптографической точки зрения и, даже старые ESP/IKEv1, фактически являются единственными промышленными массово используемыми протоколами в которых не было сколь либо серьёзных уязвимостей. Тот же SSL (1995-ый год) стал достойно продуманным только с версии 1.3. А нелюбовь к IPsec у многих связана с монструозной сложностью IKEv1, которой больше нет в v2.
Читать дальше →

Что такое soft skills для инженера в 2020 году, зачем и как компании их проверяют на собеседованиях

Reading time6 min
Views38K


Недавно один из моих знакомых инженеров устраивался на работу в Facebook. Он успешно прошел несколько кругов собеседований, его позвали на собеседование в офис, и уже там на этапе leadership and drive что-то пошло не так. Как признавался знакомый позднее, отвечать на вопросы в виде «как вы сработались со сложным коллегой» или «как вы добивались целей в токсичной обстановке» он был не очень готов.

Именно подобные вопросы позволяют оценить так называемые гибкие навыки (soft skills) инженеров. История собеседования в Facebook меня сильно заинтересовала, поэтому я решил изучить тему soft skills, их проверки и тренировки поподробнее. Бонусом прикладываю список полезных ресурсов и статей, на которые наткнулся в процессе подготовки материала. Поехали!
Читать дальше →

Новое применение Captive Portal для проведения MiTM атак

Reading time3 min
Views7.7K

Тема проведения Man in the Middle атаки в контексте Captive Portal стара как мир. Как правило ведется речь о поднятии фейковой беспроводной точки доступа с собственным Captive порталом. Сегодня я покажу совершенно другой вектор атаки, выходящий за грани WiFi и применимый в том числе и в проводных Ethernet сетях.

Information

Rating
Does not participate
Registered
Activity