Bəzən yalnız sənədlərin özü deyil, həm də onun üzərində işləmə prosesi kritik ola bilər. Məsələn, layihələrə gəldikdə, işin aslan payı sənədlərin hazırlanması ilə bağlıdır və düzgün olmayan bir proses səhvlərə və hətta məlumatların itirilməsinə və nəticədə vaxt və fayda itkisinə səbəb ola bilər. Ancaq bu mövzu işinizin mərkəzi olmasa da və kənarda olsa belə, düzgün proses hələ də sənədin keyfiyyətini yaxşılaşdıra və vaxtınıza qənaət edə bilər.
Burada göstərilən yanaşma ilə , aşağı giriş maneəsinə malikdir. Texniki cəhətdən sabah yeni bir şəkildə işə başlaya bilərsiniz.
Problem problemi
Bir sənəd və ya sənədlər toplusu yaratmalısınız. Bəlkə də bu, layihə sənədləri və ya şəbəkənizin qeydiyyatı və ya daha sadə bir şeydir, məsələn, şirkətinizdə və ya şöbənizdəki prosesləri təsvir etməlisiniz. Ümumiyyətlə, söhbət mətni, şəkilləri, işarələri olan hər hansı sənəd və ya sənədlər toplusundan gedir... Tapşırığı onunla çətinləşdirək ki,
- bu iş birgə işi, bir qrupun və ya bir neçə işçi qrupunun səylərini əhatə edir
- Nəticədə, müəyyən bir şablona uyğun olaraq yaradılmış, müəyyən formatda, korporativ üslub atributlarına malik bir sənədə sahib olmaq istəyirsiniz. Konkret olmaq üçün bunun MS Word (.docx) olduğunu güman edəcəyik.
10 il əvvəl yanaşma sadə olardı: biz MS Word sənədi və ya sənədləri yaradardıq və birtəhər dəyişiklik işini təşkil edərdik.
Və bu yanaşma hələ də qüvvədədir. Layihə sənədlərini yaratarkən böyük inteqratorlar tərəfindən də istifadə olunur. Ancaq intuitiv olaraq aydındır ki, əgər siz həqiqətən uzun müddət ərzində bir çox redaktə və müzakirələrlə bir sənəd üzərində intensiv işləyirsinizsə, bu yanaşma o qədər də əlverişli deyil.
Misal
Böyük bir inteqratorda işləyərkən bu problemi çox kəskin hiss etdim. Dizayn sənədlərinin dəyişdirilməsi prosesi aşağıdakı kimi idi:
- mühəndis MS Word (.docx) sənədinin ən son versiyasını yükləyir
- adını dəyişir
- moda izləmək üçün dəyişikliklər edir
- sənədi redaktələrlə birlikdə memarlığa göndərir
- həmçinin şərhlərlə birlikdə bütün düzəlişlərin siyahısını göndərir
- memar dəyişiklikləri təhlil edir
- hər şey qaydasındadırsa, o, bu dəyişiklikləri ən son versiyaya malik fayla kopyalayır, versiyanı dəyişir və paylaşılan resursa yükləyir.
- şərhlər olarsa, müzakirə başlanır (e-poçt və ya görüşlər)
- konsensus əldə edilir
- əlavə xal 3 - 9
İş gərgin olmasa da, nədənsə oldu, amma yenə də işləyirdi. Ancaq müəyyən bir nöqtədə bu proses bütün layihənin darboğazına çevrildi və problemlərə səbəb oldu. Məsələ ondadır ki, bir neçə komanda tərəfindən tez-tez və eyni vaxtda dəyişikliklər edilən kimi işlər pisləşir.
Beləliklə, ilkin sınaq mərhələsinə keçəndə müxtəlif problemlər yaranmağa başladı və kiçik yollarla da olsa, sənədləri tez-tez dəyişmək lazım gəldi - dörd müxtəlif komanda, hər gün, demək olar ki, eyni vaxtda, müzakirələrlə. Bütün bu dəyişikliklər bir mühəndisin - memarın vasitəsilə baş verdi. Layihənin dizayn faylı nəhəng idi və nəticədə memar çoxlu surət çıxarmaq, redaktə etmək, çoxlu səhvlər etmək, hər şeyi iki dəfə yoxlamaq, yenidən göndərmək və ümumiyyətlə, ona yaxın idi. xaos.
Bu zaman bu yanaşma, MS Word sənədi üzərində işləmək yanaşması böyük çətinliklə işləyir və problemlər yaradırdı.
Git, Markdown
Yuxarıdakı misalda təsvir olunan problemlə qarşılaşaraq bu məsələni araşdırmağa başladım.
istifadə etdiyini gördüm ilə birlikdə sənədlər yaratarkən.
Git inkişaf vasitəsidir. Bəs niyə ondan sənədləşmə prosesi üçün istifadə etməyək? Bu halda, çox istifadəçi işi məsələsi həll olunur. Amma Git-in imkanlarından tam istifadə etmək üçün bizə mətn sənədi formatı lazımdır, MS Word-dən başqa alət tapmalıyıq və Markdown bu məqsədlər üçün əladır.
Markdown sadə mətn işarələmə dilidir. Adi TXT fayllarında gözəl tərtib edilmiş mətnlər yaratmaq üçün nəzərdə tutulmuşdur. Sənədlərimizi Markdown-da yaratsaq, Markdown - Git kombinasiyası təbii görünür.
Və hər şey yaxşı olardı və bu məqamda ikinci şərtimiz olmasaydı, buna son qoya bilərdik: “nəticədə bizə müəyyən formatda, korporativ üslubun atributlarına uyğun olaraq yaradılmış sənəd lazımdır. müəyyən bir şablon” (və biz əvvəldən razılaşdıq ki, bu, əlbəttə ki, MS Word üçün olacaq). Yəni, əgər Markdown-dan istifadə etmək qərarına gəlsək, o zaman bu faylı hansısa yolla tələb olunan tipdə .docx-a çevirməliyik.
Müxtəlif formatlar arasında konvertasiya üçün proqramlar var, məsələn. .
Bu proqramla Markdown faylını .docx formatına çevirə bilərsiniz.
Ancaq yenə də başa düşmək lazımdır ki, birincisi, Markdown-da olanların hamısı MS Word-ə çevrilməyəcək və ikincisi, MS Word incə, lakin yenə də kiçik bir şəhər olan Markdown ilə müqayisədə bütöv bir ölkədir. Word-də olan və Markdown-da heç bir formada olmayan çoxlu sayda hər şey var. Siz sadəcə davam edə və müəyyən Pandoc düymələrindən istifadə edərək Markdown formatınızı istədiyiniz MS Word formatına çevirə bilməzsiniz. Belə ki, adətən, konvertasiyadan sonra əldə edilən .docx sənədini əl ilə “redaktə etməlisən” ki, bu da yenidən vaxt apara və səhvlərə səbəb ola bilər.
Pandoc-un öhdəsindən gələ bilmədiyi şeyi avtomatik olaraq “bitirəcək” bir skript yaza bilsək, bu, ideal bir həll olardı.
MS Word və Markdown-un funksionallığının qeyri-identifikasiyası səbəbindən bu problemi ümumiyyətlə həll etmək, məncə, mümkün deyil, amma bunu konkret vəziyyətlərə, konkret tələblərə münasibətdə etmək olarmı? Təcrübəm göstərdi ki, bəli, bu mümkündür və çox güman ki, bir çoxları və ya bəlkə də əksər vəziyyətlər üçün mümkündür.
Müəyyən bir problemin həlli
Beləliklə, mənim vəziyyətimdə, Pandoc istifadə edərək faylı çevirdikdən sonra, əlavə fayl emalını əl ilə etməli oldum, yəni
- cədvəllərin və şəkillərin başlıqlarının (başlıqlarının) avtomatik nömrələnməsi ilə Word-ə sahələr əlavə edin
- masa üslubunu dəyişdirin
Bunu standart (Pandoc) və ya məlum vasitələrdən istifadə edərək necə edəcəyimi tapmadım. Beləliklə, mən python skriptini tətbiq etdim paket. Nəticədə tam avtomatlaşdırma əldə etdim. İndi mən Markdown faylımı bir əmrlə istədiyiniz MS Word sənəd formasına çevirə bilərəm.
Detallara baxın .
Qeyd:
Bu misalda mən, əlbəttə ki, bəzi mücərrəd Markdown faylını çevirirəm, lakin "döyüş" sənədinə də eyni yanaşma tətbiq olundu və mənim əldə etdiyim nəticə, əvvəllər əl ilə formatlaşdırma ilə əldə etdiyimiz demək olar ki, eyni MS Word sənədi idi. .
Ümumiyyətlə, pywin32 ilə biz MS Word sənədi üzərində demək olar ki, tam nəzarət əldə edirik ki, bu da bizə onu dəyişdirməyə və korporativ standartınızın tələb etdiyi formaya gətirməyə imkan verir. Təbii ki, eyni məqsədlərə digər alətlərdən, məsələn, VBA makrolarından istifadə etməklə nail olmaq olardı, lakin mənim üçün python-dan istifadə etmək daha rahat idi.
Bu yanaşma üçün qısa düstur:
Markdown + Git -- (нечто) --> MS Word“Bir şeyin” nə olmasının əhəmiyyəti yoxdur. Mənim vəziyyətimdə pywin32 ilə Pandoc və python idi. Seçimləriniz fərqli ola bilər, amma əsas odur ki, bu mümkündür. Və bu məqalənin əsas mesajıdır.
Xülasə etmək üçün fikir ondan ibarətdir ki, bu yanaşma ilə siz yalnız Markdown faylı ilə işləyirsiniz və əməkdaşlıq və versiyaya nəzarət üçün Git-dən istifadə edirsiniz və yalnız lazım olduqda (məsələn, müştəriyə sənədləri təqdim etmək üçün) avtomatik olaraq istədiyiniz formatda fayl yaradırsınız ( məsələn, MS Word ).
proses
Hesab edirəm ki, bir çoxları üçün yuxarıda verilmiş düstur sənədlərlə işləmə prosesinin indi necə təşkil oluna biləcəyini başa düşmək üçün kifayətdir. Ancaq yenə də mən adətən şəbəkə mühəndislərinə diqqət yetirirəm, ona görə də ümumi şəkildə iş prosesinin indi necə görünə biləcəyini və bunun MS Word fayllarının redaktə yanaşmasından nə ilə fərqləndiyini göstərəcəyəm.
Konkret desək, Git ilə işləmək üçün platforma olaraq GitHub-u seçəcəyik. Sonra bir repozitoriya yaratmalı və Markdown faylını və ya işləməyi planlaşdırdığınız faylları master filialına yerləşdirməlisiniz.
Biz "github axını" əsasında sadə bir prosesə baxacağıq. Onun təsviri həm İnternetdə, həm də İnternetdə tapıla bilər .
Tutaq ki, sənədləşmə üzərində dörd nəfər işləyir və siz onlardan birisiniz. Sonra dörd əlavə filial yaradılır, məsələn, bu insanların adları ilə. Hər kəs yerli olaraq, öz filialında işləyir və lazım olan bütün dəyişiklikləri edir .
Tamamlanmış bir iş parçasını tamamladıqdan sonra siz çəkmə sorğusu yaradırsınız və bununla da dəyişikliklərinizin müzakirəsinə başlayırsınız. Ola bilsin, müzakirə zamanı məlum olur ki, başqa bir şey əlavə etmək və ya dəyişmək lazımdır. Bu halda, siz lazımi dəyişiklikləri edirsiniz və əlavə çəkmə sorğusu yaradırsınız. Nəhayət, dəyişiklikləriniz qəbul edilir və əsas filiala birləşdirilir (və ya atılır).
Əlbəttə ki, bu kifayət qədər ümumi təsvirdir. Ətraflı bir proses yaratmaq üçün tərtibatçılarınızla əlaqə saxlamağı və ya məlumatlı insanlar tapmağı təklif edirəm. Ancaq qeyd etmək istəyirəm ki, Git-ə daxil olmaq üçün maneə olduqca aşağıdır. Bu, protokolun sadə olduğunu söyləmək deyil, ancaq sadə başlaya bilərsiniz. Əgər ümumiyyətlə heç nə bilmirsinizsə, məncə, öyrənib quraşdırmaq üçün bir neçə saat və ya bəlkə də günlər sərf etdikdən sonra ondan istifadə etməyə başlaya bilərsiniz.
Məsələn, yuxarıdakı nümunədə təsvir olunan proseslə müqayisədə bu yanaşmanın faydası nədir?
Əslində, proseslər olduqca oxşardır, sadəcə əvəz etdiniz
faylı kopyalamaq -> filial yaratmaq
mətnin son fayla kopyalanması -> birləşmə
ən son dəyişiklikləri özünüzə kopyalayın -> git pull/fetch
yazışmalarda müzakirə -> sorğuları çəkmək
track rejimi -> git diff
ən son təsdiq edilmiş versiya -> master filialı
ehtiyat nüsxə (uzaq serverə köçürmə) -> git push
...
Beləliklə, siz artıq etməli olduğunuz hər şeyi avtomatlaşdırdınız, ancaq əl ilə.
Daha yüksək səviyyədə sizə imkan verir
- sənəd dəyişiklikləri üçün aydın, sadə və idarə olunan proses yaradın
- çünki siz yekun sənədi (MS Word nümunəmizdə) avtomatik olaraq yaradırsınız, bu, formatlama səhvləri ehtimalını azaldır
Qeyd:
Bunu dedikdən sonra, mən hesab edirəm ki, yalnız sənədlər üzərində işləsəniz belə, Git-dən istifadə işinizi xeyli asanlaşdıra bilər.
Bütün bunlar sənədləşmənin keyfiyyətini artırır və onun yaradılması üçün vaxtı azaldır. Və başqa bir kiçik bonus - şəbəkənizi avtomatlaşdırarkən sizə kömək edəcək Git-i öyrənəcəksiniz :)
Yeni prosesə necə keçmək olar?
Məqalənin əvvəlində yazmışdım ki, sabah yeni bir şəkildə işə başlaya bilərsiniz. İşinizi yeni istiqamətə necə aparmalısınız?
Çox güman ki, əməl etməli olduğunuz addımların ardıcıllığı budur:
- sənədiniz çox böyükdürsə, onu hissələrə bölün
- hər bir hissəni Markdown-a çevirin (məsələn, Pandoc istifadə edərək)
- Markdown redaktorlarından birini quraşdırın (istifadə edirəm )
- çox güman ki, yaradılmış Markdown sənədlərinin formatını tənzimləməli olacaqsınız
- əvvəlki fəsildə təsvir olunan prosesi tətbiq etməyə başlayın
- eyni zamanda, öz tapşırığınıza uyğun olaraq çevrilmə skriptini dəyişdirməyə başlayın (və ya özünüzə aid bir şey yaradın)
Markdwon çevirmə mexanizmi -> tələb olunan sənəd növünü yaradana və təkmilləşdirməyə qədər gözləmək lazım deyil. Məsələ burasındadır ki, Markdown fayllarınızı çevirmək prosedurunu tez bir zamanda tam avtomatlaşdıra bilməsəniz belə, Pandoc-dan istifadə edərək bunu hansısa formada edə və sonra əl ilə son formaya gətirə bilərsiniz. Adətən bunu tez-tez etmək lazım deyil, ancaq müəyyən mərhələlərin sonunda və bu əl işi, əlverişsiz olsa da, mənim fikrimcə, sazlama mərhələsində olduqca məqbuldur və prosesi "yavaşlatmamalıdır" çox.
Qalan hər şey (Markdown, Git, Pandoc, Typora) artıq hazırdır və onlarla işləməyə başlamaq üçün çox səy və ya vaxt tələb olunmur.
Mənbə: www.habr.com
