Search
Write a publication
Pull to refresh
7
0

User

Send message

Ретро-программирование: пишем простую игру на том самом GW-BASIC 1983 года

Reading time5 min
Views11K

Image by : Opensource.com

Не так давно корпорация Microsoft открыла исходный код GW-BASIC. И на волне этого инфоповода автор решил скачать его, установить на FreeDOS и написать на этом языке знаменитую игру с угадыванием чисел. Казалось бы, всё просто. Но не совсем… Об этом его статья.

В детстве я почитал за абсолютную истину, что вообще любой «персональный компьютер» от TRS-80 до Commodore и Apple позволяет писать свои собственные программы на BASIC. Меня также подкупил тот факт, что его название расшифровывалось, как Beginner's All-purpose Symbolic Instruction Code — универсальный код символических инструкций для начинающих. В нашей семье был клон Apple II под названием Franklin ACE 1000. На его борту работал интерпретатор AppleSoft BASIC. Естественно, я хотел научиться программировать на BASIC и начал с чтения соответствующих книг и журналов.

Позже наша семья перешла на IBM PC с DOS. На этой машине была установлена ​​собственная версия DOS под названием BASICA. Более поздние версии DOS уже выходили с обновленным интерпретатором GW-BASIC.

BASIC стал моим счастливым билетом в мир программирования. Со временем я изучил другие языки программирования. Я не писал код на BASIC много лет, но всегда с теплотой вспоминал BASIC и GW-BASIC.
Читать дальше →

Невыдуманные истории из телекома начала 2000-х

Reading time14 min
Views46K

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

Так вот, эти истории произошли в одном небольшом провинциальном городе в начале-середине 2000-х годов. Что такое ИТ и интернет в начале 2000-х в провинции? Домашний десктоп с Pentium 2 и 64 мегабайтами ОЗУ – весьма неплохая машина. Pentium 3 и 128 Мб – уже очень даже мощная. Основная ОС для домашнего пользователя – Windows 98, а те, кто посмелее и поподкованее используют прекрасную Windows 2000, которая в отличие от старой NT4 повернута к пользователю лицом, а не чем-то еще, а в отличие от линейки 95/98/ME не падает в синий экран от неудачного щелчка мышкой.

Читать далее

Аппаратное ускорение глубоких нейросетей: GPU, FPGA, ASIC, TPU, VPU, IPU, DPU, NPU, RPU, NNP и другие буквы

Reading time28 min
Views95K


14 мая, когда Трамп готовился спустить всех собак на Huawei, я мирно сидел в Шеньжене на Huawei STW 2019 — большой конференции на 1000 участников — в программе которой были доклады Филипа Вонга, вице-президента по исследованиям TSMC по перспективам не-фон-неймановских вычислительных архитектур, и Хенга Ляо, Huawei Fellow, Chief Scientist Huawei 2012 Lab, на тему разработки новой архитектуры тензорных процессоров и нейропроцессоров. TSMC, если знаете, делает нейроускорители для Apple и Huawei по технологии 7 nm (которой мало кто владеет), а Huawei по нейропроцессорам готова составить серьезную конкуренцию Google и NVIDIA.

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

Только в прошлом году в тему было вложено больше 3 миллиардов долларов. Google уже давно объявил нейросети стратегическим направлением, активно строит их аппаратную и программную поддержку. NVIDIA, почувствовав, что трон зашатался, вкладывает фантастические усилия в библиотеки ускорения нейросетей и новое железо. Intel в 2016 году потратил 0,8 миллиарда на покупку двух компаний, занимающихся аппаратным ускорением нейросетей. И это при том, что основные покупки еще не начались, а количество игроков перевалило за полсотни и быстро растет.


TPU, VPU, IPU, DPU, NPU, RPU, NNP — что все это означает и кто победит? Попробуем разобраться. Кому интересно — велкам под кат!
Читать дальше →

Стив пишет заклинания на Python. Обучение детей программированию в Minecraft

Reading time5 min
Views32K

Хочу поделиться наработками домашнего обучения детей программированию. Даже не столько обучению, сколько привлечения детского внимания и интереса. Ведь согласно Сократу, человек - не сосуд для наполнения, а факел, который нужно зажечь. Изначально были попытки начать со Scratch, но несмотря на понятный графический интерфейс, желание продолжать и что-то делать в среде быстро угасло. Minecraft пошел намного лучше, потому что дети уже были хорошо знакомы с игрой по мобильной версии и любимому creative mode.

Я не имею в виду создание и использование модов, это слишком высокий уровень входа. Первые попытки были после знакомства с первым изданием книги "Minecraft. Программируй свой мир" и удачной настройки сервера Bukkit на домашней машине. На данный момент (начало 2021 г.) есть второе издание, а также несколько похожих книг других авторов.

Читать далее

Бывший проектировщик микросхем для Военно-Воздушных Сил США расскажет в Cколково как верифицировать FIFO

Reading time6 min
Views10K

Если вы изучили начала цифровой схемотехники и компьютерной архитектуры по книжке Харрис & Харрис и потом вознамерились пойти собеседоваться на позицию проектировщика микросхем в Apple или NVidia, то вы интервью не пройдете. Посколько вы наверняка получите вопрос про реализацию в хардвере очередей FIFO, а это в Харрис & Харрис не описано.

Хуже того, даже если вы возьмете книжку Digital Design by William Dally & Curtis Harting, которую используют для обучения студентов в Стенфорде, и прочтете ее от корки до корки, то у вас все равно мало шансов, потому что, хотя FIFO там и есть, но в очень базисной форме, а контроль потока данных заканчивается на скид-буферах.

А что же хотят электронные компании?

Чем поживиться айтишнику на барахолке?

Reading time4 min
Views63K


Приезжая в Питер, нужно обязательно посетить Эрмитаж, Русский музей и блошиный рынок на Уделке. Я бываю там не менее пары раз в год и хожу в это уникальное место, как в музей. Там можно найти не просто всё, а вообще всё, даже то, чего искать не собирался. Антикварную посуду и копаные старинные монеты, советские документы и виниловые пластинки, самовары и пионерские горны, а еще — кучу всевозможного барахла, которое слегка помятые граждане продают прямо с разложенных на земле клеёнок.

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

Читать дальше →

«Швейцарский нож» науки: как методы Computer Science используются в других дисциплинах

Reading time9 min
Views5K

Математику часто называют «языком науки». Она хорошо приспособлена для количественной обработки практически любой научной информации, независимо от ее содержания. А при помощи математического формализма ученые из разных областей могут в какой-то степени «понимать» друг друга. Сегодня похожая ситуация складывается с Computer Science. Но если математика — это язык науки, то CS — её швейцарский нож. Действительно, трудно представить современные исследования без анализа и обработки огромных объемов данных, сложных вычислений, компьютерного моделирования, визуализации, применения специального ПО и алгоритмов. Разберем несколько интересных «сюжетов», когда разные дисциплины используют методы CS для решения своих задач. 

Биоинформатика: от чашек Петри к биологии In silico


Биоинформатику можно назвать одним из самых ярких примеров стыка CS и других дисциплин. Эта наука занимается анализом молекулярно-биологических данных при помощи компьютерных методов. Биоинформатика как отдельное научное направление появилась в начале 70-х годов прошлого века, когда впервые были опубликованы нуклеотидные последовательности малых РНК и созданы алгоритмы предсказания их вторичной структуры (пространственного расположения атомов в молекуле).

С проекта «Геном человека» по определению последовательности нуклеотидов в ДНК человека и идентификации генов в геноме началась новая эра биоинформатики. Стоимость секвенирования ДНК (определение последовательности нуклеотидов) упала на несколько порядков. Это привело к колоссальному увеличению числа последовательностей в публичных базах данных. На графике ниже изображен рост количества последовательностей в публичной базе данных GenBank с декабря 1982 года по февраль 2017 в полулогарифмическом масштабе. Чтобы накопленные данные стали полезными их нужно каким-то образом проанализировать.
Читать дальше →

Радиоприемник прямого усиления на СВ, 2020 год, Москва. Что можно услышать?

Reading time4 min
Views75K
Обожаю радио. Были времена когда на внутреннюю магнитную антенну АМ-радиоприемника собранного на 2 транзисторах, можно было принять десятки радиостанций вещающих за тысячи километров. В наши дни на средних волнах вещает очень мало станций, а уровень помех в городах настолько высок, что СВ, кажется, похоронен навсегда. Но так ли это на самом деле? Я решил собрать СВ радиоприемник прямого усиления, чтобы это проверить.

image

Собеседование в Яндекс: театр абсурда :/

Reading time14 min
Views598K

Привет, Хабр!

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

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

Как вы думаете, что делают рекрутеры, когда видят "Alexandr, NOT OPEN FOR WORK"? Правильно, пишут "Алексей, рассматриваете вариант работать в X?" Я обычно игнорирую это, но тут мне предложили попытать счастья с Яндекс.Лавкой, и я не смог пройти мимо - интересно было, смогу ли я устроиться куда-нибудь, когда введут великий российский файерволл. К тому же за последние 3 года я проходил только два интервью, и мне показалось, что я не в теме, что нынче требуется индустрии. Блин, я оказался и вправду не в теме. И вы, скорей всего, тоже - об этом и статья.

Читать далее

Imax B6 — Универсальный зарядочный комбайн

Reading time6 min
Views1.2M
На хабре уже была статья про этот народный зарядник, но как то встречена без особого энтузиазма. Постараюсь это исправить, и рассказать о тех возможностях, про которые не было написано в той статье. Зарядное устройство действительно народное, любой моделист или причастный к ним с первого взгляда его узнает.

Итак, что на обещают производители?
  • Заряд аккумуляторов Li-ion, Li-pol, LiFe, NiCd, NiMH, PbAcid(свинцовые всех типов)
  • Полностью автоматический процесс заряда, управляемый микроконтроллером. Отсечка по току и напряжению для литиевых аккумуляторов, по температуре и ΔV для никелевых. Для всех типов — выключение по максимальному времени и емкости.
  • Тренировка NiCd и NiMH. Балансировочный заряд Li-pol аккумуляторов(для батарей с несколькими банками)
  • Ток заряда до 5А, разряда — до 1А.
  • Экран с показаниями текущего напряжения, тока, емкости. Выгрузка всех этих параметров на компьютер и построение графиков.
Читать дальше →

Несложный способ восстановления работоспособности Li-Ion аккумуляторов от портативных устройств

Reading time3 min
Views983K
image

Привет всем юзерам хабра, сегодня я буду рассказывать про то, как я довольно таки простым методом, восстанавливаю нерабочие Li-Ion аккумуляторы от портативных устройств до того как обзавёлся таким замечательным устройством как Imax B6. Таким методом я восстановил работоспособность уже, наверное, трем десяткам аккумуляторов от разных гаджетов, от фотоаппаратов до MP3 плееров, но я замечу, только восстановил работоспособность, емкость таким образом вернуть не получится, да и лично я не встречал способов вернуть емкость для такого типа аккумуляторов. К слову, емкость, которая останется в аккумуляторе, очень сильно зависит от того сколько аккумулятор пробыл в такой «клинической смерти».

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

Вот видео всего процесса:


(информация что ниже будет дублировать информацию, предоставленную в видео)
Подробности

Почему я по-прежнему пользуюсь RSS

Reading time3 min
Views43K


Я твёрдо верю, что Интернет и его философия максимально проявились именно в RSS.

RSS или Really Simple Syndication является (или был в прошлом, в зависимости от вашей точки зрения) средством, которое объединяет в один канал практически все онлайн-ресурсы. Вы заходите на сайт, если он вам нравится, то добавляете его RSS в свой любимый ридер — и с этого момента мгновенно получаете уведомления о любом новом контенте. Вот так просто.

Расцвет RSS пришелся на эпоху Веб 2.0 (около 1999-2010 гг.), когда движущей силой многих инноваций была полная свобода делать всё что угодно с информацией из интернета. Конечно, всё это происходило до того, как начали развиваться социальные сети в нынешнем виде, а большинство этих концепций оказались изолированы в своих замкнутых социальных фидах.
Читать дальше →

Как я угнал национальный домен Демократической Республики Конго

Reading time5 min
Views18K
Примечание: проблема решена. Сейчас национальный домен .cd уже не делегирует полномочия скомпрометированному нейм-серверу

TL;DR Представьте, что может произойти, если национальный домен верхнего уровня (ccTLD) суверенного государства попадет в чужие руки. Однако я (@Almroot) купил доменное имя, которое указано для делегирования NS в национальном домене Демократической Республики Конго (.cd), и временно принял более 50% всего DNS-трафика для этой TLD. На моём месте мог оказаться злоумышленник, который использовал бы эту возможность для MITM или других злоупотреблений.


Читать дальше →

HackTheBox. Прохождение Academy. RCE в Laravel и LPE через composer

Reading time3 min
Views6.4K

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

Подключение к лаборатории осуществляется через VPN. Рекомендуется не подключаться с рабочего компьютера или с хоста, где имеются важные для вас данные, так как Вы попадаете в частную сеть с людьми, которые что-то да умеют в области ИБ.

Читать далее

Как я сократил время загрузки GTA Online на 70%

Reading time7 min
Views85K
GTA Online. Многопользовательская игра, печально известная медленной загрузкой. Недавно я вернулся, чтобы завершить несколько ограблений — и был потрясён, что она загружается настолько же медленно, как и в день своего выпуска, 7 лет назад.

Пришло время докопаться до сути.

Разведка


Сначала я хотел проверить, вдруг кто-то уже решил проблему. Но нашёл только рассказы о великой сложности игры, из-за чего она так долго загружается, истории о том, что сетевая p2p-архитектура — мусор (хотя это не так), некоторые сложные способы загрузки в сюжетный режим, а потом в одиночную сессию, и ещё пару модов, чтобы скипнуть видео с логотипом R* во время загрузки. Ещё немного почитав форумы, я узнал, что можно сэкономить колоссальные 10-30 секунд, если использовать все эти способы вместе!
Читать дальше →

Сам себе пейджинговый оператор

Reading time2 min
Views92K

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

В ноябре 2020 на Авито я наткнулся на объявление о продаже пейджера Motorolla Advisor всего за 100 рублей и рядом со мной. По гуглив подобные объявления, я понял что этот раритет отдается даром. Спустя всего час в руках у меня было чудо техники из 90х. И волна ностальгии, по школьным годам нахлынула на меня, с таким прибором я ходил еще в 1-3 классе. Пейджер был в идеальном состоянии почти ни царапинки. И тут в моей голове забегали тараканы, и я захотел отправить на него сообщение любым способом .

Читать далее

IELTS на 8.0 за 10 дней

Reading time8 min
Views31K

Друзья, привет! Хочу рассказать как за 10 дней подготовилась и сдала IELTS на 8.0, потратив 95 баксов.

Многие писали о международных языковых экзаменах. Я посмотрела свежие статьи по теме. В итоге, оглядываясь назад, самыми полезными мне кажется пара публикаций, которые не просто продают свой курс английского языка, а дают дельную инфу. В одной детально описывают структуру и дают основные советы, без которых ну вообще никак. Например, в части Listening “заранее бегло ознакомьтесь с вопросами. Во время прослушивания вы должны быстро улавливать ответ на вопрос и делать пометку/писать ответ в черновике”. В другой статье парень моего же уровня владения языком рассказывает как готовился 9 месяцев и набрал, видимо, также 8.0.

Не буду дублировать их советы, а зафиксирую свои. 

Читать далее

[Личный опыт] Черногория — страна, как сон. Самая простая история переезда

Reading time6 min
Views110K


Олег Маюрченко был фронтенд-разработчиком в белорусском офисе Object Style. В августе в Минске, по его словам, «начался полнейший дурдом», и он принял решение куда-то уезжать. Москва не рассматривалась, он жил там 16 лет, обратно не хотелось. Приняли решение поехать и посмотреть Черногорию. И очень-очень просто получили ВНЖ! Цены оказались абсолютно не драконовскими, а климат — идеальным.


Олег уехал и продолжил работать по удаленке на ту же компанию. С поиском долгсрочной аренды жилья ему помогало агентство «Черногория клуб». Олегу настолько понравилось в стране, что теперь он часто помогает другим, отвечает на вопросы в Фейсбуке. Мы поговорили с ним о его жизни в Будве, плюсах и минусах Черногории, местной кухне, налогах и жизни по принципам «полако».

Читать дальше →

MVC для веб: проще некуда

Reading time5 min
Views391K
В этой статье мы рассмотрим архитектурный паттерн MVC (Model, View, Controller) в применении к веб-разработке, «в чистом виде», без привлечения каких-то дополнительных, не относящихся к MVC структур и паттернов. Мы будем продвигаться от простого к сложному, поэтому пока не станем рассматривать, например, дальнейшее развитие MVC – паттерн HMVC (Hierarchical MVC). Хотя HMVC, несомненно, намного более интересен для разработки веб-приложений, но его применение не отменяет необходимости понимания «обычного» MVC.

Статья в Википедии (а именно туда, видимо, чаще всего попадают те, кто только начинает изучать MVC), изобилует неточностями и туманными формулировками, само определение, по сути, является неверным, а приведенная схема просто напросто не соответствует той, которая применяется в веб вообще и при разработке на PHP – в особенности.
Читать дальше →

Уязвимости неуязвимого Linux

Reading time7 min
Views38K

Cреди обычных пользователей и даже ИТ-сотрудников распространено убеждение в повышенной безопасности ОС семейства Linux по сравнению с «дырявой виндой» и «попсовой макосью». Однако, как показало наше исследование, открытость исходников не избавляет Linux от ошибок и уязвимостей, которые несут риски, связанные с безопасностью. В этом посте мы рассмотрим, почему Linux стал привлекательной мишенью для злоумышленников, а также обсудим основные угрозы и риски, связанные с этой операционной системой. 

Читать далее

Information

Rating
Does not participate
Registered
Activity