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

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

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

Реалити-шоу с программистом. Найми кодера и смотри, как он работает

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

В Сети набирают обороты видеотрансляции написания кода


Удивительно, но многие убивают время не за видеоиграми, а за просмотром, как в них играют другие. При этом у зрителей часто есть и техническая возможность самим запустить игру, а иногда и сама игра пылится где-то на полке или в цифровой библиотеке. Но вместо этого смотрящие сидят за компьютером и наблюдают, как играет кто-то другой и иногда разбавляет происходящее собственными комментариями. Речь даже не идёт о киберспорте. Почему-то прямо сейчас тысячи людей наблюдают за самым обычным геймплеем.
Читать дальше →
Всего голосов 24: ↑20 и ↓4+16
Комментарии35

Заказчики из-за границы: как сделать всё легально

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


Из-за падающего курса рубля многие фрилансеры уже давно работают на зарубежных клиентов. Среди них не все желают сотрудничать с обычными физлицами: крупные заказчики требуют оформлять контракт и оплачивать работы в иностранной валюте. Чтобы охватить новый рынок, придётся зарегистрироваться как предприниматель и соблюдать серьезное валютное законодательство. Обо всех этих правилах мы постарались рассказать понятными словами.
Читать дальше →
Всего голосов 16: ↑15 и ↓1+14
Комментарии15

Проверьте Ваш сайт на попадание в Единый реестр запрещённых сайтов России

Время на прочтение2 мин
Количество просмотров37K
Сервис мониторинга работы сайтов Host-tracker обзавелся новой опцией – проверкой на попадание в Единый реестр запрещенных сайтов.

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

Продвинутые CSS фильтры

Время на прочтение3 мин
Количество просмотров91K
Перевод статьи advanced css filters, авторства Vincent De Oliveira, найденная мною в последнем дайджесте.

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


Вернемся в 2011 год, браузеры начали вводить CSS фильтры из спецификаций. В это время поддерживались в основном SVG фильтры, а Firefox был единственным браузером, который мог применить их к HTML контенту (в основном, ничего не изменилось).

CSS фильтры такие как blur(), contrast() или grayscale() — отличное дополнение к CSS, несмотря на то, что SVG может позволить сделать восхитительные вещи. Больше узнать о них вы можете на множестве ресурсов.

Сегодня я хочу пойти чуть дальше, показав новые возможности CSS.
Читать дальше →
Всего голосов 25: ↑23 и ↓2+21
Комментарии16

Семь удивительных «возможностей» Javascript

Время на прочтение5 мин
Количество просмотров66K
За последние несколько месяцев я сделал несколько доработок для JSHint, в основном с целью изучить ES6 (я особенно горжусь тем, как переделано обнаружение областей видимости для переменных). Во время этого процесса я наткнулся на несколько вещей, которые меня удивили — в основном, в ES6, однако есть и кое-что про ES3, что я до этого никогда не использовал.

Break из любого блока


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

outer: for(var i = 0; i < 4; i++) {
    while(true) {
        continue outer;
    }
}
Читать дальше →
Всего голосов 78: ↑65 и ↓13+52
Комментарии71

Выравниваем блок по центру страницы

Время на прочтение5 мин
Количество просмотров981K
Очень часто стоит задача выровнять блок по центру страницы / экрана, да ещё и так, чтобы без ява-скрипта, без задания жёстких размеров или отрицательных отступов, ещё чтобы и скроллбары работали у родителя, если блок превышает его размеры. В сети ходят достаточно много однообразных примеров как выровнять блок по центру экрана. Как правило большинство из них основаны на одних принципах.
Читать далее
Всего голосов 69: ↑51 и ↓18+33
Комментарии49

Деревянный кодовый замок

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


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

Кстати, никто не мешает изготовить всё из железных деталей по тому же принципу — получится настоящий кодовый замок, который можно использовать в деле!
Читать дальше →
Всего голосов 55: ↑39 и ↓16+23
Комментарии15

Favicons, Touch Icons, Tile Icons и т. д. Что выбрать?

Время на прочтение6 мин
Количество просмотров154K
От переводчика.
Это перевод статьи Филипа Бернарда с сайта css-tricks.com. Часть статьи, содержащую описание работы с созданным им сервисом, я позволил себе опустить. Если вы найдете ошибки, просьба сообщить о них в личном сообщении.

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


Фавикон был представлен в 1999 году, в Internet Explorer 5 (источник) и стандартизирован W3C несколько месяцев спустя. Это была маленькая иконка, представляющая сайт.



С тех пор большинство настольных браузеров следуют тенденции и используют фавикон тем или иным способом. Это очень просто, не так ли? Создать маленькую картинку и добавить в любой интернет-проект, чтобы сделать его «завершённым». Ничего сложного.
Или нет?
Всего голосов 73: ↑71 и ↓2+69
Комментарии44

Понимание ООП в JavaScript [Часть 1]

Время на прочтение16 мин
Количество просмотров338K
— Прототипное наследование — это прекрасно
JavaScript — это объектно-ориентированный (ОО) язык, уходящий корнями в язык Self, несмотря на то, что внешне он выглядит как Java. Это обстоятельство делает язык действительно мощным благодаря некоторым приятным особенностям.

Одна из таких особенностей — это реализация прототипного наследования. Этот простой концепт является гибким и мощным. Он позволяет сделать наследование и поведение сущностями первого класса, также как и функции являются объектами первого класса в функциональных языках (включая JavaScript).

К счастью, в ECMAScript 5 появилось множество вещей, которые позволили поставить язык на правильный путь (некоторые из них раскрыты в этой статье). Также будет рассказано о недостатках дизайна JavaScript и будет произведено небольшое сравнение с классической моделью прототипного ОО (включая его достоинства и недостатки).
Читать дальше →
Всего голосов 129: ↑119 и ↓10+109
Комментарии71

Поиск работы в США: «Силиконовая Долина»

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


Решил обобщить свой более чем десятилетний опыт поиска работы в США на рынке ИТ. Так или иначе вопрос довольно злободневный и часто обсуждаемый в русском зарубежье.
Читать дальше →
Всего голосов 25: ↑22 и ↓3+19
Комментарии26

«Правильная» музыка. Или как навести порядок в своей MP3 коллекции

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

Мотивы

Навеяно хабратопиком.

Предыстория

В октябре 2008 года я купил себе iPhone 3G и, до нынешнего лета, в качестве mp3-плеера использовал именно его. Необходимость загружать музыку в смартфон, используя iTunes, по началу меня изрядно напрягала. Но, как выяснилось значительно позже, возможно именно это избавило меня от головной боли с конвертированием тегов, записанных кириллицей. Я просто не задумываясь добавлял альбомы из своей коллекции в «тунец» и всегда гарантированно получал на телефоне треки без «кракозябр». Удобно. Но всему приходит конец.
а дальше...
Всего голосов 95: ↑78 и ↓17+61
Комментарии100

38 пунктов, которые вы обязаны исключить из вашего резюме прямо сейчас

Время на прочтение5 мин
Количество просмотров102K
Создание резюме — головная боль для каждого, кто ищет работу. Резюме — это ваша история, которую вы рассказываете рекрутёру или потенциальному работодателю. Согласитесь, что изучать сюжет с лишними подробностями или большим количеством ошибок будет не очень приятно. Мы расскажем вам о том, что пора выбросить из своей истории.



Итак, перейдём к резюме и ошибкам, которые вы совершаете.

Начнём с того, что вы не должны злоупотреблять стандартными словами (ответственный, стрессоустойчивый и т.д.), а также применять чересчур креативный дизайн, который в некоторых случаях может принести больше вреда, чем пользы. Очень часто в резюме закрадывается большое количество деталей, которые раздражают, а иногда даже отталкивают рекрутеров. Для того, чтобы получить приглашения на большее количество собеседований, пробегитесь по своему резюме и убедитесь, что там нет ни одного из этих 38 пунктов.
Читать дальше →
Всего голосов 34: ↑26 и ↓8+18
Комментарии87

Последовательное выполнение задач в Gulp JS

Время на прочтение2 мин
Количество просмотров19K
Gulp JS — это сборщик проектов и таск-менеджер для фронтенд и веб-разработки, который является достойной альтернативой для популярного Grunt JS. Одной из нескольких вещей, которыми Gulp отличается от Grunt является то, что по умолчанию все задачи запускаются асинхронно. В целом, можно сказать, что все задачи выполняются одновременно.

Недавно, изучая Gulp, я столкнулся с необходимостью синхронного запуска нескольких задач… синхронного. В документации к Gulp упоминается данная проблема, но мне пришлось немного повозиться перед тем, как я с этим разобрался.
Читать дальше →
Всего голосов 9: ↑6 и ↓3+3
Комментарии11

Не Таиландом единым или Как фрилансеру за три часа поменять место обитания без проблем с визами

Время на прочтение10 мин
Количество просмотров51K
С падением курса рубля жизнь фрилансера-путешественника сильно осложнилась. Однако если все же заработок позволяет, а европейского гостеприимства, как и солнца, ох как не хватает в России – добро пожаловать в восемь стран, где фрилансер найдет покой и красивую картинку позади монитора без проблем и волнений с оформлением виз.


Маршруты кочевников за полторы тысячи лет не поменялись. Но нравы стали помягче
Читать дальше →
Всего голосов 69: ↑64 и ↓5+59
Комментарии126

Заглянем за кулисы разработки: подборка исходных кодов классических игр

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

Исторически так сложилось, что видеоигры не делятся исходниками. Конечно, они ведь предназначены для игроков. Но для программистов там всегда есть, на что посмотреть. И некоторые игры всё-таки выпускали свои исходники. А я давно намеревался сделать такую подборку.

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

Многие игры после выпуска исходников были улучшены и дополнены сообществом – я намеренно даю ссылки только на оригинальные исходники. Так что, если вас вдруг интересуют апгрейды – они могут существовать.

Многие игры были рассмотрены на сайте Fabien Sanglard. Если вам интересны подробности их работы, то пожалуйте к нему.

Можно заметить, что многие игры принадлежат id Software/Apogee. Совпадение? Не думаю. id славится открытостью и привычкой выпускать исходники. Старые коммерческие игры уже не имеют ценности и были бы потеряны – не лучше ли, чтобы кто-то учился чему-то полезному на их основе?

Итак, приступим (в хронологическом порядке):
Читать дальше →
Всего голосов 58: ↑56 и ↓2+54
Комментарии12

Что дизайнеру нужно знать о SVG: за и против

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


Ранее в нашем блоге мы поднимали тему создания качественных веб-интерфейсов, в частности в одном из предыдущих топиков рассматривался вопрос правильного использования анимаций. В сегодняшнем материале речь пойдёт о технологии SVG, принципах работы с этой технологией, её плюсах и минусах. Кроме того, мы поинтересовались у отечественных дизайнеров, применяют ли они SVG, и если нет, то почему.
Читать дальше →
Всего голосов 22: ↑21 и ↓1+20
Комментарии37

Получаем настоящее 3D видео с Raspberry Pi

Время на прочтение3 мин
Количество просмотров30K
В популярной нынче области трехмерного видео со всеми ее Окулусами и 3D-кинотеатрами наблюдается серьезный дисбаланс. Средств просмотра 3D намного больше, чем средств для его создания.
Если говорить не о компьютерных игрушках, а именно о 3D видео с камеры, то его создание требует достаточно дорогих и сложных решений, которые трудно назвать доступными для технических энтузиастов.
Поэтому и появилась на свет идея простого устройства, которое позволяет с обыкновенной Raspberry Pi и одного модуля камеры получать настоящее 3D видео.
Читать дальше →
Всего голосов 9: ↑9 и ↓0+9
Комментарии29

ЧПУ на мускульной тяге (3D Пантограф)

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


В современном мире, в сообществе людей любящих делать вещи своими руками и при этом не чурающихся технологий, чрезвычайно популярна такая вещь как настольный ЧПУ-станок. Хоть эти устройства стали и достаточно доступны, но все еще остаются дорогими. Самый дешевый китайский вариант, на сегодняшний день, обойдется вам в 700-800 американских денег и он наверняка не заработает сразу из коробки, а потребует приложить усилия для доведения его до ума. Изготовление станка с ЧПУ самостоятельно может обойтись дешевле, но обычно требует доступа к разного рода деревообрабатывающему и металлообрабатывающему оборудованию и умения с его помощью изготовлять детали с высокой точностью.

Но люди всегда ищут способов достичь цели доступными средствами.
Читать дальше →
Всего голосов 11: ↑11 и ↓0+11
Комментарии8

RepRap: немного практики, теории и как избежать ошибок при сборке (часть 1)

Время на прочтение10 мин
Количество просмотров203K
Про 3Д принтеры написано уже воз и малая тележка, но когда начинаешь собирать самостоятельно — сталкиваешься с кучей вопросов и проблем, которые нигде не описаны…
Данный пост — маленькое пособие для начинающих РепРаперов (ну и остальным что-то пригодится) про шишки, которые я набивал при сборке своего RepRap Prusa Mendel.
Читать дальше →
Всего голосов 48: ↑45 и ↓3+42
Комментарии41

Миксины для “классов” в JavaScript

Время на прочтение4 мин
Количество просмотров25K
Одинаковый код в нескольких местах — это боль. Сегодня я напишу пару слов про повторяющиеся куски классов. Люди давно придумали решение — можно вынести одинаковые методы и свойства в общий базовый класс, а если такового нет — использовать примеси. Существует миллион реализаций данного паттерна для JavaScript, я хочу детально остановиться на подходе, когда миксин попадает в цепочку наследования.

Проблема в картинках


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



В какой-то момент в дочерних классах появляется необходимость в одинаковом функционале. Обычная копипаста будет выглядеть на нашей схеме вот так:



Очень часто бывает, что данный функционал не имеет ничего общего с родительскими классами, поэтому выносить его в какой-то базовый класс нелогично и неправильно. Вынесем его в отдельное место — миксин. С точки зрения языка миксин может быть обычным объектом.



А теперь обсудим момент, ради которого написана вся статья — как правильно замешивать наш миксин в классы.
Вмешиваемся!!!
Всего голосов 13: ↑12 и ↓1+11
Комментарии4

Информация

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