Search
Write a publication
Pull to refresh
51
0

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

Send message

Автоматизация: как мы, 10 человек, управляем активом в миллиарды долларов — IT-защита от людей и операционных рисков

Reading time9 min
Views31K


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

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

Дальше были поездки в Лондон, Сингапур, Нью-Йорк и Токио. Вежливые люди в галстуках нас выслушивали, искали Россию на карте финансовых потоков (и не находили), а потом говорили: «Ну, вы же понимаете, какая для этого нужна инфраструктура, IТ-поддержка и юридическая поддержка».

Сложнее всего было с IT. Два дата-центра в Лондоне, связка с российскими офисами, аварийные точки развёртывания, дублирование всех узлов и, главное, интеграционный софт. Плюс множество автоматизации (например, чтобы не подписывать руками каждый документ и не принимать звонки как брокеры в 30-е годы прошлого века).

На старт ушло 4 года.
Читать дальше →

Инфраструктура и торговые роботы: Какие языки программирования используются в сфере финансов

Reading time8 min
Views36K


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

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

Как правильно запрашивать доступ у пользователей iOS

Reading time6 min
Views9.9K


Автор этой статьи — Бренден Маллиган, один из создателей LaunchKit, пакета инструментов для iOS-разработчиков. Он также работает над мобильным и веб-приложением Cluster, которое позволяет создавать личные соцсети на основе общих интересов и опыта. Также Бренден является автором проектов ArtistData и OneSheet.

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

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

Курс по машинному обучению на Coursera от Яндекса и ВШЭ

Reading time4 min
Views118K
Когда-то мы публиковали на Хабре курс по машинному обучению от Константина Воронцова из Школы анализа данных. Нам тогда предлагали сделать из этого полноценный курс с домашними заданиями и разместить его на Курсере.

И сегодня мы хотим сказать, что наконец можем выполнить все эти пожелания. В январе на Курсере пройдёт курс, организованный совместно Яндексом (Школой анализа данных) и ВШЭ. Записаться на него можно уже сейчас: www.coursera.org/learn/introduction-machine-learning.


Сооснователь Coursera Дафна Коллер в офисе Яндекса

Курс продлится семь недель. Это означает, что по сравнению с ШАДовским двухсеместровым курсом он будет заметно упрощен. Однако в эти семь недель мы попытались вместить только то, что точно пригодится на практике, и какие-то базовые вещи, которые нельзя не знать. В итоге получился идеальный русскоязычный курс для первого знакомства с машинным обучением.

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

Под катом можно прочитать подробнее обо всех авторах курса и узнать его примерное содержание.
Читать дальше →

Оформление научных результатов: интеграция LaTeX и Gnuplot

Reading time6 min
Views45K
«Если ваш единственный инструмент — молоток, то каждая проблема становится похожей на гвоздь»

Абрахам Маслоу


Введение


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

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

Вспоминаю времена, когда молодым и глупым аспирантом, я писал первый вариант кандидатского «кирпича», предназначенный для тщательного «вычитывания» мной и моим научным руководителем. Тогда я не знал о формате EPS, а поэтому экспортировал графики, построенные в Maple в *.bmp-растр и вручную… обводил их в MS Visio для последующей вставки в Word. Были и другие, не менее топорные глупости. Не удивительно, что тогда я проклял всё, и дал себе слово следующую диссертацию писать совершенно по другому.

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



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

Calque — калькулятор, который удобнее, чем консоль браузера

Reading time1 min
Views54K
Приветствую.

Существует приложение для iOS — Tydlig, которое буквально переосмысливает калькулятор, и делает его потрясающе удобным. Попользовавшись один раз этим приложением, остаешься его любителем.

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

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

Поиск чего-то похожего на Tydlig ничего не дал, и было принято решение писать свое приложение.

Что из этой затеи получилось:


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

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

Reading time8 min
Views12K
Всем привет!

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

В 2014 году в США прогремела история про нескольких программистов, спасших ключевой проект программы Барака Обамы о доступном здравоохранении от полного краха. Они появились на обложке Time, Обложка Time их пригласили в белый дом, о них написали ведущие СМИ, и эта история получила мощное развитие, о ней до сих пор пишут как в российской, так и в американской прессе.

На самом деле произошедшее выходит далеко за пределы успеха конкретного проекта или даже нового департамента правительства США. Она заставила многих программистов из ведущих IT компаний мира задуматься о своих профессиональных приоритетах.
Читать дальше →

Как из пустой пластиковой бутылки, картинки и шейдера сделать игру для iOS за выходные

Reading time7 min
Views31K
Как-то раз я спросил у своей жены:
— У нас же нет планов на выходные?
— Вроде нет, — ответила она.
— Тогда я еще разок поковыряю этот Swift.
— Поковыряй.

И вот я поставил перед собой задачу, написать очень простую игрушку для iOS на Swift'е, не прибегая к какому-либо ^.*C.*$ (прошлый мой опыт ознакомления со Swift'ом закончился тем, что 80% проекта были написаны на Objective-C (который из-за моего С++'ного мышления, сократился до ближайшего известного мне (Objective-C)+2C-Objective = C)).


Задача


Дано: Одна картинка, какие-то соображения в голове.
Надо: Игра написанная до звонка будильника в понедельник.

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

«Программирование мышкой» в Swift ч.2 — навигация

Reading time8 min
Views22K
И снова привет, хабаровчане!

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

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

iOS 8 — Widgets

Reading time8 min
Views29K

С выходом iOS 8 у разработчиков появилась возможность создавать свои виджеты для экрана Today. Пока еще API окончательно не утряслось, есть Known Issue и много неописанных в документации моментов. Но если вы все же хотите сделать свой виджет, то прошу под кат (внимание, в примерах используется Swift).
Читать дальше →

Создание Today Extension для iOS 8

Reading time14 min
Views19K
С выходом iOS 8 компания Apple представила новою концепцию под названием App Extensions, с помощью которой, Вы сможете делиться функциональностью Вашего приложения с другими приложениями, и из самой ОС.

Один из этих типов расширений являются Today Extensions, также известные как Widgets. Они предоставляют Вам возможность отображать информацию в Центр Уведомления, который является отличным способом предоставления самой актуальной информации, которой интересуется пользователь.

В этой статье, Вы напишете приложение на основе расширения Today Extension, которое представит текущую рыночную стоимость Bitcoin на основе доллара США.

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

Анонимные функции в Swift

Reading time5 min
Views10K
Эта публикация является конспектом соответствующего раздела замечательной книги «iOS 8 Programming Fundamentals with Swift» Matt Neuburg, O'Reilly, 2015. Статья, описывающая использование анонимных функций, может быть интересной новичкам или пригодится как шпаргалка для более продвинутых разработчиков.

Рассмотрим пример:

	func whatToAnimate() {//self.myButton является кнопкой в интерфейсе
		Self.myButton.frame.origin.y += 20
	}
	func whatToDoLater(finished:Bool) {
		printLn(“finished: \(finished)”)
	}
	UIView.animateWithDuration(
		0.4, animations: whatToAnimate, completion: whatToDoLater)

В этом участке кода есть некоторая странность. Я объявляю функции whatToAnimate и whatToDoLater только для того, чтобы передать эти функции на следующую строку кода. И действительно, имена этих функций мне больше ни для чего не нужны – ни имена, ни эти функции больше никогда не будут повторно использованы. Было бы хорошо передавать только тела этих функций, без необходимости декларации их имен.

Такие функции называются анонимными, они имеют право на существование и часто используются в Swift.
Читать дальше →

В одном из городов в Нидерландах в следующем году начнётся эксперимент с базовым доходом граждан

Reading time2 min
Views66K
image

В январе 2016 года в городе Утрехт (Нидерланды) власти города совместно с экономистами из местного университета начнут социальный эксперимент. Несколько десятков человек, участвующих в эксперименте, будут получать безусловный основной доход – достаточно крупные денежные пособия, не зависящие от их деятельности.

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

Самой ранней моделью подобной системы считают модель Томаса Пейна, который в книге «Agrarian Justice» (1795 год) описал выплачиваемый властями основной доход всем лицам старше 21 года. Для Пейна основной доход означал, что каждому человеку принадлежит доля в общем национальном производстве.

Участники утрехтского эксперимента ежемесячно будут получать пособия в €900 на человека (€1300 на семейную пару). Разные группы участников будут существовать по разным правилам, в их числе будет и контрольная группа, по которой будут калибровать полученные результаты.

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

Знакомьтесь, Swift!

Reading time5 min
Views108K
2 июня на конференции WWDC 2014 Apple представила новый объектно-ориентированный язык программирования — Swift. Я думаю, многие уже успели посмотреть, что из себя представляет этот язык (Swift — нововведения), поэтому я не буду останавливаться на нововведениях. Я предлагаю создать простенький проект на языке Swift, чтобы понять на деле основные отличия от привычного Obj-C.


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

Смотря на код с закрытыми глазами

Reading time6 min
Views123K
От переводчика

Эта статья — перевод блогозаписи Флориана Бейджерса, слепого программиста из Нидерландов.
Перевод любительский, поэтому прошу указывать на ошибки и критиковать.
Я не нашёл корректного перевода слова accessibility, поэтому перевёл его как «доступность». Если есть вариант получше — предложите, пожалуйста.
Антон Туманов предложил «адаптированность», за что ему большое спасибо.
Как заметил в комментарии pepelsbey, «доступность» является корректным переводом, вернул её обратно.
Почему я сделал перевод? Я наткнулся на опрос на Quora.com «Как программируют слабовидящие программисты?». Ответы людей меня впечатлили, а блогозапись Флориана показалась наилучшим вариантом для введения в этот важный вопрос.

Я — программист. А ещё я слеп. Слеп, как крот, как говорится. Таков я от рождения.

Когда я говорю об этом своим товарищам, то те из них, у кого никогда не было проблем со зрением, обычно задают один из трёх вопросов:

  • Как же ты тогда можешь читать то, что я пишу?
  • Ого. А как ты тогда можешь кодить?
  • Или — самый популярный вопрос — А ты видишь сны?

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

iПрезентация (The Presentation). Как Джобс готовил и проводил презентации

Reading time11 min
Views43K
Стив Джобс был лучшим в мире оратором и делал самые лучшие презентации продуктов, заставляя зрителей «сидеть на краешках стульев». Фокус в том, что за каждой из таких презентаций скрывается определённая подготовка и определённые приёмы. Кармин Галло (Karmine Gallo) изучил публичные выступления Стива Джобса и его подготовку к этим выступлениям. В результате мы можем прочесть книгу, которая поможет вам готовить хорошие презентации.



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

Доставить за пригоршню долларов

Reading time2 min
Views14K
Привет, Гик! Мы уже рассказывали, что доставка посылки из США «Бандеролькой» стоит честные $26 за килограмм. Но и это не рекорд. Мы думаем, всем фанатам гаджетов будет полезно узнать, что мы снизили стоимость доставки в июне ещё сильнее: если вы планируете приобрести смартфон, планшет, фитнес-трекер или камеру GoPro в магазинах США, то в течение всего месяца у «Бандерольки» будет действовать супернизкая цена на доставку в пункты самовывоза:

  • $10 за фитнес-трекер или умные часы (когда там продажи Apple Watch стартуют?),
  • $15 за смартфон,
  • $20 за планшет или GoPro.



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

Разработка Quick Look plugin для OS X

Reading time8 min
Views12K
Quick Look — приложение в OS X, которое создает thumbnails (иконки) и previews (окно с описанием/содержимым файла по нажатию пробела в Finder). Оно поддерживает ряд стандартных файлов, для не поддерживаемых можно устанавливать QL plugins — генераторы иконок и/или превью. Они имеют формат .qlgenerator, размещаются в ~/Library/QuickLook и /Library/QuickLook.

Я пишу приложения под iOS, иногда под OSX. Со сторонними QuickLook генераторами столкнулся, когда увидел плагин для первью .mobileprovisionProvisioning.
.mobileprovision/.provisionprofile — профиль, содержащий сертификаты, допущенные для установки устройства, некоторые параметры для развертывания iOS & OSX приложений.

Вот так папка с профилями выглядит без всяких плагинов для Quick Look:

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

Сперва я стал использовать open-source Provisioning, потом закрытый, но более красивый и подробный ipaql. Необходимость написания своего открытого решения возникла после того, как автор ipaql добавил совместимость с OS X Mavericks лишь спустя полгода после выхода системы, а отображение иконок не починил до сих пор.

Вот что у меня получилось — ProvisionQL.
Поддерживаемые типы файлов для создания иконок и превью:
  • .ipa — iOS packaged application (как из Xcode, так и из AppStore)
  • .app — iOS application bundle
  • .mobileprovision — iOS provisioning profile
  • .provisionprofile — OSX provisioning profile



Под катом я расскажу об основных шагах при создании Quick Look плагинов.
Читать дальше →

Добавляем панель бокового меню в свое iOS-приложение

Reading time10 min
Views44K
Как переводчик заранее прошу извинения за возможные ошибки в переводе. Буду признателен сообщениям об ошибках для их скорейшего исправления.

Как я могу добавить панель бокового меню в свое iOS-приложение? Это один из самых часто задаваемых вопросов которые мы получаем от своих читателей. Сегодня мы покажем как создать боковое меню вроде того, которое вы можете наблюдать, например, в приложении от Facebook.

Для тех кто не знаком с понятием бокового меню в мобильных приложениях, Кен Ярмост (Ken Yarmost) дал хорошее объяснение этому элементу интерфейса и определил его как:
Боковое меню представляет собой панель, которая «выезжает» снизу, слева или справа от области основного контента приложения, содержащая вертикальную, независимую от основного контента приложения прокрутку, и служит основным инструментом навигации в приложении.

С того момента как Facebook представил боковое меню в своем мобильном приложении, этот элемент интерфейса быстро стал стандартом реализации навигации по приложению. В том или ином виде вы можете видеть боковое меню в таких популярных приложениях как Path, Mailbox, Gmail, Evernote и т.д.



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

Information

Rating
Does not participate
Registered
Activity