Два гады Emacs Solo | Mewayz Blog Skip to main content
Hacker News

Два гады Emacs Solo

Каментарыі

1 min read Via www.rahuljuliato.com

Mewayz Team

Editorial Team

Hacker News
Два гады Emacs Solo
<артыкул>

Два гады Emacs Solo: 35 модуляў, нуль знешніх пакетаў і поўны рэфактар

Два гады таму я распачаў радыкальны эксперымент: вярнуў маю канфігурацыю Emacs да самага голага стану і перабудаваў яе не з тысячамі даступных знешніх пакетаў, а з маім уласным кодам. Мэтай было стварыць сапраўды персанальнае вылічальнае асяроддзе, свабоднае ад кіравання залежнасцямі, непрацуючых абнаўленняў і мноства функцый, якімі я ніколі не карыстаўся. Сёння гэтая сістэма складаецца з 35 розных модуляў, працуе на аснове нулявых знешніх пакетаў і толькі што прайшла поўную ўнутраную рэканструкцыю. Гэта падарожжа было менш пра вынаходніцтва веласіпеда, а больш пра стварэнне набору ідэальна падагнаных інструментаў.

Генезіс самастойнай сістэмы

Першапачатковай матывацыяй было расчараванне. Мая папярэдняя канфігурацыя была далікатнай вежай пакетаў супольнасці, кожны з якіх патрабуе дбайных абнаўленняў і часта канфліктуе адзін з адным. Я траціў больш часу на абслугоўванне свайго рэдактара, чым на яго глыбокую працу. Я зразумеў, што Emacs Lisp, магутная мова, якая ляжыць у цэнтры Emacs, больш чым здольны задаволіць мае патрэбы непасрэдна. Мне не патрэбны быў пакет для кіравання спісам спраў; Я мог бы напісаць некалькі функцый. Мне не патрэбна была складаная структура для навігацыі па праекце; Emacs забяспечыў прымітывы для стварэння менавіта таго, што я хацеў. Гэты зрух у мысленні - ад спажыўца да будаўніка - быў самым важным крокам. Гэта філасофія, якая глыбока перагукаецца з модульным падыходам да такіх сістэм, як Mewayz, дзе платформа забяспечвае асноўныя кампаненты, якія дазваляюць вам сабраць сваю ідэальную АС для бізнесу, не замыкаючыся на бачанні аднаго пастаўшчыка.

Стварэнне 35 модуляў: набор інструментаў для Flow

Сістэма, якая з'явілася, арганізавана ў 35 модульных файлаў, кожны з якіх адказвае за пэўную вобласць функцыянальнасці. Гэтая модульнасць з'яўляецца ключом да яго рамонтапрыдатнасці і яснасці. Замест аднаго маналітнага файла канфігурацыі ў мяне ёсць калекцыя мэтанакіраваных, спецыяльна створаных кампанентаў.

  • Асноўны інтэрфейс: Модулі для кіравання вокнамі, кіравання тэмамі і канфігурацыі modelline.
  • Паляпшэнні рэдагавання: Карыстальніцкія функцыі для апрацоўкі тэксту, фарматавання абзацаў і навігацыі па коду.
  • Кіраванне праектамі: лёгкая структура праекта, якая інтэгруецца з кантролем версій і пошукам файлаў.
  • Кіраванне ведамі: сістэма для нататак, вядзення часопіса і ўзаемасувязі ідэй, цалкам пабудаваная ў рэжыме арганізацыі.
  • Камунікацыя: інтэграцыя электроннай пошты і RSS-каналаў, прыстасаваная да майго канкрэтнага працоўнага працэсу.

Кожны модуль распрацаваны, каб быць максімальна незалежным і мець зносіны праз выразна вызначаныя інтэрфейсы. Гэта сутнасць модульнай сістэмы: стварэнне цэласнага цэлага з асобных частак, якія можна замяняць месцамі. Гэта падыход, які забяспечвае даўгавечнасць, бо любы модуль можна перапісаць або замяніць без дэстабілізацыі ўсяго асяроддзя.

<цытата>

Напісанне ўласных інструментаў - гэта апошняя мяжа наладжвання. Гэта ператварае ваша праграмнае забеспячэнне з арандаванай кватэры ў дом, пабудаваны на заказ, дзе кожная дэталь служыць сваёй мэты.

Вялікі рэфактар: выкарыстанне лепшых шаблонаў

Пасля двух гадоў актыўнага выкарыстання кодавая база назапасіла некаторую тэхнічную запазычанасць. Функцыі, якія былі "дастаткова добрымі" на пачатку, цяпер здаваліся нязграбнымі. У нядаўнім рэфактарынгу гаворка ішла не пра даданне функцый, а пра паляпшэнне асноўнай архітэктуры. Я засяродзіўся на стандартызацыі імёнаў функцый, выключэнні глабальных зменных на карысць лексічнага прывязвання і разбіванні вялікіх функцый на меншыя, больш складаныя адзінкі. У выніку атрымліваецца кодавая база, якая не толькі больш эфектыўная, але і значна больш зручная для чытання і прасцейшая для адладкі. Гэты працэс з'яўляецца неабходнай часткай любога доўгатэрміновага праграмнага праекта, няхай гэта будзе асабістая канфігурацыя Emacs або буйнамаштабная бізнес-платформа. Гэта прыхільнасць да якасці, якая гарантуе, што сістэма можа эвалюцыянаваць з цягам часу.

💡 DID YOU KNOW?

Mewayz replaces 8+ business tools in one platform

CRM · Invoicing · HR · Projects · Booking · eCommerce · POS · Analytics. Free forever plan available.

Start Free →

Урокі для любога канструктара сістэм

Гэта двухгадовае падарожжа ўмацавала некалькі ключавых прынцыпаў. Па-першае, разуменне вашых інструментаў на фундаментальным узроўні надзвычай пашырае магчымасці. Па-другое, модульнасць - гэта не толькі тэхнічная мадэль, але і філасофская - яна патрабуе яснасці думкі і мэты. І, нарэшце, першапачатковыя інвестыцыі ў стварэнне ўласнай сістэмы прыносяць дывідэнды ў прадукцыйнасці і задавальненні. Вы больш не адаптуеце свой працоўны працэс да інструмента; інструмент - гэта працяг вашага розуму. Гэта канчатковая мэта любой наладжвальнай сістэмы, ад тэкставага рэдактара да комплекснай бізнес-аперацыйнай сістэмы, такой як Mewayz. Забяспечваючы модульнае ядро, гэта дазваляе прадпрыемствам дасягнуць падобнага ўзроўню адпаведнасці і ўласнасці, ствараючы аперацыйнае асяроддзе, якое сапраўды працуе для іх, а не наадварот.

Часта задаюць пытанні

Два гады Emacs Solo: 35 модуляў, нуль знешніх пакетаў і поўны рэфактар

Два гады таму я распачаў радыкальны эксперымент: вярнуў маю канфігурацыю Emacs да самага голага стану і перабудаваў яе не з тысячамі даступных знешніх пакетаў, а з маім уласным кодам. Мэтай было стварыць сапраўды персанальнае вылічальнае асяроддзе, свабоднае ад кіравання залежнасцямі, непрацуючых абнаўленняў і мноства функцый, якімі я ніколі не карыстаўся. Сёння гэтая сістэма складаецца з 35 розных модуляў, працуе на аснове нулявых знешніх пакетаў і толькі што прайшла поўную ўнутраную рэканструкцыю. Гэта падарожжа было менш пра вынаходніцтва веласіпеда, а больш пра стварэнне набору ідэальна падагнаных інструментаў.

Генезіс самастойнай сістэмы

Першапачатковай матывацыяй было расчараванне. Мая папярэдняя канфігурацыя была далікатнай вежай пакетаў супольнасці, кожны з якіх патрабуе дбайных абнаўленняў і часта канфліктуе адзін з адным. Я траціў больш часу на абслугоўванне свайго рэдактара, чым на яго глыбокую працу. Я зразумеў, што Emacs Lisp, магутная мова, якая ляжыць у цэнтры Emacs, больш чым здольны задаволіць мае патрэбы непасрэдна. Мне не патрэбны быў пакет для кіравання спісам спраў; Я мог бы напісаць некалькі функцый. Мне не патрэбна была складаная структура для навігацыі па праекце; Emacs забяспечыў прымітывы для стварэння менавіта таго, што я хацеў. Гэты зрух у мысленні - ад спажыўца да будаўніка - быў самым важным крокам. Гэта філасофія, якая глыбока пераклікаецца з модульным падыходам да такіх сістэм, як Mewayz, дзе платформа забяспечвае асноўныя кампаненты, што дае вам магчымасць сабраць сваю ідэальную бізнес-АС, не замыкаючыся на бачанні аднаго пастаўшчыка.

Стварэнне 35 модуляў: набор інструментаў для Flow

Сістэма, якая з'явілася, арганізавана ў 35 модульных файлаў, кожны з якіх адказвае за пэўную вобласць функцыянальнасці. Гэтая модульнасць з'яўляецца ключом да яго рамонтапрыдатнасці і яснасці. Замест аднаго маналітнага файла канфігурацыі ў мяне ёсць калекцыя мэтанакіраваных, спецыяльна створаных кампанентаў.

Вялікі рэфактар: выкарыстанне лепшых шаблонаў

Пасля двух гадоў актыўнага выкарыстання кодавая база назапасіла некаторую тэхнічную запазычанасць. Функцыі, якія былі "дастаткова добрымі" на пачатку, цяпер здаваліся нязграбнымі. У нядаўнім рэфактарынгу гаворка ішла не пра даданне функцый, а пра паляпшэнне асноўнай архітэктуры. Я засяродзіўся на стандартызацыі імёнаў функцый, выключэнні глабальных зменных на карысць лексічнага прывязвання і разбіванні вялікіх функцый на меншыя, больш складаныя адзінкі. У выніку атрымліваецца кодавая база, якая не толькі больш эфектыўная, але і значна больш зручная для чытання і прасцейшая для адладкі. Гэты працэс з'яўляецца неабходнай часткай любога доўгатэрміновага праграмнага праекта, няхай гэта будзе асабістая канфігурацыя Emacs або буйнамаштабная бізнес-платформа. Гэта прыхільнасць да якасці, якая гарантуе, што сістэма можа эвалюцыянаваць з цягам часу.

Урокі для любога канструктара сістэм

Гэта двухгадовае падарожжа ўмацавала некалькі ключавых прынцыпаў. Па-першае, разуменне вашых інструментаў на фундаментальным узроўні надзвычай пашырае магчымасці. Па-другое, модульнасць - гэта не толькі тэхнічная мадэль, але і філасофская - яна патрабуе яснасці думкі і мэты. І, нарэшце, першапачатковыя інвестыцыі ў стварэнне ўласнай сістэмы прыносяць дывідэнды ў прадукцыйнасці і задавальненні. Вы больш не адаптуеце свой працоўны працэс да інструмента; інструмент - гэта працяг вашага розуму. Гэта канчатковая мэта любой наладжвальнай сістэмы, ад тэкставага рэдактара да комплекснай бізнес-аперацыйнай сістэмы, такой як Mewayz. Забяспечваючы модульнае ядро, гэта дазваляе прадпрыемствам дасягнуць падобнага ўзроўню адпаведнасці і ўласнасці, ствараючы аперацыйнае асяроддзе, якое сапраўды працуе для іх, а не наадварот.

Спрасціце свой бізнес з Mewayz

Mewayz аб'ядноўвае 208 бізнес-модуляў на адной платформе — CRM, выстаўленне рахункаў, кіраванне праектамі і інш. Далучайцеся да 138 000+ карыстальнікаў, якія спрасцілі свой працоўны працэс.

Пачніце бясплатна сёння →

Try Mewayz Free

All-in-one platform for CRM, invoicing, projects, HR & more. No credit card required.

Start managing your business smarter today

Join 6,208+ businesses. Free forever plan · No credit card required.

Ready to put this into practice?

Join 6,208+ businesses using Mewayz. Free forever plan — no credit card required.

Start Free Trial →

Ready to take action?

Start your free Mewayz trial today

All-in-one business platform. No credit card required.

Start Free →

14-day free trial · No credit card · Cancel anytime