• Apple Music для разработчика
    0
    Если работаем с плеером приложения (MPMusicPlayerApplicationController), то провести транзакцию, которая не изменяет состояние очереди, но получает из неё объекты.

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

    Могу лишь предложить перейти на использование applicationQueuePlayer, но это означает полный отказ от управления состоянием приложения Music.app и не даст обработать указанный сценарий перехода из Music.app в ваше приложение.

    P.S. Есть, конечно, идиотский вариант: остановить проигрывание и поскипать треки туда-сюда проверяя какой трек обозначается как текущий, после чего вернуться на изначальный трек и продолжить проигрывания с заданной точки.
  • Apple Music для разработчика
    0
    > Из плеера я не смог получить список песен, которые в очереди сейчас играют

    Вот с этим проблем не было, если добавляются именно песни (по идентификаторам в iTunes Store), то в очереди будут `MPMediaItem` с соответствующими идентификаторами

    > а получение лирики видимо требует дополнительный запрос

    Тексты песен берутся из мета-тагов и не доступны для Apple Music (только если артист сам не прописал в мета-таги тексты). Apple Music в приложении берёт тексты из musixmatch, у них есть API и SDK (можно в частности получать тексты при установленном приложении musixmatch), однако имеются вопросы с авторскими правами при таком использовании. Разработчик приложения Soor был вынужден выключить показ песен за неимением формальной договорённости с musixmatch, потому что иначе приложение не проходило ревью в App Store

    > iPad, на котором тестируют приложения, из коробки не умеет авторизацию в Apple music
    Тут не очень понимаю в чём дело (локальная проблема с конкретным устройством?), будет интересно почитать подробности

    А вот с плейлистами полная беда, даже абсурд какой-то: нельзя удалять плейлисты, которые были созданы в собственном приложении. Пока я не вижу альтернатив ведению собственных плейлистов в приложении с возможностью экспорта в Music.app и импортирования в одну сторону плейлистов из Music.app в приложение.
  • Apple Music для разработчика
    0
    (удалено, неправильная ветка)
  • Apple Music для разработчика
    +6
    это не перевод, это дамп из моей головы
  • «Рок это жёстко» или я.музыка как граф
    0

    Сложно сказать по размерам, я тестировал только на ситуациях, приближенных к реальному использованию (три-четыре популярные группы, типа beatles и led zeppelin, с открытыми вложенными подграфами). Всё это дело работало на html5 (отрисовка на канвасе с помощью pixi.js, граф расчитывал с springy, приложение — cordova), была тестовая реализация на SVG, но последний оказался годен только для прототипа.


    По производительности: сильно не тормозило, но лаги были. Во многом из-за однопоточности вычислений, которые в браузерном js вызывают боль (да, даже воркеры там в итоге не очень помогли). Если бы сейчас делал такую визуализацию интерактивную с расчётом графов на клиенте, то только на нативщине.


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

  • «Рок это жёстко» или я.музыка как граф
    0
    Я разрабатывал подобный сервис (с 2014 по начало 2017, самой идее ещё больше времени), но реальной заинтересованности у аудитории не нашлось и деньги надоело на него тратить. Весов не было, но были связи вида музыкант-группа. Много идей было, в том числе с рекомендациями.

    Вот так вот оно выглядело:
    habrastorage.org/webt/zv/xy/lu/zvxylugr6onc7o85ckypvhpjsnq.png
    habrastorage.org/webt/la/gw/oq/lagwoq1mvmg_ytjjfmfe4bn3xvo.png
    habrastorage.org/webt/jw/4z/fy/jw4zfy48yeiknxqd95dsxbzfkfe.png

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

    Пишите, если у кого интерес есть.
  • Книга «Head First. Изучаем Ruby»
    +2
    Так вот же, выложили
  • С чего началось использование [x] в дизайне графических интерфейсов
    0
    Спеллчекера в Visi On, судя по всему, тоже нет: “multiple apps are ruinning at the same time”!
  • 50 лет Бейсику!*
    +2
    «Кто хочет стать миллионером», не так уж и давно, 10 лет назад. На диком количестве вложенных ифов и миллионе вручную набитых копипаст для отрисовки шестигранников. Функции? Case? Random? Не, тогда не слышал. После этого была стрелялка по летящим кружочкам. Вот, найти бы сейчас всю эту прелесть и показать преподавателю. Чёрт возьми, если бы он не занимался со мной одним из всей школы бейсиком, чем бы я сейчас занимался? Но подожду другого уютного тредика для ламповых воспоминаний о крутых преподавателях.
  • Comment from a drafted post.
  • Перевод книги The Art of Unit Testing
    +7
    Здесь находится стандартный комментарий о необходимости знания английского языка для работы в сфере IT.

    И комментарий о спорной правовой основе для осуществления данного перевода.
  • Законопроект об обязательной регистрации сайтов принят в первом чтении
    +8
    Хотя, у последних всё впорядке с этим.

    Privacy

    We know that everyone cares about their privacy these days. We care about your privacy concerns, and guarantee all of your data will be completely discarded[1].

    [1] Except for cases where it will be stored indefinitely to ensure compliance with government regulations[2].

    [2] When we say 'government' we mean NSA, CIA, FBI, TSA, Communist Party of China (CPC), Nestle, The Coca-Cola Company, the KGB, some of your coworkers and our friends (especially if there is something funny).
  • Законопроект об обязательной регистрации сайтов принят в первом чтении
    +14
    Думается, вы блог будете создавать на блогоплатформе и, тогда, это будет батхерт владельцев платформы о сохранении всех фотографий вашего котёнка.

    А вообще какой простор — так можно загружать на файлообменники тонны мусора из /dev/urandom и, по законодательству, его нельзя будет удалить. А если, скажем, ddos идёт в такой форме? Красота. Чуваки, это прекрасная инициатива. Ждём, когда вселенная коллапсирует.

    И, кстати, вспомнился проект devnull-as-a-service.com — их бизнесу, увы, тоже скоро придёт конец.
  • Как бы повернулась история: Samsung мог купить Android первым
    0
    Даже тогда большая часть контента шла через всякие iFree и “партнёрские” продажи на wap-сайтах.

    Килобайт wap-трафика же, хоть и влетал в копеечку, но это вызывало проблемы у меньшинства активных пользователей, поскольку настройка интернета производилась автоматически редко и по большей части делалась людьми, кто разбирался как настроить ”internet-точку доступа” или, в конце концов, прописать левую wap-точку на чужой или самоподнятый сервер. Особые отчепенцы ещё и сервера оперы мини или свои zip-проксики прописывали в настройках.
  • Опыт создания бюджетной школьной информационной системы
    0
    Может у них триместры?
  • Objective-D — альтернатива или дополнение к Objective-C
    +17
    Всё это больше напоминает стандартный подход по написанию фреймворка, вместо использования существующих. “Мне тут усё не нравится, сейчас усё сделаем”. На выходе имеем фреймворк (язык), который пригоден только для нас. Мы на нём что-то ещё где-то сможем сваять (если что, мы подправим фреймворк/язык), а другие — увольте.

    В подтверждение к сказанному пара тезисов:
    • В отличие от разработчиков CoffeeScript, SASS/LESS, Dart и RubyMotion (ой, да оно же как раз и позволяет писать на другом языке под iOS), автор не является экспертом Objective C разработки
    • Автор так же не имел опыта iOS разработки и программирования на Objective C до разработки ”Objective D“
    • Почему вообще Objective D? Вот, например, существует Objective J и фреймворк Cappuccino: чуваки взяли Objective C, Cocoa и сделали красивый порт на JS.
    • Большая часть “фишек” не имеют строгой аргументации и скорее сделаны, потому что автору так больше нравится: “Ужасно, что Objective-C не поддерживает дженерики и использует утиную типизацию”, “Мне нравятся именованные параметры в Objective-C”, “Мне нравятся перечисления в Java


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

    P.S. Оно того стоило? Самое отстойное ведь — вместо продукта (игры) большую часть времени писать велосипед с другим цветом сидения.
  • Обзор бесплатных сервисов для веб-разработки
    0
    Mockingbird был прекрасен, пользовался с год платным аккаунтом, но разработчики его забросили 2 года назад. Как результат имеем огромное количество наобещанного и висящих багов, которые никто не планирует исправлять. Чтобы не быть голословным, вот, два года назад они начали делать добавление кастомных картинок.
  • [NES] Пишем редактор уровней для Prince of Persia. Глава первая. Знакомство
    +2
    Интересный момент из истории Prince of Persia: изначально разработчик планировал выпустить его на двух дискетах, на одной из которых, кроме прочих ресурсов и магии, должен был располагаться как раз редактор уровней, но по ходу работы и количество изначальных уровней было урезано и редактор выкинут. Сделано это было исключительно для того, чтобы сэкономить место и сделать игру более интересной и захватывающей за счёт дополнительных анимаций, испытаний и персонажей (вспомним, например, скелет на одном из уровней), а не просто набором бесцельных прыжков по уровням с одинаково выглядящими соперниками (которых, к слову, по началу вовсе не было: беги себе и умирай на штырях). Всё это, конечно, касается исключительно версии под Apple II, портами же занимались сторонние разработчики (хотя, под DOS портирование немного контролировалось Джорданом).

    P.S. Всё это вольный пересказ дневника разработчика, которой крайне советую к прочтению — отличный взгляд на IT индустрию конца 80х и … мотивация при работе над собственным проектом, особенно, если последний делается в одиночку.
  • Отчет с финала Google Code-In, Калифорния
    0
    Да, а количество пакетов в вашем хоумбрю… напомните, как их обновление происходит? Пул-реквестами? Ну, ну, для 100 пакетов может и нормально.
    //Не холивара ради и предлагаю на этом данный спор прекратить, оставшись каждый при своём мнении

    А макпортс — да, не сказка, особенно при отсутствии бинарных пакетов (хотя возможность техническая вполне себе есть), постоянными поломками и пересборками уже установленного (так у меня внезапно поломался gimp и не захотел воскрешаться). Потому и говорю использовать его только для того, что обычно в консоли пинается, ибо адекватного способа установки и обновления библиотек и всяких mongodb, кроме как с пакетным менеджером, нет.

    Сам некоторое время назад горел желанием портировать (точнее запустить, ибо сорсы уже вполне себе мако-совместимые) pacman под макось, но вот незадача — хотел сделать как диплом, но тему оного сменили, а времени у меня вовсе не было на сторонние разработки.
  • Отчет с финала Google Code-In, Калифорния
    +3
    >Как вы делаете все эти .dmg которые монтируют диск и ставятся чисто в Applications?
    dmg ничего никуда не ставит, это лишь монтируемый пакет, приложения ставятся drag'n'drop-ом, ровно так же их можно поставить и без какого-либо dmg

    >Есть какой-то нормальный пакетный менеджер, по-серьезнее homebrew?
    macports. Тем не менее, советую пакетный менеджер использовать только для cli-утилит и всяких серверов, остальные приложения лучше ставить стандартным методом (или через App Store).
  • Жизненная позиция пользователей ВКонтакте в зависимости от пола и возраста
    +12
    Это какие-то отдельно взятые, выведенные на специальных фермах дети, судя по всему.
  • Анонсирована новая версия мобильной ОС Tizen: Tizen 2.0
    0
    5:30. Ой :)
  • Анонсирована новая версия мобильной ОС Tizen: Tizen 2.0
    0
    Это Google Docs.
  • Новый вирус (распостраняется через скайп)
    +1
    На винде же нет Wine!!!
  • Корпорация Sony представила обновленную PlayStation 3
    –1
    NextGen? Тут нинтендо уже вроде как выпускает, нет?
  • Где работают фрилансеры?
    0
    Во сколько офис вам обошёлся, если не секрет? У нас в Екатеринбурге более менее удобное рабочее место не в зажопинске можно снять только за 15-20к/месяц, что не очень конкурентоспособно с работой в коворкинге (2-6 к/месяц) и уж, тем более, с библиотекой и работой из дому.
    //Если уж не говорить о том, что за сравнимые деньги можно снять квартиру однокомнатную.
  • Где работают фрилансеры?
    +1
    И не читать, ага :)
    Можно конечно говорить, что занимаюсь научной работой, тем более что один из фриланс-проектов как раз успешно стал темой диплома в бакалавриате и собирается стать темой магистерской диссертации.
  • Где работают фрилансеры?
    0
    Поработал на прошлой неделе впервые вместо дома в библиотеке. Правда (привет, инновации в "… федеральном университете"!) света в библиотеке всю неделю не было и был дикий дубак.
    Производительность немного выросла, а времени свободного стало побольше — обычно долго высыпался дома, днём ехал в универ, а ночью работал, тут же утром ехал в библиотеку, потом на пары и вечером свобода.
    Хочу попробовать через некоторое время поработать в коворкинге, сравнить.

    P.S. Есть странное подозрение, что через месяцок постоянного зависания в библиотеке, библиотекарши заподозрят что-то неладное и будут выгонять из храма знаний.
  • Сбербанк выделил 1,6 млн. рублей на призы разработчикам мобильных приложений
    0
    >надо еще вначале получить на него авторские прав
    Авторские права ни как ни кто не получает, они закрепляются за автором с момента создания произведения.
  • Google Translate начал показывать примеры предложений с переведёнными словами
    –1
    ok!
  • Обнаружены источники мусорного P2P-траффика
    0
    video.ru, omlet.ru
    фестивальные фильмы — fidel.ru
  • 5 распространенных ошибок Rails-разработчиков
    0
    Да, именно (и необязательно references, belongs_to вполне работает аналогичным образом :)).
    Плюс использование NOT NULL в определении это скорее оптимизация баз данных и этот момент непосредственно к rails отношения не имеет — разрывы связей должна пресекать валидация, а если вы хотите отслеживать связи со стороны базы данных, то для этого есть другие более подходящие методы.
    И очень интересен момент с тем, что автор сначала говорит «даже если в нашем коде валидации будут баги», а потом наставляет «не принимайте пул-реквесты без тестов, которые проходят успешно».

    В общем со всех сторон спорные замечания, хотя совсем уж новичкам может чем и помогут.
  • 5 распространенных ошибок Rails-разработчиков
    0
    Плюс с limit спорный момент — не все базы принимают оные во внимание и очень часто делают лишь внешнее ограничение, выделяя памяти с излишком.
  • 5 распространенных ошибок Rails-разработчиков
    +2
    t.integer "user_id", :null => false
    А как насчёт более православного
    t.belongs_to :user
  • qutIM 0.3: Через тернии к звёздам!
    +21
    Руслан, ну как же так
    >Нет, для 0.4 переписываться с нуля qutIM не будет, нам надоело
    Это же основная фишка проекта, когда каждый новый релиз не содержит ни одной баги из предыдущего!
  • Почему рубисты такие злые?
    +5
    Не, это баба-нигер с цепочкой с баксом
  • 16 инструментов для создания прототипов
    0
    Оно конечно классно, но лучше 10$ в месяц какому-нить saas типа gomockingbird платить, чем 600$ за год с продлением в 150$ axure'у.
  • Comment from a drafted post.
  • Взгляд на проблему нелегального распространения контента
    +1
    Мне, студенту, накапливать годами не приходится — есть такая вещь, как работа/фриланс, учусь на очном.
  • Взгляд на проблему нелегального распространения контента
    +1
    Не верю я, большинство этих людей — притворяется и ищут отговорки, увы. «Я лучше на #что-то-такое-же-маловажное-для-жизни# потрачу» — вот обычно что слышишь в ответ на «а почему ты спиратил, а не купил?».