Раз нахабреначаласьнеделяpowershell, то я решил самое время из черновика достать статью.
В то самое время когда был ZverCD, я эксперементировал с ubunta'ой и искренне поражался почему не сделают единный репозиторий для программ windows. С тех пор прошло порядка 5 лет, и под windows появился пакетный менеджер. Хорошо в win10 сделали OneGet, но и без OneGet начали появляться аналоги. Своего рода прорывом был chocolatey. Собственно с написания скрипта под chocolatey началась моя эпопея по всеобщей тотальной синхронизации и переносимости. Каждая новая установка операционной системы, для меня выглядит запуском одного скрипта (в идеальном мире так и есть! ), с каждой новой установкой правда все более и более расширяемого. Этот рассказ о том какой софт я синхронизирую под windows чем и как.
Этот пост был написан для технической аудитории, но его ключевые моменты могут также использоваться и в других сферах.
Существует множество причин, из-за которых программист может начать работать над сторонним проектом. Это хороший способ держать руку на пульсе современных технологий, которые сейчас на пике популярности в отрасли. Это может помочь вам отточить свои навыки программирования. И это весело! Ну или должно быть весело.
Но то, что мы привыкли называть “жизнью” может не только усложнить вам завершение проекта, но даже не дать начать работать над ним. Мы часто тратим много времени чтобы придерживаться напряженного графика, и может показаться невозможным использовать хотя бы минутку для личного проекта.
Я начал работать на моим первым сайд-проектом два года назад, и я не эксперт в этом вопросе, чтобы это не значило. Спустя два года, я сделал несколько наблюдений о начале работы над сторонними проектами, которые я начал, почему я смог некоторые закончить, а некоторые нет. То, что я попытаюсь описать не претендует на новаторство, ни на пошаговое руководство, а является исключительно лишь наблюдениями, которые могут оказаться полезными.
Даже совсем зеленые программисты на Си, не испытывают проблем с чтением таких объявлений: int foo[5]; // foo массив из 5 элементов типа int
char *foo; // foo указатель на char
double foo(); // foo функция возвращающая значение типа double
Но как только объявления становятся немного сложнее, проблематично точно сказать что это. Например: char *(*(**foo[][8])())[];
Компьютеры настолько плотно вошли в нашу жизнь, что теперь нельзя её представить без них. Настольные, ноутбуки, КПК, смартфоны, различные гаджеты, будь то плеер или переносной фотобанк. Помимо встречающихся нам каждый день различный устройств есть также компьютеры служебные. О том, откуда возникли и как развивались, от ЭНИАК до современных компьютеров, с безумно мощными процессорами и потрясающими операционными системами, знают многие. Но то, какие в СССР, в это время разрабатывались вычислительные комплексы, предназначенные для решения промышленных и военных задач, мало где освещено. Вот о них и пойдет речь