Fampisehoana ho kaody, na Nahoana aho no tsy mampiasa Powerpoint intsony

Fampisehoana ho kaody, na Nahoana aho no tsy mampiasa Powerpoint intsony

Heveriko fa nanome famelabelarana am-polony ho an'ny mpiara-miasa, mpanjifa ary lahateny ampahibemaso aho tamin'ny asako momba ny IT. Nandritra ny taona maro, Powerpoint dia safidy voajanahary sy azo ianteherana ho ahy ho fitaovana famokarana slide. Saingy tamin'ity taona ity dia niova ny toe-draharaha. Nanomboka tamin’ny Febroary ka hatramin’ny Mey, dia nanana fahafahana nanao lahateny tamin’ny fihaonambe dimy aho, ary tsy maintsy nomanina tao anatin’ny fotoana fohy ny horonan-tsary ho an’ny tatitra, nefa manana kalitao avo lenta. Nipoitra ny fanontaniana momba ny fanolorana an'io ampahany amin'ny asa io momba ny famolavolan'ny sary an-tsary ho an'ny olon-kafa. Nanandrana niara-niasa tamin'ny mpamorona aho indray mandeha, nandefa .pptx tamin'ny alàlan'ny mailaka, saingy nivadika ho korontana ny asa: tsy nisy nahafantatra hoe iza amin'ireo sary mihetsika no "vaovao", ary "mihetsiketsika" ny layout noho ny fahasamihafana eo amin'ny Powerpoint. dikan-teny sy endritsoratra amin'ny milinanay. Ary nanapa-kevitra ny hanandrana zava-baovao aho. Nanandrana izany aho, ary nanomboka teo dia tsy nieritreritra ny hiverina amin'ny Powerpoint aho.

Inona no tadiavintsika

Herintaona sy tapany teo ho eo izay, nitsahatra tsy nampiasa Word intsony ny orinasanay mba hamoronana antontan-taratasy momba ny tetikasa, rehefa tojo olana mitovy amin'izany: na dia tsara aza ny Word amin'ny fanoratana antontan-taratasy kely, rehefa mitombo ny boky, dia misy fahasarotana amin'ny fiaraha-miasa sy ny fahazoana kalitao avo lenta ary famolavolana iraisana. Nilatsaka ny safidintsika AsciiDoctor, ary tsy mitsahatra ny mifaly amin'ity safidy ity, fa lohahevitra iray ho an'ny lahatsoratra mitokana ity. Nandritra izany fotoana izany, nianatra ny fahombiazan'ny iray amin'ireo fitsipiky ny DevOps momba ny "zavatra rehetra ho fehezan-dalàna" izahay, noho izany dia niharihary ny safidy ny fepetra takiana amin'ny teknolojia vaovao amin'ny famoronana sary mihetsika:

  1. Ny famelabelarana dia tokony ho rakitra an-tsoratra tsotra amin'ny fiteny marika.
  2. Momba ny tetik'asa fampandrosoana ny slides ataontsika, noho izany dia tokony hanamora ny fampidirana azy ny marika, fa tsy mampiasa rafitra ivelany
    • sombin-kaody misy fanasongadinana syntax,
    • kisary tsotra miendrika endrika geometrika mifandray amin'ny zana-tsipìka,
    • Kisary UML, tabilao mikoriana ary maro hafa.
  3. Ny drafitry ny famelabelarana dia tsy maintsy tehirizina ao anaty rafitra fanaraha-maso ny dikan-teny.
  4. Ny fanamarinana sy ny fanangonana ireo slides vita dia tokony hatao amin'ny rafitra CI.

Amin'izao fotoana izao, misy safidy fototra roa amin'ny famoronana sary amin'ny fiteny marika: fonosana fandefasana ho an'ny LaTeX na iray amin'ireo rafitra hamoronana sary mihetsika mampiasa HTML/CSS (MampihariharyJS, fanamarihana, deck.js sy ny maro hafa).

Na dia mipetraka ao amin'ny LaTeX aza ny fanahiko, dia nilaza ny saiko fa ny safidy vahaolana izay tsy izaho irery no hampiasaina dia tokony ho eo amin'ny lafiny vahaolana mahazatra amin'ny vondron'olona midadasika kokoa. Tsy ny rehetra no mahafantatra ny LaTeX, ary raha tsy mifandray amin'ny fanoratana lahatsoratra siantifika ny fanaonao isan'andro, dia mety tsy hanana fotoana hiroboka ao anatin'ny tontolo goavana sy be pitsiny amin'ity rafitra ity ianao.

Na izany aza, ny fifehezana ny HTML/CSS dia tsy tena fahaizana miely patrana: izaho, ohatra, dia tsy tena mahay tanteraka. Soa ihany fa tonga hamonjy ny AsciiDoctor efa mahazatra: mpanova asciidoctor-revealjs mamela anao hamorona sary mihetsika RevealJS amin'ny fampiasana marika AsciiDoctor. Ary mora ny mianatra sy azon'ny rehetra idirana!

Ahoana ny fanoratana slides

Mba hahatakarana ny maha-zava-dehibe ny sary mihetsika amin'ny AsciiDoctor, ny fomba tsotra indrindra dia ny manome ohatra manokana. Ireo rehetra ireo dia avy amin'ny horonan-tsary nataoko ho an'ny famelabelarako ny fihaonambe tamin'ity taona ity.

Slide misy lohateny sy lisitra amin'ny zavatra misokatra manaraka:

== Зачем нам Streams API?

[%step]
* Real-time stream processing
* Stream-like API (map / reduce)
* Под капотом:
** Автоматический offset commit
** Ребалансировка
** Внутреннее состояние обработчиков
** Легкое масштабирование

vokatra

Fampisehoana ho kaody, na Nahoana aho no tsy mampiasa Powerpoint intsony

Lohateny sy sombin-kaody loharano misy fanasongadinana syntax:

== Kafka Streams API: общая структура KStreams-приложения

[source,java]
----
StreamsConfig config = ...;
//Здесь устанавливаем всякие опции

Topology topology = new StreamsBuilder()
//Здесь строим топологию
....build();
----

vokatra

Fampisehoana ho kaody, na Nahoana aho no tsy mampiasa Powerpoint intsony

Amin'ny fiomanana amin'ny lahateny iray dia mandalo fanavaozana sy fanatsarana miverimberina ny demo kaody, noho izany dia tena ilaina ny fahafahana mandika haingana sy mametaka ny “code manta” mivantana amin'ny slide iray, manome antoka fa ny demo dia manara-maso tsy misy ahiahy momba ny fanasongadinana syntax.

Lohateny, fanoharana ary lahatsoratra (fametrahana amin'ny slide dia atao amin'ny sela AsciiDoctor tabilao):

== Kafka Streams in Action

[.custom-style]
[cols="30a,70a"]
|===
|image::KSIA.jpg[]
|
* **William Bejeck**, +
“Kafka Streams in Action”, November 2018
* Примеры кода для Kafka 1.0
|===

vokatra

Fampisehoana ho kaody, na Nahoana aho no tsy mampiasa Powerpoint intsony

Indraindray dia tsy ilaina ny lohateny, ary mba hanehoana ny hevitrao dia mila sary feno ecran fotsiny ianao:

[%notitle]
== Жить в легаси нелегко

image::swampman.jpg[canvas, size=cover]

vokatra

Fampisehoana ho kaody, na Nahoana aho no tsy mampiasa Powerpoint intsony

Matetika ny hevitra iray dia mila tohanan’ny kisary tsotra, amin’ny endrika “efajoro mifamatotra amin’ny zana-tsipìka”. Soa ihany fa AsciiDoctor dia tafiditra amin'ny rafitra Graphviz — fiteny ahafahanao mamaritra ny kisarisary mifototra amin'ny famaritana ny vertices sy ny fifandraisana misy eo aminy. Graphviz dia maka filaharana fianarana, saingy mifototra amin'ireo ohatra omena dia mora ny manao izany! Toy izao ny endriny:

== Пишем “Bet Totalling App”

Какова сумма выплат по сделанным ставкам, если сыграет исход?

[graphviz, "counting-topology.png"]
-----
digraph G {
graph [ dpi = 150 ];
rankdir="LR";
node [fontsize=18; shape="circle"; fixedsize="true"; width="1.1"];
Store [shape="cylinder"; label="Local Store"; fixedsize="true"; width="1.5"]
Source -> MapVal -> Sum -> Sink
Sum -> Store [dir=both; label=" n "]
{rank = same; Store; Sum;}
}
-----

vokatra

Fampisehoana ho kaody, na Nahoana aho no tsy mampiasa Powerpoint intsony

Raha toa ka ilaina ny manitsy ny soratra eo amin'ny sary, manova ny làlan'ny zana-tsipìka, sns., dia azo atao mivantana amin'ny fehezan-dalàna fanolorana izany, fa tsy manodina ny sary any amin'ny toerana iray ary mampiditra azy ao amin'ny slide. Izany dia mampitombo be ny hafainganam-pandehan'ny asa amin'ny slides.

Ohatra sarotra kokoa:

== Невоспроизводимая сборка
[graphviz, "unstable-update.png"]
-----
digraph G {
  rankdir="LR";
  graph [ dpi = 150 ];
  u -> r0;
  u[shape=plaintext; label="linter updaten+ 13 warnings"]
  r0[shape=point, width = 0]
  r1 -> r0[ arrowhead = none, label="master branch" ];
  r0-> r2 [];   b1 -> b4;  r1->b1
  r1[label="150nwarnings"]
  b1[label="± 0nwarnings"]
  b4[label="± 0nwarnings"]
  b4->r2
  r2[label="163nwarnings", color="red", xlabel=<<font color="red">merge blocked</font>>]
  {rank = same; u; r0; b4;}
}
-----

vokatra

Fampisehoana ho kaody, na Nahoana aho no tsy mampiasa Powerpoint intsony

Raha ny tokony ho izy, mety ny manandrana amin'ny Graphviz sy ny debug sary amin'ny pejy Graphviz an-tserasera.

Farany, raha mila mampiditra tabilao, kisary kilasy na kisary manara-penitra hafa ao anaty slide ianao, dia misy rafitra hafa ampidirina amin'ny AsciiDoctor ho tonga hamonjy, PlantUML. Ny mpiara-miasa amiko Nikolai Potashnikov dia nanoratra momba ny fahaiza-manaon'ny PlantUML lahatsoratra misaraka.

Ny famadihana ny tetikasa famelabelarana ho kaody voatahiry ao amin'ny rafitra fanaraha-maso ny dikan-teny dia ahafahana mandamina ny fiaraha-miasa amin'ny famelabelarana, voalohany indrindra, hanasaraka ny asa famoronana votoaty sy famolavolana. Ny famolavolan'ny slides (fonts, backgrounds, indents) ao amin'ny RevealJS dia voafaritra amin'ny fampiasana CSS. Ny fahaizako manokana amin'ny CSS no tsara indrindra ampitaina amin'ny ity gif - fa tsy mampatahotra rehefa misy olona miasa amin'ny CSS amin'ny fomba haingana sy haingana kokoa noho izaho. Vokatr'izany dia hita fa miaraka amin'ny fe-potoana manatona haingana ho an'ny famelabelarana, dia afaka miasa amin'ny rakitra samihafa miaraka amin'ny Git isika ary mamolavola haingana ny fiaraha-miasa izay tsy azo atao rehefa mandefa rakitra .pptx amin'ny alàlan'ny mailaka.

Manangana pejy HTML miaraka amin'ny slides

Tena tsara ny loharanon-tsoratra tsotra, fa ahoana ny fomba hanangonanao azy ireo amin'ny famelabelarana?

AsciiDoctor dia tetikasa nosoratana tamin'ny Ruby, ary misy fomba maro hampandehanana azy. Voalohany, azonao atao ny mametraka ny fiteny Ruby ary mihazakazaka mivantana ny asciidoctor, izay angamba no zavatra akaiky indrindra amin'ny mpamorona Ruby.

Raha tsy te hikorontana amin'ny fametrahana an'i Ruby ianao dia azonao atao ny mampiasa ny sary docker asciidoctor/docker-asciidoctor, izay, rehefa natomboka, dia azonao atao ny mampifandray ny lahatahiry amin'ny loharanon'ny tetikasa amin'ny alalan'ny VOLUME ary mahazo ny valiny amin'ny toerana iray.

Ny safidy nofidiko dia mety ho toa tsy nampoizina, fa io no mety indrindra ho ahy amin'ny maha-mpamorona Java ahy. Tsy mitaky fametrahana Ruby na docker izany, fa mamela anao hamorona slides amin'ny alàlan'ny script Maven.

Ny tanjona dia ny tetikasa JRuby - Ny fampiharana Java amin'ny fiteny Ruby dia tena tsara ka ahafahanao mampandeha saika izay rehetra noforonina ho an'i Ruby amin'ny milina Java, ary ny fampandehanana ny AsciiDoctor dia iray amin'ireo fampiasa mahazatra indrindra amin'ny JRuby.

fisian'ny asciidoctor-maven-plugin mamela anao hanangona antontan-taratasy AsciiDoctor izay ao anatin'ny tetikasa Java (izay ampiasainay mavitrika). Mandritra izany fotoana izany, AsciiDoctor sy JRuby dia alaina ho azy avy amin'ny Maven, ary ny AsciiDoctor dia mandeha amin'ny tontolo JRuby: tsy ilaina ny mametraka na inona na inona amin'ny milina! (Ankoatra ny fonosana graphviz, izay ilaina raha te hampiasa sary GraphViz na PlantUML ianao.) Apetraho ao anaty lahatahiry fotsiny ny rakitra .adoc anao src/main/asciidoc/. eto ohatra ny pomnikfanangonana sary misy kisary.

Ampidiro ho PDF ny slides

Na dia ampy ho an'ny tenany aza ny dikan-teny HTML amin'ny slides, dia mbola ilaina ny manana PDF version of the slides. Voalohany, mitranga fa amin'ny fihaonambe sasany izay tsy manome ny mpandahateny ny fahafahana mampifandray ny solosaina findainy manokana, dia mitaky slides "amin'ny endrika pptx na pdf" izy ireo, nefa tsy manantena fa ao amin'ny HTML ihany koa izy ireo. Faharoa, endrika tsara ny handefasana ny mpandrindra ny dika tsy navoakan'ny dianao araka izay naseho tao amin'ny tatitra, amin'ny endrika PDF hamoahana ny rakitra ao amin'ny fitaovana fihaonambe.

Soa ihany fa ny fitaovana Node.js no mitantana ity asa ity. decktape, miorina amin'ny fototra saribakoly - rafitra automatique amin'ny fitantanana ny navigateur Chrome. Azonao atao ny manova ny fampisehoana RevealJS ho PDF miaraka amin'ny baiko

node decktape.js -s 3200x1800 --slides 1-500 
  reveal "file:///index.html?fragments=true" slides.pdf  

Tetika roa rehefa nanokatra decktape, izay tsy maintsy novokarinay tamin'ny alàlan'ny fitsapana sy ny fahadisoana:

  • fanapahan-kevitra amin'ny alalan'ny parameter -s tsy maintsy faritana amin'ny sisiny roa sosona, raha tsy izany dia mety hisy olana amin'ny valin'ny fiovam-po

  • ao amin'ny URL an'ny dikan-teny HTML amin'ny famelabelarana dia mila mandefa paramètre ianao ?fragments=true, izay hamorona pejy PDF misaraka ho an'ny fanjakana manelanelana tsirairay amin'ny slide-nao (ohatra, pejy dimy ho an'ny teboka dimy raha aseho manaraka azy ireo). Izany dia ahafahanao mampiasa samirery PDF toy izany ho famelabelarana mandritra ny tatitra iray.

Fivoriambe sy famoahana ho azy amin'ny Internet

Mora kokoa rehefa atambatra ho azy ny slides rehefa misy fanovana atao amin'ny rafitra fanaraha-maso ny dikan-teny, ary mety kokoa aza rehefa apetraka ao amin'ny Internet ho an'ny besinimaro ny sary natambatra ho azy. Ny slides avy amin'ny Internet dia azo "lalaovana" mora foana eo anoloan'ny mpihaino avy amin'ny milina mifandray amin'ny Internet sy projector.

Satria mampiasa GitHub amin'ny asantsika izahay, ny safidy voajanahary amin'ny rafitra CI dia TravisCI, ary ho fampiantranoana famelabelarana efa vita - github.io. Ny hevitra ao ambadiky ny github.io dia ny votoaty static rehetra alefa any amin'ny sampana gh-pages ny tetikasanao amin'ny GitHub, dia azo alaina ao amin'ny <ваше имя>.gihub.io/<ваш проект>.

Fenoy ny rakitra fikirakirana TravisCI, anisan'izany ny fanangonana ny dikan-teny HTML amin'ny pejy amin'ny fampiasana Maven, ny famadihana ho PDF amin'ny alàlan'ny decktape, ary ny fampiakarana ny valiny amin'ny kofehy gh-pages ho an'ny famoahana amin'ny github.io, toa toy izany.

Mba hananganana tetikasa toy izany eo amin'ny lafiny TravisCI dia mila manamboatra fari-piainana manodidina ianao

  • GH_REF — sanda toa ny github.com/inponomarev/csa-hb
  • GH_TOKEN - Famantarana fidirana GitHub. Azonao atao ny mahazo azy avy amin'ny GitHub ao amin'ny mombamomba anao, Settings Developer -> Token'ny fidirana manokana. Raha mampakatra famelabelarana any amin'ny tahiry ho an'ny daholobe ianao, dia ampy ny mamaritra ny hany ambaratonga fidirana "Access public repository" ho an'ity marika ity.
  • GH_USER_EMAIL / GH_USER_NAME — anarana/mailaka miaraka amin'ny anaran'ny fanosehana ny kofehy gh-pages.

Noho izany, ny fanolorana tsirairay ny kaody famelabelarana ao amin'ny GitHub dia miteraka ny sary hosodoko amin'ny endrika HTML sy PDF ary averina alefa any amin'ny github.io. (Mazava ho azy fa tokony hampidirinao ao amin'ny github.io ireo famelabelarana tianao hambara ho an'ny besinimaro amin'ny farany.)

Ohatra amin'ny tetikasa

Farany, ireto misy rohy mankany amin'ny ohatra roa amin'ny tetik'asa famelabelarana miaraka amin'ny script Maven namboarina sy ny fanitsiana CI ho an'ny Travis-CI, izay azo alaina sy ampiasaina rehefa mamorona tetikasa famelabelaranao manokana:

Veloma Powerpoint! Heveriko fa tsy mila anao mihitsy aho amin'ny famelabelarana ara-teknika :)

Source: www.habr.com

Add a comment