Blog

  • Termos Slave e Master são abolidos do Python

    Termos Slave e Master são abolidos do Python

    A partir da versão 3.8 do Python, os termos master e slave serão alterados para worker e helper. A decisão se dá após debates da comunidade sobre a terminologia usada,  que já duram quase duas décadas.

    “Por razões de diversidade, seria legal tentar evitar a terminologia ‘mestre’ e ‘escravo’, que pode ser associada a escravidão”, escreveu Victor Stinner, um dos desenvolvedores no Red Hat, em seu pedido mais recente para troca da terminologia.

    O pedido gerou diversas discussões e dentre sugestões, críticas e respostas, um usuário identificado como Steve D’Aprano, comentou “Na verdade, nas subculturas BDSM, ‘mestre/escravo’ pode ter conotações *positivas*. Você quer dar suporte a diversidade, então por que quer discriminar essa subcultura?”.

    Sugestões foram feitas, como webmaster/postmaster, master/apprentice, parent/children, etc. Mas no final ficou decidido que passaria a se chamar “workers” e “helpers” (algo como operário e ajudante) e o “master process” passará a se chamar “parent process” (processo pai/mãe).

    Apesar da terminologia jé ser muito usado na área de hardware, outras comunidades na área de software já fizeram modificações similares. Em 2014, Drupal e Django trocaram as terminologias para primary/replica e leader/follower, respectivamente.

    Com informações do Motheboard.vice.com e bugs.python

  • Adobe Anuncia Plataforma Aberta para Experience Design com o Adobe XD CC

    Adobe Anuncia Plataforma Aberta para Experience Design com o Adobe XD CC

    A Adobe anunciou que está abrindo uma plataforma para permitir que usuários, empresas e desenvolvedores criem ferramentas personalizadas para serem usadas com o ecossistema do Adobe XD.

    Já disponível para parceiros, a API do Adobe XD agora é aberta para que os desenvolvedores possa adicionar novas ferramentas, automatizar projetos e conectar a ferramentas e serviços comuns aos designers ou específicas para cada projeto.

    Junto a isso, o Adobe XD também agora apresenta integração com ambientes de colaboração populares como o Microsoft Teams, Slack e Jira Software Cloud.

    “Estamos compromissados como o desenvolvimento de um ecossistema ricos acerca do Adobe XD, para atender as necessidades do designer moderno. (…) Oferecer experiências de usuário atraentes e engajadas é imperativo para marcas, empresas e todos os produtos digitas, e a Adobe está focada em prover aos designers poderosos recursos de colaboração”

    Scott Belsky. Diretor de Produto e Vice-Presidente Executivo do Adobe Creative Cloud.

    A plataforma aberta estará disponível ainda em 2018, mas a Adobe já vem trabalhando para construir plugins com o XD com parceiros como a Microsoft, Trello, UserTesting, Airtable, Dribble, Sillicon Publishg, Slope, inMotionNow, Astute Graphics, Anima e Google Cloud, além de suas próprias ferramentas como o Behance e Adobe Stock.

    Fundo de 10 milhões de dólares para capacitação em inovação criativa

    A Adobe também revelou que seu fundo de incentivo ao design, Adobe Fund for Design, criado em Maio deste ano, distribuiu uma grande quantidade  de investimentos para desenvolvedores de UX em todo mundo. Os investimentos iniciais incluíram indivíduos e empresas, com diversos produtos disponíveis ainda este mês:

    • CloudApp – Video, webcam, captura de tela com anotação e criação de GIF através da nuvem.
    • Protoio, Inc., makers of Overflow – Capacita designers a projetar, apresentar e compartilhar bonitos diagramas de fluxo que contam uma história.
    • Stark – Ajuda seu projeto e a construir produtos que são acessíveis éticos e inclusivos.
    • Florian Schulz, Maker of Ratio – Criar ferramentas para integração de tipografia.
    • Precious Design Studio – Um estúdio que ajuda inovadores a modelarem produtos e serviços que as pessoas amem interagir, bem como ferramentas de design como Data Populator e Open Color Tools.
    • Odin Chart – Tyler Wolf é um designer de visualização de dados construtor do Odin Chart, uma ferramenta simples que cria gráficos para produtos digitais e publiccações.
    • Iconscout by Chamestudio – Ícones de alta qualidade, ilustrações e fotos stock em um único lugar.
    • Impekable – Agência digital especializada em experiência do usuário e desenvolvimento de softwares.
    • UI Faces – Avatares para maquetes (mockups) de design.
    • Prototypr.io – Comunide para designers que querem compartilhar seus trabalhos e ficarem atualizados com as últimas ferramentas e novidades sobre design.
    • Modulz – Gerador de código para construção de interfaces gráficas sem a necessidade de programar.
    • Design+Code – O time por traz dos populares cursos de código e dedsign e do plugin Angle.
    • Yummygum – Criar designs belos e experiencias refrescantes para web e mobile.

     

    A Adobe também anunciou algumas novidades para o Adobe XD, como facilidade nos workflows, para o processo designer-desenvolvedor e opções de extrair assets.

    O Adobe XD está disponível gratuitamente através do plano Start da Adobe ou através dos planos de aplicativo único ou do Adobe CC.

     

    Com informações do Abduzeedo e Adobe News

  • Como redirecionar seu site / página por localização

    Como redirecionar seu site / página por localização

    As vezes você precisa trabalhar com sites ou projetos multi-idiomas. Alguns desses projetos carregam dinamicamente a tradução ou possui páginas específicas em outro idioma. Redirecionar automaticamente para o conteúdo específico da região é um comportamento fundamental para uma boa experiência do usuário.

    Detecção por Geolocalização

    A forma mais simples e rápida de fazer isso, é através de uma API open-source online chamada Nekudo (https://geoip.nekudo.com/). O Nekudo não está mais disponível e virou IPI. Você precisa fazer um cadastro gratuito em https://ipapi.com/product e pegar sua chave e cadastrar o IP. Na dúvida de saber qual o IP do seu server, abra o seu prompt de comando (windows) ou terminal (Unix/Mac/Linux) e digite ping seusite.com.br.

    A forma ideal de fazer isso é a partir da sugestão, ao invés do redirecionamento direto, como é feito no site da Apple e Adobe. Isso porque o usuário pode estar em viagem ou simplesmente preferir usar o conteúdo em outro idioma.

    Vamos para a prática.

    Javascript

    Para facilitar, vamos usar um jQuery básico, que está presente em quase todos os sites e sistemas. Basta um “ajaxizinho” apenas para chamarmos a API do Geoplugin.

    A URL https://api.ipapi.com/, seguido da chave e IP já devolve os dados em formato JSON. Como ele vai pegar o IP atual do usuário, não é necessário passar o IP:

    O retorno então será:

    
    

    Agora basta tratarmos o código para que execute uma ação e depois redirecione. Ficando assim:

    Nesse ponto, apenas verificamos se não está no Brasil e ele vai redirecionar a página em questão.

    Todavia, ele não vai guardar essa preferência. Logo, toda vez que a pessoa entrar no site, ela vai ter que responder a pergunta novamente. Mas para evitar que isso ocorra, podemos usar o localStorage. Garantindo assim que seja memorizada a opção e evitando que a API seja requerida desnecessariamente. O código final ficaria assim:


    Como saber se está funcionando?

    Para testar, basta você usar um serviço de VPN. Você pode fazer isso através de algum site, programa ou simplesmente rodando pelo Opera, que já possui uma VPN própria e é ótimo mantê-lo instalado para testes. Recomendamos que você use o Opera, pois, além de ser um bom navegador, ele é mais seguro para evitar usar sites duvidosos ou serviços de terceiros. O Opera Developer é uma boa opção e possui VPN integrado. Clique na imagem para ser direcionado a página de download oficial.

    Baixar Opera Developer

    Após instalar o Ópera, para habilitar o VPN, basta ir nas configurações, a partir do símbolo do O, no canto superior esquerdo.

    Indo na guia Avançados > Recursos, ele vai retornar a primeira opção como VPN. Simplesmente a habilite.

    Feito isso, a opção de VPN vai ficar visível e você poderá testar o funcionamento em diversos locais.

    Ah, mas eu não quero redirecionar assim, quero que seja pelo servidor

    Muito bem, digamos que você queira que o redirecionamento seja feito direto pelo servidor porque você é mal que nem um pica-pau. Sem problemas.

    Para isso, você pode usar o cURL da sua linguagem de preferência e fazer o redirecionamento através dela. Aqui vai um exemplo mais comum, em PHP:

    Lembrando que isso precisa ser inserido antes mesmo do doctype, pois se não pode retornar o erro de Headers Already Sent.

    Concluindo

    É bem simples testar o IP quanto a localização. Há diversos serviços, alguns pagos e outros gratuitos, que fazem esse tipo de redirecionamento. Também há plugins e extensões que você pode instalar em seu servidor, mas certamente a demonstrada aqui vai servir para a grande maioria dos projetos.

    Curta e compartilhe 😀

  • Adobe pretende lançar versão completa do Photoshop para iPad

    Adobe pretende lançar versão completa do Photoshop para iPad

    Com o poder de fogo atual dos iPads, já é possível executar softwares mais pesados e complexos. Por esse motivo, a Adobe está planejando lançar a versão completa de seu aplicativo de edição de fotos  para o dispositivo da maçã. Esse processo é parte de uma nova estratégia para tornar seus produtos multiplataformas, algo que já começou com o Lightroom.

    Além disso, nesta semana, a desenvolvedora Serif lançou uma versão do Affinity Designer, concorrente do Illustrator, para iPad. A introdução da versão completa do Photoshop para o dispositivo, traria ainda mais espaço para a Adobe no iOS, que no momento está com a área de design dominado por outras empresas.

    Lighroom para iPad
    O Lightroom para iPad e Desktop já compartilham a mesma versão e estrutura

    Outro motivo pelo qual o Photoshop pode ser uma boa aposta da Adobe, é a função que tem o iOS de sincronizar arquivos entre vários dispositivos, facilitando a integração do usuário entre desktop e mobile. Ainda, o editor de imagens teria compatibilidade integral com o Apple Pencil.

    O aplicativo está previsto para chegar ao mercado em 2019, caso não hajam problemas mais sérios em seu desenvolvimento.

    Os clientes da Adobe, particularmente em mídia e entretenimento, estão cada vez mais trabalhando  em  tablets, em vez de computadores de mesa, e pediram à empresa a capacidade de fazer ‘edições on the fly’ em seus projetos criativos, disse Scott Belsky, vice-presidente executivo da Creative Cloud, à Bloomberg.

    Diante dessa nova informação e do lançamento anterior do Lightroom, tudo indica que a criação de aplicativos multiplataformas é a estratégia da Adobe para os próximos anos . Uma nova versão do Illustrator também estaria em desenvolvimento, mas sem muitas informações e previsão de lançamento.

    Com notícias da Bloomberg e Blog da Adobe.

  • Suse Linux é  vendido para a EQT por US $ 2,5 bilhões

    Suse Linux é vendido para a EQT por US $ 2,5 bilhões

    A empresa britânica de software Micro Focus International anunciou nesta segunda-feira que concordou em vender seu sistema operacional Linux SUSE para um fundo de private equity assessorado pela EQT Partners, da Suécia, por US $ 2,535 bilhões.

    A Micro Focus disse que usaria parte dos recursos para reduzir a dívida e poderia devolver parte do restante aos acionistas.

    A SUSE, pioneira em software de código aberto de nível corporativo, faz parte da Micro Focus desde 2014, quando a empresa britânica adquiriu o The Attachmate Group por US $ 2,35 bilhões.

    É uma das mais antigas empresas de código aberto e talvez a primeira a fornecer serviços corporativos de Linux. Ela possui mais de 1400 funcionários em todo o mundo e a empresa fez uma venda de US $ 320 milhões em um mês que termina em outubro de 2017. Na época, a SUSE representava pouco mais de um quinto da receita do grupo Attachmate, segundo a Micro Focus.

    O valor arrecadado de US $ 2.535 é 26,7  vezes o lucro operacional ajustado da unidade de software para os 12 meses até o final de outubro de 2017.

    A SUSE está muito empolgada pela parceria feita com EQT . Mencionado em seu blog , o foco será expandir ainda mais o SUSE no campo de infraestrutura de TI.

    “Esta é uma notícia empolgante para todos nós aqui na SUSE e marca o próximo passo em nossa   trajetória de crescimento e dinâmica. O investimento e o suporte fornecidos pela EQT nos permitirão   continuar impulsionando nossa estratégia de construção e compra de expansão tanto organicamente   quanto por meio da aquisição de tecnologia..”

    O CEO da SUSE  Nils Brauckmann, promete que toda equipe da SUSE  permanecerá unida e que  liderará os negócios neste próximo capítulo mantendo-se claramente focado em sua missão: ajudar os clientes a transformar sua infraestrutura de TI para reduzir custos e competir de forma mais eficiente. reduzindo a complexidade e tornando-se mais ágil.

     

  • Como Selecionar o Item de Uma Tabela HTML

    Como Selecionar o Item de Uma Tabela HTML

    Uma dúvida foi postada no grupo de Design e Programação de nossa página, lá no Facebook, hoje. Essa pergunta era referente a como selecionar de uma linha de uma tabela HTML?

    Para tal, basta usar um pouco de Javascript e CSS.

    Montando a Tabela

    Vamos montar, para testar, uma tabela simples, respeitando a semântica HTML básica. Vamos aproveitar para colocar logo um botão, que vai ser por onde podemos visualizar os dados da linha selecionada:

    <table id='minhaTabela'>
         <thead>
              <tr>
                   <th>ID</th>
                   <th>Nome</th>
                   <th>Idade</th>
              <tr>
         </thead>
         <tbody>
              <tr>
                   <td>01</td>
                   <td>Rodrigo</td>
                   <td>33</td>
                   </tr>
              <tr>
                   <td>02</td>
                   <td>Taynara</td>
                   <td>21</td>
              </tr>
              <tr>
                   <td>03</td>
                   <td>Raveny</td>
                   <td>22</td>
              </tr>
              <tr>
                   <td>04</td>
                   <td>Sérgio</td>
                   <td>51</td>
              </tr>
              <tr>
                   <td>05</td>
                   <td>Alice</td>
                   <td>20</td>
              </tr>
         </tbody>
    </table>
    
    <button id="visualizarDados">Visualizar Dados</button>
    

    Agora precisamos incluir um estilo para que a tabela fique mais elegante.

    É importantíssimo prestar atenção ao class “selecionado” que vai ser a referência para o seu javascript saber qual linha está selecionada na tabela.

    #minhaTabela{
      width:80%;
      margin:0 auto;
      border:0;
      box-shadow: 0 5px 30px darkgrey;
      border-spacing: 0;
    }
    
    #minhaTabela thead th{
      font-weight: bold;
      background-color: black;
      color:white;
      
      padding:5px 10px;
    }
    
    #minhaTabela tr td{
      padding:5px 10px;
      text-align: center;
      
      cursor: pointer; /**importante para não mostrar cursor de texto**/
    }
    
    #minhaTabela tr td:last-child{
      text-align: right;
    }
    
    /**Cores**/
    #minhaTabela tr:nth-child(odd){
      background-color: #eee;
    }
    
    /**Cor quando passar por cima**/
    #minhaTabela tr:hover td{
      background-color: #feffb7;
    }
    
    /**Cor quando selecionado**/
    #minhaTabela tr.selecionado td{
      background-color: #aff7ff;
    }
    
    button#visualizarDados{
      background-color: white;
      border: 1px solid black;
      width:50%;
      margin: 10px auto;
      padding:10px 0;
      display: block;
      color: black;
    }
    

    Javascript

    Para sermos mais justos, vamos fazer o exemplo usando Javascript puro. No nosso exemplo, vamos contemplar a opção de selecionar uma única linha ou mais de uma linha, opção determinada apenas por um parâmetro. Ainda vamos ver como manipular os dados.

    Inicialmente, precisamos capturar a tabela e adicionar, à ação de clique, uma função que adicione ou remova a classe de seleção:

    var tabela = document.getElementById("minhaTabela");
    var linhas = tabela.getElementsByTagName("tr");
    
    for(var i = 0; i < linhas.length; i++){
    	var linha = linhas[i];
      linha.addEventListener("click", function(){
      	//Adicionar ao atual
    		selLinha(this, false); //Selecione apenas um
                    //selLinha(this, true); //Selecione quantos quiser
    	});
    }
    

    A função selLinha() vai ser responsável por adicionar ou remover a class “selecionado” do nó. Passamos também um parâmetro que vai determinar se poderá selecionar mais que uma linha ou apenas uma. O primeiro laço, caso múltiplos seja falso, irá apenas desmarcar todos as linhas antes de marcar a linha clicada.

    /**
    Caso passe true, você pode selecionar multiplas linhas.
    Caso passe false, você só pode selecionar uma linha por vez.
    **/
    function selLinha(linha, multiplos){
      if(!multiplos){
      	var linhas = linha.parentElement.getElementsByTagName("tr");
            for(var i = 0; i < linhas.length; i++){
               var linha_ = linhas[i];
               linha_.classList.remove("selecionado");    
            }
      }
      linha.classList.toggle("selecionado");
    }
    

    Agora vamos adicionar uma função ao clique do botão para que a gente possa visualizar os dados selecionados. Para isso, iremos justamente capturar apenas as linhas que tiverem a class “selecionado” e, através de um laço, vamos concatenar os valores dentro dos nós <td> da(s) linha(s) selecionada(s).

    /**
    Exemplo de como capturar os dados
    **/
    var btnVisualizar = document.getElementById("visualizarDados");
    
    btnVisualizar.addEventListener("click", function(){
    	var selecionados = tabela.getElementsByClassName("selecionado");
      //Verificar se eestá selecionado
      if(selecionados.length < 1){
      	alert("Selecione pelo menos uma linha");
        return false;
      }
      
      var dados = "";
      
      for(var i = 0; i < selecionados.length; i++){
      	var selecionado = selecionados[i];
        selecionado = selecionado.getElementsByTagName("td");
        dados += "ID: " + selecionado[0].innerHTML + " - Nome: " + selecionado[1].innerHTML + " - Idade: " + selecionado[2].innerHTML + "\n";
      }
      
      alert(dados);
    });
    

    Vamos Testar?

    ID Nome Idade
    01 Rodrigo 33
    02 Taynara 21
    03 Raveny 22
    04 Sérgio 51
    05 Alice 20

    No entanto, se você preferir ver todo código completo, acesse o JsFiddle incorporado abaixo:


    Gostou do post curtinho? Tem dúvidas? Deixe seu comentário e compartilhe com quem você achar que vai gostar. Aproveite para entrar no nosso grupo de Design e Programação no Facebook ou em nossa página. Acompanhe-nos no Twitter e Instagram.

  • Apple libera 1º beta público do iOS 12 para iPhones e iPads

    Apple libera 1º beta público do iOS 12 para iPhones e iPads

    Em junho, a Apple anunciou que o update deve chegar ao público geral no próximo mês de setembro com melhorias em Realidade Aumentada, no app Photos, na Siri e no FaceTime.

    O iOS 12 da Apple inclui selfies de emoticons animados, notificações simplificadas e uma maneira de rastrear o uso do seu dispositivo.

    A  Apple liberou nesta semana o primeiro beta público do iOS 12 para donos de iPhone e iPad que participem do programa beta da empresa. Caso você ainda não participe, é possível fazer isso acessando o site beta.apple.com  com o aparelho em que quer rodar o beta do iOS 12 e então fazer um cadastro com a sua Apple ID.

    Basta baixar um perfil especial que te permitirá fazer download dos updates beta do iOS diretamente com o iPhone ou iPad. Os novos betas serão entregues diretamente pelo dispositivo como se fossem novos updates comuns.

    Anunciado oficialmente pela Apple no WWDC 2018, no início de junho, o iOS 12 deve chegar ao público geral em setembro trazendo melhorias em Realidade Aumentada, no app Photos, na Siri e no FaceTime.

     

    Iphone X IOS 12.

    A  Apple lança seu mais novo software móvel todos os anos em junho, na Worldwide Developers Conference. Em seguida, ele libera o sistema operacional para desenvolvedores para fazer aplicativos antes do lançamento do IOS , normalmente em setembro. No início de 2015, começou a permitir que o publico testasse seu software móvel com o iOS 8.3. Oferecer o sistema operacional cedo para os desenvolvedores e para o público tem como objetivo capturar mais bugs e garantir que o software funcione bem antes de ser lançado para um público amplo.

    O iOS 12, que chegará com a próxima safra de iPhones em poucos meses, se concentra mais em correções de bugs e ajustes menores do que as novas atualizações importantes. Mas tem alguns novos recursos que você poderá testar na versão beta.

    FaceTime Animoji

    Um deles, para usuários do iPhone X . É o Animoji atualizado, aqueles emoji animados que rastreiam seus movimentos faciais e podem ser enviados para amigos através do aplicativo Mensagens. Com o iOS 12, você pode criar emoji que se parece com você, transformar-se em um fantasma ou dinossauro ou até mesmo esticar a língua. Você pode colocar seu emoji em cima do seu corpo e usá-lo durante uma conversa no FaceTime. E com o beta, você poderá conversar com até 32 pessoas no FaceTime ao mesmo tempo.

  • Corel Lança Nova Versão de Sua Suite Focada em Design de Produtos

    Corel Lança Nova Versão de Sua Suite Focada em Design de Produtos

    No último dia 12 de Junho, a Corel lançou a nova versão de sua suite específica para designers de produtos e engenheiros. Chamada de CorelDRAW Techinical Suite 2018, esta versão traz ainda mais integração com plataformas CAD e se foca na criação e finalização de produtos técnicos, como esquemas, manuais de construção e similares.

    A suite inclui o Corel DESIGNER e os já conhecidos pela maioria, Corel DRAW e Corel PHOTO-PAINT, dentre outros aplicativos satélites.

    Tela do Corel Designer
    Tela do Corel DESIGNER 64 bits

    Dentre as novidades da versão 2018 estão o novo modelo de desenho por simetria (modo similar ao perspectiva, do Illustrator, que permite desenhar em planos tridimensionais) e a conversão quase automática de modelos 3D em imagens vetorias 2D para ilustração profissional.

    Modo de desenho por Simetria
    O novo modo de simetria ajuda o usuário a criar ilustrações isométricas.
    Modo de conversão 3D
    É possível converter modelos 3D para 2D para editar os vetores e dar melhores contextos a manuais e esquemas técnicos

    O que está incluso?

    • Corel DESIGNER® 2018 – Ilustração de precisão técnica
    • CorelDRAW® 2018 – Conhecido programa de ilustração e impressão
    • PHOTO-PAINT® 2018 – Editor de imagem matricial
    • PowerTRACE® 2018 – Converso de imagem matricial para vetorial
    • Font Manager™ 2018 – Gerenciador de fontes
    • XVL Studio Corel Edition – Visualização 3D
    • CONNECT™ – Gerenciador de conteúdo
    • CAPTURE™ 2018 – Captura de tela
    • AfterShot™ 3 HDR – Editor de fotos RAW
    • PhotoZoom Pro 4 – Plugin de exportação de fotos digitais para o PHOTO-PAINT

    O novo CorelDRAW Techinical Suite 2018 já está disponível no Brasil por R$2.699,00, permanentemente ou através de assinatura anual por R$1.099,00 e pode ser adquirido direto no site da Corel.

    Com informações do blog da Corel e da página oficial do produto