Bugün tüm kullanıcıların İnternet erişimi olduğunu varsayabilir miyiz?


18

İnternet hemen hemen her yerde olduğu için, geliştiriciler olarak tüm kullanıcıların İnternet erişimine sahip olduğunu varsayabilir miyiz? Şimdi kod öyle bir şekilde yazılmış demek değildir, eğer bağlantı yoksa o zaman tüm program hata kodu eksikliği nedeniyle çöküyor. Demek istediğim, programlar bugün kullanıcılarının her zaman internete erişebilecekleri varsayılarak geliştirilebilir mi?

"Bunu varsayarak ne kazanırız?" Diye sorabilirsiniz. Sormamın nedeni, uni'de lisansları kontrol etme biçimi nedeniyle İnternet erişimi gerektiren birkaç program kullanmamızdır (IP adresinizi kontrol eder - kampüste bir adres değilse, kullanmasına izin verilmez). Programın internet erişimi olmadan iyi çalışması gerektiğini unutmayın; sadece lisans kontrolü için gereklidir.

EDIT: Burada masaüstü uygulamaları hakkında konuşuyorum.

EDIT2: Bazı cevaplardan, kullanıcıları etik olmayan yollarla sömürmekle suçlandığımı hissediyorum. Ben değilim değil Bu soru açıklanan kadarıyla onaylamadan - biz uni kullandığınız programlardan bazılarının geliştiricileri bu yapmış çünkü sadece bu konuda soruyorum. Şahsen ben bunu yapmak aptalca ve yanlış olduğunu düşünüyorum.


4
İdeal olarak, lisans denetimi bir sorun bile olmazdı.
alternatif

1
masaüstü uygulaması? mobil uygulama?
Marcie

@Marcie: Ah. Masaüstü uygulamaları demek istedim. Soru güncellendi.
gablin

7
İnternet erişimim olabilir, ancak şirketimin güvenlik duvarı bilgisayarımın bilgisayarınızla konuşmasını istemeyebilir :)
Tim Post

Web erişiminin İnternet Erişimi olmadığını lütfen unutmayın.
MSalters

Yanıtlar:


45

Üç nedenden dolayı kötü fikir. Öncelikle, bu günlerde herkes İnternet erişimine sahip olsa da, temel olarak doğrudur, her zaman her zaman mevcut değildir. Birincil makinem bir dizüstü bilgisayar ve çoğu zaman bağlı, ancak otobüsteyken değil.

İkincisi, ve birincisi ile ilgili, kontrol yönteminizdir. Bir öğrenci programın meşru bir kopyasını alır, dizüstü bilgisayarına koyarsa ve daha sonra kampüs dışında yaşayan bir arkadaşınızla çalışmaya giderse ne olur? Lisans kontrolünüze yanlış pozitif durumun bir halini girdiniz.

Üçüncüsü, ilk etapta lisans kontrolünde etik bir sorun var. Bir kişi bilgisayarına bir program yerleştirmeyi seçerse, bilgisayarının programa geçersiz davranmasına neden olma hakkınız yoktur. Saldırı olarak adlandırılan başka bir bağlamda, sizi her türlü sıcak suya indirebilir ve telif hakkı yasalarımız bu senaryo için özel bir yasal muafiyet yapmak için telif hakkı sahipleri tarafından ele geçirildiğinden, bu doğru olmaz .

Yasaları uygulamak, kolluk kuvvetlerinin görevidir ve özel şahıslar, kolluk kuvvetlerini kendi ellerine almaları (uyanıklık) yönünden çok cesaret kırılır, çünkü her şeyi yanlış yapma eğilimindedirler. (Sadece Sony rootkit'e bakın!)

En iyi eyleminiz, kullanıcının gerçekten gerektiren özellikler için kullanılabilir bir İnternet bağlantısına sahip olduğunu, ancak onsuz alabilecek özellikler için gerektirmediğini ve kesinlikle programı ikna etmesini gerektirmediğini varsaymak olacaktır. gayri meşru bir kopya değil!


2
kendine not: oy sayacı sıfırlandığında oy verin
Inaimathi

Gablin'in aslında böyle bir sistem tasarlamakla ilgilendiğini sanmıyorum, bunu sadece bir örnek olarak kullanıyor (üniversitem de JSTOR gibi web tabanlı hizmetlerle yaptı). Yine de önerdiğiniz her şeye katılıyorum. Internet erişimi gerçekten her yerde değil ...
msanford

2
Msanford'un dediği gibi, kesinlikle böyle bir sistem tasarlamakla ilgilenmiyorum. Ve cevabınıza tamamen katılıyorum - laboratuvarda uzaktan çalışabilmek için evden kampüse VPN yapmak zorunda kalmanız bir kıç ağrısı! Böyle bir doğrulama sistemi tasarlarken ne düşündüklerini anlayamıyorum ve "Belki herkesin internete erişimi olduğunu varsayıyorlardı" diye düşündüm. Dolayısıyla bu soru. Yine, iyi cevap. +1
gablin

26
  • Tüm kullanıcıların kullanılabilir internet erişimi yoktur. Örneğin, küçük ve orta ölçekli şehirler (ve onların banliyöleri) ve üniversite kasabaları dışında ABD'nin neredeyse geniş bant altyapısı yoktur. Küçük kasaba ve kırsal kullanıcılar genellikle uydu veya çevirmeli bağlantıdadır (ve telefon hatları her zaman en iyisi değildir, bu nedenle çevirmeli bağlantı genellikle 50k / s'nin altındadır).

  • Evde / ofiste iyi internet erişimi olan kullanıcılar genellikle başka yerlerde çalışırlar: genellikle güvenilir internet erişimi olmayan parklar, uçaklar, kafeler, konferans yerleri vb.

  • Birçok kullanıcı bir nedenden ötürü yedekleme gücüne yatırım yapar: bu nedenle kesintiler sırasında arıza süresi yaşamazlar. İnternet çöktüğünde uygulamanızı sakat bırakırsanız, bu yatırımdan yeni çıkmışsınız demektir.

  • İnternet bağlantıları başarısız olur, ISS'ler (veya işyerleri veya üniversiteler) trafiği kendi hevesiyle engeller, ev kullanıcıları NAT'larını yanlış yapılandırır ... yapay bir (yani bir şey inşa etmenin teknik bir sonucu değil) bir başarısızlık noktası oluşturmak sadece aptalca yazılımınızda.

Yukarıdaki nedenler tek başına "call home" DRM modelini kullanmamak için fazlasıyla yeterli; ancak hiçbiri doğru olmasa bile, yine de buna karşı öneriyorum çünkü Mason'un işaret etmeye çalıştığı gibi, kullanıcılarınızı bu şekilde kullanmak etik açıdan yanlıştır.

Sadece kendi zihniniz için kullanıcılarınız hakkında bilgi açığa çıkarmazsınız. You have hiçbir hakkı izlemek ve yerden onlar yazılımı kullanın. Bu tür şeyler yapmak kullanıcılarınızın güvenini ihlal eder.


7
+1 "yapay bir başarısızlık noktası yaratmak" için. Bunu tarif etmenin çok iyi bir yolu.
Mason Wheeler

16

Hayır!

Tüm programlar internete erişimi en iyi durum senaryosu olarak görmeli ve bilgisayarın bağlanamaması için bir geri dönüş modu kullanmalıdır.

Orada çok sayıda dizüstü bilgisayar ve çoğu kamu kablosuz ağın doğası ile hala kullanım için ödeme olacak, çoğu dizüstü bilgisayar kullanıcıları düzenli olarak bilgisayarlarını ve programlarını internet bağlantısı olmadan kullanmaları gereken koşulları yaşayacaklar .

Diğer yanıtların da yayınladığı gibi, bilgisayarın gelecekte bir noktada bağlanacağını varsaymak güvenlidir. Çevrimdışı modu olan birçok senkronizasyon türü uygulama bu şekilde çalışır. Ancak, kullanıcılara nezaket olarak, kullanıcıya hizmet olmadıkça bu şekilde çalışmaz . Lisans kontrolünün bu kategoriye girdiğini sanmıyorum.


15

Hayır

Eğer olamaz varsayalım tüm kullanıcıların internet erişimi vardır. Temel İstatistikler için buraya tıklayın

Web uygulamaları hariç tutulduğunda , bir masaüstü uygulaması bence internet erişimi olduğunu varsaymamalıdır.


1
Cevabınıza istatistik eklemenizi seviyorum. Somut delil vermenin yolu.
lazyPower

1
bir tarayıcı olmadığı sürece (HTML5 ile değişse bile).
dan_waterworth

2
Evet, ancak bir tarayıcı bile çevrimdışı kullanılabilir :) Bunun kullanılabileceği birçok yasal durum vardır. Örneğin .NET'te bir "web tarayıcısı" denetimi formlara katıştırılabilir. Bu, bir masaüstü uygulamasının HTML (örn. Raporlar) oluşturmasına ve bunların gömülü formda görüntülenmesine izin verir, HTML dosyası bellekte (bir dizeden yüklenir) geçirilir veya sabit sürücüden okunur.
Aralık'ta Darknight

Web uygulamaları bile tamamen intranet tabanlı olabilir ve kullanıcıların muhtemelen herhangi bir internet erişimi yoktur.
MartW

6

Kısa sürüm HAYIR, tüm kullanıcıların internet erişimi olduğunu varsayamazsınız. Diğerlerinin de belirttiği gibi, evde sınırlı veya hiç internet erişimi olmayan çok sayıda insan vardır.

Lisans şemanız, yazılımın çalışacağı bilgisayarın hiçbir zaman internete erişemeyeceği durumu ele alabilmelidir. Şirketlerin internetten yalıtılmış ağlara sahip olması olağandışı değildir (özellikle güvenlik endişeleriyle uğraşırken). Bu, size bir devlet kurumuna yazılım satabilmek istiyorsanız özellikle doğrudur. Diğer taraf güncellemeleri nasıl ele alacaksınız? Şirketlere / hükümete satış yapmak istiyorsanız, güncellemelerin Kurumsal sunumunu desteklemeniz gerekir.


4

Evet, bilgisayarlarla çalışan çoğu insanın bir internet bağlantısına erişebileceği anlamındadır (bu nedenle, hata düzeltmelerini bir paket yöneticisi veya FTP veya benzeri aracılığıyla dağıtmak normaldir).

Hayır, çoğu insanın gün boyunca internete tutarlı, güvenilir ve performansa sahip olması gerekmez (bu nedenle, kullanıcılarınızın her birinin 20mb / s'yi tutarlı bir şekilde aşağı çekebileceğini varsayarsak muhtemelen kötü bir fikirdir. ve bağlantı eksikliğini neredeyse garanti ettiğiniz uçaklar).


2

Tüm kullanıcıların çoğu zaman veya en azından kurulum zamanında internet erişimine sahip olacağını varsaymanın makul olduğunu düşünüyorum . Ancak, dizüstü bilgisayarımı bir uçakta, ormanda bir kulübede veya denizde bir teknede yanımda götürürsem, iyi bir şekilde internet erişimi gerektirmeyen herhangi bir şey beklerim.


3
Aslında, kurulum zamanında net erişim kötü bir varsayımdır. Makinenin yazılımın çalıştırılması gereken yerlerde makineye bağlanması her zaman mümkün veya izin verilmez, bu nedenle bir kişinin gerekli dosyaları farklı bir makineyle indirmesine ve ardından yüklenecekleri makineye manuel olarak aktarmasına izin vermek önemlidir.
Chris Stratton

1

Cevap elbette değişir. Bir fabrika katı için yazılım oluşturuyorsanız, internet erişimine sahip olmayacakları iyi bir şans. Tüketici uygulamaları için büyük olasılıkla yapacaklardır.


1

Pawnshop Yönetim Sistemimi (RDBMS tabanlı bir masaüstü uygulaması) kullanan kullanıcılar gibi bir internet bağlantısının olması istenmeyebilir. Onlar sadece internet tüm müşterilerine kişisel bilgileri ve rehinci işlemleri tutan aynı bilgisayara bağlı olması güvenmiyorum. Web'e erişmek istiyorlarsa, üzerinde kişisel bilgileri olmayan ayrı bir bilgisayar kullanıyorlar!


0

Değişken lisans sunucusu benzer bir kavramdır. IBM'in AIX'inde, bir lisans sunucusunu sürekli kontrol eden bir derleyici kullandım. Bu nedenle yavaştı ve sonunda kodu gcc'ye taşıdık.

Kırılgan ve sinir bozucu. Bence neredeyse tekelci şirketler tarafından çok pahalı yazılımlar için mantıklı.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.