Как стать автором
Обновить
324
0
Maxim Mozgovoy @rg_software

university professor and software developer

Отправить сообщение

Addiator или арифметика на шести рейках

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров1.8K

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

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

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

Читать далее
Всего голосов 15: ↑15 и ↓0+15
Комментарии7

Магистратура и аспирантура в Японии: 10 лет спустя

Время на прочтение7 мин
Количество просмотров9K

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

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

Читать далее
Всего голосов 17: ↑16 и ↓1+15
Комментарии6

DIY Minesweeper из подручных материалов

Время на прочтение3 мин
Количество просмотров4.2K

Не успел к пятнице, но пусть будет воскресный пост. Disclaimer: описанная ниже самоделка не претендует на место в зале DIY-славы. Однако идея мне показалась забавной, а раз так, то чего бы не воплотить. А если уж воплотили, то чего бы не рассказать об этом. Итак, далее вас ждёт небольшой рассказ о том, как сделать настольную версию “Сапёра” из всякой подручной мелочи.

Читать далее
Всего голосов 24: ↑24 и ↓0+24
Комментарии3

Почему Go To Considered Harmful?

Время на прочтение3 мин
Количество просмотров3.6K

Некоторое время назад мне понадобилось процитировать известное письмо Дейкстры 1968 года, и я воспользовался случаем, чтобы таки внимательно прочитать его. В наши дни "споры о `goto`" уже неактуальны, поскольку в большинстве современных языков команды `goto` либо нет вообще, либо используется она редко, и стало быть, обсуждать особо нечего. Однако мне была интересна аргументация. В нашей области масса "фольклорного знания", которое на поверку не всегда оказывается точным (что хорошо показано в книге Боссавита), так что оценить логику Дейкстры с позиции сегодняшнего дня не помешает. Надо сказать, что его формулировки не всегда легко понять, поэтому я решил изложить их несколько более простым языком, потратив немного больше места.

Читать далее
Всего голосов 21: ↑19 и ↓2+17
Комментарии33

Представление объектами: трудности роста

Время на прочтение8 мин
Количество просмотров1.7K

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

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии15

«Прочту потом»: трудная судьба оффлайновой коллекции интернет-страничек

Время на прочтение9 мин
Количество просмотров25K

Есть виды софта, без которого одни люди жить не могут, а другие даже не представляют, что такое существует и кому-то вообще нужно. Для меня долгие годы такой программой был Macropool WebResearch, позволявший сохранять, читать и организовывать интернет-страницы в некое подобие оффлайновой библиотеки. Уверен, многие из читателей прекрасно обходятся коллекцией ссылок или комбинацией браузера и папки с набором сохранённых документов. Мне же хотелось бы иметь возможность хотя бы отмечать документы как "прочитанные" или "избранные", быстро переходить от одного текста к другому и не зависеть от доступности интернета или конкретного сайта. Бывает, что читать есть время ровно тогда, когда интернета нет (в дороге, например), да и ссылки, к сожалению, нередко оказываются недолговечными.

Читать дальше →
Всего голосов 68: ↑67 и ↓1+66
Комментарии113

О рейтингах вузов: отделяем зёрна от плевел

Время на прочтение17 мин
Количество просмотров68K
Уже не раз и не два на Хабре мне приходилось сталкиваться с мимоходом брошенными фразами в стиле «а ещё этот вуз входит в первую сотню мирового рейтинга» или «этот вуз плох, он в рейтингах болтается где-то в четвёртой сотне». При этом получается, что все особенности того или иного заведения, все его достоинства и недостатки каким-то волшебным образом отображаются в единый численный показатель, служащий чётким подтверждением того или иного тезиса. В действительности ситуация гораздо сложнее и интереснее. Своим субъективным взглядом на неё я и хотел бы сегодня поделиться. Прошу прощения за большой объём текста, но меньше никак не получается.
Читать дальше →
Всего голосов 52: ↑50 и ↓2+48
Комментарии28

Слава эпигонам, или Великие против лучших

Время на прочтение3 мин
Количество просмотров18K
Я обычно стараюсь писать по делу, но иногда можно и поразмышлять об абстрактном. Не так давно мне в руки попалась неплохая (и, пожалуй, единственная в своём роде) книга 1001 Video Games You Must Play Before You Die, авторы которой взяли на себя титанический труд вычленения лучшей, по их мнению, тысячи игр за всю историю индустрии. Учтены практически все известные платформы, начиная с аркадных машин семидесятых годов и заканчивая Xbox360 и iPhone. Конечно, любой хит-парад (даже если в нём аж 1001 позиция) субъективен, и каждый из нас может с удивлением не обнаружить в нём любимой игры. Ещё авторы явно благоволят последнему десятилетию, которому досталась половина всей книги. С другой стороны, к их чести заявленным форматом «1001» дело не ограничивается, и частенько проскакивают комментарии вроде «эта игра имела такого-то предшественника, а позже аналогичная идея была воплощена в таком-то проекте», по сути расширяющие основной список. Однако мне бросилась в глаза ещё одна особенность, которая, как мне кажется, отражает любые «списки лучших» чего бы то ни было, а именно явное преклонение перед великими работами.
Читать дальше →
Всего голосов 19: ↑15 и ↓4+11
Комментарии14

Аттракцион невиданной щедрости от университета Восточной Финляндии

Время на прочтение1 мин
Количество просмотров61K
Хочу поделиться с сообществом краткой новостью, пришедшей на рассылку: мой alma mater, университет Восточной Финляндии, объявляет конкурс аж на 99 аспирантских позиций, из которых 50 непосредственно дают естественнонаучному факультету (где кроме IT также представлены физика, математика, химия и биология).

На моей памяти такого обилия мест не было никогда. А невиданная щедрость заключается в том, что под каждое место на четыре года обучения уже выделена стипендия в районе 2-2.5 тысяч евро, так что если кому-то хочется позаниматься наукой в комфортабельных условиях, большего и желать трудно.
Читать дальше →
Всего голосов 71: ↑68 и ↓3+65
Комментарии22

В Финляндии обсудят предложенный сообществом закон о копирайте

Время на прочтение3 мин
Количество просмотров52K
В прошлом году на Хабре проскакивала новость о «беспределе копирастов», когда за скачивание музыкального альбома с торрентов полиция конфисковала ноутбук у девятилетней девочки и взыскала с семьи штраф (изначально требовали 600 евро, но в итоге родители заплатили 300).

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

Однако резонанс история вызвала большой и послужила стимулом к общественной инициативе по изменению текущего законодательства, воспринимаемого многими как несправедливое.
Читать дальше →
Всего голосов 72: ↑71 и ↓1+70
Комментарии119

Субъективные заметки об OpenPandora: блеск и нищета open source

Время на прочтение12 мин
Количество просмотров111K
Хотя о карманном компьютере (или портативной консоли, кому как нравится) Pandora написано уже немало, я решил добавить в копилку свои впечатления от этого весьма интересного устройства. К тому же на Хабре «Пандора» пока что упоминалась лишь вскользь. Стало быть, неплохо бы исправить упущение. Обзор — не мой жанр, так что сразу перейду к вещам, на мой взгляд, наиболее существенным.


Читать дальше →
Всего голосов 82: ↑75 и ↓7+68
Комментарии86

The Oliver Twins запускают проект Dizzy Returns

Время на прочтение2 мин
Количество просмотров31K
На Хабре уже промелькула новость о том, что братья Оливеры открыли на Кикстартере сбор средств для новой игры Dizzy Returns.



Событие, казалось бы, по нынешним временам рядовое. Поколение геймеров 80-х и 90-х подросло, обзавелось деньгами, и рынок ретро-игр, восьмибитных футболок и всяческих римейков стал расти как на дрожжах. Однако не всё так буднично. По крайней мере, немного поразмыслив, я в первый раз в жизни не просто выразил моральную поддержку проекту, но и не поленился зайти на кикстартер и пожертвовать немного реальных денег.
Читать дальше →
Всего голосов 58: ↑53 и ↓5+48
Комментарии46

Диаграммы и графики: осмысляя Тафти

Время на прочтение5 мин
Количество просмотров21K
По работе мне периодически приходится визуализировать численные данные — в виде таблиц, диаграмм или графиков. Из последнего прочитанного по теме наиболее интересной показалась известная книга Тафти The Visual Display of Quantitative Information. Я решил сделать из неё краткие выписки по относящимся к моим задачам вопросам. Ключевое слово здесь — краткие. Максимум полезной информации на минимум текста (даже стиль изложения будет подчёркнуто лапидарным). Дополнительные сведения и собственные мысли буду скрывать под спойлер. Надеюсь, мой конспект будет полезен хабрасообществу; предлагаю также поделиться своими наработками и полезными ссылками.
Читать дальше →
Всего голосов 43: ↑40 и ↓3+37
Комментарии24

Магистратура и аспирантура в Японии: 2012

Время на прочтение1 мин
Количество просмотров20K
Казалось, совсем недавно я писал о возможности пройти обучение в японской магистратуре или в аспирантуре. Однако прошли новогодние праздники, а с ними пришли новые известия, с которыми я и хочу ознакомить всех интересующихся в этой короткой заметке (даже ката не потребуется!):
  1. Похоже, один из хабрачитателей таки стал нашим магистрантом (по моей рекомендации) в этом году! Подробностей пока не будет — боюсь спугнуть. Ещё в одной инстанции его заявку должны завизировать. Если всё получится, попрошу написать его о впечатлениях.
  2. В апреле открывается общий приём заявок через посольства. Доступны магистратура и аспирантура, а также базовое высшее образование. Честно говоря, я и не знал, что к нам можно ехать сразу после школы, но оказывается, есть и такая программа. Впрочем, не уверен, стоит ли её советовать — чем меньше у кандидата образования, тем больше «лотерейности», поскольку неясно, как хороших отсеивать от не очень хороших.
  3. Стипендия для магистрантов составляет 152 тыс. иен, т.е. примерно 60 тыс. рублей по нынешнему курсу. Для докторантов чуть побольше, для бакалавриата — поменьше. Все стипендиаты освобождаются от платы за обучение. Кроме того, за счёт Японии оплачивается авиаперелёт.
  4. Все требуемые документы можно оформить за две недели. Исключение — сертификат TOEFL. Он необязателен, но очень желателен.
Разумеется, вы можете планировать учёбу в любом японском вузе, но я как патриот своего заведения буду агитировать за него. Как обычно, буду рад ответить на любые вопросы. Только читайте, пожалуйста, сначала мои посты и побродите по ссылкам. А то в прошлый раз было уж очень много вопросов, ответы на которые и так уже были даны в тексте.
Читать дальше →
Всего голосов 57: ↑53 и ↓4+49
Комментарии50

Субботние записки: О мёртвых языках и живой практике

Время на прочтение7 мин
Количество просмотров4.2K
Мы все знаем, что в мире создано несколько тысяч языков программирования. Один только список программ Hello, world с сайта Wikibooks включает в себя 230 категорий (полный список на сегодня состоит из 402 элементов). При этом известный рейтинг TIOBE подтверждает очевидное соображение: основная масса этих языков скорее мертва, чем жива. Уже на долю первого десятка языков приходится 76,77% всех учтённых TIOBE проектов. Второй десяток увеличивает эту долю до 85,61%. Стало быть, на оставшиеся 30 языков (TIOBE учитывает лишь первые 50 языков при расчёте процентов) приходится менее 15% упоминаний.

Понятно, что рейтинги заключают в себе некоторую долю лукавства, поскольку даже непопулярный по общим цифрам язык может быть крайне важен для какой-либо узкой сферы. Возьмём любимый здесь многими Erlang или Haskell (39-е и 41-е места рейтинга) или ещё более очевидные Simulink и LabVIEW, вообще не попавшие в Top 50, но незаменимые в своих областях. С другой стороны, очевидно, что языки действительно приходят и уходят, и популярность, скажем, Паскаля обречена на снижение, поскольку на смену идут более прогрессивные языки, метящие в ту же нишу. (Не будем упоминать здесь Delphi, в котором от Паскаля остался разве что базовый синтаксис. У традиционного паскалиста листинг на Delphi может вызывать такой же ступор, какой у меня вызвала первая увиденная мною программа на Visual Basic 6, с этими Private и Public, Option Strict и Dim As, напрочь отсутствовавшими в родном Бейсике ZX Spectrum.)

Однако все языки создавались для чего-то, а не просто так. И перед тем как окончательно отправить тот или иной язык в архив истории, следовало бы полностью осознать его наследие, употребимое в текущей практике программирования. А может статься, что некоторые языки вообще списаны со счетов зазря. Вопрос лишь в том, как грамотно провести ревизию, инвентаризацию всего этого добра из сотен и тысяч языков, как извлечь крупицы смысла из гор отработанной породы? Об этом мне и хотелось бы поговорить. Сразу скажу, у меня нет хороших ответов, но есть хорошие вопросы.
Читать дальше
Всего голосов 58: ↑53 и ↓5+48
Комментарии107

Образование в вузе и за его пределами: взгляд с кафедры

Время на прочтение8 мин
Количество просмотров15K
Последние две недели были особенно плодотворны темами, посвящёнными изучению IT в школе, в университете и самостоятельно. Интересен разброс мнений: от «обязательно идите в вуз, впитывайте знания, получайте корочку» до «ничему вас там не научат, лучше идите в индустрию и учитесь у старших коллег». Как действующий университетский преподаватель я, конечно, буду ратовать за вузовское образование, но с большими дополнениями и оговорками. Именно этим дополнениям и оговоркам хочется посвятить отдельную статью, надеюсь, небесполезную для интересующихся школьников и студентов, и способствующую целостному взгляду на образовательный процесс в нашей любимой области.
Читать дальше →
Всего голосов 96: ↑87 и ↓9+78
Комментарии148

Магистратура и аспирантура в Японии

Время на прочтение4 мин
Количество просмотров37K
С опозданием поздравляю с началом учебного года всех хабровчан, для которых это событие не является простой календарной датой. Надеюсь, небольшой рассказ о магистратуре и аспирантуре в университете, где я сейчас работаю, вызовет у вас интерес.



Речь пойдёт об университете Aizu, где я тружусь в меру сил уже почти два года и, если не случится никаких неожиданностей, продолжу деятельность и в обозримом будущем. Кстати, на фотографии — наш кампус.
Читать дальше →
Всего голосов 102: ↑97 и ↓5+92
Комментарии119

NLP: проверка правописания — взгляд изнутри (часть 4)

Время на прочтение3 мин
Количество просмотров6.1K
(Части 1, 2, 3) В четвёртой части мы поговорим о проверке грамматики за пределами токенизированных передложений.

Как уже упоминалось, разбиение предложения на токены и POS-разметка уже позволяют создать простой инструмент проверки грамматической корректности текста. По крайней мере, LanguageTool плагин к Open Office работает именно так. Очевидно, что массу ошибок можно выловить на уровне размеченных токенов. Однако также очевидно, что не менее обширные классы ошибок остаются за пределами возможностей нашего модуля. Взять хотя бы такую простую вещь как согласование подлежащего и сказуемого: «дама любил собак», «любил собак дама», «собак дама любил»… как составить паттерн для правила «сказуемое должно иметь тот же род, что и подлежащее?» Даже для английского языка с более-менее чётким порядком слов это трудно, говорить о русском и вовсе не приходится.
Читать дальше →
Всего голосов 22: ↑18 и ↓4+14
Комментарии7

NLP: проверка правописания — взгляд изнутри (часть 3)

Время на прочтение4 мин
Количество просмотров4.2K
(Часть 1, Часть 2) В прошлый раз я преждевременно упомянул токенизацию; теперь можно поговорить и о ней, а заодно и о маркировке частей речи (POS tagging).

Предположим, мы уже выловили все ошибки (какие догадались выловить) на уровне анализа текста регулярными выражениями. Стало быть, пора переходить на следующий уровень, на котором мы будем работать с отдельными словами предложения. Разбиением на слова занимается модуль токенизации. Даже в столь простой задаче есть свои подводные камни. Я даже не говорю о языках вроде китайского и японского, где даже вычленение отдельных слов текста нетривиально (иероглифы пишут без пробелов); в английском или в русском тоже есть над чем подумать. Например, входит ли точка в слово-сокращение или представляет собой отдельный токен? («др.» — это один токен или два?) А имя человека? «J. S. Smith» — сколько здесь токенов? Конечно, по каждому пункту можно принять волевое решение, но в дальнейшем оно может привести к различным последствиям, и это надо иметь в виду.

Примерно так я рассуждал на начальных этапах нашего проекта, теперь же склоняюсь к тому, что в задачах обработки текстов частенько приходится подчиняться решениям других людей. Это будет уже ясно на примере маркировки частей речи.
Читать дальше →
Всего голосов 37: ↑30 и ↓7+23
Комментарии50

NLP: проверка правописания — взгляд изнутри (часть 2)

Время на прочтение6 мин
Количество просмотров3.8K
(Часть 1) Сегодня мы поговорим об уровнях понимания текстов нашей системой, о том, какие ошибки правописания отловить просто, какие не очень просто, а какие запредельно сложно.

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

Читать дальше →
Всего голосов 56: ↑50 и ↓6+44
Комментарии12

Информация

В рейтинге
4 275-й
Откуда
Фукусима, Япония
Дата рождения
Зарегистрирован
Активность