Pull to refresh

iPod Shuffle — наконец-то от него есть польза

Lumber room
Компание Mophie предлагает приобрести популярного микро-плеера от Apple и ключа-открывашки, назвав его Bevy

А куда вы бы могли предложить встроить iPod-ы? Можно не только Shuffle, я вот смог представить себе гибрид Video и bluetooth мыши.
Rating 0
Views 280
Comments 0

Совершенно случайные числа без повторения

Lumber room

Задача


Сегодня столкнулся с задачей сделать 4 случайных числа в заданном диапазоне, без повторения, казалось бы такая тривиальная задача, но!
Обычное rand($min, $max) не давало нужного результата, особенно при малом числе $max ~ 15;
То есть:

$number[0] = rand(1, $max);
$number[1] = rand(1, $max);
$number[2] = rand(1, $max);
$number[3] = rand(1, $max);


Могло в итоге выдать 2, 2, 3, 9 — эти повторения мне нужны не были, спросив совета на хабраканале, freefd дал ссылку на перловый вариант cookbook, но реализация мне не понравилась своей громозкостью и нелапидарностью.

Решение


В итоге проявив смекалку появилось вот такое решение:

function generateFourRandomNumber ($maxCount){
$numbers = range(1, $maxCount);
shuffle($numbers);
return array($numbers[0], $numbers[1], $numbers[2], $numbers[3]);
}


Итого


Вуаля! Просто лапидарно, и даже странно :)
несколько НО:
  • решение подходит для малых максимальных значений, иначе потом shuffle будет стоить слишком дорого
  • функцию легко переделать по вид generateRandomNumber ($maximum, $count)


UPD


Спасибо duncanf1 за еще более короткий вариант:
function generateRandomNumber ($maximum, $count){
return array_rand(range(0, $maximum), $count);
}
Total votes 18: ↑9 and ↓9 0
Views 2.7K
Comments 23

Учим iPod Shuffle G3 говорить по-русски

IT-companies
image
Пока мы ждем что iTunes (Apple) научит новые iPod Shuffle говорить по-русски, почему бы не попробовать самим?

Перед тем как начать

Все что здесь описано не предназначено для замены iTunes, а служит, скорее, дополнением, которое нужно только до тех пор, пока iTunes не научится озвучивать названия по-русски (очень надеюсь что научится).

Читать дальше →
Total votes 53: ↑49 and ↓4 +45
Views 8.6K
Comments 31

О всемогущем рандоме

Interfaces *
image

Умный shuffle для плееров



В топике хотелось бы поделиться мыслями насчет того, каким должно быть «случайное воспроизведение» в плеерах (особенно это касается портативных плееров типа iPod)
Сам я являюсь владельцем iPod touch и постоянно пользуюсь им в машине, подключая его через AUX к магнитоле.
Фирма Apple изобрела какой-то «умный плейлист» — так называемый genius, но он как-то использует интернет и мнения других пользователей itunes.

Хотелось бы слышать и слушать именно то, что хочется слышать. Под катом собственно суть идеи.
Читать дальше →
Total votes 77: ↑64 and ↓13 +51
Views 7.2K
Comments 80

Битва титанов

Computer hardware
В сегодняшнем поединке лбами столкнутся два маленьких плеера. В правом углу ринга находится iPod Shuffle – поддержать его пришло множество поклонников с плакатами «Бумбурум, не тронь Apple!» )

image

В левом углу – Cowon E2. Группа поддержки заметно меньше, зато боец в тельняшке и у него в перчатке подкова на удачу )
Читать дальше →
Total votes 167: ↑124 and ↓43 +81
Views 22K
Comments 166

Обзор iPod Shuffle

IT-companies
Телефон — должен звонить, фотоаппарат — снимать фото, видеокамера — снимать видео, а mp3-плеер — воспроизводить музыку.

Вот в такой коробочке поставляется iPod shuffle компании Apple (www.apple.com/ipod)

image
Читать дальше →
Total votes 28: ↑13 and ↓15 -2
Views 4.3K
Comments 20

Big data от А до Я. Часть 3: Приемы и стратегии разработки MapReduce-приложений

Website development *Big Data *Hadoop *
Привет, Хабр! В предыдущих статьях мы описали парадигму MapReduce, а также показали как на практике реализовать и выполнить MapReduce-приложение на стеке Hadoop. Пришла пора описать различные приёмы, которые позволяют эффективно использовать MapReduce для решения практических задач, а также показать некоторые особенности Hadoop, которые позволяют упростить разработку или существенно ускорить выполнение MapReduce-задачи на кластере.


Читать дальше →
Total votes 25: ↑24 and ↓1 +23
Views 77K
Comments 5

Олимпиадные задачи в промышленном программировании. Часть 1

.NET *Algorithms *C# *
Работая Backend разработчиком в самой лучшей компании в мире, я столкнулся (или хотел столкнутся) c задачами, которые очень похожи на те, которые бывают в олимпиадном программировании. Именно о них и пойдет речь. Это первая часть статьи, в которой приведу одну задачу с подробным объяснением. Если вам также интересны алгоритмы и структуры данных, то прошу под кат!
Читать дальше →
Total votes 23: ↑11 and ↓12 -1
Views 7.4K
Comments 38

Как перетасовать песни?

System Analysis and Design *Algorithms *Mathematics *Sound
Translation
Мы здесь в Spotify серьёзно относимся к фидбеку от пользователей. Какое-то время назад мы заметили, что пользователи жалуются на то, что при включенном режиме случайного перемешивания плейлиста порядок песен на самом деле не случаен — например, несколько песен одного и того же исполнителя могут быть воспроизведены одна за другой, при том, что в плейлисте множество песен разных исполнителей. Пользователи спрашивали неужели мы не способны сделать такую простую вещь, как случайный порядок воспроизведения треков? Мы отвечали «Он правда-правда случаен! Мы проверяли!»

Так кто же был прав — мы или пользователи? Как оказалось — и мы, и они. Ну и вообще дело обстояло значительно серьёзнее, чем казалось на первый взгляд.

Наш точка зрения


Ещё в самом первом релизе нашего плеера в нём была функция случайного перемешивания плейлиста. Мы использовали для этого алгоритм Фишера-Йетса — и он давал идеально случайное перемешивание. Но что такое «идеально случайное»? Это значит, например, что мы можем получить один из двух нижеуказанных порядков песен с одинаковой вероятностью (разные цвета означают треки разных исполнителей):

image
Читать дальше →
Total votes 29: ↑29 and ↓0 +29
Views 13K
Comments 52