Действительно ли выполнимо виртуализировать машины разработчика?

Шаг 1: Почините окна
  • , Выключают Восстановление системы
  • , Выключают Windows Defender
  • Удаление любой предоставленный OEM антивирус или другое пробное программное обеспечение, если это - поле
  • OEM, Добираются , SysInternals AutoRuns и кладет smackdown ко всем 8 000 бесполезных перспектив объектов и сервисов запуска, причиняет Вам, включая медленный и бесполезный поиск перспективы индексация сервиса.

Шаг 2: материал Установки.

Теперь, когда мой новейший Core 2 Duo ПК не срывается с бесполезным дерьмом, работающим как 386, я могу создать его снова

  • плагин FlashPlayer firefox Установки Firefox
  • Установки (, почему, о, почему это не связывается FF? )
  • окна Выполнения обновляют и позволяют ему сделать, это - цикл загрузки/перезагрузки 50 раз, пока это не счастливо
    • , В то время как это происходит, я могу использовать Firefox, чтобы просмотреть stackoverflow и считать reddit :-)
  • Получают UnixUtils и или разархивировали их к system32 или иначе удостоверяются, что они находятся в пути.
    • Это необходимо, потому что я не могу выдержать cygwin, все же моя память мышц продолжает вводить ls, когда я пробую к типу dir, и окна все еще еще не услышали о grep
  • Установка Droid Sans Mono и шрифты Монако для электронного Текстового редактора Установки программирования
  • , Если я устанавливаю Visual Studio, сделайте это. Если не устанавливают время выполнения платформы.NET вместо этого
  • дополнения Firefox Установки (поджигатель, расщепление, веб-разработчик, adblock)
5
задан David Boike 3 November 2009 в 17:29
поделиться

10 ответов

This sounds like a well intentioned idea, but:

In my experience you need multiple cores, lots of memory, and fast disks to be productive in today's modern IDE's. I don't see that happening in a virtual environment with any economy. Individual boxes are still better.

It's also an issue of control. In a virtual environment I can imagine all kinds of restrictions. Will you still be able to install your own tools, for example?

Ultimately, it's misguided. If this idea increases build times by any substantial amount, any savings in hardware will quickly be erased by lost productivity. Conversely, money that is spent on decent individual machines for developers will quickly pay for itself over and over in reduced build times.

Good quality individual machines are an investment, not a cost.

10
ответ дан 18 December 2019 в 06:03
поделиться

Basic failure to understand what a developer box is actually doing much of the time:

When building its chewing through processor and disk - especially disk. When testing you're talking about having one or more instances of Visual Studio running (once you get past two things start to get interesting), database server, website/services plus all the other stuff (browsers with a lot of tabs open, notebook software, and heaven only knows what else) all spread across multiple monitors (at least two). Lots of cores, lots of memory please!

I can quite happily accept that there's an argument for virtualisation - a good dev box should be able to host multiple, concurrent VMs in order to isolate some of the above and to provide "clean" environments for testing. Note that that's the box for ONE developer hosting multiple VMs solely for the benefit of that one developer...

3
ответ дан 18 December 2019 в 06:03
поделиться

Я предполагаю, что у вас уже есть машины для SVN / TRAC, ваш сервер непрерывной интеграции, демонстрации продуктов, тестирование и т. Д., И единственное возможное использование этих серверов вашей командой - это личные виртуальные машины. .

0
ответ дан 18 December 2019 в 06:03
поделиться

Our team is developing on remote server (no GUI stuff, plain old vim) for quite some time without problems. Granted it requires rather powerful server and sometimes is starts to be bit on a slow side if everyone start to compile at the same time.

But as a bonus you are very mobile in terms where you can develop from (we all are having laptops) be it in office, home, sunny beach (last one was probably overstatement).

Bute yeah, that might not all work well for graphics heavy apps of course.

1
ответ дан 18 December 2019 в 06:03
поделиться

Aside from all of the givens (perfomance, disk space, etc...):

I would be OK with this as long as I still had multiple monitor support.

Without that, it is a no-go.

5
ответ дан 18 December 2019 в 06:03
поделиться

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

7
ответ дан 18 December 2019 в 06:03
поделиться

It sounds like your group is not offering the solutions that you have considered in a well documented format, otherwise corporate would not be shoving decisions down your throat. If you have a documented process for development, corporate might want to discuss changing the process with you, but as soon as you say, "this change would break our process and we would have to retool our development workflow", they will see the pain of the $$ in reworking the process and most likely back off. That said, once your process is documented, you should internally be ruthless about trying to make it more efficient and cost effective, and have an open mind about corporate's suggestions.

1
ответ дан 18 December 2019 в 06:03
поделиться

I do many things that peg my processor at 100%. Compiles certainly achieve this. Now imagine having to share that processor with 10 other developers. The loss in productivity will become quite apparent. If you have a multi-core PC, this won't be as painful. Get an Intel i7 and you probably won't even notice it when 8 people are logged in. Most programs (including my compiler) can't use more than 1 processor anyway.

That said, it's a viable solution to reduce costs. I used to work at a company who has since switched to these dumb terminals. It works fine. My university had HP UNIX machines that were dumb terminals. They logged into a server that split up the processor ownership among however many people were logged in. What people would do is log into a server and check the number of people logged in. If there were too many, they'd search for the next one, because build times are noticeably slower. I'd never log into the easy to remember server names. =)

It definitely works, but also reduces productivity due to longer build times, especially when multiple people are building at the same time. Since productivity is such a difficult thing to quantify, it might be hard to argue your point.

0
ответ дан 18 December 2019 в 06:03
поделиться

Regardless of performance, at my company we are moving to laptops as developer machines. The main advantage is that developers can bring their computers to meetings, conferences, etc. Also being able to sit next to a colleague when you're helping him with a problem, and having your own development environment available, is very valuable.

0
ответ дан 18 December 2019 в 06:03
поделиться

Graphics acceleration might also be an issue if you need to do anything with animation, video, or image editing. You can't really test video playback through an RDP session since the framerate and/or color depth isn't high enough.

0
ответ дан 18 December 2019 в 06:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: