metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2008-12-26 01:04 pm

И вообще о железе для разработки

Я периодически пытаюсь осмыслить - если бы для работы использовать более нормальное железо или более аккуратно отстроенную инфраструктуру, можно было бы работать эффективнее, или же это отмазка, потому что работать вообще влом.

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

А в .net получается так: поставил компилироваться что-то в вижуал студии - это минимум 2-5 минут которые можно или пойти сожрать что-нибудь на кухне, или почитать ЖЖ, или заглянуть в RSS-читалку.

Запуск проги - минута (пока IIS сайт перегрузит, пока оно все с IIS подгрузит, да SQL сервер очухается)

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

Хорошо бы было использовать два-три разных компа, один с двумя мониторами и два с одним и какой-нибудь нормальный KVM-свитч, а то от ремоте-десктопов в глазах рябит. И на каждом компе минимум три физических диска гиг по 500-750. И чтобы компы были чо-нибудь вроде CoreDuo последних. И сеть гигабитную. Тогда, по идее можно было бы работать, не выпадая из потока за время тупления дисков и сети.

Но менеджер внутри головы говорит что это "выебоны не желающего работать обленившегося программиста, который ищет себе бонусов, ничего толком не делая".

[identity profile] yurri.livejournal.com 2008-12-26 11:39 am (UTC)(link)
И что, в остальное время программист действительно бесперерывно работает?

Я именно работаю примерно половину рабочего времени, если по-честному (правда, подозреваю, что у всех более-менее так, потому что обычно иду с небольшим опережением).

Причём не сказал бы, что это сокращаемые затраты - т.е. не получается работать большую долю времени от имеющегося, не идёт.

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

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

[identity profile] 1ceheart.livejournal.com 2008-12-26 11:50 am (UTC)(link)
Сборка большого проекта под FPGA на нормальном компе обычно занимает 30-40 минут, на компе "так себе" двухчасовой place&route - норма жизни.

Это неприятно, но не более того. Можно в это время спокойно заниматься тестами, и вообще есть чем заняться.

А вот двухмониторная конфигурация да, это важно. Я сейчас вынужденно с одним монитором, и такое чувство, как будто на мир через замочную скважину смотришь.

[identity profile] sergiej.livejournal.com 2008-12-26 12:10 pm (UTC)(link)
Везёт блин, ты бы подождал десять раз в день 15-ти минутного рестарта веблоджика (хорошо если одного а не 2-х, 3-х одного за другим), увидел бы где раки... а то 2-5 минут много ему :)
Конечно "компилится" в джаве всё влёт, потому что обычно подхватить нужно всего несколько файлов которые изменились. А сборкой больших проектов целиком должны заниматься не девелоперские машины, а скрипты на сервере, регулярно и автоматически, желательно вместе с автоматическими тестами - Be Agile :)

[identity profile] guamoka.livejournal.com 2008-12-26 01:53 pm (UTC)(link)
Мне бы ваши проблемы:) Вот когда для фикса/проверки пустякового бага из модуля, который ты если и видел в глаза, то с пол-месяца назад, и в котором уже успели все переколбасить три разных человека, нужно забрать из CVS свежуюю версию всего проекта, потом выяснить где/отыскать последние тестовые данные (обязательно свои, хенд-мэйд, на каждый баг), переставить схему (которая может поменяться как погода в марте), залить данные, собрать приложение, задепроить на Вебложик, который после нескольких деплоев впадает в Java.lang.OutOfMemoryError: PermGen space, запустить и обнаружить, что что-то поправил не совсем так... И ведь главное юнит-тесты, моки и др. практически бесполезны, ибо ты не контролируешь изменения, и весь кодбейз поэтому словно зловонная жижа совершенно непредсказуемым образом перетикает, завихряется, клокочит:)

[identity profile] zamotivator.livejournal.com 2008-12-28 04:46 pm (UTC)(link)
Тебе везёт, наша СУБД распределённой сборкой (параллельно 20 компов) компилируется минут 15-20 (т.е. 6-7 часов времени компиляции на одной машине), линкуется минут 20-30.
Вот так вот...