Автор, имеющий огромный опыт работы в индустрии ПО, посвятил свой труд ее фактам, мифам и недоразумениям, представив 55 фактов и 10 заблуждений, относящихся к менеджменту, жизненному циклу, качеству, исследованиям и образованию в сфере разработки ПО. Некоторые из них хорошо известны, о других, наоборот, знают немногие. Основное внимание уделяется менеджменту как главной проблеме современной индустрии ПО, отрицательной роли рекламных кампаний, которые побуждают людей гоняться за миражами, и человеческому фактору – специалистам, без которых создание программ немыслимо. Адресована широкому кругу читателей – от тех, кто управляет программными проектами, до программистов.
Ничто не сравнится по ценности с советами настоящего программиста-профессионала. Книга Питера Гудлифа «Ремесло программиста» написана ясно, практично и занимательно. Она поможет вам перейти на более высокий уровень мастерства программирования и покажет, как писать код, который больше чем «просто работает». Да, вы умеете писать работающий код, но как написать понятный код? Как добиться его надежности и отсутствия ошибок? Смогут ли другие программисты выяснить логику и цель вашего кода? Выдающиеся программисты не просто обладают техническими знаниями – у них есть правильный подход и отношение к программированию. Перед вами руководство по выживанию в условиях промышленного производства ПО. Эта книга посвящена тому, чему вас никто не учил: как правильно программировать в реальной жизни. Здесь вы найдете не связанные с конкретными языками рекомендации, полезные всем разработчикам и касающиеся таких проблем, как стиль представления, выбор имен переменных, обработка ошибок, безопасность, эффективность групповой работы, технологии разработки и составление документации. Читатель должен обладать опытом программирования, ибо книга не учит программированию – она учит правильно программировать. Издание будет полезно и студентам старших курсов, знакомым с принципами программирования.
Вряд ли найдется человек, которому не было бы знакомо состояние мучительного ожидания при работе на компьютере. Долгие процессы установки программ, загрузки обновлений, антивирусного сканирования… Все понимают, что сократить это время технически невозможно, но есть другие способы изменения ситуации. О них и рассказывается в этой книге. Автор подробно рассматривает особенности восприятия времени человеком и предлагает методы и приемы, способствующие повышению пользовательской толерантности и удовлетворенности. Предлагаемые методики позволяют не только вызвать у пользователя ощущение ускорения длительных операций, но и заставить его наслаждаться временем, потраченным на ожидание их выполнения.
Роберт Гласс исследует важный, но часто упускаемый из виду вопрос о роли творчества в программном инжиниринге и программировании. Почти полувековой личный опыт как разработчика, преподавателя и исследователя помогают автору охватить множество проблем. Что важнее – процесс или продукт? Каково соотношение между «интеллектуальным» и «канцелярским» трудом, а также между теорией и практикой в программировании и как сделать их взаимодействие более эффективным? В каких ситуациях полезнее подход со строгим контролем, а когда лучше свободное экспериментирование? Первое издание, вышедшее в 1995 году, стало бестселлером. Второе издание подверглось значительной доработке. Том Демарко в своем предисловии сравнивает его со знаменитым «Мифическим человеко-месяцем» Фредерика Брукса. Первоначальный текст был дополнен результатами более чем десятилетних поисков недостающего звена между творчеством и программированием. Со свойственным автору мягким юмором и эрудированностью он дает читателю советы и рекомендации огромной важности, проливает свет на историю становления индустрии разработки ПО, исподволь подводя к мысли о том, что настоящий программист – это не оператор, не наборщик кода, а настоящий Творец.
Стивен Дьюхерст, эксперт по С++ с более чем 20$летним опытом применения С++ в различных областях, рассматривает важнейшие, но зачастую неправильно понимаемые темы программирования и проектирования на С++, отсеивая при этом ненужные технические тонкости. В один тонкий том Стив уместил то, что он и его рецензенты, опытные консультанты и авторы, считают самым необходимым для эффективного программирования на С++. Книга адресована тем, кто имеет опыт программирования на C++ и испытывает необходимость быстро повысить свое знание С++ до профессионального уровня. Издание полезно и квалифицированным программистам на С или Java, имеющим небольшой опыт проектирования и разработки сложного кода на С++ и склонным программировать на С++ в стиле Java.
Джоэл о программировании и разнообразных и иногда родственных вопросах, которые должны быть интересны разработчикам программного обеспечения, проектировщикам и менеджерам, а также тем, кому посчастливилось или не повезло в каком#то качестве работать с ними. Книга представляет собой подборку эссе, опубликованных автором на его сайте http://www.joelonsoftware.com. Талант и глубокое проникновение в суть предмета сделали Джоэла мастером своего дела, а остроумие и едкий юмор принесли сайту скандальную известность среди программистов. Затронуты практически все вообразимые аспекты создания ПО от лучших способов устройства рабочего места программиста до лучших способов написания программного кода. Издание адресовано широкому кругу читателей – и тем, кто собирается руководить программистами, и самим программистам – как приверженцам Microsoft, так и сторонникам открытого кода.
Стив Макконнелл, автор бестселлера «Совершенный код», других книг и многочисленных статей о разработке ПО, убедительно показывает, что разработка ПО может быть стабильно успешной, если сделать совершеннее саму профессию разработчика ПО. Он не только показывает, почему и как отрасль пришла к своему современному состоянию, и описывает шаги, которые должен предпринять каждый, кто хочет подняться на новый уровень в создании ПО. Он также говорит о корпоративных методиках, призванных увеличить количество профессионально выполненных проектов, и о лицензировании организаций и академических учебных программ как о средстве повышения профессионализма и отдельных разработчиков, и в индустрии ПО в целом.
Этот сборник, написаннный живо и интересно, содержит практические рекомендации по управлению проектами, образованные в результате синтеза принципов управления и богатейшего практического опыта автора, и призван способствовать совершенствованию управления проектами в любой софтверной (и не только) компании. Затронуты разнообразные аспекты создания ПО и управления этим процессом, высказаны оригинальные идеи о сущности программного обеспечения, о том, как мотивировать профессионалов, и о многом другом. Эта книга будет полезна не только тем, кто занят в производстве ПО. Ее с интересом прочтет менеджер любого уровня.
Дэвид Платт, за плечами которого 20-летний опыт программирования и преподавания, утверждает, что современное ПО – отстой. Оно не защищено и позволяет программам злоумышленников проникать из Интернета в наши компьютеры. Оно ненадежно и ломается в самый ответственный момент, уничтожая плоды наших долгих трудов и не давая средств к их спасению. Им трудно пользоваться, потому что приходится ломать голову над тем, как выполнить простейшие операции. Дэвид Платт объясняет, почему программы могут так разочаровывать и даже оказываться опасными, а также предлагает несколько способов борьбы с этим. Изложение содержит много примеров и сдобрено юмором. Не многие компьютерные книжки способны заставить громко смеяться. Но Дэйв не только смешит, он делится очень интересными наблюдениями и взглядами, излагая их в ясном и занимательном стиле. Он призывает пользователей сообща бороться с производителями плохого ПО и приглашает единомышленников на свой сайт www.suckbusters.com.
Как противостоять натиску компьютерных технологий, проникающих в нашу жизнь c ужасающей скоростью? Наши телефоны, фотокамеры, автомобили – все, что нас окружает, автоматизируются, программируются, создаются людьми, которые, стремясь получить выгоду от применения микросхем, уклонились от своей прямой обязанности – делать эти продукты простыми в применении. И это не преувеличение, это реальность. Наша жизнь все больше концентрируется вокруг превратностей, странностей, решений и катастроф индустрии высоких технологий. Разработчики программ, устройств и технологий думают не так, как мы. Облеченные полномочиями исполнительные лица ни на что не влияют в мире высоких технологий – здесь всем заправляют инженеры. Мы разрешили пациентам завладеть психбольницей. Алан Купер предлагает решение проблемы: программированию должно предшествовать проектирование.