É hora de aprender a desaprender

Dom Price Bloqueado Desbloquear Seguir Seguindo 4 de setembro

As mesmas coisas que nos ajudam a expandir nossos negócios hoje podem impedir o crescimento amanhã. Para crescer melhor, precisamos desenvolver a habilidade de reconhecer quando algo parou de funcionar. Precisamos aprender a desaprender. read more

Alinhando suas equipes de marketing e sucesso do cliente

Eva Klein Blocked Unblock Seguir Seguindo 19 de setembro

Há alguns anos, a HubSpot não tinha uma equipe de marketing de clientes. Fizemos marketing de clientes, mas as atividades foram descentralizadas em vários times sem proprietários claras. Então, quando entrei para a empresa, uma das minhas primeiras iniciativas foi defender a criação e a equipe de marketing de um cliente. read more

Por que não pode produzir outro Nespresso?

Alex Osterwalder Blocked Unblock Seguir Seguindo 24 de setembro

A Nespresso foi um grande sucesso para a Nestlé e, por muito tempo, sua maior fonte de lucro. No entanto, o modelo de negócio inovador e a proposta de valor foram lançados há mais de 30 anos. Desde então, a maior empresa de alimentos e bebidas do mundo parece incapaz de produzir um home run semelhante. read more

Os prós e contras de diferentes formatos de dados: valores-chave x tuplas

Como os dados são formatados sob o capô

Hieu Nguyen (Jack) Blocked Desbloquear Seguir Seguindo 28 de dezembro Foto de Franki Chamaki no Unsplash

Trabalhar no Vasern (um banco de dados cliente para o React Native) me deu a oportunidade de experimentar e testar diferentes formatos de dados, que incluem valores-chave, documentos orientados a colunas, documentos e tuplas. Cada formato foi projetado para se adequar a diferentes cenários. read more

Como não se sentir como um impostor

Shubheksha Blocked Desbloquear Seguir Seguindo 14 de dezembro Crédito

Você já sentiu que não sabe o que está fazendo? Você já sentiu que todo mundo vai descobrir a qualquer momento que você é uma fraude completa? Você já pensou que de alguma forma conseguiu convencer todo mundo de que você é inteligente e conhece suas coisas? Bem vindo ao clube, meu amigo! Você sofre de síndrome do impostor e você é um de nós! Yay! ? read more

Recursos da API do Chrome que você deve saber

tomerpacific Bloqueado Desbloquear Seguir Seguindo 28 de dezembro Foto de Jonatan Quintero no Unsplash

Então você acha que sabe como construir uma extensão do Chrome? Bem, tudo bem e elegante, mas você já ouviu falar sobre menus contextuais? Mensagens entre scripts? Adicionando um crachá ao ícone da sua extensão? Se tudo isso parece fascinante, você está com sorte. Analisaremos alguns recursos interessantes que a API do Chrome nos concede. read more

Como aprender qualquer coisa

Definir um alvo, aprender apenas o suficiente para acertar, ensinar alguém, repita.

Yazeed Bzadough Blocked Desbloquear Seguir Seguindo 7 de janeiro

JavaScript é meu ofício.

Apesar da minha jovem carreira, nenhuma outra habilidade rivaliza com as horas que coloquei nessa linguagem e em seu ecossistema. read more

Como implantar um aplicativo PostgreSQL do Rails 5.2 no AWS Elastic Beanstalk

Evrim Persembe Blocked Unblock Seguir Seguindo 27 de novembro

É oficial, usar Heroku para todos os meus projetos Rails até agora me estragou. Depois de receber alguns créditos da AWS graças a uma competição de arremesso, decidi implantar meu último projeto no Elastic Beanstalk (concorrente Heroku da AWS ). Tudo o que tenho a dizer é que sinto falta de Heroku.

Infelizmente, se você estiver em uma situação semelhante, aqui estão as instruções passo-a-passo para implantar seu aplicativo Rails 5.2 / PostgreSQL no Elastic Beanstalk.

Instalando o CLI do Elastic Beanstalk

Nós vamos usar o terminal neste tutorial. Vamos começar com a instalação da “Interface de linha de comando do Elastic Beanstalk”. Veja como fazer isso no macOS usando o Homebrew :

 brew instalar awsebcli 

Se você estiver usando outra plataforma, pesquise “como instalar o awsebcli na [sua plataforma]” para guiá-lo na direção certa.

Inicializando Pé de Feijão Elástico

Eu assumirei que você já tem uma conta da Amazon Web Services, se não for em frente e crie uma. Agora, entre no diretório do seu projeto e inicialize o Elastic Beanstalk:

 cd my_project 
eb init

Em seguida, o EB CLI fará algumas perguntas para inicializar o aplicativo Elastic Beanstalk. A parte de inicialização é simples. Se você ficar preso em qualquer lugar, você pode conferir a página “Configurar o EB CLI” da documentação.

Criando um novo ambiente

Como você já sabe, seu aplicativo pode ter muitos ambientes (pense neles como configurações diferentes). Por exemplo, você pode ter um ambiente de "produção". Esse é o ambiente que você usa para a versão do seu aplicativo voltada para o usuário. Mas você pode querer ter outro ambiente chamado "teste". É aí que você tenta novas versões do seu aplicativo, antes de enviá-lo ao ambiente de produção.

Podemos criar um ambiente usando o comando abaixo:

 eb create production 

Implantando no Elastic Beanstalk

Supondo que você esteja usando o Git, confirme suas alterações antes de implantar seu aplicativo. O EB CLI implanta seu último commit. Se você implantar antes de confirmar, implantará uma versão anterior do seu aplicativo.

Depois de confirmar suas alterações, implante usando o seguinte:

 eb deploy 

Até aí tudo bem, agora precisamos definir algumas coisas antes que nosso aplicativo realmente comece a funcionar.

Configurando a chave mestra

Você também pode usar o CLI para esse propósito, mas prefiro usar o painel da web para isso. Aqui está como:

  1. Vá para AWS, escolha "Serviços -> Elastic Beanstalk" e clique em seu ambiente.
  2. Abra a guia "Configuração" e clique em "Modificar" sob a caixa "Software".
  3. Em "Propriedades do ambiente", adicione uma nova chave denominada RAILS_MASTER_KEY . Defina seu valor para o conteúdo do seu arquivo "master.key". Você pode encontrar este arquivo no diretório “config” do seu aplicativo Rails.
  4. Clique no botão "Aplicar" na parte inferior da página.

Configurando um banco de dados PostgreSQL

O Elastic Beanstalk fornece uma maneira fácil de configurar um banco de dados, que você pode acessar através de “Configuração -> Banco de Dados”. Eu prefiro não usar isso porque se você precisar reconstruir seu ambiente Elastic Beanstalk, seu banco de dados será excluído. Então, vamos configurar o banco de dados separado do nosso ambiente Elastic Beanstalk.

Criando um banco de dados PostgreSQL no RDS

  1. Vá para a AWS, escolha "Serviços -> RDS".
  2. Escolha "Criar banco de dados".
  3. Escolha “PostgreSQL” e clique em “Next”.
  4. Selecione seu caso de uso, "Produção" ou "Dev / Teste" e clique em "Avançar".
  5. Aqui, você pode experimentar diferentes opções e ver quais são os custos mensais estimados. Acabe com algo que esteja dentro do seu orçamento. Você pode começar com uma instância db.t2.micro , nenhuma implantação multi-AZ e um SSD de propósito geral.
  6. Escolha um identificador de instância, isso é uma espécie de "namespace".
  7. Escolha um nome de usuário e senha, mantenha-os à mão por enquanto, clique em "Avançar".
  8. Na seção "Configurar configurações avançadas", o importante são os grupos de segurança. Selecione “Escolher grupos de segurança VPC existentes” e selecione o grupo de segurança que se parece com “… -AWSEBSecurityGroup-…”
  9. Escolha um nome de banco de dados, como my_app_production .
  10. Clique em "Criar banco de dados", isso vai demorar um pouco.

Permitindo o acesso ao banco de dados

Enquanto isso, vamos adicionar o acesso do Postgres ao seu grupo de segurança:

  1. Vá para a AWS, escolha "Serviços -> EC2".
  2. Clique em “Security Groups” no painel da esquerda.
  3. Escolha o grupo de segurança da seção anterior.
  4. Vá até a guia "Entrada" e clique em "Editar".
  5. Clique em “Add Rule”. Para “Type”, escolha “PostgreSQL” e para “Source” digite o ID do grupo de segurança ao qual você está adicionando esta regra. Deve estar bem acima da aba “Inbound” e deve parecer com o sg-* .
  6. Clique em "Salvar".

Configurando a configuração do banco de dados de produção

Agora, no seu diretório Rails, abra config/database.yml . Altere como tal:

 # ... 

production:
<<: *default
database: <%= ENV['RDS_DB_NAME'] %>
username: <%= ENV['RDS_USERNAME'] %>
password: <%= ENV['RDS_PASSWORD'] %>
host: <%= ENV['RDS_HOSTNAME'] %>
port: <%= ENV['RDS_PORT'] %>
read more

Estabilidade nos algoritmos de ordenação – um tratamento da igualdade

Onel Harrison Blocked Desbloquear Seguir Seguindo 28 de dezembro

Algoritmos estão no coração da ciência da computação. Algoritmos usados para classificar são alguns dos mais fundamentais, úteis e, consequentemente, onipresentes.

Algoritmo – um conjunto finito de etapas não ambíguas para resolver um problema específico.

Constantemente e muitas vezes inconscientemente classificamos e confiamos na ordem dos objetos agrupados. Por exemplo, classificamos as tarefas em uma lista de acordo com a prioridade. Nós empilhar livros nas prateleiras por sua altura. Classificamos as linhas em uma planilha ou banco de dados ou confiamos na ordem alfabética das palavras em um dicionário. Às vezes, até percebemos um certo tipo de beleza em arranjos ordenados.

Foto de Mikael Kristenson em Unsplash

Como programadores, saber como classificamos é importante porque afeta o aspecto de um arranjo ordenado. Nem todos os tipos ordenam os objetos da mesma maneira! Devido a isso, os resultados das operações de classificação diferem com base nos algoritmos usados. Se isso não for reconhecido, poderemos surpreender a nós mesmos ou às pessoas que usam nosso software.

A estabilidade dos algoritmos de classificação é uma das propriedades distintivas entre eles. Ele lida com o modo como o algoritmo trata itens comparáveis com chaves de classificação iguais.

Chave de classificação – Uma chave usada para determinar a ordem dos itens em uma coleção, por exemplo, idade, altura, posição no alfabeto, etc.

Um algoritmo de classificação estável mantém a ordem relativa dos itens com chaves de classificação iguais. Um algoritmo de classificação instável não. Em outras palavras, quando uma coleção é classificada com um algoritmo de classificação estável, os itens com as mesmas chaves de classificação preservam sua ordem depois que a coleção é classificada.

Um exemplo, código e uma demonstração

Imagem mostrando o efeito da classificação estável

A imagem acima ilustra o efeito de uma classificação estável. À esquerda, os dados foram classificados em ordem alfabética por nome. Depois de classificar os dados por Grade, você pode ver que a ordem alfabética dos nomes foi mantida para cada linha com o mesmo Grade.

Imagem mostrando o efeito da classificação instável

Com um tipo instável, não há garantia de que a ordem alfabética seja mantida, conforme mostrado na imagem acima.

Você nem sempre precisa de um tipo estável

Saber se o tipo que você usa é estável é particularmente importante. Especialmente em situações em que seus dados já têm algum pedido que você gostaria de manter ao classificá-lo por outra chave de classificação. Por exemplo, você tem linhas em uma planilha contendo dados do aluno que, por padrão, são classificados por nome. Você também gostaria de classificá-lo por notas, mantendo a ordem de classificação dos nomes.

Por outro lado, a estabilidade do tipo não importa quando as chaves de classificação dos objetos em uma coleção são os objetos em si – uma matriz de inteiros ou cadeias de caracteres, por exemplo – porque não podemos dizer a diferença entre os duplicados chaves.

 // JavaScript 
 // $ 5 dólares se você puder dizer corretamente quais 4 na classificação 
// array foi o primeiro 4 quando a matriz não foi classificada.

números var = [5, 4, 3, 4, 9];
numbers.sort (); // [3, 4, 4, 5, 9] read more

O que eu aprendi dois anos pós-bootcamp

Kara Luton Blocked Unblock Seguir Seguindo 28 de dezembro Minha coorte de Iron Yard

Já faz dois anos desde que eu deixei para trás a minha carreira de publicista de música – uma que trabalhei para toda a faculdade e miraculosamente consegui um lugar cobiçado – para começar um programa de engenharia de frontend de três meses no The Iron Yard. Eu não tinha ideia sobre nada dentro da indústria de tecnologia, e mal sabia o que era uma div. Os últimos dois anos foram alguns dos momentos mais difíceis da minha vida, mas estou tão feliz por ter iniciado essa jornada. read more

Como verificar se uma entrada está vazia com CSS

Zell Liew Blocked Unblock Seguir Seguindo 28 de dezembro

É possível saber se uma entrada está vazia apenas com CSS?

Eu tive essa pergunta quando tentei criar um componente de autocompletar para o JavaScript. Basicamente, eu queria:

  1. Ocultar um menu suspenso se a entrada estiver vazia
  2. Mostrar a lista suspensa se a entrada estiver preenchida

Eu encontrei uma maneira de fazer isso. Não é perfeito. Existem algumas nuances envolvidas, mas quero compartilhar com você.

A forma

Primeiro, vamos criar um formulário para estarmos na mesma página. Nós vamos usar um formulário simples com uma entrada.

 <form> 
<label for = "input"> Entrada </ label>
<input type = "text" id = "input" />
</ form>

Quando a entrada é preenchida, queremos mudar sua border-color para verde. Veja um exemplo do que estamos criando:

Verificando se a entrada está vazia

Eu confiei na validação do formulário HTML para verificar se a entrada estava vazia. Isso significava que eu precisava de um atributo required .

<form>
<label> Entrada </ label>
<tipo de entrada = "texto" nome = "entrada" id = "entrada" necessário />
</ form> read more

O que eu fiz este ano para avançar na minha carreira – e por que você deveria fazer essas coisas também

Ou: ponto de interrupção – um ano em revisão

Daphna Regev Blocked Unblock Seguir Seguindo 28 de dezembro

Durante o ano passado, e à luz da minha última pesquisa de emprego, comecei a pensar muito sobre onde estou como desenvolvedor e onde quero estar. Senti que precisava me tornar mais profissional, além de decidir para onde minha carreira está indo. Eu queria ser mais proativo sobre minhas escolhas, e não (apenas) ser arrastado por decisões aleatórias. read more

Tia Keenan

O organizador da comunidade discute como um sistema alimentar anti-capitalista pode se parecer

Alicia Kennedy Blocked Desbloquear Seguir Seguindo 14 de dezembro

Alicia fala com a escritora de queijos e organizadora da comunidade, Tia Keenan, sobre a produção de laticínios, sistemas alimentares anticapitalistas e suas galinhas no quintal. "Você não pode resolver um problema sistemático através da vontade individual", diz Keenan. "Se pudéssemos, você sabe, o mundo seria realmente diferente." read more

Leah Kirts

Uma conversa sobre educação nutricional e ensinar as crianças sobre o veganismo

Alicia Kennedy Blocked Desbloquear Seguir Seguindo 14 de dezembro

Alicia fala com a escritora de culinária e educadora de nutrição Leah Kirts sobre sua educação na área rural de Indiana, seu tempo no programa de mestrado em estudos gastronômicos da Universidade de Nova York e ensinar às crianças sobre o veganismo. read more

Lagusta Yearwood

O chocolateiro discute os descuidos do veganismo, a sopa de escala variável e as práticas de negócios anarquistas

Alicia Kennedy Blocked Desbloquear Seguir Seguindo 14 de dezembro

Alicia conversa com o chef e chocolatier Lagusta Yearwood, dono da loja de chocolates Lagusta's Luscious e seu café irmão, Commissary, em New Paltz, Nova York. Ela também é co-proprietária de confeitaria em Nova York, e seu livro de receitas, Sweet X Salty: A arte de confeitaria vegana de Lagusta's Luscious, será lançado em 2019. read more

Lukas Volger

Uma conversa com o autor do livro de receitas e o diretor editorial do periódico gastronômico queer Jarry Mag

Alicia Kennedy Blocked Desbloquear Seguir Seguindo 14 de dezembro

Alicia fala com Lukas Volger sobre sua dieta vegetariana de 60%, livros de culinária, linhas de hambúrgueres vegetarianos e seu trabalho no diário de comida queer Jarry Mag . read more

Nadya Agrawal

O fundador da revista Kajal fala sobre como o veganismo pode se conectar melhor com outros movimentos de justiça social

Alicia Kennedy Blocked Desbloquear Seguir Seguindo 14 de dezembro

Alicia fala com a escritora de cultura Nadya Agrawal, fundadora da revista centrada no sul da Ásia, Kajal , sobre o que a fez se tornar vegana, conexões entre o veganismo e outros movimentos de justiça social e latrinas com cúrcuma. read more

Gabriel Hernandez

O chef da Mesa Verde em Porto Rico sobre os desafios da reabertura após o furacão Maria

Alicia Kennedy Blocked Desbloquear Seguir Seguindo 15 de dezembro

Alicia fala com o chef Gabriel Hernandez, da Mesa Verde, em Old San Juan, Porto Rico, sobre as conotações de “vegetariano”, as conseqüências do furacão Maria e o ressurgimento da beterraba da ilha. read more