Как стать автором
Обновить
0
0

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

Отправить сообщение

Математика в JavaScript

Время на прочтение20 мин
Количество просмотров193K

Введение


Наличие чисел и числовых данных позволяет вам каким-либо образом работать с языком. Но помимо работы с арифметическими операторами в JavaScript, математические конструкции могут быть сложной задачей для новичков. По этой причине, нужно концентрироваться не на синтаксисе, а на общих математических функциях, этот список начинается с таких вещей как сортировка, округление и генерация случайных значений, этого достаточно, прежде чем углубляться в детали. Чтобы работать с математикой в JavaScript, вам достаточно иметь понятия о таких вещах как функция, операнд и оператор.

От переводчиков


Всем привет, с вами Максим Иванов и Дмитрий Сергиенков, и сегодня мы решили, что мы не будем говорить о модных и полезных штуках типа ReactJS, Angular, TypeScript и других. Сегодня мы уделим внимание математике в JavaScript. Если вам нравится математика, вы можете заниматься ей всё свободное время, но если вашей целью являются не научные изыскания, а работа программистом, математика вряд ли станет лучшим объектом для изучения.
Читать дальше →
Всего голосов 61: ↑55 и ↓6+49
Комментарии20

Невидимые друзья вашего github-репозитория

Время на прочтение13 мин
Количество просмотров18K
image
Github это незаменимый инструмент, прочно вошедший в жизнь практически каждого разработчика.

Хотя многие из нас используют его постоянно, не все знают, что существует большое количество сторонних (и бесплатных) сервисов и инструментов, которые тесно интегрированы с github и расширяют его функциональность.

В данной статье мы уделим внимание, в основном, инструментам, работающим в инфраструктуре npm. Полный список сервисов, интегрирующихся с github, можно посмотреть на странице github integrations directory.

Сегодня в выпуске:




Читать дальше →
Всего голосов 43: ↑41 и ↓2+39
Комментарии16

Асинхронный JavaScript против отложенного

Время на прочтение3 мин
Количество просмотров70K

В моей статье «Понимание критического пути рендеринга» (перевод статьи) я писала о том, какой эффект оказывают JavaScript-файлы на Критический Путь Рендеринга(CRP).


JavaScript является блокирующим ресурсом для парсера. Это означает, что JavaScript блокирует разбор самого HTML-документа. Когда парсер доходит до тега <script> (не важно внутренний он или внешний), он останавливается, забирает файл (если он внешний) и запускает его.

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


К счастью, элемент <script> имеет два атрибута async и defer, которые дают нам возможность контролировать то, как внешние файлы загружаются и выполняются.


Читать дальше →
Всего голосов 32: ↑29 и ↓3+26
Комментарии42

Три ключевых принципа ПО, которые вы должны понимать

Время на прочтение13 мин
Количество просмотров230K

Разрабатывая приложения, мы постоянно сталкиваемся с новыми подходами, языками и концептами. И постоянно мы мечемся в сомнениях «смогу ли я быть на волне, оставаться конкурентоспособным, учитывая все изменения и тренды?». Давайте задумаемся на мгновение, вспомнив фразу из моего любимого фильма «Касабланка» — в любви законов новых нет — так создан свет.

Все, что касается любви, применимо и к коду. Новых законов в коде нет. Если вы четко понимаете основные идеи разработки, вы способны максимально быстро адаптироваться к новым подходам. В этой статье я расскажу вам о трех основных принципах, которые, наряду с другими, позволяют регулировать сложность разработки. Я поделюсь своим видением вопроса, которое, надеюсь, поможет вам в повседневной работе.
Читать дальше →
Всего голосов 142: ↑128 и ↓14+114
Комментарии56

Выразительный JavaScript: Структура программ

Время на прочтение15 мин
Количество просмотров141K

Содержание




Сердце моё сияет ярко-красным светом под моей тонкой, прозрачной кожей, и им приходится вколоть мне десять кубиков JavaScript, чтобы вернуть меня к жизни (я хорошо реагирую на токсины в крови). От этой фигни у вас враз жабры побледнеют!

_why, Why's (Poignant) Guide to Ruby


В этой главе мы начнём заниматься тем, что уже можно назвать программированием. Мы расширим использование языка JavaScript за пределы существительных и фрагментов предложений к более-менее осмысленной прозе.
Читать дальше →
Всего голосов 32: ↑30 и ↓2+28
Комментарии20

Оптимизация фронтенда под браузеры

Время на прочтение19 мин
Количество просмотров53K

enter image description here


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


  • С точки зрения User Experience (UX) фронтенд должен обеспечивать быструю загрузку и работу веб-страниц.
  • А с точки зрения Developer Experience (DX) нам хочется, чтобы и сам фронтенд тоже работал быстро, был прост в использовании и вообще являлся примером для подражания.

Всё это делает пользователей и разработчиков счастливее, а заодно существенно улучшает ранжирование сайтов поисковиками. Например, Google уделяет особое внимание оптимизированности фронтенда. Если вы достаточно долго бились над тем, чтобы ваш сайт заработал побольше баллов в Google Pagespeed Insights, то, надеемся, эта статья поможет вам лучше понять, для чего всё это нужно и каково разнообразие стратегий оптимизации фронтенда.

Читать дальше →
Всего голосов 48: ↑46 и ↓2+44
Комментарии6

Сравнение производительности процессоров Intel разных поколений

Время на прочтение6 мин
Количество просмотров63K
Почти каждый год на рынок выходит новое поколение центральных процессоров Intel Xeon E5. В каждом поколении попеременно меняются сокет и технологический процесс. Ядер становится всё больше и больше, а тепловыделение понемногу снижается. Но возникает естественный вопрос: «Что даёт новая архитектура конечному пользователю?»

Для этого я решил протестировать производительность аналогичных процессоров разных поколений. Сравнивать решил модели массового сегмента: 8-ядерные процессоры 2660, 2670, 2640V2, 2650V2, 2630V3 и 2620V4. Тестирование с подобным разбросом поколений является не совсем справедливым, т.к. между V2 и V3 стоит разный чипсет, память нового поколения с большей частотой, а самое главное — нет прямых ровесников по частоте среди моделей всех 4-х поколений. Но, в любом случае, это исследование поможет понять в какой степени выросла производительность новых процессоров в реальных приложениях и синтетических тестах.
Читать дальше →
Всего голосов 48: ↑44 и ↓4+40
Комментарии19

Извечный вопрос: CMS или свой движок

Время на прочтение5 мин
Количество просмотров58K
Именно с этого вопроса я начал сегодняшний рабочий день.
Уже в который раз встал перед этой дилеммой, которую, впрочем, уже не однократно решал в пользу своих кодов, но сомнения грызть не прекращают.
Вот и сейчас — в день когда пора начинать верстать новый интернет-магазин, эта дилемма стоит передо мной.
А предыстория следующая:
Читать дальше →
Всего голосов 73: ↑52 и ↓21+31
Комментарии177

Навигация по сайту: задачи и инструменты

Время на прочтение7 мин
Количество просмотров30K

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

Читать дальше →
Всего голосов 63: ↑60 и ↓3+57
Комментарии31

10 грехов в системах навигации сайтов / приложений

Время на прочтение1 мин
Количество просмотров38K
Новый формат статьи: без текста, только схемы. Надеюсь, нарисовал понятно.


Читать дальше →
Всего голосов 106: ↑78 и ↓28+50
Комментарии416

Синдром самозванца: сражение с усталостью от фронтенда

Время на прочтение8 мин
Количество просмотров32K
Недавно я разговаривал с другом из бэкенд-разработки о том, сколько часов провожу за программированием и изучением кода в свободное время. Он показал отрывок из книги Дяди Боба «Чистый код». Там разработчики, которые репетируют код перед запуском в работе, сравниваются с музыкантами, которые много часов готовят инструменты к концерту.

Мне понравилась аналогия, но я не уверен, что готов полностью подписаться на такое; это тот самый тип мышления, который в первую очередь приводит к выгоранию. Хорошо, если вы хотите углубить своё мастерство и расширить навыки, но если делать это непрерывно в течение всего дня — долго не протянешь.

Усталость от фронтенда очень реальна. Я видел много постов об усталости от JavaScript, но мне кажется, что проблема распространяется за пределы этого конкретного языка.
Читать дальше →
Всего голосов 40: ↑37 и ↓3+34
Комментарии22

Умер ли MVC для фронтенда?

Время на прочтение5 мин
Количество просмотров45K

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

В то время как все больше и больше фронтенд-разработчиков перенимают подходы с однонаправленной архитектурой, возникает вопрос — есть ли будущее у классического MVC? Чтобы понять, как мы дошли до такого вопроса, давайте немного проанализируем эволюцию архитектуры фронтенда.
Читать дальше →
Всего голосов 57: ↑46 и ↓11+35
Комментарии149

Как я сделал самый быстрый ресайз изображений. Часть 0

Время на прочтение7 мин
Количество просмотров35K

Здравствуйте, меня зовут Саша, я написал самый быстрый ресайз изображений для современных х86 процессоров. Я так утверждаю, поскольку все остальные библиотеки, которые я сумел найти и протестировать, оказались медленнее. Я занялся этой задачей, когда работал над оптимизацией ресайза картинок на лету в Uploadcare. Мы решили открыть код и в результате появился проект Pillow-SIMD. Любой желающий с легкостью может использовать его в приложении на языке Python.


Любой код выполняется на конкретном железе и хорошей оптимизации можно добиться, только понимая его архитектуру. Всего я планирую выпустить 4 или 5 статей, в которых расскажу как применять знание архитектуры железа для оптимизации реальной задачи. Своим примером я хочу побудить вас оптимизировать другие прикладные задачи. Первые две статьи выйдут в течение недели, остальные — по мере готовности.

Читать дальше →
Всего голосов 80: ↑79 и ↓1+78
Комментарии67

Упрощаем работу с русскими текстами в Sublime Text 3 + Vintage

Время на прочтение3 мин
Количество просмотров6.1K

Если вы недавно начали: 1) пользоваться Sublime Text и/или 2) пользоваться плагином Vintage и/или 3) редактировать много текста на русском (или наоборот английском) языке с использованием ST3+Vintage, то скорее всего уже почувствовали какая боль связана с командами назначенными на символы пунктуации — "$", ";", ".", ",", """ и т.п. В небольшой заметке под катом я хочу предложить вам пару костылей, которые помогают эту боль в значительной степени облегчить.

Читать дальше →
Всего голосов 10: ↑10 и ↓0+10
Комментарии0

Где живут ваши объявления?

Время на прочтение8 мин
Количество просмотров42K
image

Мы открываем техно-блог компании Avito. Многие знают бренд, но не так много тех, кто знает, как сервис устроен с технической стороны. В своём блоге мы приоткроем завесу неизвестного и расскажем о технической кухне сервиса.

Начнем с небольшой истории о том, что проект представляет из себя сегодня, чем занимается команда инженеров, и что мы планируем делать в ближайшем будущем. Еще мы собрали в этом посте множество ссылок на уже опубликованные материалы, доклады и презентации нашей команды, которыми давно хотели поделиться. Хотите знать, где живут ваши объявления? Добро пожаловать под кат!
Читать дальше →
Всего голосов 116: ↑109 и ↓7+102
Комментарии115

Заметка про лицензирование Windows Server или как не обанкротить компанию при лицензионном аудите

Время на прочтение3 мин
Количество просмотров104K
Лицензионная политика Microsoft — вещь достаточно сложная и запутанная. Тем не менее, многие уже изучили все основные правила и знают, как лицензировать тот или иной продукт. Но проблема в том, что не учтя всего один небольшой нюанс, можно ошибиться на несколько порядков. И такая ошибка может попросту привести к банкротству компании при процедуре лицензионного аудита от Microsoft.

Взять, например, Windows Server, который используется практически в любой компании. Почти все системные администраторы знают, чем отличается лицензирование Windows Server Standard от Windows Server Datacenter. Опустим отличия в функционале, которое снова появилось в версии 2016. Основное отличие в том, что 1 лицензия Windows Server Standard может быть установлена на 2 виртуальных машинах в пределах 1 хоста, а Datacenter на неограниченном числе виртуальных машин в пределах одного хоста. Второе важное требование — это лицензирование всех физических ядер (ранее процессоров) сервера. Это, казалось бы, все знают. Но дьявол, как известно, кроется в деталях.
Читать дальше →
Всего голосов 37: ↑32 и ↓5+27
Комментарии98

Крэш-курс по UI-дизайну

Время на прочтение7 мин
Количество просмотров43K


Мы всегда в поисках хороших статей о дизайне, чтобы потом использовать их в работе над сайтом «Я люблю ИП». Сегодня мы перевели ещё одну статью, которая рассказывает, чем отличается UI-дизайн от UX-дизайна и на каких основных принципах строится дизайн интерфейсов.


UI vs. UX


Если вы хоть немного интересовались дизайном приложений, то наверняка слышали термины «UI» и «UX». Но чем же они отличаются?


В самой простой форме, UX-дизайн — это то, что делает интерфейс полезным, а UI-дизайн — делает его красивым. Дизайн интерфейсов — это смесь визуальной иерархии и элементов интерфейса. Чтобы разобраться, чем отличается прекрасный дизайн от просто хорошего, необходимо понять, что дизайн интерфейсов — это всего лишь один из слоев целого дизайн-процесса. Возможно, именно поэтому эти два термина так часто путают. В этой статье я постараюсь рассказать, в чём же заключается разница между ними с точки зрения дизайн-процесса.


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


Читать дальше →
Всего голосов 22: ↑21 и ↓1+20
Комментарии10

Секреты быстрого кодинга в WebStorm

Время на прочтение4 мин
Количество просмотров139K
Сегодня — немного практических советов по работе с WebStorm.

Вначале пишем совсем простой HTML, после color: нажимаем <Ctrl-пробел> и получаем список цветов.

image

КО подсказывает: во всех IDE от JetBrains <Ctrl-пробел> — это контекстная подсказка.

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



А теперь представим себе проект посложнее, небольшое приложение под node.js.
Читать дальше →
Всего голосов 95: ↑67 и ↓28+39
Комментарии63

camelCase против under_score

Время на прочтение3 мин
Количество просмотров77K
В настоящее время существует много стандартов наименования переменных, но два из них являются наиболее популярными среди программистов: это camel case («Верблюжья» нотация) и underscore (именование переменных с использованием символа нижнего подчеркивания в качестве разделителя). Кто-то может возразить, что существуют и другие популярные стандарты, но в рамках данной статьи мы сравним эти два, и узнаем у программистов — какого стандарта придерживаются они. Конечно, некоторые программисты связаны рамками стандартов кодирования языка или фреймворка, который они используют, но мы постараемся сделать независимое сравнение.
Читать дальше →
Всего голосов 70: ↑36 и ↓34+2
Комментарии165

Админка за 10 минут

Время на прочтение4 мин
Количество просмотров143K
Здравствуйте, уважаемое Хабрасообщество!

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

Долгое время я использовал Twitter Bootstrap, но он не мог удовлетворить все потребности. Приходилось верстать дополнительные кнопочки и писать скрипты. Но вот однажды, я познакомился с замечательным UI-фреймворком KendoUI от Telerik. Что из этого получилось под катом.

Читать дальше →
Всего голосов 47: ↑34 и ↓13+21
Комментарии37

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность