Pull to refresh
-1
0

Веб-разработчик

Send message

Как работает JS: обзор движка, механизмов времени выполнения, стека вызовов

Reading time6 min
Views203K
Популярность JavaScript растёт, его возможности используют на разных уровнях применяемых разработчиками стеков технологий и на множестве платформ. На JS делают фронтенд и бэкенд, пишут гибридные и встраиваемые приложения, а также многое другое.

Анализ статистики GitHub показывает, что по показателям активных репозиториев и push-запросов, JavaScript находится на первом месте, да и в других категориях он показывает довольно высокие позиции.


Статистические сведения по JavaScript с GitHub

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

Если множество проектов плотно завязаны на JavaScript, значит, разработчикам необходимо как можно более эффективно использовать всё, что даёт им язык и его экосистема, стремясь, на пути разработки замечательных программ, к глубокому пониманию внутренних механизмов языка.

Как ни странно, существует множество разработчиков, которые регулярно пишут на JavaScript, но не знают, что происходит в его недрах. Пришло время это исправить: этот материал посвящён обзору JS-движка на примере V8, механизмов времени выполнения, и стека вызовов.
Читать дальше →
Total votes 41: ↑33 and ↓8+25
Comments29

Нейросети для чайников. Начало

Reading time5 min
Views798K


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

В данной статье (цикле статей?) я попытаюсь осветить тему нейросетей с точки зрения человека непосвященного, простым языком, на простых примерах, раскладывая все по полочкам, а не «массив нейронов образует перцептрон, работающий по известной, зарекомендовавшей себя схеме».

Заинтересовавшихся прошу под кат.
Читать дальше →
Total votes 258: ↑226 and ↓32+194
Comments91

Продвижение в социальных сетях. Часть 1 — ВКонтакте и как здесь всё устроено?

Reading time8 min
Views24K
Как правило, упоминания о рекламных возможностях Вконтакте на просторах Хабра связанны с веселыми, и порой очень прибыльными багами (например, здесь можно почитать о том, как ВК разрешал пользователям откручивать бесплатную рекламу с оплатой за клики; этот баг, кстати, до конца так и не пофиксен).

image

Нередко многие программисты появляются в комментариях к публикациям с «разоблачениями» жутких сммщиков, которые берут баснословные деньги за настройку рекламы, не давая при этом никаких гарантий. Например, в этой публикации, которая стала основным посылом к написанию данного цикла, уважаемый Drizzly утверждает, что:
Очень нелогично настройки таргетинга продавать за дополнительную цену. Наоборот нужно мотивировать рекламодателей как можно активнее пользоваться инструментами гео и соцдем таргетинга и как можно точнее нацеливать свои объявления на ЦА. В этом случае выигрывают все три стороны — у рекла выше конверсия, у площадки больше свободных площадей, меньше размазанных по тематикам реклов, выше CTR, пользователь получает рекламу релевантную его интересом. Продавать настройки таргетинга — это безумство.

Будучи человеком, который продает настройки таргетинга и услуги по продвижению как во Вконтакте, Фейсбуке, Инстаграмме, Youtube и немножечко SEO, я с ним полностью согласен. Более того, уверен, что это занятие доступно абсолютно любому человеку, имеющему хоть небольшие аналитические способности. И если у вас они есть (раз уж читаете Хабр, то с большой вероятностью есть), добро пожаловать под кат. Возможно, однажды вам придется самостоятельно разместить рекламу в соц сетях, или, как минимум, оценить адекватность работы того, кто попросит у вас за эту настройку деньги. И я искренне надеюсь, что вам пригодится эта серия публикаций. Итак, поехали!
Читать дальше →
Total votes 29: ↑18 and ↓11+7
Comments17

Зачем нужна теория вероятностей в жизни

Reading time2 min
Views26K
Именно под таким названием мы и провели вебинар — «Зачем нужна теория вероятностей в жизни».

В вебинаре мы не касались «жёлтых» тем типа "как выигрывать у казино" и "100% способ получить миллион без регистрации и SMS".

Наоборот, были затронуты более серьёзные. Вот сам вебинар:



Например, в индустрии статистики больше денег, чем в торговле оружием, наркотиками и людьми вместе взятыми. Один малоизвестный английский учёный в 18 веке использовал статистику длительностей жизни (так называемые актуарные таблицы, составленные ещё Галлеем, который ещё и комету Галлея открыл) и основал бизнес, который сейчас стал целой индустрией, бизнесом №1 в мире. И вы тоже в нём участвуете каждый день, сознательно или нет, например, когда едете на работу.

Идея похожего математического аппарата используется в Индии: можно купить билетик у мафии и кататься в общественном транспорте бесплатно, а полученные вами штрафы оплатит мафия. Называется «хафта» и выгодно вам и мафии, но не государству.
Читать дальше →
Total votes 10: ↑10 and ↓0+10
Comments10

Обзор DEXP Ursus NS210 – недорогого планшета с 10,1-дюймовым экраном и поддержкой 3G

Reading time4 min
Views15K
Новые планшеты с экраном диагональю 10,1 дюйма появляются гораздо реже, чем, скажем, 7-дюймовые модели. Большие «таблетки» не так удобно носить с собой: они занимают много места, да и попросту тяжелые. Однако для ряда задач – просмотр видео, работа в офисных приложениях, рисование эскизов – именно крупноформатные планшеты подходят лучше всего. Об одном из таких устройств и пойдет речь в сегодняшнем обзоре. Это планшет от владивостокского бренда DEXP – недорогая модель (6 990 рублей) с  10,1-дюймовым экраном DEXP Ursus NS210.


Читать дальше →
Total votes 11: ↑7 and ↓4+3
Comments2

Как научить полиглота новому языку?

Reading time14 min
Views32K

Интервью с Дмитрием Петровым


Интервью с известным психолингвистом, полиглотом, синхронным переводчиком, теле- и радио-ведущим, создателем уникальной системы изучения иностранных языков, Президентом Центра Инновационно-Коммуникативной Лингвистики, учителем с большой буквы и отличным собеседником. Дмитрий Юрьевич научил меня базовому уровню 4 иностранных языков, а я попытался приоткрыть перед ним дверь в увлекательный мир программирования. В конце статьи специальный презент для ГИКов и маглов →.


Читать дальше →
Total votes 20: ↑16 and ↓4+12
Comments18

Как создавать объявления в контекстной рекламе с CTR выше 10%

Reading time6 min
Views15K


В этой статье вы узнаете тайную магию CTR в контексте, как делать конкурентный анализ по готовому шаблону и какие выводы из него делать; 10 фишек при создании объявлений; увидите процесс создания привлекательного объявления + особенности объявлений в Рекламной сети Яндекса и Google Adwords. На конкретных примерах, со скринами.
Читать дальше →
Total votes 10: ↑8 and ↓2+6
Comments0

Оформление социальных кнопок в три шага

Reading time2 min
Views11K


Привет, Хабр!

Сегодня небольшим, но полезным туториалом с нами поделится Дмитрий Кабаков, Senior фронтенд-разработчик DataArt.

В современном «гугломире» все большую важность набирает социальная составляющая сайта. Но обычные социальные виджеты/коды не всегда почти никогда не вписываются в оформление сайта.

Что же делать? Нужно оформлять!

Для туториала вам понадобится:
  • jQuery-плагин sharrre;
  • иконки FontAwesome;
  • знания HTML/CSS3;
  • минут 10 вашего времени
Читать дальше →
Total votes 25: ↑9 and ↓16-7
Comments22

Как найти себе место на земле и не попасть на счетчик Яндекса

Reading time5 min
Views40K
… эта история началась давным-давно в далекой-далекой стране Краковия, чьи жители беспечно проживали свои жизни и не знали…

Но сам я местный, и сегодня расскажу вам страшную историю, о том, что мешало спать (лично мне) долгие годы. И это не налоги (с ними все нормально), это — геокодер Яндекс.Карт!
Геокодер — это один из HTTP-сервисов Яндекс.Карт, получающий в запросе текстовое представление адреса и возвращающий в ответе найденные на его основании объекты. Либо наоборот: получающий координаты и отвечающий адресом.

Именно геокодер подскажет, где на карте находится чудная страна Краковия. И именно он будет главным героем этой истории, завязка которой была описана совершенно в другой книге — в древнем фолианте Пользовательское соглашение API Яндекс.Карт. Легенда гласит, что существует ограничение на количество запросов к функции геокодирования. Максимально допустимо делать в сутки не более 25 000 запросов к HTTP и JS геокодеру в сутки. Или овсянка, сэр.

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



Что делать? Для наглядности достанем из кустов рояль — 8 лет назад на Хабре засветился проект «еСоседи» — «Карта интересных мест». Все эти годы я продолжаю работать над ним.
Читать дальше →
Total votes 46: ↑37 and ↓9+28
Comments9

Под прессом. Ломаем и защищаем Wordpress своими руками

Reading time11 min
Views90K


WordPress — это удобная блог-платформа для публикации статей и управления ими, на которой базируется огромное число различных сайтов. Из-за своей распространенности эта CMS уже давно является лакомым куском для злоумышленников. К сожалению, базовые настройки не обеспечивают достаточного уровня защиты, оставляя многие дефолтные дырки незакрытыми. В этой статье мы пройдем типичным путем «типового» взлома сайта на Wordpress, а также покажем как устранить выявленные уязвимости.
Читать дальше →
Total votes 29: ↑26 and ↓3+23
Comments11

PHP для маленьких. MVC по-своему

Reading time4 min
Views14K
Хочу предложить легкий курс статей, который бы помог начинающим, а у старичков вызвал бы только теплую улыбку на лице за прожитые годы, направленный на простое освоение концепции MVC.

Концепция


Курс статей, призванный рассказать новичку о том, как же на самом деле устроены такие страшные гиганты, как PHP MVC Фреймворки.

Курс ни в коем случае не претендует на звание «Всеобъемлющее пособие: „Сделай сам все то, что уже давно изобретено“», но поможет понять самым маленьким и только начинающим программистам мира веб, каким образом все это написано, да еще и работает. Но прежде чем загружать вас тоннами кода, необходимо разобраться с самим понятием MVC. Что это такое?
Читать дальше →
Total votes 13: ↑8 and ↓5+3
Comments11

Готовимся к собеседованию по PHP: ключевое слово «static»

Reading time5 min
Views184K
Не секрет, что на собеседованиях любят задавать каверзные вопросы. Не всегда адекватные, не всегда имеющие отношение к реальности, но факт остается фактом — задают. Конечно, вопрос вопросу рознь, и иногда вопрос, на первый взгляд кажущийся вам дурацким, на самом деле направлен на проверку того, насколько хорошо вы знаете язык, на котором пишете.

image

Попробуем разобрать «по косточкам» один из таких вопросов — что значит слово «static» в PHP и зачем оно применяется?
Подробности, цитаты из мануала, стандартов и личного опыта - под катом
Total votes 54: ↑41 and ↓13+28
Comments70

Исследуем результат работы php-транслятора

Reading time17 min
Views25K
Здравствуйте. Думаю, что большинство веб-программистов знает, как работает php-интерпретатор.

Для тех, кто не знает:
Вначале, написанный нами код разбирается лексическим анализатором. Далее, полученные лексемы, передаются в синтаксический анализатор. Если синтаксический анализатор дал добро, то лексемы передаются транслятору, а он, в свою очередь, генерирует так называемые opcodes (operation codes). И только после этого, в дело вступает виртуальная машина PHP (та самая Zend Engine) которая и выполняет наш алгоритм из получившихся opcodes. Opcodes так же называют эдаким php-шным ассемблером.
Данная статья расскажет вам о том, какие opcodes и в каких случаях генерируются. Конечно, рассказать про все opcodes в рамках одной статьи не получится, но в данной статье будет рассмотрен конкретный пример и на его основе мы попытаемся разобраться что к чему у этих opcodes. На мой взгляд, самое главное, что вы узнаете прочитав статью, это то, как на самом деле происходит выполнение ваших исходных текстов и, возможно, это поможет вам в лучшем понимании языка php.

Советую вам налить себе чашечку капучино или просто зеленого чая, т.к. под катом листинги opcodes и php-кода…
Читать дальше →
Total votes 27: ↑22 and ↓5+17
Comments15

Показ масштабируемых изображений

Reading time10 min
Views54K
Традиционная работа HTML-страниц с картинками заключается в раскрывании картинок вместо этих страниц. Пришла пора прекращать это неудобство на отдельно взятом сайте. Ссылки — хорошо, но удобный просмотр — лучше.

Что такое удобный просмотр? Пример "лайтбоксов" разных показал, что лучше открыть псевдоокно просмотра внутри документа, не удаляя документ. Но при чтении статей этот подход не очень удобен. Мы не видим контекст документа. Получается, что видна или картинка, или документ. Лучше, если картинка не закрывает текст, как организовано, например, в скрипте Dollchan Extension Tools (подсказали здесь), где просмотр картинок занимает малую часть общей функциональности просмотра «имаджбордов» — примерно таких же текстово-картиночных потоков статей. Сделаем и мы контролы управления картинками, добавив кое-что своё.
Читать дальше →
Total votes 15: ↑12 and ↓3+9
Comments5

Github — без командной строки

Reading time2 min
Views68K

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

Многие опытные пользователи github-а знают, что отнюдь не для всего обязательно нужно использовать командную строку. Все это так.

Здесь я собрал несколько рецептов, используя которые, вы сможете без единой команды git, скопировать себе репозиторий, создать там вспомогательную ветку, в ней что-то отредактировать, добавить/удалить файлы/папки, сделать пулл-реквест в оригинальный репозиторий. А по истечению какого-то времени, когда в оригинальном репозитории накопятся изменения не отраженные в нашей копии — синхронизировать эти два репозитория — причем тоже без единой git-команды.

Читать дальше →
Total votes 67: ↑45 and ↓22+23
Comments33

Как найти свое призвание (новая статья от Оливера Эмбертона)

Reading time6 min
Views292K
image

Очень многие из нас верят в существование волшебной субстанции под названием «призвание». «Если бы я только мог найти свое призвание», — с горечью говорим мы. «Я был бы счастлив, если бы нашел свое призвание...»

Что сказать? Призвание — реальность, причем, невероятно могущественная. Но почти все, что люди знают о его поиске, в корне неверно. Именно об этом ведет речь в своей последней статье Оливер Эмбертон. Продолжаем размышлять над личной эффективностью!
Читать дальше →
Total votes 71: ↑60 and ↓11+49
Comments17

парсим сайты легко и непринуждённо вместе с phpQuery

Reading time3 min
Views111K
Привет хабр, думаю у некоторых из вас возникала потребность стянуть что нибудь нужное с какова нибудь сайта. Но писать тонны функций, чтобы вытащить фразу, это очень муторно, долго и не продуктивно.
Представляю вашему вниманию phpQuery. Это php вариант известного javascript фраемворка — jQuery.
Автор постарался на славу и портировал почти всё что нам нужно.
  • Selectors
  • Attributes
  • Traversing
  • Manipulation
  • Ajax
  • Events
  • Utilities
  • Plugin ports

Давайте посмотрим что она умеет.
Поехали
Total votes 42: ↑38 and ↓4+34
Comments35

Почему стоит пользоваться PDO для работы с базой данных

Reading time9 min
Views323K

Перевод статьи Why you Should be using PHP’s PDO for Database Access.

Множество PHP-разработчиков привыкли использовать для работы с базами данных расширения mysql и mysqli. Но с версии 5.1 в PHP существует более удобный способ — PHP Data Objects. Этот класс, сокращенно именуемый PDO, предоставляет методы для работы с объектами и prepared statements, которые заметно повысят вашу продуктивность!

Введение в PDO


«PDO – PHP Data Objects – это прослойка, которая предлагает универсальный способ работы с несколькими базами данных.»

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

Эта статья написана для людей, которые пользуются mysql и mysqli, чтобы помочь им в переходе на более мощный и гибкий PDO.
Читать дальше →
Total votes 127: ↑115 and ↓12+103
Comments165

Кручу-верчу, запутать хочу. Разбираемся в линейках HDD

Reading time11 min
Views236K
Привет, гиктаймс!

Сегодня у нас необычный материал, статья-ликбез: выбираем правильные HDD в зависимости от предполагаемых сценариев использования. Дело в том, что производители наплодили целую кучу разных линеек, и, если не следить за темой регулярно, через год-полтора можно легко забыть, какая серия к чему относится, зачем нужна и чем отличается.
Читать дальше →
Total votes 61: ↑58 and ↓3+55
Comments33
1

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity