Если вы никогда не слышали о JS1K, значит, вам не хватает удовольствия. Это конкурс на лучшую программу JavaScript размером менее 1024 байт.
Что можно втиснуть в 1 Кбайт? Если вы думаете, что ответ — «немного, то вам нужно взглянуть на записи этого года.
Конкурс длится всего четыре года, и, кажется, не видно конца в момент появления новых идей для 1К JavaScript. Призы не огромные, около 300 долларов, но слава того стоит. Конкурс 2013 подходит к концу в последний день марта, так что у вас может быть только время, чтобы отправить заявку — в конце концов, это всего лишь немногим более 1000 байт!
Вы получите небольшую помощь — существует базовая среда выполнения, которая включает элемент холста. Вы также можете использовать аудио и видео, но не WebGL. Программа должна работать в Firefox, Chrome и Opera, но не в IE и Opera, потому что они зависят от ОС.
Какой в этом смысл?
Что ж, если вам нужно спросить, у вас нет никакого способа получить это, но есть простое удовольствие — добиться многого с помощью малого. Это также заставляет программистов проявлять творческий подход в миниатюре, и трудно представить себе, как некоторые из художественных шедевров могли бы возникнуть без ограничения ресурсов.
Возьмем, к примеру, «You Are Here» от Oakley Jurgens — вращающийся глобус с отмеченным местоположением браузера:
Было бы такое творение таким же редким без ограничения в 1 КБ?
Конечно, есть также множество впечатляющих случайных произведений искусства, таких как Oldskool Plasma от Юхани Имберга:
или Цветок жизни Тристана Брео:
Также есть много фаворитов, таких как Life, Pac Man, аналоговые часы, фрактальные деревья и так далее. Также есть несколько игр, которые удивляют всего в 1К. Мне больше всего нравится Tree Ninja от Ларса, который может не иметь стратегического значения, но все же вызывает привыкание:
Тем не менее, из-за потрясающей впечатляющей способности упаковывать функции в 1K, трудно не упомянуть 1K Meteors от Оскара Толедо Г. Анимация плавная, стрелять весело, и победить сложно!
На сайте JS1K есть много других демонстраций, и вы можете прочитать код, чтобы узнать, как все это работает.
Если вы найдете тот, который, по вашему мнению, заслуживает победы, оставьте комментарий здесь.
Дальнейшая информация
JS1K