Обновить
512K+

Веб-разработка *

Делаем веб лучше

359,52
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

5 способов краулинга веб-сайта

Время на прочтение3 мин
Охват и читатели28K


Из Википедии веб-краулер или паук – бот, который с просматривает всемирную паутину, как правило, с целью индексации. Поисковики и другие веб-сайты используют краулеры для обновления своего содержимого или индексации содержимого других сайтов.


Давайте начнем!!


Metasploit


Вспомогательный поисковый модуль Metasploit представляет собой модульный поисковый робот, который будет использоваться вместе с wmap или автономно.


use auxiliary/crawler/msfcrawler
msf auxiliary(msfcrawler) > set rhosts www.example.com
msf auxiliary(msfcrawler) > exploit

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


  • about.php
  • jquery contact form
  • html и т. д.
Читать дальше →

Встречаем PHP 8 вместе: советы по обновлению, мнения за и против и интервью с ключевыми разработчиками

Время на прочтение2 мин
Охват и читатели7.1K
У PHP отличное сообщество. Пандемия отобрала у нас митапы и конференцию, но мы можем собраться 25 ноября вечером в онлайне на:

  • доклад «PHP 8: юзерленд» — нескучный обзор с примерами и рекомендациями,
  • дискуссию о развитии языка,
  • и сессию Q&A с Никитой Поповым (вопросы соберем по ходу эфира).
  • UPD. К стриму также присоединится Дмитрий Стогов


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

Дайджест свежих материалов из мира фронтенда за последнюю неделю №442 (16 — 22 ноября 2020)

Время на прочтение3 мин
Охват и читатели9.1K
Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него.

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

Marko.js — фронтенд от ebay.com

Время на прочтение6 мин
Охват и читатели10K
Marko.js не так популярен, как Angular, React.js, Vue.js или Svelte. Marko.js — это проект ebay.com, который с 2015 года стал достоянием opensource. Собственно, именно на этой библиотеке построен фронтенд ebay.com, что позволяет сделать заключение о её практической ценности для разработчиков.

Ситуация с Marko.js, немного напоминает ситуацию с фреймворком Ember.js, который, несмотря на то что работает в качестве фронтенда нескольких высоко-нагруженных сайтов (например Linkedin) — о нем мало знает среднестатистический разработчик. В случае с Marko.js — можно утверждать, что совсем не знает.

Marko.js неистово быстр, особенно при серверном рендеринге. Что касается серверного рендеринга, то скорость Marko.js, скорее всего, останется недосягаемой для его неторопливых собратьев, и этому есть объективные причины. О них и поговорим в предлагаемом материале.
Читать дальше →

Фронтенд-разработчику: 10 направлений, в которых стоит развиваться в 2021 году

Время на прочтение9 мин
Охват и читатели42K
Профессия «фронтенд-разработчик», без сомнения, будет одной из самых востребованных в 2021 году.

Раньше тем, кто работал в этой сфере, для создания интерактивных сайтов достаточно было знать HTML, CSS и, возможно, jQuery. Но сегодня фронтенд-разработчик вынужден существовать в обширной и постоянно меняющейся экосистеме, состоящей из инструментов, библиотек, фреймворков. Разработчику жизненно необходимы навыки владения самыми разными средствами, ему постоянно приходится вкладывать время и силы в самообучение.

В последние несколько лет мир увидел замечательные новые библиотеки и фреймворки, основанные на JavaScript и составляющие сегодня основу практически любого веб-проекта. Это, например, React, Vue, Svelte.



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

Устройство современного веб-браузера Chrome (часть 4/4)

Время на прочтение7 мин
Охват и читатели13K

Это последний пост из серии 4-х постов, посвященной заглядыванию внутрь Chrome, и исследующей, как он обрабатывает наш код для отображения веб-сайта. В предыдущем посте мы рассмотрели *рендер-процесс (renderer process) и узнали о *композ-потоке (compositor thread). В этом посте мы рассмотрим, как *композ-поток обеспечивает плавное взаимодействие при вводе данных пользователем.


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

Устройство современного веб-браузера Chrome (часть 3/4)

Время на прочтение9 мин
Охват и читатели15K

Это третья часть из 4-х, посвященных работе браузеров. Ранее мы рассматривали многопроцессорную архитектуру и навигацию. В этом посте мы рассмотрим, что происходит внутри *рендер-процесса (renderer process).


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

Устройство современного веб-браузера Chrome (часть 2/4)

Время на прочтение7 мин
Охват и читатели21K

Это 2-я часть из 4-х, в которой рассматривается внутренняя работа Chrome. В предыдущей части мы рассмотрели, как различные процессы и потоки работают с разными частями браузера. В этом посте мы подробнее рассмотрим, как каждый процесс и поток взаимодействуют, чтобы отобразить веб-сайт.


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

Устройство современного веб-браузера Chrome (часть 1/4)

Время на прочтение8 мин
Охват и читатели43K

Оригинальное название публикации: "Inside look at modern web browser".


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


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

Помощник в проведении технического интервью и совместный кодинг

Время на прочтение2 мин
Охват и читатели6.6K


UPD: обновил превью на новую. meet2code.com

Сколько мне довелось пройти технических собеседований на фронтенд-разработчика, столько разных способов и инструментов на них использовали интервьюеры.

Чат в одном месте, созвон в другом, кодинг в третьем. «Что-то не работает этот сервис, а расшарь-ка экран. Код решения отвалился, ну напиши снова…» И без того стрессовая ситуация для кандидата превращается в неприятную карусель.

И по такому же сценарию выстроена структура интервью — чаще хаос, перескакивания с темы на тему.

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

Чтобы всё было предсказуемо и по стандартам, ведь столько статей о правильном проведении интервью написано на хабре. Есть чем вдохновляться.

Назвал его Meet2Code.
Читать дальше →

Raspberry Pi в роли сервера для хостинга сайтов

Время на прочтение8 мин
Охват и читатели118K
Raspberry Pi — это недорогой одноплатный компьютер, отличающийся крайней экономичностью в плане потребления электроэнергии. Он хорошо подходит на роль платформы, на базе которой создают устройства, которые постоянно должны быть включены. Среди множества способов применения Raspberry Pi можно выделить использование этого компьютера в качестве веб-сервера. И, на самом деле, хостить сайты на Raspberry Pi очень просто. Если посчитать стоимость услуг обычного хостинг-провайдера, то окажется, что они не так уж и дёшевы. Альтернативой таким услугам может стать собственный хостинг на Raspberry Pi, обслуживание которого не стоит практически ничего. Кроме того, платформа Raspberry Pi постоянно развивается, поэтому тому, кто решает ей пользоваться, можно не беспокоиться о том, что в будущем ему придётся работать с устаревшим аппаратным и программным обеспечением.


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

Schedulers в RxJS

Время на прочтение4 мин
Охват и читатели18K

Что вы знаете о Schedulers в RxJS? Они скрывают от разработчиков работу с контекстом выполнения Observable. Как те эльфы-домовики из Гарри Поттера, которые выполняют всю черную работу в Хогвартсе, а о них никто даже и не слышал. Давайте исправим это и узнаем о них чуть больше.

Читать далее

Ближайшие события

«Kubernetes для разработчиков»: трехдневный интенсив

Время на прочтение2 мин
Охват и читатели4.3K
image

Спикеры Слёрма готовят обновленный интенсив, в котором не будет тем для администраторов. Мы убрали тему про обслуживание кластера и сосредоточились на особенностях разработки ПО в Kubernetes. В программе только то, что действительно нужно современному разработчику на проектах с K8s.
Читать дальше →

Внедрение зависимостей (dependency injection) через свойства-функции в JavaScript

Время на прочтение10 мин
Охват и читатели24K


Известный, но не очень популярный способ внедрения зависимостей. Попытка реализовать этот способ в популярных DI npm пакетах. Еще один свой DI.

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

REACT + JEST = TDD ❤️

Время на прочтение10 мин
Охват и читатели13K
Привет, Хабр! Меня зовут Андрей Хижняк, я фронтенд-разработчик в команде, разрабатывающей App Store внутри ManyChat.

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

От том, что из этого вышло, и будет моя статья, добро пожаловать под кат!


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

JavaScript: что нас ждет в следующем году

Время на прочтение7 мин
Охват и читатели8.7K


Доброго времени суток, друзья!

Данная статья посвящена возможностям JavaScript, которые будут представлены в новой версии спецификации (ECMAScript 2021, ES12).

Речь пойдет о следующем:

  • String.prototype.replaceAll()
  • Promise.any()
  • WeakRefs
  • Операторы логического присваивания
  • Разделители чисел

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

Растянуть видео в браузере

Время на прочтение7 мин
Охват и читатели29K


Очень часто видео в онлайн-кинотеатрах имеет соотношение сторон, отличное от соотношения сторон монитора. Поэтому иногда возникает желание сделать общий масштаб чуть крупнее за счет небольшой обрезки по краям. Или вовсе — вписать изображение в размеры экрана по меньшей стороне картинки. Особенно это актуально для маленьких экранов, а также, для старых мониторов 4:3. Я уж молчу о том, что оригинальное видео может быть вообще растянуто по одной из сторон и это необходимо как-то исправить.

Для решения данной проблемы я задумал написать браузерное расширение под Chrome и Firefox. Идея такая: при проигрывании любого браузерного видео вызывается экранное меню, которое позволяет произвольно менять масштаб и соотношение сторон картинки.
Читать дальше →

Конвертация SVG в PNG: а воз и ныне там, но есть варианты

Время на прочтение6 мин
Охват и читатели17K

Рассказывает Александр Топорков, веб-разработчик Email Soldiers


Графический формат SVG (Scalable Vector Graphics) — самый распространённый сегодня формат векторной графики, которая выгодно отличается от растровой, в первую очередь, возможностью масштабирования и преобразования изображений. Но иногда требуется конвертация SVG в PNG (Portable Network Graphics) — формат растровой графики.


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


конвертация svg в png


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

Стоит ли платить за плагины OpenCart?

Время на прочтение9 мин
Охват и читатели6.5K

У нас обновление в маркетплейсе: теперь вы можете заказать VPS-сервер с предустановленным OpenCart.

Вместо того, чтобы рассказывать, что такое OpenCart, давайте лучше порассуждаем о расширениях: в каком случае стоит покупать готовое, как их проверять?

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

На что смотреть, принимая решение о покупке расширения?


Качество кода


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

Хороший плагин должен быть написан в соотвествии со стандартами W3C, а также быть аккуратным и чистым, чтобы не грузить сервер. Еще один признак качественного плагина — подробная документация про установку и использования.

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