27.01.2018


В данном посте я буду собирать ссылки на различные интересные видеокурсы или просто отдельные видео с видеохостинга YouTube, посвящённые теме информационных технологий и программирования в частности. Предполагается, что пост будет пролонгированным, то есть я буду периодически пополнять его новыми видосиками. Следите за обновлениями в соцсетях (в частности, в ВК, Щебетаче и Телеграмме)!


Уроки C#

Серия уроков по языку программирования C#. В своё время очень приятно удивила как качеством подачи материала, так и глубине рассмотрения. Это лучший курс по C#'пу, который я находил на просторах YouTube. Видео начинаются с рассмотрения базовых тем вроде системы типов, потом углубляются всё дальше и глубже, описывая различные особенности языка. Затрагиваются темы делегатов, дженериков, лямбда-выражений, LINQ'а, рефлексии, работы с базами данных, многопоточности и построения архитектуры приложения. Всячески советую для начинающих и околоначинающих «шарпистов»! Жаль, что вот уже год как автор забил на канал.

Там же на канале можно найти небольшой плейлист по построению интерфейса с использованием WPF и паттерна MVVM.


Шаблоны разработки (полный курс)

Лекции длинные и их много. Но смотрятся легко. У автора хорошая манера подачи материала с шутейками и пояснением принципов через многолетний жизненный опыт. Даже не знаю, что ещё добавить к этому. Рекомендую к просмотру для изучающих ООП и заинтересованных в построении грамотно спроектированных объектно-ориентированных приложений.

Также у автора есть видео с пересказом книги «Чистый код». Тоже крайне советую.


UML 2.0 Tutorial

Поразительный человек. То, что другие объясняют за час, Дерек умудряется рассказать за 12 минут! Собственно, с этого плейлиста и началось моё знакомство с его каналом. Когда нужно было за день до зачёта научиться строить диаграммы в нотации UML и выполнить лабораторные работы, данная серия видеоуроков стала спасительным кругом, задавшим новую планку в лаконичности, скорости, понятности и прагматичности подаваемого материала. Классическая универская подача материала в виде многочасовых и нудных лекций не выдерживает никакой критики при сравнении с видео Дерека. До сих пор периодически пересматриваю их, когда нужно построить очередную пачку диаграмм, которые так любят преподаватели.

Также на канале можно найти много часовых видеороликов, где он рассказывает основы различных языков языков программирования за одно видео. Не сказал бы, что это очень полезно (всё равно ничего не успеваешь запомнить), но порой просто любопытно посмотреть, как выглядят какие-нибудь экзотические языки типа Lisp'а или Haskell'я.


Google Python Class. Day 1. Part 1

Хотел бы я дать ссылку на плейлист, но у меня в закладках лежит только это видео. Впрочем ничего страшного: YouTube всегда любезно предлагает продолжения в рекомендациях.

С этого видоса началось моё знакомство с Питоном. Ещё когда я вообще не понимал английскую речь на слух. Благо у него есть субтитры. В то время, они ещё не генерировались автоматически к каждому видео (каждый раз поражаюсь качеству автоматически сгенерированных субтитров!). Рекомендую для самых начинающих питонистов. Рассказывается про основы языка и работу с регулярными выражениями.


Корутины в Kotlin — Роман Елизаров, JetBrains


Некоторые знакомые программисты мне все уши прожужжали про крутость асинхронного выполнения программ в одном потоке. Даже когда-то самому пришлось слегка прикоснуться к этому миру, программируя на C#. Но полной картинки и понимания в голове всё никак не выстраивалось, хотя я и знал про трансформацию кода компилятором в машину состояний. И долгое время мне хотелось разобраться в вопросе основательно, но руки никак не доходили.

На самом деле я пытался как-то читать документацию про async/await'ы в Python 3.5. Но это непростое занятие в силу различных исторических нагромождений, усложняющих знакомство с концепцией. Чтоб понять механизм работы асинхронного кода в Python, надо изучить, как строятся корутины на основе генераторов, немаленькую документацию на модуль asyncio, предоставляющий реализацию event loop'а (шкедулер планировщик выполнения корутин), декоратор для создания корутин, свою реализацию Future и т. п. Только потом можно нормально знакомиться с современными нативными корутинами, которые пришли на смену костылям на генераторах, ключевыми словами async/await, различными конструкциями с их использованием (async with, async for и т. д.), асинхронными генераторами и list/dict/set comprehensions. И это ещё если не углубляться дальше в историю с зелёными потоками и неблокирующим IO, предоставляемым сторонними библиотеками. Долго, муторно, страшно…

И тут очень кстати на горизонте появляется Kotlin, который мне очень нравится (после Питона писать на нём одно удовольствие, не говоря уже об ужасных языках из веба или сложных языках типа Сишечки). И поскольку я с ним познакомился на версии 1.1, то сразу же глаз зацепился за экспериментальную поддержку корутин. К сожалению, их освоение всё равно было отложено в долгий ящик, но вот наконец-то время пришло!

Кто может объяснить концепцию лучше разработчика её реализации, который одновременно является преподавателем в ИТМО и имеет многолетний опыт разработки высоконагруженных распределённых систем? Были опасения, что рассказ от такого человека будет чрезмерно сложным и непонятным, но к приятному удивлению оказалось, что это действительно отличные лекции по истории асинхронного программирования, работе с библиотекой корутин в Kotlin'е и их внутреннем устройстве. Первый видос на русском языке и охватывает все необходимые основы, а желающие познакомиться поглубже с «кишками» работы всей этой асинхронщины при соответствующем знании английского языка могут посмотреть продолжение доклада с конференции KotlinConf 2017.


Интересные каналы

Напоследок приведу ещё несколько ссылок. Мне трудно тут выделить какой-то определённый плейлист или отдельное видео, но может кого-то заинтересует материал каналов в принципе.

Канал(-ы)ЯзыкОписание
AlexGyver и Заметки Ардуинщика Русский Первый канал посвящён различным самоделкам — чаще всего различной электроники на платформе Arduino, — поэтому может заинетересовать любителей DIY и Ардуины. Второй канал, собственно, посвящён изучению основ работы с этой платой.
Fun Fun Function Английский Для любителей JavaScript — must watch. Ну и в принципе интересный канал о технологиях и методологиях программирования. Хоть автор в заставках и утверждает, что это не учебный курс, а шоу, большей частью видео и даже целые серии видеороликов представляют собой обучающие материалы по какой-то теме или размышления по использованию различных техник и жизни ITшника. Отдельно, пожалуй, стоит отметить, что автор является экстравертом и много кривляется, что для некоторых может быть неприятно или неприемлемо. Я начал смотреть этот канал с плейлиста про ФП, так что можете тоже использовать его в качестве отправной точки.
28.10.2017


Примечание

На самом деле данное эссе было написано ещё в конце 2016 года в качестве одной из работ по предмету "Толерантность". Поэтому стиль изложения может несколько отличаться от других рецензий на сайте, ведь по сути оно даже ей и не является. Тем не менее, я всё-таки актуализировал некоторые данные и подправил некоторые речевые ошибки во время итоговой вычитки перед публикацией на сайте.

Также обратите внимание, что в тексте встречаются спойлеры к фильму!


Вступление

Это один из тех классических фильмов, кадры из которых разбирают на цитаты. Так, несмотря на то, что фильм вышел аж 19 лет назад, до сих пор на различных развлекательных веб-сайтах в комментариях под расистскими или нацистскими шутками можно увидеть изображение Эдварда Нортона с разведёнными в стороны руками и свастикой на груди [на всякий случай зацензурировал, а то мало ли: в неспокойное время полицейского безумия живём]. Собственно, благодаря этой славе на сомнительных сайтах я и выбрал его к просмотру.

Кадр из фильма

Заслуги актёра нельзя недооценить: он отлично справился с предоставленной ролью, за которую впоследствии был номинирован на «Оскар». Сам же фильм на данный момент занимает 30-ое место в топе 250-ти лучших фильмов по версии IMDb.

Также замечу, что фильм изобилует сценами жестокости и содержит кадры с обнажёнными телами. Так что предназначен только для взрослой аудитории!

Но сегодня моя задача здесь не рассказывать про полученные фильмом регалии, искать его достоинства и недостатки и выяснять, почему он стал культовым. Нет. Даже сюжета я коснусь лишь поверхностно. Ведь наша истинная цель – обсудить поставленные фильмом проблемы и решить, насколько они актуальны сейчас, спустя 19 лет после выхода данного произведения.


Сюжет

Всё повествование складывается вокруг семьи Виньярдов. Два основных персонажа: братья Дерек и Дэнни Виньярд. Старший, Дерек, в прошлом являлся лидером местной банды скинхедов (хотя на самом деле, как потом окажется, его лишь использовали в качестве временной публичной маски (как Путин Медведева), а настоящий глава организации и её идеолог – Кэмерон Александр), терроризирующей афроамериканцев (или это слишком современный термин?) и иммигрантов в округе. Он показан как сильный и умный молодой человек, убеждённый в своей правоте и ведущий других недовольных иммиграционной политикой США за собой. Для младшего брата Дэнни он становится кумиром, чьему примеру стоит следовать.

Но однажды группа чернокожих решает «обнести» машину Дерека, за что двое из них расплачиваются жизнью, а сам Дерек отправляется за решётку. Легендарный кадр, который изображён на рисунке выше и гуляет по Интернету, взят как раз из сцены задержания. Лично мне же больше запомнилась жестокая сцена с расправой над вторым грабителем, когда Дерек заставляет его прикусить бордюр и бьёт ногой по голове.

Проходит несколько лет. Дэнни уже вступил в организацию скинхедов, а Дерек выходит из тюрьмы. Несмотря на все ожидания брата и бывших товарищей, он решает порвать со своим прошлым и отвести от семьи лишние проблемы. Впрочем, это ему так и не удаётся сделать.

Пытаясь объяснить брату мотивы своего решения, Дерек рассказывает, как он провёл время за решёткой. И эту историю можно назвать переломным моментом фильма.

В тюрьме Дерек сам оказывается жертвой. Нетрудно догадаться, что сделают с человеком, чьё тело покрыто такими татуировками, в месте со столь большой концентрацией чернокожих и мексиканцев. Спасают его только местные авторитеты-нацисты. Однако позже он выяснят, что у них нет той убеждённости, что двигает им, и они спокойно ведут дела со всеми заключёнными, если это принесёт прибыль. Разочаровавшись, Дерек демонстративно отворачивается от них, за что несёт жестокое наказание.

Сцену с изнасилованием в душе и последующими за этим событиям в тюрьме я считаю кульминацией фильма. После потери покровительства и выписки из госпиталя Дерек ожидает ещё большей расправы от остальной части обитателей тюрьмы, но оказывается, что афроамериканец, с которым он работал и завёл дружбу, тайно заступился за него. Именно Ламонт сыграл немаловажную роль в переменах, произошедших с Дереком. Он показал ему на собственном примере, что не все чернокожие – плохие люди, которые могут только воровать, убивать, торговать наркотиками и сидеть на пособии по безработице. Он, осуждённый на 6 лет за кражу телевизора и якобы нападение на полицейского, показывает Дереку, что всё-таки правоохранительная и судебная системы могут быть предвзяты, ведь их исполняют обычные люди со своими стереотипами, предрассудками и предубеждениями.

Не вышло у меня всё-таки краткого, максимально сжатого и поверхностного пересказа. Ладно, перейдём-таки к сути.


Проблематика

Думаю, по описанному выше сюжету вполне понятно, что в фильме поднимаются проблемы расизма, неонацизма, межнациональной вражды и жестокости? Фильм пытается донести до зрителя бессмысленность всего этого. Он обличает истинную сторону лидеров неонацистов, которые лишь жаждут добраться до власти и денег, неся в народ ложные ответы и решения проблем и разжигая ненависть.


А что же в наше время?

На американском кабельном телевидении сейчас выходит отличное познавательное научно-популярное шоу Adam Ruins Everything, которое можно найти в русском переводе под названием «Адам портит всё».

Adam Ruins Everything

Недавно [на тот момент] я посмотрел 8 и 12 серии второго сезона 20 и 24 выпуски первого сезона, посвящённые мифам о наркотиках и разоблачению судебной системы США. Итак, что можно узнать из этих выпусков?

  • Несмотря на безвредность марихуаны, Гарри Анслингер под угрозой сокращения финансирования возглавляемого им Федерального бюро по наркотикам начал построенную на расизме кампанию против марихуаны и употребляющих её мексиканцев.
  • При руководстве Никсона борьба с употреблением марихуаны, по словам помощника президента Джона Эрлихмана, сказанным в 1994, использовалась для борьбы с пацифистами и чернокожими путём связывания их образов в общественном сознании с марихуаной и героином соответственно, чтоб врываться в их дома, срывать собрания и демонизировать по новостям, то есть, чтоб устранять политических оппонентов.
  • При том, что белые курят марихуану не меньше чернокожих, последних задерживают за это в 4 раза чаще.
  • Присяжные – обычные люди и так же подвержены предрассудкам. Статистика показывает, что чернокожих сажают на большие сроки, чем белых.

Из вышеприведённых фактов можно сделать вывод, что несмотря на существенные улучшения, проблема расизма в США до сих пор стоит весьма жёстко.

С другой же стороны, мы постоянно сталкиваемся просто с абсурдными проявлениями политкорректности, когда рабочих набирают не по профессионализму, а чтобы соблюсти квоту на количество работников разных национальностей (эта тема, кстати, тоже была затронута в фильме). Или когда при экранизации произведений, где все герои белые, режиссёра заставляют утверждать на роли чернокожих, чтоб избежать обвинений в их дискриминации. Из недавнего можно вспомнить скандал с премией «Оскар», среди номинантов которой не оказалось ни одного чернокожего актёра.

Я считаю, что подобными скандалами "журналисты" лишь размывают проблему неравноправия афроамериканцев. За верхушкой из громких и абсурдных петиций скрывается целый айсберг реальных проблем в жизни простых американцев.

Возвращаясь к фильму, могу вспомнить ещё сцену с речью Дерека перед погромом магазина. Меня поражает, как потомки европейских колонизаторов могут говорить, что это их Америка. Бедные индейцы…


Ну а что у нас?

Что я всё про Америку да про Америку? Бездуховно! Уж не агент ли я Госдепа? У России свой, самобытный, путь!

В небольшом провинциальном городке, где я живу, всё очень спокойно просто потому что он полузакрытый. Когда на нашем заводе ремонтировали индийский корабль, приезжали индусы, иногда встречаются представители кавказских народов, которые говорят между собой на своём языке. А так практически все вокруг белые русскоязычные люди европеоидной расы.

Говорят, в Москве всё плохо с иммигрантами. Её даже иронично и уничижительно называют Моксвабадом. Но я не был в Москве. Я вообще никогда никуда не выезжал за пределы Архангельской области. Так что не мне и судить.

Лично я был бы рад походить по европейским, западным или азиатским городам и послушать иностранную речь, посмотреть на людей других национальностей, их культуру и быт. Это же так непривычно и интересно!

Тем не менее, есть у меня и друзья и знакомые националистических взглядов. У них есть предрассудки, например, по поводу цыган или кавказцев. Я искренне надеюсь, что, если когда-нибудь судьба всё-таки сведёт меня с представителем кого-нибудь из этих народов, я не разочаруюсь в них так же, как и мои более повидавшие мир знакомые.

Засим позвольте откланяться.

08.06.2014


Чтобы сделать большой обзор, нужно потратить достаточно большое количество времени и приложить некоторые умственные усилия для систематизации своих впечатлений, разбивании их на отдельные параметры, контроль объективности и т. д. Формат же этой статьи позволяет мне быстренько пробежаться по всему, что я недавно видел, не вдаваясь в подробности и тщательный разбор, который мне было бы весьма проблематично сделать объективно для некоторых пунктов из сегодняшнего списка.
Ну и перед тем как начать напоминаю, что всё высказанное здесь является исключительно моим мнением, и я никоим образом не навязываю его Вам! Итак, начнём!


Iron Man Mod

Ironman Mod

Начнём, пожалуй, с любительской модификации для уже достаточно устаревшей Grand Theft Auto IV. Впрочем, на данный момент эта игра до сих пор является последней в серии GTA для единственной православной платформы. Ну да не будем о грустном и перейдём к самой модификации.

Тем не менее, сначала я просто обязан сделать предупреждение: если захотите попробовать, то обязательно сделайте копии оригинальных файлов перед редактированием! Дело даже не в самом моде. Несмотря на довольно длинный readme-файл, ставится он очень просто (ниже даже дам краткую инструкцию на русском). Проблема в том, что даже один мод ведёт на тёмную сторону: хочется ставить их всё больше и больше, больше и больше... А накладываясь друг на друга ни к чему хорошему они не приведут. Как говорится, backup everything and everywhere.

В общем-то, модификация не более, чем баловство. "Железночеловек" может летать на огромных скоростях по всему городу, врезаться в прохожих, в автомобили и самолёты. Может стрелять обычными патронами, лучами из руки или груди, ракетами, какими-то самонаводящимися пулями (на изображении в круге выбора оружия они скорее напоминают дротики). Может истреблять бесчисленные полчища полицейских в режиме неуязвимости или же сразиться в честном поединке с Ironcop'ом. Столько простора для весёлого времяпровождения! Если, конечно, играть час-два. Никаких миссий тут не реализовано, а стандартные вылетают при первой же сцене с костюмом.

Итог: прикольная времяубивалка на пару часов. Ну а что Вы хотели? Это ещё очень хорошая и качественная модификация. Другие вообще лишь заменяют модельки пешеходов. Короче, однозначно рекомендую к ознакомлению. В конце концов, моды - это всегда весело.

Скриншоты.

Краткая инструкция:
Во-первых, понадобится программа OpenIV. Во-вторых, собственно, сама игра (или это в-первых?), в папку с которой нужно скинуть содержимое Main Files. Обратите внимание, что нужен только один ScriptHook.dll для нужной версии игры.
Далее запускаем OpenIV, выбираем версию игры и открываем models\cdimages\componentpeds.img. Тыкаем по кнопке, включающей редактирование, и кидаем туда все файлы из папки Armors (только файлы! содержимое подпапки можно кинуть по желанию). Опционально добавляются и файлы из папки APC в models\cdimages\vehicles.img (в этом случае нужно также заменить файлы common\data\handling.dat и common\data\vehicles.ide соответствующими файлами из папки APC).
Если модификация ставится на оригинальную GTA IV, а не на EFLC, то обязательно нужно установить анимацию парашюта. Для этого нужно скинуть файл из папки Animations в anim\anim.img.
В самой игре нажмите нолик (не на NumPad'е, а который сверху). Дальше стрелочками и enter'ом выбираются пункты меню.
Вот и всё. Писал с руководства и, надеюсь, ничего не пропустил. В любом случае, всю ответственность за свои действия несёте только Вы!


Холодное сердце

Frozen

Дальше пойдём уж по хронологическому порядку моего ознакомления. И теперь на очереди фильм Frozen (русскоязычное название в заглавии). Это был мой первый полнометражный фильм, просмотренный в оригинале, на английском, хоть и с субтитрами, и со словарём.

Что ж про него сказать-то? В Сети полно положительных отзывов, а сам мультфильм получил достаточно наград (на Википедии про 6 написано). Но я уже не в том возрасте, чтобы дать здравую оценку для его целевой аудитории. В общем-то сказка есть сказка: сюжет незамысловатый (ну хорошо, соглашусь, что в конце есть небольшой "неожиданный поворот" (эту цитату следует читать голосом Димона из "Игрооргий")), с парой небольших несостыковок. Но придираться я не буду. Как и говорить про качество прорисовки, так как, по-моему, во-первых, это дело сугубо личное, а во вторых, современные конвеерные мультфильмы все друг на друга похожи (хотя люди находят какие-то различия). А вот музыка меня зацепила. Если точнее, то одна песня - Let It Go. Не даром же она была удостоена Оскара! Уже много дней её слушаю. Пожалуй, эта песня - лучшее, что есть в фильме. (пожалуй, всё-таки слишком громкое заявление) Собственно, именно песня и стала главной причиной, почему я вообще решил посмотреть этот мультик. Первопричиной, правда, стал комментарий на JoyReactor'е с переводом пародии на эту песню. M-G UniNew шикарно исполнила вокал!

Итог: семейный мультфильм для детей. Let It Go и русскоязычную пародию на repeat.


Храбрая сердцем

Brave

В России фильм Brave вышел с названием, очень похожим на предыдущий фильм. И если там упоминание человеческого насоса оправдано, то тут как-то вообще не к месту. Ну да ладно. Русские названия - это отдельный разговор.

Что же такого сказать об этом мультфильме? У него тоже достаточно наград и полно положительных рецензий. Но никаких запоминающихся песен здесь нет. Моё внимание больше всего привлекла речь героев. Шотландский акцент довольно своеобразен. Без субтитров ни за что бы не догадался, что говорят некоторые персонажи. Лексика тоже заставила почаще обращаться к словарю. Причём некоторых слов не было даже в OLD. Так что местами смотреть его было не очень легко.

По сюжету это опять же сказка. Не банальная, конечно (как-то я не часто сталкивался с шотландскими сказками), но никаких неожиданных сюжетных поворотов можно не ждать. Всё вполне предсказуемо.
Некоторых персонажей, как мне кажется, могли бы и получше раскрыть. Ту же ведьму, например. Ну да может они не хотели уходить от канонов исходной сказки. Тут уж я не знаю: не силён в шотландском фольклоре. Хотя скорее просто экранного времени не осталось. Так что ладно.

Итог? Ну, опять же семейный мультфильм для детей. Может быть и для их родителей. Позаимствую из других рецензий утверждение, что отношения матери с дочерью там хорошо раскрыты. Ну, наверное. В этом я тоже не особо силён. Как-то ни разу не приходилось быть ни дочкой, ни матерью.


Уф, заключение. Наконец-то! Не очень-то и маленький получился экспресс-пост с экспресс-рецензиями. Пора завершать сей эпос, пока меня не понесло на следующую тираду с пустословием.

16.08.2012


Название поста очень спорное. Даже в рамках одного жанра стратегий можно вполне поспорить с моим утверждением. А сравнивать игры разных жанров вообще некорректно. Но я утверждаю о превосходстве детища Blizzard Entertainment над другими играми как разработчик, как творец, а не как обычный игрок. Хотя, оценивая как игрок, вполне можно дать ей звание хотя бы одной из лучших игр современности. И вряд ли кто-то будет с этим спорить. Компания Blizzard создала целый мир, в истории которого интересно разбираться не только на игровых полях сражений, но и в книгах. Единственный серьёзный недостаток у третьей части - отсутствие четвёртой. Если бы игра закончилась на Reign of Chaos, то был было бы какое-то логическое завершение. Но вышедшее дополнение Frozen Throne закончилось на самом интересном месте. И вот уже сколько я не могу дождаться заветного продолжения, которое даже купил бы.

Но главная особенность WarCraft III - очень мощный редактор карт. World Editor позволяет изменить практически всё! Можно сделать карту в стиле шутера или RPG, где камера будет закреплена за одним персонажем. Можно делать ролики. Можно создать несколько карт и объединить их в кампанию. Редактор позволяет изменить множество параметров у войск, зданий, предметов, способностей. Таким образом можно создавать собственных персонажей и заклинания к ним. Необязательно использовать только стандартные модели. Менеджер импорта позволяет вставить в карту любую подходящую модель, которых можно найти очень много на различных модмейкерских сайтах.

Но главная фишка редактора - триггеры. Это надстройка над внутренним событийным языком программирования JASS. Они позволяют программировать поведение карты, не касаясь кода, а выбирая опции в открывающихся окнах! Именно благодаря триггерам создаются ролики, изменяются какие-то характеристики во время игры. Также триггеры расширяют возможности картостроителя в создании заклинаний. Зачем изменять только параметры у базовых способностей, если можно создать любое заклинание с помощью триггеров? Хотя тут я немного преувеличил. Возможности триггеров всё-таки ограничены. Поэтому люди, занимающиеся созданием красивых и необычных заклинаний, пишут код преимущественно на JASS. Ниже я разместил скриншот WE.

World Editor

На самом деле трудно в двух словах описать все возможности Редактора Мира. Лучше его один раз увидеть и, прочитав какую-нибудь статью, создать свою первую карту. И потом, узнавая из статей всё больше и больше, поражаться возможностями редактора. А ведь опытные картостроители-программисты создали ещё и довольно много дополнительных программ. Они позволяют, например, превратить свою кампанию из дополнительной в основную, изменить главный экран игры, редактировать модели и многое-многое другое.

Вот именно за такой мощный редактор я и выражаю огромную благодарность Blizzard Entertainment. Вы лучшие! И если когда-нибудь выйдет WarCraft IV с такими же возможностями по редактированию мира, я обязательно куплю лицензионный диск (если, конечно, цена будет приемлемая).


Сейчас я немного расскажу о своём знакомстве со всемогущим WE. Сначала поиск статей по нему привёл меня на WarCraft3FT.Info. Сейчас уже не помню, с какой статьи я начинал, но первую кампанию я делал пользуясь материалами только с этого сайта. Кампания получилась хреновая. Очень. По крайней мере сейчас я это понимаю. А виновен тут как раз этот сайт, потому что нет там нормального списка статей для новичков, и, если бы не качественные ворованные статьи, я бы там не остался. Хотя есть там ещё довольно интересные статьи в разделе литературного творчества, которые я до сих пор иногда почитываю.

Дальнейшие поиски привели меня на первоисточник множества ворованных статей - великий модмейкерский сайт XGM. Сейчас он сильно изменился. Никогда не любил полные редизайны хороших сайтов. Вот и тут теперь какое-то идиотское деление на проекты. Ниже прикрепляю скриншот старого дизайна. Давайте оставим дизайн на совесть администрации сайта и перейдём к его содержимому. Там есть и форум, и всякие наработки. Но самое интересное (по крайней мере для меня) - это готовые проекты (в старом дизайне это были действительно проекты, а не разделы), в которые можно играть и поражаться мастерству команды разработчиков, модели и статьи. Весь материал там действительно качественный. Статей много. Но все они рассортированы и оформлены в виде оглавления. На XGM я научился очень многому. И если кто-то решит в наше время стать модмейкером уже старой игры WarCraft III, то я очень рекомендую ему этот сайт. Да что я, даже Википедия рекомендует его.

XGM

Когда-то на моём старом сайте были опубликованы 2 кампании и несколько роликов. Все они очень убоги (хотя ролики худо-бедно ещё можно смотреть). На данный момент есть только одна карта, демонстрирующая всё, чему я научился. На неё я убил целый месяц, но так и не закончил тогда, 2 года назад. Но сейчас я вернулся к картостроительству. И за последние две недели закончил её. Теперь я готов возобновить работу над всей кампанией и в последние дни создаю персонажей и заклинания к ним. Я не знаю, когда закончу работу, но обязательно выложу эту кампанию, как только она будет готова.

25.07.2012


Предупреждение: данная статья, скорее всего, будет интересна только веб-разработчикам, которые интересуются настройкой виджетов различных социальных сетей.

Недавно я занимался настройкой социальных виджетов на сайте и теперь, на основании своего опыта, могу составить рейтинг социальных сетей по удобству настройки их виджетов для разработчика. Сразу замечу, что буду говорить только о like- и share-кнопках, не касаясь комментариев, авторизации и других полезных вещей, так как, кроме виджета комментариев от ВКонтакте, я их не касался.
Ну и уточню, что всё написанное ниже является моим субъективном мнением, основанном на кривости рук при настройке кнопок и комментариев на этом сайте (Kozalo.Ru) и не претендует на звание истины в последней инстанции. Если я где-то заблуждаюсь, прошу написать об этом в комментариях.


1. ВКонтакте

Виджеты этой отечественной социальной сети я считаю лучшими из всех, опробованных мною. И дело тут не только в патриотизме и русскоязычной документации. Чтобы использовать виджеты, необходимо создать специальное приложение. Конечно, для некоторых это может быть недостатком, так как требуется иметь аккаунт в VK, но у большинства россиян, пользующихся Интернетом, имеется страничка в популярнейшем ресурсе Рунета. В отличие от Facebook, номер приложения нужно указывать для инициализации почти всех виджетов. Это объединяет платформу и позволяет красиво и удобно управлять самими виджетами. После инициализации платформы, которая состоит из добавления JS-скрипта и вызова одного-единственного метода, можно добавлять виджеты. Кнопка Мне нравится, например, устанавливается созданием контейнера (представляет собой элемент <div> с параметром id), являющимся единственным обязательным параметром метода, создающего кнопку. Вызов самого метода выглядит вот так: VK.Widgets.Like(<id контейнера>). Двумя дополнительными параметрами можно передать объект с настройками отображения и идентификатор страницы, использующийся на динамических сайтах.

Вот так красиво, аккуратно и функционально добавляются виджеты от ВКонтакте. В них настраивается всё и в одной единственной строчке! На мой динамический сайт со сложной JavaScript-навигацией после правильной настройки они встали идеально! И именно поэтому виджеты от популярнейшей российской социальной сети ВКонтакте заслуживают первого места в этом рейтинге.

Подробную информацию об интеграции ВКонтакте на свой сайт можно почитать в разделе "Для Сайтов" официальной русскоязычной документации.


2. Google+

Второе место этого рейтинга я бы отдал кнопке +1 от корпорации Google. Так как никаких других виджетов, кроме этой кнопки, Google не предлагает, то и никакого приложения создавать не нужно. Вариантов кода, который надо добавить на веб-страницы, Google предлагает много. Можно обойтись двумя строчками: одной подключая JS-скрипт, другой добавляя контейнер, используя непонятный мне тэг <g:plusone>, который, впрочем, можно заменить на нормальный <div>. Можно заменить подключение скрипта небольшой JS-функцией, делающей это асинхронно (ВКонтакте, кстати, тоже есть асинхронная версия кода). А можно использовать способ с вызовом метода, как сделано ВКонтакте. В отличие от последнего, Google предлагает целых две функции. Одна из них может отобразить все кнопки +1 на странице, но не поддерживает передачу параметров виджету. Параметры, которыми настраивается отображение, вызовы обратных функций, адрес страницы (необходимо для динамических сайтов), можно передать прямо в контейнере, хотя этот способ мне не так нравится, как передача через параметры метода. На моём сайте использована асинхронная версия кода. И в постах, и в сложном JavaScript-фотоальбоме кнопка работает корректно без каких-либо дополнительных настроек!

Я так много плюсов расписал, что можно было бы дать кнопке +1 первое место в рейтинге. Так что теперь пришло время для ложки дёгтя. В отличие от кнопки ВКонтакте, виджет от Google не принимает в параметрах заголовок и текст сообщения, которое будет опубликовано в Google+ при нажатии кнопки "Поделиться". Google предлагает использовать какой-то +снипет (или +фрагмент, как написано в документации). Сразу настроить его у меня не получилось, а разбираться не захотелось, потому что куда проще переадресовать виджет на лёгкую версию сайта, откуда он сможет спарсить <title> и <meta name="description">, чтобы подставить их значения как заголовок и текст соответственно.

Подводя итог, могу сказать, что кнопка +1 сделана качественно. Всё красиво и функционально, есть много способов добавления. Единственный, но серьёзный недостаток, из-за которого она получает лишь второе место - использование каких-то +фрагментов вместо прямой передачи текста в параметрах.

Получить код для кнопки можно с помощью специального конструктора. Также имеется подробная официальная русскоязычная документация.


3. Facebook

Третье место достаётся кнопке от Facebook. У её документации есть серьёзный недостаток - отсутствие русского языка. Но мы оцениваем качество виджетов, а не языковые предпочтения их разработчиков, так что этот аргумент не учитывался при составлении рейтинга. Но из него прямо вытекает, что я мог чего-то не учесть при настройке и составить неправильное мнение о виджете, так как переводил только описания параметров.

Как и у ВКонтакте, у Facebook, кроме кнопки Мне нравится, есть и другие виджеты. Но в отличие от первого, связывание кнопки с приложением вовсе не нужно. Так что необязательно иметь аккаунт в Facebook, чтобы установить их кнопку. Это, конечно, плюс. Виджет предлагают добавить четырьмя способами. Ну как четырьмя. Лично я не представляю, где можно использовать адрес на HTML-документ с кнопкой, кроме IFrame-элемента, который и так является одним из вариантов. Но и остальные варианты не совсем равнозначны. Я не использовал способ, обозначаемый непонятными мне буквами XFBML, но думаю, что результат аналогичен варианту с HTML5-разметкой. IFrame-версия позволяет только добавить "лайк", тогда как HTML5-версия предлагает разместить сообщение в Facebook с ссылкой на страницу. Для уточнения информации о размещаемой странице, используется аналог +фрагмента - Open Graph. Что, как и у Google, является минусом. Но никакого описания виджет разместить не предлагает, так что мне хватило данных, которые он смог самостоятельно спарсить. Осталось только добавить, что настройки передаются через параметры контейнера (HTML5) или в адресе (IFrame).

Давайте обобщим всё вышесказанное. Виджет хороший, но не везде удаётся нормально поставить HTML5-версию, из-за чего приходится использовать урезанную, через IFrame, что видно по фотоальбому на основной версии этого сайта. Ну и опять же, вместо удобной передачи информации о странице параметрами, используется какой-то Open Graph. Но третье место виджет-кнопка получает вполне заслуженно.

Подробную информацию о настройке кнопки Мне нравится от Facebook можно почитать в официальной англоязычной документации.

Примечание: несмотря на то, что мы не рассматриваем виджеты, отличные от кнопок, хотелось бы всё-таки отметить странность в конструкторе виджета комментариев. В получаемом там коде ничего не говорится о приложении, с которым надо связать виджет. Но это всё-таки необходимо, ведь виджет должен как-то опознавать администраторов сайта, которые должны модерировать комментарии. Сам я не проверял, но люди пишут, что без указания номера приложения и идентификатора администратора комментарии вообще работать не будут. Возможно, в самой документации что-то об этом и написано, но всё равно странно, что в конструкторе не предлагается добавить нужный код в "шапку" (тэг <head>) сайта.


4. Твиттер

Для создания кнопки Твитнуть можно воспользоваться переведённым на русский язык конструктором, но более подробная документация всё равно доступна только на английском языке.

Никаких приложений Твиттер создавать не требует. Но похвастаться разнообразием кода тоже не может. Он предлагает всего один вариант, когда контейнером выступает текстовая ссылка, которая самостоятельно позволяет затвитить ссылку на страницу. Вместе с ней нужно разместить асинхронный код, превращающий её в полноценную кнопку со счётчиком. Параметрами, добавляемыми контейнеру в соответствии с HTML5-синтаксисом, можно указать ссылку на страницу (опять же необходимая функция для динамических сайтов, но, видимо, в этом виджете не распознаются якоря, что очень вредит подсчёту твитов c моего сайта, так как на всех страницах приводится статистика по всему сайту), текст сообщения (что очень хорошо), хэш-тэги, рекомендованных пользователей, размер кнопки. В отличие от кнопки +1, добавленной на мой сайт асинхронным методом, виджет от Твиттера отказывается преобразоваться из ссылки в кнопку в фотоальбоме на основной версии сайта. Поэтому, прочитав частично документацию, мне пришлось создать свою кнопку. Не такую красивую, но работающую, хотя и без счётчика.

Кнопки, только публикующие ссылки, проще в реализации (и даже допускают создания простеньких пользовательских аналогов), чем кнопки, считающие людей, которым понравилась страница, поэтому они по определению не могут получить высокие оценки в этом рейтинге. Да и к тому же мне пришлось делать для всех share-кнопок собственные варианты, что не очень хорошо. Но всё равно, хотя из-за отсутствия выбора добавляемого кода виджет не всегда работает как надо, но даже тогда он предлагает простенькую текстовую ссылку. Учитывая всё это, могу сказать, что четвёртый номер, полученный Твиттером в общем зачёте - очень неплохой результат.


5. Mail.Ru

Тут наконец-то вновь появляется русскоязычная документация. Хотя было бы странно, если бы у русской компании её не было. Но это всё равно мало поможет, потому что разнообразием кода виджет от Моего Мира и Одноклассников не отличается. Опять же предложен всего один вариант. Причём не асинхронный. И работать из моего динамически добавляемого кода виджет отказался. И поскольку текстовая ссылка (да, тут контейнером тоже является ссылка) меня не удовлетворяет, единственной альтернативой не работающим like-кнопкам оказалось создание собственной share-кнопки, которая работает только с Моим Миром. Вот из-за этого серьёзнейшего недостатка кнопки от Mail.Ru получают позорное последнее место в этом рейтинге.

Но есть ли места, где разработчики виджета всё-таки пошли правильным путём? Да, они оставили возможность передачи информации о странице вместе со всеми остальными настройками через параметры контейнера для like-кнопок или фрагменты URL-адреса для собственной share-кнопки. Ну и никакого приложения, кстати, тоже не требуется.

В отличие от остальных, о виджете от компании Mail.Ru я не могу сказать, что он хороший. Мне пригодился только адрес, на который надо перенаправлять пользователя, чтобы разместить ссылку в Моём Мире. Его разработчикам надо задуматься над тем, чтобы предлагать больше вариантов кода для установки их кнопок. Ну или хотя бы заменить текущий вариант асинхронным. Без этого, увы, могу дать только последнее, позорное место в рейтинге социальных виджетов.

Получить простейший код для кнопок можно в конфигураторе. А более подробная информация доступна для чтения в виде официальной русскоязычной документации.

18.12.2011


Досмотрел (21.07.2011) "eXeL@B: Видеокурс программиста и крэкера 2011". К сожалению, узнал не так уж много. Весь материал ориентирован на полных нубов новичков, которые вообще ничего не знают в программировании и крэкинге. Судя по тому, что Bad_guy объясняет даже как искать информацию в Гугле, курс расчитан на идиотов тех, кто вряд ли вообще поймёт, что такое ассемблер. Собственно, самому крэкерству посвящены лишь последние уроки. То он объясняет компьютерную математику. То обучает основам программирования на PHP, после чего появляются нехотящие учить нормальные языки кадры, делающие фейки и прочие какахи на PHP Devel Studio. И пофиг, что установка web-сервера и PHP совершенно не относятся к крякерству. Потом начинается обучение ассемблеру, работе в OllyDbg, взлом элементарнейших крякми от Фантома (которые я ещё год назад ломал без проблем), распаковка UPX'а. И неважно, что тут лучше использовать специальные курсы. По ассемблеру хороши уроки Битфрая, по взлому простейших программ и распаковке лучше почитать MozgC (без ссылки, найдёте на eXeL@B). В конце курса идут рассуждения о способах защиты в протекторах и обещания их посмотреть, после чего идёт какой-то непонятный урок простого чтения уже написанной статьи (мы что слепые? Или курс всё-таки ориентирован на детсадовцев?). Что вынес из курса лично я? Я узнал немного о функциях WinHEX'а, OllyDbg'а, узнал что такое энтропия и наконец-то попробовал использовать шифровку с XOR'ом (а то всё было лень). Надеюсь, продолжение курса будет более полезным и интересным. Также хочу сказать спасибо RuTracker'у за возможность скачать этот курс нахаляву и без проблем с почтой (ожидаю, что в следующем году вы также поможете мне ознакомиться с курсом).

18.12.2011


Наконец-то (29.03.2011) посмотрел фильм "ТРОН: Наследие"! В комментариях были разные мнения. Одним фильм понравился, другим - нет. Я отношусь к первой категории. Так как я уже писал о игре, то не могу не сделать хоть какого-нибудь маленького обзорчика на фильм.

Перед просмотром второй части, пересмотрел первую. Такой контраст! Сразу видно весь прогресс в сфере высоких технологий за 28 лет! Неуклюже и мило нарисованные, как в мультиках, светоциклы, танки и рекогнайзеры сменяются полностью нарисованными на компьютере трёхмерными моделями! Где-то читал, что шейдеры - источники темноты. Может поэтому лучше всего на компьютерах рисуются тёмные модели? В обеих частях правили злодеи. Но первая сделана светлой, а вторая состоит из темноты. Даже атмосфера разная! Энергичный Флинн превратился в расчётливого стратега, сидящего на месте.

А вообще фильмы очень интересные, и тем, кто их не смотрел, должно быть стыдно.

18.12.2011


Сейчас хочу рассказать о нескольких стареньких, но интересных компьютерных играх.

TRON 2.0

"TRON 2.0" - произведение искусства, как и фильм, на основе которого она создана! Одна из лучших запомнившихся мне игр! В отличие от неё, новая игра полное УГ, заточенная под консоли, совершенно неинтересная и тупая прыгалка с драчулкой. Друзья пытались меня переспорить, но, судя по видеообзорам и комментариям к ним, на моей стороне большинство. Владельцы новых дорогих компьютеров, ценящие игры за графику и спецефекты, убейтесь об стену вы не правы, это не главное. Любители консолей - играйте в консоли. Разработчики, делайте на ПК игры для ПК!

DeadHunt

Судя по титрам в скачанной мною версии, эта игра создана нашими, русскими разработчиками. Для игры в 50 Мб она сделана очень даже не дурно! Карт и оружия, конечно, мало, но на недельку её хватит, чтобы после долгих мучений с кодом или сложным д/з по какому-либо предмету, поубивать учителей зомбаков!

Serious Sam: The First Encounter и Serious Sam: The Second Encounter

Игры лёгкие, с мясом и кровью. Мочилово. Нужно мочить кучи монстров, но, в отличие от DeadHunt, в них есть сюжет, который в таких играх, правда, не главное и придуман не очень. Произошло обычное нападение пришельцев, и самый крутой герой отправляется в прошлое найти супер-оружие. Но радуют описания оружия и монстров, подсказки компьютера. Достаточно большой выбор оружия. Одних дробовиков две штуки! Некоторые монстры тоже очень интересны. Например бык-оборотень или скелет с клира. Мочилово разбавляется поиском секретных мест и выполнением нехитрых квестов. Для каждой миссии создана отдельная карта с кучей локаций. Битвы происходят как на обширных и светлых равнинных территориях, так и в тёмных узких помещениях. Так что, в отличие от DeadHunt, в неё можно играть не только как в минутное мочилово, но и как в настоящую игру с кампанией.

18.12.2011


Вчера (22.02.2011) дочитал книгу по ActionScript 3.0. Сегодня досмотрел видеоуроки по "ВКонтакте API". Хотелось бы сказать пару слов о видеокурсе. Разумеется, мне он достался нахаляву, скачанный с Рутрекера, так что претензий у меня быть не может. Представим, что я его купил за 500 рублей. Главный минус начинает бросаться в глаза сразу после запуска любого урока - это видео с полосами прокрутки (у меня маленький монитор). В первом видео автор говорит, что раз мы смотрим этот курс, то мы крутые и опытные флэш-программисты. Однако во второй части про PHP и, особенно, про циклы он рассказывает так, будто объясняет ламеру, как переустановить Windows, несмотря на то, что оба языка имеют C-шный синтаксис!

В уроках показано, что писать код надо в кадрах и ни слова не сказано, что рекомендуется его писать в отдельных файлах, соблюдая ООП-заветы. Даже при использовании кадрового размещения кода, совершенно не понятно и не удобно размещение интерфейса и кода на разных слоях, между которыми постоянно приходится переключаться.

В заставке к каждому уроку можно прочитать, что Борис Шевченко (автор курса) - "Профессиональный веб-программист. Специалист в области разработки RIA-приложений." Посмотрев комментарии к раздаче, можно увидеть очень интересные записи. В частности про то, что автор - школьник! Посмотрев фотографию, вполне в это верится. Или почему у него на странице не указан год рождения? Вопрос: может ли школьник быть профессиональным программистом?

В конце концов информацию можно получить совершенно бесплатно из документации "В Контакте". Зачем тогда платить 500 рублей? Неужели профессиональные флэш-разработчики не могут прочитать официальную документацию? Единственную пользу видеоуроков я вижу в освоении среды разработки и методов работы.

17.12.2011


Сегодня (4.01.2011) досмотрел видеоуроки Владимира Любаева по Delphi. На Рутрекере в комментариях люди ругались на них, что они плохие и созданы для получения денег, так как диск дорого стоит. Про стоимость диска я, разумеется, не в курсе и немного напишу про своё мнение.
Вообще, все языки я изучал по книжкам. На каких-то писал что-нибудь небольшое, про другие читал только для ознакомления. И сама идея их изучения в формате видео довольно странная.

В теоритической части диска даются основные понятия языка: переменные, условные операторы, циклы, подпрограммы и массивы. Удивительно, что ничего не сказано об условном операторе Case. Лично мне эта часть показалась немного нудной, но, наверно, потому что я уже всё это в той или иной степени знаю и повторы объяснений и рассусоливание понятных вещей (привет Кэп!) новичкам придётся кстати.

Раздел про компоненты, по-моему, самый интересный на всём диске. Немного "кэповства" есть и здесь, а больше и придраться не к чему.

Обучение практикой, конечно, приветствуется. Так действительно лучше запоминается. Но на мой взгляд всё-таки теории в некоторых местах надо побольше. Например, в создании возможности "драгэнддропить" я нифига не понял! Там подключается какой-то модуль и используются какие-то его функции. А не надо ли дать пояснения? Что это за функции? Какие у них параметры? Что они вообще делают? Да и что это за модуль?
Или процедура выключения компьютера. Почему начинающим программистам не дают знания о получении привилегий в ОС? Это же самое интересное! Ну и самое главное: применяется обработка исключений, но ничего об этом не сказано!

В Photoshop-части опять же на мой взгляд мало теории. Показаны действия, но почему надо делать именно так, не сказано. Нам что тупо заучить и делать точно такие же кнопки? А также у меня отсутствует половина урока по созданию красивого текста. Но может это просто криво скачалось.

Про дополнительные материалы ничего писать не буду. Там всё интересно, познавательно и нормально преподаётся.

Подведём итог. Изучать теорию по видео - не самая лучшая идея. Всё-таки книжки тут лучше выполняют свою задачу. Объём материала у них сильно отличается. Книги гораздо больше информации дают. Данный видеокурс можно посоветовать для закрепления знаний. В нём хороша практическая цель, наглядное представление материала. Хотя и новички могут с ним ознакомиться. Может на видео им будет понятнее. За них я ничего говорить не буду. Тогда курс должен их заинтересовать продолжить изучение Delphi по более информативным источникам.

<<   / 1   >>