Jak wytłumaczysz Emacsa nietechnicznej osobie?

18

W duchu Jak mogę wyjaśnić babcie znaczenie LaTeX?

Emacs jest wspaniałym edytorem do dowolnych celów tekstowych - jest to jasne dla tych z nas, którzy go używają. Często próbuję wytłumaczyć jednemu z moich znajomych, dlaczego używam czegoś, co „wygląda na tak stare” i staram się znaleźć dobrą odpowiedź. Niekoniecznie jestem zainteresowany ich „konwersją” na Emacsa; jak powiedziałem - niekoniecznie mają powód. Chcę tylko wyjaśnić, dlaczego używam Emacsa w przeciwieństwie do Visual Studio, Sublime, Atom lub dowolnego z efektownych i funkcjonalnych edytorów graficznych. Co czyni go najlepszym wyborem?

Sean Allred
źródło
5
„Jest to edytor tekstu, który można łatwo dostosowywać”. Jeśli czujesz potrzebę powiedzenia czegoś więcej, to prawdopodobnie dlatego, że chcesz, aby zrozumieli, jak potężna może być. Jeśli jednak pierwszą rzeczą, która przychodzi im na myśl, gdy mówisz „edytor tekstów”, jest MS Word, prawdopodobnie walczysz pod górę.
nispio
3
Widząc twoje pytanie na liście pytań, od razu pomyślałem o tym słynnym pytaniu na TeX.SE ... ;-)
mbork
2
Choć było tak urocze, zmieniłem tag na uczący się. :-) W razie potrzeby moglibyśmy omówić w meta, który tag jest odpowiedni.
Malabarba

Odpowiedzi:

10

Emacs to popularny edytor tekstu używany głównie w systemach uniksowych przez programistów, naukowców, inżynierów, studentów, pisarzy i administratorów systemów. Jest popularny ze względu na swoją funkcjonalność i jest wysoce rozszerzalny.

Innymi słowy, jest to edytor tekstu zbudowany wokół ciebie, rozbudowany przez ciebie, stworzony dla Ciebie. W przeciwieństwie do innych edytorów tekstu, w których musisz się do tego dostosować. Emacs może być dostosowany przez ciebie do twoich potrzeb.

Moim zdaniem : Tak, Emacs jest w zasadzie osobistym edytorem tekstu, dostosowanym do twoich potrzeb / specyfikacji, ale o wiele więcej! Ale to o wiele więcej niż tylko edytor tekstu, możesz:

I wiele więcej! Uważam, że nikt nie używa Emacsa w taki sam sposób i że wszyscy używamy go inaczej. Oznacza to, że nie ma dwóch takich samych użytkowników Emacsa ani aplikacji Emacsa.

Łukasz
źródło
1
@mork, dzięki za komentarz. Bardzo podobało mi się to pytanie.
Łukasz
2
IMO, niesprawiedliwe jest twierdzenie, że emacs dostosowuje się do ciebie; w emacsie uważam, że można go lepiej dostosować (w przeciwieństwie do innych edytorów, z wyjątkiem vim / itp.), zamiast uczyć się, jak obejść jego dziwactwa.
Sean Allred
1
To pytanie zorientowane na opinie. To zależy od twoich poglądów na to. Gdybym był pisarzem, z pewnością miałbym inną definicję Emacsa niż programista.
Łukasza
1
Jestem pisarzem. W Emacsie podoba mi się to, że mogę go zaprogramować, aby dostosować go do moich potrzeb.
incandescentman
7

Zwykle nie próbuję wyjaśniać narzędzi, z których korzystam innym osobom, chyba że wyrazili wyraźną prośbę o to, w jaki sposób mogliby poprawić swój przepływ pracy. Nie widzę korzyści w nawracaniu ludzi na Emacsa.

To powiedziawszy, kiedy ludzie IT, którzy nie używają Emacsa, ale dobrze znają przeglądarkę internetową, pytają mnie, dlaczego miałbym używać czegoś tak „rozdętego” jak Emacs do edycji tekstu, zwykle opisuję to jako platformę dla wszystkiego, co może ” racjonalnie ”(to zależy od interpretacji) należy zmapować na bufory tekstu.

Bufor tekstowy może być śladem sesji powłoki ( shell-mode), wiadomości e-mail ( message-mode), listy TODO ( org-mode), listy katalogów ( dired), pliku tekstowego na dysku, strony internetowej ( eww), danych wyjściowych wygenerowanych przez polecenie zewnętrzne , itp. Podobnie jak nowoczesna przeglądarka internetowa reprezentuje środowisko, w którym język programowania może być używany do manipulacji i interakcji z dokumentami HTML, Emacs jest środowiskiem dla buforów tekstowych z językiem, którego można używać do manipulowania i interakcji z buforami tekstowymi. To mój główny agent użytkownika, podobnie jak przeglądarka jest głównym agentem użytkowników dokumentów i aplikacji w Internecie dla wielu osób.

Zrozumienie Emacsa jako ogólnego narzędzia zapewniającego interfejs tekstowy (z których jednym może być edytor) zwykle usuwa wszelkie nieporozumienia (lub przynajmniej redukuje kpiny). Nie tłumaczyłbym Emacsa ludziom, którzy nie rozumieją swoich przeglądarek internetowych, co jest moją interpretacją „nietechnicznego”.

rekado
źródło
Podoba mi się ta odpowiedź (i twoja definicja „nietechniczna” ;-))!
mbork
Dobra odpowiedź, poza tym, że w moim przypadku faktycznie wyjaśniam moje narzędzia ludziom, szczególnie osobom nietechnicznym, i nigdy nie próbuję ich przekształcać w Emacsa.
incandescentman
4

Do nie-wtajemniczonego mawiałem: „Emacs to coś więcej niż edytor. W rzeczywistości jest to potężne narzędzie, które pozwala zbudować własny edytor”.

To tak naprawdę odstraszyło wielu od Emacsa, ponieważ uważali, że jest to coś zbyt złożonego, by było warte wysiłku.

Teraz mówię tylko: „Emacs to potężny edytor, który może ulepszyć pisanie tekstu na wiele różnych sposobów. Edycja i tworzenie dokumentów tekstowych za pomocą Emacsa jest bardziej wydajne”.

Jeśli to zadziała, słuchacz poprosi o wyjaśnienie dotyczące działania Emacsa. Jeśli to nie zadziała, po prostu pokażę trochę Elisp i odstraszy mojego słuchacza na zawsze. ;)

Boccaperta-IT
źródło
1
Uwielbiam Emacsa i będę go używać przez resztę życia, ale realistycznie, dla większości ludzi jest to zbyt skomplikowane, aby było warte wysiłku. Większość ludzi jest w porządku z Microsoft Word i dla nich nie ma sensu poświęcać czasu na naukę Emacsa i jak go przedłużyć.
incandescentman
4

Nalegałbym, aby Emacs był narzędziem dla profesjonalistów w edycji tekstu. I oto dlaczego (i co mam na myśli przez profesjonalistów ):

Po pierwsze, analogia: Windows Movie Maker i Adobe Premiere są narzędziami do edycji wideo, ale te pierwsze nie są wykorzystywane przez profesjonalistów z branży do tworzenia filmów. W tym argumencie unika się również superlatyw i absolutów, które często sprawiałyby, że wielbiciele niektórych technologii byliby stronniczy. Movie Maker nie jest gorszy niż Premier w absolutnym sensie. Bardziej nadaje się do prostej edycji filmów rodzinnych, ale Premiere ma zarówno wyższe wymagania, jak i więcej funkcji.

Istnieje kilka definicji słowa „ profesjonalny”, a mianowicie sportu (gdzie przeciwieństwo to amator ) lub rzemiosła, gdzie przeciwieństwo to uczeń . Nie mam na myśli tego, jak w sporcie, gdzie ta definicja odnosi się tylko do tego, czy sportowcy są opłacani za swoje wyniki, a nie do rodzaju mistrza-ucznia, ale do:

Professional \Pro*fes"sion*al\, a.

  1. O zawodzie lub powołaniu; przestrzeganie zasad lub standardów zawodu; wykonywanie zawodu; as, wiedza zawodowa; profesjonalne zachowanie. „Duma, nie osobista, ale profesjonalna”. - Macaulay. „Profesjonalny szyderca”. - De Quincey.

    [1913 Webster]

Oznacza to, że każda osoba, która w swojej branży wymaga umiejętności edytowania tekstu (która, jak już zauważono, może być pisarzem, programistą, naukowcem lub inżynierem) wybrałaby to narzędzie jako odpowiednie do ich potrzeb. To wyjaśniałoby na przykład, dlaczego Emacs jest rozszerzalny (ponieważ każde narzędzie do profesjonalnej edycji tekstu musiałoby być rozszerzalne). Może to również odpowiedzieć na pytania o pewnym kształcie: „Dlaczego, jeśli jest tak dobry, nie wszyscy go używają?” - trywialne problemy nie wymagają narzędzi na poziomie eksperckim do ich rozwiązania.


Chciałbym też dodać notatkę, że jest ich tylko dwóch :)

wvxvw
źródło
2

Przekierowałbym tę osobę do miejsca, w którym doświadczeni użytkownicy jasno wyjaśniają, dlaczego używają emacsa. Następnie zapraszam ich do obejrzenia tej samej strony, aby uzyskać wizualne spojrzenie na to, co można osiągnąć za pomocą emacsa.

csantosb
źródło
2

Chciałbym dać wartość moich dwóch centów. Po pierwsze nie jestem profesjonalnym programistą (jestem doktorem medycyny), więc jestem tylko hobbystą lub lepszym amatorem w tej dziedzinie, ale używam systemów * nix od czasu studiów uniwersyteckich (pod koniec lat 90-tych). Mogę powiedzieć, że pierwsze wrażenie, kiedy korzystałem z Emacsa, było jak najgorsze (estetyczne) oprogramowanie, jakie kiedykolwiek widziałem. Zwłaszcza po tym, jak Apple zaczął tworzyć bardziej atrakcyjny system operacyjny z dużą ilością fantazyjnego oprogramowania. Ale po tym, jak powiedziałem sobie: spójrz na kuchnię w restauracjach, w rzeczywistości są to brzydkie miejsca. To samo możemy powiedzieć o większości miejsc pracy w fabryce. Więc o to chodzi: Emacs daje ci wszystkopotrzebujesz do swojej konkretnej pracy. Jak ktoś inny wskazał, Emacs jest profesjonalnym narzędziem z tego powodu. Niekoniecznie jest to program do kodowania. Wiele osób używa (w tym mnie) do pisania dokumentów, książek, artykułów ... i lista może się powiększać.

Ale to, co naprawdę rozumiem po użyciu (ale możemy ogólnie powiedzieć to samo o krainie CLI), to to, że w Emacs stale koncentrujesz się na treści tego, co piszesz / czytasz / kodujesz.

Enrico Pirani
źródło
W rzeczywistości, ponieważ Emacs jest tak nieskończenie rozszerzalny, w jego użyciu skupiam się znacznie mniej na treści tego, co piszę, i zamiast tego spędzam zbyt dużo czasu na konfigurowaniu i rozszerzaniu narzędzi obsługujących Emacsa.
incandescentman
1
Konfiguracja i rozszerzenie Emacsa to najtrudniejsze części (IMPO). Dużo czasu zajęło mi skonfigurowanie wszystkich pakietów w celu dostosowania do moich potrzeb. Ale kiedy myślisz, że wszystko jest skonfigurowane, nie musisz się martwić. To jest jak budowanie domu na dobrych fundamentach. Tak bardzo podoba mi się to oprogramowanie, że nie dbam o system operacyjny, po prostu muszę zainstalować Emacsa na komputerze.
Enrico Pirani,
2

Najlepszym sposobem na wyjaśnienie czegokolwiek ekspertowi jest podanie przykładów. Tak więc najlepszym sposobem wyjaśnienia cywilnemu Emacsa jest podanie przykładów przypadków, które mogą zrozumieć i do których mogą się odnosić.

Zazwyczaj zaczynam od powiedzenia czegoś takiego: Emacs to oldskulowy edytor tekstu z lat 70., który został wymyślony przed Microsoft Word i wszystkimi nowoczesnymi aplikacjami do edycji tekstu. Jest tak fajny, że można go programować. Ma wbudowane środowisko programistyczne, co oznacza, że ​​możesz pisać i edytować w ten sam sposób, jak w programie Microsoft Word.

Ale ponieważ Emacs jest programowalny, możesz dosłownie zaprogramować go do robienia czegokolwiek. A ponieważ jest programowalny, możesz zintegrować Emacsa z dowolnym innym komputerem, w tym z przeglądarką, pocztą e-mail, kontaktami, kalendarzem, Twitterem, Evernote i innymi używanymi językami programowania.

Każdy, kto używa Emacsa, programuje to w celu robienia różnych rzeczy w zależności od potrzeb. Tak więc programista korzystający z Emacsa może zaprogramować go do __ i __. Naukowiec lub naukowiec może zaprogramować go do przeprowadzania analiz statystycznych za pomocą R i ...

W moim przypadku, ponieważ jestem pisarzem, zaprogramowałem Emacsa do robienia rzeczy, które pomagają mi w badaniach, pisaniu i edytowaniu, w tym:

  • kiedy prowadzę badania i kopiuję i wklejam tekst z Internetu, automatycznie formatuję go jako cytat blokowy oraz automatycznie kopiuję nazwę strony, adres URL oraz datę i tworzę wpis bibliograficzny
  • wyszukaj i zamień frazy tekstowe w wielu plikach w katalogu
  • kiedy coś piszę, aby automatycznie wyeksportować do ładnie sformatowanej strony internetowej i, z tego samego dokumentu źródłowego, automatycznie wyeksportować do ładnie sformatowanego pliku PDF, automatycznie generując stronę tytułową i spis treści
  • pomóż mi śledzić moje listy rzeczy do zrobienia, terminy i terminy
  • pomóż mi w tworzeniu burzy mózgów i tworzeniu map myśli
  • automatycznie wysyłaj e-maile do ludzi i automatyzuj niektóre rodzaje odpowiedzi e-mail

Na ogół kończę stwierdzeniem: Zasadniczo jeśli w ramach przepływu pracy jest coś, co robisz regularnie, Emacsa można zaprogramować tak, aby robił to automatycznie. Zasadniczo jest to narzędzie do programowania edytora tekstu w celu robienia tego, co chcesz.

żarnik
źródło
W jaki sposób odwołałoby się to do osoby nietechnicznej?
Sean Allred,
Co? Jeśli osoba nietechniczna zapyta mnie, czym jest Emacs, oznacza to, że z definicji odpowiedź na nią przemawia. Kiedy ludzie widzą mnie za pomocą Emacsa, wiedząc, że nie jestem programistą, zawsze są zafascynowani. Jak powiedziałeś w swoim pytaniu, nie próbujemy nikogo nawracać, po prostu wyjaśniamy, czym jest Emacs.
incandescentman
0

Podsumowanie: Jak dotąd nie jest to świetne pytanie : zbyt ogólne. Myślę, że należy go zamknąć jako zbyt szeroki lub oparty głównie na opiniach. (Tylko jedna opinia.)

Po pierwsze, czym jest „ osoba nietechniczna ”? Sam fakt, że (myślisz), że ktoś jest „ nietechniczny ”, niewiele pomaga. Nietechniczne wrt jakie techniki? Jak ten szczególny brak techniki odnosi się do Emacsa?

Odpowiedź jak wytłumaczyć nic do nikogo to najpierw dowiedzieć się, z kim rozmawiasz, aby to, co ich interesów i dlaczego. Gdybym „wytłumaczył” Emacsa osobie X, spróbowałbym dowiedzieć się, w jaki sposób Emacs może być użyteczny dla osoby X. I pracowałbym stamtąd: od zakładanej motywacji osoby X i przypadków użycia do tego, jak Emacs może do nich pasować.

Tak, oczywiście, możesz spróbować scharakteryzować określoną grupę ludzi jako odbiorców prezentacji: książki, artykułu, wideo, wersji demo, cokolwiek. Ale nawet wtedy (1) pomocna byłaby lepsza charakterystyka odbiorców niż „ ludzie nietechniczni ”. I (2) pomogłoby to również bardziej szczegółowo określić samą prezentację: jaka forma / medium, jak długo, jak itd.

IOW, zadaj sobie pytanie, kto, co, kiedy, jak, dlaczego ... Jak myślisz, co Emacs ma do zaoferowania swoim odbiorcom? Jak myślisz, co może ich zainteresować w związku z Emacsem?

Rysował
źródło
6
Chyba nie jesteś członkiem społeczności TeX.SE. Proszę spojrzeć na powiązane pytanie (chyba że już to zrobiłeś, co prawdopodobnie zrobiłeś - mówię na wszelki wypadek). Chodzi o to, że społeczność TeX.SE nie jest tak rygorystyczna co do ogólnych zasad SO - powiedziałbym, że kultura tej witryny jest niesamowita . Jestem raczej przekonany, że społeczność Emacsa jest również bardzo miła, być może nie musimy być tak surowi i pozwolić na takie pytania. Nie jestem przeciwny zamykaniu duplikatów lub zbyt szerokich pytań, ale niewielki odsetek pytań opartych na
opiniach
4
... wydaje się nieszkodliwy. ( Zwłaszcza, że cała sprawa Emacs vs. Vim jest tak bardzo oparta na opiniach ;-).) To szczególne pytanie może być zarówno oparte na opiniach, jak i zbyt szerokie, ale myślę, że wielu użytkowników Emacsa może odnosić się do opisanego problemu i wskazówki mogą być pomocnym. (Równie przydatne może być pytanie równoległe: „Jak wyjaśnić, że używam Emacsa, a nie Sublime Text / Atom / cokolwiek, co jest nowym błyszczącym edytorem.) Takie pytania również sprzyjają refleksji, która jest ogólnie przydatna.
mbork
2
Nie zgadzam się również z ostatnim akapitem twojej odpowiedzi. Nie chodzi o to, że sprzedajemy Emacsa nie-maniakom; chcemy, abyśmy mogli wyjaśnić im, co i dlaczego robimy z tym „starożytnym” oprogramowaniem.
mbork
2
Nie atakuję nikogo !!! Wydaje się, że mam fałszywe wrażenie z twojej odpowiedzi. I zgadzam się z wieloma twoimi uwagami, po prostu nie uważam, że pytanie jest zbyt ogólne dla ESE.
mbork
1
@mork FWIW- Jeśli zapytasz mnie: „ Jak mam wyjaśnić babci Emacsa (teorię kategorii lub wędkarstwo)? ”, prawdopodobnie odpowiem: „ Opowiedz mi więcej o swojej babci !”. Babcie, jak wszyscy inni, są inne. „ A skoro prosisz o pomoc, powiedz mi więcej o swojej intencji / celu / podejściu. Czy będziesz spędzać 6 miesięcy żyjąc z Babcią i dyskutując o tym z nią codziennie, czy będziesz próbował wyjaśnić to w tweecie?Geek , babcia i tak, Emacs są zbyt szerokie, IMO. Pytanie można poprawić, zawęzić. I to pomoże wszystkim. To wszystko.
Drew
0

„Emacs to edytor tekstu, który pozwala na łatwą transformację tekstu z jednego formatu na inny. Ma wbudowane 10 000 funkcji edycji tekstu.”

Cegła suszona na słońcu
źródło