Pull to refresh
1
0.1

Программист Android/iOS, Softvelum LLC

Send message

Войны битов

Level of difficultyEasy
Reading time37 min
Views13K

В своей прошлой публикации я вскользь упомянул так называемые «консольные войны» — битву маркетинговых кампаний конкурирующих видеоигровых платформ прошлого. Это не такое уж малоизвестное явление, о нём написаны книги, сняты фильмы, ему посвящены Youtube-каналы.

Сегодня хочу углубиться в тему и рассказать о наиболее знаковом проявлении консольных войн — предложенной маркетингом метрике, которая смогла оставить настолько значительный след в общественном сознании, что многие до сих пор оперируют её понятиями, даже не подозревая про существование стоящей за этим истории.

Будем заниматься странными вещами: подсчётом бит в игровых приставках и попытками найти в этом занятии какой-то глубокий смысл. Открывайте форточки, будет душно!
Читать дальше →
Total votes 61: ↑60 and ↓1+88
Comments13

Средневековые хиппи Полинезии и реальная цена пацифизма

Reading time11 min
Views29K

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

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

Читать далее
Total votes 148: ↑115 and ↓33+114
Comments232

Как я оплачивал в интернете криптовалютой

Reading time7 min
Views67K

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

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

Читать далее
Total votes 170: ↑155 and ↓15+174
Comments121

Переезд в США от визы О-1 до гринкарты: стоимость эмиграции, сроки, ошибки и советы

Reading time10 min
Views27K

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

Disclaimer: вся статья лишь суммирует мой личный опыт, мысли об ошибках и правильных ходах – это ни в коем случае не legal advice, но мне в свое время не хватало и такой информации.

Читать далее
Total votes 40: ↑32 and ↓8+35
Comments101

Как отлаживать bash-script-ы по шагам или, возможно, самая короткая статья о программировании/отладке на Хабре

Reading time1 min
Views42K

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

Читать далее
Total votes 158: ↑157 and ↓1+188
Comments37

Motorola Razr 2019 с гибким экраном: опыт использования и личное мнение о девайсе

Reading time5 min
Views22K

Привет, Хабр! Как я и говорил в предыдущей статье, барахолки сегодня нет, на следующей неделе ее тоже не будет, поскольку в Испании наступил период новогодних и рождественских праздников. Но не проблема — у меня достаточный запас устройств на подобные случаи, так что сегодня делаю обзор одного девайса вместо описания нескольких интересных штук с барахолки.

Речь идет о Motorola Razr 2019 с гибким экраном. Недавно мне удалось приобрести этот смартфон, в идеальном состоянии, хоть и б/у. Сразу скажу, что к Motorola Razr, оригинальному устройству, я всегда неровно дышал. Поэтому после того, как узнал, что в 2019 началась работа над инкарнацией смартфона, да еще и с гибким экраном, твердо решил приобрести телефон после того, как он станет доступным. Ну и теперь он у меня в руках, а в продолжении — личное мнение об устройстве.
Читать дальше →
Total votes 41: ↑38 and ↓3+47
Comments61

Идеальный наблюдатель на Swift

Reading time12 min
Views5.3K

В этой статье речь пойдёт о шаблоне проектирования «Наблюдатель» (Observer) и его реализации на Swift. Точнее — о его идеальной реализации.

Читать далее
Total votes 2: ↑2 and ↓0+2
Comments12

Обращение к Javascript-сообществу: перестаньте писать квадраты

Reading time7 min
Views67K

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

Read more
Total votes 172: ↑169 and ↓3+210
Comments355

Почему любой Android снимает видео хуже iPhone?

Reading time10 min
Views134K

Привет, камрады, киноделы и просто читатели! 

Некоторые из вас меня знают как разработчика Андроид-приложения mcpro24fps, предназначенного для профессиональной видеосъёмки на телефон. И сегодня я бы хотел обсудить такую тему: «Почему iPhone остается лидером в видеосъёмке?»

Читать далее
Total votes 209: ↑193 and ↓16+227
Comments716

Язык программирования, который контролирует мировые финансы: 240 миллиардов строк кода на COBOL

Reading time22 min
Views38K
«Второй по ценности актив в США — после нефти — это 240 миллиардов строк кода на COBOL»

image

Когда Томас впервые начал программировать, это был 1969 год. Он был ребенком, только что окончившим среднюю школу в Торонто, без каких-либо конкретных жизненных целей. Его отец был плотником, но ему не повезло пойти по стопам своей семьи; Томас был неусидчивым. «Мой отец знал, что я не смогу скрепить два куска дерева молотком», — смеется он.

Поэтому его мать предложила что-то странное и новомодное: Как насчет… компьютерного программирования?

В 1969 году компьютеры все еще были странной диковинкой, размером с большой шкаф. Но компании по всему миру понимали, что они бесценны для любых задач, требующих быстрого счета, например, для подсчета заработной платы. Работу предлагали всем, кто мог научиться хоть немного кодировать. Поэтому Томас нашел «какую-то захудалую школу» в центре Торонто и в течение следующих двух месяцев изучал актуальный на тот момент компьютерный язык: COBOL (Common Business-Oriented Language).

После окончания школы его взяли на работу в отдел сортировки чеков крупного канадского банка. (Он не хочет, чтобы я упоминал его название в целях конспирации банка; «Томас», — это псевдоним, если вы еще не догадались). Тогда Томас еще не был программистом в банке, но в течение следующих нескольких лет он дал понять, что хочет им стать, и его работодатель оплатил ему кучу самых настоящих курсов по кодированию в колледже, и в 1978 году он начал долгую карьеру в банке в качестве программиста.
Читать дальше →
Total votes 39: ↑31 and ↓8+36
Comments73

Пишем на Go простой балансировщик

Reading time8 min
Views26K

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

Поигравшись с профессиональными балансировщиками наподобие NGINX, я попробовал ради веселья создать простенький балансировщик. Написал я его на Go, это современный язык, поддерживающий полноценный параллелизм. Стандартная библиотека в Go имеет широкие возможности и позволяет писать высокопроизводительные приложения с меньшим количеством кода. К тому же для простоты распространения она генерирует единственный статически скомпонованный бинарник.
Читать дальше →
Total votes 79: ↑73 and ↓6+67
Comments32

Дизайн и звук: классика модерна, британский ответ Японии, кассетник “космической эры” и брутальные швейцарцы

Reading time4 min
Views12K
Значение дизайна при создании современной аппаратуры оценивается по-разному. Существуют люди, для которых использование тех или иных эстетических изысков не играет существенной роли, равно как другие, кто искренне полагает, что аудиоаппаратура это в первую очередь предмет интерьера, а уже потом ценный мех звук и всё остальное. Но, как мне кажется, подавляющее большинство людей искренне убеждены, что форма должна соответствовать содержанию. Это первый пост в новом цикле о дизайне в аудио.



Нельзя объять необъятное и я остановлюсь лишь на нескольких интересных разработках. При выборе устройств я руководствовался личными эстетическими предпочтениями, а также оригинальностью необычностью разработок (с учетом времени, в которое они были созданы). Под катом несколько слов о дизайнерских концепциях, которые оставили заметный след в истории аудио.
Читать дальше →
Total votes 7: ↑6 and ↓1+5
Comments7

Удивительно полезный инструмент: lsof

Reading time9 min
Views125K
Я привык искать проблемы в коде или в системе, пользуясь логами или показателями мониторинга, которые выводятся на симпатичных панелях управления с простым и понятным интерфейсом. Однако, если по какой-то причине данные на панель управления не поступают, или логи какой-нибудь службы недоступны, отладка усложняется. Теперь подобных проблем немного, встречаются они редко, но они, всё же, случаются. Поэтому и в наше время весьма ценно знание инструментов, которые помогают понять, что не так с неким процессом на каком-нибудь компьютере.

image
Читать дальше →
Total votes 73: ↑69 and ↓4+65
Comments30

На всякий пожарный: полезные Live CD/USB для аварийного запуска компьютера

Reading time6 min
Views598K
Привет, Гиктаймс! Крайние меры на то и крайние, чтобы обращаться к ним из отчаяния. Поэтому даже в том случае, когда у компьютера «поехала крыша», есть вариант починить его без полной переустановки системы. Сегодня мы поговорим о загрузочных флэшках и рассмотрим простые очевидные наборы для работы с ПК «на лету».

Читать дальше →
Total votes 47: ↑37 and ↓10+27
Comments85

Кризис ожирения сайтов

Reading time30 min
Views123K
Примечание переводчика: визит под кат этого поста означает большие объёмы потреблённого трафика. И это иронично, если учесть поднятую тему. Но всё сразу встаёт на свои места, если помнить, что в оригинале это было выступление в прошлом ноябре в Сиднее длиной почти в час. Чтение поста занимает куда меньше времени. В форме видеозаписи (1280×720) речь занимает два гигабайта. Пост же занимает всего лишь 12 МиБ. Рекомендуется просмотр на широких мониторах.



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

Выступление совсем не об этом. Я хотел бы поговорить об этом общественном кризисе здоровья, этом ожирении сайтов. Отличные дизайнеры, которые задумываются о вебе как я или даже больше, почему-то делают страницы, которые становятся больше. Речь пойдёт о текстовых в своей основе сайтах, которые по каким-то непостижимым причинам с каждым годом становятся всё больше и больше.
Читать дальше →
Total votes 97: ↑93 and ↓4+89
Comments123

Удаление/восстановление Metro-приложений в Windows 10

Reading time14 min
Views187K


Как бы не было много сторонников старых версий ОС, все же пришла пора переходить на Windows 10. В связи с этим предлагаю разобраться с предустановлеными Metro-приложениями. Согласитесь, мало кто будет использовать абсолютно все приложения, которые навязывает нам корпорация. Ведь большинство из них просто занимают место, а кого-то вообще раздражают. В этой статье я поделюсь с вами способом, которым можно «почистить» систему от именно таких — ненужных — приложений на Windows 10.
Читать дальше →
Total votes 23: ↑19 and ↓4+15
Comments17

Разбор «Марсианина»: Марс, наука, политика

Reading time6 min
Views41K


Надеюсь все уже посмотрели фильм, поэтому обойдемся без спойлеров. Если еще не смотрели — лучше не читайте, а то впечатления от просмотра могут измениться. Сегодня разберем фильм на детали, и посмотрим, что в нем выдумка, а что похоже на реальность.
Читать дальше →
Total votes 108: ↑105 and ↓3+102
Comments153

19 советов по повседневной работе с Git

Reading time14 min
Views285K


Если вы регулярно используете Git, то вам могут быть полезны практические советы из этой статьи. Если вы в этом пока новичок, то для начала вам лучше ознакомиться с Git Cheat Sheet. Скажем так, данная статья предназначена для тех, у кого есть опыт использования Git от трёх месяцев. Осторожно: траффик, большие картинки!

Содержание:
  1. Параметры для удобного просмотра лога
  2. Вывод актуальных изменений в файл
  3. Просмотр изменений в определённых строках файла
  4. Просмотр ещё не влитых в родительскую ветку изменений
  5. Извлечение файла из другой ветки
  6. Пара слов о ребейзе
  7. Сохранение структуры ветки после локального мержа
  8. Исправление последнего коммита вместо создания нового
  9. Три состояния в Git и переключение между ними
  10. Мягкая отмена коммитов
  11. Просмотр диффов для всего проекта (а не по одному файлу за раз) с помощью сторонних инструментов
  12. Игнорирование пробелов
  13. Добавление определённых изменений из файла
  14. Поиск и удаление старых веток
  15. Откладывание изменений определённых файлов
  16. Хорошие примечания к коммиту
  17. Автодополнения команд Git
  18. Создание алиасов для часто используемых команд
  19. Быстрый поиск плохого коммита

Читать дальше →
Total votes 152: ↑149 and ↓3+146
Comments62

Русский отец Звездных Войн

Reading time10 min
Views68K


Каждый день в робошколе проходят занятия на которых, ученики собирают роботов и слушают о них лекции. И вот на днях как-то встал вопрос кто из русских фантастов оказал на НФ самое большое влияние. Оказалось, что имя Павла Клушанцева не знает никто. А ведь на западе это главный русский фантаст, о стругацких там не слышали, а вот в подражание Клушанцеву Лукас снял свои замечательные Звездные войны. Давайте это исправлять.



Если нужно посмотреть всего один фильм для знакомства с ХХ веком, звездные войны вне конкуренции. Нет фильма оказавшего больше влияние на поп-культуру, подтверждением тому Рейган назвавший СССР Империей зла и объявивший ей «Звездные Войны» СОИ. Почему именно Звездные Войны завоевали такую популярность?

Секрет успеха звездных войн лежит на поверхности если вы хоть немного знакомы с теорией кино или т.н. «электронных средств коммуникации». Вся теория укладывается в четыре слова «Media is the message». Медиа и есть сообщение — впервые вывел в своей книги Маршалл Макклюен в своей книге «Понимание медиа». Она вышла в 1968 небольшим тиражом, но просочилась в среду хиппи и киношников Голливуда. Книга была довольно заумной, местами малодоказательной и похожей на эзотерику хиппи, но его схемы безупречно объясняли, что происходит. Например, почему телевизор с плохой картинкой неожиданно оказался гораздо популярнее кино.

Как устроены Звездные Войны?
Total votes 63: ↑56 and ↓7+49
Comments69
1

Information

Rating
2,944-th
Location
Владивосток, Приморский край, Россия
Date of birth
Registered
Activity