Search
Write a publication
Pull to refresh
-2
0
Send message

Показатели удержания Flurry: очень важные и очень непонятные

Reading time4 min
Views20K
Flurry уже стала мастхевом для тех мобильных разработчиков, которые понимают важность анализа пользовательского поведения. Однако в тех метриках Flurry, которые касаются удержания пользователей, сориентироваться не так-то легко: тут и return rate, и rolling retention, и static retention… в общем, как говорит народная мудрость, без ста грамм не разобраться. Поправим — не разобраться без этой статьи, которую мы в Alconost отыскали и перевели специально для Хабра. А понимать, что к чему в показателях удержания пользователей, жизненно важно: иначе вы рискуете потерять и пользователей, и деньги на их привлечение, и радужные перспективы развития вашего приложения или игры.


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

C++ в 2015-м году

Reading time3 min
Views38K
Год только начинается, так что давайте посмотрим, что язык С++ ожидает в 2015-м, как мы уже делали это в 2013-м и 2014-м.

Прошлый год принёс много изменений, главным из которых, безусловно, является стандарт С++14. Что важно, С++14 сегодня существует не только в виде стандарта, но и частично поддерживается GCC и Clang. Visual Studio также поддерживает некоторые (хотя и далеко не все) возможности С++14 и почти все (хотя опять таки не 100%) возможности С++11. Компилятор от Intel стал совместим с С++11 полностью. Таким образом, современные стандарты С++ доступны под все платформы — было бы только желание их использовать!
Читать дальше →

Моральные дилеммы роботизированного будущего

Reading time6 min
Views17K


Экосистема окружающих нас гаджетов становится всё «умнее». Несмотря на очевидные сложности с созданием полноценного искусственного интеллекта, успехи на этом поприще довольно заметны. И кого-то это уже пугает. Всё чаще мы слышим от разных экспертов, что нас, вероятно, ждёт восстание машин. Не избежал этого поветрия даже Стивен Хокинг, впечатлённый способностями своего нового электронного ассистента предугадывать, что он хотел сказать. На подобные опасения другие резонно возражают, что компьютерам нужно стать не просто умными, но ещё и изобретательными. А создавать что-то новое, не компилируя уже известные элементы, компьютеры пока не способны даже на самом примитивном уровне. Так что можно не волноваться насчёт сценариев а-ля «Матрица» и «Терминатор», в ближайшие много десятилетий нам это точно не грозит.

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

Обзор наиболее интересных материалов по анализу данных и машинному обучению №31 (12 — 18 января 2015)

Reading time4 min
Views13K

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

Подготовка к сдаче GRE

Reading time6 min
Views9.6K
image

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

Краткий курс компьютерной графики: пишем упрощённый OpenGL своими руками, статья 1 из 6

Reading time7 min
Views411K

Содержание курса



Улучшение кода






Official translation (with a bit of polishing) is available here.




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


Цель этого цикла статей — показать, как работает OpenGL, написав его (сильно упрощённый!) клон самостоятельно. На удивление часто сталкиваюсь с людьми, которые не могут преодолеть первоначальный барьер обучения OpenGL/DirectX. Таким образом, я подготовил краткий цикл из шести лекций, после которого мои студенты выдают неплохие рендеры.

Итак, задача ставится следующим образом: не используя никаких сторонних библиотек (особенно графических) получить примерно такие картинки:



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

Илон Маск подкрепляет свое мнение об опасности ИИ с помощью $10M

Reading time2 min
Views18K
Как говорят специалисты по общему искусственному интеллекту (AGI): «Если человеку нечего сказать по существу проблемы AGI, он говорит о проблеме его (без)опасности». Данная проблема гораздо понятнее и ближе широкой аудитории, чем тонкие технические вопросы. По этому вопросу свое мнение может заявить, хоть известный физик, хоть неизвесный хаброжитель. Недавно на эту тему промелькнуло и высказывание Илона Маска об опасности ИИ, пресс-секретарь которого сказал, что вскоре Маск опубликует более подробное мнение об искусственном интеллекте.. И этот ответ оказался не просто словесным, но подкрепленным 10 миллионами долларов.
Читать дальше →

C#: Внутреннее строение инициализаторов массивов

Reading time6 min
Views30K
Наверняка почти каждому, кто имел дело с C#, известна подобная конструкция:

int[] ints = new int[3] { 1,2,3 };//А если уж вдруг и не была известна, то отныне и впредь уж точно

Вполне логично было-бы ожидать превращение этой конструкции в нечто подобное:

int[] ints = new int[3]; 
ints[0] = 1; 
ints[1] = 2; 
ints[2] = 3;

Увы и ах, на деле орех гораздо более морщинист, чем кажется с первого взгляда, и имеются некоторые тонкости, на которые будет указано позже. А до тех пор, наденем ношеную «IL freak» майку (у кого имеется) и погрузимся в недра реализации.
Погрузись, и ты узнаешь насколько глубока кроличья нора

Windows 8.1 Kernel Patch Protection — PatchGuard

Reading time10 min
Views38K
imageПериодически, как правило во вторую среду месяца, можно услышать истории о том, что Windows после очередного обновления перестает загружаться, показывая синий экран смерти. В большинстве случаев причиной такой ситуации оказывается либо руткит, либо специфичное системное ПО, фривольно обращающееся со внутренними структурами ОС. Винят, конечно, все равно обновление, ведь «до него все работало». С таким отношением не удивительно, что «Майкрософт» не поощряет использование всего, что не документировано. В какой-то момент, а именно с релизом Windows Server 2003, MS заняла более активную позицию в вопросе борьбы с чудо-поделками сторонних разработчиков. Тогда появился механизм защиты целостности ядра — kernel patch protection, более известный как PatchGuard.

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

Именованные параметры в современном C++

Reading time14 min
Views30K
Из Википедии: "Именованные параметры в языках программирования означают поддержку указания явных имен параметров в вызове функции. Вызов функции, принимающей именованные параметры, отличается от обычного вызова функции, в котором передаваемые аргументы ассоциируются с параметрами функции лишь только по их порядку в вызове функции"

Давайте посмотрим на пример:

createArray(10, 20); // Что это значит? Что за "10" ? Что за "20" ?
createArray(length=10, capacity=20); // О, вот теперь понятнее!
createArray(capacity=20, length=10); // И наоборот тоже работает.


И еще один пример на выдуманном псевдо-языке:
window = new Window {
   xPosition = 10,
   yPosition = 20,
   width = 100,
   height = 50
};


Этот подход особенно полезен для функций с большим количеством опциональных параметров, при вызове которых нужно изменить лишь некоторую часть дефолтных значений. Некоторые языки программирования поддерживают именованные параметры (C#, Objective-C, ...), но не С++. В этом посте мы рассмотрим пару классических способов эмуляции именованных параметров в С++, ну и попробуем придумать что-то новое.
Читать дальше →

Подготовка к GMAT: секреты успешной сдачи теста

Reading time6 min
Views14K
image

Мы продолжаем серию публикаций о тесте GMAT. В предыдущей статье обсуждалась структура экзамена. Сегодня же мы расскажем о самом важном этапе — подготовка к тестированию. Поделимся преимуществами и особенностями способов подготовки к GMAT.
Будем рады услышать Ваши вопросы и комментрии!
Читать дальше →

А-машина Тьюринга и кофе-машина Хоара пит-стоп

Reading time7 min
Views16K
Всякий, кто полагается на практику, не зная теории, подобен кормчему, вступающему на судно без руля и компаса, – он не знает, куда плывет.
Леонардо да Винчи
В Священных Языковых Войнах в качестве окончательного аргумента нередко приводят — поскольку языки полны по Тьюрингу, постольку они и равноценны. Под катом попытка уточнить этот тезис для тех, кто уже справился с Python и теперь планирует изучить Erlang или Haskell по спецификации. Материал обзорный, не методичный с картинками.
Читать дальше →

Маргарет Гамильтон, ведущий инженер-программист проекта «Аполлон»

Reading time4 min
Views47K
image
Маргарет Гамильтон в годы пилотируемой программы полётов к Луне «Аполлон».

Под таким названием можно встретить эту фотографию в интернет. На первый взгляд это просто фотография-шутка — коллеги сфотографировали девушку с грудой офисных бумаг, и будь в те времена социальные сети, фото разошлось бы по сети с каким-то смешным комментарием. Точно так же как и сейчас. И мало бы кто заинтересовался бы кто такая Маргарет Гамильтон и что происходит на фото. В действительности Маргарет Хэмилтон была ведущим инженером-программистом в проекте пилотируемой программы полётов к Луне «Аполлон», а на приведенной выше фото, она стоит перед распечаткой кода для бортового компьютера «Аполлон», изрядную часть которого она сама написала и который она ревизировала. Аполлон-11 смог приземлиться вообще только потому, что она разработала программное обеспечение достаточно надежно, чтобы обойти возникшие при посадке сбойные ситуации.
На момент первой в истории человечества посадки на Луну ей исполнилось 31.
Читать дальше →

Выразительный JavaScript: Проект: программа Paint

Reading time16 min
Views41K

Содержание




Я смотрю на многообразие цветов. Я смотрю на пустой холст. Затем я пытаюсь нанести цвета как слова, из которых возникают поэмы, как ноты, из которых возникает музыка.

Жоан Миро


Материал предыдущих глав даёт вам всё необходимое для создания простого веб-приложения. Именно этим мы и займёмся.

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


Простая программа рисования
Читать дальше →

Подготовка к TOEFL

Reading time6 min
Views9.8K


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

Не пельменем единым жив программист или история о том, как все успеть

Reading time7 min
Views140K
image

По заявкам трудящихся и в связи с переносом — возвращаю пост, который многих порадовал. Надеюсь НЛО будет не против.

На написание этого поста меня сподвиг замечательный пост «За что конкретно я ненавижу некоторых отдельно взятых маркетологов — или как айтишник по магазинам ходил». Сразу хочу извиниться за возможные опечатки — пишу с планшета, сидя в микроавтобусе и вытягивая сеть телефоном. Hacker's keyboard очень удобен для ssh-доступа, но большие тексты писать им не очень удобно.

IT- специалисты — народ любопытный. То соберут на базе микроконтроллеров автоматическую систему полива и освещения для любимого фикуса, то пропатчат прошивку мультиварки для раздачи торрентов. Но, по непонятной и загадочной причине, когда дело доходит до еды, пресловутый принцип DIY дает сбой. И наш герой, способный часами переделывать кинескоп старого телевизора в Луч Смерти, идет на кухню утолить голод соевым текстуратом пополам с гидроцеллюлозой и «коллагеновым сырьем».

В этом посте я хочу разрушить миф о том, что еда может быть либо быстрой и удобной, либо съедобной. Не секрет, что многим из нас приходится работать по 12 часов в сутки, что не способствует кулинарным подвигам с участием 28 приправ и перьев с зада дракона, омытых слезами единорога. Вы получите замечательную возможность посмотреть в глаза своей половинки на 8 марта после того, как она получит не контроллер для дистанционного управления шторой, а свежевыпеченный хлеб ручной работы рано утром. Если вам надоело есть синтетику — добро пожаловать под hubracut.
Читать дальше →

Azure RemoteApp выходит из бета-тестирования

Reading time3 min
Views11K
Привет хабр!

Тем, кто долгое время работает со службами удаленных рабочих столов, название RemoteApp не кажется чем-то новым. Технология RemoteApp пришла к нам в Windows Server 2008 как расширение функционала Remote Desktop Services (а до 2008-го — Terminal Services), позволяя доставлять на рабочие станции непосредственно окно приложения, исполняемое на удаленном сервере, а не весь удаленный рабочий стол.



Технология долгое время развивалась от версии к версии и буквально недавно началось глобальное бета-тестирование Azure RemoteApp — сервиса для доставки приложений напрямую из облака, который так просили пользователи. Microsoft Azure, как гибкая IaaS платформа, без проблем позволяет развернуть полноценную масштабируемую RDS-ферму, но существенно приятнее вместо большого количества виртуальных серверов(которые нужно администрировать, обновлять и поддерживать), получить весь тот же функционал в виде отдельного масштабируемого сервиса.

Сервис выходит из бета-тестирования 11 декабря и будет предоставляться в формате Pay-As-You-Go, а также появится в корпоративных программах с 1 февраля 2015 года.
Читать дальше →

Kotlin для Android, или лёгкий способ перестать программировать на Java

Reading time1 min
Views40K
На нашей конференции мобильных разработчиков #MBLTDev, которая прошла в конце октября в Москве, продуктолог компании JetBrains Илья Рыженков рассказал доклад о языке программирования под Android Kotlin.

Kotlin был разработан в компании JetBrains и публично представлен в 2011 году. В 2012 был открыт исходный код.


Презентация

Илья рассказал про историю создания языка, преимуществах программирования на Kotlin, отличия Kotlin от Java и о том, что на нем можно делать. А также показал несколько примеров кода на Kotlin для платформы Android.
Читать дальше →

Бездисковая загрузка по технологии iSCSI на базе ОС Windows

Reading time11 min
Views147K
Написанию данного поста предшествовало сбор информации по частям и многочасовое курение как русскоязычных, так и англоязычных ресурсов в сети интернет в поиске сравнительно простых способов реализации бездисковой загрузки ПК.

Предпосылкой к изучению данного вопроса стало наличие в сети компьютера, с вышедшем из строя дисковым накопителем. Необходимо было запустить на данном ПК «полноценную» 64-битную операционную систему Windows 7 без использования Linux-сервера, ограничившись только имеющимися в локальной сети Windows системами. Приводимые в данном посте программные продукты распространяются бесплатно и могут работать как на серверных, так и на пользовательских версиях Windows.

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

«Математика – один из видов искусства»: пост к столетию со дня рождения Мартина Гарднера

Reading time3 min
Views59K

Перевод поста Эда Пегга Младшего (Ed Pegg Jr) "Martin Gardner’s 100th Birthday"

Я думаю, содержание этого поста будет интересно всем, кто любит математику и ее красоту, всем, кто знаком с замечательными книгами и задачами Мартина Гарднера, а также будет полезно учителям, школьникам и студентам. Все ссылки в данном посте ведут на сайты Wolfram Demonstrations Project (коллекция бесплатных интерактивных демонстраций, созданных пользователями системы Mathematica на языке Wolfram Language с помощью технологии Computable Document Format (CDF), при этом для вас доступны исходные коды всех демонстраций, а значит, вы можете каждую из них скачать, изучить и изменить под себя) и Wolfram MathWorld (крупнейшая и самая авторитетная онлайн-энциклопедия по математике).

Gardner100_1.gif

Читать далее...

Information

Rating
Does not participate
Registered
Activity