Олимпийский код: школьники, которые знают больше любого взрослого

Ранним августовским утром 1982 года я с фанерным чемоданчиком ждал на остановке у аэропорта Толмачево редкий автобус,отходящий в новосибирский Академгородок. Это была завершающая часть моего почти недельного приключения — путешествия из арктического чукотского городка Певек: я преодолевал это немалое расстояние на самолетах Ил-14 и новеньком Ту-154,с ночевкой на полу магаданского аэропорта.

Сотовых не было,и в местах своих остановок я давал маме краткие телеграммы: «Порядок», так как платить надо было за каждое слово. Я был не один: из разных отдаленных уголков страны в Академгородок слетались в Летнюю школу победители многочисленных областных и республиканских школьных олимпиад,чтобы пройти последний и самый важный этап — зачисление в физико-математическую школу-интернат.


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

Математики разгадали загадку 42 с помощью планетарного суперкомпьютера

Математики наконец-то нашли три числа, сумма кубов которых дает тот самый ответ 42 — «Ответ на главный вопрос жизни, Вселенной и всего такого.»

Задача, которую математики пытаются решить на протяжении уже 65 лет звучит так: можно ли каждое число до 100 выразить в форме суммы трех кубов?

В более формальном написании она выглядит так: x³+y³+z³=k, при k = 1, 2,… 100. Найдите x, y и z для каждого k.


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

Расцвет и упадок Visual Basic

Расцвет и упадок Visual Basic

Для программирования в 1988 году QuickBASIC был волшебной штукой. Можно было писать код без громоздких номеров строк, отлавливать синтаксические ошибки в процессе набора и запускать программы прямиком из среды разработки без необходимости возни с командной строкой. Закончив программу, можно было делиться ею со своими друзьями при помощи вот этих ребят:


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

"ИТ-гении из России всё равно все на Запад уезжают". Расследование.

Устал годами и на разных сайтах читать в миллионах вариантов одну и ту же мульку про «ну да, русские таланты опять что то выиграли, но всё равно они все свалят из рашки после победы, аххаха». Последней каплей стала часть (к счастью, меньшая часть) комментов под недавним сообщением о запредельных успехах России на чемпионатах мира по программированию. Российские ВУЗы выиграли его восьмой год подряд (!!!). Но среди комментариев в интернетах оказались и такие, цитирую: «Приятно то может и приятно, но эти ребятишки — половина, а может и больше уедут в солнечный Сан-Франциско на в разы большую пайку, чем здесь. Такой менталитет… самородки периферии стремятся в метрополию...» Ну и в общем я не сдержался и решил убить кучу времени, но наконец таки проверить эту поглотившую на десятилетия весь рунет мантру про тотальный отъезд лучших.

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


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

Команда МГУ второй раз подряд стала победителем олимпиады по программированию ICPC

Второе место заняла команда Массачусетского технологического университета, а третье — Токийского университета.


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

Обрушить «АвтоВАЗ»: как первый советский хакер взломал автомобильный завод

На дворе 1983 год. Неожиданно один из советских заводов «АвтоВАЗа» вынужденно останавливает конвейеры на три дня. Конвейерная лента начинает жить своей жизнью, никто не может понять, в чем дело. Только позже выяснилось, что программное оборудование завода взломал обычный выпускник МГУ. Сегодня его называют первым советским хакером.

Первый советский хакер, взломавший «АвтоВАЗ»


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

О некоторых проявлениях шизофазии в украинской патриотической среде

Аббревиатура НЛП из-за её коммерческого использования у многих ассоциируется с каким-то набором ужимок менеджеров-продажников и прочих коммивояжеров. В лучшем случае – с попытками отслеживать невербальные проявления типа жестов или направления взгляда (хотя это больше из гештальта). В самом лучшем – как метод установления раппорта (эмпатической связи). Но само название «нейролингвистическое программирование» подразумевает программирование мозга с помощью элементов языка.

А это уже оружие и инструмент контроля мышления и поведения.


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

Российские студенты выиграли чемпионат мира по программированию



Никто не будет спорить с тем, что в России самая сильная школа программистов. Не даром наши хакеры даже Президента США выбрали.

Ну и вот вам закономерная новость. В Пекине завершился финал чемпионата мира по программированию ACM ICPC. Российские вузы традиционно показали высокие результаты: команда МФТИ взяла золото и заняла второе место, команда МГУ — первое. Команды Университета ИТМО и Уральского федерального университета получили бронзовые медали.

Все российские команды завоевали 4 медали из 13 — это больше, чем у других стран. У США и Китая — по 3. По одной у Японии, Кореи и Литвы.
 

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

Как программирование влияет на мозг и мышление



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

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


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

Гитарист и программист

Как незрячий студент ДВФУ разрабатывает новые соцплатформы и космические спутники

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


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

Почему среди лучших хакеров так много людей из России [перевод]

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

Выводы здравого смысла подтверждаются аналитикой данных по обучению как в США, так и в России, показывающих, что между тем, как учат и проверяют американских студентов в области IT, и как это делают в Восточной Европе, есть несколько важных и критичных отличий.

image


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

Российские студенты лидируют на олимпиадах по компьютерному программированию

Логотип SalonSalon, США

Студенты университета ИТМО на олимпиаде по программированию среди студентов 2016 в Тайланде© flickr.com, icpcnews icpcnews / Randy Piland

Американские студенты-программисты о недостатках обучения точным наукам: «Мы наплевательски относимся к преподаванию информатики»


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

Google официально выбрал российский язык программирования Kotlin вторым для разработки на Android

Компания Google на конференции I/O объявила, что созданный российской компанией JetBrains язык программирования Kotlin получил официальную поддержку как еще один язык разработки приложений на ОС Android помимо Java.


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

Весь гарвардский курс по основам программирования

23 лекции на русском языке по 40-60 минут.

Сегодня хотим представить все 23 серии Гарвардского курса по основам программирования, который был прочитан осенью 2015 года. Курс переведён и озвучен нашей студией по заказу JavaRush, и мы хотим сказать им огромное спасибо за поддержку!


Дальше нужен интернет

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

Студенты Петербургского колледжа создали YoptaScript — первый язык для «гопников и реальных пацанов», якобы для того, чтобы дать им возможность социализироваться и программировать на привычном языке.

Номер 1

По информации с GitHub, где опубликован исходный код проекта, YoptaScript — это скриптовый язык, который транслируется специальной библиотекой в JavaScript. Общий принцип языка построен на изменённых единицах языка Javascript на диалект «нормальных пацанов», поэтому в YoptaScript много нецензурной лексики. Конкретные слова авторы нашли в ходе наблюдений за соответствующими индивидами и взяли из словаря краткого блатного жаргона.


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

Написана с нуля и опубликована новая открытая ОС. Не Linux.

Номер 1

Опубликован исходный код операционной системы Minoca OS, написанной разработчиками с чистого листа. Система требует минимальных ресурсов для работы и отличается от Linux повышенным быстродействием и новым механизмом обновления ядра.


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

Разработка → Вы неправильно пишете животных

 

Уязвимость рекурсивных алгоритмов навигации муравья: спираль смерти
Уязвимость рекурсивных алгоритмов навигации муравья: спираль смерти

Животные – это платформы с очень ограниченной памятью, вычислительными способностями и возможностями модификаций. Разработчикам энимал-сцены приходится выдавать практически гениальные низкоуровневые алгоритмы. Правда, большое количество хардкода вызывает характерные проблемы с отсутствием проверки в экзотических условиях. Та же фильтрация входных данных делается очень и очень криво.


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

Письмо в редакцию: Как я учился писать на Python в стране без интернета — на Кубе

Разработчик Алехандро Самора прислал в редакцию письмо с рассказом о том, как он изучал программирование на Python на Кубе — в стране без интернета — и как ему удалось перебраться в Аргентину и найти работу.


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

Конструктор Google обучит детей программированию

Компания Google анонсировала открытую аппаратную платформу Project Bloks, которая призвана помочь программистам, дизайнерам и ученым разработать инструменты для обучения программированию детей младшего возраста (5+). Имея под рукой осязаемый «язык» (как кирпичики Lego, а не мышка и клавиатура), ребенку будет гораздо проще научиться писать код и выстраивать логические цепочки.

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



В Google называют Project Bloks «физическим» языком программирования, состоящим из трех частей. Главная — это «мозги» Brain Board, которые включат плату с мини-компьютером Raspberry Pi и центральный процессор. Вторая его составляющая — модуль (без активных электронных компонентов) Pucks, который может принимать различные инструкции («выключи или включи», «поверни налево», «увелчить число» и т.д.).

Третий компонент, Base Board, «читает» поступающие от Pucks команды и передает их на выполнение Brain Board. Также на нем размещены вибропривод и светодиоды, чтобы ребенок мог получить обратную связь в режиме реального времени. Используя Project Bloks дети, к примеру, могут управлять роботом для рисования Mirobot или Lego WeDo 2.0.

Источник: TechCrunch

Восьмибитные анекдоты

На рисунке К580ИК80 вначале выпускались в планарном 48-ми выводном керамическом корпусе. Такой и стоял в нашем первом «Микро-80».



Допотопная мультимедиа

Когда разрабатывался драйвер для записи и чтения данных с магнитофона были опробованы разные методы модуляции с самосинхронизацией. В конце концов, был выбран метод двухфазного кодирования. Но речь не об этом. Во время работы пришла мысль – «А что если на входе речь или музыка?». Сигнал с линейного выхода подавался на вход компаратора. Если он выше некого порога – то «1», ниже – «0». Состряпали простую программку. Через равные промежутки времени опрашивался выход компаратора, подсчитывалась и записывалась в память длительность нулей и единиц. Затем вторая программка выдавала на динамик через однобитный порт записанные нули и единички соответствующей длительности.


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

Эльбрус: из прошлого в будущее

Номер 1
Суперкомпьютер «Эльбрус»

 

Под гордым названием «Эльбрус» вышла серия суперкомпьютеров, которая была разработана советским ученым Всеволодом Сергеевичем Бурцевым (70-80-е). Эти компьютеры внесли ряд новшеств в теорию вычислительных машин, такие как суперскалярность (обработку более одной инструкции за один такт), реализацию защищенного программирования с аппаратными типами данных, параллельную обработку нескольких инструкций. Но главной особенностью советских суперкомпьютеров была их ориентация на языки высокого уровня. Советско-американский ученый Владимир Мстиславович Пентковский, участвовавший в разработке «Эльбрус», создал высокоуровневый язык программирования Эль-76.


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

Выдающиеся программисты СССР: Екатерина Логвиновна Ющенко

Екатерина Логвиновна Ющенко — первая женщина в СССР, которая стала доктором физико-математических наук благодаря новаторским достижениям в программировании. Она работала с первым в Европе компьютером МЭСМ, создала один из первых языков программирования высокого уровня с косвенной адресацией при программировании. Именно благодаря ее адресному языку исчезла зависимость от места расположения программы в памяти. Также Екатерина Ющенко стала основоположником первой советской школы теоретического программирования. Это была талантливая женщина-разработчик, которая прошла «огонь, воду и медные трубы».

Номер 2


Екатерина Логвиновна Ющенко (1919-2001 г.г.)


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

Изобретения в мире компьютеров и программирования

Недавно у нас с коллегами возникла дискуссия на тему первых компьютеров и программ. В разговоре вспомнились не только знаменитые ученые, такие как Чарльз Бэббидж, но и менее известных вроде Ады Лавлейс. В результате возникла идея провести исследование и составить хронологию развития истории компьютеров и программирования.

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

Номер 1


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

Окружающий мир как компьютерная симуляция

image

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


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

Искусственный интеллект слишком сложен для программистов

Искусственный интеллект

Искусственный интеллект — своего рода святой Грааль для Кремниевой долины, поскольку человекоподобные говорящие роботы должны изменить наш мир к лучшему. Как сказал бы Стив Джобс, «this changes everything». Представьте, что вы стоите на кухне и говорите: «Включи-ка свет над плитой». Вместо того чтобы идти к выключателю самостоятельно, вы просите систему включиться самостоятельно. Простая связь. Проще и быстрее.


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

Восемь различных типов программистов

Номер 1
Кадр из фильма Kingsman

Уверены, в этой статье вы точно узнаете своих сотрудников, а возможно, и себя. Шведский предприниматель и разработчик Дэвид Эльбе описал восемь типов программистов, с которыми ему приходилось иметь дело за последние 10 лет работы в проектах по веб-разработке. Какие типы лучше всего объединить в команду и какой код от них ждать — читайте в переводе от Alconost Translations.


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

Программирование детям

Программирование — это сложно

Мы с вами уже достаточно заядлые программисты, знающие множество различных языков. Мы пишем крутой софт, ловим самые невозможные баги, постоянно изобретаем новое. Но не задумывались ли вы над тем, что достигли гораздо большие успехи в вашей профессии, если бы начали заниматься любимым делом немного раньше. Например, с пеленок?! Ну или хотя бы с начальной школы?

Представьте себе, у ваших детей уже есть такая возможность.

Признайтесь, вы хотели посадить своего ребенка за консоль и попросить написать хотя бы старый-добрый echo «Hello world!». Само собой, насильно этого делать не следует, иначе совсем отобьете даже малейший интерес.


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

Я хотел научить ребенка программировать, поэтому написал свою книгу.

?И вы знаете, это сработало!
В четвертом классе парень уже делал свои игры на профессиональном языке программирования!?
Разбирался в циклах, переменных, функциях и даже правильно произносил английские термины. Более того, он настолько глубоко усвоил основы, что вскоре стал обучать своих друзей программированию. ?
Как мне это удалось? Я вам сейчас расскажу. ??

Книга для детей: 'Яша учится программировать'. Игорь Грессус

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

На что похож мир для компьютеров?

Машинное обучение

Мы знаем, что компьютеры могут смотреть на мир и определять, что видят, с помощью программного обеспечения, распознающего изображения. Они могут воспринимать объекты и людей и даже различать отдельные лица и эмоции. Но что они на самом деле видят?


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

Британия. Делаем программистов от бога



Что произошло?

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

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

Почему в страусах напихано столько мяса? Мнения программистов на все случаи жизни

Изображение: Thinkstock

 

Сергей Абдульманов описал в коротком прекрасном рассказе, как программисты могли бы «кодить» эволюционные процессы, и что происходило бы у них на планёрках.

Я прямо представляю это совещание:
— Так, господа, не укладываемся в бюджет по прериям. Что у нас там?
— Да вот, по птицам смета превышена.
— Что ж, давайте сокращать. Что у нас там самое большое?
— Страусы, кажется.
— Хорошо, вот с них и начнём. Ого! Зачем вы в него столько мяса запихали?


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

Джефф Дин из компании Google — это Чак Норрис нашего времени

«Джефф Дин компилирует и запускает свой код перед коммитом, но только чтобы проверить на баги компилятор и CPU», — вот один из множества шуточных фактов о Джеффе Дине.

Джефф Дин считается кем-то вроде Чака Норриса. Отличие только в том, что он вовсе не герой боевиков, а инженер-программист компании Google.

Шутки о нём впервые появились на 1 апреля шесть лет назад. Один из коллег Дина по имени Кентон Варда открыл страничку, куда каждый мог добавлять факты о Джеффе Дине. Идею с энтузиазмом подхватили другие разработчики — и вскоре наполнили страничку множеством таких «фактов».


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

Календарь программиста

Дело было вечером, делать было нечего. Вспомнил, что в прошлом году видел забавный программерский HEX-календарик. Поискал на 2012-й год, но, к сожалению, не нашел и решил сделать его самостоятельно.

В процессе немного увлекся и получился целый генератор календарей в 5-ти разных системах счисления

Давно вы написали свою последнюю программу?

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

Написание программ на заказ, личный опыт.

Номер 1

Многие наверняка видели эту картинку, картинка отображает суть работы если вы работает на СУПЕРАЙТИ ТЕХНОЛОДЖИ и зашибаете тонны бабла за написание одной кнопки с 3D эффектом:) Если вы считаете себя супер программистом, если вы работаете на супермегакрутую контору, если в круты неимоверно, то этот пост не для вас.Пост для обычных и начинающих программистов, обычно мы сидим в конторах, и, если повезёт чего-то там пописываем, если остался задор берём левые заказы, если задор не остался, ну тогда медленно рефлексируем на диване с бутылочкой пива:). Мой опыт ограничен написанием программ под БД возможно у web-программистов по другому.


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

Чего бы почитать начинающему программисту?

Лучший способ научиться что-то делать — делать это.

В мохнатых годах в один институт привезли импортный генератор
, инструкцию к нему забыли, как запустить не знали.
Позвали двух маститых профессоров из этого института
разобраться, как он работатет, после часовых дебатов
между собой, один из профессоров сказал: «Если я не
ошибаюсь, это бензиновый двигатель внутреннего сгорания.»
Вечером позвали мужика с соседних гаражей, запустил
генератор за пять минут
.
Из байки.

Это как бы ответ на вопрос «что почитать?». Многие почему-то думают, что есть спец-книги, про которые прознали гуру и которые они скрывают от всех остальных, и что именно эти книги превратили гуру в гуру. Что в книгах о программировании сокрыты тайные знания, превращающие непонятно кого сразу в корифея, и что без этих книг ну никак. Что без этих книг человек будет вынужден заниматься «изобретением велосипедов», которые и в подмётки не годятся уже изобретённым.

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

Конкурс по программированию. Выкладываем на стол, часть 3.

Чтобы не скучать.


Also kameraden, хочу предложить вам милое развлечение и соревнование заодно.
Тут наверняка есть программисты, да, и всех, кроме совсем старперов, в школе учили. Я выдаю задание класса «шарады/ребусы» и оригинальный алгоритм решения. Но решение графическое, т.е., напрямую в текст программы его не перенести. Нужно немного подумать, как его реализовать, и написать программу с определенными условиями. Писать на любом подходящем языке, хоть на VBA, хоть на турбо-бейсике. Задача несложная. Реальный программист напишет за 20 минут, любой дурак за пару часов.

Затем свое решение вы сбрасываете мне в личку, в час «Ч» я все их публикую. Те, что работают верно, отправляются на голосование за самое красивое решение.
У победителей будет возможность невозбранно написать «Fuck Yeahhh!» и потешить свое ЧСВ. Ну, если администрация выделить еще какойнибудь приз, то тоже будет неплохо.

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

Алгоритм изложен в этом топике magspace.ru/blog/intresting/209094.html
Решаем задачу о переливании воды. Имеем: три сосуда, самый большой из них полон, два других имеют меньший объем и пусты. После нескольких переливаний мы получаем некоторое количество воды в меньших сосудах.

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

Фактически такая программа позволит генерировать задачи этого типа с ручным подбором условий.

Интерфейс на ваше усмотрение, хоть консоль, хоть GUI, хоть ввод и вывод через стороннюю программу. Главное — правильность решения, вывод в удобном виде. Не забывайте о контроле входных данных.

Свистелки и перделки добавлять можно, но уместные. Усложнить задачу не запрещается при сохранении требуемого функционала. Например, сделать решение и для четырех сосудов, но чтобы три тоже можно было.

Если кого-то посетит остроумная мысль приделать к программе функцию форматирования винтов, вычислю по IP и набью морду, но запускать буду только на стенде, такшта винты не пострадают ;)

Если будете делать интерпретируемую, то давайте вместе со средой.

ОС: DOS, WinXP.

Решения присылайте мне в личку, последний срок — 06:00 среды.

Почти экстремальное программирование: мозголомы 21 века

К необычным языкам программирования все давно привыкли. Чуть ли не каждый новый язык принято обзывать «странным» и «в корне отличным от всех предыдущих». И создатели С и творцы Перла с Фортом с рвением призывали «забыть весь предыдущий опыт – этот язык в корне отличается от языков, обычно используемых в практическом программированием». За этой мишурой как-то и забываешь, что помимо практического программирования, есть ещё и теоретическое, экспериментальное.

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

Новозеландский программист создал бота-потребителя

На днях программист из Новой Зеландии по имени Пол Ханкин анонсировал свою разработку, которую он в шутку называет «ботом-потребителем». Бот работает согласно интересному алгоритму, который позволяет программе закупать всякие мелочи в Сети (не более пары долларов). Причем покупку бот совершает с вероятностью раз в три дня. Зачем? Подробнее — в продолжении.
Читать дальше  » 

Программирование - отстой! Или что-то вроде того.

Программирование — это не забава. Это нудное и скучное занятие, и, уж конечно, никакой не подвиг. Чего бы вы там с ним не делали, программирование совершенно точно не будет «секси».

Я знаю, что вы думаете. Всех, кто так говорит — и уж тем более пишет такое в блогах — нужно немедленно лишить их программерской лицензии, отобрать у них клавиатуры и навечно посадить за микроЭВМ с CP/M, 8"-ми дискетами и модемом на 1200 бод.

Безусловно, многим из нас, включая меня, нравится писать код. Но должно ли нам это нравиться?


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

Sphere Online Judge - задачи по программированию

Для программистов хочу порекомендовать один сайт с олимпиадными (и не только) задачами по информатике:

Sphere Online Judge

Сайт позволяет проверять свои решения в режиме реального времени. Решения можно отсылать на таких языках программирования, как:
Читать дальше  » 

Кнут Д. Искусство программирования

Дональд Кнут - один из самых знаменитых классиков в области программирования. Чтобы долго не говорить о важности этой книги, приведу лишь слова Билла Гейтса: "Если вы считаете себя действительно хорошим программистом..., прочитайте "Искусство программирования" (Кнута)... Если вы сможете прочесть весь этот труд, то вам определенно следует отправить мне резюме". "Искусство программирования" на данный момент состоит из 3 томов, но уже в течение многих лет ведется работа над 4 и 5 томами. Над первым изданием книги, которое вышло в 1972 году, автор потел (лучшего слова здесь не подберешь) 10 лет! Первое издание было напечатано и в СССР, и сразу стало настольной книгой большинства отечественных программистов (многие из которых впоследствии "утекли" за границу). Для выпуска третьего издания Дональд Кнут специально разработал знаменитые системы набора METAFONT и ТеХ. Чувствуется, что автор основательно подошел к написанию и изданию книги, он даже готов заплатить $2,56 тому, кто первым найдет опечатку или ошибку в его книге (имеется в виду оригинальное издание). Но должен сказать, что эта книга очень тяжелая в чтении, и, пожалуй, самая сложная из всех книг, представленных в этом обзоре. Написанная в серьезном академическом стиле, она требует хорошей математической подготовки, причем как по элементарной математике, так и по высшей. Все примеры приведены на ассемблере (так что знание его не помешает), причем на ассемблере, который специально был разработан автором для гипотетической (выдуманной) машины MIX. Если школьник сумеет понять эту книгу, то его можно считать гением. Кроме того, книга рассчитана на подготовленного читателя, т.е. на того, кто имеет хотя бы небольшой опыт программирования. Автор так и пишет: "Читатель должен иметь опыт написания и отладки по меньшей мере четырех программ хотя бы для одного компьютера".


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

Какому языку программирования отдаете предпочтение?

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