• Анимация фрагментов в Android
    0
    Похоже, исчезли.
  • VKFS — Файловая система для VKontakte на основе Fuse
    0
    Ну как, обзавелись хранилищем такого размера?
  • Реактивное программирование под Android
    0
    > сабскрайбер сам разберется когда прервать работу если активити уничтожается

    unsubscribe надо делать вручную. RxJava ничего не знает про жизненный цикл Activity или каких-либо других сущностей Android. Немного подробнее можно прочитать здесь в разделе «Fragment and Activity life-cycle».
  • Peewee – лёгкая, гибкая и очень быстрая ORM на Python
    0
    То что вам хочется, называется «миграции». Конкретно в Peewee они есть, но не сильно мощные.
  • Архитектура простой 2D игры на Unity3D. План, факт и работа над ошибками
    0
    Да. Я даже скажу больше. Во всех современных 2D движках используется такой способ рендеринга. =) Наверное, только в Adobe Flash ещё не до конца к этому пришли, но прогресс идёт.
  • Архитектура простой 2D игры на Unity3D. План, факт и работа над ошибками
    +1
    Добавлю, что 2d режим в юнити ещё сыроват. Я делал небольшой проект, где-то с десятком анимаций и сотней статичных спрайтов. Через некоторое время стало крашиться где-то в недрах движка на загрузке анимаций. Воспроизводилась эта бага месяц назад точно.
  • Google повышает сайты с HTTPS в выдаче
    0
    Бывает. Я уж подумал что гугель отозвал.
  • Google повышает сайты с HTTPS в выдаче
    0
    Где можно почитать подробнее?
  • 10 альтернатив магазину приложений Google Play
    +2
    mikandi
  • [кейс] Как вернуть долг от бывших работодателей или про хитрые переговорные стратегии
    –2
    Да, так можно сказать.
  • Правильные имена и полезные ошибки
    0
    Получилось пять штук взять? :)
  • Опыт создания кроссплатформенной игры (iOS/Android)
    +3
    Коротко ответить на этот вопрос невозможно, слишком много различных факторов надо принимать во внимание.

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

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

    Собственно вопрос уже давно нужно ставить не как «падает производительность или не падает», а «как мне использовать правильно встраиваемые скриптовые языки так, чтобы не падала производительность».

    Понятно, что здесь я произнес общие слова и в каждой конкретной игре есть свои особенности. Может, в некой игре X скрипты не нужны совсем и можно обойтись грамотно спроектированными данными.

    Сравнивать (может быть) имеет смысл два скриптовых языка, например Lua и Javascript, но и то не по скорости, а скорее по удобству биндинга, управлению памятью, гарантированному объему памяти которую потребляет интерпретатор и всему такому.
  • В Firefox добавили флэш-плеер Shumway, написанный на HTML5
    +3
    Зачем грубить? Что вы понимаете под «ручным управлением памятью»? OP_li* и им подобные? Если да, то назвать это ручным управлением памятью можно с большой натяжкой. В исходниках упоминания о них присутствуют github.com/mozilla/shumway/blob/master/src/avm2/opcodes.js#L98. Используются ли они в работе и если да, то насколько эффективно можно понять только изучая исходники более глубоко.

    В любом случае их эффект не будет аналогичен таковому в AVM, которая транслировала вызовы этих опкодов в native код, здесь же их вызов будет заменён неким javascript вызовом, что нивелирует эффект и теряется смысл их использования.
  • В Firefox добавили флэш-плеер Shumway, написанный на HTML5
    +1
    Flash C++ Compiler компилирует C++ в инструкции Flash машины.
  • Cocosino
    0
    В cocosbuilder ведь тоже на js игровой код писать надо, так что с переносимостью всё ok.

    Проблема в builder и cocosino немного в другом — в неудобстве написания native extensions. Надо не только через JNI продираться, например, но и через Spidermonkey.
  • Инфографика — Tor, HTTPS и безопасность
    +2
    Покупаете сервак за пять баксов в месяц и настраиваете сами.
  • Заметки для игры в бизнес. Часть 2
    0
    Обе статьи хороши. На собственном опыте могу подписаться под каждым пунктом.
  • Модификация стоковых прошивок для Android. Часть 2
    +4
    Здесь намекают на вредоносные приложения :) на некоторых сайтах предлагают обновится даже если оперы нет
  • Классы в lua, или избавляемся от двоеточия
    +1
    > И я считаю, что своей статьёй кому-то помог

    Как можно помочь плохой статьёй? Как можно помочь кодом, для понимания которого даже хорошему программисту надо затратить заметное время для понимания? Вы выложили код, почти без объяснения и думаете что это кому-то поможет? Тот кто может в нем сейчас разобраться — может наколхозить такого over 9000.

    И я даже не говорю ещё про то, что так в lua лучше не делать и про вред велосипедостроения.

    > что уж лучше такая статья, чем бесконечный поток малополезных новостей

    Это плохая позиция. «Остальные выкладывают трешак, ну и я выложу тоже почему нет».
  • Классы в lua, или избавляемся от двоеточия
    +1
    Зачем нужен весь этот колхоз не очень понятно:
    1. Есть готовые реализации, например, вот хорошая github.com/kikito/middleclass/
    2. Lua предполагает несколько другую парадигму вместо ООП, вот ей и надо пользоваться.

    А так получилась статья из серии «а смотрите как я могу». Можете, молодец. Но зачем это здесь? Кому нужен этот непонятный код?

    > Сумбурно звучит, знаю, но лучше не могу объяснить — не спец :)
    > Не судите строго, может кому-то зачем-то пригодится это решение!

    Ноу коммент. Филиал ЖЖ открыт?
  • HTC One — много нового в одном телефоне
    +1
    MX Player. Я опробовал практически все видеоплееры и в итоге остановился на нем.

    Поддержка субтитров есть. Кодировку менять можно. Субтитры понимает как встроенные (в том числе можно выбирать между несколькими), так и внешние.

    Разные аудиодорожки понимает.

    Ещё из полезных фишек — выбор аппаратного/программного декодирования отдельно для видео и аудио.
  • DOOM 3 BFG — обзор исходного кода: введение (часть 1 из 4)
    +2
    > нелюбимые офисные приложения

    Я нигде не упоминал люблю я офисные приложения или не люблю. Это ваши выдумки.

    > Не такой уж он и большой, кстати

    Какой же он? ) С какого количества строк начинается большой?
  • DOOM 3 BFG — обзор исходного кода: введение (часть 1 из 4)
    +1
    Плохого в них ничего нет, я немного не понял вопрос.

    Здесь я имел в виду, что код игры достаточно сложный и большой. Соответственно, обсуждать его нужно с этих позиций и написанные мной мысли применимы именно в таком контексте.
  • DOOM 3 BFG — обзор исходного кода: введение (часть 1 из 4)
    0
    Я заметил тенденцию восприятия моего текста фрагментарно. Не забывайте про комплексность проблемы. Про то, что у нас здесь большой проект, которому нужна производительность, портируемость, возможность работы над ним нескольким программистам и наверное что нибудь ещё. В случае написания каких-нибудь десктопных приложений ваш подход вполне может иметь место.

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

    > Что значит найти?

    Предположим, что объект в unique_ptr у нас удаляется только по завершении жизни некоего класса, жизнь которого зависит от другого класса, а того от третьего. И таких классов в проекте, ну, пусть даже сотня. А у некоторых зависимость не от одного, а, предположим, от жизни двух или трех. Это что же, везде сидеть искать где заканчивается scope? Сами в своем коде мы может это всё и сможем проверуть. А коллеги?

    В случае с простым delete мы опять же можем это сделать быстрее и точнее. Всегда можно быстро тыкнуть в код и сказать — вот, класс удаляется здесь, и он ещё тянет за собой вот эт и то. Явно.

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

    > Стандартная библиотека, она одна. Она на то и стандартная

    Я имел в виду реализации стандартных библиотек. У которых местами немного разное поведение.

    > вызвали вы функцию printArray(ptr), а она ptr и удалила

    Боюсь что этот пример как раз показывает отсутствие преимуществ у «умных» указателей в данном случае, т. к. неумелый программист может и reset сделать где не надо, что полностью нивелирует профит. И если явный delete мы найдем быстро, то неявный out of scope можем найти быстро не всегда. Как минимум придется посмотреть где что умирает и от чего зависит.

    > можно ориентироваться на MSVC как на
    > минимально поддерживающего новые фичи

    Мы всё ещё говорим про игры уровня Doom 3? Вы программируете только для Windows?
  • DOOM 3 BFG — обзор исходного кода: введение (часть 1 из 4)
    0
    > Во-первых, мы точно знаем, что он будет удален. При out-of-scope.

    Но вы пропустили ещё одну часть моей мысли. Этот out-of-scope ещё надо найти. Думаю, не надо объяснять что он очевиден только при использовании в пределах функции.

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

    > В 99% процентов случаев только там.

    Оставшийся процент как раз и даст о себе знать. Никого не интересуют простые паттерны использования той или иной технологии.

    > Прошерстив код на предмет delete.

    Да, но ТОЛЬКО на предмет delete и ничего более.

    > Правило такое хорошего тона.
    > нормальные люди очень редко использют reset посередине использования

    Я бы не стал полагаться на это при написании больших проектов.

    > если изуить стандартную библиотеку

    Здесь вы, кажется, пропустили мой самый первый абзац. Стандартных библиотек, кстати, несколько. Каждую изучать?
  • DOOM 3 BFG — обзор исходного кода: введение (часть 1 из 4)
    –1
    В вашем комментарии я вижу уже как минимум два неявных места:

    > они эффективно раскручиваются, иналйнаятся и оптимизируются
    > от всех геттеров не останется вообще ничего после инлайна.

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

    > Тот же unique_ptr развернется в пару new и delete

    здесь мы, например, не всегда сможем быстро сказать где конкретно (и когда) будет удален объект. придется шерстить код не только на предмет reset, но и на предмет out of scope / operator=. Если же мы используем сырые указетели, то место удаления можно предсказать с точностью 100%.

    > Что вы понимаете под «неявными местами», мне непонятно.

    Надеюсь я добавил понимания.

    Ещё раз обращаю ваше внимание, что здесь я говорю именно про игровые проекты уровня Doom 3 (собственно про это и топик). Если мы пишем другие проекты, то применение технологий стоит рассматривать в их контексте отдельно.
  • DOOM 3 BFG — обзор исходного кода: введение (часть 1 из 4)
    –2
    Например, smartptr добавляет видимую простоту, но в долгосрочной перспективе он добавляет большое количество неявных мест, что в итоге не идет на пользу проекту.

    Если бы это было, предположим, офисное приложение, то это было бы не так страшно, но в условиях когда идет борьба за каждый кадр — чем меньше таких штук тем лучше, тем проще оптимизировать, тем проще предсказать поведение программы и так далее.
  • DOOM 3 BFG — обзор исходного кода: введение (часть 1 из 4)
    +3
    Связано с тем, что это игра. А при написании игр важнейшим фактором является производительность. Соответственно, дорожат каждой миллисекундой.

    Также, как и везде, большое значение имеет то, насколько код прост. Чем крупнее проект, тем важнее этот фактор.
  • Microsoft запатентовала систему достижений за просмотр ТВ
    +2
    Прототип телекрана.
  • Знакомство с IBM Tivoli Monitoring
    0
    > проблема возникла далеко не из-за того, что это была система от IBM

    Конечно, я и не ставил целью намекнуть на это. Просто забавная история и не более того. =)
  • Знакомство с IBM Tivoli Monitoring
    0
    Не могу не оставить эту замечательную историю. oldmann.livejournal.com/21012.html
  • Новая политика Firefox в отношении cookie
    0
  • 1986ВЕ91Т: Что же внутри российского Арма?
    +1
    Эх, хотелось бы чтобы у нас развивалась собственная элементная база чуть быстрее чем это происходит сейчас.
  • Работайте так, словно таланта у вас вообще нет
    +7
    Попробывать роботу
  • Уильям Гибсон попробовал, что такое Google Glass
    0
    На мой взгляд как трилогия, «Трилогия Моста» получилась гораздо удачнее «Киберпространства». Однако, «Нейромантика» ни одна из остальных пяти книг по отдельности не переплюнула. :)
  • 4 ошибки, которые я допустил как технический директор
    +20
    Расскажите про заказчиков из арабского мира пожалуйста.
  • Вероятностные модели: байесовские сети
    +1
    Кстати, возвращаясь к недавнему обсуждению Stand Alone Complex, хочу отметить, что второй сезон, который я досмотрел на днях, получился лучше первого. Если качество сюжетной части можно обсуждать, то построение эпизодов, чередование филлеров и сюжетных серий сделано на порядок лучше, что делает сериал ещё более захватывающим.

    Solid State Society тоже крутой.

    Так что рекомендую.
  • PlayScript
    0
    Хотелось бы ещё послушать кулстори про использование в продакшне.
  • Веб-типографика сегодня. Часть V
    0
    Да, шестую часть очень охота. =3
  • ThL W8 — гармоничное сочетание цены и качества
    0
    Да, я помню эту эпопею. Сам хотел G3, но не дождался и взял ThL W3+. Как раз к тому времени когда захочу поменять — G4 поступит в продажу, ха-ха.