Pull to refresh
-1
0
Send message

Zig для меня — это новый C

Reading time9 min
Views19K

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

Читать далее
Total votes 31: ↑30 and ↓1+39
Comments111

Понимая, как используется дисковое пространство в Linux

Reading time11 min
Views50K
Прим перев.: Автор оригинальной статьи — испанский Open Source-энтузиаст nachoparker, развивающий проект NextCloudPlus (ранее известен как NextCloudPi), — делится своими знаниями об устройстве дисковой подсистемы в Linux, делая важные уточнения в ответах на простые, казалось бы, вопросы…

Сколько пространства занимает этот файл на жёстком диске? Сколько свободного места у меня есть? Сколько ещё файлов я смогу вместить в оставшееся пространство?



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

Однако в современных Linux-системах такая интуиция может вводить в заблуждение. Давайте разберёмся, почему.
Читать дальше →
Total votes 42: ↑42 and ↓0+42
Comments16

Каково это — быть операционной системой?

Level of difficultyEasy
Reading time4 min
Views16K

Pier-Luc Brault придумал забавную игру, которая превращает вас в... операционную систему. Некий пользователь загружает нас процессами, которые нужно распределять по свободным CPU. Если мы будем плохо справляться с задачей, пользователь выйдет из себя и перезагрузит нас. Game over.  

Читать далее
Total votes 38: ↑37 and ↓1+44
Comments8

Распаковка ретро-компьютера «Парус ВИ-201»

Reading time4 min
Views15K

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

Этот компьютер, клон ZX Spectrum 48K в полном комплекте я обнаружил у знакомого инженера, работавшего на заводе СПЗ "Парус" в период 1990-1995 гг. Такие коробки в какой-то момент раздали всем сотрудникам вместо зарплаты, перед закрытием предприятия. На момент съемки она пролежала в таком виде более 20 лет на одной из полок гаража знакомого.

Посмотреть ретро-анбоксинг
Total votes 36: ↑34 and ↓2+45
Comments73

Мечтали про интерактивные книги, когда читали фантастику? Я знаю человека, который делает их прямо сейчас

Level of difficultyEasy
Reading time3 min
Views12K
Когда я был юн, то завороженно читал об интерактивных книгах. Нет, не тех, что упомянуты в Гарри Поттере, а о настоящих — описанных десятками фантастов. Таких, где иллюстрации можно покрутить, запустить в динамике, поставить на паузу и рассматривать в разных сочетания. Я думаю, вы понимаете о чем я говорю.

Каково же было мое удивление, когда в прошлом году я наткнулся именно на такие пусть и не книги, но довольно подробные статьи. Делает их калифорнийский iOS-разработчик польского происхождения Бартош Цехановский (Bartosz Ciechanowski). И каждая его статья — штучный товар.


Читать дальше →
Total votes 45: ↑45 and ↓0+45
Comments24

Простой комплект для изучения сантиметровых радиоволн (СВЧ)

Level of difficultyEasy
Reading time6 min
Views16K

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

Читать далее
Total votes 95: ↑94 and ↓1+123
Comments21

WordsFromText: как читать на английском с удовольствием

Reading time4 min
Views51K
Чтение в оригинале для многих является проблемой. Обилие незнакомых слов усложняет восприятие текста и приводит к потере энтузиазма. Такое происходит, когда сложность текста превосходит ваш текущий уровень, или когда вы читаете текст не по вашей тематике. Технари могут без проблем общаться на рабочие темы, но пасуют перед статьями о политике, музыке и серьёзной художественной литературой.

Цель нашего сервиса — решить эту проблему.

Несколько лет назад мы писали на Хабре об этом сервисе. Идея нашла отклик, сайт приобрел постоянных пользователей, хотя в то время сервис мог только показывать статистику слов из текста. За последние месяцы сервис стал умнее.

Как мы переводим слова

Ключевая цель сервиса — дать людям возможность читать и смотреть в оригинале то, что им интересно. И при этом максимально упростить работу с незнакомыми словами.

Поэтому мы сделали 2 вещи
Total votes 39: ↑37 and ↓2+35
Comments64

Эволюция понимания ООП

Reading time5 min
Views16K
Почти все программисты считают, что знают ООП. Я тоже так считал. Оглядевшись немного, я понял, что эволюция моего понимания ООП была немалой. Начиналось все с простого, что есть классы, у них есть методы. И если один класс представляет какое-то понятие реального мира, то вот оно — ООП. Фактически, это не статья, а просто мысли, представление того, как менялось мое понимание ООП и отношение к нему. Кстати, я не уверен, что через пару месяцев оно вновь не претерпит некоторых изменений.

Читать дальше →
Total votes 90: ↑62 and ↓28+34
Comments106

Язык программирования, помещающийся на почтовой открытке

Reading time4 min
Views52K

image
Источник


Ральф Джонсон, один из членов "Банды четырёх", однажды показал, как синтаксис языка Smalltalk-80 можно уместить на почтовой открытке. Сейчас, спустя почти 30 лет после появления первой версии Smalltalk, самым быстроразвивающимся диалектом Smalltalk является Pharo, почтовую открытку которого далее и разберём.

Читать дальше →
Total votes 44: ↑44 and ↓0+44
Comments19

Как делать чистые градиенты

Level of difficultyEasy
Reading time3 min
Views9.8K

На одном внутреннем мероприятии Илья Полянский рассказал о градиентах и цветовых моделях, а я записал и отредактировал его рассказ.

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

Читать далее
Total votes 41: ↑40 and ↓1+55
Comments14

Полное понимание асинхронности в браузере

Reading time24 min
Views112K
Про асинхронность JavaScript написано много статей, документации и книг. Но вся информация сильно распределена по интернету, поэтому сложно быстро и полностью разобраться, что к чему, и составить цельную картину в голове. Не хватает одного исчерпывающего гайда. Именно эту потребность я и хочу закрыть своей статьёй.

Читать дальше →
Total votes 78: ↑78 and ↓0+78
Comments26

WebGL для всех

Reading time11 min
Views53K


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

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

Этой статьёй хочется облегчить порог вхождения в чистый WebGL, дать начальное представление и подсказать, куда двигаться дальше.
Поехали!
Total votes 70: ↑66 and ↓4+62
Comments24

Настоящий многопоточный веб-сервер на ассемблере под Linux

Reading time7 min
Views74K
Добрый день, хабр!
Сегодня я вам расскажу как написать свой настоящий веб-сервер на асме.

Сразу скажу, что мы не будем использовать дополнительные библиотеки типа libc. А будем пользоваться тем, что предоставляет нам ядро.

Уже только ленивый не писал подобных статей, — сервер на perl, node.js, по-моему даже были попытки на php.

Вот только на ассемблере еще не было, — значит нужно заполнить пробелы.
Читать дальше →
Total votes 195: ↑183 and ↓12+171
Comments91

Создание операционной системы на базе ядра linux. С нуля

Reading time7 min
Views209K
Рано или поздно каждый пользователь Линукса задумывается над созданием собственного дистрибутива. Некоторые аргументируют это тем, что можно «все настроить под себя». Другие сетуют на то, что среди уже представленных дистрибутивов в Ветке нет идеального. А у них, якобы, есть суперконцептуальные идеи для собственной системы. Зачем я всю эту психологию затеял? Для того, чтобы сразу перекрыть кислород играющимся с Линуксом новичкам, которым делать нечего. Если уж задумались над созданием ОС, думайте до конца. Итак,

Я хочу создать ОС на базе Linux.
Сразу предупреждаю: был бы XVIII век, всех тех, кто для основы своей будущей системы выбирает другой развитый дистрибутив (и, не дай Бог, популярный...) ждала бы виселица. Пост именно про создание системы с нуля, а значит, всякие Slax и Linux Mint мы трогать не будем.
Читать дальше →
Total votes 184: ↑118 and ↓66+52
Comments62

Как собирать, хранить и поставлять водород

Reading time9 min
Views33K

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

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

Десять уроков от математика Джан-Карло Рота, которые он сам хотел бы усвоить

Reading time11 min
Views8.1K

Сегодня, 27 апреля, могло бы исполниться 90 лет Джан-Карло Рота* — итальянскому математику и философу, выдающемуся специалисту в области комбинаторики и основателю ежегодного издания Advances in Mathematics. Имя Рота и результаты его трудов (главным из них стали «Основы комбинаторики» — серия из десяти работ) хорошо знакомы не только в академических кругах, но и многим ИТ-специалистам. В том числе сотрудникам департамента разработки МойОфис.

Вместе с коллегами мы перевели лекцию, которую Джан-Карло Рота прочитал в апреле 1996 года в Кембридже. Позже лекция была опубликована в виде статьи и перепечатана с разрешения издательства Birkhauser Boston в 1997 году журналом Notices of the American Mathematical Society. Под катом вы найдете ее полный текст. Изложенные в ней советы ориентированы не только на математиков и будут полезны всем, кто время от времени участвует в обмене специальными знаниями. А именно: читает лекции, проводит мастер-классы, публикует доклады и исследования.

*Обращаем ваше внимание, что позиция автора не всегда может совпадать с мнением МойОфис.

Читать далее
Total votes 30: ↑27 and ↓3+25
Comments8

Пишем эмулятор Game Boy на OCaml

Reading time21 min
Views3.4K

Введение


Последние несколько месяцев я работал над проектом под названием CAMLBOY — эмулятором Game Boy, написанным на OCaml, который работает в браузере. Протестировать его можно на следующей странице демо:

Страница демо

Я добавил в демо несколько неофициальных ROM, поэтому в них можно поиграть (рекомендую Bouncing ball и Rocket Man Demo). Также можно поиграть в них в мобильном браузере, на современных смартфонах эмулятор работает с частотой 60 FPS.

Репозиторий


Репозиторий находится здесь:

https://github.com/linoscope/CAMLBOY
Читать дальше →
Total votes 17: ↑17 and ↓0+17
Comments1

My4TH — домашний компьютер без процессора

Level of difficultyMedium
Reading time14 min
Views18K

Этот обзор посвящен открытому проекту компьютера My4TH по информации от разработчика: Авторский сайт проекта:

My4TH (произносится как "мой четвертый") - это четвертый домашний компьютер без процессора после MyCPU, MyNOR и TraNOR. Автор хотел и построил максимально простой компьютер с дискретным процессором, использующим как можно меньше элементов и компонентов, под управлением операционной системы Forth.

Смотреть обзор
Total votes 53: ↑52 and ↓1+66
Comments21

Основные приемы работы с Canvas [Part 1]

Reading time4 min
Views12K

Привет! Сегодня я хотел бы начать цикл статей на тему того, как работать с canvas в HTML5 и как применять знания в области матанализа для реализации необычных и интересных эффектов.

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

Сегодня мы рассмотрим, как рисовать различные фигуры, и реализуем алгоритм fibonacci flower, также известный как golden ratio или phyllotaxis.

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

Strace в Linux: история, устройство и использование

Reading time17 min
Views62K


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


Следить за «интимной жизнью» программ на Linux помогает утилита strace, которой и посвящена эта статья. К примерам использования «шпионского» оборудования прилагаются краткая история strace и описание устройства подобных программ.

Читать дальше →
Total votes 86: ↑86 and ↓0+86
Comments27
1
23 ...

Information

Rating
Does not participate
Registered
Activity