Приложение написано на сценах. Root-контроллер называется DisplayViewController
. Лейбл с введенными цифрами обернули в контейнер DisplayView
и добавили жесты LongPress, Swipe и Tap.
User
Пирамида инспекции кода
Недавно я разместил в своем Твиттере небольшую иллюстрацию, которая проливает свет на эту проблему и дает наводку, на каких аспектах следует сосредоточиться прежде всего, и назвал ее «Пирамида инспекции кода». Ее назначение – помочь держать в приоритете составляющие инспекции кода, имеющие первостепенную важность (по крайней мере, на мой взгляд), а так же указать, какие составляющие можно и нужно автоматизировать.
Некоторые читатели попросили дать альтернативную, постоянную ссылку, которой можно делиться; другие хотели получить картинку в высоком разрешении. Поэтому я выкладываю ее повторно, на своем сайте. Вы можете также скачать изображение в формате SVG.
Финансовая устойчивость
Каждый раз, когда мы смотрим на какую-либо огромную компанию, будь это McDonald`s, Apple или Starbucks мы думаем: “У них хороший продукт, много клиентов, у них все хорошо, куплю я эту компанию, она будет расти!”
Но мы не знаем, какой этот бизнес изнутри. А что, если он тратит практически все средства чтобы сделать продукт, либо вообще, имеет отрицательный денежный поток? А может ей не хватает денег чтобы развиваться? Может из-за смены руководства у компании появились проблемы, и она стала неэффективной?
А что, если она когда-то набрала огромное количество долгов и сейчас сводит концы с концами, чтобы выплатить их?
Тестирование контракта потребителя сервиса — часть 2
В предыдущем блоге я представил концепцию контрактных тестов. Сейчас мы рассмотрим написание контрактных тестов для сервисов, которые взаимодействуют через Http. Они написаны с использованием:
Создание указателей в C#
Создание указателей в C#
Привет всем, в данной статье я приведу несколько способов создания указателей в C#.
Создание указателей в C#
Почему в InVision затаскивают микросервисы обратно в монолит
Прим. перев.: автор этой статьи — Ben Nadel, сооснователь и главный инженер InVision App Inc. Миссию своей команды, поддерживающей серверную инфраструктуру компании, он сам характеризует как «advocate for the users», т.к. её главная цель — гарантировать пользователям InVision «получение опыта, который они заслуживают». Его опыт — яркая иллюстрация того, что микросервисы не серебряная пуля.
Если вы следите за мной в Твиттере, то наверняка заметили, что периодически я публикую победные твиты о возвращении одного из наших микросервисов в InVision обратно в монолит. Обычно эти твиты сопровождаются гифкой, в которой Танос вставляет последний Камень бесконечности в Перчатку бесконечности. Нахожу ее вполне уместной, поскольку воссоединение камней придает Таносу невероятную силу — так же, как воссоединение микросервисов придает силу мне и моей команде. Меня много раз спрашивали, почему я избавляюсь от микросервисов. Настало время поделиться своими мыслями по поводу этого путешествия в мире разработки веб-приложений…
Проектируем мульти-парадигменный язык программирования. Часть 4 — Основные конструкции языка моделирования
Компонента моделирования предназначена для декларативного описания модели предметной области в форме онтологии — сети из экземпляров данных (фактов) и абстрактных понятий, связанных между собой с помощью отношений. В ее основе лежит фреймовая логика — гибрид объектно-ориентированного подхода к представлению знаний и логики первого порядка. Ее основной элемент — понятие, описывающее моделируемый объект с помощью набора атрибутов. Понятие строится на основе других понятий или фактов, исходные понятия назовем родительскими, производное — дочерним. Отношения связывают значения атрибутов дочернего и родительских понятий или ограничивают их возможные значения. Я решил включить отношения в состав определения понятия, чтобы вся информация о нем находилась по возможности в одном месте. Стиль синтаксиса для определений понятий будет похож на SQL — атрибуты, родительские понятия и отношения между ними должны быть разнесены по разным секциям.
В этой публикации я хочу представить основные способы определения понятий.
Как упростить жизнь ИТ-разработчику и ускорить time-to-market с месяца до двух дней
На эту тему мы провели вместе с Dell Technologies и AMD онлайн-митап 29 октября, который в общей сложности увидело более 150 ИТ-разработчиков — начинающих и не очень.
Ниже запись мероприятия на случай, если вы хотели присоедениться и посмотреть, но не смогли.
АМА с Хабром #18. Марафон, Промо и обновленный дайджест
WebAuthn в реальной жизни
Мы уже писали новость об этом событии здесь, на Хабре. В этой статье я хочу рассказать подробнее о причинах внедрения WebAuthn в наши сервисы и о технических аспектах работы с этой технологией.
Вентиляция с рекуперацией в квартире. Без воздуховодов и СМС
Это
Итак, всё началось с духоты. Точнее, с утепления квартиры слоем экструзионного пенополистирола по всему периметру (панельная 9-этажка родом из 80-х, с кучей сквозящих углов). В результате чего, квартира стала условно герметичной и вопрос свежего воздуха встал в полный рост.
ConfigureAwait: часто задаваемые вопросы
Async
/await
добавили в .NET более семи лет назад. Это решение оказало существенное влияние не только на экосистему .NET — оно также находит отражение во многих других языках и фреймворках. На данный момент реализовано множество усовершенствований в .NET с точки зрения дополнительных языковых конструкций, использующих асинхронность, реализованы API-интерфейсы с поддержкой асинхронности, произошли фундаментальные улучшения в инфраструктуре, благодаря которым async
/await
работает как часы (в особенности, улучшены возможности производительности и диагностики в .NET Core).ConfigureAwait
— один из аспектов async
/await
, который продолжает вызывать вопросы. Надеюсь, у меня получится ответить на многие из них. Я постараюсь сделать эту статью читаемой от начала до конца, и вместе с тем выполнить ее в стиле ответов на часто задаваемые вопросы (FAQ), чтобы на нее можно было ссылаться в последующем.Я написал кроссбраузерное расширение для вкладок, но вы так не делайте
Длинное, нудное вступление с претензией на манию величия
Однажды я обнаружил, что меня, как всегда, что-то сильно не устраивает в этом мире. А именно, введя какой-то длинный запрос в поисковике на настольном компьютере и затем перейдя на планшет, я никак не мог вспомнить дословно текст запроса, чтобы выйти ровно на те же результаты. А начиналось все так хорошо. Я увидел в поисковике ссылку на ответ на свой вопрос и понял, что она сулит долгое чтиво. Тогда я выключил комп и плюхнулся на диван с планшетом с мыслью о том, что вот сейчас я просто заново вобью все это в поисковик, открою ту ссылку теперь уже на планшете и лежа, спокойно, в более удобной позе прочитаю… Но не тут-то было. Какие-то мелкие разночтения в тексте — и моей ссылки уже нет в выдаче поисковика. Воспроизвести саму ссылку — тоже не вариант: она слишком длинная. Ломая голову над вариантами текста запроса, я чуть было в ярости не сломал планшет. Черт побери, пришлось вставать, снова включать компьютер, запускать браузер и копаться в истории, чтобы найти точный текст своего запроса.
Расширение, установленное в Chrome и Firefox
Экзотичные заголовки HTTP
Привет Хабрахабр! В этой статье будут наглядно продемонстрирован результат применения некоторых важных и экзотичных HTTP заголовков, большинство из которых связаны с безопасностью.
Поднимаем Owncloud с нуля с динамическим IP и Let's Encrypt. Тысяча слонов!*
Давно хотел написать целостный туториал по поднятию Owncloud в условиях домашнего сервера или небольшой компании до 500 пользователей. Owncloud — это прекрасный open-source проект, который позволяет на собственной инфраструктуре поднять свой вариант сервера синхронизации. По возможностям очень похож на Dropbox, а в чем-то его и превосходит. Огромный плюс — отсутствие ограничений по объемам хранения, полный контроль над сервером. Минусы тоже очевидны: вам самим придется следить за всем этим безобразием и беспокоиться о надежности сервера, валяющегося на антресолях или в шкафу.
Совсем недавно мне подвернулась задача по развертыванию Owncloud в домашне-боевых условиях. Я честно отработал свои два литра кошерного русского имперского стаута и решил поделиться своим опытом, собрав все воедино. Итак, сегодня мы рассмотрим:
- Развертывание актуального LEMP-stack
- HTTPS. Let's Encrypt для Nginx с автоматическим обновлением сертификата
- Конфигурирование Nginx для Owncloud
- Кэширование php-apcu
- Подключение внешнего основного хранилища по NFS
Ошибки анкетных опросов. 2 ошибка: формулировка анкеты. 13 случаев непонимания и манипуляций в опросе (1 часть)
Читать первую статью Ошибки анкетных опросов. 1 ошибка: смещение выборки. 8 способов привлечь нужных респондентов
В этой статье я расскажу, почему проблема понятности анкеты для участников опроса гораздо важнее, чем кажется на первый взгляд. Рассмотрим также примеры манипуляции мнением респондентов, фальсификации результатов опроса и использования опросов в маркетинговых целях.
Подборка: Более 70 источников по машинному обучению для начинающих
Индикатор кулачкового аналогового компьютера / Wiki
В нашем блоге мы уже рассказывали о разработке системы квантовой связи и о том, как из простых студентов готовят продвинутых программистов. Сегодня мы решили вернуться к теме машинного обучения и привести адаптированную (источник) подборку полезных материалов.
Лекции по биоинформатике
Рад представить вам 27 лекций по биоинформатике (включая описания, слайды и полные видеозаписи). Лекции читались на летней школе по биоинформатике, которая проходила в июле 2014 под Санкт-Петербургом, собрала вместе 100 студентов со всей России и СНГ, а также лекторов из МГУ, МФТИ, Сколтеха, РАН, СПбАУ, СПбГПУ, СПбГУ, Yale University, Fox Chase Cancer Center, George Washington University, Pennsylvania State и других прекрасных организаций.
Школу традиционно проводила команда Института биоинформатики, а поддерживали ее СПбАУ РАН, СПбГУ, JetBrains, РВК, BIOCAD, EMC, Фонд «Династия» и РФФИ, благодаря чему удалось сделать мероприятие абсолютно бесплатным для всех участников.
Видео докладов от SPB .NET Community
C июня этого года мы начали проводить митапы SPB .NET Community в Санкт-Петербурге и за это время у нас скопилось немало видео, которым я и хочу поделиться. Кому интересно посмотреть доклады про новшества в Visual Studio 2015, безопасность платформы ASP .NET, детали разработки многозадачных приложений и про взаимодействие с unmanaged миром из C#, прошу под кат.
«Многие выбирают Agile, потому что больше ничего не умеют» — интервью с Дмитрием Завалишиным из DZ Systems
О чем мы поговорили:
- кем Дмитрий себя сегодня ощущает: бизнесменом или айтишником;
- какие ниши заняли мобильные и веб-приложения в современной жизни;
- что такое горизонтальные и вертикальные рынки;
- чем отличается бизнес по разработке для этих рынков, и чем отличаются коробочные решения от кастомных;
- как можно быстро оценивать клиентов по трем параметрам;
- как найти хорошие кадры на проект;
- почему Agile — это беда для российского рынка разработки;
- наконец, как сделать ваших заказчиков счастливыми.
Все это — в традиционном видеоинтервью:
А тех, кто предпочитает буквы картинкам, приглашаю под кат, где вы найдете расшифровку этого интервью.
Enjoy!
Information
- Rating
- Does not participate
- Location
- Харьков, Харьковская обл., Украина
- Date of birth
- Registered
- Activity