Парадокс Rimworld: захоплююча сюжетом «пісочниця»


Чию казку ви хочете послухати?

Rimworld – симулятор будівництва і виживання колонії на не дуже доброзичливою планеті. Ви будуєте базу, і час від часу відбуваються випадкові події – то нападуть космічні пірати, то спалах зірки виведе з ладу усі електроприлади, то акумулятор вибухне і ваша гідропонна ферма згорить.

Ключова фішка ігрового процесу — AI-оповідач підбирає найбільш цікаве «випадкове» подія, яка прямо тут і зараз надасть найбільш драматичний ефект. Хороший чи поганий – але емоційно-сильний.

Але про те, як це працює, трохи пізніше. Одразу головне – закохатися в цю гру можна за приголомшливий сюжет. Який «розмазаний» по світу. Сюжет, якого, в принципі, немає.

Отже, початок першої гри: ваш корабель вибухає. Ви ледь встигнете добігти до капсул і приземляєтеся на поверхні. 30 аварійних раціонів харчування, сталеві уламки, зброю. Поруч – руїни якихось древніх будівель.
Читати далі →

Анонімні функції Swift

Ця публікація є конспектом відповідного розділу чудової книги «iOS 8 Programming Fundamentals with Swift» Matt Neuburg, o'reilly, 2015. Стаття, що описує використання анонімних функцій, може бути цікавою стане в нагоді як новачкам або шпаргалка для більш просунутих розробників.

Розглянемо приклад:

func whatToAnimate() {//self.myButton є кнопкою в інтерфейсі
Self.myButton.frame.origin.y += 20
}
func whatToDoLater(finished:Bool) {
printLn("finished: \(finished)")
}
UIView.animateWithDuration(
0.4, animations: whatToAnimate, completion: whatToDoLater)

У цьому ділянці коду є певна дивина. Я оголошую функції whatToAnimate і whatToDoLater тільки для того, щоб передати ці функції на наступний рядок коду. І дійсно, імена цих функцій мені більше ні для чого не потрібні — ні імена, ні ці функції більше ніколи не будуть повторно використані. Було б добре передавати тільки тіла цих функцій, без необхідності декларації їх імен.

Такі функції називаються анонімними, вони мають право на існування і часто використовуються в Swift.

Читати далі →

Квантова пісочниця 2


Квантова пісочниця 1
Що таке квантовий стан? Ніж звичайний стан відрізняється від квантового? В який момент звичайний стан стає квантовим і що буде, якщо від нього відняти квантовости? Воно все ще буде квантовим або вже перетвориться на звичайне? Воно ж тільки що було квантовим. Напевно, воно стало заплутаним, і кіт теж став заплутаним.

У даній статті постараємося відповісти на ці запитання й розібратися в суті квантової механіки.
Мета: написати просту програму, «імітує» квантову еволюцію, щоб нарешті можна було помацати ці кубіти ручками.

Читати далі →

Інструкція по установці Couchbase 2.1.1 Community та основи роботи з ним

image

Життя системного адміністратора підкинула нового звіра на і без того тернистий шлях. Знадобилося клієнту під проект в обов'язковому порядку використовувати Couchbase.

Під катом інструкція по його установці, додаванню в кластер і балансуванню даних. А раптом комусь буде корисно.


Читати далі →

Квантова онлайн-пісочниця Google


(можливо ви вже бачили цю картинку, хоча дивно, що на хабре так мало матеріалів з квантової інформатики)

Спасибі геніальним інженерам Google, тепер ми всі дружно можемо перетворити наші настільні ПК в квантові комп'ютери. Ну, добре, не зовсім так: мається на увазі лише моделювання роботи квантового комп'ютера на його молодшого побратима шляхом запуску веб-додатків для Chrome. Quantum Computing Playground дозволяє проганяти відомі квантові алгоритми (такі як алгоритм Гровера, Шора) і писати власних квантові програми.

За винятком безпосереднього придбання квантового комп'ютера — що, незважаючи на заяви D-Wave, навряд чи коли-небудь вдасться — рішення від Google є найбільш вдалим кроком у бік популяризації квантового звіра. Якщо хочеться особисто стати на першу сходинку обчислень майбутнього, це той самий шанс. У вас є діти? Ви зобов'язані посадив їх в цю пісочницю як мінімум на шість годин, щоб вони навчилися всім тонкощам квантових обчислень.

Читати далі →

Як програмісту намалювати логотип, не вміючи малювати?

Так буває, що перед програмістом ставлять неординарну задачу, яку він може виконати лише завдяки своїй кмітливості, а не досвіду, якого у сфері необхідної задачі, по суті, і немає. І сьогодні я хочу розповісти про те, як не дизайнеру намалювати красивий логотип.



Читати далі →