Открыть список
Как стать автором
Обновить
10
Карма
0
Рейтинг
Шарыкин Константин @hunterlan

Студент и C# — программист

  • Публикации
  • Комментарии

1 CPU 1 Гб – а я хочу мониторинг, как у больших дядей

МаклаудНастройка LinuxJavaScriptСерверное администрированиеЛайфхаки для гиков


Я обожаю читать на хабре статьи про то, как устроены системы больших интернет-компаний. Кластеры SQL-серверов, монг и редисов. Тут у нас кластер ELK собирает трейсинг, там – сборка логов, здесь балансер выдает входящим запросам traceID и можно отслеживать, как запрос ходит по всем нашим микросервисам. Класс. Но, допустим, у вас совсем маленький проект и вы можете себе позволить лишь VPS минимальной конфигурации. Реально ли на ней сделать мониторинг не хуже, чем у больших проектов? Я решил – надо попробовать.
Читать дальше →
Всего голосов 79: ↑77 и ↓2 +75
Просмотры34.7K
Комментарии 74

Малоизвестные, но крутые атрибуты в HTML

VDSina.ruРазработка веб-сайтовCSSHTML


Спросите случайного фронтендера, какие атрибуты HTML он использует — и услышите что-то вроде «src, href, style, class...» и прочую чепуху, которую всем ещё в младенчестве вживили на чипе агенты IETF. Между тем, стандарты веба не стоят на месте, и с каждым годом в браузерах появляются всё более крутые фичи не только для монструозного CSS, но и для обычных элементов HTML. Вы знали, что с помощью атрибутов можно пинговать* произвольный адрес, а элементы формы могут многократно переопределять её поведение? Вряд ли.
Читать дальше →
Всего голосов 67: ↑65 и ↓2 +63
Просмотры23.5K
Комментарии 15

Когда маркетологи заигрались и потеряли человека

Growth HackingУправление продуктомУправление продажами

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

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

Читать далее
Всего голосов 165: ↑157 и ↓8 +149
Просмотры51.4K
Комментарии 453

Используй console.log () как про

ITSOFTРазработка веб-сайтовJavaScriptОтладкаБраузеры
Перевод

Использование console.log() для отладки JavaScript - самая распространенная практика среди разработчиков. Но есть еще кое-что ...

Объект console обеспечивает доступ к отладочной консоли браузера. Особенности того, как она работает, варьируются от браузера к браузеру, но де-факто существует набор функций, которые обычно предоставляются.

Читать далее
Всего голосов 37: ↑29 и ↓8 +21
Просмотры10.7K
Комментарии 5

Как мой простой проект в Github стал вирусным

VDSina.ruGitHubУправление проектамиИнтернет-маркетинг
Перевод


В прошлом месяце я создал простой проект, разошедшийся по различным техническим сообществам и социальным сетям. В Github он за 7 дней получил с 0 до 4 тысяч звёзд и более 200 форков. Github примерно в течение пяти дней рекламировал его в разделе Trending repositories of day.

Clone Wars

70 с лишним open-source-клонов или альтернатив популярных сайтов наподобие Airbnb, Amazon, Instagram, Netflix, Tiktok и т.д. В списке содержится исходный код, ссылки на демо, технологический стек и количество звёзд в GitHub.

Ссылка на проект

Ссылка на Github
Читать дальше →
Всего голосов 42: ↑40 и ↓2 +38
Просмотры18.3K
Комментарии 24

Айдентика личного бренда для самых маленьких

КРОКДизайнЛайфхаки для гиков

Помимо основной работы в ИТ-компании КРОК, я также веду кружок спортивного программирования в вузе, у которого даже есть свой паблик. Так вот, порой ведешь блог, и кажется, что надо бы и аватарку красивую поставить, и как-то украсить страничку, картинки к постам в одном стиле запилить… но что-то все не получается, какое-то некрасивое все выходит, и вообще, что вы пристали, я программист! А нанимать профессионального дизайнера чтобы нарисовал дизайн систему для паблика из 50 человек… а вдруг не стрельнет, чем я ему платить буду?

К счастью, создать для своего бложика простую айдентику чисто “на первое время”, чтобы выглядеть “прилично” можно и без помощи дизайнера. Рассказываю как!

Читать далее
Всего голосов 34: ↑32 и ↓2 +30
Просмотры3.6K
Комментарии 6

Бесплатные сервисы для разработчиков — огромный список

МаклаудРазработка веб-сайтовOpen sourceУправление разработкойСофт

Бесплатное хранилище артефактов PackageCloud

Удивительно, но в интернете сотни сервисов, которыми разработчик может пользоваться совершенно бесплатно. «Бесконечное» время (пока компания не обанкротится или не изменит условия), без рекламы, пробного периода и других подводных камней.

Недавно мы обсуждали эту тему в статье «Боль разработчика: “Никогда не давайте пользователям бесплатный тариф”». Речь шла о том, что на самом деле бесплатный план вовсе не бесплатен — приходится тратить массу времени и усилий на поддержку этих тарифов.

Но для некоторых бесплатный тариф — единственный способ завлечь новых клиентов. Это просто замечательно с точки зрения самих пользователей. Ведь перед нами десятки бесплатных хостингов, API, CMS, CDN, сервисов обработки данных, поисковых движков, репозиториев, инструментов проверки кода и других. Бесплатный тариф идеален для опенсорс-разработчиков, любительских и некоммерческих проектов, маленьких стартапов. Ни за что не надо платить.
Читать дальше →
Всего голосов 83: ↑77 и ↓6 +71
Просмотры28.8K
Комментарии 15

Что делать, если украли смартфон

Информационная безопасностьСмартфоныНаучно-популярноеЛайфхаки для гиков
image


Евгений (MalDeckard) Черешнев поделился личным опытом и написал исчерпывающий гайд, который может помочь многим людям и предостеречь от последствий:

У меня на днях украли смартфон — профессиональный вор-велосипедист на скорости выхватил из рук прямо в центре города и был таков. Это может случиться с кем угодно и в любой стране мира. Я, в силу профессиональной деформации вокруг IT, данных, приватности и безопасности, к ситуации был морально готов и знал, что делать. Друзья, с которым поделился историей посоветовали написать памятку, которую может использовать каждый человек, даже далекий от айти. Этот текст — эта самая памятка. Смартфон она вам не вернет. Но, если кому-то поможет снизить ущерб и сэкономит седых волос — значит, не зря потратил время на написание, а вы — на прочтение.

Справедливости ради, большинство воров уже в курсе того, что каждый смартфон — это, по сути, радиомаяк, по которому всегда можно укравшего отследить. Поэтому они редко оставляют его включенным — практически сразу достают и выбрасывают SIM-карту, сам телефон вырубают и сдают на запчасти за копейки. Что крайне обидно — ибо шансы того, что, например, мой iPhone 12 Pro Max 512 банально разберут на экран, аккумулятор и несколько особо востребованных микросхем — стремятся к 100%. То есть, вор украл крайне дорогой девайс, а получит за него или хрен или (если он идиот) — срок. Но это не всегда так. Иногда можно получить реально грузовичок и тележку проблем. Во-первых, в ряде типов краж (как в моем случае) телефон попадает в руки плохого парня в разлоченном состоянии и есть риск, что злоумышленник девайс специально не залочит — будет держать его активированным и извлекать из него максимальную пользу, на что у него будет в теории до 24ч (после чего сработает система защиты в заводских настройках и снова попросит ввести пин-код, даже, если телефон до сих пор разлочен).
Читать дальше →
Всего голосов 167: ↑157 и ↓10 +147
Просмотры146.2K
Комментарии 482

15 заповедей IT-фриланса и мелкой разработки

Управление разработкойУправление проектамиФрилансКарьера в IT-индустрииУдалённая работа
Из песочницы

Самая сложная часть фрилансерской работы – это удержать заказчика, когда он сделал первый пробный шаг в сотрудничестве с вами, но ещё не привязан к вам сколько-нибудь серьезно. Я расскажу о наиболее частых ошибках и удачных моделях поведения в работе с клиентом. Это опыт наших разработчиков, вынесенный из множества мелких и средних проектов.

Рассмотрены, в основном, сугубо технические моменты, никакой техники продаж и прочего маркетинга.

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

Что и как по шагам
Всего голосов 25: ↑24 и ↓1 +23
Просмотры11.2K
Комментарии 19

Герундий, что ты такое?

Изучение языков
Из песочницы

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

Начнем со сказки. Жил да был глагол( swim, jump, run… ), решил сменить пол, то бишь стать существительным. И превратился в герундий. И глаголом не остался, и существительным не стал. Получилось что-то непонятное, нечто среднее, скажем так: swimming, jumping, reading.

Мы это понимаем примерно так

swimming -плавание,

reading -чтение

jumping -прыжки.

То есть jumping -прыгание, как то язык не поворачивается сказать.

Но все эти примеры объединяет то, что они обозначают некий процесс. Какое-то занятие, полезное или не очень. Еще примеры в студию:

speaking, listening, reading, writing.

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

Читать далее...
Всего голосов 25: ↑23 и ↓2 +21
Просмотры14.7K
Комментарии 70

Делаем фильтры «как в экселе» на ASP.NET Core

Разработка веб-сайтов.NETC#

«Сделайте нам фильтры «как в экселе», — довольно популярный запрос на разработку. К сожалению, реализация запроса в общем виде «слегка» длинее, чем его лаконичная постановка. Если вдруг вы никогда не пользовались этими фильтрами, то вот пример. Основная фишка в том, что в строчке с названиям колонок появляются выпадающие списки со значениями из выбранного диапазона. Например в колонках А и B — 4000 строк и 3999 значений (первую строчку занимают названия колонок). Таким образом, в соответсвтующих выпадающих списках будет по 3999 значений. В колонке C — 220 строк и 219 значений в выпадающем списке соответственно.


Пример реализации на C# под катом
Всего голосов 16: ↑15 и ↓1 +14
Просмотры4.7K
Комментарии 9

Рок-звёзды без премий: как Netflix хакнул систему мотивации сотрудников

RUVDS.comУправление персоналомКарьера в IT-индустрии
image

В 1998 г. мало кому известный стартап под названием Netflix, только что запустивший собственный сайт, платил своим сотрудникам значительно меньше рынка: в фирму семейного типа шли не за большими и быстрыми деньгами.

Сегодня всё иначе. Netflix — крупнейшая международная IT-компания и крайне щедрый работодатель с необычной, даже по меркам Кремниевой долины, системой оплаты труда. В 2018 году стриминговый сервис стал самым популярным местом работы среди соискателей, опередив Google и Apple.

Мотивационные схемы — часть и продолжение корпоративной культуры Netflix. За прошедшие десятилетия она серьёзно эволюционировала и к 2010-ым окончательно выкристаллизовалась в стройную систему. Сначала — в виде опубликованного в Сети “Корпоративного справочника Netflix” из 127 слайдов, затем — как манифест Netflix Culture, а недавно — как книга с громким названием “Никаких правил” (No Rules Rules).

В этой статье мы рассказали самую интересную часть из этой книги: как именно устроена система мотивации в Netflix и что нужно делать компании, чтобы рок-звезды в ней выкладывались по полной?

И почему отказ от премий сотрудникам стал фактором роста компании?
Читать дальше →
Всего голосов 143: ↑136 и ↓7 +129
Просмотры60.6K
Комментарии 141

CI/CD для Dynamics CRM на базе Azure DevOps. Часть 1. Continuous Integration

.NETCRM-системыMicrosoft AzureDevOps
Tutorial

image


В прошлом году на митапе "Dynamics 365 & Power Platform meetup Moscow — 25 февраля 2020" я рассказывал про то как мы выстроили пайплайн непрерывной поставки CI/CD на базе GitLab CI для Microsoft Dynamics CRM.


В этой статье я расскажу и покажу как построить CI-часть пайплайна непрерывной поставки расширения функциональности Microsoft Dynamics CRM на базе Azure DevOps.

Читать дальше →
Всего голосов 4: ↑4 и ↓0 +4
Просмотры1.9K
Комментарии 5

Как в GitHub смотреть красивые отчеты об ошибках с помощью SARIF

PVS-StudioC++C#GitHubDevOps

Вы пользуетесь GitHub, пишете код и делаете прочие веселые штуки. Для повышения качества своей работы и оптимизации своего времени используете статический анализатор. И вот вам приходит идея - а почему бы не смотреть на ошибки, которые выдал анализатор, прямо в GitHub? Да и еще, чтобы это красиво выглядело. Что же делать в этом случае? Ответ очень простой. Ваш выбор – SARIF. О том что это такое, как это настроить, и будет рассказано в данной статье. Приятного чтения.

Читать далее
Всего голосов 9: ↑8 и ↓1 +7
Просмотры1.2K
Комментарии 4

Модели памяти C++ и CLR

JUG Ru Group.NETC++C#Параллельное программирование

Это расшифровка-перевод доклада Саши Гольдштейна, признанного лучшим на конференции DotNext 2016 Piter. С годами этот доклад стал лишь актуальнее прежнего: появление Mac на ARM-процессорах — еще один пример, почему разработчикам сегодня нужно думать не только о x86-архитектуре.



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


То, что подходит процессорам Intel на архитектурах x86 и x86-64, может не подойти другой архитектуре. Как только вы перенесете свой код на другой процессор, например, на ARM для iPhone и Android, есть вероятность, что он перестанет работать как надо. Проблемы могут быть как очевидными (воспроизводиться с первого-второго раза), так и не очень (возникать только раз в миллион итераций). Вполне вероятно, что такие баги могут добраться до продакшна. Сегодня .NET и, конечно, C++ можно использовать не только на Windows и Intel, но и на других платформах, так что доклад будет полезен многим разработчикам.


Дисклеймер: статья предназначена для продвинутых читателей. Смотрите на свой страх и риск. За частое упоминание барьеров памяти и изменения порядка исполнения инструкций она получила возрастное ограничение 18+.
Читать дальше →
Всего голосов 72: ↑71 и ↓1 +70
Просмотры15.8K
Комментарии 4

Популярные заблуждения о C#

.NETC#Карьера в IT-индустрии

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

Читать далее
Всего голосов 93: ↑90 и ↓3 +87
Просмотры29.6K
Комментарии 62

Видеомонтаж, машинное обучение и взломанный xml — все в одной программе

SQLiteXcodeSwift
Из песочницы

По профессии я режиссер монтажа, а прикладное программирование как увлечение в свободное время.

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

Дело в том что почти треть работы видеомонтажера  заключается  в рутинном поиске видеоряда из исходников, которые надо каждый раз шерстить в поиске контекстного плана под закадровый текст, по моему это не несет никакой творческой составляющей, особенно когда ты занимаешься этим 15 лет). Ну и подумал я, а что если написать софтину, которая будет проходится по папке с исходниками, распознавать объекты, аккуратненько «складывать» их в БД. Далее, в момент поиска видео фрагментов для так называемой «джинсы», вводится поисковое слово, например «Солнце», и все что находится каким то образом передается в монтажную систему.

Идея зрела, собирался стёк, писать решил на Swift, обученные модели собственно Core ML, база данных SQLite. На первый взгляд идея казалась легко реализуемой, вроде ничего сложного.  

Очень быстро накидал основной код, который вытаскивает кадры из видео, распознает обьекты с помощью модели Resnet50, которую рекомендовали яблочники у себя на сайте, она очень шустро работала и позволяла настраивать процент при котором считать объект распознанным. Сам код спокойно раздается на том же apple.com  для всех желающих. Подключил библиотеку SQLite.swift, обернул ее функции в свои методы, все работает! 

Потом еще пришлось неплохо повозиться с алгоритмами создания очереди обработки списка файлов и в этот момент я обратил внимание что программа то разрослась! 

Читать далее
Всего голосов 11: ↑11 и ↓0 +11
Просмотры2.7K
Комментарии 0

Скромное обаяние конспирологии

Читальный залНаучно-популярное


Эта статья написана для тех, кто получает комментарии вида «давайте без теорий заговора» или «это всё конспирология» в ответ на важные вопросы. Она поможет им как набор аргументов против подобных обвинений. Также она может быть полезна людям, которые стесняются прямо высказывать своё мнение, потому что их мнение противоречит официальному. Возможно, эта статья будет интересна и для некоторых людей, всегда поддерживающих общепринятый взгляд на вещи.
Читать дальше →
Всего голосов 129: ↑71 и ↓58 +13
Просмотры22.2K
Комментарии 333

Шпаргалка для собеседования .Net

.NETC#Карьера в IT-индустрии

Однажды (давно это было) мы с 3-мя коллегами решили на интерес проходить собеседования, вакансии отбирали уровня middle. Занимались этим недели 2, по нескольку собеседований в неделю каждый.

В результате получился список тем по .Net, которые спрашивают на собеседованиях.

Читать далее
Всего голосов 22: ↑16 и ↓6 +10
Просмотры18.3K
Комментарии 82

Курсы и книги для изучения data science c нуля

Машинное обучениеКарьера в IT-индустрии

В статье привожу курсы и книги, которые мне кажутся наиболее оптимальными для изучения машинного обучения/data science c нуля. Стараюсь привести список, который будет наиболее кратким и одновременно даст все знания, необходимые для начала работы на практике, без серьезных пробелов в знаниях.

Читать далее
Всего голосов 15: ↑14 и ↓1 +13
Просмотры14.3K
Комментарии 4

Информация

В рейтинге
4,459-й
Откуда
Харьков, Харьковская обл., Украина
Зарегистрирован
Активность