Por que as versões "profissionais" dos SDKs de console são fechadas ao público?

11

Por que as versões "profissionais" dos SDKs de console são fechadas ao público? Por exemplo, o Xbox Development Kit está disponível apenas para determinados desenvolvedores registrados. O PS3 tem algum arranjo semelhante. Até o preço não é revelado.

Qual a razão desse sigilo? Além disso, quais recursos adicionais esses SDKs "profissionais" possuem, em comparação com os SDKs gratuitos (como o XNA)?

ApoorvaJ
fonte
-1: A menos que alguém aqui seja da Sony, Microsoft ou Nintendo ou tenha informações reais diretamente deles, esta pergunta não pode ser respondida com outra coisa senão uma perspectiva externa e preferências pessoais. Em suma, esta questão convida à especulação e nada mais.
Nicol Bolas
4
@ Nicol: Uh, exceto que minha resposta tem uma citação de um executivo da Nintendo explicando por que eles implementaram a primeira versão deste sistema. Que tipo de citações você está procurando? Tenho certeza de que posso descobrir alguns dos executivos modernos da MS ou da Sony falando dos benefícios de seus sistemas fechados pelas mesmas razões.

Respostas:

18

Este esquema foi iniciado pela Nintendo para combater os efeitos do acidente de videogame de 1983 .

Houve várias razões para o acidente, mas a principal causa foi a supersaturação do mercado, com centenas de jogos principalmente de baixa qualidade, que resultaram na perda de confiança do consumidor.

Em 1986, o presidente da Nintendo, Hiroshi Yamauchi, observou que "a Atari entrou em colapso porque deu muita liberdade a desenvolvedores de terceiros e o mercado estava cheio de jogos de lixo". Em resposta, a Nintendo limitou o número de títulos que desenvolvedores de terceiros poderiam lançar para seu sistema a cada ano.

Ele continua hoje porque é um negócio lucrativo para os fabricantes de consoles, permitindo que eles vendam dispositivos abaixo do custo para os clientes e ganhem dinheiro licenciando o SDK para os desenvolvedores, muitas vezes tendo uma redução de receita também. O benefício para os consumidores hoje em dia é altamente questionável, especialmente se comparado a modelos mais abertos, mas ainda fechados, como a App Store da Apple.

A diferença entre o SDK gratuito e o proprietário varia de acordo com o fornecedor. Em todos os casos, a opção gratuita é mais limitada tecnologicamente - o XNA limita você a C #, por exemplo, onde o XDK completo permite que você escreva em qualquer idioma que possa direcionar a arquitetura baseada em PPC do Xbox 360. O mesmo vale para o hardware. As unidades de depuração do Xbox contêm discos rígidos maiores, podem se conectar a compartilhamentos de unidades SMB e a uma versão especial do Xbox Live. Geralmente, eles também vêm com contratos de suporte ao cliente e acesso a outras ferramentas de desenvolvedor, como melhores perfis ou ferramentas de teste.


fonte
1
+1 O Amiga também não é a prova necessária pelo setor para garantir que tudo seja feito para limitar a pirataria? Eu acho que essa é a outra parte importante da história.
Klaim
4
@Klaim: Não sei a que parte da história da Amiga você está se referindo, mas o vínculo entre pirataria e SDKs proprietários sempre foi tênue e a OMI principalmente propaganda de fabricantes de console. O mercado de console fechado foi projetado para dificultar a execução de código não aprovado; isso pode reduzir marginalmente a pirataria, mas apenas como efeito colateral. Além disso, a maior parte da pirataria é de código aprovado.
@Klaim fazendo "tudo" sempre leva a monstros horríveis. Você precisa fazer apenas algumas coisas, mas as corretas .
o0 '.
Eu estava me referindo ao fato de que o Amiga perdeu força de vapor por causa da fácil pirataria do meio, discos, mas sim, pode não estar relacionado ao kit de desenvolvimento.
Klaim
@ Lohoris Eu não concordo. A variedade é o berço da qualidade. O importante é ter maneiras de classificar essa variedade. Afinal, a Sony fez sucesso no Playstation por causa da variedade de jogos. Mas foi fácil aprender o que era bom ou não.
Klaim
4

Bem, por um lado, esses SDKs profissionais geralmente vêm com hardware diferente. Por exemplo, é assim que (a antiga) estação de desenvolvimento PS3 se parece (tamanho do rack U2 / U3): PS3 DK

E este é um kit de desenvolvimento do Xbox 360: Xbox 360 DK

E mesmo que os SDKs possam ser executados em consoles 'consumidores' normais (o que eles podem fazer, mas com funcionalidade limitada, geralmente usada apenas para depuração), eles ainda apresentam um risco de segurança, pois os SDKs oferecem um acesso de nível muito mais baixo.

Há mais uma coisa: quão mais ampla você distribui as ferramentas, mais polido e fácil de suportar. Software como o XNA é extremamente sofisticado e um amador pode facilmente fazer cara de pau sem ler muita documentação. Tempo até o primeiro polígono na tela: 5 minutos. Os SDKs são bestas muito menos amigáveis. Você lerá a documentação por dias ou semanas antes de conseguir alguma coisa e engenheiros especiais às vezes são levados aos estúdios para ajudar com as peculiaridades. O custo de suporte por pessoa é muito mais alto; portanto, a Microsoft e a Sony tentam limitar o número de pessoas que eles precisam apoiar para as pessoas que eles sabem que podem gerar um bom lucro para elas. É tudo sobre custos e benefícios.

Roy T.
fonte
6
-1 para "ainda possui um risco de segurança" - eu realmente odeio essa justificativa falsa, e em um site de desenvolvedor é indesculpável. A codificação de merda cria um risco de segurança. O acesso total ao SDK (talvez) cria um risco de lucro .
1
E o que Lohoris diz é exatamente o que eles realmente fazem. A MS pode executar programas de suporte ao desenvolvedor como um centro de custo para grandes editoras / desenvolvedores, como a Activision ou a Epic, onde eles garantem compensar o volume enviado de jogos ou hits de grande sucesso, mas, para a maioria dos desenvolvedores, eles vão precificar coisas por isso quebra até na pior das hipóteses.
2
JoeWreschnig, nesse caso, deixar as chaves em falta também é apenas um risco de lucro (o que é bom para mim, mas que não nos leva a lugar algum). @Lohoris sim, eles poderiam oferecê-lo sem suporte gratuito, mas isso constituiria um terrível erro de relações públicas, pois você terá muitos clientes insatisfeitos (grátis não significa que as pessoas não reclamam quando não podem obtê-lo também) trabalhos). Esta é a mesma razão pela qual ferramentas como editores de nível nunca são 'apenas liberadas' no estado, como eram internamente. Existe uma lacuna enorme entre o polimento interno e externo, mesmo para ferramentas gratuitas!
Roy T.
2
@ Roy: Se uma casa é a metáfora com a qual você deseja executar, ter um SDK é como ter as plantas, não as chaves. As plantas do meu apartamento não são secretas - são iguais a todos os meus vizinhos e estão em registros públicos em algum lugar também, tenho certeza. Mas meu apartamento não é menos seguro por causa disso. É uma informação útil se alguém violar a segurança, pois você provavelmente pode usá-la para descobrir onde eu mantenho minha TV - mas não é menos segura enquanto minha porta estiver trancada.
2
Apenas ter acesso ao SDK não permite executar nenhum código não assinado. Você ainda precisa receber uma chave de assinatura do editor. As chaves de assinatura estão vinculadas às IDs das máquinas, para que você possa implantá-las apenas nas máquinas designadas. As chaves são feitas para expirar após um certo período de tempo e os editores podem revogá-las. Portanto, não há realmente nenhum grande risco de segurança em termos de pirataria por ter um SDK público.
5 de