Рубрика «разработка» - 237

Об этом приложении написало множество мировых изданий. И не только технических вроде Engadget, Techcrunch и CNET. Небольшой апп попал в поле зрения таких грандов, как журнал Time, Forbes и Business Insider и шоу Эллен ДеДженерес.

Истории о разработчиках: PhotoMath от MicroBlink - 1

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

В этой теме хотелось бы познакомить читателей с относительно новым подходом к контролю доступа под названием Attribute-based access control. Знакомство будет происходить на примере сравнения с популярным нынче Role-based access control.
Читать полностью »

Борьба с 2D-физикой в Unity на примере бесконечной игры - 1
Мой странный творческий путь занес меня в разработку игр. Благодаря отличной студенческой программе от IT-компании, название которой СостоИт из одной Греческой МАленькой буквы, сотрудничающей с нашим университетом, удалось собрать команду, родить документацию и наладить Agile разработку игры под присмотром высококлассного QA-инженера (здравствуйте, Анна!)

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

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

7 золотых правил одного программиста - 1Это статья про семь простых правил которые я сформулировал для себя за годы работы программистом. Семь правил которые подняли мою эффективность. Сделали меня лучше. Это мои правила и они работают для меня. Я не пытаюсь навязать их вам, я хочу поделиться с вами, и возможно, узнать о том, каких правил и принципов придерживаетесь вы.

Компьютер всегда прав

Самая раздражающая ситуация в программировании — когда код верный, но не работает. “Да тут три строчки, блин, просто негде ошибиться! Наверное баг! Пойду потрачу три дня на изучение баг-репортов компилятора/интерпретатора/фреймворка...”. Возникает чувство, будто компьютер над вами издевается!
Тут главное помнить, что в этих трех строчках есть ошибка. Если код работает не верно — значит код написан не верно. Точка. Виноваты только вы. Универсальный совет — идите спать! Ну или хотя бы отвлекитесь на чашку чая. Когда, через некоторое время, вы вернетесь к коду, наверняка станет ясно, что тут лишний оператор отрицания, или перепутаны две переменные с похожими именами, или еще какая-нибудь мелочь, в которой мы никогда никому не признаемся.
Читать полностью »

image

Фреймворки Google Web Toolkit и Vaadin достаточно хорошо себя показывают, когда вы просто используете их. Если вдруг вам понадобилось расширить их функциональность, то вам придётся серьёзно попотеть. В этой статье я хочу рассказать, как написать простой компонент на GWT, добавить к нему серверную часть Vaadin и использовать в своём приложении. Я не буду создавать некий совсем пустой GWT/Vaadin проект и с самого начала настраивать компиляцию GWT, вместо этого возьму приложение на базе CUBA.Platform, в котором и реализую сам компонент, а затем попробую в деле. Так будет видно, насколько хорошо всё впишется в настоящее приложение. Отдельное внимание я бы хотел уделить отладке компонента, поскольку она нетривиальна и всегда вызывает трудности у разработчиков.

Хочу предупредить, что не всё описанное в статье относится к GWT и Vaadin, часть шагов и приёмов применимы только в контексте использования CUBA.Platform, за счёт этого сильно упрощена настройка окружения и некоторые рутинные действия.
Читать полностью »

Фотосинтез, пистолет, яйца, хлеб и газировка

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

image

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

В статье показаны примеры практического использования измерителя уровня углекислого газа МТ8057: изучение фотосинтеза растений и дыхания яиц, исследование обстановки в офисе, и выяснение причины, почему Маяковский пытался искоренить все заседания.
Измеритель испытал шок под дулом пистолета и у стакана газировки, побывал на кухне, в ведре с картофелем и пакете с хлебом, опускался в погреб и прокатился в автомобиле.

Статья получилась объемная и для улучшения восприятия разбита на три части.

  • Часть 1: фотосинтез, все живое дышит, шоковые измерения.
  • Часть 2: вентиляция помещений, вред собраний, преимущество двух приборов для проведения экспериментов.
  • Часть 3: графики, калибровка, разбор прибора, принцип работы.

Читать полностью »

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

Читать полностью »

WebSocket RPC или как написать живое WEB приложение для браузера - 1

В статье речь пойдет о технологии WebSocket. Точнее не о самой технологии, а о том, как ее можно использовать. Я давно слежу за ней. Еще когда в 2011 году один мой коллега прислал мне ссылку на стандарт, пробежав глазами, я как-то расстроился. Выглядело настолько круто, и я думал, что в момент, когда это появится в популярных браузерах, я уже буду планировать, на что потратить свою пенсию. Но все оказалось не так, и как гласит caniuse.com WebSocket не поддерживается только в Opera Mini (надо бы провести голосование, как давно кто-либо видел Opera Mini).

Кто трогал WebSocketы руками, тот наверняка знает, что работать с API тяжело. В Javascript API достаточно низкоуровневый (принять сообщение — отправить сообщение), и придется разрабатывать алгоритм, как этими сообениями обмениваться. Поэтому и была предпринята попытка упростить работу с вебсокетами.

Так и появился WSRPC. Для нетерпеливых вот простое демо.
Читать полностью »

Всем привет,

Как вы знаете, JetBrains сейчас активно ведет разработку сразу нескольких продуктов, поддерживающих языки С и С++. ReSharper C++ и CLion сейчас пока находятся в стадии ранней программы тестирования (Early Access Program), а в AppCode мы не только добавляем функции для работы с новым языком Swift, но и активно дорабатываем поддержку С и С++.

27-28 февраля 2015 в Москве пройдет первая в своем роде конференция C++ Russia, организованная сообществом C++ User Group Russia. Нас ждет множество отличных докладов на самые разнообразные темы из мира С++.

Читать полностью »

Пишем драйвер поддержки графовой базы данных Neo4j для Meteor

В Meteor любая работа с даными связана с двусторонней реактивностью. На данный момент 100% реактивностью обладают встроенная в Meteor MongoDB и Redis (оба драйвера разработаны в стенах Meteor), частично реактивность реализована для MySQL и MSSQL (сторонними разработчиками).

Для вышеуказанных баз данных реактивность реализована посредством observer'ов, которые сообщают где, как, когда и какие данные изменились, для того чтобы драйвер, обслуживающий связь [данные <-> представление], знал какие данные и у каких клиентов обновить. Neo4j лишен каких-либо watcher'ов и observer'ов, но это нас не остановило. Как мы вышли из данной ситуации и зачем нам нужен Neo4j читайте под катом.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js