В последнее время, набирает популярность мысль, что комментарии в коде — дело не обязательное, и даже вредное. Буквально вчера вечером, общаясь со знакомым молодым программистом, попросившим посмотреть его код, я обнаружил, что комменты отсутствовали вовсе, даже привычные описания методов. На мой удивленный смайлик, был ответ: “Комментарии — первый признак плохого кода”. И черт бы с ним, с начинающим программистом, но я периодически читаю что-то похожее в блогах, и слышу от коллег. Может программирование в очередной раз сделало шаг вперед, а я, среди отстающих? Под катом, немного размышлений, о том, когда и почему стоит или не стоит комментировать свой код.
Читать полностью »
Рубрика «Программирование» - 919
Почему [не]нужно комментировать код
2013-12-26 в 6:10, admin, рубрики: комментарии, Программирование, разработка, Совершенный код, метки: комментарии, ПрограммированиеСтрасть к программированию. Глава 20. Телепат
2013-12-25 в 19:24, admin, рубрики: chad fawler, gtd, Passionate Programmer, переводы, Программирование, страсть к программированию, метки: chad fawler, Passionate Programmer, переводы, страсть к программированию 
О переводе
Это перевод 20 главы книги The Passionate Programmer: Creating a Remarkable Career in Software Development. Её автор — Chad Fowler — талантливый Ruby-разработчик, известный докладчик на конференциях, посвящённых Ruby и IT в целом. Бывший саксофонист, а сейчас — CTO 6Wunderkinder.
Вступительное слово
Благодарности
Введение
Глава 1. Веди или умри
Глава 2. Спрос и предложение
Глава 3. Кодинг ещё не всё
Глава 4. Будь худшим
Глава 5. Инвестируйте в свой интеллект
Глава 6. Не слушай своих родителей
Как я отказался от $300.000 — рассказ в конце 6-й главы
Глава 7. Будь универсалом (В черновиках)
Глава 8. Будь специалистом
Глава 9. Не кладите все свои яйца в чужую корзину
Глава 10. Полюби это или брось
Глава 11. Научись рыбачить.
Глава 12. Изучите, как работает бизнес на самом деле
Глава 13. Найди ментора
Глава 15. Практика, практика, практика
Глава 19. Прямо сейчас
Глава 31. Не паникуй
Краудсорсинговый перевод книги ведётся на github, присоединяйтесь.
Читать полностью »
Asm.js стал ещё быстрее
2013-12-25 в 13:47, admin, рубрики: Asm.js, Emscripten, Firefox, javascript, Native Client, Программирование, метки: Asm.js, emscripten, firefox, Native Client
Компания Mozilla порадовала новостью об очередном улучшении производительности Asm.js. Этот промежуточный язык обеспечивает исключительно высокую скорость выполнения кода, написанного на языках вроде C и C++, является свободной альтернативой Google Native Client и работает в любом браузере (хотя в Firefox — быстрее всего).
Например, после компиляции кода C++ в Asm.js с помощью компилятора Emscripten раньше потеря производительности была примерно двукратной, теперь же код Asm.js медленнее нативной программы не более чем в полтора раза.
Некоторые из проведённых оптимизаций небольшие и незначительные, а другие более серьёзные. Например, Firefox недавно научился оптимизировать некоторые операции с плавающей запятой таким образом, что вместо чисел float64 вычисления осуществляются с менее точными числами float32, что даёт очень большую прибавку в производительности. Соответствующее изменение было внесено в Asm.js, компилятор Emscripten и движок SpiderMonkey.
Читать полностью »
Страсть к программированию. Глава 19. Прямо сейчас
2013-12-25 в 9:23, admin, рубрики: gtd, Passionate Programmer, Программирование, метки: Passionate Programmer 
О переводе
Это перевод 19 главы книги The Passionate Programmer: Creating a Remarkable Career in Software Development. Её автор — Chad Fowler — талантливый Ruby-разработчик, известный докладчик на конференцияx, посвящённых Ruby и IT в целом. Бывший саксофонист, а сейчас — CTO 6Wunderkinder.
Проект перевода книги на github.
REST API, несколько историй
2013-12-24 в 19:37, admin, рубрики: api, web, Программирование, метки: api, web Добрый вечер, читатели!
Так уж сложилось, что публично я пишу API integration, да и не публично тоже, хотя в рабочей жизни это наиболее редкое мое занятие. И захотелось мне высказаться на примере четырех сервисов обертки над АПИ которых есть у меня в профиле github.
Читать полностью »
Причуды абстракций
2013-12-24 в 14:56, admin, рубрики: абстрагирование, абстракция, Блог компании LLC Tik-Tok Coach, класс, ооп, Программирование, метки: абстрагирование, абстракция, класс, ооп 
За годы преподавания и коммерческой разработки я повстречал много студентов и разработчиков с одним и тем же заблуждением насчет ООП: класс = абстракция. Как я себе объясняю причину возникновения этого заблуждения — впервые, да, пожалуй, больше и нигде, программисты сталкиваются с понятием абстракции в книжках об объектно-ориентированном программировании, где как раз и говорится, что классы являются абстракциями. Естественно, не имея явно акцентированных других примеров абстракций, читатели начинают отождествлять абстракции с классами. В попытках искоренить данное заблуждение набралось много материала, из которого получилась настоящая статья. Что Вы найдете под катом:
- Определение понятия абстракции и объяснение откуда оно взялось в ООП.
- Объяснение на простых примерах, что такое барьер абстракции, побочный эффект абстракции.
- Как получается хардкод.
Страсть к программированию. Глава 14. Будь ментором
2013-12-24 в 11:54, admin, рубрики: gtd, Passionate Programmer, книги, переводы, Программирование, страсть к программированию, метки: Passionate Programmer, книги, переводы, Программирование, страсть к программированиюТакже присоединяюсь к краудсорсингу перевода The Passionate Programmer от Chad Fowler. Правки и комментарии к переводу приветствуются.
Спасибо WarAngel_alk за содержание:
- Вступительное слово
- Благодарности
- Введение
- Глава 1. Веди или умри
- Глава 2. Спрос и предложение
- Глава 3. Кодинг ещё не всё
- Глава 4. Будь худшим
- Глава 5. Инвестируйте в свой интеллект
- Глава 6. Не слушай своих родителей
- Как я отказался от $300.000 — рассказ в конце 6-й главы
- Глава 7. Будь универсалом (В черновиках)
- Глава 8. Будь специалистом
- Глава 9. Не кладите все свои яйца в чужую корзину
- Глава 10. Полюби это или брось
- Глава 11. Научись рыбачить.
- Глава 12. Изучите, как работает бизнес на самом деле
- Глава 13. Найди ментора
- Глава 14. Будь ментором
- Глава 15. Практика, практика, практика
- Глава 31. Не паникуй
< 13. Найди ментора | Глава 15. Практика, практика, практика >
Если вы хотите действительно что-то изучить, попробуйте обучить этому кого-то еще. Нет лучше способа
закрепить свои знания, чем заставить себя сформулировать их кому-то еще так, чтобы их можно было
понять. Обычное формулирование чего-либо является популярным средством для «очищения» разума.
Общение с куклами или другими неодушевленными предметами как способ решения проблем является
довольно известным элементом программистского фольклора (прим. пер. — Метод резиновой уточки).
Читать полностью »
Windows Runtime. Система типов и взаимодействие с CLR
2013-12-24 в 8:11, admin, рубрики: .net, clr, WinRT, Программирование, метки: .net, c++, clr, DEV3, winrtС выходом Windows 8 разработчикам стала доступна новая библиотека классов — Windows Runtime. Компоненты WinRT могут использоваться в приложениях Windows Store и настольных приложениях; в неуправляемом коде C/C++, в JavaScript, а также в C# и Visual Basic.
Метаданные Windows Runtime
На внутреннем уровне компоненты WinRT представляют собой компоненты COM (Component Object Model), для описания API которых теперь используются метаданные. Эти метаданные хранятся в файлах с расширением *.winmd и представляют собой обновленную версию метаданных .NET, которые кодируются в соответствие с правилами раздела №2 (Metadata Definition and Semantics) стандарта ECMA-335. Поскольку обычные сборки .NET Framework кодируются с помощью этого же стандарта, это говорит о том, что вы можете использовать знакомые средства (такие как ildasm.exe, Object Browser) для просмотра содержимого этих файлов.
По большей части, просмотр WinMD файла с помощью утилиты ildasm.exe очень похож на просмотр стандартной управляемой сборки. Есть несколько различий, которые могут быть видны — в первую очередь то, что WinMD файлы, в общем, не содержат никаких Intermediate Language (IL) инструкций. Вместо этого, эти файлы описывают API, предоставляемые Windows Runtime. Реализация этих интерфейсов может быть полностью отделена от их определения, и по сути, может быть записана в машинном коде. Тем не менее, для разработчиков управляемых приложений, детали реализации WinRT API не имеют значения, потому что управляемый код должен видеть только определения API, которые он вызывает. За кулисами, Common Language Runtime (CLR) и операционная система Windows соединяют для вас определения API и их реализации.
Читать полностью »
Страсть к программированию. Глава 15. Практика, практика, практика
2013-12-23 в 18:09, admin, рубрики: книги, Программирование, психология программирования, метки: книги, Программирование, психология программированияО переводе
Это перевод 15 главы книги The Passionate Programmer: Creating a Remarkable Career in Software Development. Её автор — Chad Fowler — талантливый Ruby-разработчик, известный докладчик на конференциях, посвящённых Ruby и IT в целом. Бывший саксофонист, а сейчас — CTO 6Wunderkinder.
Читать полностью »
Процентное соотношение языков программирования, которые сейчас преподаются в средней школе
2013-12-23 в 8:55, admin, рубрики: BASIC, Pascal, образование, обучение программированию, Программирование, метки: BASIC, Pascal, образование, обучение программированию, ПрограммированиеНужен срез того, какие сейчас языки программирования преподаются в школе и в каком процентном соотношении. В сети не удалось найти подобной статистики. На хабре есть это, но необходимо узнать реалии, а не то, «какой язык был первый» или «какой лучше для первого».
Если вы окончили школу в последние 5-7 лет или сейчас преподаете программирование школьникам или знаете со слов других, ответьте, пожалуйста, на опрос.
