sexta-feira, 27 de novembro de 2009

Motivando um programador

O mercado de internet sempre foi super aquecido, e tem se tornado cada dia ainda mais competitivo. Lance um produto de sucesso e em poucos dias haverá dezenas de clones dele. Faça um exercício mental e tente lembrar dos últimos sites que fizerem barulho, agora tente enumerar a quantidade de projetos lançados com o mesmo conceito, mas tentando parecer um pouco diferente.
Notei que mesmo o mais confiante empreendedor tem seus temores. Medo de que uma empresa com mais mais recursos produza um software igual ao seu e que consiga levar seus clientes. Mas o que se percebe é que na maioria dos casos, mesmo que o software da concorrência pareça melhor ou tenha sido construído por uma equipe com mais experiencia, normalmente vence a equipe mais apaixonada.
Está revelado o segredo. Para montar uma equipe vencedora, não procure o melhor profissional, procure o profissional mais motivado. Mas não basta somente contratar alguém apaixonado, é preciso manter acesso está paixão. Como?

Salário?

O salário parece ser sempre o principal motivo de descontentamento em uma empresa. É claro que quando estamos falamos de dinheiro, quanto mais melhor. Mas é um fato que bons programadores não levam o dinheiro tão a sério assim. Pessoalmente, eu conheço muitos bons profissionais que mesmo achando que poderiam estar ganhando mais dinheiro em outra empresa, se “sacrificam” para permanecer em um ambiente de trabalho que lhe agrade, onde ele talvez considere que está aprendendo coisas novas ou adicionando algo de valor ao universo.
Eu mesmo passei por uma experiencia parecida há um tempo atrás. Já estava há dois anos trabalhando em um mesmo projeto e havia perdido o interesse naquilo já fazia um bom tempo quando recebi uma proposta de emprego para receber pouco mais do que eu ganhava naquela empresa. Ao avisar que estava saindo, recebi a tentadora proposta de ficar e dobrar o meu salário. Não aceitei, porque não tinha mais a ver com dinheiro e sim com paixão e motivação.

Se quer resultados, desafie

Em meu trabalho com pessoas surdas, certa vez eu acompanhei um amigo em uma aula. Este meu amigo é uma pessoa de natureza séria, e como tal costuma tratar seus alunos com seriedade, embora seja um excelente professor e tenha um profundo conhecimento da língua de sinais (visivelmente maior do que o meu). Mas ele tinha um problema, seus alunos estavam com sérias dificuldades para entender algumas coisas muito simples. Diferente dele, eu costumo ser um pouco mais brincalhão em minhas aulas e me aproximo mais dos alunos. Neste dia, brincando com as crianças eu disse que quem errasse uma pergunta levaria um cascudo na cabeça, mas para cada pergunta certa eu daria um beliscão no professor deles. Adivinhem, tivemos um excelente aproveitamento da aula e não precisei dar cascudo em nenhuma criança. :)
O ser humano precisa ser desafiado. Pagar bem para um profissional fazer um trabalho desinteressante e sem valor não desperta paixão em ninguém. É por isto que uma startup, mesmo com uma equipe menor (e com salários menores também) muitas vezes conseguem competir com grandes corporações. É o desafio que motiva as pessoas a fazerem coisas grandiosas.

Programadores precisam ser desafiados

Não existe ninguém que goste mais de desafios que os programadores. Pegue um código escrito por alguém, e sem avisá-lo altere para deixá-lo mais rápido ou mais elegante, e você com certeza estará ganhando um inimigo mortal. Acho que os quadrinhos abaixo ilustram isto muito bem:
geek-hero-panel-1
geek-hero-panel-2
Alguns anos atrás eu trabalhei em um projeto onde havia um programador na equipe que já estava trabalhando para o mesmo cliente por algum tempo e já possuía um excelente domínio dos negócios daquele cliente. Sendo assim, ele assumiu a responsabilidade de escrever um código que envolvia uma regra de negócio um pouco mais complicada. Lembro que quando vi o código, pela primeira vez depois de pronto, levei um susto tremendo. O código era macarrônico e tinha quase 1.000 linhas. Era simplesmente incompreensível.
Por profundo respeito ao amigo, não comentei nada sobre o código na hora. Depois de algumas semanas houve uma mudança em uma regra que envolvia realizar uma alteração em algum ponto daquele emaranhado de código. Um outro programador da equipe assumiu o desafio. Horas depois ele desistiu. Como o pai da criança estava presente, ele acabou assumindo e resolvendo o problema.
Pressentindo que aquele código poderia se tornar um problema no futuro, o gerente do projeto solicitou ao programador que ele refatorasse o código afim de deixá-lo mais intuitivo e fácil manutenção. Embora ele tenha melhorado um pouco o código, não posso dizer que o resultado era o esperado.
Passaram-se mais alguns dias e mais uma vez tornou-se necessário alterar algo naquele maldito código. Desta vez, outro programador foi designado para fazer isto. Depois de um tempo tentando entender o que aquele código fazia ele também se cansou e após mostrar o código para o gerente do projeto e receber sua aprovação, ele começou a refazer o código de uma forma que todos pudessem entende-lo. Mas como o dia já estava chegando ao fim, ele deixou para terminar o trabalho no dia seguinte.
A surpresa foi que no dia seguinte ao chegar na empresa o programador original do código já havia refeito todo o código de uma forma muito mais inteligente. De alguma maneira ele soube que seu código seria refeito por outro programador, e ao invés de ir para casa ele passou a noite em claro refazendo todo o código. Somente após se sentir desafiado é que aquele profissional se motivou para fazer seu trabalho da maneira certa, e confesso que ele realmente conseguiu acertar.
Claro que existem formas mais elegantes de se desafiar um profissional, mas eu considero interessante analisar o efeito do desafio na vida de uma pessoa. No caso acima, o programador se privou do sono e do seu merecido descanso, afim de encarar um desafio.
Como motivar um programador? Eu acredito seriamente que o segredo está em dar um propósito a ele, incumbi-lo de um trabalho que tenha um verdadeiro valor, que acrescente algo de importante em nosso mundo. Eu quero deixar a minha marca no universo, quero ser desafiado, quero mostrar porque estou aqui. Me dê um desafio a altura e eu te mostrarei o que é paixão.

Fontes: Blog Nomedojogo

Faça seu tempo





Você já sonhou com a abertura de sua própria empresa, a criação de um produto para a internet ou simplesmente ensaiou criar um blog sobre programação ou qualquer outro assunto de seu interesse? Se a resposta para essas perguntas, ou para uma similar a essas, for afirmativa, espero que você já tenha iniciado algum plano para atingir a sua meta. Caso contrário, por que ainda não começou a trabalhar para conquistar o seu sonho?
Infelizmente a maioria das pessoas padece sempre do mesmo mal, a falta de tempo. Se você também é uma dessas pessoas que além de trabalhar, precisa dedicar tempo a sua família, cuidar da sua saúde e cumprir com um número sem fim de responsabilidades, e por isto nunca consegue tempo para correr atrás do seu sonho, eu sou obrigado a lhe dizer: Você é um preguiçoso (e eu não estou falando deste tipo bom de preguiçoso).
Sempre há tempo suficiente. O problema é que a maior parte das pessoas gasta todo o seu tempo livre em atividades que não são tão importantes e o que sobra não é o suficiente para correr atrás do seu sonho.
Todas as grandes pessoas que eu conheço, também estão sobrecarregadas com as mesmas responsabilidades familiares, profissionais e outras atividades importantes que consomem muito do nosso tempo. A diferença entre os que apenas sonham e os que realizam seus sonhos pode ser resumida em apenas uma única palavra, equilíbrio. Simplesmente não existe uma pessoa no mundo que esteja totalmente livre de obrigações. Desta forma, ouvir a expressão “não tenho tempo para me tornar grande” sempre soará como uma bela desculpa para a preguiça.
Não possuir muito tempo para começar é natural, mas isto não significa que você nunca tem um tempo livre para começar. As pessoas em geral usam a falta de tempo como uma desculpa para não se sentirem tão mal por nunca terem realizado nada grandioso.
Este tipo de desculpa é ainda mais deprimente quando vem daqueles que ainda estão estudando. “Eu preciso estudar tanto… Tenho tantas aulas… Tantos trabalhos para entregar…”. Se você está tão atolado com seus estudos que não há tempo de aprender nada fora da escola, então definitivamente alguma coisa está errada.
Certa vez uma pessoa muito inteligente disse: nunca deixe sua escola interferir com a sua educação. Mais uma vez, equilíbrio é muito importante.
Veja o caso do criador do Rails, David Heinemeier Hansson. Ele comentou certa vez em uma entrevista que durante seu período na escola ele recebeu muitas notas B e C, e que ele se sentia muito orgulhoso destas notas já que elas vinham com quase ou nenhum tempo gasto estudando. Enquanto isso ele usou a maior parte do seu tempo livre estudando coisas de seu interesse por conta própria e iniciando seus projetos pessoais e a criação da sua própria empresa.
E ele conseguiu. Mesmo estudando, ele criou o Instiki, o Ruby on Rails e o Basecamp e ainda se tornou sócio da 37signals. Você acha que ele conseguiria tudo isso se suas maiores preocupações fossem tirar notas A na escola e jogar videogame? Com certeza, não.
Se você realmente deseja conquistar algo, então você conseguirá tempo para isto, independente de quais são as suas outras obrigações. Não deixe seus sonhos para depois.
Mas se eu posso ser realmente honesto com você, eu prefiro que você continue apenas se desculpando com a falta de tempo e que nunca inicie nada, isto é melhor para mim… menos concorrência.

Fonte : Nome do Jogo

Delphi terá em 2010 versões para Linux e Mac OS



O  Delphi, ferramenta para desenvolvimento de aplicações,  ganhará no próximo ano versões para Linux e Mac OS. A informação é do vice-presidente para relacionamento com desenvolvedores da Embarcadero e evangelista da tecnologia, David Intersimone. Ele esteve esta semana no Brasil reunido com cerca de 600 desenvolvedores.
Intersimone, mas conhecido por David I, e que tem um blog no site  Computerworld americana, veio ao Brasil para apresentar à comunidade que trabalha com a ferramenta de desenvolvimento as inovações incorporadas ao Delphi 2010, versão que chegou recentemente ao mercado.
O programa concorre com plataformas como . Net da Microsoft, Visual Studio e Java passou para as mãos da norte-americana Embarcadeiro no meio do ano passado. Na época, a companhia comprou a divisão CodeGear da Borland, unidade responsável por ferramentas multiplataforma para bancos de dados. Entre os quais estavam o Delphi.
com. br/wp-content/imagem/2009/11/img_delphi_ter225. jpg”>
A Embarcadero ainda não está presente no Brasil e o atendimento aos usuários de Delphi no país continua sendo realizado pelo time da antiga Borland, comprada no ano passado pela Micro Focus.
David I diz que o Brasil tem uma comunidade atuante de Delphi e acredita que o suporte da tecnologia a outros ambientes deverá dar mais flexibilidade aos que utilizam a ferramenta para desenvolver aplicações. Até então, o programa falava somente Windows. Ele estima que a versão do produto compatível com o sistema operacional de código aberto Linux e o Mac Os da Apple deverá chegar ao mercado no meio do próximo ano.
Inovações do Delphi 2010
Ao comentar sobre as novidades do Delphi 2010, o especialista destacou, que além do produto já está preparado para Windows 7, vem com  interfaces baseadas no recurso touch. Essa funcionalidade vai permitir aos desenvolvedores criarem mais rapidamente aplicações interativas para serem acessadas com toque na tela para rodar em celulares, PCs, terminais bancários e em outros tipos de hardware
David I afirma que uma das vantagens do recurso touch para os desenvolvedores e que eles vão poder levar essa funcionalidade também para as aplicações já existentes
Fonte:
computerworld.uol.com.br

quinta-feira, 26 de novembro de 2009

Você não é uma vaca leiteira

…então, por favor, não trabalhe como se fosse.
Vale a pena prestar um pouco de atenção nos aspectos ergonômicos do seu ambiente de trabalho. Coisas como monitores bonitos, uma quantidade absurda de portas USB e uma biblioteca de música praticamente inesgotável são importantes para qualquer programador. Mas algumas coisas mais simples são igualmente importantes, como a altura da sua cadeira, a posição do seu teclado e, muito surpreendentemente, o bom e velho espaço livre.
Espaço livre não parece estar muito na moda ultimamente. É raro encontrar alguém que dá alguma importância para isso. Afinal de contas, o trabalho de um programador (e de qualquer trabalhador do conhecimento, para este efeito) acontece dentro da cabeça. Não é necessário muito espaço para abrigar a cabeça de uma pessoa, mesmo se levarmos em consideração que ela é inseparável dessa massa inútil e disforme que chamamos de corpo. Talvez seja por isso que tantas empresas dão o mesmo espaço de trabalho para os programadores que uma fazenda intensiva daria para uma vaca leiteira. Uns só precisam das tetas, outros só da cabeça. Quanto mais programadores couberem no mesmo espaço, mais software será produzido por metro quadrado. Simples otimização de chão de fábrica, certo?
dairy_cowders
Sim, é fato que sua cabeça (ainda) não pode viver separada do seu corpo. Portanto, mesmo que você não ligue para seu corpo em si, é melhor cuidar dele se quiser continuar usando sua inteligência por muito tempo. Esse cuidado passa por aspectos bastante óbvios (e penosos) como praticar exercícios regularmente e manter uma dieta equilibrada. Pode não ser muito fácil cuidar disso, mas os aspectos ergonômicos do ambiente de trabalho são muito mais controláveis. Mesmo assim costumam ser negligenciados.
Este é meu escritório de casa atualmente (bom, pelo menos a parte sobre a qual quero falar hoje):
my_office
A mesa é em geral o espaço onde você vai passar a maior parte do tempo. Não importa se você tem acesso a uma mesa de sinuca e a três video-games diferentes para jogar Rock Band com seus colegas durante o horário de trabalho. Se sua mesa for desconfortável, você não vai produzir muito. Pensando bem, se lhe derem uma mesa inadequada, é bem mais provável que você passe mais tempo jogando Rock Band do que programando.
A primeira coisa que você vai querer garantir para sua estação de trabalho é uma cadeira confortável. Ela precisa ter ao menos encosto reclinável, ajuste de altura e apoio para os braços. E estofamento macio, claro. Você não vai querer ficar sentado o dia todo numa pilha gigantesca de algodão. Tampouco em um banco de praça. Ache um meio termo que pareça bom para você e use-o. Não é preciso gastar dois mil reais numa cadeira para ter todos estes recursos, mas também não é um valor assim tão absurdo se considerarmos a durabilidade do equipamento e o custo do programador para a empresa.
O próximo item da lista é uma mesa espaçosa. Segundo o Peopleware, um estudo encomendado pela IBM há muitas luas atrás descobriu que a superfície mínima que uma pessoa precisa para ser produtiva é de aproximadamente 2,5m². Minha mesa deve ter aproximadamente 1,75. Ainda estou abaixo da meta, mas com certeza é mais do que os dois caras da foto têm e pelo menos é o suficiente para caber com sobra meus dois monitores.
O que nos leva ao próximo item indispensável a qualquer pessoa que desenvolva software: muito espaço de tela. Com dois monitores de 1280×1024 você obtém uma área útil de 2560×1024 pixels, o que é suficiente para abrigar ao menos um editor com seu código e o programa rodando ao mesmo tempo. Se apertar um pouco, cabe até uma janela para monitorar os testes automáticos. Mas você pode achar útil ter algum material de referência aberto para consultar rapidamente e talvez precise de um terceiro monitor para isso. Como você está lendo isso aqui, provavelmente já tem um dos monitores. Um extra deve estar abaixo dos 600 paus hoje em dia e a maioria das placas de vídeo modernas já aceita duas saídas. É produtividade de graça se você jogar na conta o tempo (e a paciência) que se perde chaveando janelas numa tela só.
Você também vai querer ter seus vários monitores posicionados corretamente. Uma distância entre 40 e 75cm entre seus olhos e a tela é o suficiente. É preciso tomar cuidado para posicioná-los na altura correta também (vale usar livros velhos quando o monitor não tem regulagem de altura). Você não vai querer ficar com a cabeça inclinada nem para cima nem para baixo o dia todo. As dores no pescoço podem ser bastante irritantes depois de um tempo.
Além da altura dos monitores, você também precisa regular a altura da cadeira e da mesa para manter suas pernas e braços em ângulos mais ou menos retos a maior parte do tempo. Isso vai aliviar bastante a coluna e pode garantir boas noites de sono. Simplesmente procure um pouco na web sobre ergonomia no trabalho que você vai achar várias dicas, há bastante material por aí.
Quando não estiver trabalhando, não esqueça de comer seus vegetais e fazer seus exercícios e lembre-se de que se exercitar durante o trabalho também é importante. Você não precisa levantar para correr meia-maratona no horário do almoço. Alguns alongamentos uma ou duas vezes ao dia já são suficientes. Você também pode querer manter por perto algumas daquelas bolinhas terapêuticas, daquelas vendidas em lojas de animais. Elas são ótimas para exercitar a musculatura do punho que tanto castigamos ao digitar o dia inteiro e ainda servem para massagear a tensão acumulada.
Um último toque que você talvez não encontre em todo site sobre ergonomia fica bem no canto direito na minha mesa. Uma foto de pessoas que você gosta (de uma viagem com a esposa, como esta minha) é importante para lhe lembrar que por mais que seu código pareça perfeito e sem falhas (e, acredite, ele nunca é) e que você passe o dia conversando em linguagens estranhas com essa máquina maluca de duas cabeças, no fim das contas você é apenas humano e precisa de outras pessoas assim como qualquer outro ser humano.

Fonte : Thiago Arrais

Programador não é apenas um codificador

PDHeadInSand
Programadores são naturalmente introvertidos e não sabem se comunicar. Deve ser por isso que existem tantos programadores ruins. Programar é um exercício de comunicação.
Anos de experiência desenvolvendo software, conhecer muitas linguagens de programação, escrever códigos de qualidade, nada disso tem valor se você não conseguir se comunicar com outras pessoas. De nada vale ter muito conteúdo e guardar isto só para você.
Aqueles que desejam uma carreira bem sucedida como programadores, além possuir um conhecimento técnico acima da média também precisam estar constantemente melhorando suas habilidades de comunicação.
Inevitavelmente passamos horas em reuniões. Precisamos interagir com clientes e entender as suas necessidades. Escrevemos propostas e relatórios. Estamos em uma luta sem fim tentando convencer nossos companheiros e empregadores a adotarem uma nova tecnologia ou prática que tornará nosso trabalho mais produtivo e divertido. E acima de tudo: escrevemos muito código.
O código é uma combinação de signos utilizados para transmitir uma mensagem. Porém a comunicação só se concretizará se o receptor souber decodificar a mensagem. Computadores costumam fazer isto muito bem, mas não estamos escrevendo código apenas para máquinas. Um código mal escrito e cheio de ruído dificultará o trabalho de outros programadores quando houver a necessidade de estudá-lo.
Nosso trabalho se resume a pura e simplesmente comunicar-se, por isso é tão importante fazer isso bem.
Não importa se você está escrevendo um livro/relatório/e-mail ou se preparando para uma reunião, planejamento é tudo. Um dos segredos dos bons comunicadores é saber o que dizer, antes de sair abrindo a boca e despejando pensamentos. Pergunte-se: “Se eu falar desta maneira, será que todos entenderão com clareza a informação que eu estou tentando passar?”. Repita esta pergunta para si mesmo até que esteja convicto disso. Anote estas ideias e planeje como aborda-las.
Comunicação é repassar informações. Para que isto seja possível é vital que todas as pessoas presentes entendam o que você está dizendo. Antes de começar a argumentar sobre as vantagens de se utilizar um banco de dados não relacional no projeto, certifique-se de que todos sabem do que você está falando. Caso contrário, você não estará impressionando ninguém. Estará apenas sendo chato.
Se você está vendendo uma ideia, certifique-se de conhecer cada uma das pessoas envolvidas na negociação e fale somente o que ela precisa ouvir, nem mais nem menos. Talvez você precise convencer o seu gerente, o pessoal de marketing, o usuário final do aplicativo e até outros desenvolvedores. Trate cada grupo de forma individual.
Tão importante quanto dizer a coisa certa, é dizer na hora certa. Pegar seu gerente no corredor, logo após o seu supervisor lhe chamar a atenção por ele ter entregue um aplicativo cheio de bugs é uma excelente oportunidade para convencê-lo a adotar testes automatizados nos próximos projetos. Mas também será uma péssima hora para pedir um upgrade na sua máquina.
Para ser tornar um bom escritor é necessário ler muito, seguindo o mesmo principio se você deseja falar bem é importante escutar. Programadores tem sérios problemas para escutar. Durante uma reunião, assim que o cliente começa a explicar uma funcionalidade do novo aplicativo, a mente do programador abandona a sala e automaticamente já começa a trabalhar no código que precisará ser desenvolvido. Deste momento em diante tudo o que for dito na sala será ignorado. Concentre-se. Se você não escutar o que os outros estão dizendo, como espera ser ouvido?
Lembre-se disso: Não é somente o que você diz, mas também como você diz. A menos que você esteja trabalhando sozinho dentro de uma bolha, você deve ser capaz de se comunicar. E quanto mais eficaz for a sua habilidade de comunicação, mais influente você se tornará.

Microsoft libera Micro Framework .NET como Open Source

Peter Galli, Open Source Community Manager da Microsoft anunciou no blog PORTA 25 que o Micro Framework .NET 4.0 está sendo disponibilizado em regime de Open Source.
O MF .NET é um ambiente extremamente enxuto, projetado para rodar aplicações .NET que utilizem um subset do Framework completo. Ele é compatível com CPUs mobile, como ARM, e roda no XBOX360. O footprint de memória é ridículo, meros 300KB.
Todo o código-fonte foi disponibilizado sob a licença Apache 2.0 (compatível com GPLv3), exceto as rotinas de criptografia, que segundo a Microsoft são utilizadas em outros produtos, e o stack TCP/IP, que é licenciado de terceiros e portanto não pode ter seu fonte disponibilizado.

Fonte: TuxRadar

Bagunça pode ser tudo o que você precisa


Já notou que sempre bangunçamos o ambiente em que estamos trabalhando? Se você não fizer um esforço bem consciente para organizar tudo enquanto trabalha ou quando termina de fazer o que precisa, as chances são que as coisas estejam um pouco mais bagunçadas do que no início. Já notou também que mesmo que tudo pareça bagunçado, você (quase) sempre consegue se achar na sua bagunça? E que se alguém fizer o “favor” de “organizar” as coisas para você há uma boa chance de piorarem sua situação? Isso acontece porque a bagunça era a sua bagunça.
E também porque provavelmente não era uma bagunça.
Por trás desse tipo de bagunça aparente, há sempre uma ordem não óbvia. Para usar um exemplo bastante simples discutido no livro Uma bagunça perfeita de Eric Abrahamson e David H. Freedman (prometo publicar uma resenha apropriada em breve), uma pilha de papéis jogados sobre uma mesa está ordenada por ordem de uso: os mais usados ficam no topo e os menos usados no fundo. Isso acontece naturalmente se você sempre devolver os papéis que precisou da pilha para o topo. Do mesmo modo, se você pedir a alguém para realizar alguma tarefa rotineiramente, as pessoas sem nem perceber acabam bolando procedimentos de modo a facilitar o trabalho, aproveitar melhor o tempo e tornarem-se produtivas. Por isso bons programadores acabam chegando a algo parecido com XP se não forem podados.
Mas este é um blog sobre desenvolvimento de software para programadores e o trabalho do programador é justamente eliminar a bagunça do trabalho das pessoas, escrever programas que as ajudem a se organizar melhor, identificar “processos de negócio” e coisa e tal, certo?
Errado, se o seu ego conseguir aceitar que as pessoas que estão lá fazendo o trabalho no fim das contas sabem muito mais dele do que você.
Muitas vezes o que precisamos não é bem organizar o que as pessoas estão fazendo. Às vezes precisamos somente tornar a bagunça mais eficiente. Quando se tenta organizar muito os processos de trabalho das pessoas a coisa acaba ficando engessada demais. O resultado são sistemas que atrapalham mais do que ajudam e gente que passa mais tempo tentando agradar os sistemas corporativos do que resolvendo problemas dos clientes. Já ouviu a célebre frase “eu entendo, mas o sistema não deixa” quando tentou algo minimamente fora do comum com um banco ou uma operadora de telefone? É disso que estou falando. Resultado dos sistemas paralisantes. Resultado da organização demasiada.
Por outro lado sistemas caóticos terminaram sendo alguns dos exemplos de maior sucesso em nossa indústria. O Unix, por exemplo, é descrito por Martin Fowler como a maior aglomeração de coisas coladas umas nas outras que o mundo já viu. A web, por sua vez, é uma imensa bagunça de documentos, links e referências em escala global. Os dois sistemas têm em comum a filosofia de fazer pouca coisa, mas fazer bem o que escolheram fazer, e permitir que os usuários façam o que bem entenderem utilizando essa fundação. Eles não tentam organizar cada mínimo aspecto da rotina das pessoas. Eles aceitam o fato de que nunca vão conhecer o trabalho das pessoas tão bem quanto elas mesmas e se concentram em permitir que elas tenham liberdade para fazer o que quiserem do jeito que quiserem.