Pull to refresh
4
0
Send message

Наша космическая промышленность.… А если взглянуть на проблемы отрасли с позиции гика?

Reading time15 min
Views29K
Описывать в общем механику проблем в нашей космической отрасли достаточно сложно, запутанно, и для весьма для многих еще и крайне непонятно. Обычный поток информации на тему космоса – это перечень событий, от которого в голове остается только некоторое «сальдо-бульдо» чужих и наших успехов и провалов.

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

Кому это интересно, прошу под кат (много букв и никаких картинок).
Читать дальше →
Total votes 74: ↑71 and ↓3+68
Comments201

Сильные стороны функционального программирования

Reading time6 min
Views15K
image

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

Основной язык разработки у нас в Typeable — Haskell, и, пока все спорили о том, готов ли Haskell для продакшена, мы просто его использовали и считали конкурентным преимуществом. Нам хотелось бы поделиться своим мнением, основанным на этом опыте.
Читать дальше →
Total votes 34: ↑28 and ↓6+22
Comments62

Витамин D. Краткий экскурс

Reading time8 min
Views118K
Приветствую всех Хаброжителей!

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

Если мой пост что называется «зайдёт», я планирую осветить ещё некоторые интересные, на мой взгляд, темы, связанные с медициной, фармацией и здоровьем.

Пишу простым языком, с минимумом медицинской и фармацевтической терминологии.
Читать дальше →
Total votes 102: ↑84 and ↓18+66
Comments386

Сравнение встраиваемых ЯП по размеру в исполняемом файле

Reading time5 min
Views6.1K

В рамках одного из моих SDK-проектов нам понадобилось добавить скриптование, которое бы оказало наименьший эффект на размер конечного бинарного файла, но при этом предоставляло хорошую фунциональность. Это дало старт проекту, который описан в этой статье. Прошу заметить, что т.к. в SDK у нас есть определенные требования, они частично перенеслись на язык скриптования, поэтому в проекте не участвовали некоторые достаточно известные встраиваемые ЯП (но Lua включен для сравнения).


Сайт проекта доступен по ссылке. Скажу сразу, что на данный момент для меня лично победителями являются Chibi-Scheme и Wasm3. Подробности для заинтересовавшихся под катом.

Читать дальше →
Total votes 14: ↑12 and ↓2+10
Comments59

Microsoft понадобилось 10 дней, чтобы удалить исходники Windows XP с принадлежащего им GitHub

Reading time3 min
Views52K

В исходниках Windows XP нашли секретную тему в стиле Mac

В сентябре вся индустрия всполошилась после новости об утечке исходных кодов Windows XP и Windows Server 2003. Новость оказалась не фейком. Исходные коды настоящие, и из них скомпилировали рабочие версии обеих ОС.

Напомним, что всё началось 24 сентября: на портале 4chan неизвестные выложили торрент на 42,9 ГБ с полными исходниками Windows XP и Windows Server 2003. Хотя сегодня под XP работает меньше 1% компьютеров в мире, а разработчик не обеспечивает никакой поддержки, утечка исходников всё равно вызвала лёгкую эйфорию среди программистов. Ведь мы много лет гадали, как реализованы те или иные функции или API, а теперь можно посмотреть на код своими глазами.

Так или иначе, Microsoft мгновенно начала войну. Уже на следующий день исходники стали удалять везде, где только можно.
Читать дальше →
Total votes 49: ↑47 and ↓2+45
Comments91

Пишем движок полнотекстового поиска на Go

Reading time8 min
Views18K
Полнотекстовый поиск — один из тех инструментов, которые мы используем практически каждый день, когда ищем какую-то информацию в интернете. Full-Text Search (FTS) — это метод поиска текста в коллекции документов. Документ может ссылаться на веб-страницу, газетную статью, сообщение электронной почты или любой структурированный текст.

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

Примечание: самым известным движком полнотекстового поиска является Lucene (а также Elasticsearch и Solr, построенные на его основе).
Читать дальше →
Total votes 47: ↑46 and ↓1+45
Comments23

Как я делаю цифровую минигитару

Reading time11 min
Views29K
image

В этой статье я постараюсь в общих чертах описать путь создания девайса от идеи до реализации юзабельного прототипа.

Меня зовут Дмитрий Дударев. Я занимаюсь разработкой электроники и очень люблю создавать различные портативные девайсы. Еще я люблю музыку. Полгода назад я взял у друга акустическую гитару чтобы попытаться научиться на ней играть по урокам из ютуба и табулатурам. Было тяжело. То ли я неправильно что-то делал, то ли плохо старался, то ли в обществе моих предков мелкая моторика вредила размножению. В любом случае, ничего кроме звуков дребезжащих струн у меня не выходило. Мое негодование усиливала постоянная расстройка струн. Да и окружающим тысячный раз слушать мою кривую Nothing else matters удовольствия не доставляло.

Но в этих муках про главное правило электронщика я не забыл. Если что-то существует, значит туда можно вставить микроконтроллер. Или, хотя бы, сделать портативную электронную модификацию.
Читать дальше →
Total votes 142: ↑142 and ↓0+142
Comments79

Death Note, анонимность и энтропия

Reading time16 min
Views74K


В начале “Death Note” местный гениальный детектив по сути занят деанонимизацией: он знает только то, что убийца существует где-то на планете. Никаких улик тот не оставляет, но довольно быстро оказывается пойман. Вообще-то хабр не площадка для обсуждения аниме, но такая же охота на того-не-знаю-кого порой случается и в реальном мире — достаточно вспомнить Сатоши Накамото, Dread Pirate Roberts или Q. Так что под катом перевод статьи (анонимного, кстати говоря, автора) о том, насколько происходящее в этом сериале связано с реальной анонимностью и что у его героя пошло не так.

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

Рисуем речь: Software Automatic Mouth

Reading time9 min
Views11K
Прошлогоднюю статью «Рисуем звук» я завершил признанием: «А можно ли нарисовать звук с чистого листа, не обводя спектрограмму аудиозаписи? Скажу честно, у меня не полу­чилось.» Но недавно я узнал про S.A.M. — выпущенный в 1982 г. компанией Don’t Ask Software, он стал первой коммерчески успешной программой для синтеза речи на ПК. В середине 2000-х немецкие демосценщики Tobias Korbmacher и Sebastian Macke взяли ассемблерный листинг S.A.M. для Commodore 64 и сконвертировали его в нечитаемый, но работоспособный код на Си; затем в 2014 г. британец Vidar Hokstad постарался привести код на Си в читаемый вид — вручную давая переменным осмыс­ленные названия и заменяя goto на циклы и ветвления; и наконец, в 2017 г. ещё один немец Christian Schiffler переписал код с Си на JavaScript. Испробовать его в действии как «чёрный ящик» можно на discordier.github.io/sam.

По-моему, примитивный синтезатор речи на JavaScript — самый удобный подопытный образец для тех, кто хочет разобраться, как в целом работает синтез речи. Мой форк S.A.M. с существенно почищенным кодом и комментариями доступен на github.com/tyomitch/sam. К сожалению, у предыдущих авторов интерес к S.A.M. успел угаснуть, и им сейчас не до разбора пулл-реквестов в хобби-проект многолетней давности.

S.A.M. состоит из четырёх функциональных компонентов:

  1. Reciter переводит текст на английском в фонемную запись: например, «A LITTLE TOO LOW» (пример из приложенной к S.A.M. демо-программы) превращается в «AH LIHTUL TUW5 LOW».
  2. Parser превращает фонемную запись в фонетическую: из «AH LIHTUL TUW5 LOW» получается "AH, ,L,IH,DX,AX,LX, ,T,*,*,UX,WX, ,L,OW,WX". Для каждого выводимого фона Parser задаёт также длительность и тон.
  3. Renderer строит по фонетической записи массив частот, амплитуд и прочих акустических характеристик;
  4. Последний, безымянный компонент (функция ProcessFrames) превращает массив частот и амплитуд в PCM-поток для аудиовывода.

В этой статье я разберу все четыре компонента по очереди.
Читать дальше →
Total votes 18: ↑18 and ↓0+18
Comments0

Privacy Accelerator: приглашаем на прокачку проекты в сфере прайваси и доступа к информации

Reading time4 min
Views1.4K


К нам часто приходят тематические проекты, которые просят помощи. В основном — с рекламой. Почему-то команды проектов считают, что если мы разместим на РосКомСвободе упоминание или пост-обзор их продукта, то сразу пойдет поток пользователей, и их бизнес- или гражданский проект заработает. Мы тем временем знаем, что это не так, и практически в 100 процентах случаев отказываем, просто потому что это никому не выгодно: ни читателям, которым мы прорекламируем сырой, потенциально небезопасный продукт, ни проекту, который не добьется ожидаемых результатов, и энтузиазм его создателей скоро потухнет.


Два момента, почему так происходит:


  • это стандартная для технарей недооценка маркетинговых составляющих проекта;
  • а еще непонимание в целом поляны прайваси (анонимности и вот этого всего), недостаточно изученная мотивация пользователей (как физических, так и организаций) при пользовании какого-либо продукта в этой нише.

Весной мы провели антиковид-хакатон, в котором получили очень крутые отзывы как от менторов, так и от проектов, и поняли, что на самом деле мы хотим и готовы сделать отдельную программу прокачки для проектов, которые хотят улучшать прайваси, анонимность или доступ к информации. У нас есть сильный нетворкинг в областях, которые нужны проектам для полноценного запуска (маркетинг, продуктовый менеджмент, киберправо, разработка, фандрайзинг); мы сами обладаем хорошей экспертизой и компетенцией в вопросах функционирования прайваси-проектов; у нас есть партнеры, которые находятся в постоянном поиске идей в этой сфере и готовы вкладывать в них деньги. Таким образом паззл сложился. Мы решили запустить акселератор и сейчас объявляем о наборе в него первых проектов!


Сейчас объясним, как это будет работать.

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

ISA ошибок не прощает

Reading time3 min
Views31K
–X86 – это исторически сложившееся недоразумение,– мэтр и в 80 не утратил полемического задора.
– Вообще-то ей принадлежит 95% серверного рынка, – вяло откликнулся я. Мне не хотелось вступать в спор на сто раз заезженную тему
– А я уже запутался в этих префиксах, — не унимался академик. – 15 байт на инструкцию, это немыслимо!
– Ну, не ice, конечно. Но у кого лучше-то?
– Да у кого угодно, хотя бы у ARM-a.
– Я все же не понимаю. Cложения с умножениями должны быть?
– Должны.
– И сдвиги c логическими операциями?
– Да.
– И загрузки с сохранениями тоже. Какая разница как они называются и кодируются?
Читать дальше →
Total votes 100: ↑99 and ↓1+98
Comments385

Как Microsoft убила AppGet

Reading time5 min
Views61K


На прошлой неделе Microsoft выпустила пакетный менеджер WinGet в рамках анонсов на конференции Build 2020. Многие посчитали это ещё одним доказательством сближения Microsoft с движением Open Source. Но только не канадский разработчик Кейван Бейги (Keivan Beigi), автор свободного менеджера пакетов AppGet. Сейчас он силится понять, что произошло за последние 12 месяцев, в течение которых он общался с представителями Microsoft.

В любом случае, теперь Кейван прекращает разработку AppGet. Клиентские и серверные службы переходят в режим технического обслуживания немедленно до 1 августа 2020 года, после чего будут закрыты навсегда.
Читать дальше →
Total votes 172: ↑165 and ↓7+158
Comments227

Как я на карантине работу искал

Reading time7 min
Views60K
Хочу поделиться с сообществом своим недавним опытом поиска работы, сообщить, так сказать, вести с передовой. Несмотря на то, что все написанное – абсолютно субъективно, заметка будет полезна для других IT-шников. Особенно – если они интроверты и редко ходят по собеседованиям.

А еще, полагаю, многим будет любопытно, какая метаморфоза произошла с рынком работы в связи с последними событиями.


Читать дальше →
Total votes 112: ↑108 and ↓4+104
Comments150

Математики достигли прорыва в изучении «опасной» задачи

Reading time7 min
Views89K

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



Возьмите любое число. Если оно чётное, поделите его на два. Если нечётное, умножьте на три, прибавьте один. Повторите. Любое ли число в итоге приходит к 1?

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

Гипотеза Коллатца, возможно, простейшая из нерешённых задач математики – именно это и делает её такой предательски притягательной.

«Это очень опасная задача. Люди становятся одержимыми ею, при том, что она совершенно невозможна», — сказал Джеффри Лагариас, математик из Мичиганского университета, эксперт по гипотезе Коллатца.

Но в 2019 году один из лучших математиков мира осмелился подступиться к ней, и получил самый значимый из всех результатов, что были достигнуты за несколько десятилетий.
Total votes 100: ↑90 and ↓10+80
Comments265

Холивар. История рунета. Часть 6. Блокировки: Лурк, Лента, 282-я и китайский путь

Reading time18 min
Views30K
Холивар. История рунета. Часть 1. Начало: хиппи из Калифорнии, Носик и лихие 90-е
Холивар. История рунета. Часть 2. Контркультура: пАдонки, марихуана и Кремль
Холивар. История рунета. Часть 3. Поисковики: Яндекс vs Рамблер. Как не делать инвестиции
Холивар. История рунета. Часть 4. Mail.ru: игры, соцсети, Дуров
Холивар. История рунета. Часть 5. Тролли: ЖЖ, бешеный принтер, Потупчик

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

Disclaimer. Эта статья — расшифровка замечательного фильма «Холивар» Андрея Лошака. Есть люди, которые экономят время и любят текст, есть те, кто не может на работе или в дороге смотреть видео, но с радостью читает Хабр, есть слабослышащие, для которых звуковая дорожка недоступна или сложна для восприятия. Мы решили для всех них и вас расшифровать отличный контент. Кто всё же предпочитает видео — ссылка в конце.
Total votes 85: ↑73 and ↓12+61
Comments131

Один способ вычисления логарифма по основанию 2

Reading time5 min
Views27K
Вычисление логарифмов довольно распространённая операция в цифровой обработке сигналов. Чаще пожалуй приходится считать только свёртки (умножение с накоплением) и амплитуды с фазами. Как правило для вычисления логарифмов на FPGA применяется алгоритм CORDIC в гиперболическом варианте, требующий только таблицы и простых арифметических операций. Однако это не всегда бывает удобно, особенно если проект большой, кристалл маленький и начинаются танцы с оптимизацией. Именно с такой ситуацией и пришлось мне однажды столкнуться. Оба порта блока RAM (Cyclone IV) уже плотненько были в работе, не оставляя свободных окон. Использовать ещё один блок под гиперболический CORDIC не хотелось. Зато был умножитель, для которого во временной диаграмме получалось приличное свободное окно. Денёк подумав, я сочинил следующий алгоритм, в котором не используется таблиц, но есть умножение, точнее возведение в квадрат. И поскольку схемотехнически возведение в квадрат проще общего случая умножения, возможно этот алгоритм представляет интерес для специализированных микросхем, хотя для FPGA разницы конечно нет. Подробнее под катом.
Читать дальше →
Total votes 77: ↑77 and ↓0+77
Comments36

Как я поступал в 18 университетов США

Reading time65 min
Views129K
Всем привет. Меня зовут Даниил, и в этой статье я хочу поделиться с вами своей историей поступления в бакалавриат 18 университетов США. В интернете достаточно много рассказов о том, как можно учиться в магистратуре или аспирантуре совершенно бесплатно, но мало кто знает, что возможность получить полное финансирование есть и у студентов-бакалавров. Несмотря на то, что описываемые здесь события происходили давно, большая часть информации актуальна и по сей день.

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

Небольшая заметка
Имена некоторых персонажей были умышленно изменены. Глава 1 является вводной и рассказывает о том, как я дошёл до такой жизни. Вы мало что потеряете, если пропустите её.

Total votes 220: ↑214 and ↓6+208
Comments198

Information

Rating
Does not participate
Registered
Activity