Баунті закінчився, thephpdeveloper виграє з грою життя Конвея
Сьогодні веб-платформа просувається швидко. Такі характеристики , як CSS3 анімації , перетворення , тіней і градієнтів , <canvas>
, <audio>
і <video>
теги, SVG , WebGL , і багато іншого означають , що ви можете зробити набагато більше , в браузері, і в набагато менше коду, ніж коли - небудь раніше. Звичайно, багато розробників не користуються цими новими можливостями, тому що сайти та додатки, над якими вони працюють, повинні бути зворотно сумісними з давніми, з'їденими молями браузерами, як IE6.
Отже, що станеться, якщо зняти джгути? Дозволити собі використовувати будь-які нові функції, які вам подобаються? Трохи живіть, божевільний, використовуйте дивні функції кровотоку, якими лише 1% ваших користувачів зможуть скористатися?
Звичайно, маючи необмежені ресурси та можливість спілкуватися з сервером, ви можете робити всілякі речі - завантажувати мегабайти коду, бібліотеки та відеоматеріали тощо - але проблеми не є дуже цікавими без обмежень. Основне обмеження для цього конкурсу полягає в тому, що ви можете зробити в одному, автономному URI 4kdata:
? Автономний означає, що він не повинен посилатися на будь-які зовнішні ресурси, підключатися до будь-яких серверів за допомогою WebSockets або XHR або будь-якого подібного. Якщо ви хочете вставити такі ресурси, як PNG або MP3, сміливо додайте URI даних у свій URI даних або запропонуйте інший розумний спосіб вбудовування субресурсів. 4k означає 4096 байт, правильно кодований URI текст ASCII (ви можете використовувати URI даних, що кодують base64, якщо ви вирішите, щоб уникнути кодування URI, але зазвичай текст, кодований URI, буде меншим, ніж base64 для простого тексту).
Для натхнення тема конкурсу - меми StackOverflow . Створіть гри-єдиноріг, генератор фактів Jon Skeet, програму малювання на основі від руки чи будь-що, що стосується одного з популярних мемів StackOverflow & meta.so.
Я хотів би заохотити записи, які є певним чином інтерактивними; не просто анімація чи статичне зображення, вони повинні відповідати на введення користувача, чи то через події, наведення курсора CSS, прокрутку, зміну розміру вікна браузера чи будь-який інший спосіб, про який ви можете придумати. Однак це не важка вимога; будуть розглянуті великі демонстрації, які не є інтерактивними, хоча інтерактивність буде кращою.
Ваш запис повинен міститись принаймні в одному публічному випуску принаймні одного з 5 основних браузерів (IE, Firefox, Chrome, Safari, Opera). Дозволені лише основні версії (не побудовані з гілок чи побудови, які потребують виправлень), без спеціальних налаштувань конфігурації, плагінів чи будь-чого іншого, що не постачається з веб-переглядачем. Нічні побудови, бета-версії та кандидати на звільнення - це добре. Будь ласка, вкажіть у своєму записі, з якими браузерами ви перевірили запис. Немає обмежень щодо того, які технології ви можете використовувати в межах цих обмежень; ви можете зробити чисту SVG-анімацію, чисту анімацію CSS, щось у JavaScript за допомогою WebGL чи чорт, навіть те, що використовує XML та XSLT, якщо це вражає вашу фантазію. Якщо ви можете перебити його на дійсний URI даних без зовнішніх залежностей і отримати браузер для його запуску, це чесна гра.
Щоб додати до змагань тут, у понеділок, 21 березня, я відкрию щедрівку з цього питання. Як я можу дозволити собі виграш, коли у мене є лише 101 реп. Що ж, усі представники, які я отримаю від підсумків цього питання між тепер і понеділком, перейдуть у щедрість (до межі 500 дозволених для однієї щедрості; мені було б досить важко досягти цієї межі, хоча, враховуючи реп. шапка). Заявки приймаються протягом 6 днів після цього; всі записи повинні бути принаймні за 24 години до закінчення виграшу, щоб дати мені час перевірити їх та оцінити їх. У той момент я прийму відповідь, що найбільше проголосував, і дам нагороду моїй улюбленій відповіді (яка може бути, а може і не бути такою самою, що проголосувала вище). Мої критерії присудження нагороди включатимуть красу, веселощі, розумну техніку, цікаве використання нових функцій, інтерактивність та розмір.
Ось кілька джерел натхнення, щоб розпочати:
- Chrome Experiment - колекція демонстрацій сучасної веб-платформи
- Mozilla Hacks , блог про сучасну веб-платформу з багатьма демонстраціями нових функцій у Firefox 4
- JS1k , конкурс на демонстрацію JavaScript на 1 к
- 10k Апарт , веб-конкурс у 10k
- gl64k , демонстраційний конкурс, який зараз триває для 64k демонстрацій WebGL
- Shader Toy - набір демонстрацій того, що ви можете зробити з шейдерами WebGL
Формат для записів:
Назва запису
дані: текст / html, ваші% 20дані% 20URIПрацює в Firefox 4 RC, Chrome 10 та Opera 11
Опис Вашого запису; що це робить, чому це акуратно, якими розумними прийомами ви користувалися.
<script> // code in expanded form to more easily see how it works </script>
Будь-які кредити для натхнення, будь-який код, який ви могли позичити тощо.
(Здається, StackExchange не приймає URI даних у посиланнях, тому вам потрібно буде вставити їх безпосередньо в <pre>
тег)