{"id":7119,"date":"2015-11-19T13:57:23","date_gmt":"2015-11-19T12:57:23","guid":{"rendered":"https:\/\/www.websupport.sk\/blog\/?p=7119"},"modified":"2025-03-11T21:06:37","modified_gmt":"2025-03-11T20:06:37","slug":"7-tipov-pre-tvorenie-open-source","status":"publish","type":"post","link":"https:\/\/www.websupport.sk\/blog\/2015\/11\/7-tipov-pre-tvorenie-open-source\/","title":{"rendered":"7 tipov pre tvorenie open source"},"content":{"rendered":"<span class=\"span-reading-time rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\"><b>Doba \u010d\u00edtania:<\/b><\/span> <span class=\"rt-time\"> 5<\/span> <span class=\"rt-label rt-postfix\">min.<\/span><\/span><p>Ste na svoju program\u00e1torsku pr\u00e1cu hrd\u00ed? Radi by ste sa o svoj k\u00f3d podelili s ostatn\u00fdmi? Ak m\u00e1te pocit, \u017ee z va\u0161ej dobre odvedenej pr\u00e1ce by mohli \u0165a\u017ei\u0165 aj ostatn\u00ed v komunite, spr\u00edstupnite svoje dielo ako otvoren\u00fd software. Pom\u00f4\u017eete tak ostatn\u00fdm, vybudujete si dobr\u00e9 meno a otvor\u00edte si nov\u00e9 mo\u017enosti pri h\u013eadan\u00ed pr\u00e1ce.<\/p>\n<p>V tomto \u010dl\u00e1nku n\u00e1jdete nieko\u013eko tipov, ako tvori\u0165 modern\u00fd a pre komunitu \u013eahko pr\u00edstupn\u00fd open source. I ke\u010f v \u010dl\u00e1nku budem opisova\u0165 n\u00e1stroje zo sveta PHP, tieto princ\u00edpy sa daj\u00fa uplatni\u0165 v ka\u017edom modernom programovacom jazyku.<\/p>\n<h2>Verejne dostupn\u00fd verziovac\u00ed syst\u00e9m<\/h2>\n<p>U\u017e len zo samotnej defin\u00edcie toho, \u010do slobodn\u00fd software vlastne je, mal by by\u0165 v\u00e1\u0161 k\u00f3d verejne dostupn\u00fd. M\u00f4\u017eete ho samozrejme da\u0165 len na svoju webov\u00fa str\u00e1nku, no v posledn\u00fdch rokoch z\u00edskal v tomto celkom dominantn\u00fa poz\u00edciu <a href=\"https:\/\/github.com\/\" target=\"_blank\">github<\/a> (ako centr\u00e1lne \u00falo\u017eisko slobodn\u00e9ho software), nako\u013eko pon\u00faka jednoduch\u00fd sp\u00f4sob prispievania ostatn\u00fdch program\u00e1torov do v\u00e1\u0161ho k\u00f3du, pomocou issues, forkov a merge requestov.<\/p>\n<p>Github profil s kvalitn\u00fdmi projektami navy\u0161e za\u010d\u00edna by\u0165 nie\u010d\u00edm, na \u010do HR-isti h\u013eadia \u010doraz viac a viac, ako <a href=\"https:\/\/www.websupport.sk\/blog\/2015\/11\/6-uzitocnych-tipov-na-hladanie-it-talentov\/\" target=\"_blank\">p\u00ed\u0161e<\/a> na\u0161a kolegy\u0148a Mirka z Inhiro.<\/p>\n<h2>Preferujte viac mal\u00fdch kni\u017en\u00edc, ne\u017e budovanie vlastn\u00e9ho frameworku<\/h2>\n<p>Ka\u017ed\u00fd program\u00e1tor si za\u017eije obdobie, kedy chce vytvori\u0165 vlastn\u00fd, plne funk\u010dn\u00fd a mo\u017enos\u0165ami preplnen\u00fd framework. To je ale beh na extra dlh\u00e9 trate a t\u00ed, ktor\u00ed sa do toho re\u00e1lne pustili u\u017e zistili, \u017ee lep\u0161ie je robi\u0165 viacero mal\u00fdch kni\u017en\u00edc, ktor\u00e9 si m\u00f4\u017eu koncov\u00ed program\u00e1tori \u013eubovo\u013ene kombinova\u0165 a vo v\u00fdsledku vytv\u00e1ra\u0165 nekone\u010dno vlastn\u00fdch kombin\u00e1ci\u00ed.<\/p>\n<p>Navy\u0161e trendom za\u010d\u00edna by\u0165 pr\u00e1ve opak, rozb\u00edjanie ve\u013ek\u00fdch monolitick\u00fdch frameworkov na mal\u00e9, jedno\u00fa\u010delov\u00e9 kni\u017enice, (napr. Symfony alebo Nette). V kone\u010dnom d\u00f4sledku to autora open source u\u010d\u00ed tvori\u0165 samostatn\u00e9 funk\u010dn\u00e9 celky s tou spr\u00e1vnou mierou abstrakcie.<\/p>\n<h2>Vyu\u017e\u00edvanie bal\u00ed\u010dkovac\u00edch syst\u00e9mov<\/h2>\n<p>Drviv\u00e1 v\u00e4\u010d\u0161ina dnes roz\u0161\u00edren\u00fdch programovac\u00edch jazykov m\u00e1 vlastn\u00fd alebo komunitou vytvoren\u00fd bal\u00ed\u010dkovac\u00ed mechanizmus. V praxi ide o to, \u017ee do va\u0161ej kni\u017enice prid\u00e1te zop\u00e1r meta d\u00e1t, ktor\u00e9 obsahuj\u00fa z\u00e1kladn\u00e9 \u00fadaje o va\u0161om bal\u00ed\u010dku (ako napr. n\u00e1zov, popis, \u2026), no hlavne z\u00e1vislosti od in\u00fdch kni\u017en\u00edc a to, ako sa m\u00e1 v\u00e1\u0161 k\u00f3d funk\u010dne integrova\u0165 do cudzieho prostredia. Vo v\u00fdsledku tak cie\u013eov\u00e9mu program\u00e1torovi sta\u010d\u00ed spusti\u0165 jeden jednoduch\u00fd pr\u00edkaz a u\u017e m\u00f4\u017ee va\u0161u kni\u017enicu vyu\u017e\u00edva\u0165 vo svojom codebase bez \u010fal\u0161\u00edch zbyto\u010dn\u00fdch starost\u00ed s integr\u00e1ciou.<\/p>\n<p>Vo svete php je roz\u0161\u00edren\u00fd <a href=\"https:\/\/getcomposer.org\/\" target=\"_blank\">composer<\/a>, pri ktorom sta\u010d\u00ed, aby ste vo svojom repozit\u00e1ri zadefinovali <a href=\"https:\/\/getcomposer.org\/doc\/04-schema.md\" target=\"_blank\">composer.json<\/a> s\u00fabor a n\u00e1sledne po registr\u00e1ci\u00ed na <a href=\"https:\/\/packagist.org\/\" target=\"_blank\">packagist<\/a>, prepojili svoj git repozit\u00e1r s vytvoren\u00fdm bal\u00ed\u010dkom.<\/p>\n<h2>S\u00e9mantick\u00e9 verziovanie<\/h2>\n<p>Nepriamou v\u00fdhodou bal\u00ed\u010dkovac\u00edch syst\u00e9mov je to, \u017ee udr\u017euj\u00fa pou\u017e\u00edvan\u00fd open source k\u00f3d aktu\u00e1lny, samozrejme za predpokladu, \u017ee koncov\u00fd program\u00e1tor m\u00e1 o to snahu. Aby sa v\u0161ak nest\u00e1valo to, \u017ee najnov\u0161ia verzia nejakej kni\u017enice rozbije funk\u010dnos\u0165 va\u0161ej aplik\u00e1cie, vznikla iniciat\u00edva <a href=\"http:\/\/semver.org\/lang\/sk\/\" target=\"_blank\">s\u00e9mantick\u00e9ho verziovania<\/a>. Svoj open source k\u00f3d tak vyd\u00e1vate vo verzi\u00e1ch, kde ka\u017ed\u00e1 je pomenovan\u00e1 troj\u00farov\u0148ov\u00fdm n\u00e1zvom x.y.z, pri\u010dom plat\u00ed, \u017ee:<\/p>\n<ul>\n<li><strong>z<\/strong> sa zvy\u0161uje vtedy, ak nov\u00e1 verzia len opravuje chyby, alebo prid\u00e1va len drobn\u00e9 zmeny.<\/li>\n<li><strong>y<\/strong> sa zvy\u0161uje vtedy, ak nov\u00e1 verzia prid\u00e1va podstatn\u00e9 novinky, no z\u00e1rove\u0148 je sp\u00e4tne kompatibiln\u00e1 s predo\u0161lou verziou. Zv\u00fd\u0161enie y rady vynuluje z radu (napr\u00edklad 1.0.5 sa zmen\u00ed na 1.1.0).<\/li>\n<li><strong>x<\/strong> sa zvy\u0161uje vtedy, ak pridan\u00e9 zmeny p\u00f4sobia inkompatibilitu\/nefunk\u010dnos\u0165 v porovnan\u00ed s predo\u0161lou verziou. Zv\u00fd\u0161enie x rady vynuluje y aj z radu (napr\u00edklad 1.2.8 sa zmen\u00ed na 2.0.0).<\/li>\n<\/ul>\n<p>S\u00e9mantick\u00e9 verziovanie pri php\/composer kombin\u00e1ci\u00ed funguje jednoducho pomocou git tag-ov. Sta\u010d\u00ed \u013eubovo\u013en\u00fd commit ozna\u010di\u0165 tagom, napr\u00edklad v1.0.0 (alebo iba 1.0.0) a u\u017e ste urobili svoj prv\u00e9 vydanie verzie. Viac inform\u00e1ci\u00ed o tom, ako definova\u0165 z\u00e1vislos\u0165 na inej kni\u017enici a jej povolen\u00fdch verzi\u00e1ch n\u00e1jdete priamo v <a href=\"https:\/\/getcomposer.org\/doc\/articles\/versions.md\" target=\"_blank\">dokument\u00e1ci\u00ed composeru<\/a>.<\/p>\n<h2>Unifikovan\u00e9 form\u00e1tovanie k\u00f3du<\/h2>\n<p>Ka\u017ed\u00fd program\u00e1tor m\u00e1 samozrejme svoj sp\u00f4sob p\u00edsania k\u00f3du, no ak by sme v\u0161etci mali form\u00e1tova\u0165 k\u00f3d po svojom, \u010d\u00edtanie cudzieho k\u00f3du by pre n\u00e1s mohlo by\u0165 zaka\u017ed\u00fdm neprirodzen\u00e9. Preto vznikla <a href=\"https:\/\/github.com\/php-fig\/fig-standards\/blob\/master\/accepted\/PSR-2-coding-style-guide.md\" target=\"_blank\">PSR iniciat\u00edva<\/a>, ktor\u00e1 sa sna\u017e\u00ed form\u00e1tovanie zjednoti\u0165 a mnoho ve\u013ek\u00fdch frameworkov ju u\u017e etablovalo. Odpor\u00fa\u010dam v\u00e1m pou\u017e\u00edva\u0165 n\u00e1stroj <a href=\"https:\/\/github.com\/squizlabs\/PHP_CodeSniffer\/tree\/master\/CodeSniffer\" target=\"_blank\">CodeSniffer<\/a>, ktor\u00fd v\u00e1m bez v\u00e4\u010d\u0161ej n\u00e1mahy, pom\u00f4\u017ee udr\u017eiava\u0165 k\u00f3d spr\u00e1vne naform\u00e1tovan\u00fd<span style=\"font-weight: 400;\">.<\/span><\/p>\n<h2>Koment\u00e1re a dokument\u00e1cia<\/h2>\n<p>Jedn\u00fdm z hlavn\u00fdch princ\u00edpov open source je to, \u017ee to nie je k\u00f3d p\u00edsan\u00fd pre stroje, ani pre autora, ale pre v\u0161etk\u00fdch ostatn\u00fdch program\u00e1torov. Pr\u00e1ve kv\u00f4li tomu by ste si mali da\u0165 z\u00e1le\u017ea\u0165 na spisovan\u00ed koment\u00e1rov priamo v k\u00f3de. Hlavnou formou je tzv. <a href=\"https:\/\/en.wikipedia.org\/wiki\/PHPDoc\" target=\"_blank\">phpdoc<\/a>, teda polo technick\u00e9 koment\u00e1re opisuj\u00face hlavn\u00fa funkcionalitu dan\u00fdch met\u00f3d, o\u010dak\u00e1van\u00e9 vstupn\u00e9 argumenty a o\u010dak\u00e1van\u00fd v\u00fdstup. V r\u00e1mci samotnej met\u00f3dy by u\u017e mnoho koment\u00e1rov nemalo by, \u00a0ak m\u00e1te potrebu nejak\u00fa \u010das\u0165 k\u00f3du bli\u017e\u0161ie op\u00edsa\u0165, lep\u0161ou praktikou je osamostatni\u0165 dan\u00fd k\u00f3d do samostatnej met\u00f3dy.<\/p>\n<p>Samostatnou a e\u0161te d\u00f4le\u017eitej\u0161ou \u010das\u0165ou je dokument\u00e1cia v podobe README s\u00faboru a wiki. V\u00e4\u010d\u0161ina program\u00e1torov, ktor\u00ed aj chc\u00fa pou\u017e\u00edva\u0165 v\u00e1\u0161 k\u00f3d, do\u0148 v skuto\u010dnosti nikdy nenahliadne. Niekedy p\u00edsanie dokument\u00e1cie d\u00e1 viac pr\u00e1ce ako programovanie samotn\u00e9, no v\u00fdsledok ur\u010dite stoj\u00ed za to.<\/p>\n<h2>Pokrytie validn\u00fdmi testami<\/h2>\n<p>Pokia\u013e chce niekto vo va\u0161om k\u00f3de urobi\u0165 zmenu, nemal by ma\u0165 (a ani vy) strach z toho, \u017ee t\u00e1to zmena sp\u00f4sob\u00ed nefunk\u010dnos\u0165 na inom mieste. Pr\u00e1ve na to sl\u00fa\u017eia testy. T\u00fdch je viacero druhov, no pri open source s\u00fa najviac vyu\u017e\u00edvan\u00e9 tzv. <a href=\"https:\/\/en.wikipedia.org\/wiki\/Unit_testing\" target=\"_blank\">unit testy<\/a>. V praxi tak svoj k\u00f3d rozdel\u00edte na mal\u00e9 celky (triedy a ich met\u00f3dy), ktor\u00e9 n\u00e1sledne testujete \u0161t\u00fdlom \u201cdostanem pri ur\u010ditom vstupe o\u010dak\u00e1van\u00fd v\u00fdsledok\u201d alebo \u201cdostanem pri ur\u010ditom vstupe o\u010dak\u00e1van\u00fa chybu\u201d. Vo svete php s\u00fa k tomuto \u00fa\u010delu vyu\u017e\u00edvan\u00e9 <a href=\"https:\/\/phpunit.de\/\" target=\"_blank\">phpunit<\/a> a <a href=\"https:\/\/travis-ci.org\/\" target=\"_blank\">travis<\/a>, ktor\u00fd pou\u017e\u00edva v\u00e4\u010d\u0161ina php repozit\u00e1rov.<\/p>\n<p>&nbsp;<\/p>\n<p>Toto je zop\u00e1r z\u00e1kladn\u00fdch tipov, pomocou ktor\u00fdch m\u00f4\u017eete za\u010da\u0165 budova\u0165 otvoren\u00fd software a z\u00edska\u0165 si re\u0161pekt v komunite. Sp\u00f4sobov pre zv\u00fd\u0161enie renom\u00e9 svojho repozit\u00e1ra existuje mnoho, no ak sme na nie\u010do d\u00f4le\u017eit\u00e9 zabudli, budeme v\u010fa\u010dn\u00ed, ak tento \u010dl\u00e1nok plynule dopln\u00edte v koment\u00e1roch.<\/p>\n<p>[mc4wp_form]<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ste na svoju program\u00e1torsku pr\u00e1cu hrd\u00ed? Radi by ste sa o svoj k\u00f3d podelili s ostatn\u00fdmi? Ak m\u00e1te pocit, \u017ee z va\u0161ej dobre odvedenej pr\u00e1ce by mohli \u0165a\u017ei\u0165 aj ostatn\u00ed v komunite, spr\u00edstupnite svoje dielo ako otvoren\u00fd software. Pom\u00f4\u017eete tak ostatn\u00fdm, vybudujete si dobr\u00e9 meno a otvor\u00edte si nov\u00e9 mo\u017enosti pri h\u013eadan\u00ed pr\u00e1ce. V tomto [&hellip;]<\/p>\n","protected":false},"author":108,"featured_media":7120,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7,8,10],"tags":[201,202,607,765,785,937,956],"class_list":["post-7119","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-technologie","category-tipy-a-triky","category-vzdelavanie-2","tag-developeri","tag-developing","tag-open-source","tag-slobodny","tag-software","tag-vyvoj","tag-websupport"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>7 tipov pre tvorenie open source - Websupport blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.websupport.sk\/blog\/2015\/11\/7-tipov-pre-tvorenie-open-source\/\" \/>\n<meta property=\"og:locale\" content=\"sk_SK\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"7 tipov pre tvorenie open source - Websupport blog\" \/>\n<meta property=\"og:description\" content=\"Ste na svoju program\u00e1torsku pr\u00e1cu hrd\u00ed? Radi by ste sa o svoj k\u00f3d podelili s ostatn\u00fdmi? Ak m\u00e1te pocit, \u017ee z va\u0161ej dobre odvedenej pr\u00e1ce by mohli \u0165a\u017ei\u0165 aj ostatn\u00ed v komunite, spr\u00edstupnite svoje dielo ako otvoren\u00fd software. Pom\u00f4\u017eete tak ostatn\u00fdm, vybudujete si dobr\u00e9 meno a otvor\u00edte si nov\u00e9 mo\u017enosti pri h\u013eadan\u00ed pr\u00e1ce. V tomto [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.websupport.sk\/blog\/2015\/11\/7-tipov-pre-tvorenie-open-source\/\" \/>\n<meta property=\"og:site_name\" content=\"Websupport blog\" \/>\n<meta property=\"article:published_time\" content=\"2015-11-19T12:57:23+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-03-11T20:06:37+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.websupport.sk\/blog\/app\/uploads\/sites\/2\/2015\/11\/blog_small15.png\" \/>\n\t<meta property=\"og:image:width\" content=\"290\" \/>\n\t<meta property=\"og:image:height\" content=\"320\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Tom\u00e1\u0161 Tatarko\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Autor\" \/>\n\t<meta name=\"twitter:data1\" content=\"Tom\u00e1\u0161 Tatarko\" \/>\n\t<meta name=\"twitter:label2\" content=\"Predpokladan\u00fd \u010das \u010d\u00edtania\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 min\u00fat\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/2015\\\/11\\\/7-tipov-pre-tvorenie-open-source\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/2015\\\/11\\\/7-tipov-pre-tvorenie-open-source\\\/\"},\"author\":{\"name\":\"Tom\u00e1\u0161 Tatarko\",\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/#\\\/schema\\\/person\\\/39917ea7327c7ce0a79fe984a3fa848e\"},\"headline\":\"7 tipov pre tvorenie open source\",\"datePublished\":\"2015-11-19T12:57:23+00:00\",\"dateModified\":\"2025-03-11T20:06:37+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/2015\\\/11\\\/7-tipov-pre-tvorenie-open-source\\\/\"},\"wordCount\":1217,\"commentCount\":2,\"publisher\":{\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/2015\\\/11\\\/7-tipov-pre-tvorenie-open-source\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/app\\\/uploads\\\/sites\\\/2\\\/2015\\\/11\\\/blog_small15.png\",\"keywords\":[\"developeri\",\"developing\",\"open source\",\"slobodny\",\"software\",\"vyvoj\",\"websupport\"],\"articleSection\":[\"Technol\u00f3gie\",\"Tipy a triky\",\"Vzdel\u00e1vanie\"],\"inLanguage\":\"sk-SK\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/2015\\\/11\\\/7-tipov-pre-tvorenie-open-source\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/2015\\\/11\\\/7-tipov-pre-tvorenie-open-source\\\/\",\"url\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/2015\\\/11\\\/7-tipov-pre-tvorenie-open-source\\\/\",\"name\":\"7 tipov pre tvorenie open source - Websupport blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/2015\\\/11\\\/7-tipov-pre-tvorenie-open-source\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/2015\\\/11\\\/7-tipov-pre-tvorenie-open-source\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/app\\\/uploads\\\/sites\\\/2\\\/2015\\\/11\\\/blog_small15.png\",\"datePublished\":\"2015-11-19T12:57:23+00:00\",\"dateModified\":\"2025-03-11T20:06:37+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/2015\\\/11\\\/7-tipov-pre-tvorenie-open-source\\\/#breadcrumb\"},\"inLanguage\":\"sk-SK\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/2015\\\/11\\\/7-tipov-pre-tvorenie-open-source\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"sk-SK\",\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/2015\\\/11\\\/7-tipov-pre-tvorenie-open-source\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/app\\\/uploads\\\/sites\\\/2\\\/2015\\\/11\\\/blog_small15.png\",\"contentUrl\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/app\\\/uploads\\\/sites\\\/2\\\/2015\\\/11\\\/blog_small15.png\",\"width\":290,\"height\":320},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/2015\\\/11\\\/7-tipov-pre-tvorenie-open-source\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"7 tipov pre tvorenie open source\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/\",\"name\":\"Websupport blog\",\"description\":\"Websupport blog\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"sk-SK\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/#organization\",\"name\":\"Websupport\",\"url\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"sk-SK\",\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/app\\\/uploads\\\/sites\\\/2\\\/2021\\\/08\\\/websupport-logo.svg\",\"contentUrl\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/app\\\/uploads\\\/sites\\\/2\\\/2021\\\/08\\\/websupport-logo.svg\",\"width\":153,\"height\":48,\"caption\":\"Websupport\"},\"image\":{\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/#\\\/schema\\\/person\\\/39917ea7327c7ce0a79fe984a3fa848e\",\"name\":\"Tom\u00e1\u0161 Tatarko\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"sk-SK\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c2a2bf7c250ba64fdeaec233485c4009fb61d514df293b818caf8f8922a9dea3?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c2a2bf7c250ba64fdeaec233485c4009fb61d514df293b818caf8f8922a9dea3?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c2a2bf7c250ba64fdeaec233485c4009fb61d514df293b818caf8f8922a9dea3?s=96&d=mm&r=g\",\"caption\":\"Tom\u00e1\u0161 Tatarko\"},\"description\":\"Vo WebSupporte za\u010d\u00ednal ako developer, dnes pracuje ako Head of Internal Tools. M\u00e1 pod palcom WebAdmina a je autorom n\u00e1stroja Follow Company.\",\"url\":\"https:\\\/\\\/www.websupport.sk\\\/blog\\\/author\\\/tomas-tatarko\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"7 tipov pre tvorenie open source - Websupport blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.websupport.sk\/blog\/2015\/11\/7-tipov-pre-tvorenie-open-source\/","og_locale":"sk_SK","og_type":"article","og_title":"7 tipov pre tvorenie open source - Websupport blog","og_description":"Ste na svoju program\u00e1torsku pr\u00e1cu hrd\u00ed? Radi by ste sa o svoj k\u00f3d podelili s ostatn\u00fdmi? Ak m\u00e1te pocit, \u017ee z va\u0161ej dobre odvedenej pr\u00e1ce by mohli \u0165a\u017ei\u0165 aj ostatn\u00ed v komunite, spr\u00edstupnite svoje dielo ako otvoren\u00fd software. Pom\u00f4\u017eete tak ostatn\u00fdm, vybudujete si dobr\u00e9 meno a otvor\u00edte si nov\u00e9 mo\u017enosti pri h\u013eadan\u00ed pr\u00e1ce. V tomto [&hellip;]","og_url":"https:\/\/www.websupport.sk\/blog\/2015\/11\/7-tipov-pre-tvorenie-open-source\/","og_site_name":"Websupport blog","article_published_time":"2015-11-19T12:57:23+00:00","article_modified_time":"2025-03-11T20:06:37+00:00","og_image":[{"width":290,"height":320,"url":"https:\/\/www.websupport.sk\/blog\/app\/uploads\/sites\/2\/2015\/11\/blog_small15.png","type":"image\/png"}],"author":"Tom\u00e1\u0161 Tatarko","twitter_card":"summary_large_image","twitter_misc":{"Autor":"Tom\u00e1\u0161 Tatarko","Predpokladan\u00fd \u010das \u010d\u00edtania":"6 min\u00fat"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.websupport.sk\/blog\/2015\/11\/7-tipov-pre-tvorenie-open-source\/#article","isPartOf":{"@id":"https:\/\/www.websupport.sk\/blog\/2015\/11\/7-tipov-pre-tvorenie-open-source\/"},"author":{"name":"Tom\u00e1\u0161 Tatarko","@id":"https:\/\/www.websupport.sk\/blog\/#\/schema\/person\/39917ea7327c7ce0a79fe984a3fa848e"},"headline":"7 tipov pre tvorenie open source","datePublished":"2015-11-19T12:57:23+00:00","dateModified":"2025-03-11T20:06:37+00:00","mainEntityOfPage":{"@id":"https:\/\/www.websupport.sk\/blog\/2015\/11\/7-tipov-pre-tvorenie-open-source\/"},"wordCount":1217,"commentCount":2,"publisher":{"@id":"https:\/\/www.websupport.sk\/blog\/#organization"},"image":{"@id":"https:\/\/www.websupport.sk\/blog\/2015\/11\/7-tipov-pre-tvorenie-open-source\/#primaryimage"},"thumbnailUrl":"https:\/\/www.websupport.sk\/blog\/app\/uploads\/sites\/2\/2015\/11\/blog_small15.png","keywords":["developeri","developing","open source","slobodny","software","vyvoj","websupport"],"articleSection":["Technol\u00f3gie","Tipy a triky","Vzdel\u00e1vanie"],"inLanguage":"sk-SK","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.websupport.sk\/blog\/2015\/11\/7-tipov-pre-tvorenie-open-source\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.websupport.sk\/blog\/2015\/11\/7-tipov-pre-tvorenie-open-source\/","url":"https:\/\/www.websupport.sk\/blog\/2015\/11\/7-tipov-pre-tvorenie-open-source\/","name":"7 tipov pre tvorenie open source - Websupport blog","isPartOf":{"@id":"https:\/\/www.websupport.sk\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.websupport.sk\/blog\/2015\/11\/7-tipov-pre-tvorenie-open-source\/#primaryimage"},"image":{"@id":"https:\/\/www.websupport.sk\/blog\/2015\/11\/7-tipov-pre-tvorenie-open-source\/#primaryimage"},"thumbnailUrl":"https:\/\/www.websupport.sk\/blog\/app\/uploads\/sites\/2\/2015\/11\/blog_small15.png","datePublished":"2015-11-19T12:57:23+00:00","dateModified":"2025-03-11T20:06:37+00:00","breadcrumb":{"@id":"https:\/\/www.websupport.sk\/blog\/2015\/11\/7-tipov-pre-tvorenie-open-source\/#breadcrumb"},"inLanguage":"sk-SK","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.websupport.sk\/blog\/2015\/11\/7-tipov-pre-tvorenie-open-source\/"]}]},{"@type":"ImageObject","inLanguage":"sk-SK","@id":"https:\/\/www.websupport.sk\/blog\/2015\/11\/7-tipov-pre-tvorenie-open-source\/#primaryimage","url":"https:\/\/www.websupport.sk\/blog\/app\/uploads\/sites\/2\/2015\/11\/blog_small15.png","contentUrl":"https:\/\/www.websupport.sk\/blog\/app\/uploads\/sites\/2\/2015\/11\/blog_small15.png","width":290,"height":320},{"@type":"BreadcrumbList","@id":"https:\/\/www.websupport.sk\/blog\/2015\/11\/7-tipov-pre-tvorenie-open-source\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.websupport.sk\/blog\/"},{"@type":"ListItem","position":2,"name":"7 tipov pre tvorenie open source"}]},{"@type":"WebSite","@id":"https:\/\/www.websupport.sk\/blog\/#website","url":"https:\/\/www.websupport.sk\/blog\/","name":"Websupport blog","description":"Websupport blog","publisher":{"@id":"https:\/\/www.websupport.sk\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.websupport.sk\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"sk-SK"},{"@type":"Organization","@id":"https:\/\/www.websupport.sk\/blog\/#organization","name":"Websupport","url":"https:\/\/www.websupport.sk\/blog\/","logo":{"@type":"ImageObject","inLanguage":"sk-SK","@id":"https:\/\/www.websupport.sk\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.websupport.sk\/blog\/app\/uploads\/sites\/2\/2021\/08\/websupport-logo.svg","contentUrl":"https:\/\/www.websupport.sk\/blog\/app\/uploads\/sites\/2\/2021\/08\/websupport-logo.svg","width":153,"height":48,"caption":"Websupport"},"image":{"@id":"https:\/\/www.websupport.sk\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.websupport.sk\/blog\/#\/schema\/person\/39917ea7327c7ce0a79fe984a3fa848e","name":"Tom\u00e1\u0161 Tatarko","image":{"@type":"ImageObject","inLanguage":"sk-SK","@id":"https:\/\/secure.gravatar.com\/avatar\/c2a2bf7c250ba64fdeaec233485c4009fb61d514df293b818caf8f8922a9dea3?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/c2a2bf7c250ba64fdeaec233485c4009fb61d514df293b818caf8f8922a9dea3?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c2a2bf7c250ba64fdeaec233485c4009fb61d514df293b818caf8f8922a9dea3?s=96&d=mm&r=g","caption":"Tom\u00e1\u0161 Tatarko"},"description":"Vo WebSupporte za\u010d\u00ednal ako developer, dnes pracuje ako Head of Internal Tools. M\u00e1 pod palcom WebAdmina a je autorom n\u00e1stroja Follow Company.","url":"https:\/\/www.websupport.sk\/blog\/author\/tomas-tatarko\/"}]}},"_links":{"self":[{"href":"https:\/\/www.websupport.sk\/blog\/wp-json\/wp\/v2\/posts\/7119","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.websupport.sk\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.websupport.sk\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.websupport.sk\/blog\/wp-json\/wp\/v2\/users\/108"}],"replies":[{"embeddable":true,"href":"https:\/\/www.websupport.sk\/blog\/wp-json\/wp\/v2\/comments?post=7119"}],"version-history":[{"count":1,"href":"https:\/\/www.websupport.sk\/blog\/wp-json\/wp\/v2\/posts\/7119\/revisions"}],"predecessor-version":[{"id":33894,"href":"https:\/\/www.websupport.sk\/blog\/wp-json\/wp\/v2\/posts\/7119\/revisions\/33894"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.websupport.sk\/blog\/wp-json\/wp\/v2\/media\/7120"}],"wp:attachment":[{"href":"https:\/\/www.websupport.sk\/blog\/wp-json\/wp\/v2\/media?parent=7119"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.websupport.sk\/blog\/wp-json\/wp\/v2\/categories?post=7119"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.websupport.sk\/blog\/wp-json\/wp\/v2\/tags?post=7119"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}