Страницы

Нехватка программистов

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

Пожелания по программному обеспечению

  1. Не стоит писать инструкции для человека, которые он должен выполнять на компьютере. Лучше создавать инструкции для компьютера, понятные человеку. Человек должен контролировать процесс, а не служить прокладкой между программами. Следует выбирать и создавайть ПО, которое позволяет это наилучшим образом.
  2. Следует избегать подхода, когда программируемая сущность программы сначала старательно прячется, а затем с трудом и криво натягивается вновь, так как потребность в автоматизации остаётся практически всегда. Причина появления подхода закономерна - в основе разработки используются языки, являющиеся эзотерическими для нормальных пользователей.
  3. Не нужно создавать новые платформы (пусть и под задачу и без именования платформой) под предлогом создания якобы платформонезависимого кода, которого не существует по определению. Следует создавать платформы, улучшающие или предоставляющие новые полезные качества, или не создавать вовсе.
  4. Высокий уровень стандартности решения и его опоры на другие стандартные решения является преимуществом, поэтому для перевеса в пользу нестандартных они должны давать существенные улучшения.
  5. Пользовательский интерфейс должен быть тонкой надстройкой над основным кодом. Желательно, чтобы он создавался из описания на уровне, близком к автоматическому.
  6. Совместимость лучше обеспечивать не накоплением устаревших черт, а автоматическим переводом из устаревшего в новое и наоборот.
  7. Программисты порой любят переусложнять. Простые решения лучше сложных кроме случаев, когда цели в необходимом качестве недостижимы в простом решении. Но совокупная оценка учитывает не только простоту результата, но и простоту пути к этому результату.