24 coisas que eu aprendi como um desenvolvedor de software vivendo no Ubuntu por uma semana

Tenho sido um desenvolvedor de web e software há mais de 15 anos. Nesses anos, usei cada distribuição do Windows desde 95 e todos os Mac OS X. Executei configurações de desktop, configurações de laptop móvel, configurações de laptop de substituição de desktop e até quatro exibições externas ao mesmo tempo em execução em várias máquinas com switches KVM, VNC, RDP e SSH. Eu usei cada peça de hardware de um AlphaSmart para um Palm Pilot para um Raspberry Pi para o iPad 1 que esperei na linha 12 horas para o dia do lançamento. Para não mencionar os Gateways, Dells, VAIOs, Macbooks, plataformas personalizadas, ou o meu novo e brilhante Alienware 15 R3 🙂

Cortesia do meu iPhone e realmente pouca iluminação

Em todos esses dispositivos, escrevi software, desenvolvi conteúdo ou puxado para longe deles de alguma maneira ou de outra forma. Eu também joguei sobre quase todos, também – Estou me lembrando das centenas de horas de Snake, eu loguei minha TI-83 no ensino médio. Claro, como um jogador, nada chegará perto do Windows. A lacuna é tão ampla que já haverá eras antes que alguém atinja (embora isso não seja ABSOLUTAMENTE verdadeiro, o que vou entrar mais tarde). Esta peça não é sobre isso no entanto. Eu só quero que você saiba de onde eu venho.

Esta peça é sobre a transição dos principais sistemas operacionais (Windows, Mac) para o Linux como desenvolvedor de software.

Como desenvolvedor, tive que aprender a trabalhar com praticamente todos os ambientes apenas para sobreviver. Entre esses ambientes, o Linux realmente foi inevitável. Não é que eu gostaria de evitá-lo. É realmente uma peça notável de tecnologia. Um que há muito considero como o mais importante projeto de código aberto de todos os tempos. O que me surpreendeu, porém, é que nunca trabalhei e vivi dentro de um ambiente Linux. Sim, talvez eu tenha SSHed em uma máquina Linux hospedada na nuvem todos os dias durante anos ou tenha o Ubuntu 16.04 executado no VirtualBox ou o Parallels, ou um pouco de Raspberry Pi que arrasou o Ubuntu sob minha mesa, mas nunca usei mais do que o Apache, o MySQL, o PHP , Nó, SSH, VNC … material terminal.

A CLI.

Eu pensei que conhecia o Linux …

Então, quando eu decidi que era sobre o tempo que eu fiz a mudança e correu o pleno – em toda a sua glória – ambiente de desktop Linux (também conhecido como Ubuntu 16.04 w / Unity), eu disse "Não há problema." Minha esposa disse: "Você sabe O que vai acontecer, certo? "

Eu fiz um rosto …

E, de qualquer forma, eu já estava de joelhos. O desenvolvimento em Node & Docker em uma VM ou WSL é terrivelmente lento (literalmente, cerca de 30% no melhor das operações de E / S versus Linux nativo). Então, continuei a ressuscitar meu Master Boot Record cada vez que o arruinei com uma instalação do Ubuntu com falha (graças a Deus por backups). Lembre-se, estou instalando uma instalação de inicialização dupla com o Windows 10 do outro lado e uma mistura de unidades NVMe e SATA. Então, enquanto eu culpo minha esposa por me jinxing, isso era claramente inevitável.

Barra lateral : se você estiver tentando uma configuração como essa, certifique-se de verificar suas configurações de inicialização UEFI e segurança (eu recomendo o Google por isso) ou você estará reparando esse MBR mais que algumas vezes.

De qualquer forma, uma ou duas noites sem dormir depois, eu finalmente consegui com o Windows 10 e o Ubuntu 16.04 com duas funções de sucesso! Então, tomei a decisão inteligente de dormir um pouco antes de configurar o meu sistema (instalar aplicativos, configurar atalhos e, de outra forma, torná-lo tão confortável como os meus ambientes Windows e Mac). Uma decisão inteligente porque isso não seria tarefa pequena …

A partir da escrita, eu tenho cerca de 7 a 10 dias. Eu continuo a ajustar meu sistema operacional … Eu continuo a sucumbir às noites sem dormir … E eu realmente não sei quando vai acabar …

E ainda sorrio.

Cortesia de AMC / Gene Page

Você vê, sabendo o pouco que eu sabia sobre o Linux, eu ainda sabia que eu seria capaz de fazer exatamente o que eu precisava com um pouco de trabalho útil. Eu sou um programador e, por isso, ter uma vantagem de acesso rápido e fácil ao sistema parece ser um conceito glorioso.

E isso provou ser inteiramente verdade.

Como um desenvolvedor de Nó, eu já usei para escrever um gerenciador de janela simples que funciona em vários sabores do Linux, com algumas dependências comuns (wmctrl, xprops). Eu configurei atalhos personalizados para iniciar inteligentemente o meu ambiente de desenvolvimento multi-aplicativo com um clique de uma chave ou jogar o ponteiro do mouse de uma área de trabalho para a outra com um clique do mouse. E finalmente tomei o controle total do uso de recursos do meu sistema!

Bem, tudo isso pode ser feito no Windows & Mac, não? Pode. E eu sei porque eu fiz isso. Mas há uma diferença. O Linux é imersivo. Você precisa conhecer sua máquina. O terminal, literalmente, você olhou as entranhas do seu sistema operacional em todos os momentos. Você mora dentro dela. Deve haver uma ligação.

Você deve fazer Tsaheylu.

Tsaheylu: Na'vi palavra que significa 'The Bond'; Crédito com fotos james-camerons-avatar.wikia.com

E para isso, você é um com a máquina.

Voce entende? Porque eu não fiz. Nem mesmo perto. Uma semana e ainda não tenho certeza de que sim. Mas como eu decidi começar a anotar algumas idéias sobre isso no Evernote ( que eu também tive que hackear porque Linux … ), percebi que criei mais de 20 idéias, como, 5 minutos. E então, aqui você vai.

24 coisas que eu aprendi (e / ou fui lembrado) como um desenvolvedor de software (e gamer!) Vivendo no Ubuntu por uma semana:

1. Você pode fazer qualquer coisa …

Sim, duvidamos disso constantemente. Mas é verdade. Se você está tentando personalizar algo, tema algo, automatize algo, monitore algo, simplifique algo ou, de qualquer forma, afaste seu sistema operacional de alguma forma, você provavelmente pode! E outras pessoas provavelmente já, o que é ainda melhor! Há tantos projetos Linux hospedados no GitHub; é esmagadora. AskUbuntu.com é um recurso ainda mais valioso que respondeu praticamente qualquer dúvida que você possa pensar. Não se deixe enganar como eu também e acredito que um recurso que você está procurando é obsoleto, só porque tem uma década de idade. O Linux resistiu ao teste do tempo, e muitos desses recursos de envelhecimento ainda são minas de ouro de dicas, truques e know-how.

2. É REALMENTE fácil de quebrar

É aí que entra Tsaheylu. Você precisa conhecer o seu sistema por dentro e por fora, porque não é fácil quebrar sua instalação do terminal. Você verá muitos tutoriais, ou a resposta AskUbuntu está lá que diz para você:

 Sudo esta coisa && aquela coisa 

Não confie neles cegamente! Sudo concede privilégios de "superusuário" de comando. Em outras palavras, o comando pode modificar qualquer coisa em seu sistema, uma vez que você concede acesso. Então, não sudo nada antes de saber exatamente o que o comando está fazendo e quais partes do seu sistema operacional dependem dos arquivos afetados. O Linux é extremamente poderoso, extremamente seguro e extremamente fácil de monitorar e manter, mas com grande poder é uma grande responsabilidade. Você pode facilmente:

 sudo rm -rf / 

E como … * que * … todo o seu sistema de arquivos se foi … * poof * … Então, cuide do seu sistema de arquivos como se fosse seu bebê. Porque assim que você digitar essa senha para sudo algo, não há retorno. Sobre essa nota:

3. Tudo é um arquivo!

Praticamente tudo o que é responsável pela execução do sistema operacional Linux é apenas um arquivo no sistema de arquivos (olhando para você de volta do terminal em todos os momentos). Isto é, em grande parte, por que é tão importante saber como seu sistema de arquivos é usado. Seus discos, seus dispositivos de hardware, sua memória, seus aplicativos, configs, tarefas, tudo! Eles são todos os arquivos. Todos podem ser falsificados, transformados, movidos, vinculados e sincronizados. O que você faz com esse conhecimento pode ser o palpite de qualquer um, mas eu já encontrei inúmeros cenários onde isso pode ser um desastre ou uma benção. Em todos os sentidos, porém, os profissionais superam os contras. Isso reduz significativamente a complexidade de um sistema operacional e faz com que um usuário imensamente direto para o relacionamento do SO. E devemos esperar menos de um computador pessoal ? Eu acho que não.

4. Tudo está exposto a você!

Da mesma forma, tudo o que não é um arquivo ainda está completamente exposto a você (e provavelmente sentado em um arquivo em algum lugar que eu ainda tenho que encontrar). Estou falando sobre coisas mais efêmeras, como executar processos, atividades de rede e outros tipos de uso de recursos. Todos são acessíveis das maneiras mais fáceis, com o comando necessário apenas um google ou uma instalação apt-get install (ou veja # 10 ).

5. ~ é onde o coração é

Este é um conceito tão simples que eu vou ter que ser mais gentil aqui apenas para ter certeza absoluta de que eu reforce esse parágrafo o suficiente para fazer justiça à importância real desse conceito crucialmente crítico.

~ (aka tilde ; aka shift + ` ) é o caractere usado pelo Linux para denotar a pasta inicial do usuário atual. Geralmente é:

 / home / <username> 

aka Home

Praticamente tudo o que você faz no seu sistema operacional é armazenado aqui. Configurações e configurações, caches, dados de aplicativos, downloads, documentos, imagens e muito mais. Este também é o único diretório em sua máquina que, por padrão, concede direitos explícitos ao usuário conectado. Sem sudo necessário, aqui. Portanto, tenha mais cuidado com esses arquivos! Messing estes arquivos não irá necessariamente quebrar seu sistema, mas tornará sua vida difícil.

Agora, existem várias outras pastas no seu sistema de arquivos que você deve se familiarizar. Lugares como /usr/bin , /etc , /var , etc. No entanto, esses lugares tendem a ser um pouco mais orientados para o sistema. São lugares que você precisará saber para monitorar seus logs do sistema, fazer alterações nas configurações ou serviços do servidor ou gerenciar dispositivos de hardware. Eu ainda não estou intimamente familiarizado com todos esses, ainda assim, mas estou pegando isso.

6. Gerencie seus terminais!

Uma vez que o terminal é tão integral para tudo o que você faz no Linux (e tão letal para o seu sistema operacional, se for mal utilizado), é importante gerenciar esses pequenos buracos com extrema precisão. Eu descobri o Terminator no meu Ubuntu nos dias do VirtualBox e continua a ser um fantástico programa de gerenciamento de terminais Linux no Ubuntu nativo. Atualmente, tenho configurado para carregar nove terminais em uma única janela, portanto, manter minhas tarefas organizadas e isoladas é uma brisa. Se você gosta de brincadeira como eu, também é completamente personalizável, até o plano de fundo ou a paleta de cores usada para colorir cada terminal.

Além disso, tenha em mente que você pode deixar seu ambiente de desktop totalmente a qualquer momento, pressionando CTRL + ALT + uma das teclas de função para entrar diretamente em um terminal dedicado como qualquer usuário.

7. Atalhos, alias, & / usr / bin

Os atalhos são essenciais para uma experiência maravilhosa no Linux. E, com prazer, o Linux se obriga em mais do que um. As duas maneiras mais fáceis de criar atalhos são adicionando alias (ou funções) ao arquivo bash do seu usuário (geralmente ~/.bashrc ou ~/.bash_profile ) ou adicionando scripts de shell personalizados para /usr/bin . Além de poder associar rapidamente comandos personalizados a qualquer ação que você deseja executar, você também pode facilmente ligar chaves e combinações de teclas para executar esses comandos. Personalize isso com o seu gosto, e ele irá remover todo o pensamento do seu fluxo de trabalho e deixá-lo realmente se concentrar em seu trabalho.

EDITAR : Devido às numerosas respostas que tive (tanto aqui quanto no Reddit), sinto-me obrigado a mencionar que /usr/bin não é o diretório que você deseja usar! Ainda tenho que explorar esta opção, mas a maioria das recomendações parece criar seu próprio diretório bin em casa e, em seguida, vinculá-lo em sua variável $PATH .

8. Tenha um bom teclado

Com toda essa menção de terminais, comandos, atalhos e alias, você provavelmente está pensando: "Golly, isso parece muita digitação!"

Isto é.

E é imperativo que você tenha um excelente teclado para se mexer. Não posso enfatizar isso o suficiente. Tão freqüentemente quanto necessário para entrar em um comando sudo e digite sua senha, você vai querer recuperá-lo na primeira vez. A maioria dos sabores do Linux exibem um atraso obrigatório de três segundos depois de inserir uma senha incorretamente. Ter que fazer isso apenas três vezes acabará levando mais de 10 segundos … Se você é um programador, você sabe o quão devastador é esse tipo de tempo! E também enlouquecendo … E todos sabemos que um programador na inclinação não é um bom programador.

9. Não desista!

Ao ter que entrar em sua senha, eleva-se um tempo alto, causando um grande colapso, não se desespere! Você encontrará o caminho.

Viver no Linux requer grit.

É preciso perseverança. Às vezes, você só precisa deixar um problema para outro dia. Na próxima vez que se tornar um incômodo, dê outro google. Eventualmente, você irá juntar apenas as palavras certas e que a resposta AskUbuntu virá para salvar o dia. Mamãe disse que haveria dias como este, e ela estava certa. O Linux está repleto de idiossincrasias, inconsistências e impossibilidades aparentes. Mas a comunidade é enorme, e o sistema operacional realmente é tão versátil (e hackeável) como você esperaria que o software perfeito de código aberto fosse.

10. Have A Cheat-Sheet

Para poupar-lhe muita dor de cabeça e perder largura de banda no google, mantenha-se uma fraude. Eu ainda estou trabalhando na minha, mas eu recomendo que você anote todos os comandos regulares que você usa. Alias ??todos os comandos mais longos e mais complicados e eliminar o pensamento. Imprima esta folha de truques se precisar e colá-la em sua parede. Há tantos comandos, pastas e truques que você precisa ter em mente ao operar no Linux, que é uma loucura tentar lembrar de tudo. Claro, você pode eventualmente (embora você provavelmente não …), mas, entretanto, salve o problema.

11. É Utopia de um Tinkerer

Se você gosta de mexer, você vai adorar o Linux. Praticamente tudo é personalizável. Se você estiver executando um ambiente de trabalho como Unity ou Gnome, existem várias ferramentas diferentes para isso, como a unidade-tweak-tool e gnome-tweak-tool , além das configurações de sistema cozidas que você obtém com esses ambientes de desktop. Como mencionei anteriormente, praticamente tudo no Linux pode ser reduzido a um arquivo. Então, mergulhe ainda mais no sistema operacional, e você achará que pode ajustar praticamente tudo, incluindo telas de inicialização, decorações de janelas, tarefas automatizadas e configurações de aplicativos ou comportamentos. Há também toneladas de recursos disponíveis com temas personalizados para muitas distros populares do Linux. Nessa nota, também há inúmeras descrições e sabores do Linux para você tentar! Cada um vem com sua própria rotação exclusiva sobre o que um sistema operacional deve ser. Isso é algo que você não obtém com Windows ou Mac.

Contudo…

12. Você nunca testará cada Distro / Sabor …

Com isso dito, não há tempo suficiente em uma vida para testar cada distro e sabor do Linux. Faça sua lição de casa e pesquise as várias distribuições antes de escolher o seu. Como mencionei acima, cada um é único, e cada um tem uma curva de aprendizado associada a ele. Enquanto alguns ambientes de desktop podem ser facilmente instalados em cima de uma distro existente – o Ubuntu, por exemplo, corre muito bem com os ambientes Unity ou Gnome – muitos não e muitas distros precisam ser instalados do zero para realmente obter a experiência autêntica. Além disso, estas são águas lamacentas. Brincando com uma distro já estabelecida, como esta, é uma das maneiras mais fáceis de reduzir seu sistema.

Carrossel do Google quando você procura "distros linux"

13. Você sentirá como se estivesse vivendo nos anos 90

Um exemplo de Linux Man Page; o que você estará examinando com freqüência.

Às vezes, viver no Linux pode trazer uma espécie de sensação nostálgica. Embora o próprio sistema operacional tenha mantido as últimas tendências e até mesmo empurrado os envelopes em muitas áreas, a comunidade ainda está cheia de programadores e desenvolvedores. Toda uma série de pessoas que já sabem trabalhar em torno de pequenos aborrecimentos e um público ainda mais abrangente que viveu em interfaces totalmente baseadas em terminal por décadas. Como resultado, os recursos disponíveis para Linux na web são muito antiquados. A documentação – mesmo oficial – parece ser algo organizado nos anos 90 e você terá dificuldade em encontrar tiros na tela em tutoriais ou páginas de aplicativos. Agora, isso não deve ser uma surpresa, já que muitos desses conteúdos realmente foram desenvolvidos na década de 90. Lembre-se, como mencionei anteriormente, o Linux resistiu ao teste do tempo e, portanto, tem esse conteúdo. Se você pode superar as inadequações estéticas, você não terá nenhum problema em encontrar nada que você esteja procurando.

14. Você sentirá como você é do futuro

Simultaneamente, o Linux também fará você se sentir como se fosse do futuro. Isso ocorre porque essa mesma comunidade de programadores e desenvolvedores que não se importam menos com páginas docs brilhantes é a mesma comunidade que está por trás das cenas desenvolvendo todas as últimas e melhores tecnologias. Então, de muitas maneiras, o Linux está no limite sangrando.

Também foi re-arquiteturad e custom-fit para trabalhar em inúmeras formas de hardware e já é o líder mundial incontestável na computação não-desktop.

À medida que você ajusta o sistema operacional ao seu gosto, ele começa a ter uma vida própria. Ao contrário do Windows ou Mac, o sistema operacional não é alimentado com força para você. É uma criatura viva que você aborrece com as próprias mãos. Esta fusão do homem e da tecnologia é indicativa de um mundo que estamos a aproximar rapidamente e que está sendo possível graças aos esforços da Linus Torvalds (Happy Birthday !!) e da comunidade Linux extremamente inovadora.

15. Ubuntu 17.10 + Gnome 3 é incrível!

14 pontos e mencionei o terminal cerca de 100 vezes e o ambiente de trabalho não uma vez. No entanto, é o ambiente de trabalho que realmente faz para a experiência completa. Recebo todo o vim e xmonad coisa, mas eu sou um desenvolvedor UI …

Eu gosto de um ambiente de trabalho real.

E se o Linux não pudesse me entregar isso, teria sido um disjuntor .

Felizmente, depois de algumas dores de crescimento com o Ubuntu 16.04 + Unity, atualizei para o Ubuntu 17.10 para dar um tiro ao Gnome 3, e o garoto é incrível! O Gnome 3 é rápido, fácil de usar e parece ótimo!

Também posiciona corretamente as janelas na área de trabalho, o que é uma grande vantagem. Os cálculos de posição da janela da Unity são realmente pouco confiáveis, o que é um pesadelo para qualquer gerenciador de janelas.

Escusado será dizer que não testei cada distro ou sabor (por razões que mencionei acima), mas o Ubuntu 17.10 + Gnome 3 é certamente o meu favorito até agora. Baixe um tema escuro e jogue Redshift no topo e você está configurado:

16. Pode fazer (principalmente) Tudo o que podem fazer

Sim, é verdade. O Linux pode fazer tudo isso! Não deixe ninguém te enganar. Se o Windows ou Mac puderem fazê-lo, o Linux também pode. O Linux também executa muitos aplicativos do Windows com a ajuda de um programa chamado Wine. Não é o que você realmente precisa. Eu não. Existe um análogo Linux bastante sólido para qualquer aplicativo que você precisa, e com o advento de frameworks como o Electron, as dificuldades do desenvolvimento do sistema operacional cruzado estão se tornando uma coisa do passado. Slack, por exemplo, é uma partida direta de 1 a 1 entre Windows, Mac e Linux.

Claro, algumas coisas são um pouco mais complicadas, mas vou entrar nelas depois de louvar o Linux um pouco mais primeiro:

17. Há um apartamento para isso

Se você executar o Ubuntu, você terá acesso a essa pequena ferramenta chamada Aptitude (aka apt ). É um programa invisível que você pode convocar para voar para o mundo da Internet e buscar por você cerca de 90% de todas as aplicações que você precisará para fazer o Linux fazer o que quiser. Ele gerencia todos esses aplicativos de forma inteligente e os mantém atualizados (como você o solicita, o que você deve freqüentemente). Se você aprender a usar bem esta ferramenta, você não terá nenhum problema em fazer o Linux fazer exatamente o que deseja. Apenas tenha cuidado ao remover pacotes usando o Aptitude … Muitas coisas dependem dos pacotes gerenciados por esse cara. Então, se você remover a coisa errada, as coisas tendem a ir * boom *.

18. Você pode jogar no Linux!

Apesar do que as pessoas dizem, você pode jogar no Linux. Na verdade, melhor do que você pode no Mac, na minha opinião. O Steam, mesmo, funciona nativamente no Linux, o que é notável. Executo Rocket League em configurações completas (menos 4K) e obtenho FPS máximo e oito ping … (o ping provavelmente é um crédito para minha Internet gigabit, mas ainda assim … é bom saber que o Linux está no topo da minha ethernet). Infelizmente, os jogos de 4K ainda não são tão atualizados quanto o Windows, mas espero que os drivers do Linux Nvidia se recuperem logo nessa área.

19. Automação

A automação é fácil no Linux. Escrever um shell, um script Python ou mesmo Node para executar algumas tarefas usadas com freqüência é tão fácil quanto escrever o script. Não há sobrecarga no Linux e no crontab (o principal agendador de tarefas do Linux) leva cerca de cinco segundos para aprender. Então, basta codificar sua tarefa, adicione-a ao crontab e você terminou!

20. Os pacotes faltantes são um PITA

Como mencionei anteriormente, remover os pacotes errados pode realmente estragar o sistema rapidamente. Mas, ainda pior do que ter coisas em andamento * boom *, é quando falta um pacote não essencial. Estes tendem a quebrar algum recurso sutil em seu sistema e pode ser impossível rastrear. Esta é uma dessas coisas sobre as quais falei quando eu disse

Não desista

Enquanto você pode acabar quebrando algo e não tem idéia de como encontrar a solução ou o que é mesmo o google, você triunfará! Viva o problema por um dia ou dois e a resposta vai encontrar o caminho para você. Esta é outra parte do vínculo que você deve ter com o seu sistema operacional. Tenha um pouco de fé no Linux, e as coisas irão funcionar.

21. Hardware é difícil … (mas o software é fácil!)

Em Linuxland, o plug & play está morto. Não espere que nenhum dispositivo que você compre para trabalhar fora do morcego, a menos que seja o teclado da década de 1990 (veja # 8 e # 13 ) que você pegou na parte inferior da prateleira da Best Buy para se conectar ao seu Raspberry Pi. Não, displays, ratos, teclados, fones de ouvido … todos precisarão de um pouco de TLC. Sim, são apenas drivers, o que pode parecer fácil o suficiente, certo? Errado . A maioria desses drivers são desenvolvidos como FOSS (software livre e de código aberto) e por pequenas comunidades de pessoas que são teimosas o suficiente para jurar por hardware que foi projetado exclusivamente para máquinas Windows (* tosse * Razer). Isso significa que há um milhão de permutações de hardware que não foram contabilizadas. Então – com freqüência – você precisará cavar em torno de encontrar uma amalgamação de soluções para obter o seu hardware funcionando da maneira que você esperava que fosse quando você o comprou.

Com isso dito, o software é fácil! Com bastante enganar, na verdade, tende a ser mais fácil de hardware falso usando o sistema de arquivos Linux do que está fazendo com que o hardware atual funcione. Isso, no entanto, acaba por nos permitir inventar alguns hacks muito legais:

22. WebEx Screen-Sharing Hack

Se você usa o WebEx para Desktop no Windows, ficará desapontado por saber que as versões do Linux não suportam a apresentação (compartilhamento de tela). Por sorte, o Linux é fácil de cortar! Com acesso direto ao sistema de arquivos – que é realmente usado pelo sistema operacional para representar nosso hardware – e um poderoso programa chamado ffmpeg , podemos resolver esse problema com um comando (e algumas dependências instaladas):

 sudo modprobe v4l2loopback && sudo ffmpeg -f x11grab -r 15 -s 1920x1080 -i: 0.0 + 0,623 -vcodec rawvideo -threads 0 -pix_fmt yuv420p -f v4l2 / dev / video0 

O que isso faz? Ele usa o ffmpeg para capturar um dos meus monitores e exibe o fluxo como um v412loopback (facilmente instalado do Aptitude) para um arquivo em /dev/video0 , o que acontece de ser a representação do meu sistema de arquivos da minha webcam. O v412loopback usa o mesmo codec que a minha webcam, então ao executar esta única linha de código, eu efetivamente altero minha webcam para uma ferramenta de compartilhamento de tela, com ou sem suporte da WebEx. Junte isso com uma aplicação de transmissão de código aberto de classe mundial como o OBS (eu ainda não descobri completamente isso, mas estou em algo, se você tiver alguma informação, compartilhe-o nos comentários!) E você Possui uma ferramenta de compartilhamento de tela mais poderosa do que qualquer coisa que a WebEx possa oferecer de qualquer maneira.

23. Você perderá suas aplicações Windows / Mac Only

Sim você irá. Se eu ouvir mais Linux junky alimentar-me isso, "Mas, GIMP!" Porcaria, eu vou ter um ajuste.

O GIMP NÃO é o Photoshop.

Nunca será. Sinto muito o Photoshop. E, embora seja apenas uma reinicialização, ainda é tão longe (lembre-se, eu dual-boot com o Windows 10 e por esse motivo – e jogos, é claro – nunca poderei ir 100% Linux). Além do Photoshop, você também pode perder:

Office 365 . O Libre Office é bastante impressionante, tudo em tudo. Mas na realidade, não é bom o suficiente. No entanto, se você é qualquer coisa como eu, você faz a maioria das suas coisas no Google Docs / Spreadsheets / Slides de qualquer maneira, então você já desgastou o bico M $ um pouco. No entanto, o Office 365 é um conjunto fantástico de produtos, e é um pouco doloroso saber que está coletando poeira no meu lado do Windows.

Evernote . Uso muito o Evernote. E o cliente de desktop do Windows Evernote é incrível. É tão rápido, bem desenhado e leve. Infelizmente, depois de toneladas de escavação e experimentação, não consegui encontrar um único cliente Evernote comparável para Linux. Felizmente, porém, o cliente da web é bastante impressionante e com um pouco de hacking, funciona quase tão bem para mim.

A Plethora De Outros Que Não Têm Bom Analogue Linux 🙁

Para nomear alguns:

Windows Mail … Sim, se você não o usou. Tente. É realmente um dos melhores clientes de correio e calendário até agora, a IMO.

Painel de controle Nvidia . Existe um pseudo analógico para isso (configurações nvidia) que vem com os drivers do Linux, mas não é tão poderoso quanto a contrapartida do Windows.

Ableton . Se você produz música ou efeitos sonoros, provavelmente ficará desapontado ao saber que a última palavra de um Ableton compatível com Linux era em 2014. Embora seja possível fazê-lo funcionar com ferramentas como o Wine, obter o melhor desempenho ainda não será um feito fácil.

Posso editar isso mais tarde, pois penso em mais, mas provavelmente não. Acabei de estar tão arraigado no mundo do Linux, estou começando a esquecer o que era em outros lugares. E acho que você consegue a idéia de qualquer maneira. Você não pode sempre ter o melhor dos dois mundos. No entanto, como desenvolvedor, em apenas um fim de semana, eu já posso dizer que o Linux é provavelmente o pacote mais completo de um SO desktop. Como gamer, eu digo que tenha o Windows pronto para qualquer coisa séria, mas não hesite em testar as águas com um jogo menos exigente como o Rocket League ou a maioria da biblioteca Steam agora disponível.

24. Apps criam um OS A Home

Claro, qualquer sistema operacional é tão bom quanto os aplicativos e programas que ele suporta. E o Linux não é diferente. Enquanto sinto falta dos meus aplicativos do Windows mencionados acima, a comunidade Linux era mais do que acomodadora. No último semana, coloquei o seguinte pacote de aplicativos para agilizar meu fluxo de trabalho:

Evolution Mail . Depois de tentar vários clientes de e-mail no Linux, encontrei o Evolution Mail para ser o mais completo. Ele suporta calendários, tarefas, memos e contatos. Tem visualizações personalizáveis, pesquisas, assinaturas e tudo o que você precisa de um cliente de correio abrangente.

Terminator . Terminator é – hands-down – o melhor gerenciador de terminal do Ubuntu. Possui perfis personalizados, janelas de terminal com abas, janelas de terminal em mosaico e temas totalmente personalizáveis. É um must-have absoluto.

Exterminador do Futuro

Google Chrome . Se você é humano e não vive sob uma pedra, você provavelmente navega na web. Enquanto as distribuições do Ubuntu vêm com o Firefox pré-instalado, acho que todos sabemos que o Google Chrome faz isso melhor do que ninguém. E se você precisa manter outra sessão completamente isolada aberta o tempo todo, como eu faço, e não gosto de usar extensões para isso, você também pode instalar o projeto pai Chromium e executá-los lado a lado.

gnome-sistema-monitor . O monitoramento do uso de recursos do sistema é uma parte crítica da manutenção de uma máquina saudável e funcional. O gnome-system-monitor vem pré-instalado com distros baseados em Gnome e faz um excelente trabalho, dando-lhe uma visão geral do uso de recursos.

Redshift . Pare de olhar para telas frescas! A exposição excessiva à luz azul provou ter efeitos devastadores sobre o ritmo circadiano. O Redshift aquece de forma inteligente sua tela no final do dia para reduzir a tensão ocular e evitar a insônia provocada pela exibição.

Cerebro . Se você vier do mundo do Mac, você provavelmente adorará o Spotlight. Se você gosta do Spotlight e se mudou para o mundo do Windows, provavelmente você ama o Launchy. Você pode até gostar do Quicksilver (Mac) ou apenas do Good-ol 'Menu Iniciar (Windows). Se você gosta de alguma dessas coisas e NÃO AME as várias tentativas de um lançador para distros Linux, experimente o Cerebro! É construído no Electron, então ele realmente funciona no Windows, Mac e Linux. Também tem uma comunidade em rápido crescimento por trás disso e arquitetura de plugin abrangente que foi usada em algumas maneiras realmente legais!

WebStorm (JetBrains) . Se você é um desenvolvedor web trabalhando com JavaScript, o WebStorm é, de longe, o melhor IDE existente. Embora existam alternativas como Atom, Eclipse ou Sublime Text (embora não seja realmente um IDE), o JetBrains reuniu possivelmente o melhor pacote de software para Python, Java, JavaScript, Go e tantos mais idiomas. Além disso, cada um deles funciona exatamente da mesma maneira. Assim, a curva de aprendizado é uma coisa única.

Texto Sublime . Resumidamente mencionado acima como uma alternativa à WebStorm, também é um companheiro essencial para isso. Os IDEs pesados ??como WebStorm podem ser superados para muitas tarefas menores de edição de texto. Sublime Text é um ótimo aplicativo de peso leve para abrir quando você precisa ajustar arquivos de configuração, scripts de shell ou qualquer outro item não orientado a projetos.

Se você conhece quaisquer outros ótimos aplicativos ou alternativas aos que eu listei, por favor, compartilhe-os nos comentários!

No encerramento

Se você ainda não deu um tiro a Linux como um sistema operacional real, eu recomendo isso. Apenas esteja preparado para os obstáculos e a curva de aprendizado. Não será fácil, mas será gratificante. O Linux ganhou uma tremenda tração no ano passado. Eu percebi isso em todos os lugares. Em todos os sites temáticos, fóruns de discussão, Q / As, etc., existe o mesmo padrão. Muita conversa há 5-10 anos atrás. Então, silêncio. E agora um ressurgimento nos últimos dois anos. E pelo que vejo, não é coincidência. O Linux, como um projeto de código aberto, está em uma posição perfeita no mundo de hoje para decolar.

Já estou no movimento, e eu gosto de onde está indo.

Se você já pulou, eu adoraria ouvir sua opinião sobre isso nos comentários. Caso contrário, sinta-se à vontade para perguntar ou comentar sobre tudo o que quiser. Eu ainda sou muito novo neste lado da computação, então eu sou todo o ouvido.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *