Pull to refresh
0
0
Сергей Горбунов @ndimens

User

Send message

Алан Кей и Марвин Мински: Computer Science уже имеет «грамматику». Нужна «литература»

Reading time5 min
Views5K
image

Первый слева — Марвин Мински, второй слева — Алан Кей, потом Джон Перри Барлоу и Глория Мински.

Вопрос: Как бы вы интерпретировали идею Марвина Мински о том, что «Computer Science уже имеет грамматику. Что ей нужно так это литература.»?

Алан Кей: Самый интересный аспект записи блога Кена (включая комментарии) заключается в том, что нигде нельзя найти историческое упоминание этой идеи. Фактически, более 50 лет назад в 60-х годах по этому поводу было много разговоров и, насколько я помню, несколько статей.

Я впервые услышал об этой идее от Боба Бартона, в 1967 году в магистратуре, тогда он сказал мне, что эта идея была частью мотивации Дональда Кнута, когда он писал “Искусство программирования”, главы которого уже ходили по рукам. Один из главных вопросов Боба тогда был о «языках программирования, предназначенных для чтения людьми также как и машинами». И это было основной мотивацией для частей дизайна COBOL в начале 60-х годов. И, возможно, что более важно в контексте нашей темы, эта идея видна в очень раннем и довольно красиво разработанном интерактивном языке JOSS (в основном Cliff Shaw).

Как заметил Фрэнк Смит, литература начинается с идей, которые стоит обсуждать и записывать; она часто частично генерирует представления и расширяет существующие языки и формы; это приводит к новым идеям о чтении и письме; и, наконец, к новым идеям, которые не были частью первоначального мотива.
Total votes 18: ↑16 and ↓2+14
Comments3

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

Reading time2 min
Views41K
image

Алан Кей — это магистр Йода для ИТишников. Он стоял у истоков создания первого персонального компьютера (Xerox Alto), языка SmallTalk и концепции «объектно-ориентированного программирования». Он уже много высказывался о своем взгляде на образование в сфере Computer Science и советовал книги тем, кто хочет углубить свои познания:


Недавно на Quora опять подняли эту тему и обсуждение вышло на первое место на Hacker News. Предлагаю вашему вниманию «новый» список суперстарых и фундаментальных книг по программированию и мышлению программиста от Алана Кея.

Lisp 1.5 Programmers Manual

by John McCarthy, 1962

image

Книга — абсолютный чемпион и пожизненный лидер рейтинга всех списков книг от Алана Кея. Этой версии языка уже нет, но книга — великолепна.

ещё восемь раритетов:
Читать дальше →
Total votes 37: ↑35 and ↓2+33
Comments74

Стань повелителем загрузки Linux

Reading time24 min
Views91K
Сначала мы познакомимся с udev и научимся с его помощью исследовать установленные в компьютере устройства прямо во время загрузки: в качестве примера будем автоматически выбирать настройки видеокарт для Xorg. Затем решим задачу работы с одним образом на десятках компьютеров одновременно путём внедрения собственного обработчика в initramfs, а заодно оптимизируем систему для сетевой загрузки. Чтобы дополнительно уменьшить время загрузки и снизить нагрузку на сеть попробуем NFS заменить на NBD, и помочь TFTP с помощью HTTP. В конце вернёмся в начало — к загрузочному серверу, который также переведём в режим «только для чтения».



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

Начало смотрите здесь:
Первоначальная настройка сервера
Подготовка образа для загрузки по сети
Читать дальше →
Total votes 41: ↑40 and ↓1+39
Comments13

Финансовый учёт в текстовой консоли

Reading time4 min
Views18K
«У хорошего бухгалтера не сойтись может только юбка.»

Несколько лет назад передо мной встала задача вести учёт денежных расходов, чтобы в конце месяца понимать сколько и куда денег тратится.
Перебрав самые известные приложения (GnuCash, Kmymoney, aqbanking, grisbi, cbb, ledger мне по тем или иным причинами ни одно не понравилось. Кроме последнего.

Ledger — это консольная утилита, которая поможет контролировать ваши личные финансы. Моё знакомство с ней началось со статьи в блоге «Ledger — бухучёт в командной строке». И, на сколько я знаю, больше статей на русском о ней нет. Попробуем исправить это недоразумение.
Читать дальше →
Total votes 15: ↑14 and ↓1+13
Comments105

Microsoft открывает исходный код первых версий MS-DOS и Word

Reading time2 min
Views176K
image

Не прошло и 40 лет, как компания Microsoft решила открыть для публики исходный код MS-DOS v1.1 и v2.0, а также одной из первых версий Word for Windows 1.1a. Сказать спасибо за это надо The Computer History Museum и Microsoft Research.

Ссылки:
MS-DOS v1.1 & v2.0
Word v1.1a

Зеркало [mega]
Зеркало [sendspace]

Согласно пресс-релизу, оба программных продукта стали краеугольным камнем в жизни компании, заложив основу ее коммерческого успеха. Исходный код MS-DOS v1.1 относится к 1982 году, v2.0 — к 1983. Кстати, в версии 1.1 вся операционная система умещалась в 12 килобайтах памяти — что, конечно, несравнимо с сегодняшними «монстрами».

Версия Word для DOS, выпущенная в 1983 году, особого успеха не снискала, проиграв лидеру рынка на тот момент — процессору по имени WordPerfect. Зато выпуск в 1989 году Word для Windows изменил все — за четыре года этот программный продукт сумел захватить более половины доходов всего рынка текстовых процессоров, что стало впечатляющим успехом работы маркетингового отдела и инженеров компании.

Что ж, сегодня вечером нас всех ждал сюрприз — теперь к легенде сможет прикоснуться каждый.
Читать дальше →
Total votes 161: ↑153 and ↓8+145
Comments109

Google Docs Add-on. Расширяем возможности редактора Google Docs

Reading time8 min
Views37K
На днях Google анонсировал выход новой платформы, позволяющей разработчикам создавать приложения, работающие внутри Google Docs и расширяющие базовый функционал Google Docs редактора.
Разберемся что это, как это работает и напишем небольшое приложение которое позволит нам переводить текст документа не выходя из Google Docs.
Читать дальше →
Total votes 28: ↑27 and ↓1+26
Comments4

Как использование случайности может помочь сделать ваш код быстрее? Лекция Михаила Вялого в Яндексе

Reading time5 min
Views28K
И сила и слабость современных компьютеров в том, насколько они точны. Сегодня в нашей серии лекций от Яндекса рассказ о том, как использование случайностей может помочь сделать вычисления более эффективными.

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



Лекцию читает старший научный сотрудник Вычислительного центра им. А.А. Дородницына РАН, доцент кафедры математических основ управления МФТИ, кандидат физико-математических наук Михаил Вялый.

Начнём с самого простого. Представим, что у нас есть два калькулятора. Один обычный, а у второго есть дополнительная кнопка, которая при нажатии выдает дополнительный бит. Попробуем ответить на вопрос, полезна ли будет такая функция?
Читать дальше →
Total votes 67: ↑62 and ↓5+57
Comments9

Первые шаги к вселенной MeteorJS

Reading time6 min
Views48K


Если вы интересуетесь клиентским программированием, то как и я, вероятно, могли слышать о Meteor, уже не новом веб-фреймворке, который относится к набирающим популярность, так называемым «фулл-стек» фреймворкам. О нем уже писали на Хабре, чтобы не дублировать информацию, можно почитать здесь или тут. Я довольно давно слышал о метеоре, но все никак не решался его пощупать. И вот, пришли очередные выходные, и я снова наткнулся на него. В этот раз я решил честно попробовать, что это такое. Может быть, этот пост даст кому-то небольшой толчок к началу изучения или хотя бы знакомства с этим инструментом. Тогда это было бы не зря.
Disclaimer: может вызвать зависимость.
Давайте же сделаем первые шаги к освоению meteorjs, добро пожаловать под кат.
Читать дальше →
Total votes 37: ↑32 and ↓5+27
Comments32

Эволюция сборщика мусора в Ruby. RGenGC

Reading time5 min
Views17K
Коити: Порог срабатывания сборщика мусора в Ruby — 8 МБ. Почему используется такое маленькое значение?
Matz: Потому что 20 лет назад я работал на машине с 10 МБ памяти.

Вопрос производительности всегда был одним из наиболее обсуждаемых и актуальных в Ruby-сообществе. Будь то высоконагруженный веб-сайт или простой скрипт по бекапу данных — скорость работы является их важнейшей характеристикой. При этом знание возможностей и ограничений языка разработки зачастую служит важным источником идей для оптимизации, позволяет «выжать» максимум из системы.

В статье речь пойдет об одной из наиболее сильно влияющих на производительность частей языка Ruby — сборщике мусора, алгоритмах его работы и улучшениях, внесенных в его работу в последних версиях языка. Речь пойдет о наиболее распространенной, «канонической» реализации Ruby — так называемой MRI или CRuby.
Читать дальше →
Total votes 52: ↑51 and ↓1+50
Comments20

Виртуализация данных в WPF

Reading time15 min
Views39K
Доброго времени суток.

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

Не нашел на хабре пост посвященный данной теме, поэтому представляю вам свой перевод статьи Пола МакКлина, которая стала отправной точкой в решении поставленных задач.
Читать дальше →
Total votes 31: ↑31 and ↓0+31
Comments14

Внутри MP3. А как оно всё устроено?

Reading time5 min
Views106K


Однажды мне понадобилось решить простенькую (как мне тогда казалось) задачу – в PHP-скрипте узнать длительность mp3-файла. Я слышал о ID3 тегах и сразу подумал, что информация о длительности хранится либо в тегах, либо в заголовках mp3-файла. Поверхностные поиски в интернете показали что за пару-тройку минут решить эту задачу не получится. Поскольку от природы я довольно любопытен а время не поджимало — решил не использовать сторонние инструменты а разобраться в одном из самых популярных форматов самостоятельно.

Если Вам интересно, что там внутри – добро пожаловать под кат (трафик).
Читать дальше →
Total votes 231: ↑219 and ↓12+207
Comments55

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Registered
Activity