Pull to refresh
  • by relevance
  • by date
  • by rating

Для российской армии разработан стрелковый тренажёр «Кнут» на основе Counter-Strike

Games and game consoles


Предприятие ЦНИИТОЧМАШ (Центральный научно-исследовательский институт точного машиностроения, входит в «Ростех») подготовило к выпуску тренажёр «Кнут» для индивидуальной стрелковой подготовки, предназначенный как для новичков, так и для опытных стрелков.

Как сообщает пресс-служба предприятия, электронные мишени для 1У35М1 («Кнут» — рабочее название тренажёра) созданы с учётом опыта популярных шутеров типа Counter Strike для того, чтобы «быть максимально адаптированным к современным призывникам, многие из которых имеют богатый игровой опыт».
Читать дальше →
Total votes 42: ↑21 and ↓21 0
Views 17K
Comments 77

Точки выхода или немного о структурном программировании

Perfect code *
Читая Хабрахабр или просматривая чужие исходные коды, мне довольно часто приходится замечать примерно следующий кусок кода, который совершенно одинаково «звучит» на любом языке, на каком бы не был написан:
function(single_document)
{  
  if (single_document.getElementById("comments") != null)
    return;
    …
    …
    …
    …
}
* This source code was highlighted with Source Code Highlighter.

Здесь приведён кусочек кода на Javascript, но то же самое можно написать на нескольких десятках других языков. Что здесь не так? Только то, что у функции (метода, свойства, процедуры) несколько точек выхода. Если вам интересно почему это плохо, прочитай то что написано под катом.
Читать дальше →
Total votes 102: ↑56 and ↓46 +10
Views 12K
Comments 167

Дональд Кнут вынужден прекратить выписывать чеки за feedback

Legislation in IT
Живая легенда мира информационных технологий Дональд Кнут (Donald Knuth) известен не только своими классическими монографиями по программированию, но и оригинальным чувством юмора. Разменяв восьмой десяток, он не утратил жизнелюбия, по сей день регулярно отпуская профессиональные шуточки. Чего стоит хотя бы устремленная к числу «пи» система нумерации версий пакета TeX. К той же категории относится и выплачиваемая им награда размером в один шестнадцатеричный доллар (эквивалентный, как нетрудно догадаться, 256 центам) за каждую ошибку, обнаруженную читателями в его книгах.
Читать дальше →
Total votes 107: ↑84 and ↓23 +61
Views 560
Comments 34

Дональду Кнуту 71

Biography of geeks
10 января вселенскому разуму Дональду Кнуту исполнилось 71 год. Дональд Эрвин Кнут — почетный профессор Стэнфордского университета и нескольких других университетов в разных странах, преподаватель и идеолог программирования, автор 19 монографий, в том числе ряда классических книг по программированию и более 160 статей, разработчик нескольких известных программных технологий и просто хороший человек. Самая известная на постсоветском пространстве книга Кнута — это, конечно же, бессмертное «Искусство программирования». И он продолжает его писать. Так пожелаем ему долгих лет и вдохновения, чтобы он все-таки дописал свой эпос.

UPD
Специально обновил, чтобы не путали с уткой :).

UPD2
Его сайт.
Читать дальше →
Total votes 83: ↑75 and ↓8 +67
Views 201
Comments 47

Только 10% программистов способны написать двоичный поиск

Algorithms *
Дональд Кнут (известный тем, что его книги никто не читает) пишет, что хотя первый двоичный поиск был опубликован в 1946 году, первый двоичный поиск без багов был опубликован только в 1962.

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

С массивами так: есть упорядоченный массив, берем число из середины массива, сравниваем с искомым. Если оно оказалось больше, значит искомое число в первой половине массива, если меньше — во второй. Продолжаем делить оставшуюся половину, когда находим нужное число возвращаем его индекс, если не находим возвращаем null.

Так вот я это к чему...
Total votes 167: ↑141 and ↓26 +115
Views 78K
Comments 538

Кнут. Том 4А

Lumber room
Первая часть четвертого тома (Комбинаторные алгоритмы) уже доступна у издателя, стоит USD48.74 плюс доставка — www.informit.com/promotions/promotion.aspx?promo=138111 (купон KNUTH2010)

3 тома плюс 4А тоже стоят довольно дешево — USD150 плюс доставка.

PS Вперед за чеками сертификатами от Кнута ;-)
Total votes 55: ↑44 and ↓11 +33
Views 234
Comments 17

Алгоритм Ляна-Кнута для расстановки мягких переносов

Algorithms *
Sandbox
При работе с текстом часто возникает потребность корректно расставить переносы. Задача на первый взгляд не такая уж очевидная, нужно учитывать особенности каждого языка, чтобы решить, в каком месте разорвать слово. Как правильно формализовать такие требования, и как потом применить их в алгоритме? Одно из самых распространенных на сей день решений предложил Франклин Марк Лян, студент известного профессора Дональда Кнута. Алгоритм так и называется – «Алгоритм Ляна-Кнута», он применяется в издательской системе TeX, автор которой опять же Д. Кнут.

Алгоритм основан на сравнении исходного слова с набором правил (шаблонов). Чем больше правил и чем качественнее они составлены, тем лучше будут расставляться переносы. В пакете TeX можно найти готовые бесплатные наборы правил для многих языков, нужно только внимательно смотреть на условия использования и распространения.
Узнать больше
Total votes 54: ↑51 and ↓3 +48
Views 10K
Comments 15

Как формальный менеджмент целый отдел загубил

GTD *


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

Цели: классические. Повысить качество работы, эффективность, вывести отдел на новый уровень в целом.
Читать дальше →
Total votes 42: ↑34 and ↓8 +26
Views 42K
Comments 38

Дональд Кнут и «Сюрреальные числа»: Я творил шесть дней, а на седьмой отдыхал (40,41,42/97)

Edison corporate blog Entertaining tasks Mathematics *Professional literature
Translation
«Эксперты по computer science сказали бы, что я допустил самую огромную ошибку, когда взялся за этот проект.»

image

Это уникальное событие в моей жизни. Оно произошло в ранних 70-ых. Я познакомился с Джоном Конвейем, вероятно с одним из величайших математиков. Я встретил его по пути в университет Калгари в 71-м и мы вместе пообедали. Он набросал на салфетке новую теорию, которая пришла ему в голову, и, на мой взгляд, она была действительно потрясающей. Это чисто математическая теория о новом способе определения чисел. Ее суть в том, что они могут быть не только целыми или дробными, но также бывают бесконечные числа, и квадратный корень из бесконечности, и бесконечность бесконечности, и бесконечность квадратных корней бесконечности и все это имеет смысл. Год спустя я был в отпуске в Норвегии и посреди ночи ко мне пришла мысль «Вау, эта теория так красива, что было бы интересно рассказать историю, написать книгу, в которой герои откроют теорию Конвея. Они найдут её правила на каменной скрижали, расшифруют её и смогут сами доказать все эти вещи о бесконечности и прочем».

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

Total votes 50: ↑47 and ↓3 +44
Views 21K
Comments 2

Дональд Кнут: Как создавалось «Искусство программирования» (33,38,39/97)

Programming *Algorithms *Mathematics *Professional literature
Translation
«Я должен был закончить книгу, прежде чем родится мой сын. Теперь ему 40 лет, и я до сих пор не закончил её.»



На третий год моего пребывания в университете меня попросили провести пару занятий о компьютерах. Группка людей сказала, что в Caltech (Калифорнийском технологическом институте) не учат ничему, что связанно с компьютерами.В это время я консультировал Burroughs. «Так почему бы тебе не провести пару занятий в университете?» — спросили меня. Так я провел занятие всего один раз, и прежде чем закончить университет, они решили нанять меня в качестве доцента, сразу после его окончания учебы.

Обычно в университет не берут на работу собственных выпускников, за исключением MIT. Но как вы знаете, считается нехорошо делать инбридинг (кровосмешение), потому что отделение может увязнуть в одной философии, а они хотят «свежей крови». Но Caltech счел меня достаточно странным и чуждым «по крови», и это было положительным доводом, чтобы нанять меня.

Как зародилась идея книги


Total votes 33: ↑30 and ↓3 +27
Views 21K
Comments 6

Дональд Кнут: как я занялся анализом алгоритмов и ради этого поехал в СССР (37,91,97/97)

Edison corporate blog Programming *Algorithms *Mathematics *Professional literature
Translation
«Андрей (Ершов), представь, как было бы здорово организовать что-то вроде паломничества, где программисты со всего мира могли бы приехать в Хорезм и отпраздновать рождение этого понятия.»
— Дональд Кнут уговаривает Ершова организовать международный симпозиум

image
Кнут и Ершов

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

— Я думаю, я собираюсь стать программистом.
— О, так ты занимаешься численным анализом?
— Не совсем.
— Аааа, искусственный интеллект.
— Нет, и не искусственный интеллект.
— Тогда должно быть ты занимаешься языками программирования?
Total votes 58: ↑56 and ↓2 +54
Views 29K
Comments 13

Дональд Кнут о первых шагах в программировании: Как я провел лето с компьютером, а не с девушками (19,20,21,22/97)

Edison corporate blog Programming *Algorithms *Mathematics *Professional literature
Translation
«Суть в том, что это руководство по эксплуатации IBM Model 650 было довольно глупым. Оно и подтолкнуло меня к программированию.»

image


Как я заинтересовался компьютерами? У меня была стипендия на обучение в Кейсовском Технологическом институте, но она покрывала не полную стоимость обучения, а только лишь часть, и поэтому мне пришлось устроиться на работу на неполный рабочий день. У моих родителей не было денег, и я пошел работать в Департамент статистики. Одной из моих обязанностей было управление сортировальной машиной, механической машиной IBM для сортировки перфокарт, и это было довольно увлекательно. Нужно было взять перфокарты и поместить в машину, которая направляла их по разным карманам, затем достать перфокарты в определенном порядке и после проверить результаты и начертить графики. Так что, я чертил графики для Департамента статистики.
Total votes 21: ↑19 and ↓2 +17
Views 15K
Comments 6

Дональд Кнут: Когда же, наконец, выйдет четвертый том

Edison corporate blog Programming *Algorithms *Mathematics *Professional literature
Translation
«Сейчас предельно ясно, что с той скоростью с которой я пишу, я не закончу весь проект до своего девяностолетия.»



Прочитайте и оцените объем работ. И не торопите дедушку Кнута, он и так старается.
Total votes 44: ↑41 and ↓3 +38
Views 24K
Comments 18

Дональд Кнут: про ассемблер, транслятор и грамотное программирование

Edison corporate blog Programming *Algorithms *Professional literature
Translation
"Literate programming (грамотное программирование) — отношение к компьютерным программам, как к литературе: компьютерная программа пишется не столько для компьютера, сколько для людей, чтобы люди могли ее прочитать. И поскольку я пишу программы, то я, в некотором роде, учитель."

image


«Давайте изменим традиционные приоритеты в создании программ: вместо представления о нашей задаче как о создании инструкций «Что делать?» для компьютера сконцентрируемся на объяснении другим людям описаний нашего видения того, что под управлением программы должен делать компьютер.»
Total votes 32: ↑29 and ↓3 +26
Views 22K
Comments 6

Дональд Кнут о своей счастливой жизни, своей смерти и о последних двух проектах

Edison corporate blog Reading room
Translation
«Я понял, что готов умереть, как только закончу книгу.»

image


Я все еще работаю над «Искусством программирования», но я нашел время для работы над двумя крупными проектами. Над одним я работал в конце 80-х, а над другим в начале 90-х. Это были монографии.

Первый проект назывался «Аксиомы и оболочки», я изучал интересные проблемы в геометрии — выпуклой геометрии — и я продолжал работать над этим, пока я был в Сингапуре, выпуская в печать «3:16». Это была небольшая книга, около 100 страниц.

Затем я начал изучать случайные графы — удивительный феномен, когда происходит нечто вроде Большого Взрыва: начинаете с точек, которые ничем не соединены, затем выбираете 2 случайные точки и соединяете их, и так далее; как только вы перейдете количество соединений, около половины точек, неожиданно почти все точки всегда оказываются соединенными. Это называется «гигантской компонентой».
Total votes 25: ↑22 and ↓3 +19
Views 9.3K
Comments 1

Как Дональд Кнут учился в школе и поступал в универ

Edison corporate blog IT career
Translation
Какая была первая публикация Кнута, каким послушным ботаном он был в школе, и почему любил музыку больше, чем математику.

image


Я окончил Лютеранскую Среднюю Школу в Милоуки (Milwaukee Lutheran High School,) в 1956. У нас не было преподавателей «мирового масштаба», но все они были заинтересованы в нашем образовании.

После, я продолжил обучение на математика, хотя она меня не сильно интересовала во время обучения в школе, потому что когда я пытался расспросить преподавателя, он не знал ответа. Я мог решить что-либо неправильно и учитель не замечал ошибки. Так зачем мне надо было идти на математика? Боле того, в то время я больше любил музыку и физику. Мой учитель физики и химии был великолепным человеком, который написал собственную книгу. Он сам разрабатывал ход экспериментов по химии тем самым восхищал меня. Он также заинтересовал меня физикой, несмотря на то, что я посвящал большую часть свободного времени музыке.
Total votes 23: ↑19 and ↓4 +15
Views 11K
Comments 3

Дональд Кнут: «3:16» — книга про Библию (72,73,74/97)

Edison corporate blog Reading room Popular science Crowdsourcing Biography of geeks
Translation
«Я бы прочитал книгу теолога о программировании.»
— Дональд Кнут

На Youtube есть серия из коротких 97 роликов, где Дональд Кнут рассказывает про свою жизнь. Пару лет назад я начал публиковать самые интересные моменты, а вот сейчас решил продолжить знакомить читателей с образом мыслей и способом принятия решений «самого великого программиста всех времен и народов».

image


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

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

72



Взяв интервью у тысячи человек, вы знаете, что думают миллионы людей. Я использую выборку при исследовании документов. Если кто-то дает мне курсовую, и у меня нет времени, чтобы прочитать все 50 страниц курсовой работы, я буду выбирать случайную страницу и делать соответствующие выводы. Студент не знает заранее, какую страницу я собираюсь проверить. Таким образом, отбор проб это то, чем занимается компьютерный ученый.

Однажды, в 70-е, я задался вопросом, а что если я таким образом «исследую» Библию?

(Прим. переводчика: пожалуйста, комменты по вашим рекомендациям перевода присылайте в личку, статья лежала 2 года в черновиках, вот решил доделать Кнута, так что помогайте, дедушка крайне непросто говорит)
Total votes 35: ↑26 and ↓9 +17
Views 18K
Comments 38
1