Pull to refresh
2
0
Tlesk @Tlesk

User

Send message

Оптимизация графики для веба: самое важное

Reading time54 min
Views94K
Автор электронной книги — Эдди Османи, один из руководителей разработки Google Chrome

tl;dr


Cжатие изображений всегда должно быть автоматизировано


Оптимизацию графики обязательно надо автоматизировать. О ней легко забыть, рекомендации меняются, да и сам контент может легко проскользнуть мимо конвейера сборки. Для автоматизации при сборке используйте imagemin или libvips. Есть и много других.

Большинство CDN (например, Akamai) и сторонних решений вроде Cloudinary, imgix, Fastly Image Optimizer, Instart Logic SmartVision и ImageOptim API предлагают комплексные автоматизированные решения для оптимизации изображений.

На чтение статей и настройку конфигурации вы потратите время, которое дороже оплаты их услуг (у Cloudinary есть бесплатный тариф). Но если всё-таки не хотите отдавать работу на аутсорсинг по соображениям стоимости или из-за дополнительной latency, то выбирайте приведённые выше варианты с открытым исходным кодом. Проекты Imageflow или Thumbor предлагают альтернативу на собственном хостинге.
Читать дальше →
Total votes 61: ↑61 and ↓0+61
Comments31

Тайм-менеджмент, или Эффективное управление хаосом

Reading time11 min
Views72K
Каждый в той или иной степени ощущал нехватку времени, давление сроков, испытывал стресс от вынужденной спешки и зарекался: уж в следующий раз я точно буду тщательнее следить за временем, смогу заранее всё запланировать, не буду распыляться на много задач или, наоборот, превращусь в супермена и переделаю все дела сразу. Так какая же стратегия наиболее эффективна? Спешить или не спешить? Делать последовательно или параллельно?   

Источник
Читать дальше →
Total votes 73: ↑70 and ↓3+67
Comments61

Javascript-путешествие с шестью символами

Reading time5 min
Views38K


Javascript – это странный и прекрасный язык, который позволяет писать безумный, но все еще валидный код. Он пытается помочь нам, конвертируя одни штуки в другие в зависимости от того, как мы работаем с ними.


Если добавить строку к чему-то, то он допустит, что мы хотим получить текст, поэтому сконвертирует все в строку.


Если мы добавляем префикс "плюс" или "минус", то он допустит, что нам нужно числовое представление и сконвертирует строку в число, если сможет.


Если мы отрицаем что-то, то он сконвертирует это в булево значение.


Мы можем использовать эти особенности языка и создать немного магии со всего-лишь шестью символами: [,],(,),! и +. Если вы читаете это на десктопе, то можете открыть консоль в вашем браузере (developer tools, например) и запускать код. Просто копируйте любой код из примеров ниже в консоль, и он должен исполнится и вернуть true.


Давайте начнем с простого. Вот главные правила:


  1. Префикс ! конвертирует в Boolean
  2. Префикс + конвертирует в Number
  3. Добавление [] конвертирует String

Вот они в действии:


![] === false
+[] === 0
[]+[] === ""
Читать дальше →
Total votes 123: ↑112 and ↓11+101
Comments32

Каково оно учить JavaScript в 2016

Reading time10 min
Views348K


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

— Это теперь называется Front-End инженер, но да, я — именно он. Я работаю с вебом в 2016. Визуализации, музыкальные плееры, летающие дроны, которые играют в футбол, все что угодно. Я только что вернулся из JsConf и ReactConf, так что я знаю новейшие технологии для создания веб-приложений.

— Круто. Мне нужно создать страницу, которая отображает последние действия со стороны пользователей, так что мне просто нужно получить данные от REST и отобразить их в какой-то фильтруемой таблице, ну и обновлять её, если что-то изменится на сервере. Я думал, может быть, использовать JQuery для извлечения и отображения данных?

— О, Мой Бог! Нет! Никто больше не использует JQuery. Ты должен попробовать React: это — 2016!
Читать дальше →
Total votes 260: ↑238 and ↓22+216
Comments298

Дешевые авиабилеты… Или сеть мошеннических сайтов, ворующих деньги с карт. Мое расследование

Reading time20 min
Views186K
В этой публикации речь пойдет о целой сети мошеннических сайтов, которые на протяжении долгого времени работают с единственной целью — похитить данные банковских карт и увести все доступные денежные средства с этих карт. В этой схеме используются на разных этапах сервисы известных компаний и банков. Таких как Яндекс (Поиск, Директ, YandexMoney, Карты), Промсвязьбанк, Банк Тинькофф и, вероятно, других.



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

Итак, что же случилось?

Мой знакомый захотел купить авиабилеты и решил, что самый простой для этого способ — задать вопрос Яндексу. На простой запрос типа «самые дешевые билеты в Анапу» Яндекс одну из первых ссылок выдал на некий сайт, который служит для поиска и покупки дешевых билетов без комиссии. Ссылка эта, вероятно, была в верхнем рекламном блоке. Перейдя по ссылке, мой знакомый нашел себе подходящие билеты, оформил заказ, и попал на страницу оплаты с помощью банковской карты…
Читать дальше →
Total votes 210: ↑210 and ↓0+210
Comments392

Распутывая историю Ады Лавлейс (первого программиста в истории)

Reading time43 min
Views81K

Перевод поста Стивена Вольфрама "Untangling the Tale of Ada Lovelace".
Выражаю огромную благодарность Кириллу Гузенко KirillGuzenko за помощь в переводе и подготовке публикации.

Содержание


Ранние годы Ады
Чарльз Бэббидж
Уровень развития этой области
Возвращаемся к Аде
Возвращаясь к Бэббиджу
Статья Ады
После статьи
После смерти Ады
Что стало с Бэббиджем?
Повторное открытие
О чем на самом деле писала Ада
Вычисление чисел Бернулли
Бэббидж vs. Ада?
Секретный ингредиент Бэббиджа
В большем масштабе
А что, если...
Какими они были?
Заключение
Ада Лавлейс родилась 200 лет назад. Для некоторых она является знаменательной фигурой в истории вычислительной техники; для других — изрядно переоцененной личностью. В течение долгого времени я пытался разобраться, как всё было на самом деле. И вот, к её двухсотлетию, я решил разобраться в том, что называл для себя "тайной Ады".

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

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

Это сложная история, и чтобы в ней разобраться, нужно будет о многом рассказать.
Подробнее об Аде Лавлейс...
Total votes 60: ↑58 and ↓2+56
Comments28

Пропорции в искусстве. Есть ли что-то лучше золотого сечения? Исследование более 1 000 000 старых и современных картин

Reading time39 min
Views71K


Перевод поста Майкла Тротта (Michael Trott) "Aspect Ratios in Art: What Is Better Than Being Golden? Being Plastic, Rooted, or Just Rational? Investigating Aspect Ratios of Old vs. Modern Paintings".
Код, приведенный в статье, можно скачать здесь.
Выражаю огромную благодарность Кириллу Гузенко KirillGuzenko за помощь в переводе и подготовке публикации

Содержание


Предисловие: золотое сечение — красивая математическая концепция
Работа Фехнера 1876 года об эстетичности прямоугольников и соотношениях сторон в картинах
Легкий старт: анализ «Artwork» — области базы знаний Wolfram Knowledgebase
Первая часть: особенности вероятностного распределения соотношений сторон
Соотношения сторон для разных веков, жанров и художников
Анализируя пять старых немецких музейных каталогов
Коллекция Кресса: четыре больших PDF файла
У нас представлены коллекции следующих галерей: Метрополитен (Metropolitan), институт искусств Чикаго, Эрмитаж, Национальная Галерея (National Gallery), Рейксмюзеум (Rijks) и Тейт Британия
Исключение в соотношениях сторон: Национальная портретная галерея
Веб-галерея изящных искусств: удобная база данных, готовая к использованию
Примечание II: важность точности в измерениях
WikiArt: еще один крупный веб-ресурс
Коллекция Французского государственного музея
Картины в итальянских церквях: высота есть всё
Смитсоновская коллекция
Большая коллекция картин в Великобритании
Нынешний рынок изящных искусств: рациональней чем когда-либо
Проданные картины: большинство написаны недавно, а у распределения длинный хвост
Восток: все показатели отличаются
Пропорции пакетов, автомобилей, этикеток, логотипов, эмблем, бумаги, банкнот, почтовых марок и фильмов
Продукты из супермаркета
Винные этикетки
Этикетки немецких сортов пива
Логотипы продуктов питания
Банкноты
Размеры автомобилей
Бумажные листы
Марки
Эмблемы команд NCAA (Национальной ассоциации студенческого спорта)
Эмблемы немецких футбольных клубов
Форматы фильмов
Заключение: так какое соотношение самое «лучшее»?
Картины великих мастеров — едва ли не самое прекрасное из человеческого наследия. Ими дорожили и восхищались, бережно хранили и продавали за сотни миллионов долларов, и, возможно, не по случайности они являются главной целью похитителей предметов искусства. Их композиции, цвета, детали, темы могут держать нас в восхищении и внимании часами. Но что можно сказать об отношении их внешних размеров — высоты к ширине?

В 1876 году немецкий ученый Густав Теодор Фехнер изучал человеческое восприятие прямоугольных форм, а после заключил, что прямоугольники с золотой пропорцией (то же, что и золотое сечение) наиболее приятны для человеческого глаза. Чтобы проверить свои экспериментальные наблюдения, Фехнер также проанализировал соотношения более десяти тысяч картин.
Читать дальше...
Total votes 89: ↑83 and ↓6+77
Comments29

Математические обозначения: Прошлое и будущее

Reading time42 min
Views55K


Перевод поста Стивена Вольфрама (Stephen Wolfram) "Mathematical Notation: Past and Future (2000)".
Выражаю огромную благодарность Кириллу Гузенко KirillGuzenko за помощь в переводе и подготовке публикации

Содержание


Резюме
Введение
История
Компьютеры
Будущее
Примечания
Эмпирические законы для математических обозначений
Печатные обозначения против экранных
Письменные обозначения
Шрифты и символы
Поиск математических формул
Невизуальные обозначения
Доказательства
Отбор символов
Частотное распределение символов
Части речи в математической нотации
Стенограмма речи, представленной на секции «MathML и математика в сети» первой Международной Конференции MathML в 2000-м году.

Резюме


Большинство математических обозначений существуют уже более пятисот лет. Я рассмотрю, как они разрабатывались, что было в античные и средневековые времена, какие обозначения вводили Лейбниц, Эйлер, Пеано и другие, как они получили распространение в 19 и 20 веках. Будет рассмотрен вопрос о схожести математических обозначений с тем, что объединяет обычные человеческие языки. Я расскажу об основных принципах, которые были обнаружены для обычных человеческих языков, какие из них применяются в математических обозначениях и какие нет.

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

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

Традиционная математическая нотация представляет математические объекты, а не математические процессы. Я расскажу о попытках разработать нотацию для алгоритмов, об опыте реализации этого в APL, Mathematica, в программах для автоматических доказательств и других системах.

Обычный язык состоит их строк текста; математическая нотация часто также содержит двумерные структуры. Будет обсуждён вопрос о применении в математической нотации более общих структур и как они соотносятся с пределом познавательных возможностей людей.

Сфера приложения конкретного естественного языка обычно ограничивает сферу мышления тех, кто его использует. Я рассмотрю то, как традиционная математическая нотация ограничивает возможности математики, а также то, на что могут быть похожи обобщения математики.
Читать дальше о математической нотации, её прошлом и будущем...
Total votes 52: ↑51 and ↓1+50
Comments9

Mini-Desktop своими руками. 3.0

Reading time4 min
Views52K
image

Прошло чуть больше года с момента публикации моей второй статьи о дизайне корпуса персонального компьютера в форм-факторе UCFF PC. За это время мне удалось запустить первую партию в производство и начать онлайн продажи не только корпусов, но и конфигураций на его основе. Особенно радостно, что проект по большей части состоялся благодаря поддержке и интересу со стороны читателей Хабрахабр сообщества.
Читать дальше →
Total votes 52: ↑51 and ↓1+50
Comments145

Яндекс открывает ClickHouse

Reading time14 min
Views167K
Сегодня внутренняя разработка компании Яндекс — аналитическая СУБД ClickHouse, стала доступна каждому. Исходники опубликованы на GitHub под лицензией Apache 2.0.



ClickHouse позволяет выполнять аналитические запросы в интерактивном режиме по данным, обновляемым в реальном времени. Система способна масштабироваться до десятков триллионов записей и петабайт хранимых данных. Использование ClickHouse открывает возможности, которые раньше было даже трудно представить: вы можете сохранять весь поток данных без предварительной агрегации и быстро получать отчёты в любых разрезах. ClickHouse разработан в Яндексе для задач Яндекс.Метрики — второй по величине системы веб-аналитики в мире.

В этой статье мы расскажем, как и для чего ClickHouse появился в Яндексе и что он умеет; сравним его с другими системами и покажем, как его поднять у себя с минимальными усилиями.
Читать дальше →
Total votes 176: ↑172 and ↓4+168
Comments204

Как программист машину покупал

Reading time9 min
Views121K
Недавно я озадачился поиском б.у. автомобиля, взамен только что проданного, и, как это обычно бывает, на эту роль претендовали несколько конкурентов.

Как известно, для покупки авто на территории РФ существует несколько крупных авторитетных сайтов (auto.ru, drom.ru, avito.ru), поиску на которых я и отдал предпочтение. Моим требованиям отвечали сотни, а для некоторых моделей и тысячи, автомобилей, с перечисленных выше сайтов. Помимо того, что искать на нескольких ресурсах неудобно, так еще, прежде чем ехать смотреть авто “вживую”, я хотел бы отобрать выгодные (цена которых относительно рынка занижена) предложения по априорной информации которую предоставляет каждый из ресурсов. Я, конечно, очень хотел решить несколько переопределенных систем алгебраических уравнений (возможно и нелинейных) высокой размерности вручную, но пересилил себя, и решил этот процесс автоматизировать.
image
Читать дальше →
Total votes 73: ↑71 and ↓2+69
Comments208

40 ключевых концепций информационных технологий доступно и понятно

Reading time16 min
Views159K
Представляю вашему вниманию перевод очень ёмкой, и в то же время достаточно краткой (для такого масштаба проблемы) статьи Карла Чео. Я решил, что очень хочу сделать её перевод практически сразу, как только начал читать, и очень рад, что в итоге сделал это.
Для того, чтобы сделать обучение более веселым и интересным, представляю вам перечень важных теорий и концепций информатики, объяснённых с помощью аналогий с минимальным количеством технических деталей. Это будет похоже на очень быстрый курс информатики для всех с целью просто дать вам общее представление об основных концепциях.

Важные замечания:
  • Пункты с неуказанным источником написаны мной самостоятельно. Поправьте меня, если вы заметите какие-то неточности. Предложите лучшую аналогию, если это возможно.
  • Заголовки ссылаются на соответствующие им статьи в Wikipedia. Пожалуйста, читайте эти статьи для более серьезных и детальных объяснений.
  • Аналогии — отличный способ объяснить материал, но они не идеальны. Если вы хотите по-настоящему понять перечисленные концепции, вам следует начать с фундаментальных азов и рассуждать, исходя из них.

Также зацените эту инфографику (вариант на русском), если вы просто начинающий программист.
Читать дальше →
Total votes 104: ↑96 and ↓8+88
Comments37

300 потрясающих бесплатных сервисов

Reading time11 min
Views1.6M


Автор оригинальной статьи Ali Mese добавил ещё 100 новых бесплатных сервисов. Все 400 потрясающих сервисов доступны здесь. И еще подборку +500 инструментов от 10 марта 2017 г. смотрите здесь.



A. Бесплатные Веб-Сайты + Логотипы + Хостинг + Выставление Счета

  • HTML5 UP: Адаптивные шаблоны HTML5 и CSS3.
  • Bootswatch: Бесплатные темы для Bootstrap.
  • Templated: Коллекция 845 бесплатных шаблонов CSS и HTML5.
  • Wordpress.org | Wordpress.com: Бесплатное создание веб-сайта.
  • Strikingly.com Domain: Конструктор веб-сайтов.
  • Logaster: Онлайн генератор логотипов и элементов фирменного стиля (new).
  • Withoomph: Мгновенное создание логотипов (англ.).
  • Hipster Logo Generator: Генератор хипстерских логотипов.
  • Squarespace Free Logo: Можно скачать бесплатную версию в маленьком разрешении.
  • Invoice to me: Бесплатный генератор счета.
  • Free Invoice Generator: Альтернативный бесплатный генератор счета.
  • Slimvoice: Невероятно простой счет.

Читать дальше →
Total votes 341: ↑325 and ↓16+309
Comments107

Система для «Своей игры»

Reading time10 min
Views113K


Привет, Хабр! Так получилось, что одним из моих увлечений являются интеллектуальные игры. Это «Что? Где? Когда?», «Своя игра», «Эрудит-квартет», «Брейн-ринг» и прочие. И вот, однажды мне захотелось сделать своими руками систему для этой игры. Если вам интересен процесс создания с нуля такого устройства — приглашаю под кат.
Читать дальше →
Total votes 68: ↑64 and ↓4+60
Comments79

GTD на кухне: чем накормить голодного программиста

Reading time9 min
Views56K
imageИтак, как и обещал в первой части, продолжаем упрощать бытовую жизнь хабражителя. Сегодня 8 марта (кстати, девушки, поздравляю!) и части мужчин хочется порадовать своих женщин и освободить их от «рабского труда» на кухне, а другой части – приготовить для себя не традиционные пельмени\вареники\сосиски, а что-то посущественней.
Вот несколько проверенных рецептов, которые пригодятся и первым, и вторым.

Осторожно, много картинок. Голодным не входить!
Читать дальше →
Total votes 220: ↑168 and ↓52+116
Comments214

Бозон Хиггса и Наделение Массой

Reading time4 min
Views6.6K
Корни топика здесь.

Сегодня на конференции в ЦЕРН официально объявили, что каналы распада ZZ и фотон-фотон дают общую достоверностью в 5 сигма. Это означает, что преодолен порог между успешной догадкой и научным открытием. Они определенно открыли частицу. В то же время, эксперимент ATLAS более сдержан в своем настроении.

И это отличный момент, чтобы разобраться в том, что мы знаем об этой частице. Лично меня, как студента-физика, интересует разрушение культа Наделения Массой. На этом и сконцентрируемся. Я попробую, насколько это вообще возможно, просто и наглядно объяснить фразу, которую все слышали.



Читать дальше →
Total votes 159: ↑146 and ↓13+133
Comments257

Строение двигателей

Reading time7 min
Views128K
Недавно наткнулся на прекрасный сайт (англ.), который по полочкам размусоливает и показывает строение большинства типов двигателей. Попытаюсь вольно и сжато пересказать самое на мой взгляд главное, совсем по пальцам и как для самых маленьких. Конечно можно было бы позаимствовать точные определения из авторитетных источников, но такой любительский перевод обещает быть единственным в своем роде :)

А можете ли Вы сходу объяснить Вашей девушке, в чем отличие бензинового двигателя от дизельного? Четырёхтактного и двухтактного движков? Нет? Тогда приглашаю под кат.

Читать дальше →
Total votes 249: ↑220 and ↓29+191
Comments142

Связка AdSense и Google DoubleClick

Reading time2 min
Views2.3K

Когда я создавал один из своих веб-проектов — основная модель монетизации для него предполагалась контекстная реклама, а конкретнее – Google Adsense. Но было одно Но. Примерно 25% трафика проекта припадает на закрытые от индексации страницы. А это значит, что контекст там крутиться не будет. Поэтому для таких страниц я решил воспользоваться одним из баннеро-крутильных движков. Т.е. CMS-сайта сама генерирует для разных страниц: либо код AdSense, либо код баннерокрутилки, в которой будут рекламироваться внутренние фичи проекта или какая-нибудь своя реклама.
Почитав про некоторые движки, я остановился на Google DoubleClick. И вот почему. Она позволяла на «пустых» баннеропоказах (т.е. не выкупленных рекламодателем) откручивать объявления AdSense. Прочитав об этом я подумал, что отлично было бы вообще все баннероместа на проекте сделать именно через DoubleClick – при случае можно было бы продать весь баннерный трафик рекламодателю или сейлз-хаусу (ну мало ли, вдруг такие найдутся). Так и было сделано. И пока AdSense был в старом дизайне – все было отлично: для каждого созданного в DoubleClick баннероместа в AdSense появился клиентский канал, по которому можно было отслеживать статистику контекстных объявлений. Но с переходом AdSense на новый дизайн такая возможность пропала. В остальном же работа с DoubleClick меня полностью устраивает, поэтому под катом я расскажу, как все-таки решить возникшую проблему.
Читать дальше →
Total votes 24: ↑19 and ↓5+14
Comments7

Я хочу работать в Google! Телефонное интервью (часть 1)

Reading time4 min
Views31K
Привет Хабр! Давно не писал. Да это и понятно. Защита диссертации, получение PhD, а сейчас ещё и активный поиск работы — всё это занимает очень много драгоценного времени. Но разговор сегодня пойдёт не о том. Хотелось бы поделиться с Вами, уважаемые хабралюди, ресурсами и описанием процесса подготовки к телефонному техническому интервью с Гуглом, первый технический этап которого я уже прошёл, и теперь готовлюсь ко второму, который будет в пятницу.
Читать дальше →
Total votes 207: ↑182 and ↓25+157
Comments99

Карманный роутер Sapido RB-1632

Reading time2 min
Views30K


Не могу не поделиться восторгом от недавно купленного устройства.

Роутер, несмотря на свои размеры, имеет множество функций. Помимо стандартных Ethernet -> Wi-Fi, может выступать wifi-клиентом, имеет USB-хост для подключения модема и смартфонов, может одновременно создавать несколько Wi-Fi сетей с разными настройками и прочее. Питается при помощи USB либо от адаптера.
Читать дальше →
Total votes 91: ↑82 and ↓9+73
Comments45
1
23 ...

Information

Rating
Does not participate
Registered
Activity