Delphi
Ловись игрок, платящий и не очень…
Видеоигры — наверное одно из самых популярных развлечений сегодня. В них играют все подряд, от детей до взрослых. Это одновременно хобби и занятие, которое расслабляет, стимулирует, объединяет в сообществах и поднимает настроение. Повсеместное развитие мобилок превратило игры из развлечения, привязанного в основном к домашней консоли или компу, в способ провести время, доступный всем в любом месте и в любое время. Мобильные игры привлекли аудиторию большинства возрастов и социальных групп, занимая значительную часть доли рынка игр, приносят огромные прибыли студиям разработки и стимулируют создание новых, гипер аддиктивных и прибыльных игровых парадигм, например «гача», «казуал», "триматч", "батлрояль", "ферма" и др.
Хорошо, когда игра сделана с душой, удивляет сюжетом и механиками, и удерживает органичными способами. Как и везде, в играх есть грязные трюки — которые заставляют людей тратить больше времени или денег, чем они бы хотели. Аудитория игр, игровых сервисов, комьюнити и околоигровых форумов по разным подсчетам достигает 3.5млрд человек, т.е. почти каждый второй на планете, играет, играл или будет играть. Большая часть этих людей порядка 70% от общего числа, были привлечены мобильными проектами в последние 10 лет, которые, чего уж тут отнекиваться стали диктовать шаблоны и дизайны разработки всем остальным. Это не хорошо, и не плохо, это уже есть - когда у тебя есть настолько большая аудитория, то можно проверять самые различные идеи, механики и теории, в очень короткие сроки на разных возрастных группах, социальных слоях и вообще разных культурах. И это позволяет находить хорошие и отличные сочетания, двигая индустрию вперед, а высокая конкуренция не дает застояться отдельным студиям или жанрам. Но у любой медали две стороны, и вместе с положительными моментами и прогрессом идей мы получаем развитие различных темных и серых механик и практик. Зачем тратить сотни часов дизайнера, рисовать уникальный арт, оттачивать баланс и придумывать интересные активности, если можно сыграть на особенностях психологии человека?
Мои советы после 20 лет в программировании
Сегодня ровно 20 лет, как я начал программировать профессионально. За эти годы я:
• Получил одобрение на петицию по грин‑карте за выдающиеся способности в науке.
• Стал Google Developer Expert.
• Стал IEEE Senior Member.
• Был операционным директором в компании со 100 сотрудниками.
• Написал код, который скачали 135 миллионов раз.
• Выступал перед аудиторией в 2000 человек, дважды.
• Стал самым честным человеком в России по версии НТВ.
Но упустил я гораздо больше и делал всё это слишком долго. Думаю, этот путь можно было бы пройти «на скорость» лет за 5 с теми подходами, принципами и приоритетами, которым я научился. Если вы только начинаете свой путь, этот текст может сэкономить вам 15 лет жизни.
Vassbotn H. Виртуальные переменные класса
Приветствую всех, кто начал читать эту заметку! Хочу предложить вам (а в большей степени фанатам Object Pascal, любителям программистских трюков, технических приемов и синтаксических изысков) ознакомиться с переводом довольно старого (2007 года) поста "Hack#17: Virtual class variables, Part I" и "Hack#17: Virtual class variables, Part II" известного разработчика и автора многочисленных технических приемов, ориентированных на применение в Delphi, Халлварда Вассботна (Hallvard Vassbotn).
Сообщение Халлварда посвящено одной из интереснейших тем – возможности размещения и использования данных, связанных с конкретным классом прикладных объектов. Если вы подумали о константах или переменных класса, то вы окажетесь правы, но только частично.
Речь в этой заметке пойдет о class virtual var, по-русски это словосочетание звучит как виртуальная переменная класса (именно оно и вынесено в название данного перевода). Вы скажете, что такой синтаксической конструкции в Object Pascal’е нет, и окажетесь абсолютно правыми. Более того, я уверен, что знатоки и разработчики на других ОО-языках программирования заявят: в своей практике я не слышал, не сталкивался и не использовал ничего подобного. Как и все я «суслика не вижу…», но буду утверждать, что он может существовать. И об этом пойдет в речь в тексте предлагаемого вам перевода.
За секунды: полировка металлов электричеством
Меня всегда привлекали технологии, относительно доступные для обычного человека, и в то же время несколько необычные и незнакомые широкому кругу людей.
Когда говорят об обработке с применением жидкостей и электричества, большинство сразу думает о гальванике, более продвинутые вспоминают об электроэрозионной обработке, в то время как существует ещё одна интересная технология — электролитно-плазменная обработка.
Дальше мы обзорно поговорим о ней, а желающие смогут задуматься о применении её в своих проектах.
«Чистый» код, ужасная производительность
На самом деле, большая доля этих правил не влияет на среду исполнения кода, который вы пишете. Подобные правила невозможно оценить объективно, да это и необязательно, ведь на этом этапе они достаточно произвольны. Однако есть правила «чистого» кода, на которые делают особый упор — это правила, которые можно измерить объективно, поскольку они влияют на поведение кода в среде исполнения.
Если посмотреть на список правил «чистого» кода и вытащить из него правила, которые действительно влияют на структуру кода, то мы получим следующее:
- Отдавайте предпочтение полиморфизму, а не «if/else» и «switch»
- Код не должен знать о внутреннем устройстве объектов, с которыми он работает
- Функции должны быть маленькими
- Каждая функция должна выполнять одну задачу
- Принцип «DRY» — Don’t Repeat Yourself («не повторяйся»)
Эти правила достаточно чётко формулируют то, как должен создаваться конкретный фрагмент кода, чтобы быть «чистым». Но я задам такой вопрос: если мы создадим фрагмент кода, соответствующий этим правилам, какова будет его производительность?
Юлия → Iuliia. Всё о транслитерации
Транслитерация — это запись кириллических слов латиницей (Анна → Anna, Самара → Samara). Её используют в загранпаспортах, водительских удостоверениях, трансграничной доставке, библиотечных каталогах и множестве других международных процессов.
Так вышло, что я недавно окунулся в эту тему, а в Википедии она раскрыта слабо. Поэтому расскажу, что к чему (спойлер — если вы думаете, что с транслитерацией всё плохо, то на самом деле всё ещё хуже).
И конечно, поскольку это Хабр — предложу open-source библиотеки для решения проблемы.
Нельзя так просто взять и всё успеть: как работать с задачами
Два года назад я задался вопросом "Как мне все успевать?". Вопрос пришел в веселой компании усталости, прокрастинации и выгорания...
Об одном решении проблемы воров и проституток в системах оказания образовательных услуг онлайн
Инженерная культура, которую мы потеряли?
Этот пост, наверно, правильно воспринимать как крик души, как попытку найти поддежку в профильном сообществе и окончательно не потерять веру в текущий уровень высшего инженерно-технического образования. То, что сейчас все крайне непросто в этой сфере, не говорит только ленивый, но я хочу постараться дать вам некую объективную информацию, а выводы… Выводы, думаю, все сделают сами. Кому интересно, прошу под кат.
Кризис в стоматологии: готовьтесь чистить зубы 3 раза в день
Отечественных расходников, оборудования и комплектующих у нас меньше 2%. Сама модель клиники на краю прикладной науки в том, что у нас есть лучшие игрушки со всего мира. С момента начала событий прошло около трёх недель. Мы ещё не до конца поняли, что случилось в целом и какие будут дальше последствия, но цены на всё уже выросли.
В отличие от других отраслей у нас не прекратились никакие поставки. Точнее, например, есть несколько американских поставщиков фармы. Двое отказались, а третий и четвёртый решили расширить доли, потому что рынок России большой. Почему они остались? Официально, потому что биоэтика предполагает, что от медикаментов страну отрезать нельзя даже санкциями, а реально, потому что это сулит им сверхприбыли.
Отвалился один из американских поставщиков комплектующих для оборудования. На связь вышли китайцы, на чьей фабрике он производился, и сказали, что они давно уже выпускают всё то же самое, но с другими наклейками на корпусе. Даже пресс-формы корпусов те же самые. Понятно, что с поддержкой и гарантией там чуть хуже, но ничего никуда не потерялось.
Пациенты, соответственно, как и при любом кризисе, хотят закрыть максимум вопросов здоровья как можно быстрее. Мы даём возможность зафиксировать цену плана лечения (он иногда бывает на 24 месяца) при условии предоплаты расходников, чтобы закупить их сейчас. Просто поднять цены, как всем нам кажется, не совсем этично.
Русских врачей поливают помоями в международном сообществе.
Пациенты плачут на приёмах.
Многие вещи подорожали. Когда я увидел новый прайс на зубные щётки с повышением на 70%, то сначала не поверил своим глазам, перезвонил спросить. Да, это правда.
Всё вокруг напоминает старый добрый 2014-й год, когда доллар вместо 30 рублей вдруг стал 90. Но паники больше.
Dart: как правильно начать знакомство с языком?
Всем привет! На прошлой неделе мы провели вторую ежегодную встречу русскоязычного сообщества Dart (ака Dartup) и получили очень информативную и полезную обратную связь от людей, пришедших на мероприятие. В этом году нас было около 130 человек. Если вы не были и хотите посмотреть, вот ссылка на записи. Спасибо за митап всем участникам, организаторам и партнерам.
Многие гости в кулуарах и в телеграм-канале, посвященном встрече, спрашивали нас, почему, обладая большой экспертизой в языке, мы до сих пор не задумались о Dart академии, вебинарах или хотя бы кратком руководстве для новичков. Признаюсь, чтобы начать такой процесс, нам нужен был импульс от вас. Мы его получили. Поэтому начинаем серию статей для тех, кто интересуется языком и хочет попробовать в нем разобраться. И если вам понравится и пригодится эта информация, то мы как компания сможем больше уделять этому времени.
Давайте начнем с базового плана:
- Где узнать про Dart больше?
- Как и где попробовать?
- Настройка среды разработки
- Запуск Hello world
Почему налоговая не верит в айтишников-индивидуальных предпринимателей?
Сколько может зарабатывать айтишник на ИП? У ФНС свое мнение
Когда один человек много зарабатывает и честно платит налоги, налоговики смотрят со стороны и думают: «Как такое возможно? Наверняка у него масса помощников! Пусть и за них налоги заплатит!»
Рассказываем, как при наличии электронной подписи в пару кликов забыть о подобных притязаниях налоговой.
Логика мышления. Часть 1. Нейрон
Года полтора назад я выкладывал на Хабр цикл видеолекций с моим видением того как работает мозг и каковы возможные пути создания искусственного интеллекта. За прошедшее с тех пор время удалось существенно продвинуться вперед. Что-то получилось глубже понять, что-то удалось смоделировать на компьютере. Что приятно, появились единомышленники, активно участвующие в работе над проектом.
В настоящем цикле статей планируется рассказать о той концепции интеллекта над которой мы сейчас работаем и продемонстрировать некоторые решения, являющиеся принципиально новыми в сфере моделирования работы мозга. Но чтобы повествование было понятным и последовательным оно будет содержать не только описание новых идей, но и рассказ о работе мозга вообще. Какие-то вещи, особенно в начале, возможно покажутся простыми и общеизвестными, но я бы советовал не пропускать их, так как они во многом определяют общую доказательность повествования.
Гигиена удалённой работы или о пользе телепатии
Приходилось ли вам запинаться в работе? Вот берёте таск: зафигачить красивый отсчитыватель времени "До конца супер предложения осталось всегда 2 часа". Открываете редактор… и щёлк: а как делать-то? Вроде я что-то слышал, что мы лэндинги начали на Vue делать. Или тут еще реакт?
Хорошо, когда вы в опенспейсе сидите через два стола. Всегда можно встать, и тихо спросить соседа "Напомни, мы Vue для всех теперь берём?". Хуже, если ТЛ в другом часовом поясе. Тот же вопрос — но ответ завтра. А если он закрутился, то послезавтра. И всё, вместо 1 минуты — двое суток задержки.
Или того хуже. Сидите вы, никого не трогаете, и тут вдруг тихий шепот на 3 этажа с вопросом выше. Отвечаешь быстренько, и опять восстанавливать контекст. А ведь всего-то надо было, в вику заглянуть...
TJBOT как иллюстрация IBM Watson services
Интернет для дачника. Часть 4. Достаточно одной SIM-карты
Краткий конспект по языку JavaScript
Брендан Айк упоминал, что JavaScript был создан за 10 дней. Думаю, идея вынашивалась дольше. Как бы то ни было, язык получился и с тех пор только набирает популярность. Особенно после появления AJAX.
JavaScript — язык со слабой динамической неявной типизацией, автоматическим управлением памятью и прототипным наследованием.
JavaScript состоит из трёх обособленных частей:
- ядро (ECMAScript),
- объектная модель браузера (Browser Object Model или BOM),
- объектная модель документа (Document Object Model или DOM).
В статье, в основном, пойдёт речь о ядре. Конечно, в примерах кода будут использоваться элементы DOM и BOM, но заострять на них внимание не буду.
Горький урок отрасли ИИ
По итогу 70-ти лет исследований в области ИИ главный урок заключается в том, что общие вычислительные методы в конечном счёте наиболее эффективны. И с большим отрывом. Конечно, причина в законе Мура, точнее, в экспоненциальном падении стоимости вычислений.
Большинство исследований ИИ предполагали, что агенту доступны постоянные вычислительные ресурсы. В этом случае практически единственный способ повышения производительности — использование человеческих знаний. Но типичный исследовательский проект слишком краткосрочен, а через несколько лет производительность компьютеров неизбежно возрастает.
Стремясь к улучшению в краткосрочной перспективе, исследователи пытаются применить человеческие знания в предметной области, но в долгосрочной перспективе имеет значение только мощность вычислений. Эти две тенденции не должны противоречить друг другу, но на практике противоречат. Время, потраченное на одно направление, — это время, потерянное для другого. Есть психологические обязательства инвестировать в тот или иной подход. И внедрение знаний в предметной области имеет тенденцию усложнять систему таким образом, что она хуже подходит для использования общих вычислительных методов. Было много примеров, когда исследователи слишком поздно усваивали этот горький урок, и полезно рассмотреть некоторые из самых известных.
AlphaStar — новая система искусственного интеллекта для StarCraft II от DeepMind (полный перевод)
Игры десятилетиями использовались как один из главных способов тестирования и оценки успешности систем искусственного интеллекта. По мере того как росли возможности, исследователи искали игры с постоянно возрастающей сложностью, которые бы отражали различные элементы мышления, необходимые для решения научных или прикладных проблем реального мира. В последние годы StarCraft считается одной из самых многогранных и сложных стратегий реального времени и одной из самых популярных на сцене киберспорта за всю историю, а сейчас StarCraft стал еще и главным вызовом для исследований ИИ.
Information
- Rating
- Does not participate
- Location
- Россия
- Date of birth
- Registered
- Activity