Pull to refresh
6
Karma
0
Rating
Igor Pstyga @opti

User

  • Posts
  • Comments

Будущее вселенной

Popular scienceAstronautics
Translation
Как-то я наткнулся на интересную тайм-ленту предполагаемых событий вселенной на википедии, но она была довольно скудной и без картинок, так что я залез в гугл и поискал «future time line», и первое, что увидел, — этот сайт. Мне очень понравилась эта статья и я решил перевести ее, заодно и вычитать ее получше.
Все, что здесь изложено — лишь предположения и теории, вполне возможно, что все или некоторые события будут не такими. Весь пост представлен в виде тайм-ленты от 10000 до 10100 года, и содержит много интересных картинок и ссылок на вики, читать много и интересно.



10 000 – 15 000 Н.Э.


Гиперновая из звездной системы Эта Киля начинает воздействовать на наш регион Галактики


Эта Киля – одна из самых больших и нестабильных звезд в нашей Галактике. Ее температура настолько высока, что ее гравитация не в состоянии удерживать газ, утекающий с ее поверхности по сформированным потокам вверх, от нее. Она впервые была замечена в 1843 году, когда ее звездная величина (читай величина свечения) достигла -0.8, сделав ее второй по яркости звездой в ночном небе.
Она в дальнейшем утихла на какое-то время, и снова «засветила» в конце 1990-х. Эта флуктуация продолжается с периодичным вспыхиванием и затуханием, и будет продолжаться до тех пор, пока не случится неизбежное. Не в состоянии совладать с собственной массой и плотностью, она коллапсирует и, потом, превращается в одну из самых смертельных сил, известных в природе – в гиперновую.
На какое-то время, этот колоссальный взрыв освещает всю галактику. Это будет достаточно ярко, чтобы заметить в дневное время с Земли, в то время как ночью это сравнимо с полной луной.
Но гораздо больше вреда принесут убийственные струи гамма-излучения, выброшенные умирающей звездой. Они будут выброшены на таких высоких энергиях, что даже системы в тысячах световых лет от Эта Киля будут задеты. В результате, на многочисленных планетах в нашем регионе Галактики произойдет вымирание живых организмов в это время.

Читать дальше →
Total votes 265: ↑257 and ↓8 +249
Views51.3K
Comments 239

News

Show more

Антидизайн. Часть 3 (последняя). Неочевидные приемы

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

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

В прошлых статьях (1, 2) я показал как антидизайн — применение законов дизайна для извлечения выгоды нечестным путем — может приводить к созданию лжи, манипуляций общественным мнением, созданию целых «индустрий-кровососов», кормящихся за счет усложнения нашей жизни.

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

1. Механические препятствия


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

В бизнесе часто искусственные препятствия воздвигаются, когда надо придушить какой-то продукт. Допустим, компания купила конкурирующую СУБД, и чтобы придушить ее популярность, прячет техническую документацию подальше на своем сайте, прикрыв ворохом уверений в продолжении поддержки и ценности доставшихся им пользователей. Только самые стойкие поклонники такой СУБД преодолеют все трудности, чтобы продолжить пользоваться любимым продуктом.



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

Если такой прием плохо спрятать, то он все еще кажется очевидным. Перейдем к более хитрым штукам. Они под катом

Читать дальше →
Total votes 202: ↑193 and ↓9 +184
Views2K
Comments 127

Антидизайн. Часть 2. Очевидные приемы

Design
[Уже появилась и Часть 3]

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

Но что, если не все дизайнеры применяют свое мастерство для решения проблем, которые мы считаем достойными? Что если не все стараются облегчить доступ к информации, упорядочить ее, красиво оформить, дать потребителю именно в том месте, где она ему нужна?

Не так давно, я написал статью под названием "Антидизайн". В ней я говорил о том, что при применяя законы дизайна наоборот различные организации специально путают людей, затрудняют восприятие информации и получают от этого прибыль.

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


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

В этой статье я начну с разбора очевидных, прямых и явных способов антидизайна.

1. Кодирование


Самым простым путем ограничить доступ к информации является кодирование. Его неуместное применение в несколько тысяч миллионов раз замедлит усвоение и восприятие информации. Сделает невозможным ее анализ.



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

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



Дальше — под катом.

Читать дальше →
Total votes 281: ↑267 and ↓14 +253
Views7.5K
Comments 54

Вардрайвинг в MAC OS X

Development for MacOS
Tutorial


Стандартом де-факто в вардрайвинге обычно считается система Linux (модифицированные драйвера, Kismet в связке с aircrack-ng). Но немногие знают, что в маке есть мощные инструменты для взлома аудита безопасности беспроводных сетей, ни чуть не уступающие, а во многом и превосходящие по функционалу Linux-аналоги.
UPD: Описанные в статье инструменты на сегодняшний день устарели. Рекомендуется использовать Linux

Читать дальше →
Total votes 93: ↑82 and ↓11 +71
Views58K
Comments 89

Вся правда об XSS или Почему межсайтовое выполнение сценариев не является уязвимостью?

Positive Technologies corporate blogInformation SecurityWebsite development
Должен признаться, что чтение комментариев на Хабре к практически любым постам, описывающим очередную XSS на каком-либо популярном сервисе или сайте, способно повергнуть в уныние любого, кто так или иначе связан с безопасностью веб-приложений. С учетом распространенных среди разработчиков мифов и заблуждений о межсайтовом выполнении сценариев, нет ничего удивительного в том, что он и по сегодняшний день входит в число наиболее распространенных проблем безопасности веб-приложений: согласно данным отчета Positive Technologies за 2010-2011 годы, XSS были подвержены 40% проанализированных веб-приложений, а из отчета Firehost за второй квартал 2012 года следует, что XSS составила 27% от числа зарегистрированных хостером атак.

И поскольку, заминусовать этот пост можно и за один только его заголовок, то поспешу пояснить: межсайтовое выполнение сценариев действительно не является уязвимостью, но только потому, что оно является атакой. В чем разница, почему это важно, как со всем этим бороться и какие еще мифы и заблуждения распространены об XSS — читаем под катом.
Читать дальше →
Total votes 178: ↑169 and ↓9 +160
Views111.3K
Comments 48

Введение в SproutCore часть вторая

JavaScript
В первой части руководства по SproutCore рассказывалось о создании простого приложения.
Пришло время углубить знания и разобраться с Моделями в SproutCore.

После прочтения данного руководства вы сможете:

  • Описывать модели с помощью SC.Record.
  • Управлять моделями с помощью SC.Store.
  • Загружать начальные данные в хранилище.
  • Посылать запросы к хранилищу с помощью SC.Query.

Читать дальше →
Total votes 9: ↑7 and ↓2 +5
Views531
Comments 0

Введение в SproutCore, часть первая

JavaScript
В последнее время появилось много статей о JavaScript MVC фреймворках. Видимо есть потребность в подобных инструментах. Мое внимание привлек продукт под названием SproutCore. Обнаружив на скудное наличие информации на русском языке я решил перевести для себя ряд руководств с официального сайта фреймворка. Поделюсь с сообществом первым из них.

После прочтения этого руководства, вы сможете:
  • Использовать шаблоны SproutCore, для описания внешнего вида приложения;
  • Обрабатывать события внутри представления;
  • Использовать привязки(bindings) для обновления представления, после изменения состояния модели.


Вы узнаете все это во время создания приложения Todo-лист.

Исходный код этого приложения доступен на Github. Также есть скринкаст.
Читать дальше →
Total votes 28: ↑25 and ↓3 +22
Views2K
Comments 19

Оффлайновые карты всего мира

Self Promo
MapsWithMe У меня давно была мечта написать карты. Удобные карты, которым не нужен доступ в Интернет, с актуальными данными, быстрые и работающие на любом устройстве. После работы инженером в Google Maps эта мечта только усилилась и в какой то момент переросла в конкретные действия.

Если это будет интересно, я как нибудь напишу, как я уходил из цюрихского Гугла, и при этом все вокруг делали квадратные глаза и как потом на чистом энтузиазме мы с друзьями почти год писали проект.
Читать дальше →
Total votes 234: ↑225 and ↓9 +216
Views4.6K
Comments 208

Идеальный корпоративный почтовый клиент

System administration
Когда возникает необходимость настроить почтовую систему для компании в первую очередь на ум приходит использовать решения от Microsoft — Exchange и Outlook. К сожалению, эти решения не обеспечивают достаточной гибкости и многим не подходят по разным параметрам.

Хорошо, но что же использовать вместо них, ведь хочется такой же красивой и прозрачной для пользователя работы с почтой, которую обеспечивает протокол MAPI? Небольшая перетасовычка и на свет появляется вполне очевидное и на самом деле безальтернативное решение — IMAP. IMAP, слава Богу, в современном мире в той или иной степени поддерживают чуть ли не все почтовые клиенты, так что выбор у нас огромен. Но если присмотреться внимательней, то он сужается до весьма скромного множества из одного-двух наименований.

Итак, нам бы хотелось:
  • Для начала — кросплатформенность. Глупо использовать стандартизированные технологии, но привязываться изначально к одной ОС, тогда уж проще сразу купить Exchange и навсегда забыть о какой-либо гибкости разворачиваемой инфраструктуры.
  • Полная поддержка IMAP и IMAP ACL. Второй пункт важен, т.к. без него нельзя будет организовать ни общих папок, ни передачу прав на различные операции с ящиком другим пользователям, а без этого в корпоративной почтовой системе никак.
  • Возможность централизованной настройки клиента через сервер.
  • Гибкость настроек клиента и удобство в использовании.
Недолгий поиск в интернете может поведать, что единственный вариант, который можно было бы рассмотреть поближе — это Mozilla Thunderbird. Но вот вопрос: может ли Thunderbird предоставить весь необходимый функционал, чтобы можно было с лёгкостью заменить им связку Exchange и Outlook? Оказывается не только может, но и позволяет добиться куда как большего, чем просто банальное подражание продуктам Microsoft.

Мне интересно!
Total votes 191: ↑175 and ↓16 +159
Views163.2K
Comments 237

Objective-C с нуля

Development for iOS
У любого желающего писать программы для продукции фирмы Apple в жизни наступает такой момент, когда ему приходиться изучить новый язык программирования — Objective-C. Когда-то этот счастливый момент постиг и меня. А чтобы лучше запомнить основные особенности этого языка, решил законспектировать свои мысли во время осмысления его документации, которыми и делюсь с вами.
Читать дальше →
Total votes 163: ↑155 and ↓8 +147
Views404.4K
Comments 61

Атаки на беспроводные сети. Часть 1

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

Читать дальше
Total votes 123: ↑118 and ↓5 +113
Views65.3K
Comments 98

Chef или как управлять тысячей серверов

Оверсан-Скалакси corporate blog
Suck on my chocolate salty balls (c) ChefДавайте каждый попробует ответить на вопрос: как установить apache на сервер? Этот вопрос порождает ещё десяток: какая ОС стоит на сервере, какую версию ставить, где лежат конфиги по-умолчанию и т.д. и т.п.

А теперь давайте попробуем ответить на вопрос: как установить apache на 1000 серверов? Тут, при стандартном подходе, вопросов возникнет ровно в 1000 раз больше. Часть из вас наверняка подумали, что можно написать скрипт на shell/perl/python/ruby, который будет обходить все сервера и устанавливать apache, другая часть подумала о distributed shell'ах (PDsh, dsh, etc), кто-то же подумал монтировать rootfs серверов по NFS.

В ряде случаев выше предложенные варианты решений удовлетворительны, но на практике я нигде не видел полностью гомогенных систем (зачастую, внутри компании можно встретить не только разные версии ОС, но и различные дистрибутивы. Также в России/СНГ очень распространена каша из FreeBSD/Linux в ядре проектов), так что вряд ли за адекватное время будет возможно написать скрипт, который установит и настроит apache на зоопарке в 1000 машин под CentOS, Debian, Ubuntu, FreeBSD всевозможных версий.

По моим наблюдениям, очень мало IT подразделений, даже очень крупных компаниий, используют в своей работе SCM (Software Configuration Management). В этом посте я постараюсь описать все преимущества использования Chef в IT инфраструктуре на простых примерах и больших масштабах.

Если же, после столь короткого вступления, вы не прониклись идеей Chef, да и времени читать длинный технический пост у вас нет, то рекомендую вам пролистать до конца и посмотреть как используем Chef мы, Engine Yard, 37signals и подумать, можете ли вы переложить на него часть своей работы.
Читать дальше →
Total votes 97: ↑91 and ↓6 +85
Views71.4K
Comments 26

Работа с базовой анимацией на iPhone

Development for iOS
Translation
Одна из привлекательных особенностей интерфейса Cocoa Touch — упрощенная работа с анимацией. В этом уроке я покажу пару простых примеров создания анимации для iPhone. Наша анимация будет выполнять две задачи: перемещать объект на экране и менять его размеры в зависимости от точки касания его пользователем.

Тем, кому еще не приходилось заниматься программированием на iPhone, полезно будет ознакомится с азами здесь, здесь и здесь. В качестве примера приведу также урок из серии Stanford iPhone Development (английский язык), где рассматривались основы анимации движения.

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



Что ж, приступим…
Читать дальше →
Total votes 45: ↑35 and ↓10 +25
Views1.8K
Comments 6

Индикатор загрузки файлов в веб-приложениях на Ruby on Rails

Ruby
Задача: показать как реализовать индикатор загрузки файла при различных конфигурациях Ruby on Rails:
Я разделю цикл статей на три части.
mongrel
mongrel(s)+nginx
mod_rails
часть I. mongrel
Total votes 24: ↑19 and ↓5 +14
Views2.4K
Comments 15

Закрепляем jQuery — 25 отличных советов

jQuery
Translation
Перевод отличной статейки. Думаю, будет полезна как новичкам, которые только приступили к использованию jQuery, так и тем, кто уже какое-то время с ним работает. А кого-то, возможно, заставит глянуть эту чудесную библиотечку. Многие советы имеют отношение не только к jQuery, но и к JavaScript в целом. Лично для меня была весьма и весьма познавательной, посему и захотелось донести это «до масс». Перевод не дословный, но передающий смысл и максимально адаптированный к русскому языку.

Далее все написано от имени автора оригинальной статьи.

Введение


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

Я не эксперт в jQuery. И даже не претендую, поэтому, если встретите ошибки, смело поправляйте меня и вносите предложения по улучшению (поправлять и присылать поправки нужно автору статьи, а не перевода — зам. пер.).

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

Содержание


  1. Загружайте фреймворк с Google Code
  2. Используйте «шпаргалку» (cheat sheet)
  3. Соединяйте все ваши скрипты и уменьшайте размер файла
  4. Используйте возможности Firebug для ведения логов
  5. Минимизируйте операции выборки в пользу кэширования
  6. Сводите манипуляции с DOM-деревом к минимуму
  7. Оборачивайте все в единый элемент, когда речь идет о любой вставке в DOM
  8. Используйте «id» вместо классов, где это возможно
  9. Задайте контекст своим селекторам
  10. Используйте последовательности вызовов методов с умом
  11. Научитесь правильно использовать анимацию
  12. Научитесь назначать и делегировать события
  13. Используйте классы для сохранения состояния
  14. Еще лучше — используйте встроенный в jQuery метод data() для сохранения состояния
  15. Пишите собственные селекторы
  16. Подготавливайте HTML и модифицируйте его, когда страница загружена
  17. Используйте «отложенную загрузку» (lazy loading) для определенного контента для выигрыша в общей скорости и преимуществ для SEO
  18. Используйте служебные функции jQuery
  19. Используйте «noconflict» для переименования глобального объекта «jquery», когда используете его с другими фреймворками
  20. Как узнать что картинки загружены?
  21. Всегда используйте последнюю версию
  22. Как проверить, что элемент существует?
  23. Добавляйте класс «JS» в элемент «html»
  24. Возвращайте «false» для отмены поведения по-умолчанию
  25. Короткая запись для события готовности документа


Rock'n'Roll!
Total votes 188: ↑182 and ↓6 +176
Views166K
Comments 109

DNS Amplification (DNS усиление)

Information Security
Не так давно столкнулся с проблемой (и ее решением) учитывая актуальность этой темы в последнее время, а также то, сколько людей сейчас страдают от этой беды, решил объединить информацию в одну статью. Может быть кому-то еще она будет полезной.
image

Начало



Пару недель назад я заметил странную активность, направленную на мой DNS-сервер. Сразу скажу, что использую шлюз на Linux, соответственно там установлен DNS-сервер bind. Активность заключалась в том, что на порт 53 (DNS) моего сервера сыпалось по несколько UDP пакетов в секунду с различных IP-адресов:

10:41:42.163334 IP 89.149.221.182.52264 > MY_IP.53: 22912+ NS?. (17)
10:41:42.163807 IP MY_IP.53 > 89.149.221.182.52264: 22912 Refused- 0/0/0 (17)
Читать дальше →
Total votes 179: ↑179 and ↓0 +179
Views81.4K
Comments 61

25 самых опасных ошибок в программировании

Website development
Translation
Всем привет.
Под катом — перевод статьи Джеффа Атвуда, в которой он приводит список 25 наиболее опасных ошибок в программировании от Common Weakness Enumeration со своими комментариями.

Сразу хочу сказать. Большинство ошибок, перечисленных там — общеизвестны и многим набили оскому. Несмотря на это, мы продолжаем вновь и вновь наступать на те же грабли. И я в том числе.
Однако, поехали
Total votes 101: ↑85 and ↓16 +69
Views2.2K
Comments 34

Ликбез по основам безопасности и криптографии

Information Security

Криптография



Три кита криптографии — хеш, шифрование симметричное, шифрование асимметричное (с открытым ключом). Основываются криптографические алгоритмы на сложности вычисления больших чисел, но подробнее об этом, если вас конкретно интересует «начинка», стоит читать не в общих обзорах, именуемых ликбезом. Здесь же содержится простое изложение, без лишних заморочек, то есть поверхностное.
Читать дальше →
Total votes 62: ↑57 and ↓5 +52
Views8.8K
Comments 34

Ajax-машина

Website development
Знали ли разработчики LiveScript из Netscape о том, какое влияние окажет их язык, позже переименованный в JavaScript, на лицо интернета — веб-сайты, или, может быть, они твердо на это рассчитывали, но факт остается фактом — JavaScript на сегодняшний день является одним из самых важных и распространенных языков в мире.

В то время, как на стороне сервера трудится разношерстная компания языков в лице php, perl, python, ruby, .net, java и многих других, на стороне клиента JavaScript существует буквально в гордом одиночестве. Фактически, из маленького дополнения к html, JavaScript превратился в полноправного члена банды «html+css+js», который, зачастую, уже командует остальными, сверкая золотым браслетом с надписью «ajax» и делая недовольное лицо $( ) при случае.
продолжить чтение
Total votes 143: ↑131.5 and ↓11.5 +120
Views3.7K
Comments 91

iPhone версия ROR сайта

Ruby
Как бы вы не относились к iPhone, вы не можете отрицать, что этот телефон захватил хороший кусок рынка мобильных устройств. И, по моему мнению, именно он дал возможность нормально пользоваться интернетом с телефона. Но хотя встроенный safari полноценен (спасибо, Webkit), многим хочется сделать специальную версию сайта для iPhone, выглядящую как настоящее айфоновское приложение (например, iweather.yandex.ru).
iweather  iphone.livecookbook.ru
Одной из наиболее популярных библиотек для создания адаптированной версии сайта является iUI.
Прочитать про iUI и ее интеграцию
Total votes 45: ↑37 and ↓8 +29
Views905
Comments 25

Information

Rating
5,859-th
Location
Los Angeles, California, США
Date of birth
Registered
Activity