Pull to refresh
0
@t3mplarread⁠-⁠only

User

Send message

Почему вам следует загрузить свой разум в суперкомпьютер?

Reading time8 min
Views121K


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

Отправиться к звёздам в виде «программного обеспечения» корабля? Стать подлинным Искусственным Интеллектом и творить виртуальные миры во всю силу воображения? Получить тело робота и наслаждаться жизнью неуязвимой машины? Всё возможно, даже если предел ваших мечтаний — небольшая «прокачка» мозга с целью повышения работоспособности. Осталось дождаться технологической сингулярности и заранее решить несколько интересных проблем.
Читать дальше →
Total votes 138: ↑108 and ↓30+78
Comments417

Legacy-фобия

Reading time7 min
Views39K
Коллеги, у меня для вас есть замечательная новость, мы получили чудесный проект, его несколько лет писали неизвестные нам разработчики, адрес которых мы вряд ли узнаем (чтобы «поделиться обратной связью»), писали очень давно и не известно под чем, и нам предстоит его поддерживать и развивать. Проект сейчас находится на пике своей производительности и мы скоро упремся, любые неаккуратные изменения могут его положить, но мы будем его развивать. Ура!

Согласитесь, странно звучит? Как бред больного на голову программиста. Кто же любит legacy? Это же всегда говнокод (ведь только мы сами пишем идеально), в нем полно багов (а мы сами пишем без ошибок), ужасные решения (ведь только мы сами выбираем подходящую архитектуру), и почти всегда его сложно читать (ведь только мы сами пишем понятно и красиво).
Читать дальше →
Total votes 77: ↑65 and ↓12+53
Comments27

Когда я говорил…

Reading time1 min
Views189K
Когда я* говорил, что нужно вкладывать в сообщество и User Groups, вы вкладывали в теннисные столы. Теперь у нас много средненьких теннисистов и нет коммюнити.

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

Когда я говорил вкладывать деньги в обучение специалистов, вы продолжали раздавать деньги за рекомендации. Теперь у нас никто не работает, а все рекомендуют.
Читать дальше →
Total votes 632: ↑586 and ↓46+540
Comments443

Социальная инженерия на практике: «физический доступ» на закрытую конференцию Кевина Митника

Reading time8 min
Views124K
«Физический доступ — это проникновение в здание интересующей вас компании. Мне это никогда не нравилось. Слишком рискованно. Пишу об этом — и меня уже пробивает холодный пот.» Кевин Митник, «Призрак в Сети. Мемуары величайшего хакера»



Еще в студенческое время, когда проводились олимпиады и конференции по информационной безопасности меня бесило то, что не принимались методы и работы, включающие в себя социальную инженерию (СИ). Как так! Ведь легендарный уже в те времена Митник говорит, что 99% взлома происходит с использованием СИ.

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

Под катом отрывок из книги Митника про физический доступ и история про проникновение на конференцию Митника в Москве 2013.
Читать дальше →
Total votes 237: ↑233 and ↓4+229
Comments81

Microsoft Research запустила браузерную игру-головоломку по обучению программированию

Reading time1 min
Views117K


Microsoft Research в своем блоге анонсировала запуск браузерной игры-головоломки Code Hunt по обучению программированию на C# и Java.
Игроку даются фрагменты кода с заранее неизвестной функциональностью. Цель игры заключается в том, чтобы на основе входных данных и ожидаемого результата, изменить код метода или функции так, чтобы выходные данные соответствовали этому ожидаемому результату.
Читать дальше →
Total votes 86: ↑75 and ↓11+64
Comments116

Бесплатный курс по AngularJS от Codeschool

Reading time1 min
Views47K


Всем привет!

Пару дней назад мне на почту пришло письмо от Codeschool.com, в котором очень красочно (как можно заметить из картинки в шапке поста) представлялся новый курс по AngularJS. Т.к. платной подписки у меня сейчас нет, я решил отложить просмотр до лучших времён, а сегодня случайно узнал, что курс оказывается «Sponsored by Google», а соответственно бесплатный. Закончив работу над первым уровнем, я поспешил проверить наличие заметки об этом чудном событии на Хабре, но с удивлением обнаружил, что никто до сих пор не поделился этой новостью. Значит придётся взять всё в свои руки.
Читать дальше →
Total votes 53: ↑48 and ↓5+43
Comments17

Как улучшить свой стиль программирования?

Reading time6 min
Views139K

Исповедь 1


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

Весь мой опыт программирования складывается из университетских работ и пары лет пребывания в различных компаниях. Критикующие меня люди неоднократно говорили мне, что в целом я разбираюсь в теме, так что я далеко не клинический случай, как можно было подумать. Однако, очевидно, я выработал совсем не те программистские привычки (как минимум, на взгляд работодателя) и мне нужно срочно изменить их. Везде, где бы я ни работал, мои решения, использующие иерархии мелких классов с делегированием поведения, признавались плохими. Говорят, будто так и надо писать, но это не так. Потому что всё это «как надо» может стоить мне работы.
Читать дальше →
Total votes 235: ↑202 and ↓33+169
Comments248

Использование принципов гештальт-психологии для роста конверсии сайтов. Часть 3: анализ выгод и затрат

Reading time3 min
Views12K
Часть 1
Часть 2
Часть 4
Часть 5

Эллиот Шмуклер (из LinkedIn и Wealthfront) однажды сказал, что успех сайта можно свести к трем основным рычагам:

1. Увеличение экспозиции (охватить большее количество людей)
2. Уменьшение трения
3. Увеличение стимула

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

Немного информации

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

Работа этого принципа имеет под собой крепкое основание, которое формировалось на протяжении всего периода существования человека, начиная с времен, когда неправильное соотнесение рисков и выгод почти гарантировано стоило жизни человеку, принявшему неверное решение. Поэтому, несмотря на то, что некоторые «затраты» могут казаться мелкими, например время и усилия на заполнение нескольких полей в форме заказа, их «психологическая стоимость» может повлиять на процесс принятия решений.
Читать дальше →
Total votes 25: ↑20 and ↓5+15
Comments4

TOX — Защищенный мессенджер добрался до Альфа версии (Для всех платформ)

Reading time1 min
Views91K


Недавно состоялось очень важное событие в сфере защищенных коммуникаций и мессенджеров — проект Tox.
Он поставил перед собой задачу заменить Skype и сейчас он добрался до Альфа версии.

Хочу обратить ваше внимание, альфа версия означает, что более 90% функций работают на всех OS одновременно:
— Аудио вызовы
— Видео вызовы
— Передача файлов
— TCP Relay
— DNS Name discovery
— Групповые чаты
Читать дальше →
Total votes 88: ↑83 and ↓5+78
Comments133

Функциональное и экономическое сравнение российских операторов предоставляющих облачные услуги. Версия 2.0

Reading time21 min
Views36K
Чуть больше года назад я опубликовал сравнение российских облачных операторов: статья многим понравилась и была полезна. Примерно через полгода я начал получать много отзывов и просьб о том, что неплохо было бы сделать новый обзор, актуализировав данные по ценам, добавив в запрос дополнительные сервисы и дополнив его новыми компаниями. В этот раз в сравнение вошли уже 34 компании (в прошлом году их было более, чем в 2 раза меньше), включая зарубежные сервисы Amazon и Rackspace, а сбор информации занял более двух месяцев.



Как и в прошлый раз была выбрана определенная обновленная конфигурация ресурсов и услуг, так же для разнообразия и по просьбам трудящихся, я добавил ряд новых вопросов. Поскольку я имел опыт работы в компании, оказывающей услуги комплексного ИТ-аутсорсинга, то и запрашиваемая конфигурация выбиралась исходя из наиболее востребованных услуг.
Читать дальше →
Total votes 67: ↑59 and ↓8+51
Comments58

Программируем квадрокоптер на Arduino (часть 1)

Reading time18 min
Views357K


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

У нас впереди:
  1. Базовые понятия (для начинающих коптероводов).
  2. PID-регуляторы с интерактивной web-демонстрацией работы на виртуальном квадрокоптере.
  3. Собственно программа для Arduino и настроечная программа на Qt.
  4. Опасные тесты квадрокоптера на веревке. Первые полёты.
  5. Крушение и потеря в поле. Автоматический поиск с воздуха средствами Qt и OpenCV.
  6. Окончательные успешные тесты. Подведение итогов. Куда дальше?

Материал объемный, но постараюсь уложиться в 2-3 статьи.
Сегодня нас ожидает: спойлер с видео, как наш квадрокоптер полетел; базовые понятия; PID-регуляторы и практика подбора их коэффициентов.
Читать дальше →
Total votes 107: ↑106 and ↓1+105
Comments96

ANGULARJS + REQUIREJS

Reading time5 min
Views55K

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

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

Для чего?

Работая с AngularJs вы обязательно задумаетесь о правильной организации кода. Конечно уже существуют отличные примеры решения проблемы. Например можно изучить теоретический пост Брайана Форда или практическое руководство Клиффа Мейерса. Я же поделюсь способом организации кода в приложениях AngularJs с использованием RequireJs.

Данный подход будет полезен, если вы хотите:

  • перестать беспокоиться о подключении скриптов в правильном порядке;
  • загружать javascript код асинхронно;
  • иметь возможность скомпилировать код в один минифицированный JS-файл;
Читать дальше →
Total votes 34: ↑34 and ↓0+34
Comments66

Использование в языке D сторонних библиотек

Reading time3 min
Views7.5K
На волне интереса к языку D решил и я внести свой вклад в его популяризацию. Статья не для новичков, а больше для тех кто рассматривает D как второй язык. Известно, что на заре своего развития, языки программирования имеют небогатый набор библиотек и это часто не позволяет начинать писать на них что-то серьёзное. Надеюсь статья поможет кому-нибудь переступить этот барьер.
Ниже будут рассмотрены возможности утилиты dub, а так же подключение сторонних пакетов и библиотек написанных на C/C++ на примере замечательной библиотеки libev.
Читать дальше →
Total votes 18: ↑17 and ↓1+16
Comments17

Дэн Саффер — Микровзаимодействия (Microinteractions). Конспект книги

Reading time21 min
Views39K
Microinteractions book cover«Детали — это не детали. Они создают дизайн.» — Чарльз Имз.

Успех цифровых продуктов определяется мелочами. Книга «Микровзаимодействия» Дэна Саффера научит вас проектировать эффективные функциональные элементы. А этот подробный конспект поможет лучше запомнить прочитанное или даже заменит англоязычный оригинал.

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

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

Читать дальше →
Total votes 49: ↑49 and ↓0+49
Comments2

FileAPI 2.0: Загрузка файлов на сервер год спустя

Reading time11 min
Views70K
FileAPI 2.0Привет Хабр! Примерно год назад я представил вашему вниманию первую версию open-source библиотеки FileAPI, предназначенную для работы с файлами на клиенте и последующей загрузки на сервер.

За это время был пройден долгий путь. Библиотека заработала 670+ звезд и 90+ форков. С помощью github-сообщества удалось исправить множество «детских» проблем и внести ряд улучшений. Было закрыто более 100 тасков, и благодаря Илье Лебедеву сделана загрузка файлов по частям. Сегодня я с гордостью хочу представить вам FileAPI 2.0.
Читать дальше →
Total votes 166: ↑157 and ↓9+148
Comments85

Пост вдохновения: лучшее время для старта своего дела

Reading time1 min
Views23K
Начиная новое дело, мы часто ловим себя на малодушной мысли: «что, если подождать, если не сейчас, а потом, когда закончится кризис, будет больше денег и свободного времени?».

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



А для состоявшихся бизнесменов вопрос: как вы пришли к собственному делу?
Total votes 43: ↑37 and ↓6+31
Comments5

Представлен гиковский смартфон OnePlus One

Reading time1 min
Views16K
Китайская OnePlus, корни которой растут из Oppo, 23 апреля в Пекине анонсировала Android-коммуникатор One, сделавший ставку на сочетание первосортного оборудования, высококлассного программного обеспечения и более чем доступной цены.



И сегодня на презентации раскрыли новые подробности о смартфоне.
Читать дальше →
Total votes 23: ↑15 and ↓8+7
Comments28

Что такое Томита-парсер, как Яндекс с его помощью понимает естественный язык, и как вы с его помощью сможете извлекать факты из текстов

Reading time6 min
Views88K
Мечта о том, чтобы машина понимала человеческий язык, завладела умами еще когда компьютеры были большими, а их производительность – маленькой. Главная проблема на пути к этому заключается в том, что грамматика и семантика естественных языков слабо поддаются формализации. Кроме того, от языков программирования их отличает присутствие многозначности.

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

image

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

Называется технология Томита-парсер, и по большому счету, любой желающий может воспользоваться ей уже сейчас: бинарные файлы доступны для скачивания. Однако прежде чем пользоваться технологией, нужно научиться ее правильно готовить.
Читать дальше →
Total votes 154: ↑148 and ↓6+142
Comments78

Кому доверить свой бизнес? Часть 1 — бухгалтерия

Reading time11 min
Views74K
Московский рынок бизнес-услуг крайне пышен и богат. Приходится внимательно изучать его флору и фауну, ведь наша сервисная компания — не единственный способ получить хорошее обслуживание. Недавно мы провели небольшое исследование, нагуглили популярные варианты бухгалтерского и юридического сопровождения, изучили предложения секретарей и бизнес-ассистентов. Обычно маркетологи хранят результаты изысканий в секрете, но мы решили о них рассказать. Хочется верить, что это сэкономит предпринимателям пару часов времени на поисках варианта обслуживания, подходящего для их компании. Начнем с бухгалтерии.



Мы исследовали варианты бухгалтерского обслуживания, которые подойдут бизнесам от малого до среднего. Получилось всего 7 категорий, каждой из которых мы постарались дать объективную характеристику, определить ценовую вилку и выделить наиболее заметные (читай, разрекламированные) предложения.
Читать дальше →
Total votes 35: ↑31 and ↓4+27
Comments36

Используем nginx, docker, skydns и skydock для обновления кода на лету (zero-downtime deployment)

Reading time5 min
Views24K

Инструменты, которые мы будем использовать


Docker


Docker — простая и элегантная библиотека для создания легковесных изолированных друг от друга виртуальных контейнеров, в которых можно исполнять любой код. Совершенно не требователен к ресурсам, минимальный overhead.

Собрав контейнер один раз, его можно многократно использовать.

Простой пример — это БД Redis. Если нам необходимо несколько серверов Redis на одном компьютере, при обычном подходе нам придется изменять конфигурационные файлы в /etc/redis и менять файлы в /etc/init.d. Можно написать bash скрипт, но это не делает процесс легче.
Читать дальше →
Total votes 39: ↑37 and ↓2+35
Comments14

Information

Rating
Does not participate
Registered
Activity