Обновить
0
0
Иван Колмычек (Ivan Kolmychek)@ivan_kolmycheck

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

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

Кластеризация на клиенте или как показать 10000 точек на карте

Время на прочтение7 мин
Охват и читатели32K
Существует несколько типов проектов,
для которых вывод геоинформации является
необходимым: сайты по недвижимости, каталоги компаний,
каталоги достопримечательностей, доски объявлений и другие.
Для этих сайтов я решил разработать плагин к goolge API 3 и Яндекс API 2.

Основные требования:
  1. Возможность подключения без глубокой подготовки данных на сервере, а именно, используя только уже имеющиеся географические координаты объектов.
  2. Простой протокол подготовки и передачи данных.
  3. Быстрый клиентский кластеризатор с ДВУМЯ типами меток: кластер и группа. Кластер — несколько объектов, расположенных рядом. При клике кластер “раскрывается”, то есть увеличивает зум пока объекты будут на расстоянии, большем чем расстояние кластеризации. Группа — несколько объектов в одной точке (на минимальном расстоянии). При клике на группу на любом зуме выводится список объектов в группе.
  4. Отображение до 10000 точек с использованием кластеризатора.
  5. Отображение в ie7, на мобильных устройствах (iPad первого поколения).
  6. Шаблонизация на клиенте двух инфоокон — группового кластера и самого объекта.
  7. Использование спрайта для меток.
  8. Возможность использования неограниченного количества типов меток (иконок) для разных типов объектов.
  9. Возможность использования нескольких размеров иконки для разного диапазона зума.

В статье я опишу несколько подходов, которые были использованы для реализации этого плагина.
Читать дальше →

Неэффективный программист или как взломать свой мозг за 2 дня

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


Disclaimer: Автор понимает, что ничего нового не открыл, но подача материала может оказаться достаточно полезной, особенно для тех, кто регулярно пытается сконцентрироваться и расти над собой.


Интернет сделал нас ленивыми!

Почему? Кто в последний раз посмотрел видео больше 3х минут? Кто прочитал пост больше 2 страниц? Какой заголовок более привлекателен, «63 способа бла-бла-бла» или «3 проверенных метода бла-бла-бла»? А если эти три проверенных метода выделены от основного текста, то это вообще гуд (можно не читать текст вовсе, а просто пробежаться по выделенным подзаголовкам).

В этом свои плюсы. Наш мозг эволюционировал, и обрабатывает информацию быстрее, чем, скажем, 15-20 лет назад (да и эволюционирует быстрее, чем это было возможно век назад). Как компании справляются с высокими нагрузками? Как процессор выполняет программу по возможности быстро? С помощью кэширования! (как вариант, но самый приоритетный). Что делает наш мозг, чтобы справиться с большой нагрузкой? Кэширует! Что именно и как — оставим на размышление ИИшникам (специалистам по искусственному интеллекту). В противном случае при увеличении размера обрабатываемой информации время «отклика» бы увеличилось в разы, и на ответ на «как добраться до ближайшей больницы?» уйдет больше времени, чем человек «в силе ждать». «Сила ждать» тоже уменьшилась, «размер» нашего терпения уменьшился, и мы быстро устаем, если продолжительность видео большая, размер статьи большой (на самом деле продолжительность может не влиять на терпение, больше всего влияет полезная информация, если «воды» меньше или вовсе нет, то и терпеть ничего не приходится, посему данный пост написан «эз лаконик эз посибл»).
Убедиться в этом

Ученым удалось остановить свет на одну минуту

Время на прочтение3 мин
Охват и читатели142K
Исследователям из университета Дармштадта (Германия) удалось остановить поток света на одну минуту. Свет, как наиболее быстрая материя известная во вселенной (скорость 300.000 км/с) был остановлен внутри кристалла. Таким образом, делается возможным создание, так называемой световой памяти, когда информация, переносимая светом, аккумулируется кристаллом. Помимо того, что само по себе подобное исследование будоражит воображение, оно, с весьма большим успехом, может стать подоплекой для создания квантовых сетей дальнего действия, и может быть, это исследование даст подсказки на то, как можно сделать скорость света больше значения, ограниченного вселенной.

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

12 правил плохого менеджера

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


Никогда не планируйте


Проект, как правило, делается сам собой, вырастает, как дерево: главное — вовремя посадить семена и удобрить почву. Разве вы когда-нибудь встречали чудака, который будет прикидывать, насколько вырастет за год дерево, которое он посадил? Правда в том, что планирование никогда еще никому не помогло сделать хороший проект. Точные сроки — это лишняя ответственность и ненужная головная боль. Диаграммы Ганта — для слабаков. Забудьте о них.

Еще 11 практических советов

Прекратите восхвалять свой тяжелый труд

Время на прочтение2 мин
Охват и читатели98K
image

Перевод недавнего популярного поста с Hacker News.

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

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

#ВКАЛЫВАЕМ #HUSTLE #РАБОТА

Остановитесь, пожалуйста.
Читать дальше →

Экономическая эфективность и целесобразность введения VDI

Время на прочтение6 мин
Охват и читатели26K
Всем привет! Мы продолжаем наш цикл статей про виртуализацию и различные технологии hp, и на этот раз рассмотрим самый животрепещущий вопрос, по которому получили больше всего вопросов через различные каналы: на каком этапе целесообразно вводить виртуализацию рабочих мест, за какой период времени она начнёт экономить ваши средства и как можно сэкономить на внедрении VDI.

Image #1860681, 31.5 KB
Приступим!

Microsoft помогал АНБ и ФБР шпионить за пользователями Hotmail, Skype и Outlook

Время на прочтение2 мин
Охват и читатели60K
image

Эдвард Сноуден передал изданию The Guardian новые документы, свидетельствующие о том, что Microsoft помогал американским спецслужбам перехватывать переписку в Outlook.com и Hotmail, а также аудио- и видеоразговоры в Skype, пишет Mashable.

«Полученные из Skype звонки были очень чёткими, а метаданные выглядят полными», — говорится в документе, где также положительно оценивается сотрудничество АНБ и ФБР: «Совместная работа стала ключевым моментом в успешном подключении к системе Prism ещё одного поставщика данных».
Читать дальше →

Пользователь Reddit создал «вирусный» анимированный ролик про тотальную слежку АНБ по мотивам заставки Pixar

Время на прочтение1 мин
Охват и читатели17K
Пользователь Reddit под ником Sqorck создал и выложил на Youtube очень качественно сделанный ролик, в юмористическом ключе описывающий ситуацию с тотальной слежкой правительства США за своими гражданами.

Как отметили в комментариях на Reddit, ролик может оказаться наиболее эффективным способом донесения информации о тотальной слежке до широких масс населения.

Кстати, авторам петиции на РОИ об отмене пресловутого № 187-ФЗ ИМХО также стоит взять пример с автора ролика.



EDIT: перенёс топик из хаба «Информационная безопасность» в хаб «Анимация и 3D графика». Всех с пятницей!

Wi-Fi с логином и паролем для каждого пользователя или делаем WPA2-EAP/TLS подручными средствами

Время на прочтение9 мин
Охват и читатели287K
С практической точки зрения было бы удобно управлять Wi-Fi сетями, выдавая пароль каждому пользователю. Это облегчает задачу с доступом к вашей беспроводной сети. Используя так называемую WPA2 PSK авторизацию, чтобы предотвратить доступ случайному пользователю, нужно менять ключ, а также заново проходить процесс авторизации на каждом отдельном Wi-Fi устройстве. Кроме того, если вы имеете несколько точек доступа, ключ нужно менять на всех из них. А если Вам надо скрыть пароль от кого-нибудь, придется раздать всем сотрудникам новый.

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

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

Схема обработки ошибок в Yii

Время на прочтение4 мин
Охват и читатели34K
Всем привет!
Процесс обработки ошибок в Yii был для меня не совсем прозрачным с первых дней использования этого фреймворка. Даже несмотря на наличие в документации специального раздела Error Handling. В каких случаях какие view используются, как влияет ajax или debug-режим, зачем нужен errorAction, в чем отличия при обработке исключений?
В итоге после копания в документации и исходном коде фреймворка я нарисовал наглядную схему обработки ошибок, которая лично для меня оказалась весьма полезной и наверняка пригодится кому-то еще.
Под катом собственно схема и некоторые комментарии к ней.
Читать дальше →

Использование zRam для увеличения количества доступной памяти под Linux

Время на прочтение3 мин
Охват и читатели144K
image
Уже 2 месяца использую на своих компьютерах модуль zRam и хочу поделиться результатами. На практике он позволил мне не используя раздел подкачки, и не получая видимого замедления работы компьютера увеличить размер оперативной памяти в 2.5-3 раза. На сервере виртуалок тот же подход позволил очень ощутимо увеличить отзывчивость при нехватке памяти.
Заинтересовавшихся прошу под кат.
Читать дальше →

Не повторяйте моих ошибок на собеседовании

Время на прочтение5 мин
Охват и читатели358K
image
Я — разработчик с чуть более чем 10 годами опыта разработки и опытом прохождения нескольких раундов собеседований каждый год-два.
Пост написан под впечатлением двух предыдущих постов на смежную тему — Как я искал сотрудников или Как не надо проходить собеседования и Как я искал работу или Как не надо проводить собеседования. И хотя в этих постах освещены наиболее насущные проблемы соискателя и работодателя, рискну высказать свое мнение, которое основано на лично набитых шишках и помогает взглянуть на проблемы под другим углом.

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

Ошибка №1
Соискатель получает столько приглашений на собеседование, что не в состоянии их обработать.
Логичный вывод соискателя: «на рынке острый дефицит кадров, так что могу отсеивать компании как хочу, отфутболив тех, кто заикнется о коде на бумажке, сортировках или гномиках». Возможна и менее скромная вариация того же вывода: «раз меня все хотят, значит, я классный профессионал, могу всем диктовать свои условия». Звучит, вроде, логично, но абсолютно бесполезно.

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

Как тестировать электронику на производстве: анализ современных технологий

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


Финальный этап создания электронного продукта — серийное производство, именно оно в конечном итоге определяет качество устройства. Пользователь не сможет оценить идеальную программную и аппаратную платформу новой электроники, если на сборочном конвейере произойдет сбой, поэтому контроль функциональности и тестирование сборки — обязательные этапы массового производства.

Читатели этой статьи познакомятся с основными методиками и задачами тестирования электронных устройств и получат общее понимание обеспечения качества на производстве. Особое внимание будет уделено достоинствам и недостаткам различных методов тестирования.
Читать дальше →

Ликбез по информационной безопасности сегодня

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


Для начала – совсем простая модель. Есть три концептуальных угрозы безопасности конкретных данных: нарушение целостности, доступности и конфиденциальности информации.

Когда хакер Вася находит в мусорнике письмо вашей любовницы – это нарушение конфиденциальности, когда хомяк Билл перегрызает кабель сервера с репозиторием — это нарушение доступности, а когда админ Пупкин заливает бекап в обратную сторону — это нарушение целостности.

При этом эти три примера связаны с тремя разными факторами: хакер Вася специально охотился за вашим мусором; хомяк Билл показал нам отказ оборудования; а администратор Пупкин просто клинический раздолбай. За последний год только 37% проблем с данными были результатом действий запланированных атак. 29% случаев пришлось на сбои систем. И оставшиеся примерно 34% – на человеческий фактор, то есть халатность персонала.

Поэтому не надо представлять героя, в одиночку отбивающего хакерские орды, когда вам говорят «информационная безопасность».
Читать дальше →

Чертежи в SVG формате. Часть 3. — Черновик стандарта

Время на прочтение4 мин
Охват и читатели11K
В "Чертежи в SVG формате. Часть 2 — Черновик стандарта " приведён пример рисование простых графических объектов из CAD систем. В продолжении рассмотрим рисование штриховки для разных материалов.
Подробности

Github Releases: публикация релизов

Время на прочтение1 мин
Охват и читатели32K
Разработчики Github реализовали новую функцию Releases для удобного распространения ПО конечным пользователям. Зайдя в раздел Releases, пользователь всегда может найти последнюю версию программы, changelog и полную историю версий. Ссылка на релизы помещена на главную страницу проекта.


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

Цена сложности

Время на прочтение3 мин
Охват и читатели29K
Мне всегда сложно было объяснить даже самому себе термин «технический долг». Никогда не было понятно, кто, кому, за что и сколько должен. И, если это долг, то как его выплачивать и можно ли выплатить полностью? А можно ли сделать так, чтобы должны были мне?
Читать дальше →

EFF вступился за хакера, нашедшего уязвимость на сайте AT&T и попавшего за решётку

Время на прочтение2 мин
Охват и читатели28K
Организация Electronic Frontier Foundation (EFF) в этот понедельник подала аппелляцию в Федеральный аппеляционный суд США по поводу избранной меры наказания Эндрю Ауернхаймера, известного в IT-среде как «Weev» (Andrew «Weev» Auernheimer), находящегося в заключении сроком в 41 месяц по обвинению в компьютерном мошенничестве (Computer Fraud & Abuse Act (CFAA).

В 2010 году Дениел Спитлер (Daniel Spitler), проходящий по тому же делу, что и Weev, обнаружил ошибку в конфигурации серверов AT&T, благодаря чему в интернете публично были доступны адреса электронной почты владельцев iPad. Спитлер с помощью скрипта собрал примерно 114 000 пользовательских email'ов, а Ауернхаймер распространил собранную базу адресов среди ряда организаций в качестве доказательства имеющейся уязвимости, информировав при этом же саму AT&T.
Узнать подробности

Http запросы — мы все это делаем неправильно

Время на прочтение3 мин
Охват и читатели191K
В проекте, над которым я работаю, мы используем огромное количество сторонних библиотек. Многие из них — адаптеры для различных сервисов. Что их объединяет, это то, что они работают с сетью. Json поверх http, soap поверх http, какие-то свои протоколы поверх http. Т.е. все так или иначе используют http. И как ни удивительно, мало кто из них пользуется преимуществами его последней версии. Я не поленился заглянуть в википедию, прошло ровно 14 лет как была принята спецификация http 1.1. И потому я решил обратиться с призывом:
image

Да, речь пойдет о keep alive. Суть в том, что, начиная с http 1.1, клиент и сервер могут договориться не закрывать установленное tcp-соединение после завершения запроса, а переиспользовать его для следующих запросов. Это нужно потому, что на установку соединения требуется время. Иногда это время больше, чем время самого запроса. И если все серверы уже давным-давно такую возможность поддерживают, а все браузеры и большинство других клиентов её используют, то у разработчиков различных библиотек для популярных языков программирования здесь почему-то пробел.
Читать дальше →

Притча о покрытии кода тестами

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

Ранним утром программист спросил великого мастера:
— Я готов писать модульные тесты. К какому покрытию кода я должен стремиться?
Великий мастер ответил:
— Не переживай о покрытии, просто пиши хорошие тесты.
Программист улыбнулся, поклонился и ушел.

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

Информация

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