Bir şey eksik olmalıyım.
Bölgemde bir programcı çalıştırmanın maliyeti saatte 50 ila 100 dolar arasındadır. Üst düzey bir makine sadece 3.000 $ 'dır, bu nedenle her üç yılda bir gerçekten harika bir bilgisayar satın alma maliyeti 0,50 $/saattir. (3000 $/(150 hafta * 40 saat))
İhtiyacınız a üst uç bir makineye mi ihtiyacınız var? Hayır, buradaki 3000 dolar, beklediğim miktarı değil en çok harcanabilecek miktarı temsil etmektir. Bu, kabaca bir üst uç iMac veya MacBook'un (17 inç) maliyeti.
Diyelim ki daha ucuz bilgisayarlar satın alarak her üç yılda bir 2000 $ tasarruf edebilirsiniz ve ortalama geliştiriciniz 60 $ kazanıyor. (Bunlar, fasulye sayaçları sunabileceğim en hayırsever numaralardır. Yalnızca 1000 dolar veya 750 dolar tasarruf ederseniz, sadece davamı güçlendirir.) Bu ucuz bilgisayarlar günde sadece 10 dakika üretkenliğe mal olursa. (Hiç de değil, eminim makinemin bana bundan daha pahalıya mal olduğunu.) O zaman 3 yıl içinde 125 kayıp saat 7500 $ kaybına neden olur. Günde 1 dakikalık bir kayıp (750 $), 1250 dolarlık net bir kazanç sağlayacak ve bu da zayıf moralin maliyetini zorlukla dengeleyecektir.
Bu bir "kuruş bilge ve pound-aptal" bir durum mudur, yoksa soruyu aşırı basitleştirdim mi? Yazılım geliştiricilerinin mükemmel donanıma sahip olması için neden evrensel bir anlaşma ('kurumsal' bile) yoktur?
Edit: Arkadaşlarımı kıskandıracak hızlı performans çığlık atma arzusundan ve/veya bir SSD'den bahsetmediğimi açıklığa kavuşturmalıyım. Normal uygulamaları yüklemek için çok az RAM) olan makinelerden bahsediyorum, bu da normal uygulamaları önyüklemek ve açmak için yaklaşık 20 dakika süren donma, yeniden başlatma ve (abartı yok) yol açar. Pazartesi. (Hafta sonları hariç kapatmam.)
Aslında yakında yeni bir makine edinmeyi planlıyorum ve işleri biraz geliştirecek. (Burada 2011'de 2GB'dan 3GB'a kadar RAM'e gideceğim.) Ancak yeni makine mevcut standartlara göre vasat olduğundan, emeklilik tarihinden önce de kabul edilemez olmasını beklemek mantıklıdır.
Cevap vermeden veya yorum yapmadan önce bekleyin!
Birçok şirket bu konuda kanıtlanabilir.
Ciddi anlamda. 10.000 teknoloji yöneticisine "Diyelim ki Danica Patrick'e 100.000.000 dolar ödediniz. Indianapolis 500'ü bisiklet sürerek kazanabileceğini mi düşünüyorsunuz?" Diye eminim, onlardan biri "Evet" demeyecektir.
Yine de, aynı yöneticilerin iyi bir yüzdesi, yüksek ücretli yazılım geliştiricilerinin, iyi araçlarla olduğu kadar bok araçları ve çalışma koşulları ile de verimli olması gerektiğini düşünüyor gibi görünüyor - çünkü elbette, bu tembel, kusursuz programcılara ödeme yapılıyor çok para ve bu bisikleti daha hızlı pedal çevirebilmelidir.
Şimdi, tam olarak iyi araçların ve çalışma koşullarının oluştuğu, yapılacak işe bağlıdır. Linux çekirdeğini kodlayan insanlar, web sitesi tasarımcılarından farklı donanım türlerine ihtiyaç duyarlar. Ancak şirket bunu karşılayabiliyorsa, insanlara mümkün olduğunca üretken olmak için ihtiyaç duydukları şeyi almamak çılgınca.
Çalıştığım bir şirket, başta C olmak üzere 9 GB kaynak kodu tabanına sahipti ve en çok ihtiyaç duyduğumuz şey hızlı inşa edildi. Ne yazık ki, çoğunlukla beş yıl önce vasat olan donanımlarla çalışıyorduk, bu yüzden insanlar şu anda üzerinde çalıştıklarından çok daha fazlasını inşa etmek konusunda anlaşılmazdı ve bu da düşük üretkenlik, kalite sorunları ve kırık yapılar yoluyla para kazandı. . Şirketin donanımı yükseltmek için parası vardı, ama garip bir şekilde cimri idi. Geçen yaz 100 milyon doları aştıktan sonra işten ayrıldılar, çünkü en büyük iki müşterileri defalarca kaçırılan son başvuru tarihlerinden sonra onları bıraktı. Bir kez bizden verimliliği artırmanın yollarını önermemiz istendi; OP'nin yaptığı gibi aynı fayda-maliyet analizini sundum. Yönetim reddedildi çünkü "Bu yanlış olmalı - muhtemelen bu kadar aptal olamayız" dedi, ama sayılar yalan söylemedi.
Çalıştığım başka bir şirketin programcılar için iyi bilgisayarları vardı, ancak herkesin bölümleri olmayan büyük bir kalabalık alanda küçük küçük masalarda çalışmasında ısrar etti. Bu bir sorundu çünkü çoğumuz hassas prototip donanımı ile çalışıyorduk. Masalarımıza koymak için çok az yer vardı ve insanlar yürüyüp fırçaladılar ve yere vurdular. Ayrıca VC parayla) 47 milyon dolar para harcadılar ve bunun için gösterecek hiçbir şeyleri yoktu.
Sadece kötü araçları ve çalışma koşullarının bu şirketleri öldürdüğünü söylemiyorum. Ama birisine çok para ödediğini ve daha sonra kötü araçlarla ve çalışma koşullarıyla üretken olmalarını beklediğimi, gözyaşlarıyla bitmesi muhtemel olan iş için temelde mantıksız bir yaklaşım için bir "kömür madeninde kanarya" olduğunu söylüyorum.
Deneyimlerime göre, programcılar için en büyük verimlilik katili dikkat dağılıyor. Benim gibi, çoğunlukla derlenmiş dillerle çalışan insanlar için, bunun için büyük bir cazip yavaş inşa edilir.
"Oluştur ve çalıştır" düğmesine bastığımda, beş saniye içinde test yapacağımı biliyorsanız, bölgeyi ayırabilirim. Beş dakika olacağını bilersem, kendime bir zamanlayıcı ayarlayabilir ve başka bir şey yapabilirim ve zamanlayıcı kapandığında test etmeye başlayabilirim.
Ancak ortada bir yerde, blogları ve P.SE'yi okumak gibi sıkıntılara yol açan, zaman kaybetmeye yönelik faaliyetlerin kötü hendekleri var. Danışman olarak ücretlendirdiğim oranlarda, beni o hendekten uzak tutmak için müthiş özelliklere sahip donanıma para atmak benim için değer. Ve pek çok şirket için buna değeceğini de sanırım. Bu sadece insan doğasıdır ve tüm primatlarda ortak normal zayıflıkları kabul etmeyi ve bunlara uyum sağlamayı insanüstü kendi kendini kontrol etmeyi beklemekten çok daha yararlı buluyorum.
Gerçekte, bir maliyetin görünür ve ölçülebilir olduğunu, diğer maliyetin de olmadığını öneririm.
Donanım kanamasını bütçeden geliştirici başına haftalık 1000 $ 'a kadar bile yükseltmezse, teknoloji departmanı dışında hiç kimse (yukarıda okuyun) bunu görmez. İş hala daha düşük bir hızda yapılıyor. Teknik departmanda bile, bu rakamın hesaplanması çok sayıda kanıtlanamayan varsayımlara dayanmaktadır.
Ancak bir geliştirme yöneticisi, özellikle 50'den fazla geliştiriciye sahip bir şirkette, geliştirici başına 3000 $ talep ederse, bu çok fazla gerekçe gerektirir. Bunu nasıl yapıyor?
2 sentimi işveren tarafından buraya koyacağım ... aynı zamanda bir geliştirici.
Düşük uçlu makinelerin işe yaramaz olduğunu, ancak üst uçlu makinelerin aşırı dolu olduğunu kabul ediyorum.
Üst düzey makineleri almamanızın birkaç nedeni vardır:
Özetlemek gerekirse, iyi bir dişli ve iyi bir takım olması gerekir, büyük bir fark yaratır, ancak üst uç makineleri "genel geliştirici" için gerçekten haklı değildir.
... ah, ve şimdi siz düzenlemeyi okudum ve bundan bahsettiğiniz şey, şimdi yazdığım için yukarıdakileri bırakacağım ... Evet, makineniz takım için yetersiz.
Orta menzilli bir makineyi açıklığa kavuşturmak için
"Üst uç" makineler ve "neredeyse üst uç" makineler arasındaki verimlilik farkı göz ardı edilebilir. Fiyat farkı önemlidir.
Tüm geliştiricilerin aynı HW ve SW görüntülerini kullanması yerine farklı makineler için BT desteğinden bahsetmiyoruz (her yeni işe alım için bir üst uç makine satın alırsanız yapamazsınız, üst uç her seferinde farklı). Ayrıca, geçen yılın zirvesine sahip olan insanlar yükseltmek isteyecekler, çünkü bir sonraki acemi küpün onlardan "daha iyi" bir makinesi var ve onlar çok daha önemli, değil mi?
Gerçekten ihtiyaç işiniz için en üst düzey makine değilseniz, parayı atmak için hiçbir neden göremiyorum.
Çünkü çoğu işveren, geliştiricilerin nasıl düşündüğünü, davrandığını veya çalıştığını anlamıyor. Ya da, en iyi araçlar verimliliği arttırırken şirketten nasıl tasarruf sağlayabilir. Bu, Joel Testi'nde bir puan kaybına yol açar, "paranın satın alabileceği en iyi araçları" sağlayamaz. Bu aynı zamanda verimlilik kaybına da yol açar ve iş tatmini. Tek yolu bu. Belki bir gün kendi şirketinizi kurabilir ve 13/13 puan kazanabilirsiniz. O zamana kadar işvereninizle önceden sorular sorun, böylece işe başlamadan önce ne bekleyeceğinizi biliyorsunuz.
Mevcut durumunuza gelince, dinlediklerini ve güvendiklerini düşünüyorsanız, tartışmayı gündeme getirin. Size bir yükseltme yapıp yapmayacaklarına bakın. Çalışmak için çift 50 "monitör ile bir hat teçhizat üst olsaydı biraz daha uzun çalışacağımı biliyorum. Beni matrise yapıştırın.
Bir Toyota Camry sizi oraya götürdüğünde insanların bir Mercedes CLS istedikleri aynı sebep. Elbette, yeni bir makine ile sadece birkaç saniye daha derleme zaman aşımı sıkabilirsiniz, ancak görünümler önemlidir.
Matematiğiniz, şirketin içine ve dışına sürekli donanım akışını yönetmek için gereken süreyi içermiyor gibi görünüyor - şirketinizin boyutuna bağlı olarak ekstra bir BT adamı veya iki tane alacak, bu yüzden başka bir 50-100 dolar/yıl sayılarınızın üstünde. Ayrıca, bilgisayarınızı değiştirdikleri gün verimliliğinizi kaybedersiniz. Eğer özel IT personelinden mahrum kalırlarsa, yedekleri yapmanız ve geri yüklemeniz gerekecektir, muhtemelen bu süreçte bir veya iki gün kaybedersiniz. Başka bir deyişle, düşündüğünüzden biraz daha karmaşık olduğunu düşünüyorum.
Argümanınızla ilgili bir sorun nakit akışıdır. Eğer paraları yoksa, mesele tartışmalıdır. Diğeri yatırım getirisidir.
Bu, çalıştığınız şirketler için geçerli olmayabilir. Bazı şirketler yüksek kaldıraçlı ve/veya nakit olarak fakirdir. Açıkladığınız tasarrufları daha fazla widget veya yazılım satacak bir şeye harcamayı tercih ederler. Üretimdeki kazancınızın diğer alanlara eşit bir yatırımdan daha ağır bastığını göstermelisiniz.
Bir yazılım şirketi bakım modundaysa ve daha fazla satışa ihtiyaç duyuyorsa, parayı satış ve pazarlamaya harcamaktan daha iyi bir getiri olabilir.
Bence, sizin durumunuzda, paranın bir programcıya şirketin başka bir alanından daha iyi harcanması gerçeğini ele almanız gerekiyor.
Maaş alıyorsanız bu tartışmaya dikkat edin. Onlar sadece farkı telafi etmek için daha çok çalışmanızı isteyeceklerdir;)
Bu argümanı dizüstü bilgisayarlardan masaüstlerine geçmek için yaptım. Herkesin masaüstünde olması gerektiğini ve evde bir bilgisayara ihtiyaçları varsa, onları da bir tane almasını söyledim.
İyi bir bilgisayarın hız avantajları, özellikle de gerçekten eski donanımdaki çökmeleri kaldırırsanız, göz ardı edilemez.
"Çizginin üstüne" ve "çizginin üstüne" ile ilgili - Ben çizginin üstüne yakın her zaman olması gerektiği yerde olduğunu tartışmak. "Hattın en üstünde" - yerine 2 yılda bir yükseltme ve ortalama olarak daha iyi bir donanım ile sonuçlanabilir.
Cyberpowerpc.com'u tavsiye ettim ve şirketim onlardan bir PC satın almama izin verdi (pazarlama görevlisi), ancak destek ekstra maliyete değdiğinden Dell'den tüm programcıları aldılar. Bir düşünün ... Dell'den bir bilgisayar satın almak için 1,5-2x, ancak PC'nizin çöküp hızlı bir şekilde çözemediğinizi takdir edersiniz, para kaybedersiniz.
Yavaş bir bilgisayar tamir etmediğiniz kırık bir PC gibidir.
Bir bütçe sorunu da var - genellikle geliştiriciler, söz konusu geliştiriciler için donanımdan farklı bir bütçeden ödeniyor ve donanım bütçesinde yeterli para olmayabilir.
İlk olarak, sorulan soruyu cevaplamak için:
Math'ı yapamazlar ya da yaparlarsa, bir şekilde kendileri için geçerli olmadığına inanırlar. Donanım ve personel için bütçe ve muhasebe ayrıdır. Karar alma pozisyonundaki insanlar konuyu hiç duymadılar ve bir sorunun var olduğunun tamamen farkında değiller.
Şimdi asıl soruya: "Bu durumu nasıl ele alırım?"
Bu aslında bir iletişim sorunu. Sorunu açıklarsınız ve muhatap “parlak yeni oyuncaklar istediğimiz bla bla bla” duyar. Sadece anlamıyorlar.
Ben senin yerinde olsaydım, "Eski bilgisayarları karşılayabilir miyiz?" Başlıklı kısa bir video hazırlardım: Tipik bir iş istasyonunun fotoğrafları. Sağ tarafta, "maliyet" başlıklı boş bir alan.
Hala güç düğmesinin. Aşağıda: "Bilgisayarın başlatılması. 20 dakika". Boş alanda, "Bilgisayarı başlatma = 40 $". "Açılış IDE = 5 $", "Bilgisayarın donması = 80 $", "ürünü oluşturma = 600 $"
Hızlı bir şekilde ilerleyin ve sayıları eklemeye devam edin ve ardından yeni bir bilgisayarın maliyetiyle karşılaştırın ve "Bu video evde" profesyonel "gelişimden daha iyi performans gösteren 500 dolarlık mağazadan satın alınan bir dizüstü bilgisayarda üretildi. makineleri mevcuttur.
Sorunu yükseltmenin sizin için sorunlara neden olacağından endişe ediyorsanız, sadece kendi dizüstü bilgisayarınızı da çalıştırabilirsiniz.
Bu sorunu aşmanın bir yolu yoksa, belki de başka bir iş bulmayı düşünmelisiniz.
İndirimler, satın alma sürecinde de büyük rol oynamaktadır.
Tükürme topu (gerçek sayılar değil): 100 makine @ 1000 w /% 15 indirim = 85.000
% 10 indirim ile 1000 makinede 90 makine = 81.000 +% 5 indirim ile 2000 makinede 10 makine = 19.000 => 100.000
Daha önce de belirtildiği gibi, "özel" makinelerin desteklenmesinde ek maliyetin karışıma eklenmesi gerekmektedir.
Şahsen, 'küçük' bir şirkette çalışırken en azından bir OK geliştirme bilgisayarına sahiptim, ancak Büyük şirketler söz konusu olduğunda, programcılar, bütçeye sahip bir proje yöneticisine kıyasla bir düzine düzine.
Özellikle harika fikirleri olanlardan biriyse okuyun: bütçe onaylandı.
'İyi' fikir ne olursa olsun, o kişi “Yeni” daha iyi 'ürünü ”uygulamak için gerçekten iyi programcılara ihtiyaç duyacaktır, böylece programcıya gereken fiyatı ödeyecektir.
Yeni geliştirme bilgisayarını almak, benim ilgilendiğim kadarıyla, diğer bütçeyle aynı 'departmandan' geçmez, ancak iyi ödeme alırsanız kötü koşullar altında çalışmayı bekleyebilirsiniz :-) Son işim: Dell E5xxx + Bir LCD 1280x1024 ...
Burada, kullanmak istediğim makineyi oldukça sıkı bir bütçe içinde belirtmem istendi. Ağır ağır olmamasına rağmen çalışan yarım bir sistem geliştirmeyi başardım.
Aslında burada OP ile aynı yönde düşünüyordum, burada oturduğum zaman derleme veya yük beklerken pencereden dışarı para. Ben ilerlerken aynı zamanda bir kahve almak için harcadığım zamanın ya da yazıcıya yürüdüğüm zamanın pencereden para olduğunu da anlıyorum.
Beklemek zorunda olduğum küçük miktarlar için endişelenmek yerine, daha ucuz bir geliştirme sistemi ile gittik, kendi alışkanlıklarıma baktım ve özellikle yararlı bir şey yapmadan harcadığım daha büyük zamanları geliştirdim (ahem. .. stackexchange, yararlı ve önyükleme için üretken, ve ben yapışmasını !! :-)) Tabii ki aralara ihtiyacımız var, ama bu "molalar" dışında bir zamandır.
Yani bir bakıma, genel anlamda, bu soru iş verimliliğinin "erken optimizasyonu" olabilir. Göç maliyetleri, toplu satın alımlarda kaybedilme vb. İle ilgili birçok harika nokta.
Programlarınızı yeniden başlatmak/açmak için bir mola sırasında zaman kaybettiğiniz özel durumunuzda, evet, üretkenliğiniz ciddi şekilde bozulduğundan, iyi bir donanıma yükseltmek çok mantıklı, yarım iyi bir i3 sistemi 4 GB RAM 500 $ civarındadır ... Eminim bu maliyeti telafi etmek uzun sürmeyecektir.
Büyük bir faktör, tipik bir büyük şirketteki BT'nin dizüstü bilgisayara koyma eğiliminde olduğu bloatware türüdür. Evde bir Windows 7 makineniz ve sadece bir antivirüsünüz varsa, standart bir SSD-3GB-Dört çekirdekli sistem 10 saniyeden daha kısa sürede açılır. Bunu şirketimin koyduğu bloatware ile karşılaştırın ve önyükleme yapmak sonsuza kadar sürer. İşletim sistemini tamamen zapping ve işleri hızlandırmak için kendi kurulumlarını kullanan bazı insanlar gördüm. Çok büyük bir InfoSec ihlali olmasına rağmen, bu bir ölçüde bir sorunu çözdüğünü düşünüyorum. Ama cidden - 10 dakika ?!
Yeni donanım satın almak para, para karar vericileri içerir ve şirketiniz yeterince büyükse genellikle geliştiriciler değildir. Tabii ki istisnalar ...
@Rob'un açıkladığı gibi, en iyi donanımını almamanızın birçok nedeni vardır. Şirketinizin, ne tür bir donanımın satın alınacağını tanımlayan bir politikası olabilir, çünkü her zaman bürokraside kanayan bir politikaya sahip olmak zor. Birçok yönetici kişisel gereksinimlerinize uyarlama zahmetine girmez.
Kötü iletişim, riskten kaçınma ve diğer kusurlar:
Gerçekten berbat bir donanıma sahip olduğunuzu düşünelim, bu koşullarda çalışmak artık mümkün değil ve bu konuda bir şeyler yapmak istiyorsunuz.
Şimdi müdürünüzü ikna etmek zorundasınız. Genellikle, proje yöneticinizi yöneticinize patronuna kimin rapor verdiğini söyleyen ikna etmelisiniz ve o adamın sorunlarınızı gerçekten anladığından emin olmanız gerekir.
İletişim becerilerini ve yönetimin teknik anlayışını içerir. ).
İkinci adım, eğer yeterince şanslıysanız, yönetim bunu düşünecektir. Ne alırlar?
Bu, gelecekte başka bir şey yapmanıza izin vermek için nihai bir fırsat için para ve işinizi gerçek bir şekilde planlamaları gerektiği anlamına gelir ve bu bir yatırım değil, aynı zamanda bir risktir .
Ne yazık ki, birçok yönetici riskten kaçınma . Sorununuzu anlamada ne kadar zayıf olduklarından bahsetmiyorum bile, daha riskli görünüyor. Bazıları, birisinin ilk önce uygun donanımı satın almadığını fark etmekte zorlanabilir.
Dahası, yönetim genellikle uzun vadede ne anlama geldiğinin daha kısa bir tanımına sahiptir. Bir çeşit aylık bütçe optimizasyonu yapmaları istenirse, size yeni donanım satın almak için doğrudan finansal teşvikler değil bile olabilir! Ve altı ay sonra kurtarabileceğiniz iki haftayı umursamazlar.
Tabii ki her zaman bu kadar uzun süre beklemek zorunda değilsiniz bir gün içinde harika şeyler yapın !
Dinleyen, sorunlarınızı anlayan, makul riskler almaya ve serbest zamanı kullanmanın yaratıcı yollarını keşfetmenize izin verecek kadar size güvenmeye hazır olan akıllı ve açık fikirli yöneticileriniz varsa, bu daha iyi çalışır.
Her zaman böyle değil: Kendimi satın almak yasakken (30 €) ikinci ekranımı bağlamak için bir grafik kartı almak için 3 ay bekledim, fazladan 500GB HDD olmadığından 3 gün kaybettim, düzenli olarak birkaç saat beklemek zorunda kaldı yavaş 100Mbps ağ nedeniyle istemci için veri hazırlama. 2GB koç için birkaç kez sorduktan sonra, kendim satın almam ve bu teknik sorunlarla yönetimi rahatsız etmeyi bırakmam söylendi. Ve biz fiyat ödemeye hazır büyük bir endüstriyel müşteri için bilimsel hesaplama yapıyoruz ..
Büyük kurumsal kuruluşlarda, bu tür kuruluşların sabit, merkezi olarak yönetilen masaüstü ve dizüstü bilgisayar özellikleri ve yapılandırmaları olması nedeniyle donanım seçimi önceden tanımlanmıştır ve kilitlenmiştir. Bunların özellikleri, "tedarik" ve "destek" hususlarının bir kombinasyonu tarafından ezici bir şekilde belirlenecektir. Örneğin, şu anda çalıştığım şirketin 100.000'den fazla çalışanı var ve "tek beden" in hepsine uyuyor ve bu büyüklük öncelikle reklamlar tarafından yönlendirilecek. Bu tür politikalar yürürlüğe girdikten sonra kilitlenirler çünkü destek hizmetleri genellikle yazılımı "standart" makine spesifikasyonuna göre test etmek ve dağıtmak için önemli miktarda zaman harcar. Bu tür ortamlarda "geliştirici" üretkenliği hakkındaki tartışmalar sadece sağır kulaklara düşer; üretim hizmetleri, daha üretken olmaları temelinde küçük bir grup için istisna oluşturmayacaktır; eğer bunu yaparlarsa, sapma talepleriyle hızlıca batarlar ve her durumda destek maliyetini mümkün olduğunca düşük tutmaya teşvik edilirler. > 1 masaüstü/dizüstü bilgisayar yapılandırması destek maliyetini artırır. Birincil "ürün" in yazılım mühendisliğinin bir sonucu olduğu bir organizasyonda, bu tür argümanlar geçersizdir, ancak gerçek şu ki çoğu kuruluş DEĞİLDİR ve kilit sürücü destek maliyetlerini düşük tutmaktadır.
Matematik bir yana, tüm kullanıcılarınızın en üst düzey makinelere sahip olma olasılığı yoktur. Fiyat ortalaması olan bir şeye daha yakından belirtilen bir makinede geliştirme yapmak, geliştiriciye kullanıcılarının deneyimini (ve acılarını!) Daha yakından tanıyacaktır.
KG departmanınızda min-spec bir makine olabilir, ancak ne sıklıkta kullanılır? Gerçekçi bir hedef ortam olan bir makinede geliştirme yapmak, ekipleri daha erken düzeltmeye iten sorunları (yanıt vermeme, düşük performans, bu yavaş performans nedeniyle yarış koşulları, vb.) Erken ortaya çıkarır.
Çünkü en iyi donanım 'en iyi' geliştiricileri yapmaz! Bununla birlikte, şirket programcının çalışmasını engelliyorsa suçlamaktır.
Ancak, donanım geliştiricinin çalışması için yeterliyse, şikayet edecek bir şeyi yoktur.
Ayrıca, 'en iyi' donanıma sahip olmanın ve sadece kodlamak için bir IDE - kaynak israfını bu şekilde kullanmanın anlamı yok.
"Düşmanla tanıştık ve o biziz." - Pogo
Her iki şekilde de bu soruyu dilimliyorsunuz - kolektif grup "programcılar" taşıyor doğrudan sorumluluk iş yeri.
İşletme finansı, birbiriyle çelişen sayısız motivasyon ve kaldıraçla inanılmaz derecede karmaşıktır. Finans departmanınızın şu anda ne izlediğine dair somut bilgi olmadan (vergi kaçınma, üç aylık harcamaları yönetme, gelecekteki sermaye masraflarını artırma, FAVÖK'ü veya radarında başka herhangi bir şeyi artırma), gerçek maliyetlerle ilgili herhangi bir tartışma önemsizdir. Yorumlanan bir dile geçiş yapmak üzere olduğunu bildiğiniz kod için derleyici optimizasyonları konusunda sizi uyaran bir pazarlama personeline nasıl tepki verirsiniz? Programcılar, sahip oldukları araçların doğrudan kar hanesine nasıl katkıda bulunmadığını belirli terimlerle gösteremezlerse, işletme mümkün olduğunca az harcama yapmak doğrudur. Ayrıca, kaynak tahsisinin karşı karşıya olduğu gerçekleri anlayabilmemiz için işletme finansmanını dinlemeyi de öğrenmeliyiz.
Grup olarak işyerindeki varlığımızla daha iyi araçlar istemekten, en harika teknik raporu yöneticilerimize göndermekten ve hatta internette yayınlamaktan çok daha yüksek sesle oy kullanıyoruz. Çalışanlarının ya haklı olarak ihtiyaç duydukları araçlara sahip olmalarını sağlamak ya da şu anda neden olmasın diye davayı anlamak için bir kültür yaratan kuruluşlar var. Rekabet baskısı bunu işverenlerin çoğundan gerektirene kadar, ancak inandığımız işverenleri arayarak oy kullanabiliriz.
Her birimiz ya öz için önemli bir şey yapmalıyız, ya da gitmesine izin vermeliyiz.
CFO tarafı.
Şirketin çok fazla masrafı var. Her departmanın daha iyi yapabilmesi için daha fazla $ 'a ihtiyacı vardır ve her departmanda masraf bir zorunluluktur.
kullanılabilir $ 'ı kullanmanın en iyi yolunu seçmeye geldiğinizde şunları dikkate alırsınız:
Günde 10 dakika israfı çoğu finans departmanında işe yarayacak bir gerekçe değildir. Çoğu ar-ge ekibi gün boyunca zevk aldıkları hiçbir programlama faaliyetinde çok daha fazla israf yapar. Bölümünüzdeki tüm atık grafiğini çizelim ve verimliliği artırmak için neler yapılabileceğini görelim.
Eskiden büyük bir şirkette geliştirici, sonra da bir girişimdi. İşte iki sentim:
Şirketiniz kendi ekipmanınızı getirmenize izin veriyorsa, sadece kendi TL'nizi kullanın ve RAM ve LCD monitörü yükseltin. Neden soruyorsunuz?)
İşi bıraktığınızda monitörü her zaman yanınıza alabilirsiniz (kişisel mülkünüz olarak net bir şekilde etiketlemeyi unutmayın). Yukarıdaki tarifi yaptım (yükseltme RAM ve kendi LCD monitör) önceki işlerimde - ve mevcut işimi kullanarak.
Tüm işverenleri bir sepet içinde nasıl bir araya getirebileceğinizi görmüyorum. Birkaç işveren için çalışan ve danışman olarak çalıştım ve her zaman ihtiyaçlarım için fazlasıyla yeterli olan bir donanım aldım - mevcut iş için ilk önce 4 gb ram ve Win64 ile parlak parlak yeni bir HP dört çekirdekli gün - çizginin üstünde değil, ama çok yeterli - (Delphi XE ve XMLSpy'ı ana geliştirme araçlarım olarak kullanıyorum) - aslında çok güzel Gittim ve aynı makineyi evde aldım. (Belki de o kadar üretken değilim! LOL.)
İyi bir donanım almazsanız, sormayı deneyin - ve isteyemeyeceğinizi düşünüyorsanız, muhtemelen doğru yerde çalışmıyorsunuz çünkü geliştiricileri bir kaynak olarak değil, bir yükümlülük.
Dolayısıyla, sorunuzun cevabı şudur: Bir geliştirici için yeterli donanım sağlamayan ve/veya vermeyi reddeden şirketler, geliştiricilerine bir sorumluluk - dış kaynak kullanmayı tercih ettikleri ve hiç ilgilenmedikleri işler olarak gören şirketler.
Parayı kimin üstesinden gelir. Daha büyük organizasyonda BT'ye yıl için 1 milyon dolarlık bir bütçe verilir. Bu, destek maaşlarını, sunucuları vb. İçerir. Tüm kaynakları arasında yaymak zorundadırlar. Aynı tür bilgisayarın x sayısını elde etmek için Dell veya IBM gibi satıcılarla anlaşmalar yapıyorlar. Bu, müşteri desteğinden programcılara herkese verir. Ayrıca, sınırlı bir model setini korumak zorunda kaldıklarında destek vb. Onlar da programcı değiller, bilgisayarlarla ilgili programcı olmayanlarla çok sayıda tartışmam oldu. BT yöneticilerimin bir kez yeni bir HD'ye geçmesini istediğimde, CEO onları satın al ve patla, herkesin sanal makineleri çalıştırmak için yeterli disk alanına sahip olduğunu söyledi.
Aslında patladım ve patronumu dışarı çıkardım çünkü IT bir dizüstü bilgisayarım olduğu için 19 inçlik ikinci monitörü alıp götürecekti. Beni de bu konuda sertleştirdiler ve başkaları 15 yaşına geldiğinde bana 13 "bir model verdiler. BT'de siyasete başka bir sorun ki, bu bazen bize karşı onları düşünüyoruz.
Asker tarafından tanımlanan perspektiften, soru tam anlamıyla. Ancak, donanımı güncel tutmanın daha fazla maliyeti vardır.
Ayrıca dikkate alınması gereken maliyetlerden bazıları:
Bazı durumlarda, bunlar donanımın maliyetinden 2-5x daha büyük olabilir. Daha karmaşık yazılım lisansları varsa daha da fazlası.
Genel olarak bu maliyetlerin ölçeği şirketin büyüklüğüne veya organizasyon yapısının karmaşıklığına bağlıdır. Satın alma gücüne doğrudan erişimi olan daha küçük ekipler bu maliyetleri düşük tutabilirken, daha büyük bir organizasyonda bu maliyetler çok yüksek olabilir.
Basitçe söylemek gerekirse, satın alma kararları genellikle proje yöneticileri yerine fasulye sayaçları (Muhasebeciler ve orta düzey yöneticiler) tarafından verilir.
Birçok insan potansiyel nedenler vermiştir ve hepsi bir durumda bir faktördür, bu yüzden tek bir geçersiz kılma durumu yoktur. Büyük ölçekli ekipman satın almak, programcılar için verimlilikten biraz para kaybettikleri, ancak diğer alanlarda para kazandıkları anlamına gelebilir.
Yine de, genellikle sadece bir bütçeye gelir. Bütçeye uymanız gerekiyor ve hepsi bu kadar.
Kanımca, bir şirketin geliştiricileri sağlam iş istasyonları ile kurmaya devam edebileceği savunulabilir iki itiraz var. Birincisi nakit krizi geçiriyorlar. Bu kısa ömürlü olsa iyi olur, yoksa şirket uzun süredir devam eden bir sorun olmayacaktır. Böyle bir şirket için çalışıyorsanız özgeçmişinizi güncel tutmalısınız.
Diğeri ise, organizasyonlarının yazılım geliştirme kapasitesinde şişe boyunlu olmamasıdır. Yani, yazılım geliştirme çıktısının kalitesinde veya hızında bir artış, kârlılığı artırmayacaktır. Şirketin ana işi yazılım satıyorsa, bu neredeyse imkansız olacaktır. Yazılım ana işi değilse ve üzerinde şişe boyunlu değilse, en zayıf ekip üyelerini transfer ederek veya bırakarak yazılım iş gücünü azaltmaya çalışıyor olmalıdırlar. Kötü ekipman tedarik etmek, takımlarının boyutunu karşı taraftan azaltacaktır, korkarım.
Çünkü tipik teknoloji start-up'ları dışında bir çok şirket rock yıldızlarını işe almakla ilgilenmiyor. Sadece iş yapabilen birine yatırım yapıyorlar. Öyleyse nasıl çalıştığınız umurumda değilse, kullandığınız ekipmanı neden önemsemeliler? Hala 15 inç CRT kullanan yerlerde çalıştım ve herkes gayet iyi. Bazen böyle sorular okuduğumda, insanların dünyadaki herkesin iyi bir başlangıç için çalışmadığını fark edip etmediklerini merak ediyorum.
Geçmişte donanıma sahip şirketler için çalıştım. Berbat ve ikna etmeye ihtiyaçları varsa, savaşın hiç bitmeyen bir olasılık olması muhtemeldir.
Mevcut en iyi araçları kullanmayı taahhüt eden şirketlerin nadir olduğu, ancak var olduğu ortaya çıkıyor; Ben biri için çalışıyorum. Dört çekirdekli 17 "2011 MBP, 8 GB RAM, Vertex 3 SSD, 2 x 24" harici monitörler, ayrıca dört çekirdekli bir masaüstü ve 4 GB Xen dilimim var; ve sessiz ofisler.
Daha az donanıma sahip olabilir miyim? Elbette. Ama sanırım hepimiz orospudan daha övünmeyi tercih ederiz.
Geçen yıl ram'ı 512 MB'tan 1 GB'a yükselttikleri bir ağ şirketinde çalışıyordum. 2010 yılında f ** king CRT monitörlerle çalışıyorduk. En komik kısmı, yöneticilerin donanımı 2 GB ram'a yükseltildi. Neden dünyadaki herkes 2 GB'lık lanet PPT'ler oluşturmak istiyor ve birisinin 1 GB ram ile nasıl uygulama geliştireceğini hiç bilmiyordum.
Bir geliştirici makinesinde 2GB açıkçası utanç verici, ancak bu sorunun çözülmesi 3000 $ 'a mal olmamalı… 100 $ gibi (muhafazakar). Neden her şeyi bir kerede yükseltmek için dava açalım? Akıllı BT departmanları, kullanım ömürleri boyunca makineleri sürekli olarak geliştirmektedir. Sonunda tamamen yeni bir makineye ihtiyacınız var, ancak makineniz Windows 95 için donanım özelliklerini çalıştırmıyor; tipik bir orta menzilli makineye 300-500 $ için yükseltilebilir ve bu yükseltmeler birkaç ay içinde gerçekleşebilir, böylece nakit akışı sorunu olmaz. Muhtemelen yeni bir grafik kartına, ses kartına, USB bağlantı noktalarına, DVD yazıcıya vb. İhtiyacınız yok, neden şimdi onlara ödeme yapıyorsunuz? Yeni bir araba satın almak gibi bir şey çünkü AC'niz bozuldu.
Yeni makineler, daha yeni teknolojiler daha yeni sorunlar demektir. Her şirketteki herkes bir tekniker değildir ve her şirket, insanları eğitmek ve sorunları 7/24 ele almak için BT kaynaklarına sahip değildir.
Evet, belki de kendi kişisel masaüstünüzde çalışan bir serbest programcıysanız, her gün 10 dakikalık ekstra üretkenliği sıkmak için bir teçhizat üzerinde 1000 dolar üflemeye değer. Bununla birlikte, bu makinelerin yüzlerceini yeni ekipmanlardan dolayı kaybedebilecek üretkenliğe sahip olan kişilere dağıtırsanız, umut biraz daha acımasız görünüyor.
Bence doğru işler için "doğru" araçlar gereklidir. "Doğru" araçlara (donanım, yazılım veya başka türlü) sahip değilseniz, bunun bir çalışanla patronları arasındaki beklentilerin yanlış anlaşılmasından veya yanlış anlaşılmasından kaynaklandığına inanıyorum. Bu hem geliştiriciler hem de şirketin sorumluluğundadır. Beklentiler ne kadar yüksek olursa, "gereksinim" ne o kadar yakın olmalıdır.
Bu, daha fazla deneme senaryosunda daha azıyla yaptığım zaman 8 GB RAM makineleri için "ihtiyaç duyan" birkaç geliştiriciyi bildiğim söyleniyor.
Şu anki şirketimde, geliştiriciler donanım totem direğinde oldukça yüksek. Donanımın, her şey gibi normal bir şirket bütçesine dayandığını ve ihtiyacın isteğe ağır bastığını hayal ediyorum.
Bence, bir geliştirici kendi donanımından sorumlu olmalı, ancak bu tamamen duruma bağlıdır. Basit bir web sitesi için basit bir uygulama yazmanız istenirse, bir metin düzenleyicide oturmak için gelişmiş bir ekipman parçasına ihtiyacınız olmayabilir. Öte yandan, sözleşme programlamasına katılıyorsanız ve bazı yan konserler yapmak istiyorsanız, kendi donanımınızı ve temel yazılımınızı satın almayı ve şirketin o şirketin ihtiyaç duyduğu bireysel API lisanslarını satın almasını düşünebilirsiniz.
Her iki durumda da, her şey bir kontrol ve bakiye meselesidir ve üretkenlikle ilgileniyorsanız, dolarlarınızdan muhtemelen en iyi, bir geliştiricinin zamanları için ne kadar kod koyduğunu izlemek için harcanır. Bir projenin yapılması 10 saat, benzer bir projenin yapılması 5 saat sürüyorsa, bu bir geliştirici sorunu değil çalışanla ilgili bir sorun olabilir.
Bir kez şirket (largish) bize geliştiriciler iyi tüketici sınıfı sistemleri satın almak için tartışmaya çalıştım. Aslında, performans özellikleri Enterprisey sürümüyle karşılaştırılabilir, ancak fiyatın 1/2'si idi. Benim iddiam bu fiyatlarla aslında onlar için yeni bir satın alma oldu (% 75 daha iyi 24 ay süreceği varsayımına göre) kırdı. Bu dizüstü bilgisayarlardan birini almak karşılığında geliştiricinin SW yükü/yapılandırmasından sorumlu olacağı konusunda bir anlaşma (ya da bir şey) imzalaması gerektiğini ve yardım masasının düzeltmesine yardımcı olmayacağını önerdim.
Uçmadı ama argümanlar temel öncül makul, windows dev yaptım ve hepimiz yerel yöneticileri olduğunu düşündüm düşündüm.
Neden olmasın? Çünkü hesap verebilir değil. Her bir saatlik çalışmayı kâr marjıyla tam olarak eşleştiremeyiz.
Bunun için basit bir çözüm, kendi makine güncellemelerini kim öderse geri ödeme olacaktır. Saymanız doğru ise, aynı iş/projede son 2 dönemi (hafta, ay, yarıyıl, yıl veya herhangi bir şey) karşılaştırarak üretim gelişiminden elde ettiğiniz karınızı kanıtlamanız kolay olmalıdır.
Geliştiriciler bir süre boyunca ne kadar ürettiklerini belirleyebildiyse, sorun ortadan kalkar. Çoğu geliştirici yapamaz. Ne de yöneticileri ve hatta daha az finans millet. Çünkü iş çok öznel.
Ancak bu sayıları bir şekilde gösterebilirseniz (yapamayacağımı biliyorum), o zaman zaten maliyet etkin-kendi kendine önyükleme-hayalinizdeki makineye hazırsınız!
Yazarın bakış açısını kaçırmış olmalıyım.
İlk olarak, bir örnek olarak Google, bir çiftlik olarak çalışan eski sunuculara bağlı ucuz, "tek kullanımlık" sabit diskler kullanılarak kuruldu. Tamam, bu abartı olabilir, ancak bkz: http://en.wikipedia.org/wiki/Google_platform#Original_hardware
İkincisi, gvim'i çalıştırmak için fazla CPU veya grafik kaynağı gerektirmez. Yani belki de geliştirme ortamı seçiminiz problemdir.
Üçüncüsü, üretkenliği artırmak için yüzlerce CPU yoğunluğunu azaltan düzinelerce yol var, bu da 2 g RAM veya 3 gig RAM'e sahip olsanız da olmasanız da) çok az bir ilgisi var. Bunu görmek için omzunun üzerinden ortalama bir programcı: örneğin, hafif bir PDF okuyucu için Adobe Suite'e karşı belge; minimum = VM tam yükleme yerine uygulamaları test etmek için; Win Dell makineleriyle paketlenmiş tüm bu başlangıç cinlerini kaldırmak (regedit kullanarak); Outlook'u çalışır durumda tutmak yerine web postasına hafif bir tarayıcı kullanmak; MSFT uygulama sorunlarına yönelik firefox takip çözümlerinde 50 gazilyon sekme açmamak web; vs vs vs .. Yani bu nokta aşağıdakilere kadar kaynar: Bu yazılım tasarım sorununu daha hızlı çözmek için daha fazla Bellek ve Mhz'e ihtiyacınız olduğunu kanıtlayın.
Şirketler kararları geliştiricilerden oldukça farklı olarak alırlar. Çoğu, görev için uygun donanımı sağlayan, onaylanmış satın alma kanallarına, kurulumlardan sorumlu gruplara, testlere, güvenlikle uyumluluklara ve diğer önlemlere sahip mekanizmalara sahiptir. Bu nedenle, donanım özelliklerini değiştiren sorular karmaşık olabilir.
Diğer taraftan, ekipmanı yükseltmek için maaşın% 1'ine eşdeğer harcama önerisiyle CEO'ya geldiğinizi varsayalım. CFO'dan, marjlar ve gelir üzerindeki isabetini bulmasını isteyecek, diyelim ki% 5. Şimdi, şirketin hisse senedi fiyatı üzerinde% 10'luk bir artış yaratabilecek tahminleri kaçırmak ve üst yönetim milyon dolarlık bonuslarını kaybetmek demek. Yeni sürüme geçişin şirketin kârlılığını artırmasını beklemek için iyi nedenler olmadıkça, bu öneri DOA olacaktır. Şirketler her zaman harcamalarını ancak geliri arttırdığı takdirde artırmaya çalışır. Bu, çoğu durumda hem düşük uçlu hem de yüksek uçlu ekipmanın alt-optimal olduğu anlamına gelir.
Hem geliştiricileri hem de şirket yönetimini tatmin etmenin bir çözümü, geliştiricilerin ekipman kirasını ödemelerine izin vermek olacaktır, tipik bir sistem 2 yıl boyunca kiralanırsa 20-200 $/ay çalışacaktır. Bir şirket bir dizi onaylanmış donanıma sahip olabilir ve geliştiricilere standart bir yapılandırma sunabilir veya yükseltilmiş yapılandırmayı seçebilir ve ek rantı maaştan düşebilir.
Yeni programlar geliştiricinin bilgisayarında harika çalışıyor. Bir geliştiriciye 4 GHz 8 çekirdekli bir kutu satın alın ve oluşturduğu uygulama herhangi bir 4 GHz 8 çekirdekli bilgisayarda iyi çalışır. Ancak 2 GHz ve 1 çekirdekli tipik bir müşterinin bilgisayarında ölü bir salyangoz gibi çalışır.
Geliştiriciler, geliştirme makinelerinde işler yavaşlayana kadar özellikler, kod ve dolaylı seviyeler eklemeye devam ediyorlar. Yalnızca yeni donanım için geliştiriyorsanız, en yeni ürünü satın alın. Ancak, mevcut donanımı olan kişilere yazılım satmanız bir tehlikedir.
Bir geliştiricinin bilgisayarı, hedef müşterinin bilgisayarıyla aynı güç düzeyinde olmalı ve belki de hata ayıklayıcı için biraz fazla olmalıdır. Ama daha hızlı değil.