Обновить
6
0
Иван GiB$ON@gibson_dev

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

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

Заблуждения, связанные с велосипедами

Время на прочтение7 мин
Охват и читатели125K
Статья предназначена для тех, кто только собирается сесть на велосипед и тех, кто ездит, но не очень много, в своё удовольствие, чтобы просто размяться или для перемещения на дачу, рыбалку, работу.

Тип велосипеда


И первый вопрос, который возникает: велосипед какой компоновки выбрать? Обычно покупают примерно такого плана, то есть, так называемые, горные велосипеды или шоссейные:

Шоссейный велосипед

Но всегда ли такой выбор будет правильным?
Читать дальше →

Что «убивает» продавца

Время на прочтение8 мин
Охват и читатели12K
Я давно хотел написать об этом статью, чтобы поделиться своим личным опытом продаж и своими наблюдениями в этой области деятельности. Меня никогда не впечатляли профессиональные книги о продажах. Они казались мне очень «научно» банальными, слишком упрощенно схематичными и негибкими. Благодаря такой подаче информации в этой сфере, я всегда смотрел немного свысока на понятие «продажи». Это казалось чем-то, что ниже меня и моих устремлений.

В какой-то мере, продажи всегда являются манипуляцией. Есть продукт, ценность которого завышена по сравнению с реальной себестоимостью. Поэтому, важно обладать умением манипулировать (управлять) вниманием потенциального покупателя для привлечения его к покупке этого продукта.

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

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

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

802.одиннадцать чего там ещё? Почему WiFi – отстой, и что с этим делать

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

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


image

Когда сети на основе стандарта беспроводной связи 802.11b в конце 90-х вышли на рынок, то на бумаге они выглядели прекрасно. Они обещали «11 Мбит/с» по сравнению со скоростью 10 Мбит/с по проводам Ethernet, и можно было подумать, что беспроводная сеть на самом деле работает быстрее, чем Ethernet. Прошло немало времени, прежде чем я познакомился с беспроводными сетями – смартфоны тогда ещё не выстрелили, ноутбуки были чрезвычайно дорогими, маломощными и тяжёлыми. А я уже ставил в офисы своим клиентам и себе домой Fast Ethernet (100 Мбит/с), так что идея урезания скорости на 90% меня не привлекала.

В начале 2000-х всё начало меняться. Ноутбуки уменьшались, становились легче и дешевле – а ещё в них стали встраивать WiFi. Малый бизнес начал присматриваться к обещанным стандартом «11 Мбит/с» и размышлять – раз 10 Мбит/с в старом офисе хватало, почему бы не поставить в новом беспроводную сеть? Моё первое знакомство с WiFi состоялось, когда я разбирался с последствиями такого решения, и первое впечатление оказалось плохим. Оказывается, что «11 Мбит/с» – это максимальный физический уровень чистого битрейта, а не скорость, с которой реальные данные смогут передаваться между компьютерами. На практике он был не особенно лучше диалапа – как по скорости, так и по надёжности. На самом деле, если разместить все устройства довольно близко друг к другу и к точке доступа, то можно было ожидать, в лучшем случае, 1 Мбит/с – около 125 Кб/с. А так было ещё хуже – если десять компьютеров пытаются достучаться до сервера, нужно поделить эти 125 Кб/с и получить 12,5 Кб/с для каждого из них.
Читать дальше →

Пилим каталог товаров не притрагиваясь к реляционной алгебре

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

Здравствуйте, меня зовут Дмитрий Карловский и я… давно не занимался бэкендом, но на днях вдруг наткнулся на мучения SbWereWolf по натягиванию ужа на ежа и не смог удержаться от соблазна сдуть пыль со своего мульти-инструмента OrientDB да оттяпать им чего-нибудь этакого.


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


Разбирать мы будем вот этот вот реляционный звездолёт:


17 таблиц


А собирать вот такой вот графовый скворечник:


5 классов

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

Каково это — быть разработчиком в России, когда тебе сорок

Время на прочтение37 мин
Охват и читатели163K
Привет всем, я — сорокалетний программист-самоучка, а это моя история.

Пару недель назад я наткнулся на график распределения людей, интересующихся технологиями, ИТ и программированием. И он заставил меня задуматься о моей карьере.



Через каких-то 20 лет мне стукнет 60. И вероятность того, что я еще смогу заниматься тем, для чего был создан, составляет очень крошечную величину. Эти размышления привели меня туда, откуда все начиналось.

Я дебютировал в роли разработчика программного обеспечения в 1990 году, через год после того, как мне на 14-тилетие родители подарили ПЭВМ «Микроша».
Читать дальше →

Визуализация данных в браузере с помощью D3.js

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


Михаил Дунаев ( war_hol )


С визуализацией данных и с различными диаграммами мы сталкиваемся каждый день, это какие-то Google Analitics, Интернет-банки, это Excel и т.д.



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

Первый официальный релиз Webpack 2. Что нового по сравнению с Webpack 1?

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

Webpack 2 Release


Предупреждение: проверьте, как установлена версия Webpack в package.json. Возможно скоро ваш continuous integration сломается.


Наконец-то Webpack 2 преодолел рубеж beta и release candidate. Это значит, что всё работает стабильно, и можно без опаски использовать его в production.


Список изменений/улучшений:


  • Нативная поддержка ES6-модулей;
  • Разбиение кода на чанки — Code Splitting with ES6;
  • Поддержка динамических выражений при загрузке модулей — Dynamic expressions;
  • Изменения при работе с Babel;
  • ES6-специфичные оптимизации;
  • Breaking Changes;
  • Новый сайт с документацией.

Подробности под катом.

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

Использование rebar3 для управления проектами на Erlang

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


Rebar3 — это инструмент для языка программирования Erlang, который позволяет легко и удобно управлять проектами, написанными на Erlang (иногда и на Elixir).


Люди уже давно знакомые с Erlang знают старый rebar и, возможно даже, до сих пор его используют. Многим (особенно тем, кто пришел из других языков с гораздо более развитой экосистемой) rebar не нравится и время от времени его там и тут называют "позорной подделкой", которую можно было бы заменить скриптом на Perl. К счастью много работать с rebar мне не приходилось (в отличие от автора выше приведенных слов), но с базовыми вещами rebar справлялся довольно-таки неплохо. Но "неплохо" — это не "хорошо". Несогласных с таким положением дел (с "неплохо") оказалось немало и потому решили они дать арматуре вторую жизнь в виде проекта rebar3, который нынче активно развивается. Над проектом среди прочих работает небезызваестный сир Фред Хеберт, который подарил миру книгу "Изучай Erlang во имя добра!".

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

Как понять, что происходит на сервере

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


Александр Крижановский ( krizhanovsky, NatSys Lab.)


По Сети уже давно бегает эта картинка, по крайней мере, я ее часто видел на Фейсбуке, и появилась идея рассказать про нее:


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

Моя история эмиграции, воплощение мечты админа

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

Приветствую, уважаемые хабражители. Хотел бы поведать вам историю моей эмиграции из Москвы в Евросоюз. Когда-то давно мне попалась статья и я проникся окончательной идеей уехать из России, но я не думал что это будет Латвия.


image

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

Анимации на GPU: делаем это правильно

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

Думаю, все уже знают, что современные браузеры умеют рисовать некоторые части страницы на GPU. Особенно это заметно на анимациях. Например, анимация, сделанная с помощью CSS-свойства transform выглядит гораздо приятнее и плавнее, чем анимация, сделанная через top/left. Однако на вопрос «как правильно делать анимации на GPU?» обычно отвечают что-то вроде «используй transform: translateZ(0) или will-change: transform». Эти свойства уже стали чем-то вроде zoom: 1 для IE6 (если вы понимаете, о чём я ;) для подготовки слоя для анимации на GPU или композиции (compositing), как это предпочитают называть разработчики браузеров.


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

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

Время на прочтение4 мин
Охват и читатели92K
Для создания программного обеспечения нужны программисты. К сожалению, их труд стоит дорого, они ленивы и их почти невозможно контролировать. Независимо от того, насколько хорошо работают их программы, вы должны платить им каждый месяц, и, конечно, чем меньше вы платите, тем лучше. Однако, иногда сотрудники догадываются, что им недоплачивают и уходят. Как этому помешать? Жаль, что сегодня нет возможности заставлять их работать насильно. Есть несколько техник, которые помогут платить программистам меньше, и я хочу о них рассказать.
Читать дальше →

htop и многое другое на пальцах

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


На протяжении долгого времени я не до конца понимал htop. Я думал, что средняя загрузка [load average] в 1.0 означает, что процессор загружен на 50%, но это не совсем так. Да и потом, почему именно 1.0?

Затем я решил во всём разобраться и написать об этом. Говорят, что лучший способ научиться новому — попытаться это объяснить.
Читать дальше →

Магия H.264

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

H.264 — стандарт сжатия видео. И он вездесущ, его используют для сжатия видео в интернете, на Blu-ray, телефонах, камерах наблюдения, дронах, везде. Все сейчас используют H.264.

Нельзя не отметить технологичность H.264. Он появился в результате 30-ти с лишним лет работы с одной единственной целью: уменьшение необходимой пропускной способности канала для передачи качественного видео.

С технической точки зрения это очень интересно. В статье будут поверхностно описаны подробности работы некоторых механизмов сжатия, я постараюсь не наскучить с деталями. К тому же, стоит отметить, что большинство изложенных ниже технологий справедливы для сжатия видео в целом, а не только для H.264.
Читать дальше →

Математика CSS-шлюзов

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

CSS-шлюзом (CSS-lock) называется методика из адаптивного веб-дизайна, позволяющая не перепрыгивать от одного значения к другому, а переходить плавно, в зависимости от текущего размера области просмотра (viewport). Идею и одну из реализаций предложил Тим Браун в статье Flexible typography with CSS locks. Когда я пытался разобраться с его реализацией и создать свои варианты, мне с трудом удавалось понять, что именно происходит. Я выполнил много вычислений и подумал, что полезно будет объяснить другим всю эту математику.

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

Некоторые тонкости использования Service Workers

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


Предисловие


Сервис-воркеры (Service Workers, да простят меня читатели) сегодня являются полезным дополнением к основной функциональности сайта: тут и работа в оффлайне, и фоновая синхронизация данных, и модные пуш-уведомления.

Однако большое количество статей про сервис-воркеры выглядят достаточно сжато и описывают простые примеры. Я попробую обратить внимание на некоторые особенности работы сервис-воркеров, так что требуются какие-то базовые знания. Отправной точкой может быть эта статья (перевод) или чуть более подробная статья.
Читать дальше →

Система сборки Xcode: advanced tutorial

Время на прочтение7 мин
Охват и читатели43K
image
Конфигурация проекта в Xcode выглядит, как пульт управления космическим кораблем. Зачастую люди понимают, как работает система сборки, но путают термины. В этой статье мы пройдемся по структуре проекта, таргетам, настройкам конфигураций и воркспейсам. Поехали!
Читать дальше →

Повторное использование строк для высокоэффективной работы со списками React Native ListView

Время на прочтение11 мин
Охват и читатели6.5K
Повторное использование ранее размещенных в памяти строк, которые при прокрутке выходят за пределы экрана, ― широко распространенная техника оптимизации использования компонента ListView, изначально реализованная в iOS и Android. Реализация ListView как компонента React Native по умолчанию не содержит непосредственно эту оптимизацию, но имеет ряд других приятных преимуществ. Тем не менее, это отличный образец, достойный изучения. Рассмотрение этой реализации в рамках изучения React также будет интересным мысленным экспериментом.

Списки являются важной частью разработки мобильных приложений


Списки – это сердце и душа мобильных приложений. Множество приложений отображают списки: это и список публикаций в вашей ленте приложения Facebook, и списки бесед в Messenger, и список сообщений электронной почты Gmail, и список фотографий в Instagram, и список твитов в Twitter и т.д.

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

С одной стороны, вы хотите сохранить скорость работы вашего приложения, т.к. прокручивание со скоростью 60 FPS стало золотым стандартом нативного опыта взаимодействия (UX). С другой стороны, вы хотите сохранить низкое потребление памяти, потому что мобильные устройства не располагают избыточными ресурсами. Не всегда просто выполнить оба эти условия.



Поиск идеальной реализации элемента ListView


Основополагающим правилом разработки программного обеспечение является то, что нельзя предусмотреть оптимизацию для любого сценария.
Читать дальше →

ES6 по-человечески

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

От переводчика:
Предлагаю вашему вниманию перевод краткого (действительно краткого) руководства по ES6. В нём можно ознакомиться с основными понятиями стандарта.
Оригинальный текст в некоторых случаях был дополнен или заменён на более подходящий источник. Например, часть определения ключевого слова const является переводом документации с MDN.
Чтобы лучше разобраться в некоторых концепциях (для выполнения качественного перевода) использовалось описание стандарта на сайте MDN, руководство "You Don't Know JS: ES6 & Beyond" и учебник Ильи Кантора.


Перевод выложил на Гитхаб: https://github.com/etnolover/ES6-for-humans-translation. В случае нахождения ошибок пишите, исправлю.
Ссылка на оригинальный текст: https://github.com/metagrover/ES6-for-humans


Update 22.07.2016: добавил опрос про const


Содержание



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

Первые 10 минут на сервере

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

Азбука безопасности Ubuntu


«Мои первые 5 минут на сервере» Брайана Кеннеди — отличное введение, как быстро обезопасить сервер от большинства атак. У нас есть несколько исправлений для этой инструкции, чтобы дополнить ею наше полное руководство. Также хочется подробнее объяснить некоторые вещи для более юных инженеров.

Каждое утро я проверяю почтовые уведомления logwatch и получаю основательное удовольствие, наблюдая несколько сотен (иногда тысяч) безуспешных попыток получить доступ. (Многие довольно прозаичны — попытки авторизоваться как root с паролем 1234 снова и снова). Приведённая здесь общая методика подходит для серверов Debian/Ubuntu, которые лично мы предпочитаем всем остальным. Они обычно служат только хостами для контейнеров Docker, но принципы те же.

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

Примечание: Эта справка создана как базовая азбука. Её следует расширить и дополнить в соответствие с вашими потребностями.
Читать дальше →

Информация

В рейтинге
Не участвует
Откуда
Россия
Дата рождения
Зарегистрирован
Активность