• Специалистам по информационной безопасности ботнет Trickbot известен с 2016 года. Его главная задача при заражении устройства — отслеживание конфиденциальной информации пользователя. Не фоточек или видео, нет — связок пароль/логин для банковских и других приложений и сервисов. В целом, ботнет заточен…

  • Одна из сложностей в понимании DNS заключается в его децентрализованности. Существуют тысячи (а может, сотни тысяч?) авторитетных серверов имён и по крайней мере 10 миллионов резолверов. На них работает множество разного ПО! Из-за того, что на разных серверах выполняется своё…

  • Нет сомнений, что Django, Laravel и Ruby On Rails — одни из самых популярных фреймворков для веб-разработки. Однако компании, которые ищут для себя лучшие решения, часто не знают, что выбрать. В этой статье я расскажу о трех различных фреймворках, их…

  • Какое бы Android-приложение мы ни собирались создать, нам в любом случае нужно будет управлять состоянием, поэтому понимание того, как лучше всего это делать, является очень важным. К счастью, существует Jetpack Compose, который предлагает нам простые и интуитивно понятные способы управления…

  • Привет, я увлекаюсь программированием шейдеров. Сегодня это мини-футбол, которым я хочу поделиться.#define W 5 #define rot(a) mat2(cos(a),sin(a),-sin(a),cos(a)) #define m(v2,deg) mod((v2)*rot(radians(deg)),60.0)-30.0 #define hex() o1=m(o,0.);o2=m(o,60.);o3=m(o,120.);rgba+=clamp(vec4(abs(o1.y)+abs(o2.y)+abs(o3.y)-54.),0.1,1.0); void mainImage(out vec4 rgba,in vec2 o){ rgba=vec4(0.33,1.0,0.5,1); vec2 R=iResolution.xy,iM=((length(iMouse.z)>=1.0)?vec2(iMouse.x,iMouse.y)*1.0:R/2.0)*min(R.x,R.y)/360.0; o-=R/2.;vec2 a=o,M=o,field=o;o/=min(R.x,R.y)/360.0;;field/=min(R.x,R.y)/360.0; vec2 o1,o2,o3;float iT=iTime; o-=(-iM/min(R.x,R.y)*360.0+R/2.0)/min(R.x,R.y)*360.0*(vec2(sign(cos(iT/3.14))*cos(iT/3.14)*cos(iT/3.14),sin(iT/1.57))); o/=(abs(cos(radians(iTime*180.0)))+0.5)/1.5; float…

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

  • Позиция тимлида — желанное место для многих разработчиков в пути их профессионального становления, но так ли радужна эта работа? Большая часть задач скрыта от других участников команды, потому мнение о тимлидах и их роли бывает искажено. Обсудили волнующую многих тему на…

  • Привет Хабр! Пятничного тру ФП хардкора с Free Monad, Таглес Финал, Монад трансформерами, Refined Types, Smart Constructors и прочим таким вам в ленту. Хардкор сам себя в ленту не принесет так что погнали. Гексагональная архитектура делит наш код на три…

  • Релиз планировали на неделю раньше, но он появился только на днях. Расскажем, почему произошла задержка и поговорим о заметных нововведениях.Unsplash / Pawel CzerwinskiНужно больше тестовПервый релиз-кандидат новой версии ядра выпустили в конце января. Далее, мейнтейнеры продолжили разработку по графику, и…

  • Эта статья – о Pet project, собственных проектах, которыми многие из нас занимаются в свободное время. Поговорим о том, нужны ли такие увлечения архитектору и как Pet project может помочь в работе. Также я расскажу о своих проектах и опыте,…