Китай представил собственную национальную операционную систему

Китайская национальная операционная система China Operating System (СOS) призвана потеснить лидеров рынка и iOS

В Китае была представлена новая, одобренная правительством, мобильная операционная система. Операционка получила название China Operating System, или COS, платформа основана на Linux и разработана Китайской академией наук в сотрудничестве с Liantong Network Communications Technology, расположенной в Шанхае. Эта ОС с открытым исходным кодом (базируется на открытом ядре) предназначена разрушить монополию Apple и Google на китайском рынке мобильной связи.

Китайские разработчики утверждают, что новая система надежнее и безопаснее, чем Android, и более гибкая, по сравнению с iOS. Предполагается, что она станет основным конкурентом этим продуктам – для начала, на местном рынке. Читать дальше →

Межпланетный зонд «Розетта», направленный для исследования кометы 67P/CG Чурюмова-Герасименко, вышел из гибернации спустя 2,5 года



Сегодня стало известно, что один из наиболее интересных проектов Европейского космического агентства, зонд «Розетта», «проснулся» без всяких проблем, спустя 2,5 года после входа в режим гибернации. Все дело в том, что еще в 2011 году зонд удалился от Земли на расстояние 549 миллионов километров от Солнца, и на таком расстоянии солнечные батареи устройства просто не могли поставлять достаточное количество энергии в аккумуляторы устройства.

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

Мозг обрабатывает изображения за 13 миллисекунд



Нейробиологи из Массачусетского технологического института установили минимальное время, в течение которого человеку нужно показывать изображение, чтобы мозг сумел его обработать. Показатель равен 13 миллисекундам. Это значительно меньше, чем предполагалось. Раньше учёные оценивали время обработки информации примерно в 100 миллисекунд.

Во время эксперимента испытуемым предлагалось сигнализировать, если они увидят определённый тип картинки, такой как «пикник» или «улыбающаяся пара», при этом им демонстрировали серию из 6 или 12 изображений с промежутком 13-80 миллисекунд. На иллюстрации выше показан образец такой последовательности кадров.
Читать дальше →

Неподтвержденная транзакция, или Возвращаем криптовалюту из небытия

Волею судеб довелось мне иметь дело с криптовалютами. Не то что бы плотно работаю с ними, но иногда то отправлю монетки, то получу. Скажем так, понемногу прощупываю новую сферу изнутри.

И вот однажды беда приключилась. Отослал я криптомонетки, а до получателя они не дошли. Собственно, пост о том, как средства возвращались. Ну и размышления и советы по сложившейся ситуации на десерт. Сразу отмечу, что нижесказанное применимо не к какой-то конкретной валюте, а к большинству форков (если не ко всем). Читать дальше →

Кружок по программированию для школьников

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

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

Зачем вам вводить пароль в sudo?

Если

  • Речь идёт о личном рабочем окружении. 1
  • Вы недостаточно параноик, чтобы довести дело до конца:
    • Все программы работают от вашего пользователя. 2
    • /home монтируется без noexec. Хотя это почти не помогает и очень не удобно в большинстве случаев, но если у вас так — у вас, как у неплохого параноика, есть перспектива далеко зайти этим путём.
  • Вы регулярно администрируете систему из-под своего пользователя (с помощью того же sudo). 3

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

Собственно, не спрашивающий пароля sudo не мешает защите от опечаток (если, конечно, вы не имеете неприятного рефлекса сразу перепечатать эту несработавшую конструкцию с sudo), также обычно не приучен самостоятельно использовать sudo, так что единственное, от чего «уточнение» пароля помогает — злостные вирусы и злоумышленники, ставящие своей целью установить всю вашу систему на колени.
Читать дальше →

OS X: настраиваем дисковые квоты локальным пользователям

ВведениеФайловая система (ФС) HFS+ на OS X поддерживает квотирование пользователей и групп по ID на уровне томов. Соответствующие файлы .quota.user и .quota.group располагаются в корневом каталоге. В каждом из них содержится заголовок, идущая следом хэш-таблица с определением лимитов, а так же потребляемые значения на ID пользователя или группы. Читать дальше →

[Перевод] Простой интерпретатор с нуля на Python #4



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

СодержаниеПростой интерпретатор с нуля на Python #1
Простой интерпретатор с нуля на Python #2
Простой интерпретатор с нуля на Python #3
Простой интерпретатор с нуля на #4

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

Петиция президенту Бразилии о предоставлении убежища для Эдварда Сноудена

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

[Перевод] Оптимизация беспроводного подключения или iwconfig может всё

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


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

Пожалуйста, при чтении данного руководства держите под рукой открытую справку (страничку man) по
iwconfig
. Я опишу только одиночные примеры различных команд. Справка вам даст намного больше детализированной информации относительно того, как оптимально всё настроить.

Первое и наиболее важное — понимание, что может привести к появлению проблем.
Читать дальше →

Дайджест новостей из мира мобильной разработки за последнюю неделю №37 (13-19 января 2014)

В нашей еженедельной подборке сегодня задания Яндекса для разработчиков iOS, третий набор в Университет Chartboost для инди-разработчиков и российские реалии этого самого мобильного геймдева, бесплатный MobileDevHQ и Katana Analytics Engine, определяющий Социальную Ценность каждого пользователя. Хороших вам приложений!

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

Заготовка для схемы данных с тестами, CI, без преферанса

Реляционная базы данных — зверь сравнительно непознанный, и имеет репутацию генератора проблем. Не то, чтобы проблем не существовало, но как и с другими инструментами, чаще всего сложности возникают от неумения их (РСУБД) готовить.
Готовить с одной статьи не выучиться, но одно блюдо сдюжим.

Я постарался выделить скелет, набор скриптов, на базе которого можно делать свои схемы данных PostgreSQL и тестировать их при помощи pgTAP: github.com/C-Pro/pg_skeleton
И в качестве приятного бонуса я прикрутил это дело к Travis, чтобы у вас ещё и CI было уже на старте :)


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

[Перевод] Итоги ушедшего года: Темная энергия стала еще более запутанной

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

[Из песочницы] Небольшое введение в Scalatest

Scalatest — это фреймворк для тестирования приложений, поддерживающий разные стили написания тестов и легко интегрирующийся с другими инструментами для JVM, включая IDE и maven.
Читать дальше →

Гибридные диски SSHD — что за птица?



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

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

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

[Из песочницы] Изменяй, но проверяй: роль веб-аналитики в проектировании интерфейсов

Не так давно я посетил одно мероприятие, где местные интернет-бизнесмены делились своим опытом и пережевываниями относительно своих проектов в интернет.

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

Семен занимал одну из самых важных должностей в этом проекте и мог влиять на многие аспекты бизнеса. Вопрос, с которым он обратился к аудитории звучал примерно так: «Друзья, у нас довольно успешный интернет-магазин игрушек, но мне не нравится его дизайн. Например вот эта штука, или эта. Я бы хотел выслушать ваше мнение, что нам можно изменить или улучшить?»

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

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

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

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

[Из песочницы] Перевод статьи Хенрика Книберга «ATDD from Trenches» (ATDD с передовой)

Оригинал: www.infoq.com/articles/atdd-from-the-trenches

ATDD с передовой

через приемочное тестирование для начинающих
image

Если вы когда-нибудь бывали в такой ситуации:

Тогда эта статья для вас — конкретный пример того, как начать разработку через приемочные тесты (Acceptance-test driven development) в действующих проектах с легаси кодом. В ней описан один из способов решения проблемы технического долга.
Это пример из реального проекта, со всеми изъянами и недостатками, а не отполированное упражнение из книги. Так что надевайте свои берцы. Я буду использовать и JUnit, без всяких модных сторонних библиотек (которыми, как правило, злоупотребляют).
Предупреждение: Я не утверждаю, что это единственный Правильный Путь, существует много других “стилей” ATDD. Так же в этой статье не так много чего-то нового и инновационного, здесь просто описаны хорошо себя зарекомендовавшие подходы и опыт из первых рук.
Читать дальше →

Cуществование DOU.ua в рамках украинского правового поля не представляется возможным

На главной странице сообщества украинских разработчиков DOU.ua сейчас висит следующий текст:
Cуществование DOU.ua в рамках украинского правового поля не представляется возможным. Хотите — забирайте.

Сервер: 178.79.140.30
Логин/пароль: root/bimba

Макс
Такой ответ на принятие Верховной Радой Украины ряда «законов про диктатуру».
Внутренние страницы сайта по-прежнему доступны.

Страница обсуждения Что с главной страницей DOU? на форуме сообщества.
Комментарий создателя сайта Макса Ищенко в твиттере: «Без комментариев».

Начинаются курсы «Универсариума»

Хочется напомнить всем, кому интересно развитие интернет-образования, что с завтрашнего дня, 20 января, начинаются курсы проекта «Универсариум»: Поиск и выбор бизнес-идеи, Химия – полезная и бесполезная, Графы и комбинаторика: от жемчужин теории к современным приложениям.

На хабре уже обсуждали этот проект. «Универсариум», наряду с проектом Hexlet, — одна из первых российских MOOC-платформ. Вот что говорят о себе авторы:

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

[Из песочницы] Введение в оптимизацию. Имитация отжига

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

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

image

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

Почему не нужно использовать RJS

У jQuery есть встроенная фича — если сервер ответит с content-type=text/ библиотека выполнит ответ автоматически.

<code class="">jQuery.ajaxSetup({
	accepts: {
		script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"
	},
	contents: {
		script: /(?:|ecma)script/
	},
	converters: {
		"text script": function( text ) {
			jQuery.globalEval( text );
			return text;
		}
	}
}); 

</code>

Поэтому в рельсах довольно распространена тактика «ответь строчкой Javascriptа вместо правильного JSON, который придется обрабатывать».

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

[Из песочницы] Зашифрованное взаимодействие между клиентом и сервером на Laravel 4

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

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

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

В этой статье я расскажу о том, как организовать зашифрованное взаимодействие между клиентом и сервером. В качестве серверной площадки будет приложение на движке Laravel 4.1 (последняя версия на момент публикации). Предполагается, что в качестве клиента будет выступать приложение, написанное на C#, но в этой статье я не буду описывать написание клиента. Вместо этого могу порекомендовать статью с CodeProject'а, в которой приводится пример использования криптографии на C#: Encrypting Communication between C# and PHP. Собственно эта статья и стала отправной точкой для моих изысканий.
Читать дальше →

Панорама Луны от «Чанъе 3» и выход из строя главной цветной камеры посадочного модуля



С Луны, несмотря на выходные, поступают новости от китайских аппаратов, «Чанье 3» (посадочная станция) и «Юйту» (сам луноход). Так вот, что касается посадочной станции, то ее главная цветная камера вышла из строя, не выдержав лунной ночи. Собственно, китайские ученые ожидали подобного развития событий, так что говорить о каком-либо ЧП не приходится. Тем не менее, фотографии, подобные присланными ранее, посадочная станция уже делать не сможет.

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

Lightpack. Unboxing и установка

Привет, %username%!

Буквально вчера забрал посылку с почты в которой находился долгожданный Lightpack, который был куплен на kickstarter за $70 (это с учетом доставки). Ожидалось, что он будет мне доставлен в июле прошлого года, однако, его производство, тестирование и прочие процессы заняли больше времени и он пришел мне лишь вчера. Что ж, не будем в чем-то винить авторов проекта ибо мне не особо горело его поставить прям вот сейчас и я мог подождать. А если время требуется для доработки продукта и качество будет отличным — то можно и подождать.
Посмотреть видео

Сюрприз от неизвестного: доверие к расширениям Chrome

16 января Amit Agarwal, разработчик расширения Add to Feedly опубликовал заметку в блоге, в которой признал, что его расширение было продано неизвестному за сумму в несколько тысяч долларов («предложение из четырёх цифр»).

Add to Feedly — это расширение, которое добавляло удобную кнопку подписки на RSS канал текущей страницы через сервис Feedly (популярная альтернатива почившему Google Reader). Расширение было сделано Амитом за час и набрало 30 000 пользователей в магазине Chrome. Расширение было продано, деньги получены через PayPal, и Амит передал права на расширение другому аккаунту Google.

Через месяц новые владельцы отправили обновление в магазин Chrome. Никаких новых фич, никаких исправлений багов. Только добавление рекламы на все страницы, которые просматривает пользователь. Все ссылки на каждом сайте превратились в реферальные, по которым выкидывалась реклама. Кроме того, новые хозяева получили возможность отслеживать все переходы пользователей. Проще говоря, автообновление Chrome загрузило вредоносный код напрямую в 30 000 аккаунтов, а синхронизация Chrome Sync распространила это по каждому подключённому компьютеру с установленными , Chromium или Chrome OS.
Читать дальше →

Облако.Mail.Ru + EncFS для резервного копирования домашнего фотоархива

In Clouds © Fotolia/dvarg, 18 KB В конце декабря Mail.Ru вновь (впервые с 1997 года ;) выпустила революционный продукт — облачное хранилище, первым активным пользователям которого бесплатно выдают один терабайт. 1 Тб — по меркам начала 2014-го года это совершенно эпический объем, по крайней мере в масштабе национальной отрасли ИТ. Ради справедливости можно отметить, что некоторые китайские компании дают и больше, однако практическая применимость таких предложений для большинства читателей Хабрахабра выглядит сомнительной.

Небольшим изъяном актуальной версии Облака по мнению многих моих друзей и коллег выглядит то, что Облако (по крайней мере официально) не поддерживает WebDAV. Это не позволяет «из коробки» использовать шифрование с помощью простых и популярных в народе средств вроде Boxcryptor. Поскольку сам по себе Boxcryptor — это всего лишь удобная графическая надстройка над encfs+fuse, я решил для себя и для друзей составить короткую и простую инструкцию, как эффективно шифровать данные бэкапов в Облаке.Mail.Ru

Постановка задачи

Я продвинутый фотолюбитель. Мой фотоархив насчитывает примерно 600Гб данных, причем примерно половина из них — это выполненные в высоком разрешении сканы родительских слайдов, начиная с 1957 года. Почти все хранится в NEF+CR2 (это raw-форматы Canon и Nikon), каждая фотокарточка занимает от 15 до 60 мб. Иными словами, бесплатный терабайт от Flickr меня совсем не устраивал в частности из-за невозможности хранить необработанные исходники фото. Начиная с 2008-го года, резервирование архива выглядит так: раз в году я покупаю современный жесткий диск стоимостью 100 евро и копирую на него все содержимое предыдущего диска, а старый HDD отправляется «на пенсию» в медиа-сервер, который включается 3-4 раза в год. У этого подхода много достоинств (несмотря на смертность жестких дисков, данные еще ни разу не пропадали), но есть огромный недостаток — физическое расположение хранилища.

Я много путешествую по миру, и за последние 10 лет суммарно провел в России (где находится медиа-сервер и стопка «отставных» HDD) не более 4-х лет. Иногда случаются казусы, связанные с потерей внешних винчестеров — так я потерял значительную часть архива фотографий 2012-го года, которые банально не довез до своего дома на родине. На словах решение простое — «go cloud», а вот на деле тарифы всех мало-мальски удобных сервисов, позволявших заархивировать 1Тб оригиналов фотоизображений, были долгое время прямо-таки заоблачными.

И вот 20 декабря 2013 года нам было объявлено о том, что все желающие обладатели ящика на mail.ru могут получить в подарок 1 терабайт. Бесплатно. Для любых файлов. Но только у многих возникают вопросы, как хранить свои данные в облаке в зашифрованном виде.

Пошаговое решение для Mac и высокоуровневое описание для Windows

Попытка слива клиентских баз пользователей BillManager

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



Судя по всему, кто-то пытается набрать доступы к установленным у хостеров разного масштаба BillManager и получить доступы к коммерческой информации (возможно, посливать базы). А может, просто напакостить в расчёте на то, что не все делают бэкапы. Читать дальше →

[Из песочницы] Netavis Observer — ПО IP-видеонаблюдения на базе Linux. Установка, настройка и небольшой взлом

Netavis Observer — программный продукт для организации видеонаблюдения с помощью IP-камер на базе Linux-сервера.

Netavis Observer написан на , так же используются такие продукты как Apache Tomcat, Webmin, Munin, Mysql.
Существует два варианта Netavis Observer — Bundled(поставляется в виде установочного iso-образа на базе Centos5 или Centos6) и Unbundled — набора rpm-пакетов для самостоятельной установки на сервер под управлением Centos или RedHat.
основные функциональные возможности и особенности:— Поддержка популярных IP-камер и видеосерверов, таких как AXIS, ArecontVision, D-link, ACTi, Sanyo, Samsung и других (полный список можно посмотреть на сайте Netavis).
— Поддержка разделения прав доступа к камерам, просмотру архива, экспорту видео, управлению PTZ (управление поворотными камерами) с возможностью создания групп и пользователей под конкретную ситуацию(только просмотр онлайн-видео, просмотр онлайн-видео и архива, но без права экспорта видеоматериала из архива и т.д.)
— Наличие клиента под , IPhone/IPad.
— Возможность работать через браузер (требуется установка JAVA).
— Возможность создания кластера для работы с большим количеством камер.
— Поддержка Active Directory (в редакции Enterprise).
— Поддержка Анализа видео ( iCAT — обнаружение движения с вариациями, обнаружение саботажа, обнаружение удаленного объекта, маска конфиденциальности).
— Настройка качества отображения видео онлайн и при записи в архив.
— Настройка расположения камер и формирование пользовательских наборов с возможностью копирования этих наборов другим пользователям.
— Возможность ограничения полосы пропускания для камер и клиентов при просмотре живого видео и архива.
— Экспорт архива в AVI или SAFE (создается исполняемый файл .EXE c примитивным плеером и собственно видео, можно экспортировать сразу нужное количество камер за один промежуток времени, будет создан один EXE-шник).
— Возможность запуска графической оболочки непосредственно на сервере — запускается сессия LXDE, после чего запускается клиент Netavis.

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

[Из песочницы] Монады в Scala

На Хабре много статей по монады с примерами для Haskell (http://habrahabr.ru/post/183150, http://habrahabr.ru/post/127556), но не так много статей, которые описывают, что такое монады с примерами на Scala. По сколько большинство разработчиков на Scala пришли из мира объектно ориентированного программирования, то для них, по началу, сложно понять что такое монады и для чего они нужны, эта статья как раз для таких разработчиков. В этой статье я хочу показать, что это такое и навести примеры использования монады Option, в следующих статьях будут описаны монады Try и Future.
Читать дальше →

dSort — раскладываем все по полочкам


Доброго времени суток, Хабравчане! В этой статье я хочу рассказать о небольшой утилите, написанной мной, которая может пригодится для разбора завалов на рабочем столе. Все подробности – под катом.
Читать дальше →

[Перевод] Абстрактно ориентированный программист

Начну с истории о программистах, которую мне приходилось слышать неоднократно.

Я попросил Джо написать простенькую программу, которая делает <xyz>. Работы там было на несколько часов, в худшем случае на день. Ему понадобилось несколько дней, за который он написал гораздо более сложный фреймворк, чем требовалось. Почему он снова так намудрил?
Возможно, дело в том, что Джо – Абстрактно ориентированный программист (АОП). Читать дальше →

[Перевод] Трюки с CSS-анимациями: мгновенные изменения, отрицательные задержки, анимация transform-origin и другое

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

Быстрое изменение состояния посреди анимации
Обычно анимации используются для того, чтобы плавно менять свойства элементов со временем. Однако изменения могут также быть практически мгновенными. Для этого надо задать два ключевых кадра с очень маленьким интервалом, например в 0.001%:

<code class="css">@keyframes toggleOpacity {
  50% { opacity: 1; } /* Turn off */
  50.001% { opacity: 0.4; }

  /* Keep off state for a short period */

  52.999% { opacity: 0.4; } /* Turn back on */
  53% { opacity: 1; }
}
</code>
Вот как я использовал этот приём для имитации мигающей неоновой вывески с помощью прозрачности и свойства
text-shadow
:


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

[Перевод] Сетевое программирование для разработчиков игр. Часть 2: прием и передача пакетов данных

От переводчика: Это перевод второй статьи из цикла «Networking for game programmers». Мне очень нравится весь цикл статей, плюс всегда хотелось попробовать себя в качестве переводчика. Возможно, опытным разработчикам статья покажется слишком очевидной, но, как мне кажется, польза от нее в любом случае будет.
Первая статья — http://habrahabr.ru/post/209144/



Прием и передача пакетов данных

Введение
Привет, меня зовут Гленн Фидлер и я приветствую вас в своей второй статье из цикла “Сетевое для разработчиков игр”.


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

А сейчас я собираюсь рассказать вам, как на практике использовать UDP для отправки и приема пакетов.

BSD сокеты
В большинстве современных ОС имеется какая-нибудь реализация сокетов, основанная на BSD сокетах (сокетах Беркли).

Сокеты BSD оперируют простыми функциями, такими, как “socket”, “bind”, “sendto” и “recvfrom”. Конечно, вы можете обращаться к этим функциями напрямую, но в таком случае ваш код будет зависим от платформы, так как их реализации в разных ОС могут немного отличаться.

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

[Из песочницы] Уравнение Кеплера: перезагрузка


Добрый день! Недавно здесь проскакивал пост про уравнение Кеплера и я был слегка поражен тем, что ничего не написано про то, каким образом оно вообще выводится и откуда, как исторически, так и математически. Как известно, Кеплер вывел его из наблюдения движения планет, а Ландау и Лифшиц вывели движение планет из…
тут и начнем.

Создание 3D-иллюстраций — прототип системы



Привет, Хабр! В институте у нас был курс 'Начертательная геометрия' из которого мы узнали, какие интересные вещи можно делать обычным циркулем и линейкой. С тех пор не покидала идея сделать что-нибудь на компьютере в духе объемных чертежных построений.

Не так давно с удивлением обнаружил, что мой ноутбук (далеко не самый новый и мощный) поддерживает стандарт WebGL. В результате некоторых усилий получился прототип системы создания и публикации 3D-иллюстраций.

http://ewclid.headfire.ru/

Интересная возможность, которую удалось реализовать — просмотр иллюстраций на 3D-телевизорах в стереорежиме без каких-либо драйверов и плагинов. Вывод осуществляется прямо из браузера в формате Side-By-Side.

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

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

[Из песочницы] Быстрый вывод графиков в Матлабе

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

Как математика помогает Яндексу зарабатывать?

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


Видео лекции
Конспект лекции

Вся правда о неймспейсах в yii1

Введение

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

Вот уже как 3 года я работаю над одним очень крупным проектом в megaflowers. И, в какой-то момент разработки, когда классов стало слишком много, а их названия стали вида
ContentDiscount
,
ItemDiscount
, я понял, что надо с этим что-то делать, и решил ввести неймспейсы в наш проект. Ну, как говорится, гулять так гулять если вводить, то везде сразу, а не там чуть-чуть и там, а в остальных местах нет.
Читать дальше →

[Из песочницы] Проблемы прогнозирования финансовых рынков

image

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

[Перевод] Массивы, срезы (и строки): Механизм 'вставки'

Вступление

Одна из самых общих возможностей процедурных языков программирования, это концепция массива. Массивы могут показаться чем-то простым, но с другой стороны, перед их добавлением в язык требуется решить несколько вопросов, таких как:
  • Фиксированный или переменный размер?
  • Размер это часть типа?
  • Что из себя будут представлеть многомерные массивы?
  • Что из себя представляем понятие пустого массива?
Ответы на эти вопросы определят массивы как простую возможность языка, или как основную часть его дизайна.
Читать дальше →

Основы Scala. 5 часов поедания мозгов

Добрый день, уважаемое хабрасообщество!image

В конце ноября 2013 года мы с коллегой устроили встречу, на которой провели сеанс «интенсивного введения Scala в мозг добровольцев».

Выкладываю на суд общественности наше творчество и краткое описание «эксперимента».
Читать дальше →

[Перевод] Куки-бомбы или как положить интернеты

Знаете ли вы что субдомен sub.host.com может ставить куки для *.host.com? Наверняка да.
А как много он может их поставить? Очень много.
А сколько браузер будет отправлять их впоследствии? Все!

А что получится если «заспамить» главный домен своими куки бомбами? На всей системе .host.com все запросы будут иметь супер длинный хедер Cookies добавленный браузером и эти запросы не будут обрабатываться сервером из за слишком большого размера.

Попросту говоря после посещения специальной страницы вы не сможете заходить например на такие сайты: *.wordpress.com, *.github.io, ваша «экосистема» Гугла сломается если я заспамлю .googleusercontent, а также не забываем про Content Delivery Network — заспамив главный домен network_name.net, все JS и стили хранящиеся там перестанут подгружаться!

Более того, вы можете «заспамить» конкретный /dontlike путь, например пост конкурента на блогспоте/тумблере/вордпрессе.

Предлагаю обсудить как исправить эту проблему.

Небольшая игра «Крестики-нолики» на JavaScript


Это пост про небольшую игру «Крестики-нолики», которая была написана в целях пополнения опыта программирования на JS. Здесь применяются canvas и DojoBase. Библиотека используется для работы с событиями и для нахождения элементов по id(это очень удобно). Сanvas используется для отрисовки игрового поля.
И сами «Крестики-нолики».
Читать дальше →

Создание надёжного iSCSI-хранилища на Linux, часть 1

Прелюдия

Сегодня я расскажу вам как я создавал бюджетное отказоустойчивое iSCSI хранилище из двух серверов на базе Linux для обслуживания нужд кластера VMWare vSphere. Были похожие статьи (например), но мой подход несколько отличается, да и решения (тот же heartbeat и iscsitarget), используемые там, уже устарели.

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

Вводные

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

В качестве гипервизора был выбран vSphere, как наиболее устоявшийся и законченый продукт, а в качестве протокола — iSCSI, как не требующий дополнительных финансовых вливаний в виде коммутаторов FC или FCoE. С опенсурсными SAS таргетами довольно туго, если не сказать хуже, так что этот вариант тоже был отвергнут.

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

В качестве софта было выбрано:
  • Debian Wheezy + LTS ядро 3.10
  • iSCSI-таргет SCST
  • DRBD для репликации
  • Pacemaker для управления ресурсами кластера и мониторинга
  • Подсистема ядра DM-Crypt для шифрования (инструкции AES-NI в процессоре нам очень помогут)
В итоге, в недолгих муках была рождена такая несложная схема:
imageЧитать дальше →

[Перевод] Прогнозы для Linux и Open source на 2014 год от Джека Уоллена. А с какими из них согласны вы?

Здравствуйте, Хабровчане!
Первым постом здесь размещу свой перевод статьи постоянного обозревателя Techrepublic и Linux.com Джека Уоллена. Она мне показалась любопытной и содержащей довольно много пищи для обсуждения.

Буду рад конструктивным комментариям профессионалов и энтузиастов по тем пунктам, которые описаны ниже: почему согласны или не согласны с утверждениями. В том числе в разрезе российской специфики, особенно по пунктам 9 и 10.


2013 год был знаменателен для open-source'а — он пережил много взлетов и совсем мало падений. Однако я верю, что для Linux, получившего крепкий фундамент в 2013-м, этот год станет еще лучше.

Многие из вас, возможно, уже потирают руки, ожидая очередного предсказания о всеобщем господстве Linux от его адепта. Но у меня на самом деле накопилось довольно много причин для такого громкого предсказания. Ниже я опишу 10 причин, почему я верю, что 2014-й будет знаковым для open-source'а вообще и для Linux'а в частности:

1. Open-source будет доминировать в корпоративном сегменте
Катализатором этого станет продолжающееся распространение мощной ОС Red Hat Enterprise Linux 6.5, но перспективы лежат гораздо дальше. Поскольку большие корпорации имеют высокие запросы к безопасности и гибкости своих данных, для их удовлетворения они будут переходить на open-source (особенно Linux). Большие компании также более требовательны в плане представления своих данных и совместного доступа к ним, поэтому open-source, по сути, остается единственным вариантом, который они могут избрать.
Читать дальше →

Обзор Kobo Aura HD — самого большого черно-белого ридера с подсветкой

Сравнительно новая модель от канадского производителя могла легко бы затеряться среди большого числа уже представленных на рынке электронных книг c подсветкой, если бы не то обстоятельство, что данный экземпляр обладает нестандартным размером дисплея: 6,8 дюйма (против классических 6-ти у большинства современных устройств подобного типа). В данном обзоре рассмотрит «читалку» и расскажем, какие впечатления сложились у нас после нескольких дней сравнений с лидерами рынка. (В конце текста представлен лаконичный ответ на вопрос: есть ли преимущества у книги Kobo над американскими Kindle и Nook.)


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

Японское космическое агентство JAXA собирается охотиться за космическим мусором при помощи сети уже в феврале



Проблема космического мусора — разного рода остатков космических аппаратов, устройств, «мертвых» спутников, находящихся на земной орбите, становится актуальнее год от года. В самом деле, ведь даже относительно небольшой объект способен нанести значительные нарушения работающим ныне космическим кораблям и спутникам. Нечто подобное показали в фильме «Гравитация», хотя и несколько утрированно. Шутка ли, на орбите сейчас находится уже около 5,5 тысяч тонн «мусора».

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

Первый опыт работы с облаком Mail.ru

В конце прошлого года на Хабре прошла информация, что Mail.ru бесплатно дает терабайт в облаке. Как водится, в праздничные дни эта информация не нашла применения, но приближение 20 января, после которого бесплатная раздача терабайта должна прекратиться, привело к тому, что несколько дней назад я приступил к эксперименту.
Читать дальше →

О логгировании в Node.js

Для начала повторю то, что каждый разработчик должен знать об этом — надо предохраняться.
Читать дальше →

Не стоит прыгать по граблям

«Проект без рисков – удел неудачников. Риски и выгода всегда ходят рука об руку» © Том Демарко, Тимоти Листер.

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

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

image

Таким большим оптимистам можно дальше и не читать. Для остальных продолжу.

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

Оговорюсь сразу, что самый значимый риск в разработке ПО – неадекватный РП. Но сейчас не об этом.
Вот три таких коллекции

[Перевод] Изучаем внутреннюю кухню ядра Linux с помощью /proc для быстрой диагностики и решения проблем

Данная статья касается современных линуксов. Например, RHEL6 с ядрами 2.6.3х — подойдёт, а вот RHEL5 с ядрами 2.6.18 (кстати, наиболее популярный в продакшне) — увы, нет. И ещё — здесь не будет описания ядерных отладчиков или скриптов SytemTap; только старые-добрые простые команды вида «cat /proc/PID/xyz» в отношении некоторых полезных узлов файловой системы /proc.

Диагностика «тормозящего» процесса

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

К счастью, система работает под управлением OEL6, т.е. на достаточно свежем ядре (а именно — 2.6.39 UEK2)

Итак, приступим к диагностике.
Подробности

[Из песочницы] Реалии мобильного геймдева


Последние несколько лет я руковожу небольшой геймдев студией, и на протяжении всего это времени ко мне периодически обращаются люди не из индустрии, которые «хотят дать денег» и получить себе проект. При этом представление этих людей о том, что такое игровая индустрия, скажем так, далеко от реального. Это статья — моя попытка рассказать о том, что сделать игру стоит больше, чем 200$, сделать поярче и заработать миллион — это не бизнес-план, и вообще, геймдев — это высокорискованный бизнес, а не принтер для денег.
Читать дальше →

Атака с помощью вашего сервера времени: NTP amplification attack (CVE-2013-5211)

13 января Компьютерная команда экстренной готовности США (US-CERT) выпустила предупреждение о новом способе DDoS-атак. Зараженные компьютеры отправляют запрос monlist с поддельным IP-адресом отправителя к NTP-серверу. Запрос monlist возвращает список из последних 600 клиентов ntpd. Таким образом, небольшим запросом от зараженного компьютера к жертве отправляется большой поток UDP. В этом и заключается сущность амплификации.

Незащищенный NTP-сервер становится невольным промежуточным звеном атаки.
Атаке подвержены версии ntpd до 4.2.7p26 (стабильная сейчас 4.2.6p5).

Проверить свой сервер на уязвимость можно выполнив команду
<code class="bash">ntpdc -c monlist адрес_сервера</code>
Если команда выдает список клиентов (а не «timed out, nothing received»), значит система уязвима.
Как бороться

CorelCAD 2014: Обзор продукта. Часть 1

CorelCAD™ 2014 — это эффективное, высокопроизводительное и экономичное решение САПР для выполнения повседневных работ по проектированию, требующих точности и тщательной проработки деталей.

Предприятиям, использующим системы автоматизированного проектирования, всегда было непросто выбирать программное обеспечение. Многие приложения, хотя и отвечают требованиям бюджета, зачастую не имеют необходимых инструментов или используют форматы, затрудняющие совместную работу и обмен данными. CorelCAD 2014 упрощает выбор: заказчикам предлагается недорогое полнофункциональное приложение для двухмерного автоматизированного проектирования с инструментами моделирования трехмерных объектов.
Читать дальше →

Перенос данных между серверами с помощью LVM и iSCSI

aquarium-PR-332-4

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

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

[Из песочницы] Компоненты by T.J.Holowaychuk

Доклад на девятой конференции «Свободное программное обеспечение в высшей школе», 25–26 января 2014. Исходный код заметок и примеров к ним доступен на https://github.com/mbykov/articles.


Все, кто работает с
node.js
, знают TJ Головайчука, автора веб-сервера express, библиотеки для тестирования mocha, и прочая, и прочая. Но, наверное, самый блестящий его проект на сегодня — это Component — http://github.com/component. На русском пока немного литературы о Компонентах, попробую восполнить этот пробел. TJ опубликовал первое сообщение о Компонентах в своем блоге 19 декабря 2012 г. Сейчас, после взрывного роста, количество компонент уже зашкаливает за тысячу, и растет каждый день.

первое знакомство с компонентами

Власти США изъяли еще 29655 биткоинов (28 млн долларов) с серверов Silk Road



Сегодня появилась информация по забытому уже многими ресурсу Silk Road, сервера которого были изъяты еще в октябре прошлого года, а владелец — осужден. Так вот, властям США удалось добраться еще до одного кошелька, который работал с операциями клиентов Silk Road. Сумма, хранившаяся на этом кошельке, была весьма крупной: по текущему курсу, на кошельке хранилось 28 миллионов долларов США (29655 биткоинов).

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

Собственное корпоративное облако ownCloud с NGINX во frontend и несколькими серверами backend

1. Схема

Имеем:
  • Frontend — NGINX проксирующий сервер для принятия и распределения нагрузки (IP — 1.2.3.4 — внешний, IP — 192.168.5.10 — внутренний DMZ) по хорошему он тоже должен стоять за firewall-ом, но тут схема для простоты понимания.
  • Два сервера с поднятыми ownCloud
  • cloud-1 IP — 192.168.1.11
  • cloud-2 IP — 192.168.1.12
  • Хранилище файлов NFS-storage IP — 192.168.1.20 для размещения данных пользователей с доступом по NFS.
image
Читать дальше →

Лаборатории тестирования на проникновение «Test.lab»



PentestIT «Test.lab»

Лаборатории тестирования на проникновение PentestIT «Test.lab» имитируют ИТ структуру настоящих компаний, с серверами и рабочими станциями. Цель лабораторий — предоставить возможность всем желающим проверить навыки пентеста в условиях, максимально приближенных к реальным, при этом полностью легально. Задания, которые закладываются в «Test.lab», берутся на основе выполненных пентестов в обезличенном виде и всегда взаимосвязаны между собой. Например, найденные логины и пароли, сохраненные в браузере пользователя, можно использовать для доступа к серверам атакуемой виртуальной компании. Таким образом лаборатории «Test.lab» получаются более реалистичными, чем и отличаются от обычных CTF соревнований.
В процессе разработки пентест-лабораторий «Test.lab» закладываются различные вектора атак, затрагивающие практически все области ИБ: безопасность сети, систем, прикладного ПО. Выполнение заданий требует не только глубоких технических знаний, но и умение пользоваться специальными инструментами: BurpSuite, IDAPro, Metasploit и т.д, а также специфического мышления.
Читать дальше →

Google показал динамику популярности музыкальных направлений за последние 64 года



У корпорации Google много интересных подразделений, и проектов, которые ведут эти подразделения. К примеру, Google Research на днях представил результаты исследования динамики популярности различных направлений музыки за последние 64 года. Сам проект получил название Music Timeline.

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

Технологический стартап: что делать, если деньги уже не проблема?



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

Что делать дальше и на что не забыть обратить внимание.

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

Raspberry PI и JAVA: пристальный взгляд

Недавно на хабрахабре вышла статья о java на raspberry pi, увидев название которой было много ожиданий, а под катом оказался банальный Hello World!

Дело в том, что ко мне как раз ехала моя малинка и хотелось получить ответы на следующие вопросы:

1. Сравнима ли скорость работы на малинке и настольном компьютере?
2. Насколько удобно работать с java на raspberry?
3. Есть ли адекватные библиотеки для работы с GPIO?

Вот на эти вопросы я и попробую дать ответы в этой статье.

Кому интересно: добро пожаловать под кат (графики и фотографий обнаженной малинки там не будет)

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

Опрос о «Российской общественной инициативе»

Привет, Хабр!

С Нового Года поселилась в моей голове одна мысль, вылившаяся сегодня в инициативу на https://www.roi.ru/. Она не связана с IT, да и находится она на модерации, в общем речь я хочу повести немного о другом. Заметил, что с момента моего последнего посещения сайта (около полугода) никакого заметного движения не наблюдается. Преодолевших барьер инициатив (довольно, скажем скудный, всего 100 000 человек) всего 2, довольно нашумевших, хорошо пропиаренных. Что не помешало им быть отклоненными. Еще 4 инициативы приняты досрочно. Остальные же, на мой взгляд вполне разумные так и болтаются, набирая за день «по капле». В связи с чем у меня появилось желание сделать небольшой опрос, с целью выяснить состояние дел на Хабре.

Движение внимания на основе непрерывно накапливаемого опыта восприятия, как основа предлагаемого подхода к проектированию сильного ИИ

Направленное движение внимания — как основная функция сознания

В этой статье мы не будем вдаваться в глобальные проблемы сильного искусственного интеллекта, но лишь продемонстрируем некоторые основы нашего подхода к его проектированию.

Рассмотрим, пожалуй, одну из самых известных иллюстраций к тому, как работает зрение, исследуя зрительные объекты



Мы видим, что зрительное внимание подвижно.
А что если, само движение внимания и есть ключ к его пониманию?

Мы выдвинули гипотезу о том, что сознание направляет движение внимания, и представили себе следующий образ алгоритма сознательного зрительного восприятия



Как мог бы работать такой алгоритм?
Читать дальше →

PHP слон на Kickstarter!

Журнал [architect] организовал кампанию по сбору средств на официальный плюшевый символ PHP.

image

Основные опции:
  • маленький оранжевый за 20$
  • три маленьких: розовый, синий, красный — за 55$
  • большой оранжевый за 100$
Деньги уже собраны, так что дело верное.

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

У контроллера Steam уберут тачскрин, и изменят конфигурацию кнопок


Вот так, скорее всего, будет выглядеть обновленный контроллер Steam

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

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

Несколько бесплатных книг по программированию на русском языке

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

Александр Круглов — Ruby — Эту книгу можно использовать как справочник и как отдельный учебник по Ruby. Для изучающих Rails считаю исчерпывающим руководством по языку. Версия языка изучаемая в этой книге — 2.0.0p247.

Слова автора: Не думайте, что прочитав эту книгу вы сразу станете писать высоконагруженные приложения. Максимум чему вы научились — это небольших скриптов, способных немного облегчить вашу повседневную работу. Еще множество необходимых знаний о стиле кода, тестировании и отладке, архитектуре и оптимизации (и т.д.) отделяет вас от гордого звания программиста. Могу лишь надеяться, что удовольствия от работы с Ruby поможет преодолеть все эти препятствия и сообщество получит еще одного единомышленника. Github репозиторий

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

IT-Ёлка вместе с хакспейсом



Так случилось, что за месяц до нового года наш хакспейс пригласили поучаствовать в одном интересном мероприятии — ёлке для детей IT-шников. Или, другими словами, в IT-ёлке.

Что из себя представляет классическая ёлка для детей? Приведу ряд ассоциаций:
  • Снегурочка;
  • Дед Мороз;
  • ёлка;
  • дети в костюмах зайцев и снежинок;
  • конкурсы;
  • подарки.

Наша ёлка должна была содержать в себе все эти компоненты. Хотя бы частично. При этом нужно было элегантно интегрировать в это действо компонент, связанный с техническим творчеством. Собственно, именно за этим компонентом к нам и обратились Юля и Полина из IT-People.

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

Бизнес-ориентированные системы хранения ETERNUS DX S3

Ранее мы уже рассказывали об обновлении серверной линейки Fujitsu, которое произошло осенью этого года. Также в начале ноября уходящего года компания Fujitsu выпустила обновленное семейство систем хранения данных ETERNUS DX S3. Это обновление можно назвать революционным, так производительность некоторых моделей увеличилась в 5 раз. Но обо всем по порядку.



Новая линейка Fujitsu ETERNUS DX S3 является по-настоящему бизнес-ориентированной. Ее производилась, опираясь на реальные требования, предъявляемые бизнесом к таким продуктам. И только потом, исходя из этих требований, подбирались или разрабатывались соответствующие технологии и решения. Фактически можно говорить о том, что именно требования бизнеса и легли в основу технического задания на проектирование обновленного семейства.

Так, в новых системах впервые на рынке применен новый интерфейс для подключения дисков SAS3, обеспечивающий скорость передачи данных до 12 Гб/с, что позволяет осуществлять до двух раз более быстрое обращение к данным, размещенным на дисках. Читать дальше →

Интернет-магазины vs поставщики товаров: Кто виноват и что делать?

image

Любой, кто изнутри знаком с рынком электронной коммерции, знает, что одна из самых трудоемких задач для всех его участников – это работа с заказами (прием заявок, резервирование и т.п.), которые оставляют потенциальные покупатели. Содержать свой склад абсолютному большинству интернет-магазинов не по карману. Считается, что эту проблему решает модель drop shipment, при которой, товар реализуется сразу со склада поставщика, но и здесь не все так гладко. Читать дальше →

«Мусорные» акции компании Nestor выросли в 50 раз (спасибо, Google!)

Nestor Inc. — небольшая американская компания (89 сотрудников), которая разрабатывает автоматизированные системы для мониторинга соблюдения правил дорожного движения и продаёт их государственным структурам. Казалось бы, с чего акциям этой фирмы вырасти в 50 раз за один день? Что такое может случиться с правилами дорожного движения?

Ларчик открывается просто. Дело в том, что биржевой тикер компании — NEST. Тысячи инвесторов ринулись покупать ценные бумаги этой фирмы, как только 14 января появилась новость о покупке компании Nest Labs, Inc корпорацией Google за $3,2 млрд.
Читать дальше →

Microsoft продлила поддержку MSE Windows XP

Microsoft объявила на своем сайте о продлении обновлений базы данных с сигнатурами вирусов, а также движка, который используется в антивирусных программах. Обновления будут выходить до 14 июля 2015 года.
Правило об обновлениях распространяется на System Center Endpoint Protection, Forefront Client Security, Forefront Endpoint Protection, Intune и Microsoft Security Essentials (MSE). Его можно бесплатно загрузить с сайта компании. В случае с XP это можно сделать до 8 апреля 2014 года, после этой даты MSE будет недоступен.

Облачная платформа Яндекса. Cocaine

Некоторое время назад мы довольно подробно начали рассказывать об одной из базовых облачных технологий Яндекса — Elliptics. Сегодня настала очередь поговорить о другой — той самой, под которой работают «эльфы» и которая делает мечту о своем облаке чуть ближе к реальности. Речь пойдет о Cocaine.

Cocaine (Configurable Omnipotent Custom Applications Integrated Network Engine) — это PaaS-система (Platform-as-a-Service) с открытым исходным кодом, являющаяся по сути app engine и позволяющая создавать собственные облачные хостинги приложений — такие, как Google AppEngine, OpenShift, CloudFoundry или Heroku.



Всем известно, что облака могут решить все инфраструктурные проблемы, превратить издержки в прибыль и насытить вашу жизнь бесконечной радостью и счастьем на веки веков. Единственным препятствием на пути к этим целям являются, собственно, облака. IaaS, PaaS, SaaS? Whatever-as-a-Service? Какой именно загадочный набор букв нужно выбрать, чтобы всё наконец стало хорошо?

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

[Перевод] Система предсказания свободной парковки от Audi



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

Но в скором времени навигатор сможет привозить вас как раз к освободившемуся месту. Исследовательский проект Городской Интеллектуальной Помощи (Urban Intelligent Assist) компании Ауди использует большие объёмы данных, беспроводную связь и автомобильный навигатор для, помимо прочего, поиска улиц, доступных для парковки. Более того, система может предсказать, когда освободится место для вашей машины. Это словно Google Now, но для парковки.
Читать дальше →

Главное — доверие

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

А потом я пошел в банк. В настоящий банк. Там где на входе настоящие охранники, в окошках — настоящие кассиры, которые принимают и выдают настоящие деньги. Мне нужно было снять деньги с депозита. Примерно в размере моей полугодовой зарплаты. Знаете, что для этого понадобилось? Может быть мой пасспорт? Кодовое слово? Карта банка? Пин-код к ней? Пароль на онлайн банкинг? Смс с подтверждением операции? Нет. Произошел вот такой диалог:
— Ваш номер телефона?
— ХХХХХХХХХ
— У Вас на счету N лежит сумма M. Вы её всю хотите снять?
— Да
— Вот квитанция, проходите в кассу
В кассе мне выдали деньги, опять таки без всяких требований удостоверить личность. Да, попросили расписаться на чеке, но подпись ни с чем не сверяли. Я вышел из банка с деньгами в руках. Но ощущение было такое, как-будто вышел без них.
Читать дальше →

Бесплатный курс «Организуйте свое мышление» от LendWings

Добрый день, Хабр.

Проект LendWings опубликовал еще один бесплатный курс о том, как правильно фокусироваться на целях в жизни, и как эффективно эти цели можно достигать. Мы рады пригласить вас к нам на сайт.

Весь курс доступен здесь.


Больше информации о курсе и несколько вопросов к вам

Как сделать социальные «лайки» полезными в работе программиста?

Для того чтобы быть крутым программистом нужно много программировать.

Но еще и важно пополнять свои знания через чтение интересного и нового. Получать информацию можно из многих источников, раньше для меня это были блоги и RSS канал. Но с течением времени, я пришел к выводу, что почти что всю самое интересное я получаю из 3 мест: twitter, github, stackoverflow.

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

Ищу тестеров перевода I Have No Mouth, and I Must Scream

Всем добра!
Приурочу сей пост к пятнице.

КДПВ по традиции:

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

Масштабировать просто. Часть вторая — кэширование

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

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

Методологический подход к определению влияния человеческого фактора на работоспособность информационных систем


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

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

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

[Из песочницы] Как научить программировать гуманитария

Приветствую всех!

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

image

Мой опыт, на основании которого я сделал описываемые выводы, возник из примерно 6-летней в общей сумме работы с людьми, желавшими или думавшими, что желают, обучиться программированию. В процессе работы велись как групповые, так и индивидуальные занятия с обучающимися (возрастом от 16 до 26 лет), величина групп была в среднем около 11 человек, по несколько групп параллельно.
Читать дальше →

[Из песочницы] Восстановление прошивки RAID-контроллеров LSI

Доброго времени суток, хабравчане!

Я хочу рассказать вам о том, как я восстанавливал прошивку RAID-контроллера LSI MegaRAID после неудачного обновления.
Когда эта беда случилась со мной, то информации об этом я практически не нашел, хотя, допускаю, что плохо гуглил.

Анамнез

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

Зачастую, особенно в случае с 1U серверами я беру их уже с интегрированным контроллером LSI MegaRAID.

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

Недавно привезли несколько серверов с контроллерами LSI 2208 на борту и достаточно старой прошивкой.
Т.к. дискретные контроллеры на этих чипах я тоже активно использую, то особо не сомневаясь загрузился с флешки с Linux-ом, запустил привычное:
<code class="bash">./MegaCli64 -AdpFwFlash -f mr2208.rom -a0
</code>
и пошел заниматься дальше своими делами.

Когда я в следующий раз обратил взор на терминал сервера, то увидел ту же самую картину, что и была — «Flashing firmware...» и никакого результата. Беда, подумал Штирлиц.
Читать дальше →

Видеозаписи докладов потока «JavaScript на бекенде» конференции FOSS Sea



Команда проекта GeeksLab 30 ноября 2013 года в Одессе провела VI специализированную конференцию FOSS Sea: back-end на базе свободных и открытых технологий. Один из потоков мероприятия был посвящен разработке бекенда на . В данном потоке с докладами выступили представители таких компаний как: DataArt, Lohika, GlobalLogic, GradSoft, IT Adapter Corp и другие. Презентации и видеозаписи докладов под катом.
Читать дальше →

[Перевод] 14 инструментов для веб-дизайна и веб-разработки на 2014 год

Вместе с WEB движущимся семимильными шагами (адаптивным дизайном, препроцессорами, постпроцессорами и другими вещами) может оказаться проблемой попытка не отставать от чего-то нового и полезного.
Ниже Вы найдете 14 инструментов, 7 для веб-дизайнеров и 7 для веб-разработчиков, которые помогут веб-сайту перерасти из концепции в действительность. Читать дальше →

Светофор на ПЛК – все языки МЭК 601131-3

В прошлой статье Светофор на ПЛК – 30 блоков программа для ПЛК светофора была написана только на FBD.
Новая программа использует все 5 языков стандарта МЭК 601131-3.
Читать дальше →

Журнал МУК-ревью в свободном доступе

Выкладываем первый номер журнала МУК-ревью. Краткая история: жил-был хабраблог компании МУК, публиковались там статьи, а потом мы подумали: а почему бы наши посты не издать в офлайн-версии? Чтобы и те, кто не читает хабр (есть еще такие), смогли почитать блог в бумажном формате. Решено — сделано, отобрали несколько обзоров — так и появился журнал.



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

Скачать можно тут

[Перевод] Вы и ваша работа *

Длинный материал. Время чтения — около 40 минут.

image

Доктор Ричард Хэмминг, профессор морской школы Монтерея в штате Калифорния и отставной учёный Bell Labs, прочёл 7 марта 1986 года очень интересную и стимулирующую лекцию «Вы и ваши исследования» переполненной аудитории примерно из 200 сотрудников и гостей Bellcore на семинаре в серии коллоквиумов в Bell Communications Research. Эта лекция описывает наблюдения Хэмминга в части вопроса «Почему так мало учёных делают значительный вклад в науку и так многие оказываются в долгосрочной перспективе забыты?». В течение своей более чем сорокалетней карьеры, тридцать лет которой прошли в Bell Laboratories, он сделал ряд прямых наблюдений, задавал учёным очень острые вопросы о том, что, как, откуда, почему они делали и что они делали, изучал жизни великих учёных и великие достижения, и вёл интроспекцию и изучал теории креативности. Эта лекция о том, что он узнал о свойствах отдельных учёных, их способностях, чертах, привычках работы, мироощущении и философии.
Читать дальше →

Microsoft, к доске! Или чему Office365 может поучиться у редактора на Canvas



Недавно на TechCrunch появился любопытный обзор «еще одного конкурента Microsoft» от Steve O'Hear. И вряд ли он привлек бы мое внимание, если бы не Canvas, на котором, по утверждению автора, написан продукт. Canvas, который, как мне казалось, используется в основном только для игр и эффектов. Для тех, кому небезразлично развитие технологии HTML5 (и еще тех, кто ищет альтернативу MS), ниже привожу перевод статьи.
Читать дальше →

Суперкомпьютер IBM Watson станет отдельным подразделением корпорации с бюджетом в 1 миллиард долларов



Совсем недавно на Хабре уже публиковалась статья о том, что IBM открывает инструментарий суперкомпьютера IBM Watson для сторонних разработчиков. Теперь компания пошла дальше, и выделила IBM Watson в собственное подразделение, с дополнительным вложением средств.

Само собой, здесь имеется в виду не только сам суперкомпьютер, и но и команда его разработчиков, обслуживающего персонала и всех прочих. На развитие такого подразделения компания решила выделить 1 миллиард долларов, из которых десятая часть, 100 миллионов долларов, пойдет на создание «экосистемы» приложений и сервисов для IBM Watson.

Собственно, эти100 миллионов выделены для формирования венчурного фонда, выделяющего инвестиции стартапам и компаниям, которые и будут разрабатывать приложения/сервисы для суперкомпьютера. Корпорация делает все это не просто так, а с оглядкой на прогноз исследовательской компании Gartner. По данным компании, в ближайшее время «умные» машины станут ключевым фактором прорыва в информационных технологиях, помогая людям «делать невозможное» и работать более эффективно.

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

Чтобы внедрить ERP-систему на производстве

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

Сначала немного о фундаменте.
Итак, что же нужно, чтобы в компании была внедрена ERP система? Ну, во-первых в ваших туалетах должно быть чисто. Состояние туалетов — это состояние компании в целом. Вы будете смеяться, но это так и есть. Если у вас в туалетах грязно, решите сначала системные проблемы в компании, а потом уж и за ERP можно браться.
Читать дальше →

Обзор Google Nexus 7 (2013)

В своё время планшет Google Nexus 7, созданный при сотрудничестве с компанией ASUS, стал официальным дебютом Google на рынке планшетов. Первая версия устройства, благодаря своим техническим преимуществам, высокому качеству изготовления и довольно низкой цене завоевала серьёзную долю рынка 7-дюймовых планшетов. В (теперь уже) прошлом, 2013 году вышла обновлённая версия: Nexus 7 (2013).

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

Blackphone: первый смартфон, защищённый от прослушивания

Специалисты из криптографической компании Silent Circle совместно с Geeksphone разработали новую модель смартфона, в который изначально встроена криптографическая защита коммуникаций, в том числе голосовых разговоров, текстовых сообщений, файлов (передача и хранение в зашифрованном виде) и видеочатов. Blackphone — первый мобильник такого класса.

Blackphone работает под операционной системой PrivatOS, которая является форком , ориентированным на безопасность. Смартфон не будет привязан к какому-то определённому оператору связи или даже производителю.
Читать дальше →

Сборка Android под Ubuntu Linux

image

Эта заметка является косвенным продолжением моей первой публикации Сборка Android под Mac OS X и имеет аналогичную цель — решение проблем сборки относительно старых версий 4.0.x.

Коротко вводная. В одном из проектов я занимаюсь доработками оригинального кода Android для создания прошивки под специфичную железку. Версия для сборки была выбрана уже относительно старая — AOSP 4.0.4, но на ней базируется стабильная ветка кода от производителя железки. Первоначально я работал на MacOS, но для этого проекта решил переключиться на Linux для удобства разработки. Итак волею судеб я перешел с MacOS на более менее свежий Ubuntu Linux 12.04.3, рекомендованную на данный момент версию Linux для сборки Android.
Читать дальше →

[recovery mode] Как я сделал тестер-оптимизатор для нахождения прибыльных стратегий на бирже

Введение

image

В алгоритмическом трейдинге при создании механических торговых систем (МТС) очень важен вопрос времени жизни торговых алгоритмов. Да, и найти их в принципе достаточно сложно. В условиях постоянно меняющегося рынка рано или поздно наступает момент, когда даже самый совершенный и прибыльный алгоритм начинает приносить убытки. И его нужно, что называется, «подкручивать» или оптимизировать под текущие условия рынка. Одними из самых распространенных являются торговые системы (ТС), работающие со свечными графиками с их многообразием индикаторов для технического анализа. Читать дальше →

Масштабировать просто

От B2C-порталов ожидается прежде всего масштабирование. К сожалению, масштабирование слишком часто объявляется вопросом Технологии — достаточно выбрать модную технологию и все проблемы решены. То, что это не так, может проявиться, позднее всего, уже в production mode (на рабочей системе).
Вместо того, чтобы махать технологической булавой, расскажу о том, как при помощи продуманной архитектуры и сознательного отказа от модели данных разработать высоко доступный (highly available), масштабируемый (scalable) портал. Первая часть опишет общие концепты, а возможные сценарии и их решения последуют.
Читать дальше →

Объявляем конкурс на разработку макета для 3d печати почки


Autodesk, 3Д Биопринтинг Солюшенс и Can Touch ищут звезд трехмерного моделирования, желающих заявить о себе и вписать своё имя в историю развития биопечати в России.

Участникам конкурса предлагается создать трёхмерный дизайн-макет одного из сложнейших органов человека – почки – в разрезе в цвете. Оцениваться конкурсанты будут по трём основным параметрам: точность воспроизведения в макете пропорций почки взрослого человека; умение работать в программах компании Autodesk; и также создание работы, готовой к тиражированию на 3d принтере.

Более подробно об условиях конкурса можно узнать на сайте www.geek-picnic.ru/bioprinting Читать дальше →

Сегодня последний день, когда вы можете воспользоваться бесплатными купонами на COLT

Остались считанные часы до завершения нашей акции по раздаче бесплатных полугодовых лицензий COLT.
Если вы не воспользовались купоном и не купили подписку COLT со 100 процентной скидкой, то завтра вы это сделать уже не сможете. Поторопитесь. Акция закончится в полночь по Москве.

Для того чтобы воспользоваться купоном вам нужно зайти на страницу покупки COLT и купить лицензию COLT со 100 процентной скидкой. Чтобы воспользоваться скидкой вам нужно добавить в поле «Coupon Code» ваш код и нажать кнопку «Recalculate». При покупке COLT с купоном деньги с карты сниматься не будут и подписка не будет автоматически продляться.

[Из песочницы] Создание клиентского MVC приложения с помощью RequireJS

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

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

В этой пошаговой инструкции вы узнаете, как построить простое MVC (Model — View — Controller) приложение с помощью RequireJS. Вам не потребуются какие-либо предварительные знания в загрузке скриптов, основы мы рассмотрим в этой статье.
Читать дальше →

[Из песочницы] C Днем Рождения, Википедия!

Универсальная энциклопедия «Википедия», которая отмечает сегодня свой день рождения, появилась 13 лет назад, в 2001 году, в США. Её создателями были два американца Ларр Сэнгер и Джимми Уэйлс. Они создали в интернете форум, в котором приглашали всех желающих во всём мире к совместной работе. Все пользователи интернета могли участвовать в пополнении базы данных проекта. Читать дальше →

Test Kitchen для новичков

imageПривет, Хабраюзеры! Сегодня я хотел бы рассказать о инструментах, которые облегчают тестирование кукбуков. В чем собственно проблема? С ростом масштаба инфраструктуры становится сложнее следить за зависимостями и последствиями внесения изменений в кукбуки и на повестке дня становится вопрос о их тестировании. Решить данные проблемы помогают такие инструменты, как foodcritics, chefspec, minitest, test kitchen…
В данном посте я хотел бы поделиться своим опытом по освоению test kitchen в «преславутый 21 день». Я старался чтобы данный пост был максимально прост и удобен для начального ознакомления с test kitchen.

Поехали