Search
Write a publication
Pull to refresh
0
Maxim Tkachenko @BenderRRread⁠-⁠only

User

Send message

Xamarin SDK в Open Source и многое другое на Xamarin Evolve 2016

Reading time2 min
Views10K


Невероятное количество событий произошло в этому году и несомненно присоединение компании Xamarin к Microsoft одно из самых ярких. Казалось, после анонсов на конференции Build 2016, удивить разработчиков кросс-платформенных приложений и поклонников фреймворка Xamarin совершенно нечем, однако, сегодня на конференции Evolve 2016, команде Xamarin это удалось.

Xamarin SDK, как и было обещано, сегодня официально стал проектом с открытым исходным кодом, и у всех желающих появилась возможность приложить собственные усилия к развитию этой технологии. Открыты bindings API для iOS, Android и Mac, инструменты командой строки, Xamarin.Forms и т.д. Подробности по ссылке: open.xamarin.com
Читать дальше →

Миллион и один день INotifyPropertyChanged

Reading time2 min
Views12K
Оптимизации пользовательского интерфейса посвящается.

image
Пользовательский интерфейс должен быть быстрым, очень быстрым, невероятно быстрым.

В попытках сэкономить наносекунды зачастую упускаются места где можно экономить секунды. Забавно, однажды на мое возмущение о двух секундной отрисовке небольшого списка, я получил ответ «Дабпиэф ничего не поделаешь», серьезно? Изучая всевозможные варианты реализации INotifyPropertyChanged habrahabr.ru/post/281294 возникает вопрос об идеальном балансе производительности пользовательского интерфейса и разработчика, который занимается этим интерфейсом. Захотелось понять как повлияет на работу интерфейса выбор конкретной реализации.
Читать дальше →

Мой опыт обучения детей 8-10 лет программированию на Scratch

Reading time8 min
Views274K
Давно собирался написать об этом, но, модная болезнь прокрастинация брала вверх…

Знакомство со Scratch


Когда сыну Артёму исполнилось 7 лет и он пошел в школу, мы ему подарили компьютер, чтобы он не отставал от жизни. Несколько месяцев он играл в разные игры, наслаждался, развлекался и т.п. Мне стало немного обидно, что такой дорогой и сложный прибор как компьютер используется только для развлечений, и я решил придумать, как использовать компьютер для обучения. А чему можно научиться на компьютере? Конечно, программированию! Тут я и вбил в «Яндекс» заветную фразу «обучение детей программированию».
Читать дальше →

Кюветы Android, Часть 1: SDK

Reading time12 min
Views27K
Довольно долгое время я никак не мог понять, в чём же разница между «библиотекой» и «фреймворком». Нет-нет, я умел и читать, и гуглить, но до меня всё никак не доходил смысл этих понятий. Начав же программировать под андроид, я наконец понял, что значат слова «библиотеку использует программист, но программиста использует фреймворк».
В этой серии статьей я хочу рассказать о проблемах, с которыми мне пришлось столнулся при разработке под андроид. Моей целью является не предоставление каких-либо убер-решений приведенных проблем, а лишь информирование о том, с какими проблемами может столкнуться тот, кто посягнет на святой грааль Android SDK. Не думаю, что суровые синьоры откроют для себя Америку, но как говорится: «повторение — мать учения».
image
Читать дальше →

Что нового в облаке Azure после Build? Справочник по анонсам

Reading time5 min
Views7K
Только что прошла конференция Build в рамках которой было сделано великое множество анонсов по всем направлениям разработки на платформах Microsoft. По традиции, особенно много анонсов касаются облачной платформы Azure, ее сервисов и функций. Вы можете самостятельно посмотреть пленарный доклад, где были озвучены и продемонстрированы многие новости в этом видео.



Десятки докладов конференции на огромное число тем вы можете посмотреть уже сегодня на портале Channel9!

В этой статье мы постараемся агрегировать все анонсы в краткий справочник с полезными ссылками и кратким описанием.
Читать дальше →

Xamarin и Xamarin.Forms – кактус в шоколаде. Часть 2

Reading time7 min
Views14K
Совсем недавно мы опубликовали статью про особенности и проблемы популярного мобильного фреймворка Xamarin. Сегодня же мы продолжим рассказ и сосредоточимся на нюансах библиотеки Xamarin.Forms. Под катом вас ждёт история о том, какие грабли поджидают решившего сделать кроссплатформенный UI.
Читать дальше →

Espruino: JavaScript в микроконтроллере

Reading time7 min
Views54K
image

«Зачем?», «Что за бред?», «Извращение!», «Фу-фу-фу» — вот некоторые из многих высказываний, которые мы услышали, когда выпустили плату Iskra JS на ядре Espruino.

Зачем


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

Но ведь можно пойти ещё дальше. Взять микроконтроллер Cortex M4, который в десятки раз богаче того, что стоит на той же Arduino Uno, запихнуть туда интерпретатор JavaScript и делать проекты на JavaScript!

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

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

Машинное обучение для интеллектуализации ваших приложений

Reading time1 min
Views15K
Вводный доклад начального уровня о машинном обучении на конференции iForum'2014.

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

Для программистов, желающих стать распознавальщиками.



Нейронные сети, «вредные» советы

Reading time6 min
Views170K
Исторически, искусственные нейронные сети за свою уже более чем полувековую историю испытывали как периоды стремительных взлетов и повышенного внимания общества, так и сменявшие их периоды скепсиса и равнодушия. В хорошие времена ученым и инженерам кажется, что наконец-то найдена универсальная технология, способная заменить человека в любых когнитивных задачах. Как грибы после дождя, появляются различные новые модели нейронных сетей, между их авторами, профессиональными учеными-математиками, идут напряженные споры о большей или меньшей степени биологичности предложенных ими моделей. Профессиональные ученые-биологи наблюдают эти дискуссии со стороны, периодически срываясь и восклицая «Да такого же в реальной природе не бывает!» – и без особого эффекта, поскольку нейросетевики-математики слушают биологов, как правило, только тогда, когда факты биологов согласуются с их собственными теориями. Однако, с течением времени, постепенно накапливается пул задач, на которых нейронные сети работают откровенно плохо и энтузиазм людей остывает.
Читать дальше →

Настройка Xamarin Studio для полноценной работы с кодом

Reading time7 min
Views22K
При знакомстве с Xamarin обычно разработчиков в первую очередь смущает Xamarin Studio, которым иногда приходиться пользоваться по тем или иным причинам.

Также цена редакции Business (1к$ в год) и Indie (25$ в месяц) может стать серьезным аргументом, чтобы на постоянной основе пользоваться Xamarin Studio не только iOS, но и Android разработчикам (будем надеяться, что теперь после покупки Microsoft сделает адекватные цены на эти лицензии).

IDE Xamarin Studio (XS) на самом умеет гораздо больше, чем может показаться в начале с настройками по умолчанию. О том, как настроить и выжать побольше из Xamarin Studio, пойдет речь далее
Читать дальше →

Распространение iOS приложений по ссылке в корпоративной среде, используя стек технологий Microsoft

Reading time23 min
Views12K


Недавно стало известно о покупке Xamarin компанией Microsoft. Данная новость не осталась незамеченной среди сообщества разработчиков, а также, среди корпоративных клиентов. В связи с этим, становятся более актуальны истории, где в Microsoft Full Stack окружение необходимо интегрировать мобильные решения, не приводящие при этом к необходимости драматического расширения набора компетенции IT-отела, либо компании в целом. Для таких сценариев становится лаконичным выбор Xamarin, как компонента, хорошо вписывающегося в пазл, состоящий из SharePoint, ASP.NET MVC, WebAPI services и Azure.
В рамках данной статьи описывается метод распространения мобильного приложения внутри компании, преимущественно на этапе прототипирования, используя перечисленный стек технологий Microsoft.
Описываемый в статье метод, несмотря на уклон в .NET окружение, применим к iOS-приложениям, написанным при помощи любого другого инструмента разработки, будь то Apache Cordova или классический натив.
Читать дальше →

Альтернативы сервису parse.com

Reading time6 min
Views37K
Как известно, в следующем январе сервис Parse будет закрыт. Большинство разработчиков ищут альтернативу для этого сервиса. В одном из проектов guthub собралось достаточно много альтернатив, со ссылками и описанием. Перед вами — перевод этой страницы.

Часть 1: универсальные сервисы


Провайдеры, предоставляющие информацию в реальном времени, помечены (*).

AnyPresence MBaaS (Mobile backend as a service). Упрощает процесс создания мобильных приложений предприятия, работающих на разных устройствах, не ущемляя гибкость средств, доступных разработчику. Легок в использовании даже для неопытных пользователей. Опытные разработчики получают доступ к исходникам всех компонентов.

ApiOmat позволяет процессам предприятия работать как мобильным приложениям. Мобилизует сложные бизнес-структуры и процессы путём объединения существующих IT-систем с мобильными приложениями и устройствами. Его можно устанавливать прямо в дата-центре компании, что позволит работникам выполнять свою работу через приложения вне зависимости от их местонахождения.

Appcelerator Arrow (*) Состоит из двух основных компонентов, Builder и Cloud. Arrow Builder позволяет быстро создавать API, модели данных и соединители данных как через мастер настройки, так и через написание кода. Arrow Cloud – это эластичный облачный сервис, где выполняются API и происходит анализ их использования, плюс обеспечивается работа двух десятков смежных сервисов (гео, хранение фотографий и т.п.) с использованием ArrowDB

Appery.io Интегрированные сервисы MBaaS – чтобы разработчики могли сконцентрироваться на приложениях, не отвлекаясь на инфраструктуру.
Читать дальше →

Введение в .NET Core

Reading time19 min
Views196K


На конференции connect(), мы объявили, что .NET Core будет выпущен полностью как программное обеспечение с открытым исходным кодом. В этой статье мы сделаем обзор .NET Core, расскажем, как мы собираемся его выпускать, как он соотносится с .NET Framework и что это все означает для кросс-платформенной разработки и разработки с открытым кодом.
Читать дальше →

Аргументы против использования фрагментов в Android

Reading time10 min
Views34K
Недавно я выступал на конференции Droidcon в Париже с докладом (оригинал на французском), в котором рассматривал проблемы, возникшие у нас в Square при работе с фрагментами и возможности полного отказа от фрагментов.

В 2011-м мы решили использовать фрагменты по следующим причинам:

  • Тогда мы ещё не поддерживали планшеты, но знали, что когда-нибудь будем. Фрагменты помогают создавать адаптивный пользовательский интерфейс, и потому казались хорошим выбором.
  • Фрагменты являются контроллерами представлений, они содержат куски бизнес-логики, которые могут быть протестированы.
  • API фрагментов предоставляет возможность работы с backstack'ом (в общих чертах это выглядит так же, как и работа со стэком Activity, но при этом вы остаётесь в рамках одной Activity).
  • Так как фрагменты построены на обычных представлениях (views), а представления могут быть анимированы средствами Android-фреймворка, то фрагменты могли в теории дать нам возможность использовать более интересные переходы между экранами.
  • Google рекомендовал фрагменты к использованию, а мы хотели сделать наш код как можно более стандартным.

С 2011-го года много воды утекло, и мы нашли варианты получше.
Читать дальше →

Eversync — когда нужные ссылки всегда под рукой

Reading time2 min
Views18K
Сколько закладок накопилось сегодня в вашем браузере?

Многие из нас ежедневно пополняет список избранных страниц на несколько пунктов. А потом, выходя в сеть с планшета или компьютера, с огорчением вспоминает, что последние закладки в смартфоне, значит, адреса страниц придётся набирать вручную. Можно конечно пользоваться одним браузером и тогда часть проблем решится за счет внутренней синхронизации, но если вы привыкли использовать браузеры от разных компаний, то проблема единого набора закладок остается. Одним из способов его решения — приложение Eversync, которое раньше было доступно только для десктопных браузеров, а с сегодняшнего дня и для мобильной системы Android (приложения для IOS и Windows Phone будут готовы в ближайшее время)

Установить EverSync — play.google.com/store/apps/details?id=com.fvd.eversync

image

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

Изменение коммитов в Git

Reading time2 min
Views298K
Это пост для тех, кто начинает работу с Git. Все, что здесь написано по частям можно найти в многочисленных простынях о Git на Хабре. Но я подумал, что неплохо было бы иметь отдельный предельно понятный топик, который бы гуглился по запросу «git изменение коммитов».
Читать дальше →

Хитрости разработчика под iOS. Splash Screen

Reading time3 min
Views41K

Вступление


Приветствую, хабравчане!

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

Сразу предупрежу, что я стараюсь шагать в ногу со временем, поэтому примеры будут под iOS >=5.0 и использовать Storyboard и ARC, но ничего не мешает их портировать на 4.*.

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

Заинтересовавшимся — прошу под кат (Пост содержит скриншоты областей Interface Builder-а, поэтому предупреждаю о траффике).

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

iOS tips and tricks: Динамический Default.png

Reading time2 min
Views3.4K
При разработке под iOS время от времени у заказчиков, да и у некоторых программистов возникает закономерный вопрос: «А можно ли каким-нибудь образом при старте приложения подменять картинку?».

Немного порыскав по интернету, и покопавшись в документации, то напрашивается ответ, что сделать это невозможно по следующим причинам:
  • Файл, который показывается при запуске приложения лежит внутри папки приложения, и, ак следовательно переписать его не является возможным
  • По аналогичной причине нельзя изменить файл Info.plist, в котором сохраняется относительный путь к файлу стартовым изображением

Однако, все же, это возможно сделать стандартными способами, без всякого рода Jailbreak'а. Впрочем, как и у каждого решения есть свои плюсы, минусы и особенности.

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

Книга MEF

Reading time7 min
Views37K
imageЭтой статьей я начинаю цикл, цель которого – создание наиболее полного руководства по Managed Extensibility Framework (MEF) на русском языке. Результатом цикла, в моих планах, станет создание бесплатной электронной книги о MEF. Если у вас есть соображения или предложения по этому поводу – дайте мне знать в комментариях. Я надеюсь, что совместными усилиями мы можем создать отличное руководство.

Эта статья составлена по материалам моих докладов про MEF на разных встречах, в том числе на конференции DevConf.

Я ищу соавторов, критиков, просто людей, которые хотят помочь, в том числе с версткой документа.

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

UIAppearance. Управление внешним видом iOS-приложений

Reading time2 min
Views18K
Стиль или Суть
Сообщение или Носитель
Риторика или Диалектика

Красота — это нечто поверхностное или же идущее из глубинных истин?
Что значит «хороший дизайн»?
Эстетические суждения относительны или абсолютны?

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

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

Пользователи платят за красивые приложения.

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

Исторически даже для незначительного изменения внешнего вида приложения в iOS требовался набор хаков, сопряженных с опасностью отклонения приложения в AppStore. К счастью, начиная с iOS 5 у разработчиков есть новый инструмент: UIAppearance.
Читать дальше →

Information

Rating
Does not participate
Location
Днепр, Днепропетровская обл., Украина
Date of birth
Registered
Activity