tag:blogger.com,1999:blog-17090251707928848962024-03-13T22:54:13.059+02:00Java User Group LvivAnonymoushttp://www.blogger.com/profile/06834470382493447978noreply@blogger.comBlogger566125tag:blogger.com,1999:blog-1709025170792884896.post-26170341946097045742017-04-13T15:52:00.001+03:002017-04-13T15:52:23.595+03:00JUG Lviv new homepageУ нас нова домашня сторінка www.jug.lviv.ua Так що добавляйте нову сторінку у закладкиAnonymoushttp://www.blogger.com/profile/06834470382493447978noreply@blogger.com5tag:blogger.com,1999:blog-1709025170792884896.post-50194780137027555332017-03-27T23:30:00.002+03:002017-03-27T23:35:56.936+03:00JUGLviv meetup powered by SoftServe<br />
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Запрошуємо всіх на зустріч організовану JUG Lviv та компанією SoftServe у пятницю 31-го березня о 18:00</span><br />
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span>
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Цього разу свої доповіді підготували три доповідачі</span><br />
<br /></div>
<div style="text-align: center;">
<h3 style="text-align: center;">
</h3>
<div style="text-align: center;">
<span style="background-color: white; color: #4b4b4b; font-family: "open sans"; font-size: 26px;">Software architecture problems</span></div>
</div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><b>Сергій Нємчинський, CEO/Owner @FoxmindEd</b></span><br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://4.bp.blogspot.com/-aHJX8A-vfUo/WNltukL1-CI/AAAAAAAAF90/IMqxZCZMsv05AG0UAC_m4eC0Nq-rseRswCLcB/s1600/10391440_848785228498893_4201299905414562610_n.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://4.bp.blogspot.com/-aHJX8A-vfUo/WNltukL1-CI/AAAAAAAAF90/IMqxZCZMsv05AG0UAC_m4eC0Nq-rseRswCLcB/s1600/10391440_848785228498893_4201299905414562610_n.jpg" /></a></div>
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><b><br /></b></span>
<br />
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><b><br /></b></span>
<div class="separator" style="clear: both;">
</div>
<div class="separator" style="clear: both;">
</div>
<br /></div>
<h3 style="text-align: center;">
</h3>
<div style="text-align: center;">
<span style="background-color: white; color: #4b4b4b; font-family: "open sans"; font-size: 26px;">Reactive thinking in Java</span></div>
<h3 style="text-align: center;">
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><b><span style="font-size: small;"><br /></span></b></span>
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><b><span style="font-size: small;">Sergii Voronin, Software Engineer @SoftServe</span></b></span><br />
<div class="separator" style="clear: both; font-size: medium; font-weight: normal;">
</div>
<div style="font-size: medium; font-weight: normal;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><b><br /></b></span></div>
<div class="separator" style="clear: both; font-size: medium; font-weight: normal;">
</div>
<div class="separator" style="clear: both; font-size: medium; font-weight: normal;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://1.bp.blogspot.com/-YcISXsdGYtY/WNlu6hqLT7I/AAAAAAAAF-E/u3w5bcATZBIscGeUeybEIvD7xfXq1z4NACLcB/s1600/705229_633322543346156_1712396982_o.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="211" src="https://1.bp.blogspot.com/-YcISXsdGYtY/WNlu6hqLT7I/AAAAAAAAF-E/u3w5bcATZBIscGeUeybEIvD7xfXq1z4NACLcB/s320/705229_633322543346156_1712396982_o.jpg" width="320" /></a></div>
<div style="font-size: medium; font-weight: normal;">
<br />
<br /></div>
</div>
</h3>
<h3 style="text-align: center;">
</h3>
<h3 style="text-align: center;">
<div style="text-align: center;">
<div style="font-size: medium; font-weight: normal;">
<br /></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><span style="background-color: white; color: #4b4b4b; font-family: "open sans"; font-size: 26px; font-weight: normal;">Refactoring-driven development</span></span><br />
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><b><span style="font-size: small;"><br /></span></b></span>
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><b><span style="font-size: small;">Yuriy Nakonechnyy, Co-founder, and CTO @Sombra</span></b></span><br />
<div class="separator" style="clear: both; font-size: medium; font-weight: normal;">
</div>
<div style="font-size: medium; font-weight: normal;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><b><br /></b></span></div>
<div class="separator" style="clear: both; font-size: medium; font-weight: normal;">
</div>
<div class="separator" style="clear: both; font-size: medium; font-weight: normal;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://1.bp.blogspot.com/-wDXXPuKeBj8/WNlubYU0__I/AAAAAAAAF98/YlL-GrQKDf8x8clC24Pz_f2nIzjf00f5gCLcB/s1600/11745394_844915495596927_7453897935405360311_n.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://1.bp.blogspot.com/-wDXXPuKeBj8/WNlubYU0__I/AAAAAAAAF98/YlL-GrQKDf8x8clC24Pz_f2nIzjf00f5gCLcB/s320/11745394_844915495596927_7453897935405360311_n.jpg" width="320" /></a></div>
<div style="font-size: medium; font-weight: normal;">
<br /></div>
</div>
</div>
</h3>
<h3 style="text-align: center;">
</h3>
<h3 style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Місце:</span></h3>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Компанія <a href="hhttps://www.softserveinc.com/en-us/" target="_blank">SoftServe</a></span><br />
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Садова, 2а, Lviv, Ukraine, 79054</span><br />
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"> </span><span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">SoftServe Lviv HQ</span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span>
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"></span><br />
<h3 style="text-align: center;">
Захід платний - <a href="https://softserve.ua/apply/register/uk/jugua?utm_source=FB" style="font-family: "helvetica neue", arial, helvetica, sans-serif;" target="_blank">реєстрація</a><span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"> обов'язкова!</span></h3>
</div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span></div>
Anonymoushttp://www.blogger.com/profile/06834470382493447978noreply@blogger.com0tag:blogger.com,1999:blog-1709025170792884896.post-60272391841935869172016-10-19T17:01:00.001+03:002016-10-19T17:04:37.959+03:00JUGLviv meetup: Месседжинг для IoT з RabbitMQ<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Запрошуємо всіх на чергову зустріч JUG Lviv у четвер 27-го жовтня о 18:30</span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: center;">
<b><span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Микола Махін, </span></b><span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><b>Senior Software Developer @Symphony Solutions</b></span><br />
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><b><br /></b></span>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://4.bp.blogspot.com/-XPehr7D43J8/WAdcqlQTi_I/AAAAAAAAFGI/jFsyGvQVvlMhc5BiIxYY3X49fnKHS3USwCLcB/s1600/14569006_10209503340853356_2079540155_n.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://4.bp.blogspot.com/-XPehr7D43J8/WAdcqlQTi_I/AAAAAAAAFGI/jFsyGvQVvlMhc5BiIxYY3X49fnKHS3USwCLcB/s320/14569006_10209503340853356_2079540155_n.jpg" width="270" /></a></div>
<b><span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span></b></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Микола Java розробник з 10+ років досвіду. Активно працює над опенсорс проектами https://github.com/mvmn веде технічний блог https://mvmn.wordpress.com/</span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span></div>
<h3 style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Тема:</span></h3>
<div style="text-align: center;">
<span style="background-color: white; color: #4b4b4b; font-family: "open sans"; font-size: 26px;">Месседжинг для IoT з RabbitMQ</span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span></div>
<h3 style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Опис теми:</span></h3>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Міграція месседжингу в IoT-related проекті з MQTT на AMQP при переході від MVP до production.</span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span></div>
<h3 style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Місце:</span></h3>
<div style="text-align: center;">
<span style="font-family: helvetica neue, arial, helvetica, sans-serif;">Компанія <a href="http://sigma.software/" target="_blank">Sigma Software</a></span><br />
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">вул. Наукова, 7Д - новий БЦ.</span><br />
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"> Центральний вхід, 4-ий поверх</span><span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">,</span></div>
<div style="text-align: center;">
</div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Львів</span><br />
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span>
<br />
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"></span><br />
<h3 style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Спонсор:</span></h3>
<h3>
</h3>
</div>
<div style="text-align: center;">
<div class="separator" style="clear: both; text-align: center;">
<a href="http://sigma.software/" target="_blank"><img border="0" src="https://1.bp.blogspot.com/-P19CuZft1R0/WAd9T9zInkI/AAAAAAAAFGY/SGIt2Jstdwg1yfT_-WdTaTCAol2psXtTwCLcB/s1600/logo.png" /></a></div>
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span>
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Захід безкоштовний - <a href="https://juglviv271016.ticketforevent.com/uk/" target="_blank">реєстрація</a> обов'язкова!</span><br />
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span></div>
<br />Anonymoushttp://www.blogger.com/profile/06834470382493447978noreply@blogger.com1tag:blogger.com,1999:blog-1709025170792884896.post-36153106519466523072016-08-19T10:29:00.000+03:002016-08-19T16:08:02.444+03:00JDayLviv вже скоро<br />
<div 14px="" 21px="" 320px="" 800px="" class=""column"" font-family:="" font-size:="" left="" line-height:="" max-width:="" min-width:="" quot="" sans-serif="" text-align:="" ubuntu="" width:="">
<div 0px="" 12px="" align=""center"" font-style:="" font-weight:="" margin-top:="" normal="" quot="">
3-го вересня у Львові вчетверте пройде щорічна конференція JDayLviv присвячена java та суміжним технологіям організована львівською Java User Group. Один день насичений безліччю подій. 15 спікерів з 8 країн, 3 потоки та 15 доповідей на різноманітну тематику.
Ми запрошуємо не лише відомих та всіма улюблених доповідачів, а й спікерів, які вперше в Україні і можуть не тільки привезти щось нове і цікаве для слухачів, але й почерпнути багато для себе.</div>
</div>
<div 0="" 320px="" 800px="" auto="" break-word="" class=""layout" fixed-width="" max-width:="" min-width:="" one-col="" overflow-wrap:="" quot="" width:="" word-wrap:="">
<div 100="" border-collapse:="" class=""layout__inner"" collapse="" display:="" quot="" table="" white="" width:="">
<div 14px="" 21px="" 320px="" 8800px="" class=""column"" font-family:="" font-size:="" justify="" line-height:="" max-width:="" min-width:="" quot="" sans-serif="" text-align:="" ubuntu="" width:="">
<div 24px="" 35px="" margin-right:="" margin-top:="" quot="">
<div 16px="" 20px="" 30px="" justify="" margin-top:="" quot="" text-align:="" text-indent:="">
Цьогоріч на JDayLviv та вперше в Україні Michal Kuratczyk - Solution Architect у Pivotal, James Thomas - Developer Advocate у IBM, Rino Montiel - Head of core engineering у EyeEm:
<br />
<br />
<img 0="" 32="" alt=""Michal" auto="" border:="" height:="" height="200" kuratczyk="" left="" quot="" src="https://2.bp.blogspot.com/-2RKma9FSTC4/VyuF3J6CRiI/AAAAAAAAAZU/i6NM48uKqoo7Ue0g1YWRx8zDO2MW2jVLQCLcB/s200/michal_kuratczyk.jpg%22" width:="" width=""320"" />
<img 0="" 32="" alt=""James" auto="" border:="" center="" height:="" height="200" quot="" src="https://1.bp.blogspot.com/-YJ2kWR3yCi8/VyuCH9ViVoI/AAAAAAAAAZI/WPoaVpFN094dIi9NWLKj-R4poen1k8zPgCLcB/s200/james_thomas.png%22" thomas="" width:="" width=""320"" />
<img 0="" 32="" alt=""Rino" auto="" border:="" height:="" height="200" montiel="" quot="" right="" src="https://2.bp.blogspot.com/-y5bytSZmDn8/V3Y-H_DSrQI/AAAAAAAAEjI/0vOh1O1yY9E56YIZR_gK4I37V-b_zrtfQCLcB/s200/Rino%2BMontiel.jpg%22" width:="" width=""320"" />
<br />
<br />
А також вже добре відомі Олексій Зволінський, Тарас Матяшовський та Сергій Нємчинський:</div>
<img border="0" src="http://www.jday.com.ua/assets/pictures/speakers/alexey_zvolinskiy.jpg" height="200" width="200" />
<img border="0" height="200" src="https://4.bp.blogspot.com/-CopIFYMuxC8/V0aFm2RSYCI/AAAAAAAAAb8/LklLnCajCmEY_1YzCZSNIKlKLmKSKuZ2ACLcB/s1600/taras_matyashovskyy.jpg" width="200" />
<img border="0" height="200" src="https://scontent-waw1-1.xx.fbcdn.net/v/t1.0-1/p160x160/12239878_1037443809633033_2308061359924946107_n.jpg?oh=0716aec264158a0b7cc70a18835d30da&oe=585DFA22" width="200" />
<br />
<div 16px="" 20px="" 30px="" justify="" margin-top:="" quot="" text-align:="" text-indent:="">
Щороку JDayLviv відвідує понад 300 слухачів з усієї України, тож ви отримаєте хорошу нагоду зустрітись познайомитись з вашими колегами та поспілкуватись з ними за горнятком львівської кави.
А ввечір всіх чекатиме афтепарті у Королівській Пивоварні та чудові подарунки від партнерів конференції. Тож реєструйтесь вже сьогодні.
</div>
<div 16px="" 20px="" 30px="" justify="" margin-top:="" quot="" text-align:="" text-indent:="">
Більше про подію читайте на нашій сторінці
<a 0.1s="" afd1="" ease-in="" href="https://www.blogger.com/%22http://www.jday.com.ua/%22" quot="" text-decoration:="" transition:="" underline="">JDayLviv</a>, та слідкуйте за всіма оновленнями та розповідями про наших доповідачів на <a 0.1s="" afd1="" ease-in="" href="https://www.blogger.com/%22https://www.facebook.com/jdaylviv%22" quot="" text-decoration:="" transition:="" underline="">ФБ</a>
<br />
<br /></div>
</div>
<div 20px="" 24px="" margin-left:="" margin-right:="" quot="">
<div btn--flat="" btn--large="" center="" class=""btn" quot="">
<div style="text-align: center;">
<a href="https://2event.com/uk/events/579787" target="_blank">Registration</a></div>
</div>
</div>
</div>
</div>
<div 0="" 320px="" 8800px="" auto="" break-word="" class=""layout" email-footer="" max-width:="" min-width:="" overflow-wrap:="" quot="" width:="" word-wrap:="">
<div 100="" class=""layout__inner"" collapse="" display:="" quot="" table="" width:="">
<div -="""" 12px="" 19px="" 320px="""" 400px="""" 47600px="""" calc="""" class=""column" f8b="" font-size:="" left="" line-height:="" loat:="""" max-width:="""" min-width:="""" quot="" sans-serif="""" text-align:="" ubuntu="""" wide="" width:="""">
</div>
</div>
</div>
</div>
Anonymoushttp://www.blogger.com/profile/06834470382493447978noreply@blogger.com3tag:blogger.com,1999:blog-1709025170792884896.post-2471513067146146812016-07-12T12:36:00.004+03:002016-07-12T12:50:48.203+03:00Eclipse hidden feature<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://4.bp.blogspot.com/-LDmJjtprsGo/V4S9cs7ml2I/AAAAAAAAEmI/ydyhOITMXLIpw8DrEwdoaZ-J9p61GKQvgCLcB/s1600/eclipse_feature.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://4.bp.blogspot.com/-LDmJjtprsGo/V4S9cs7ml2I/AAAAAAAAEmI/ydyhOITMXLIpw8DrEwdoaZ-J9p61GKQvgCLcB/s1600/eclipse_feature.gif" /></a></div>
<br />Anonymoushttp://www.blogger.com/profile/06834470382493447978noreply@blogger.com0tag:blogger.com,1999:blog-1709025170792884896.post-61432865382575869042016-07-05T14:17:00.000+03:002016-07-05T14:17:05.414+03:00JUGLviv meetup: SAP Hybris architecture<div style="text-align: center;">
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">Dear Friends, </span></div>
<div style="text-align: center;">
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: center;">
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">We would like to invite you to the next JUG Meetup, which will occur this Thursday, July 12th, 18:00!</span></div>
<div style="text-align: center;">
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: center;">
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">This time, we have a great speaker, from Sweden! </span></div>
<div style="text-align: center;">
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: center;">
<b><span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">Marko Salonen, Software Architect @Remit</span></b><br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://media.licdn.com/media/AAEAAQAAAAAAAAe6AAAAJDU2OTM3OWYyLWM4MWItNDNiMC1iODU0LTMyY2NhMzY4NDFhYg.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://media.licdn.com/media/AAEAAQAAAAAAAAe6AAAAJDU2OTM3OWYyLWM4MWItNDNiMC1iODU0LTMyY2NhMzY4NDFhYg.jpg" /></a></div>
<b><span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;"><br /></span></b></div>
<div style="text-align: center;">
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">Marko Salonen is developer and architect with 10 experience from different java based technologies. Last 6 years he has been focusing in e-commerce and mainly SAP Hybris with some large scale installations as architect and lead developer. He is passionate about competence sharing and enjoys working with teams. Currently he works as SAP Hybris Competence lead and partner at Remit , lives in Stockholm, Sweden with his wife and 11 months old son.</span></div>
<div style="text-align: center;">
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;"><br /></span></div>
<h3 style="text-align: center;">
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">Topic of the talk:</span></h3>
<div style="text-align: center;">
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: center;">
<h1 style="background-color: white; box-sizing: border-box; color: #4b4b4b; font-family: "Open Sans"; font-size: 26px; font-weight: normal; line-height: 1.1; margin: 20px 0px 10px;">
SAP Hybris architecture</h1>
</div>
<div style="text-align: center;">
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;"><br /></span></div>
<h3 style="text-align: center;">
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">Topic description:</span></h3>
<div style="text-align: center;">
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: center;">
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">SAP Hybris is a large enterprise e-commerce platform. It has a Java based architecture using open technologies like Spring to build a flexible, scalable and service oriented software. Still there are challenges that need to be tackled when a large number of developers implement functionality. In this presentation Marko will talk how SAP Hybris architecture it is built to simplify the development and give some examples from earlier projects where there was challenges and how these where solved.</span></div>
<div style="text-align: center;">
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;"><br /></span></div>
<h3 style="text-align: center;">
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">Venue:</span></h3>
<div style="text-align: center;">
<a href="https://dnister-hotel.phnr.com/en" target="_blank"><span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">Hotel Dnister</span></a></div>
<div style="margin: 0px; text-align: center;">
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">Yana Mateika St, 6,</span></div>
<div style="text-align: center;">
</div>
<div style="text-align: center;">
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">Lviv</span><br />
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;"><br /></span>
<h3>
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">Sponsor:</span></h3>
</div>
<div style="text-align: center;">
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">This event is supported by <a href="http://remit.se/" target="_blank">Remit</a>!</span><br />
<div class="separator" style="clear: both;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="http://remit.se/wp-content/uploads/logo_header.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;"></span></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://3.bp.blogspot.com/-_Y-cEiBMnOw/V3uXLH2nqqI/AAAAAAAAElQ/z8xuw9hmFvEb9zm3IipCiSmdntfLDp2PgCLcB/s1600/logo_header.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="119" src="https://3.bp.blogspot.com/-_Y-cEiBMnOw/V3uXLH2nqqI/AAAAAAAAElQ/z8xuw9hmFvEb9zm3IipCiSmdntfLDp2PgCLcB/s320/logo_header.png" width="320" /></a></div>
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: center;">
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">The event is completely free, but requires <a href="https://2event.com/events/709462" target="_blank">registration</a></span></div>
Anonymoushttp://www.blogger.com/profile/06834470382493447978noreply@blogger.com0tag:blogger.com,1999:blog-1709025170792884896.post-87524765662101384192016-07-04T12:05:00.002+03:002016-07-04T12:05:32.323+03:00Наші доповідачі: Michal Kuratczyk<div class="_2cuy _3dgx _2vxa" style="background-color: white; box-sizing: border-box; color: #1d2129; direction: ltr; font-family: Georgia, serif; font-size: 17px; line-height: 28px; margin: 0px auto 28px; white-space: pre-wrap; width: 700px; word-wrap: break-word;">
<a href="https://www.linkedin.com/in/mkuratczyk" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; text-decoration: none;" target="_blank">Міхал Курачик</a> solution architect у компанії <a href="http://l.facebook.com/l.php?u=http%3A%2F%2Fpivotal.io%2F&h=wAQEGp1Sc&s=1" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; text-decoration: none;" target="_blank">Pivotal</a> розробника таких відомих у світі продуктів як фреймворк Spring, хмарне рішення Cloud Foundry та інших. Тож на <a href="http://www.jday.com.ua/" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; text-decoration: none;" target="_blank">JDayLviv</a> він приїде з доповіддю Continuous delivery of microservices with Cloud Foundry. Тим більше, що Міхал в основному займається впровадженням PaaS та BigData рішень для корпоративних клієнтів. Поміж тим він є співзасновником студії розробки іграшок <a href="http://l.facebook.com/l.php?u=http%3A%2F%2Fgalantegames.com%2F&h=qAQHM2ix7&s=1" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; text-decoration: none;" target="_blank">Galante Games</a>, доповідачем на багатьох конференціях, та просто спортивним фанатом</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://3.bp.blogspot.com/-BCvO-1uEcls/V3om1bLpwiI/AAAAAAAAEj8/7PH-euv39IYSrZePRa6iviaViMh13FDNACLcB/s1600/12438974_10201126252155793_5856541031361317683_n.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="478" src="https://3.bp.blogspot.com/-BCvO-1uEcls/V3om1bLpwiI/AAAAAAAAEj8/7PH-euv39IYSrZePRa6iviaViMh13FDNACLcB/s640/12438974_10201126252155793_5856541031361317683_n.jpg" width="640" /></a></div>
<div class="_2cuy _3dgx _2vxa" style="background-color: white; box-sizing: border-box; color: #1d2129; direction: ltr; font-family: Georgia, serif; font-size: 17px; line-height: 28px; margin: 0px auto 28px; white-space: pre-wrap; width: 700px; word-wrap: break-word;">
<span style="font-family: inherit; text-align: center;"><br /></span></div>
<div class="_2cuy _3dgx _2vxa" style="background-color: white; box-sizing: border-box; color: #1d2129; direction: ltr; font-family: Georgia, serif; font-size: 17px; line-height: 28px; margin: 0px auto 28px; white-space: pre-wrap; width: 700px; word-wrap: break-word;">
<span style="font-family: inherit; text-align: center;">Онлайн Michal Kuratczyk можна знайти на </span><a href="https://www.facebook.com/michal.kuratczyk" style="color: #365899; cursor: pointer; font-family: inherit; text-align: center; text-decoration: none;">FB</a><span style="font-family: inherit; text-align: center;"> та </span><a href="https://www.facebook.com/l.php?u=https%3A%2F%2Ftwitter.com%2Fmichalkuratczyk&h=9AQEY5FoN&s=1" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; text-align: center; text-decoration: none;" target="_blank">Twitter</a></div>
<div class="_2cuy _3dgx _2vxa" style="background-color: white; box-sizing: border-box; color: #1d2129; direction: ltr; font-family: Georgia, serif; font-size: 17px; line-height: 28px; margin: 0px auto 28px; white-space: pre-wrap; width: 700px; word-wrap: break-word;">
Щоб послухати Міхала та багатьох інших цікавих спікерів - реєструйтесь на <a href="https://www.facebook.com/l.php?u=https%3A%2F%2F2event.com%2Fevents%2F579787&h=lAQFzylag&s=1" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; text-decoration: none;" target="_blank">JDayLviv 2016</a></div>
Anonymoushttp://www.blogger.com/profile/06834470382493447978noreply@blogger.com2tag:blogger.com,1999:blog-1709025170792884896.post-47425592664748260252016-07-04T12:04:00.000+03:002016-07-04T12:04:21.113+03:00Наші доповідачі: Alexey Zvolinskiy aka Alex Fruzenshtein<div class="_2cuy _3dgx _2vxa" style="background-color: white; box-sizing: border-box; color: #1d2129; direction: ltr; font-family: Georgia, serif; font-size: 17px; line-height: 28px; margin: 0px auto 28px; white-space: pre-wrap; width: 700px; word-wrap: break-word;">
Щороку в нас традиційно є одна дві доповіді по Scala. Цього разу про Scala: the next stuff you need to try буде розказувати <a href="https://www.facebook.com/l.php?u=https%3A%2F%2Fwww.linkedin.com%2Fin%2Ffruzenshtein&h=FAQGi44bJ&s=1" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; text-decoration: none;" target="_blank">Олексій Зволінський</a> - java/scala розробник з Києва. Олексій засновник <a href="https://www.facebook.com/10perClub/?ref=br_rs" style="color: #365899; cursor: pointer; font-family: inherit; text-decoration: none;">10per</a> клубу, саме ця ініціатива отримала IT Education Awards в 2015 році. </div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://2.bp.blogspot.com/-P1D7Bx-KoZw/V3omaYsJSRI/AAAAAAAAEj4/LZzxUcPovJkYPE7nD09HIpEByMz8wrRaACLcB/s1600/11079622_931534766891024_5047112324222061095_n.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="426" src="https://2.bp.blogspot.com/-P1D7Bx-KoZw/V3omaYsJSRI/AAAAAAAAEj4/LZzxUcPovJkYPE7nD09HIpEByMz8wrRaACLcB/s640/11079622_931534766891024_5047112324222061095_n.jpg" width="640" /></a></div>
<div class="_2cuy _3dgx _2vxa" style="background-color: white; box-sizing: border-box; color: #1d2129; direction: ltr; font-family: Georgia, serif; font-size: 17px; line-height: 28px; margin: 0px auto 28px; white-space: pre-wrap; width: 700px; word-wrap: break-word;">
<span style="font-family: inherit; text-align: center;"><br /></span></div>
<div class="_2cuy _3dgx _2vxa" style="background-color: white; box-sizing: border-box; color: #1d2129; direction: ltr; font-family: Georgia, serif; font-size: 17px; line-height: 28px; margin: 0px auto 28px; white-space: pre-wrap; width: 700px; word-wrap: break-word;">
<span style="font-family: inherit; text-align: center;">Також Олексій веде курси на </span><a href="https://www.facebook.com/l.php?u=https%3A%2F%2Fwww.udemy.com%2Fuser%2Falexeyzvolinskiy%2F&h=SAQERCgso&s=1" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; text-align: center; text-decoration: none;" target="_blank">Udemy</a><span style="font-family: inherit; text-align: center;">, а його </span><a href="http://l.facebook.com/l.php?u=http%3A%2F%2Ffruzenshtein.com%2F&h=WAQGAMLaT&s=1" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; text-align: center; text-decoration: none;" target="_blank">блог</a><span style="font-family: inherit; text-align: center;"> є одним з кращих в галузі та є в переліку </span><a href="https://www.facebook.com/l.php?u=https%3A%2F%2Fwww.topjavablogs.com%2F&h=6AQGHm3Iu&s=1" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; text-align: center; text-decoration: none;" target="_blank">TopJavaBlogs</a><span style="font-family: inherit; text-align: center;">, на дозвіллі Олексій займається боротьбою як і інший наш доповідач </span><a href="https://www.facebook.com/notes/jday-lviv/%D0%BD%D0%B0%D1%88%D1%96-%D0%B4%D0%BE%D0%BF%D0%BE%D0%B2%D1%96%D0%B4%D0%B0%D1%87%D1%96-paris-apostolopoulos/599575576886477" style="color: #365899; cursor: pointer; font-family: inherit; text-align: center; text-decoration: none;">Паріс Апостолопулос</a><span style="font-family: inherit; text-align: center;">. Кому цікаво може слідкувати за Олексієм на </span><a href="https://www.facebook.com/alex.fruzenshtein?fref=ts" style="color: #365899; cursor: pointer; font-family: inherit; text-align: center; text-decoration: none;">FB</a><span style="font-family: inherit; text-align: center;"> чи </span><a href="https://www.facebook.com/l.php?u=https%3A%2F%2Ftwitter.com%2FFruzenshtein&h=RAQEGe0e-&s=1" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; text-align: center; text-decoration: none;" target="_blank">Twitter</a><span style="font-family: inherit; text-align: center;">.</span></div>
<div class="_2cuy _3dgx _2vxa" style="background-color: white; box-sizing: border-box; color: #1d2129; direction: ltr; font-family: Georgia, serif; font-size: 17px; line-height: 28px; margin: 0px auto 28px; white-space: pre-wrap; width: 700px; word-wrap: break-word;">
Зареєструватись на конференцію JDayLviv можна за <a href="https://www.facebook.com/l.php?u=https%3A%2F%2F2event.com%2Fevents%2F579787&h=CAQEug5mb&s=1" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; text-decoration: none;" target="_blank">посиланням</a></div>
Anonymoushttp://www.blogger.com/profile/06834470382493447978noreply@blogger.com0tag:blogger.com,1999:blog-1709025170792884896.post-70467411431967748302016-07-04T11:52:00.003+03:002016-07-04T11:54:36.176+03:00Наші доповідачі: Paris Apostolopoulos<div class="_2cuy _3dgx _2vxa" style="background-color: white; box-sizing: border-box; color: #1d2129; direction: ltr; font-family: Georgia, serif; font-size: 17px; line-height: 28px; margin: 0px auto 28px; white-space: pre-wrap; width: 700px; word-wrap: break-word;">
<a href="https://www.linkedin.com/in/javaneze" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; text-decoration: none;" target="_blank">Паріс Апостолопулос</a> родом з Греції зараз живе і працює в Лондоні. Нагороджений званнями Java Champion та JBoss Hero. В 2001 році Паріс заснував одну з перших JUG в Греції - <a href="http://l.facebook.com/l.php?u=http%3A%2F%2Fwww.jhug.gr%2Faboutus&h=mAQHX0IW1&s=1" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; text-decoration: none;" target="_blank">Java Hellenic User Group</a>. У вільний час веде свій блог на java тематику <a href="http://javapapo.blogspot.com/" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; text-decoration: none;" target="_blank">Papo’s Log</a> записує подкасти та поміж тим займається дзюдо і є володарем коричневого поясу.</div>
<div class="_2cuy _3dgx _2vxa" style="background-color: white; box-sizing: border-box; color: #1d2129; direction: ltr; font-family: Georgia, serif; font-size: 17px; line-height: 28px; margin: 0px auto 28px; white-space: pre-wrap; width: 700px; word-wrap: break-word;">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://3.bp.blogspot.com/-ikJsMyiAocA/V3okHyNfJrI/AAAAAAAAEjs/AFlO3xO-bkovXCBeKgPaoeMDVrtCOa7kgCLcB/s1600/271767_10150297069356422_3805967_o.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="476" src="https://3.bp.blogspot.com/-ikJsMyiAocA/V3okHyNfJrI/AAAAAAAAEjs/AFlO3xO-bkovXCBeKgPaoeMDVrtCOa7kgCLcB/s640/271767_10150297069356422_3805967_o.jpg" width="640" /></a></div>
<br />
Паріс був спікером на багатьох конференціях та й працював у різних країнах тож йому довелось доволі багато подорожувати у його <a href="https://www.facebook.com/l.php?u=https%3A%2F%2Fwww.flickr.com%2Fphotos%2Fpapo%2Falbums&h=XAQFFiUXc&s=1" rel="nofollow" style="background-color: transparent; color: #365899; cursor: pointer; font-family: inherit; text-decoration: none;" target="_blank">Flickr профілі</a> безліч фото з усіх куточків світу.</div>
<div class="_2cuy _3dgx _2vxa" style="background-color: white; box-sizing: border-box; color: #1d2129; direction: ltr; font-family: Georgia, serif; font-size: 17px; line-height: 28px; margin: 0px auto 28px; white-space: pre-wrap; width: 700px; word-wrap: break-word;">
Кому цікаво також може знайти Паріса на <a href="https://www.facebook.com/javapapo?fref=ts" style="color: #365899; cursor: pointer; font-family: inherit; text-decoration: none;">FB</a>, <a href="https://www.facebook.com/l.php?u=https%3A%2F%2Ftwitter.com%2Fjavapapo&h=TAQEMOfiZ&s=1" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; text-decoration: none;" target="_blank">Twitter</a>, <a href="https://www.facebook.com/l.php?u=https%3A%2F%2Fwww.instagram.com%2Fjavapapo%2F&h=PAQHZL4jX&s=1" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; text-decoration: none;" target="_blank">Instagram</a>.</div>
<div class="_2cuy _3dgx _2vxa" style="background-color: white; box-sizing: border-box; color: #1d2129; direction: ltr; font-family: Georgia, serif; font-size: 17px; line-height: 28px; margin: 0px auto 28px; white-space: pre-wrap; width: 700px; word-wrap: break-word;">
До України Паріс приїде вперше тож приєднуйтесь до <a href="http://l.facebook.com/l.php?u=http%3A%2F%2Fwww.jday.com.ua%2F&h=CAQEug5mb&s=1" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; text-decoration: none;" target="_blank">JDayLviv</a> та приходьте слухати java champion’a</div>
Anonymoushttp://www.blogger.com/profile/06834470382493447978noreply@blogger.com1tag:blogger.com,1999:blog-1709025170792884896.post-48187365876944113692016-07-04T11:52:00.000+03:002016-07-04T11:52:09.656+03:00Наші доповідачі: Paul Stack<div class="separator" style="clear: both; text-align: center;">
<a href="https://3.bp.blogspot.com/-rr9tTCL4CFI/V3ojhrEEUbI/AAAAAAAAEjk/wv0SxSTRP-8RNMIIihIQlIdCQqjEOIfOQCLcB/s1600/S72Hue8E.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://3.bp.blogspot.com/-rr9tTCL4CFI/V3ojhrEEUbI/AAAAAAAAEjk/wv0SxSTRP-8RNMIIihIQlIdCQqjEOIfOQCLcB/s320/S72Hue8E.jpg" width="320" /></a></div>
<br />
<a href="https://uk.linkedin.com/in/paul-stack-07691a1b" rel="nofollow" style="background-color: white; color: #365899; cursor: pointer; font-family: Georgia, serif; font-size: 17px; line-height: 28px; text-decoration: none; white-space: pre-wrap;" target="_blank">Пол Стек</a><span style="background-color: white; color: #1d2129; font-family: Georgia, serif; font-size: 17px; line-height: 28px; white-space: pre-wrap;"> девопс спеціаліст з Лондона, учасник багатьох конференцій. На ютюбі можна переглянути його цікаве інтервю на тему </span><a href="https://www.facebook.com/l.php?u=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3Dpq_Yunrg8DQ&h=iAQH91ELf&s=1" rel="nofollow" style="background-color: white; color: #365899; cursor: pointer; font-family: Georgia, serif; font-size: 17px; line-height: 28px; text-decoration: none; white-space: pre-wrap;" target="_blank">Making the software better while it runs</a><span style="background-color: white; color: #1d2129; font-family: Georgia, serif; font-size: 17px; line-height: 28px; white-space: pre-wrap;">. В своєму </span><a href="http://www.paulstack.co.uk/" rel="nofollow" style="background-color: white; color: #365899; cursor: pointer; font-family: Georgia, serif; font-size: 17px; line-height: 28px; text-decoration: none; white-space: pre-wrap;" target="_blank">блозі</a><span style="background-color: white; color: #1d2129; font-family: Georgia, serif; font-size: 17px; line-height: 28px; white-space: pre-wrap;"> Пол детально та змістовно описує як будувати сучасні хмарні рішення на основі сучасних рішень як то AWS, Riak, Elastic, etc. Також Пол є активним дописувачем у </span><a href="https://twitter.com/stack72" rel="nofollow" style="background-color: white; color: #365899; cursor: pointer; font-family: Georgia, serif; font-size: 17px; line-height: 28px; text-decoration: none; white-space: pre-wrap;" target="_blank">Twitter</a><span style="background-color: white; color: #1d2129; font-family: Georgia, serif; font-size: 17px; line-height: 28px; white-space: pre-wrap;">. Багато цікавих рішень та ідей від Пола можна знайти на його </span><a href="https://github.com/stack72" rel="nofollow" style="background-color: white; color: #365899; cursor: pointer; font-family: Georgia, serif; font-size: 17px; line-height: 28px; text-decoration: none; white-space: pre-wrap;" target="_blank">GitHub</a><span style="background-color: white; color: #1d2129; font-family: Georgia, serif; font-size: 17px; line-height: 28px; white-space: pre-wrap;"> акаунті</span><br />
<span style="background-color: white; color: #1d2129; font-family: Georgia, serif; font-size: 17px; line-height: 28px; white-space: pre-wrap;"><br /></span>
<span style="background-color: white; color: #1d2129; font-family: Georgia, serif; font-size: 17px; line-height: 28px; white-space: pre-wrap;"> Придбати квитки на JDayLviv 2016 можна за посиланням </span><a href="https://2event.com/events/579787" rel="nofollow" style="background-color: white; color: #365899; cursor: pointer; font-family: Georgia, serif; font-size: 17px; line-height: 28px; text-decoration: none; white-space: pre-wrap;" target="_blank">https://2event.com/events/579787</a><span style="background-color: white; color: #1d2129; font-family: Georgia, serif; font-size: 17px; line-height: 28px; white-space: pre-wrap;"> </span>Anonymoushttp://www.blogger.com/profile/06834470382493447978noreply@blogger.com1tag:blogger.com,1999:blog-1709025170792884896.post-26461220446633817472016-06-22T11:47:00.003+03:002016-06-22T11:47:58.890+03:00Наші доповідачі: Kfir Bloch<div class="_39k2" style="background-color: white; font-family: inherit; margin: 0px auto; padding: 40px 0px; position: relative;">
<div class="_4lmk _2vxa _5s6c" display="block" style="-webkit-font-smoothing: antialiased; direction: ltr; font-family: Georgia, serif; font-size: 40px; line-height: 48px; margin: 0px auto 12px; position: relative; width: 700px; word-wrap: break-word;" type="serif">
<span style="color: #1d2129; font-family: inherit; font-size: 17px; line-height: 28px; white-space: pre-wrap;">Традиційно до Львова на </span><a href="http://l.facebook.com/l.php?u=http%3A%2F%2Fwww.jday.com.ua%2F&h=MAQFscObh&s=1" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; font-size: 17px; line-height: 28px; text-decoration: none; white-space: pre-wrap;" target="_blank">JDayLviv</a><span style="color: #1d2129; font-family: inherit; font-size: 17px; line-height: 28px; white-space: pre-wrap;"> приїжджають провідні спеціалісти відомої ізраїльскої компанії </span><a href="http://l.facebook.com/l.php?u=http%3A%2F%2Fwww.wix.com%2F&h=wAQFOENcY&s=1" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; font-size: 17px; line-height: 28px; text-decoration: none; white-space: pre-wrap;" target="_blank">Wix</a><span style="color: #1d2129; font-family: inherit; font-size: 17px; line-height: 28px; white-space: pre-wrap;"> - розробника хмарного сервісу, що дозволяє користувачам зручно та швидко створювати вебсторінки. Попередні два роки нашим доповідачем був системний архітектор </span><a href="http://l.facebook.com/l.php?u=http%3A%2F%2Fwww.jday.com.ua%2Farchive%2F2015%2Fjday.html%23nav-speakers-tomer-gabel&h=pAQEtHfMC&s=1" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; font-size: 17px; line-height: 28px; text-decoration: none; white-space: pre-wrap;" target="_blank">Tomer Gabel</a><span style="color: #1d2129; font-family: inherit; font-size: 17px; line-height: 28px; white-space: pre-wrap;"> цього ж року до нас з доповіддю про Scala from the Trenches навідається голова бекенд розробки </span><a href="https://www.facebook.com/l.php?u=https%3A%2F%2Fwww.linkedin.com%2Fin%2Fblochkfir&h=_AQFpLIA8&s=1" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; font-size: 17px; line-height: 28px; text-decoration: none; white-space: pre-wrap;" target="_blank">Kfir Bloch</a><span style="color: #1d2129; font-family: inherit; font-size: 17px; line-height: 28px; white-space: pre-wrap;">. Спеціаліст з понад 17 роками досвіду зараз він намагається мігрувати Wix на NodeJS, а в позаробочий час Кфір веде свій блог </span><a href="http://www.kfirbloch.com/" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; font-size: 17px; line-height: 28px; text-decoration: none; white-space: pre-wrap;" target="_blank">http://www.kfirbloch.com/</a><span style="color: #1d2129; font-family: inherit; font-size: 17px; line-height: 28px; white-space: pre-wrap;"> в основному про те як приготувати кускус і томям :), виступає доповідачем на різних конференціях та Тель-Авівському джава комюніті. Частину презентацій можна знайти на </span><a href="https://www.facebook.com/l.php?u=https%3A%2F%2Fgithub.com%2Fkfiron&h=OAQFU97yj&s=1" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; font-size: 17px; line-height: 28px; text-decoration: none; white-space: pre-wrap;" target="_blank">гітхабі</a><span style="color: #1d2129; font-family: inherit; font-size: 17px; line-height: 28px; white-space: pre-wrap;">, чи подивитись на </span><a href="https://www.facebook.com/l.php?u=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DaHhrDejywyI&h=9AQFMLewk&s=1" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; font-size: 17px; line-height: 28px; text-decoration: none; white-space: pre-wrap;" target="_blank">ютюбі</a><span style="color: #1d2129; font-family: inherit; font-size: 17px; line-height: 28px; white-space: pre-wrap;"> </span></div>
</div>
<div class="_39k5 _5s6c" display="block" style="-webkit-font-smoothing: antialiased; background-color: white; font-family: Georgia, serif; font-size: 17px; line-height: 28px; overflow: hidden; padding-bottom: 60px; position: relative;" type="serif">
<div display="block" style="font-family: inherit;">
<div class="_2cuy _3dgx _2vxa" style="box-sizing: border-box; color: #1d2129; direction: ltr; margin: 0px auto 28px; white-space: pre-wrap; width: 700px; word-wrap: break-word;">
Бажаючі можуть знайти Кфіра на <a href="https://www.facebook.com/kfir.bloch" style="color: #365899; cursor: pointer; font-family: inherit; text-decoration: none;">FB</a>, <a href="https://www.facebook.com/l.php?u=https%3A%2F%2Ftwitter.com%2Fkfiron&h=BAQHlc725&s=1" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; text-decoration: none;" target="_blank">Twitter</a> чи <a href="https://www.facebook.com/l.php?u=https%3A%2F%2Fwww.instagram.com%2Fkfiron&h=cAQGebZpY&s=1" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; text-decoration: none;" target="_blank">Instagram</a></div>
<div class="_2cuy _3dgx _2vxa" style="box-sizing: border-box; color: #1d2129; direction: ltr; margin: 0px auto 28px; white-space: pre-wrap; width: 700px; word-wrap: break-word;">
Придбати квитки на JDayLviv 2016 можна за посиланням <a href="https://www.facebook.com/l.php?u=https%3A%2F%2F2event.com%2Fevents%2F579787&h=mAQGYOzvA&s=1" rel="nofollow" style="color: #365899; cursor: pointer; font-family: inherit; text-decoration: none;" target="_blank">https://2event.com/events/579787</a></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="_h2x _h2y" style="font-family: inherit; font-size: 14px; line-height: 20px; margin-left: 1em; margin-right: 1em; margin-top: 52px; text-align: center;">
<img alt="" class="_h2z _297z _usd img" id="u_a9_0" src="https://scontent-waw1-1.xx.fbcdn.net/v/t1.0-9/13413786_598617603648941_6976560751692607366_n.jpg?oh=98701eee84eb1eca5074c307cac30166&oe=58018901" style="border: 0px; max-height: 700px; max-width: 700px;" /><div class="_h2w _50f8 _50f4" style="color: #90949c; font-family: inherit; line-height: 18px; margin: 0px auto; padding-top: 16px; width: 520px;">
Tomer Gabel & Kfir Bloch</div>
<div>
<br /></div>
</div>
<br />
<figure class="_2cuy _4nuy _2vxa" style="box-sizing: border-box; color: #1d2129; direction: ltr; margin: 0px auto 28px; white-space: pre-wrap; width: 1200px; word-wrap: break-word;"></figure></div>
</div>
Anonymoushttp://www.blogger.com/profile/06834470382493447978noreply@blogger.com1tag:blogger.com,1999:blog-1709025170792884896.post-23017852295178266102016-06-06T23:37:00.001+03:002016-06-06T23:37:56.508+03:00Не пропустіть наступний Morning@Lohika <div dir="ltr" style="text-align: left;" trbidi="on">
<div style="-qt-block-indent: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://2.bp.blogspot.com/-g6f-u5Xr-Zw/V1Xe1hD2uyI/AAAAAAAAAc4/7dqk6TU-5aQ_2yadPMDL6MLcvAmBybg2ACLcB/s1600/java_day_morning.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="225" src="https://2.bp.blogspot.com/-g6f-u5Xr-Zw/V1Xe1hD2uyI/AAAAAAAAAc4/7dqk6TU-5aQ_2yadPMDL6MLcvAmBybg2ACLcB/s640/java_day_morning.jpg" width="640" /></a></div>
<div style="-qt-block-indent: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;">
<br /></div>
<div style="-qt-block-indent: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;">
<!--StartFragment-->We are glad to inform you that next Morning@Lohika will be held on June 11th. We will have great themes and awesome speakers for us, so please look through agenda and we are waiting for you!</div>
<h3 style="margin: 0px; text-align: left; text-indent: 0px;">
<br />Philipp Krenn<br /><span style="font-weight: normal;">Elastic, Austria</span></h3>
<div style="-qt-block-indent: 0; -qt-paragraph-type: empty; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;">
<br /></div>
<div style="-qt-block-indent: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;">
Philipp is a Developer Advocate at Elastic, spreading the love and knowledge of full-text search, analytics, and real-time data. He is a frequent speaker at conferences and meetups about all things search & analytics, databases, cloud computing, and devops.</div>
<div style="-qt-block-indent: 0; -qt-paragraph-type: empty; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;">
<br /></div>
<div style="-qt-block-indent: 0; -qt-paragraph-type: empty; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;">
<b>Topic: </b></div>
<div style="-qt-block-indent: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;">
Databases - the choice is yours</div>
<div style="-qt-block-indent: 0; -qt-paragraph-type: empty; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;">
<br /></div>
<div style="-qt-block-indent: 0; -qt-paragraph-type: empty; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;">
</div>
<!--StartFragment-->In hardly any other area we’ve had as much change and improvement as in the field of databases. Just a few years ago everyone had “their” database that was used for each project. Today you are confronted with a variety of approaches and implementations.<!--EndFragment--><br />
<br />
<br />
<br />
<div style="-qt-block-indent: 0; -qt-paragraph-type: empty; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;">
<br /></div>
<h3 style="margin: 0px; text-align: left; text-indent: 0px;">
Nicolas Fränkel<br /><span style="font-weight: normal;">Hybris, Switzerland</span></h3>
<div style="-qt-block-indent: 0; -qt-paragraph-type: empty; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;">
<br /></div>
<div style="-qt-block-indent: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;">
Software Architect with 15 years experience consulting for many different customers, in a wide range of contexts (such as telecoms, banking, insurances, large retail and public sector). Usually working on Java/Java EE and Spring technologies, but with narrower interests like Software Quality, Build Processes and Rich Internet Applications. Currently working for an eCommerce solution vendor leader. Also double as a teacher in universities and higher education schools, a trainer and triples as a book author.</div>
<div style="-qt-block-indent: 0; -qt-paragraph-type: empty; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;">
<br /></div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; color: #323232; font-family: Arial, sans-serif; font-size: 12px; line-height: 15px; margin-bottom: 10px; outline: 0px; padding: 0px; vertical-align: baseline;">
</div>
<b>Topic: </b><br />Spring Boot and Kotlin, a match made in Heaven.<!--EndFragment--><br />
<br />
<!--StartFragment-->Despite being very new, spring boot has seen a spectacular start as an amazing kickstarter for spring-based application. You can now start your project in a matter of minutes, not days!<!--EndFragment--><br />
<br />
<br />
<b>Деталі та реєстрація за посиланням:</b><br /><a href="http://javadaymorningatlohika.ticketforevent.com/">http://javadaymorningatlohika.ticketforevent.com/</a><br />
<br /></div>
Andriy Pashkevychhttp://www.blogger.com/profile/08297741547089073527noreply@blogger.com0tag:blogger.com,1999:blog-1709025170792884896.post-55689281748358383102016-05-13T15:51:00.002+03:002016-05-24T19:06:50.070+03:00JUGLviv meetup: Reactive Thinking in Java<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span>
<br />
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif; font-weight: normal;">Друзі, </span><br />
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif; font-weight: normal;">25-го травня, о 18:30, відбудеться наступна зустріч JUG Lviv. Цього разу до Львова завітає Java чемпіон, керівник компанії Farata Systems - Яков Файн.Кількість місць обмежена тому поспішайте зареєструватись</span><br />
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif; font-weight: normal;"><br /></span>
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Спонсор<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">а</span>ми події виступа<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">ють</span> компані<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">ї</span> <span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">EPAM <span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">та С<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">iklum</span></span>:</span></span><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://www.epam.com/" imageanchor="1" style="margin-left: 1em; margin-right: 1em;" target="_blank"><img border="0" height="150" src="https://1.bp.blogspot.com/-YvkuGdfpdFM/V0R7VZTR0lI/AAAAAAAAA24/IH-fUUzCg9kzdCWGzJvsisdAmWLf2fmngCLcB/s400/EPAM_LOGO_Full_Color_RGB_12.png" width="400" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://www.ciklum.com/" target="_blank"><img border="0" height="101" src="https://1.bp.blogspot.com/-Z2SVL2mZ3nw/VzxDVquK42I/AAAAAAAAEc0/vRTpNyOpv0s8ksdr0ihFofLHR4MeAJtrACLcB/s320/Ciklum_logo_landscape_png.png" width="320" /></a></div>
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><b style="background-color: initial; color: black;"><span style="font-size: large;">Speaker</span></b>
</span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><i><a href="https://www.linkedin.com/in/yfain"><b>Yakov Fain</b></a><span style="background-color: initial;">, </span><span style="background-color: initial;"><b>Managing Director at Farata Systems</b></span></i>
</span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><span style="background-color: initial;"></span><i><img alt="" border="0" src="https://media.licdn.com/media/p/1/000/051/0ab/367cd61.jpg" style="opacity: 1;" /></i>
</span></div>
<div style="text-align: right;">
</div>
<div style="text-align: center;">
</div>
<div style="text-align: right;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><i><i style="text-align: left;"></i></i>
</span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><i><i><b><br />
</b></i></i>
</span></div>
<div style="text-align: center;">
</div>
<div style="text-align: right;">
</div>
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Yakov Fain is Java Champion and a co-founder of the IT consultancy Farata Systems, USA. He wrote a thousand blogs (<a href="http://yakovfain.com/">http://yakovfain.com</a>) and several books about software development. He authored and co-authored such books as "Angular 2 Development with TypeScript", "Java 24-Hour Trainer", "Enterprise Web Development". His Twitter tag is @yfain. Most of all Yakov enjoys learning and teaching software.
</span><br />
<div style="text-align: center;">
</div>
<div style="text-align: center;">
</div>
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><b></b>
</span>
<br />
<h3 style="text-align: center;">
<b><span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"> <b><span style="font-size: large;">Topic</span></b></span></b></h3>
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><b> </b>
</span><br />
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><b><i>Reactive Thinking in Java</i></b>
</span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><i><i><b><br />
</b></i></i>
</span></div>
<div style="text-align: center;">
</div>
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">This presentation is about the world of asynchronous programming in Java, where everything is a stream. We'll talk about how reactive extensions change the way you design Java applications. You'll see how to consume observable streams of events and apply a variety of operators offered by the RXJava library, which requires a different way of thinking about writing code.
</span><br />
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span>
<br />
<div style="text-align: center;">
<h3>
Venue</h3>
</div>
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"></span><br />
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Торгова галерея «Опера Пасаж» </span><br />
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Львів, пр. Свободи, 27, 4-й поверх,</span><br />
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><a href="http://www.operapassage.com/en/leopolis-hall.html" target="_blank">Leop<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">olis Hall</span></a> </span><br />
<h3>
Реєстрація</h3>
</div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Вхід традиційно вільний <a href="http://2event.com/events/662959" target="_blank">реєстрація</a> - обовязкова</span><br />
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span>
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><span style="font-family: "verdana" , sans-serif; text-align: right;">Наша група на </span><a href="https://www.facebook.com/groups/jug.lviv/" style="font-family: verdana, sans-serif; text-align: right;" target="_blank">FB</a></span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span></div>
<script type="text/javascript">
var widgetOptions = {bg_color: 'fcfcfc', id: 662959, lang: 'uk', };
(function() {
var script = document.createElement('script');
script.type = 'text/javascript';
script.async = true;
script.src = "https://2event.com/js/widget-tickets.js";
document.getElementsByTagName('head')[0].appendChild(script);
})();
</script>
<br />
<div id="2event_tickets_widget" style="width: 640px;">
</div>
<br />
<div id="2event_tickets_widget" style="width: 640px;">
</div>
Anonymoushttp://www.blogger.com/profile/06834470382493447978noreply@blogger.com0tag:blogger.com,1999:blog-1709025170792884896.post-77335527515685582082016-04-20T09:03:00.001+03:002016-04-20T09:03:39.973+03:00JUG UA Live Stream: Hibernate & Multithreading talks<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: center;">
Сьогодні, наші друзі - <a href="http://jug.ua/" target="_blank">JUG.UA</a>, проводять черговий meetup в Києві.</div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
Запрошуємо усіх бажаючих долучитися до перегляду онлайн.</div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
<b>Коли:</b></div>
<div style="text-align: center;">
<b>April 20, 19:00 – 23:00</b></div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
<b>Тема:</b></div>
<div style="text-align: center;">
<h3>
Hibernate & Multithreading talks</h3>
<div>
<span style="background-color: white; color: #4e5665; font-family: helvetica, arial, sans-serif; font-size: 14px; line-height: 18.76px; text-align: start;">– Hibernate performance tuning (Igor Dmitriev)</span><br style="background-color: white; color: #4e5665; font-family: helvetica, arial, sans-serif; font-size: 14px; line-height: 18.76px; text-align: start;" /><span style="background-color: white; color: #4e5665; font-family: helvetica, arial, sans-serif; font-size: 14px; line-height: 18.76px; text-align: start;">Nowadays, almost every Enterprise application uses Hibernate and as we know, DB could be a bottleneck in the application. Furthermore incorrect uses of ORM frameworks can lead to performance problems.</span><br style="background-color: white; color: #4e5665; font-family: helvetica, arial, sans-serif; font-size: 14px; line-height: 18.76px; text-align: start;" /><br style="background-color: white; color: #4e5665; font-family: helvetica, arial, sans-serif; font-size: 14px; line-height: 18.76px; text-align: start;" /><span style="background-color: white; color: #4e5665; font-family: helvetica, arial, sans-serif; font-size: 14px; line-height: 18.76px; text-align: start;">– Multithreading in Java past & present (Yevgen Polukov)</span><br style="background-color: white; color: #4e5665; font-family: helvetica, arial, sans-serif; font-size: 14px; line-height: 18.76px; text-align: start;" /><span style="background-color: white; color: #4e5665; font-family: helvetica, arial, sans-serif; font-size: 14px; line-height: 18.76px; text-align: start;">In this talk I’d like to give you an overview of java.util.concurrent package and represent useful Java concurrency tools. I’ll cover the core functionality and the state-of-the-art API (Executors, Accumulators, StampedLock etc).</span></div>
</div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
Зареєструватися на онлайн трансляцію можна за посиланням:</div>
<div style="text-align: center;">
<a href="https://goo.gl/m9gG7F" rel="nofollow nofollow" style="background-color: white; color: #3b5998; cursor: pointer; font-family: helvetica, arial, sans-serif; font-size: 14px; line-height: 18.76px; text-align: start; text-decoration: none;" target="_blank">https://goo.gl/m9gG7F</a></div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
Більше деталей, на сайті <a href="http://jug.ua/2016/04/hibernate_multithreading/" target="_blank">JUG.UA</a></div>
</div>
Andriy Pashkevychhttp://www.blogger.com/profile/08297741547089073527noreply@blogger.com0tag:blogger.com,1999:blog-1709025170792884896.post-36413095885898565402016-04-12T12:08:00.001+03:002016-04-12T12:08:47.642+03:00JUG Meetup: Software Engineering Culture - Improve Code Quality<div dir="ltr" style="text-align: left;" trbidi="on">
<br />
<div style="text-align: center;">
<span style="font-weight: normal;">Друзі, </span><br />
<span style="font-weight: normal;">21-го квітня, о 18:30, відбудеться наступна зустріч JUG Lviv.</span></div>
<div style="text-align: center;">
<br /></div>
<h3 style="text-align: center;">
<b><span style="font-size: large;">Speaker</span></b></h3>
<i></i><br />
<div style="text-align: center;">
<i><a href="https://4.bp.blogspot.com/-PvXDdF8sAVk/VwpwxoTkttI/AAAAAAAAAWQ/6Mb0XQ9oM-Y7jXQ7hmDfqNaKGT6-CSVMA/s1600/patserkovskyi_img1.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" height="133" src="https://4.bp.blogspot.com/-PvXDdF8sAVk/VwpwxoTkttI/AAAAAAAAAWQ/6Mb0XQ9oM-Y7jXQ7hmDfqNaKGT6-CSVMA/s200/patserkovskyi_img1.jpg" width="200" /></a></i></div>
<i>
</i>
<div style="display: inline !important; text-align: center;">
<div style="text-align: right;">
<i><b><a href="https://www.linkedin.com/in/dmytro-patserkovskyi-70319065" target="_blank">Dmytro Patserkovskyi</a>, Project Manager at V.I.Tech</b></i></div>
</div>
<div style="text-align: center;">
<i></i><br />
<div style="text-align: right;">
<i><i style="text-align: left;"></i></i></div>
<i>
</i></div>
<i></i><br />
<div style="text-align: center;">
<i><i><b><br /></b></i></i></div>
<div style="text-align: center;">
<div style="text-align: right;">
8
years of experience with different languages and technologies. On
career path met with game, desktop, mobile, enterprise and big data
development. Interesting in code quality and ways of improving process
of software development.</div>
</div>
<br />
<div style="text-align: center;">
<br /></div>
<br />
<div style="text-align: center;">
<br /></div>
<b></b><br />
<h3 style="text-align: center;">
<b>
<b><span style="font-size: large;">Topic</span></b></b></h3>
<b>
</b><i></i>
<div style="text-align: center;">
<i><i><b>Software Engineering Culture - Improve Code Quality</b></i></i></div>
<i>
<div style="text-align: center;">
<i><b><br /></b></i></div>
</i><br />
<div style="text-align: center;">
It's
usually not enough time for improving comfort of code writing and
product monitoring. But this is an important thing for making software
products with high quality. IT society even made awesome tools for
making our life easier and culture of software engineering continue
growing. On this talk we'll make a little dive into history of IT
culture and will define services stack for making our life easier.</div>
<div style="text-align: center;">
<br />
<h3>
Venue</h3>
</div>
<div style="text-align: center;">
<a href="https://goo.gl/maps/qj5fJKM65hA2" target="_blank">Hnatyuka St, 12А</a>, at Rius hotel conference room.<br />
<h3>
Реєстрація</h3>
<div>
Традиційно, участь безкоштовна, але реєстрація обов'язкова.</div>
<div>
<a href="http://goo.gl/forms/STN6sAQbvZ" target="_blank">Форма реєстрації тут</a>.</div>
</div>
</div>
Andriy Pashkevychhttp://www.blogger.com/profile/08297741547089073527noreply@blogger.com1tag:blogger.com,1999:blog-1709025170792884896.post-29607101953348941682016-04-04T12:32:00.004+03:002016-04-04T12:32:49.750+03:00JEEConf - May 20-21,2016Традиційно наприкінці травня відбудеться <a href="http://jeeconf.com/" target="_blank">JEEConf</a> Хто ще не придбав квитки - поспішайте<br />
<br />
<iframe allowfullscreen="" frameborder="0" height="480" src="https://www.youtube.com/embed/tT_9luHdeFE" width="854"></iframe>Anonymoushttp://www.blogger.com/profile/06834470382493447978noreply@blogger.com0tag:blogger.com,1999:blog-1709025170792884896.post-72652345291884398552016-03-22T08:36:00.002+02:002016-03-22T08:45:37.557+02:00JUG Lviv logo re-design contest<div dir="ltr" style="text-align: left;" trbidi="on">
<h3 style="text-align: left;">
Know how to design a logo? Read along!</h3>
JUG Lviv community has been around for a while. The first version of our logo was chosen quickly and served its purpose well. As our community progressed, we have decided to replace it by a better one.<br />
As we are more into writing code, rather than creating beautiful designs - we need You, a creative designer, who can create a great logo!<br />
<h3 style="text-align: left;">
<br />Contest schedule:</h3>
22/03/2016 - Contest start<br />
30/03/2016 - Submission deadline (we will not accept submissions past this date)<br />
31/03/2016 - Winner announced!<br />
<h3 style="text-align: left;">
Prizes:</h3>
<b>Winner:</b><br />
<br />
<ul style="text-align: left;">
<li>Free ticket to MCE conference, in Warsaw, Poland. <br />On 21-23 of April Kinoteka in Warsaw is going to be flooded with over 550 of mobile experts. Developers, designers, UX experts, managers, and product owners are going to meet for the third time in the heart of Europe on MCE^3 - the biggest mobile event in Central Europe.<br />For more details - visit the website: <a href="http://2016.mceconf.com/">http://2016.mceconf.com/</a></li>
<li>A well-made sketch book</li>
<li>The new logo will be shared via JUG Lviv & JDay social media, to hundreds of people, all the credits will be given to the designer!</li>
</ul>
<br />
<br />
<b>All the other participants will receive 15% discount on MCE tickets.</b><br />
<b><br /></b>
<b><br /></b>
<br />
<h3 style="text-align: left;">
Registration</h3>
<div>
Please follow the link <a href="http://goo.gl/forms/9onzq69dQx" target="_blank">here</a>, to register!</div>
</div>
Andriy Pashkevychhttp://www.blogger.com/profile/08297741547089073527noreply@blogger.com0tag:blogger.com,1999:blog-1709025170792884896.post-58037813550971887822016-03-04T17:12:00.002+02:002016-03-04T17:12:44.179+02:00Eclipse Dark ThemeНатхненний <a href="http://blog.atom.io/2015/02/18/one-themes.html" target="_blank">One Dark</a> темою в <a href="https://atom.io/" target="_blank">Atom</a> <div class="separator" style="clear: both; text-align: center;">
<a href="https://3.bp.blogspot.com/-izFmscgjOME/VtmgztirhtI/AAAAAAAAEWM/0yZdxIJdLcQ/s1600/atom.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://3.bp.blogspot.com/-izFmscgjOME/VtmgztirhtI/AAAAAAAAEWM/0yZdxIJdLcQ/s320/atom.png" width="291" /></a></div>
<div>
вирішив на днях поставити якусь темну тему на Eclipse. </div>
<div>
<br /></div>
<div>
Дефолтна тема від екліпса виглядає ось так</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://1.bp.blogspot.com/-g5PtK90Quw8/VtmfilT2LKI/AAAAAAAAEV8/EC9jRKI_9H8/s1600/DefaultDark.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="131" src="https://1.bp.blogspot.com/-g5PtK90Quw8/VtmfilT2LKI/AAAAAAAAEV8/EC9jRKI_9H8/s320/DefaultDark.png" width="320" /></a></div>
<div class="" style="clear: both; text-align: left;">
Як на мене трохи заагресивно. Маркетплейс запропонував тему під назвою Moonrise. Спробував не рекомендую.</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://1.bp.blogspot.com/-DFbI-PPzpyQ/Vtmfw2o9zpI/AAAAAAAAEWA/W9Zx53BsBbk/s1600/moonrise.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="130" src="https://1.bp.blogspot.com/-DFbI-PPzpyQ/Vtmfw2o9zpI/AAAAAAAAEWA/W9Zx53BsBbk/s320/moonrise.png" width="320" /></a></div>
<div class="" style="clear: both; text-align: left;">
Довелось поставити плагін <a href="http://eclipsecolorthemes.org/" target="_blank">Eclipse Color Themes</a> і до нього знайти клон теми <a href="http://eclipsecolorthemes.org/?view=theme&id=38275" target="_blank">atom-one-dark</a> який виявився хоч і схожим на оригінальний але кольори були надто яскраві тож довелось пошаманити і зробити власну тему <a href="https://github.com/diykorey/GreenMoon" target="_blank">GreenMoon </a>яка по суті базується на відтінках зеленого кольору</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://1.bp.blogspot.com/-jVBQ0uD305c/VtmiyIvIGXI/AAAAAAAAEWk/hUKhgSg4y0s/s1600/GreenMoon.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="140" src="https://1.bp.blogspot.com/-jVBQ0uD305c/VtmiyIvIGXI/AAAAAAAAEWk/hUKhgSg4y0s/s320/GreenMoon.png" width="320" /></a></div>
<div class="" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div>
Не знаю чи стане темна тема постійною для мене, але спробувати було цікаво.</div>
<div>
також можу порадити непогану тему <a href="http://eclipsecolorthemes.org/?view=theme&id=115" target="_blank">Gedit Original Oblivion</a> Найкраща з наявних хоч і трохи забагато кольорів як на мій смак</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://2.bp.blogspot.com/-FVG5K7AFcZk/VtmhLuWa47I/AAAAAAAAEWg/O_I9XvATy1A/s1600/OriginalOblivion.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="142" src="https://2.bp.blogspot.com/-FVG5K7AFcZk/VtmhLuWa47I/AAAAAAAAEWg/O_I9XvATy1A/s320/OriginalOblivion.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div>
Якщо хто має якусь улюблену тему і може порадити - лишайте в коментах</div>
Anonymoushttp://www.blogger.com/profile/06834470382493447978noreply@blogger.com0tag:blogger.com,1999:blog-1709025170792884896.post-3101455082354237522016-03-02T23:19:00.001+02:002016-03-02T23:21:28.337+02:00Java Rake: AWS Key Management System (KMS)<span style="background-color: white; color: #424242; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 14.85px; line-height: 20.79px;">Key Management System - один з веб сервісів Amazon покликаний для захисту інформації, а саме енкриптання (шифрування) та декриптання (розшифрування) даних за допомогою ID ключа, що зберігається на AWS.</span><br />
<span style="background-color: white; color: #424242; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 14.85px; line-height: 20.79px;"><br /></span>
Детальніше : <a href="http://javarake.blogspot.com/2016/03/aws-key-management-system-kms.html?spref=bl">Java Rake: AWS Key Management System (KMS)</a>Andriy Rymarhttp://www.blogger.com/profile/07432795192623954396noreply@blogger.com0tag:blogger.com,1999:blog-1709025170792884896.post-80637805592403792016-02-29T12:25:00.000+02:002016-02-29T12:25:38.416+02:00#JUGLviv meetup: Bigger and better e-commerce with Hybris<div style="text-align: justify;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">17-го березня відбудеться чергова зустріч JUGLviv. За підтримки компанії Remit до нас приїде в гості Марко Салонен</span></div>
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span>
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span>
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><a href="https://www.linkedin.com/in/markosalonen" target="_blank">Marko Salonen</a> is developer and architect with 10 years of experience from different java based technologies. Last 6 years he has been focusing in e-commerce and mainly SAP Hybris with some large scale installations as architect and lead developer. He is passionate about competence sharing and enjoys working with teams. Currently he lives in Stockholm, Sweden with his wife and 6 month old son.</span><br />
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span>
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span>
<br />
<h3 style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Bigger and better e-commerce with Hybris</span></h3>
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">E-commerce is a rapidly growing business and has huge requirements on the whole IT infrastructure of a company. In this talk we talk little bit about e-commerce and mainly focus on SAP Hybris that is one the largest e-commerce platforms in the world. We discuss how the java and spring based architecture can be used to easily extend functionality and to build highly scalable installations.</span><br />
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span>
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span>
<br />
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Дата - четвер </span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">17-те березня</span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Місце - готель <a href="http://www.hotel-lviv.com.ua/" target="_blank">Львів</a></span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Адреса - проспект В. Чорновола, 7</span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Початок - 19-00</span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><b><br /></b></span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><b>Вхід вільний</b></span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><b>Реєстрація обовязкова</b></span><br />
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><b></b></span><br />
<a name='more'></a><span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><b><br /></b></span>
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><b><br /></b></span></div>
<iframe frameborder="0" height="1400" marginheight="0" marginwidth="0" src="https://docs.google.com/forms/d/1cFS6RwMX1JxorG3A60B7u1ztp7EhVkAmu6gwAlxb3dc/viewform?embedded=true" width="760">Завантаження...</iframe>Anonymoushttp://www.blogger.com/profile/06834470382493447978noreply@blogger.com0tag:blogger.com,1999:blog-1709025170792884896.post-69393288863451630682016-01-31T17:50:00.001+02:002016-01-31T18:03:27.519+02:00Apache Spark for Newbie<div class="separator" style="clear: both; text-align: center;">
<a href="http://3.bp.blogspot.com/-rRUJ1iT5aCw/Vq4tfBSZojI/AAAAAAAAD4Q/TBXjuZZGKeg/s1600/spark-logo-trademark.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://3.bp.blogspot.com/-rRUJ1iT5aCw/Vq4tfBSZojI/AAAAAAAAD4Q/TBXjuZZGKeg/s1600/spark-logo-trademark.png" /></a></div>
<h3>
</h3>
<h3>
Вступ (Лінивим можна пропустити)</h3>
Врамках Big Data тренінгу я почав вивчати роботу з <a href="http://spark.apache.org/">Apach Spark</a> computing framework. В інтернеті є достатня кількість прикладів побудови пайплайнів на різних мовах програмування (наприклад <a href="http://spark.apache.org/examples.html">тут</a>), проте я ніде не зміг найти хорошого гайду чи прикладу як написати проект з "нуля" і запустити його виконання на кластері. Усі що я знаходив приклади використовували локальний (тестовий) режим мастера , таким чином ніякої дистрибуції логіки не відбувалося і відчути що таке Apache Spark в повній мірі мені не вдавалося. До дня коли я прослухав тренінг людини, що працювала з цим інструментом в продакшені, саме він вніс ясність в те як Apache Spark працює (дякую тобі Тарас Матяшовський). Отже, після того як я в цьому розібрався я вирішив залишити ці знання на просторах Java User Group для всіх кому цікаво і для самого себе, щоб не забути ;-) Також, надіюся з заголовку статті зрозуміло що тут буде йтись лише про поверхневе ознайомлення з спарком і основна мета це зробити усе правильно. Тут буде використаний Stand Alone Spark Master який не потрібно використувувати в продакшені, для цого ви може використати <a href="https://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-site/YARN.html">Hadoop Yarn</a>.<br />
<h3>
Опис задачі</h3>
Задача взята з документації ApacheSpark - підрахунок слів у текстовому файлі. Проте зробимо це по законам жанру:<br />
1. Дистрибутивна бібліотека (саме та яка розлетиться по воркерах кластеру і буде робити усю роботу);<br />
2. Spark Driver (іншими словами це і буде наш клієнт через який ми доступатимемось до мастера і де ми будемо будувати наші пайплайни);<br />
3. Web application (Наша веб аплікація - ендпоінти які ми будемо викликати щоб виконати ту чи іншу роботу, ну і щоб Spark Application UI був доступний і ми змогли подивитись статистику виконання роботи).<br />
<br />
Надіюся усе зрозуміло , проте якщо й ні , то далі постараюся усе розписати як найкраще. Поїхали !<br />
<h3>
</h3>
<h3>
Створення архітектури проектів</h3>
<div class="separator" style="clear: both; text-align: left;">
Архітектура нашого проекту буде складатися з трьох модулів, а саме :</div>
<div class="separator" style="clear: both; text-align: left;">
1) Distributed JAR</div>
<div class="separator" style="clear: both; text-align: left;">
2) Spark Driver</div>
<div class="separator" style="clear: both; text-align: left;">
3) Web Application</div>
<div class="separator" style="clear: both; text-align: left;">
Загальна, архітектура зображена нижче :</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="http://4.bp.blogspot.com/-j1OTZaLvvUI/Vq4C12G2K6I/AAAAAAAAD24/Qpy9oMG6BxQ/s1600/Architecture.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="224" src="http://4.bp.blogspot.com/-j1OTZaLvvUI/Vq4C12G2K6I/AAAAAAAAD24/Qpy9oMG6BxQ/s320/Architecture.jpg" width="320" /></a></div>
<br />
Для збірки проектів я буду використовувати Apache Maven, і почнемо з того що створемо батьківський проект який назвемо "spark-for-newbie" і додамо туди pom.xml файл. Батьківський pom.xml файл повинен включати усі вище згадані модулі :<br />
<br />
<span style="font-family: "courier new" , "courier" , monospace;"><modules></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <module>distributed-library</module></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <module>web-api</module></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <module>spark-driver</module></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"></modules></span><br />
<br />
Тепер підключаємо до нього основні залежності :<br />
- Залежності на наші бібліотечні модулі :<br />
<span style="font-family: "courier new" , "courier" , monospace;"><dependency></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <groupId>org.ar.spark.newbie</groupId></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <artifactId>spark-client</artifactId></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <version>${project.version}</version></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"></dependency></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"><dependency></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <groupId>org.ar.spark.newbie</groupId></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <artifactId>distributed-library</artifactId></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <version>${project.version}</version></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"></dependency></span><br />
<br />
- Також залежність на останню (на момент публікації) версію Apache Spark :<br />
<span style="font-family: "courier new" , "courier" , monospace;"><dependency></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <groupId>org.apache.spark</groupId></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <artifactId>spark-core_2.10</artifactId></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <version>1.6.0</version></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <exclusions></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <exclusion></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <groupId>org.slf4j</groupId></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <artifactId>slf4j-log4j12</artifactId></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> </exclusion></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> </exclusions></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"></dependency></span><br />
<br />
Тепер створюємо наші модулі в середині батьківського проекту:<br />
<br />
<b>distributed-library</b><br />
Додаємо до цього проекту лише залежність на Apache Spark , так як ця бібліотека міститиме класи функцій з його пакету, що будуть виконуватись на різних воркерах нашого кластеру.<br />
<span style="font-family: "courier new" , "courier" , monospace;"><dependency></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <groupId>org.apache.spark</groupId></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <artifactId>spark-core_2.10</artifactId></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <scope>provided</scope></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"></dependency></span><br />
<br />
<b>spark-driver</b><br />
Цей проект також буде бібліотекою яку ми використаємо у наступному web-api модулі. Він міститиме Spark Conext та залежність на функції, що будуть виконувати логіку нашого обчислення, тому нам потрібні наступні залежності :<br />
<span style="font-family: "courier new" , "courier" , monospace;"><dependency></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <groupId>org.ar.spark.newbie</groupId></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <artifactId>distributed-library</artifactId></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"></dependency></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"><dependency></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <groupId>org.apache.spark</groupId></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <artifactId>spark-core_2.10</artifactId></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"></dependency></span><br />
<br />
<b>web-api</b><br />
Даний модуль буде нашою основною аплікацією, він повинен містити залежність на наш Spark Driver а також на дуже цікаву бібліотеку "Java Spark", завдяки якій ми зробимо REST Endpoint всього в одну лінійку коду. Spark Java, немає нічого спілького з Big Data та Apache Spark, також вона заслуговує окремої статті щоб описати її можливості.<br />
<span style="font-family: "courier new" , "courier" , monospace;"><dependency></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <groupId>org.ar.spark.newbie</groupId></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <artifactId>spark-driver</artifactId></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <version>1.0-SNAPSHOT</version></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"></dependency></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"><dependency></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <groupId>com.sparkjava</groupId></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <artifactId>spark-core</artifactId></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> <version>2.3</version></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"></dependency></span><br />
<br />
<h3>
Розробка дистрибутивної бібліотеки (distributed-library)</h3>
Для того, щоб підрахувати кількість слів у текстовому файлі ми повинні зробити наступний пайплайн :<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="http://2.bp.blogspot.com/-GAirTyLBspI/Vq4Qpxa0XJI/AAAAAAAAD3I/0UXr_M8zUXA/s1600/pipeline.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="113" src="http://2.bp.blogspot.com/-GAirTyLBspI/Vq4Qpxa0XJI/AAAAAAAAD3I/0UXr_M8zUXA/s320/pipeline.jpg" width="320" /></a></div>
<br />
<br />
Отже нам треба буде написати 4 функції, 3 map і 1 reduce а також клас в який ми будемо мапити key-value рузультати і повернемо результати з воркера назад в аплікацію.<br />
<br />
<b> SeparateWordLinesFunction.java </b>- її задача отримати на вхід об'єкт типу String котрий є вичитаною лінією тексту з текстового файлу і розбити на окремі слова , тобто повернути список об'єктів String. Для цього, клас функції робитиме наступне :<br />
<span style="font-family: "courier new" , "courier" , monospace;"><br /></span>
<span style="font-family: "courier new" , "courier" , monospace;">public class SeparateWordLinesFunction implements FlatMapFunction<String, String> {</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> @Override</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> public Iterable<String> call(String s) throws Exception {</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> return Arrays.asList(s.split(" "));</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> }</span><br />
<span style="font-family: "courier new" , "courier" , monospace;">};</span><br />
<br />
<b> MapWordsToKeyValueFunction.java </b>- повинна замапити кожне слово до лічіильника, який по замовчуванню буде "1", таким чином ми отримаємо key-value структуру даних. Для того, щоб тримати таку структуру буде використано об'єкт <span style="font-family: "courier new" , "courier" , monospace;">Tuple2 </span><span style="font-family: inherit;">з пакету </span><span style="font-family: "courier new" , "courier" , monospace;">Scala</span><span style="font-family: inherit;"> бібліотеки Apache Spark : </span><br />
<span style="font-family: inherit;"><br /></span>
<span style="font-family: "courier new" , "courier" , monospace;">public class MapWordsToKeyValueFunction implements PairFunction<String, String, Integer> {</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> @Override</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> public Tuple2<String, Integer> call(String s) throws Exception {</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> return new Tuple2<String, Integer>(s, 1);</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> }</span><br />
<span style="font-family: "courier new" , "courier" , monospace;">};</span><br />
<br />
<b>ReduceKeyValueWordsByKey.java</b> - reduce операція по ключу нашої структури, тут ми повинні вирішити що будемо робити з значенням і в нашому випадку ми його просумуємо :<br />
<br />
<span style="font-family: "courier new" , "courier" , monospace;">public class ReduceKeyValueWordsByKey implements Function2<Integer, Integer, Integer> {</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> @Override</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> public Integer call(Integer intVal1, Integer intVal2) throws Exception {</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> return intVal1 + intVal2;</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> }</span><br />
<span style="font-family: "courier new" , "courier" , monospace;">}</span><br />
<br />
<b>MapKeyValueWordsToWrapperObject.java</b> - функція що перетворить key-value структуру в більш лояльний для подальшої роботи об'єкт :<br />
<br />
<span style="font-family: "courier new" , "courier" , monospace;">public class MapKeyValueWordsToWrapperObject implements Function<Tuple2<String,Integer>, WordResult> {</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> @Override</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> public WordResult call(Tuple2<String, Integer> stringIntegerTuple2) throws Exception {</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> return new WordResult(stringIntegerTuple2._1, stringIntegerTuple2._2);</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> }</span><br />
<span style="font-family: "courier new" , "courier" , monospace;">}</span><br />
<br />
<b>WordsResult.java</b> - звичайний POJO об'єкт котрий містить поля для самого слова і його лічильника. Потрібно лише імплементувати інтерфейс <span style="font-family: "courier new" , "courier" , monospace;">Serializable</span><span style="font-family: inherit;"> (для надання можливості серіалізувати його при передачі по мережі)</span> і особисто від себе я перевизначив метод <span style="font-family: "courier new" , "courier" , monospace;">toString</span> так як буду виводи об'єкти напряму до користувача.<br />
<h3>
Розробка Spark Driver бібліотеки (spark-driver)</h3>
Тут ми створемо SparkContext через який отримаємо доступ до мастера і задекларуємо наш пайплайн.<br />
<br />
<b>Створення SparkContext :</b><br />
Для цього необідно створити SparkConf - конфігураційних об'єкт якому ми передамо назву нашої аплікації, шлях до мастера та шлях до скомпільованого JAR файлу який Spark розповсюдить на воркери де будуть виконуватись етапи нашого пайплайну :<br />
<br />
<span style="font-family: "courier new" , "courier" , monospace;">private String[] distributedJars = new String[]{"/<path_to_workspace>/distributed-library/target/distributed-library-1.0-SNAPSHOT.jar"};</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"><br /></span>
<span style="font-family: "courier new" , "courier" , monospace;">private JavaSparkContext sparkContext;</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"><br /></span>
<span style="font-family: "courier new" , "courier" , monospace;">public SparkDriver(){</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> SparkConf sparkConf = new SparkConf().setAppName("SparkForNewbie")</span><br />
<span style="font-family: "courier new" , "courier" , monospace;">.setJars(distributedJars).setMaster("spark://127.0.0.1:7077");</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> this.sparkContext = new JavaSparkContext(sparkConf);</span><br />
<span style="font-family: "courier new" , "courier" , monospace;">}</span><br />
<br />
Імплементація Pipeline :<br />
<br />
<span style="font-family: "courier new" , "courier" , monospace;">public List<WordResult> countWordsFromFile(String filePath){</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> JavaRDD<String> words = sparkContext.textFile(filePath);</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> return words</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> .flatMap(new SeparateWordLinesFunction())</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> .mapToPair(new MapWordsToKeyValueFunction())</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> .reduceByKey(new ReduceKeyValueWordsByKey())</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> .map(new MapKeyValueWordsToWrapperObject())</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> .collect();</span><br />
<span style="font-family: "courier new" , "courier" , monospace;">}</span><br />
<br />
З імплементації пайплайну чітко видно нашу попередню схему , де я показував як він виглядатиме. Усі функції підтянуті через залежність і знаходяться в distributed-library.<br />
<h3>
Розробка Веб аплікації</h3>
Цей модуль потрібен нам саме для взаємодії нашого проекту з кінцевим користувачем. Тут ми зробимо енд-поінт який користувач зможе викликати в браузері і запустити на виконання Spark Pipeline, проте найцікавіше в цьому модулі це використання Spark Java, за допомогою якої ми реалізуємо енд-поінт :<br />
<br />
<span style="font-family: "courier new" , "courier" , monospace;">get("/data", (request, response) -> dataService.countWords())</span><br />
<br />
Угу, саме так, 1 рядок коду і при старті web-api Spark Java розгорне Embedded Jetty і реалізує "/data" енд-поінт. Далі, при виклику нашого енд-поінту викликаємо сервіс який містить в собі інстанс SparkDriver класу і виконує наш пайплайн передаючи шлях до піддослідного файлу:<br />
<br />
<span style="font-family: "courier new" , "courier" , monospace;">public class DataService {</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"><br /></span>
<span style="font-family: "courier new" , "courier" , monospace;"> private static final String TEXT_FILE_PATH = "/workspace/projects/spark-for-newbie/test.txt";</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> private SparkDriver sparkDriver = new SparkDriver();</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"><br /></span>
<span style="font-family: "courier new" , "courier" , monospace;"> public List<WordResult> countWords(){</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> return sparkDriver.countWordsFromFile(TEXT_FILE_PATH);</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"> }</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"><br /></span>
<span style="font-family: "courier new" , "courier" , monospace;">}</span><br />
<br />
Ось і все , усі модулі нашого проекту розписані , і можна переходити до тестування.<br />
<br />
<h3>
Тестування</h3>
<b>Запуск Apache Master (stand alone version)</b><br />
Для цього качаємо дистрибутив <a href="http://spark.apache.org/downloads.html">Apache Spark</a> (я викачував spark-1.6.0-bin-hadoop2.6.tgz) і йдемо у папку "conf" що в середині.<br />
Тут потрібно змінити розширення файлу "spark-env.sh.template" на "spark-env.sh", зайти в середину і додати кілька рядків для конфігурації :<br />
<br />
<span style="font-family: "courier new" , "courier" , monospace;">export SPARK_LOCAL_IP=127.0.0.1</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"><br /></span>
<span style="font-family: "courier new" , "courier" , monospace;">export SPARK_MASTER_IP=127.0.0.1</span><br />
<span style="font-family: "courier new" , "courier" , monospace;">export SPARK_MASTER_PORT=7077</span><br />
<span style="font-family: "courier new" , "courier" , monospace;">export SPARK_MASTER_WEBUI_PORT=8082</span><br />
<span style="font-family: "courier new" , "courier" , monospace;"><br /></span>
<span style="font-family: "courier new" , "courier" , monospace;">export SPARK_WORKER_MEMORY=2g</span><br />
<span style="font-family: "courier new" , "courier" , monospace;">export SPARK_WORKER_CORES=2</span><br />
<span style="font-family: "courier new" , "courier" , monospace;">export SPARK_WORKER_WEBUI_PORT=8083</span><br />
<br />
(Опис усіх цих та інших можливих опцій присутні у цьомуж файлі)<br />
<br />
Тепер йдемо назад і переходимо у папку "sbin", тут виконуємо "./start-master.sh " і переходимо в браузері по шляху "http://localhost:8082/", тут має бути розгорутий ЮІ нашого мастера :<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="http://3.bp.blogspot.com/-Ku17jWHIpek/Vq4emJANAiI/AAAAAAAAD3Y/GUl7JIj1GDI/s1600/master.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="123" src="http://3.bp.blogspot.com/-Ku17jWHIpek/Vq4emJANAiI/AAAAAAAAD3Y/GUl7JIj1GDI/s320/master.png" width="320" /></a></div>
<br />
<br />
Далі запускаємо воркер (так, так це не кластер адже все робиться на одній машині, але спарк про це не знає, він має все що необхідно для роботи у розподіленому режимі - мастер а мастер має воркер). Виконуємо "/start-slave.sh 127.0.0.1:7077" і переходимо по шляху "http://localhost:8083/" :<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="http://2.bp.blogspot.com/-KSU0WtsERNE/Vq4frrdUoVI/AAAAAAAAD3k/fGScb_7dQz8/s1600/node.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="109" src="http://2.bp.blogspot.com/-KSU0WtsERNE/Vq4frrdUoVI/AAAAAAAAD3k/fGScb_7dQz8/s320/node.png" width="320" /></a></div>
<br />
Тепер у нас є все щоб запустити нашу аплікацію, йдемо в мейн метод модуля web-api та запускаємо його. В логах розгортання проекту ви повинні побачити як спарк розгорає ЮІ нашої аплікації :<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="http://1.bp.blogspot.com/-a2nJLkFICgc/Vq4gzt3PwlI/AAAAAAAAD3w/LBW40CC8bAU/s1600/start_spart_app_ui.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="8" src="http://1.bp.blogspot.com/-a2nJLkFICgc/Vq4gzt3PwlI/AAAAAAAAD3w/LBW40CC8bAU/s320/start_spart_app_ui.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Тут буде відображатися найцікавіша інформація виконання нашого пайплайну.</div>
<br />
Переходимо по цьому шляху і повинні побачити :<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="http://2.bp.blogspot.com/-H_gjZWzXIqs/Vq4hJI-QMOI/AAAAAAAAD34/SQkDCKgo0CU/s1600/app_ui.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="78" src="http://2.bp.blogspot.com/-H_gjZWzXIqs/Vq4hJI-QMOI/AAAAAAAAD34/SQkDCKgo0CU/s320/app_ui.png" width="320" /></a></div>
<br />
Щож, тепер усе готово, відкриваємо нову вкладку в браузері і переходимо на наш енд-поінт :<br />
<br />
<span style="font-family: "courier new" , "courier" , monospace;">http://localhost:4567/data</span><br />
<span style="font-family: inherit;"> </span><br />
<span style="font-family: inherit;"> Якщо ж все було зроблено правильно ви повинні побачити результат нашого обчислення :</span><br />
<span style="font-family: inherit;"><br /></span>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="http://3.bp.blogspot.com/-B8EeP6HgngI/Vq4hzolQL8I/AAAAAAAAD4A/PLenlfRUZEI/s1600/res.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="45" src="http://3.bp.blogspot.com/-B8EeP6HgngI/Vq4hzolQL8I/AAAAAAAAD4A/PLenlfRUZEI/s320/res.png" width="320" /></a></div>
<br />
<h3>
P.S.</h3>
Якщо ж у вас щось не вийшло або не спрацювало, ви можете знайти сорси мого проекту <a href="https://github.com/flylight/spark-for-noobie">тут</a> . Також ділюся з вами сорсами <a href="https://github.com/tmatyashovsky/spark-samples-jeeconf-kyiv">проекту Тараса</a>, котрі я використовував в довідкових цілях коли знайомився з Apache Spark, вдачі !<br />
<br />
Andriy Rymarhttp://www.blogger.com/profile/07432795192623954396noreply@blogger.com0tag:blogger.com,1999:blog-1709025170792884896.post-66436344464466281802016-01-18T16:23:00.000+02:002016-01-18T16:33:55.358+02:00JUG Meetup, Different flavors of polymorphism in Scala<div dir="ltr" style="text-align: left;" trbidi="on">
<br />
<div style="text-align: center;">
Dear Friends, </div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
We would like to invite you to the next JUG Meetup, which will occur this Wednesday, January 20th, 19:00!</div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
This time, we have a great speaker, from Odesa! </div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
<b>Boris Trofimov, Software Architect @Sigma Software</b></div>
<div style="text-align: center;">
Co-founder of Odessa JUG. Professional software engineer with 10+ years of experience in wide range of expertises from mobile and enterprise to big data and high load distributed applications. Passionate follower of Scala-ble architectures.</div>
<div style="text-align: center;">
<br /></div>
<h3 style="text-align: center;">
Topic of the talk:</h3>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
"Different flavors of polymorphism in Scala" або "Такой разный полиморфизм в Scala".</div>
<div style="text-align: center;">
<br /></div>
<h3 style="text-align: center;">
Topic description:</h3>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
"Working with Scala can be compared to experiencing the "forth dimension".</div>
<div style="text-align: center;">
Many of the features of Scala are unique and provide ways to look at application development in a new way.</div>
<div style="text-align: center;">
Polymorphism in Scala is multifaceted and this is going to be our topic.</div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
If you feel like you need a new view on some of the things you do everyday, if you are interested in scala and want to have a good time - come and join us!</div>
<div style="text-align: center;">
<br /></div>
<h3 style="text-align: center;">
Venue:</h3>
<div style="text-align: center;">
<a href="http://astoriahotel.ua/en" target="_blank">Astoria hotel</a></div>
<div style="margin: 0px; text-align: center; text-indent: 0px;">
<!--StartFragment-->15 Horodotska St.</div>
<div style="text-align: center;">
</div>
<div style="text-align: center;">
Lviv<!--EndFragment--><br />
<br />
<h3>
Sponsor:</h3>
</div>
<div style="text-align: center;">
This event is supported by <a href="http://eleks.com/" target="_blank">ELEKS</a>!<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="http://3.bp.blogspot.com/-gTeQ9RN3-jI/Vpz3y59VezI/AAAAAAAAAUs/UjD-oOjWbiw/s1600/EleksNewLogo.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="55" src="http://3.bp.blogspot.com/-gTeQ9RN3-jI/Vpz3y59VezI/AAAAAAAAAUs/UjD-oOjWbiw/s200/EleksNewLogo.png" width="200" /></a></div>
<br />
<br />
<br /></div>
<div style="text-align: center;">
The event is completely free, but requires registration, here:</div>
<div style="text-align: center;">
<a href="http://goo.gl/forms/NfRvlB63SR" target="_blank">Form</a>.</div>
<div style="text-align: center;">
<br /></div>
</div>
Andriy Pashkevychhttp://www.blogger.com/profile/08297741547089073527noreply@blogger.com0tag:blogger.com,1999:blog-1709025170792884896.post-89933176236662334722015-12-01T18:36:00.000+02:002015-12-01T18:42:40.391+02:00#JUGLviv: 26 meetup: Real-Time Collaborative Editing in Modern Web Applications<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span>
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span>
<br />
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">10-го грудня відбудеться 26-та зустріч JUG Lviv </span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Доповідачем нашої зустрічі буде <a href="https://www.linkedin.com/in/skavish" target="_blank">Дмитро Скавіш </a>- засновник та СЕО компанії <a href="https://www.animatron.com/" target="_blank">Animatron</a></span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><a href="https://www.animatron.com/" target="_blank">Animatron</a> це перша компанія випускник JetBrains стартап інкубатора.</span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Доповідь на тему</span></div>
<h2 style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Real-Time Collaborative Editing in Modern Web Applications</span></h2>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">The author will explain algorithms and implementation details of real-time collaborative editing protocols in modern web applications, such as Google Docs, MIcrosoft Online Office, Animatron and others.</span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Дата - четвер </span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">10-го грудня</span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Місце - готель <a href="http://www.rius-hotel.lviv.ua/ua/conference-service/" target="_blank">RIUS</a></span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Адреса - Академіка Гнатюка 12</span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;">Початок - 18:30</span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><b><br /></b></span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><b>Вхід вільний</b></span></div>
<div style="text-align: center;">
<span style="font-family: "helvetica neue" , "arial" , "helvetica" , sans-serif;"><b><a href="https://docs.google.com/forms/d/1OgzYoySolfpKrzCJ-T-TNvDRrVSh1iz5kDIIJ1ohYXE/viewform?usp=send_form" target="_blank">Реєстрація</a> обовязкова</b></span></div>
<br />Anonymoushttp://www.blogger.com/profile/06834470382493447978noreply@blogger.com0tag:blogger.com,1999:blog-1709025170792884896.post-77070889830404693602015-10-23T11:21:00.002+03:002015-10-23T11:21:46.402+03:00RebelLabs Android Report 2015: the platform, the best development practices, the tooling<br />
<br />
<iframe allowfullscreen="" frameborder="0" height="355" marginheight="0" marginwidth="0" scrolling="no" src="//www.slideshare.net/slideshow/embed_code/key/rN9iM1aoSTzXN5" style="border-width: 1px; border: 1px solid #CCC; margin-bottom: 5px; max-width: 100%;" width="425"> </iframe><br />
<div style="margin-bottom: 5px;">
<div style="background-color: white; font-family: 'Open Sans', Verdana, sans-serif; font-size: 14px; line-height: 1.65; word-spacing: 0.15em;">
<a class="em button" href="http://pages.zeroturnaround.com/RebelLabs-Android-Report-2015.html" style="background: rgb(242, 105, 61) !important; border: 0px; color: white; display: inline-block; font-size: 0.9em; font-weight: 600; line-height: 1; margin-top: -0.5em; padding: 0.5em 2em; text-align: center; text-decoration: none !important; transition: all 0.3s; white-space: nowrap;" target="_blank">DOWNLOAD THE PDF</a></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<a href="http://zeroturnaround.com/rebellabs/android-the-platform-the-framework-and-the-way-of-life" target="_blank">Source</a></div>
</div>
Anonymoushttp://www.blogger.com/profile/06834470382493447978noreply@blogger.com0tag:blogger.com,1999:blog-1709025170792884896.post-71450373353748227022015-10-05T17:26:00.000+03:002015-10-05T17:32:20.224+03:00Free Book: Java: The Legend<div style="background-color: white; color: #333333; float: left; font-family: Arial, Verdana, Geneva, Helvetica, sans-serif; font-size: 12px; margin: 0px; padding: 0px; width: 670px;">
<a href="https://lh4.googleusercontent.com/proxy/uE0UgI3UtFV-uW0QLxb6qrI4JLo_efWVd3QeawPgzoUL-Z0P3YNwd4RMtkgmUUke7_KJeGmoRejRzAaiVc8UVGa9mVKtd-TgFW6R6f4AKmk" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img alt="" border="0" src="http://covers.oreillystatic.com/images/0636920043478/cat.gif" id="largeImage" style="border: 0px; width: 180px;" /></a><br />
<div id="browse-content" style="float: left; margin: 0px; padding: 0px; width: 190px;">
<div class="detailimgcontainer" style="margin: 0px 12px 0px 0px; padding: 0px; position: relative; width: 178px;">
</div>
</div>
<div class="detailheader" style="font-size: 20px; font-weight: bold; margin: 0px; padding: 0px;">
Java: The Legend</div>
<div class="detailSubHeader" style="font-size: 18px; margin: 0px; padding: 0px;">
Past, Present, and Future</div>
<div class="AuthorName" style="margin: 0px; padding: 3px 0px 5px;">
By <a href="http://www.oreilly.com/pub/au/6137" style="color: #207cc1; text-decoration: none;">Ben Evans</a></div>
<div style="margin: 0px; padding: 0px;">
Publisher: O'Reilly</div>
<div style="margin: 0px; padding: 0px;">
Released: September 2015</div>
<div class="SocialIconBox" id="hasReviews" style="height: 43px; margin: 10px 0px 10px 190px; padding: 0px; position: relative;">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%px;"><tbody>
<tr><td style="color: #333333; font-size: 12px;"></td></tr>
</tbody></table>
</div>
<div style="margin: 12px 0px 10px 190px; overflow: auto; padding: 0px;">
<div class="content-subtitle" id="rr" style="clear: left; font-size: 16px; line-height: 20px; margin: 0px; padding: 0px;">
Description</div>
The road from Java's first public alpha of 1.0 to today has been long—and full of technical advances, innovative solutions, and interesting complications. Along the way, Java has flourished and is now one of the world's most important and widely-used programming environments.<br />
<br />
Benjamin Evans, the Java editor for InfoQ and author of Java in a Nutshell, 6th edition, takes us on a journey through time:<br />
<br />
- How Java has benefitted from early design decisions, including "Write Once, Run Anywhere" and an insistence on backward compatibility- The impact of open source- The enormous success and continued importance of the Java Virtual Machine and platform- The rise of Enterprise Java- The evolution of the Java developer community and ecosystem- Java's continuing influence on new programming languages- Java's greatest triumphs and most heroic failures- The future of Java, including Java 9, Project Panama, Project Valhalla, and the Internet of Things<br />
<br />
<a href="http://request%20book/" target="_blank">Request Book</a></div>
<div style="clear: both; margin: 0px; padding: 0px;">
</div>
</div>
<!-- Blogger automated replacement: "https://images-blogger-opensocial.googleusercontent.com/gadgets/proxy?url=http%3A%2F%2Fcovers.oreillystatic.com%2Fimages%2F0636920043478%2Fcat.gif&container=blogger&gadget=a&rewriteMime=image%2F*" with "https://lh4.googleusercontent.com/proxy/uE0UgI3UtFV-uW0QLxb6qrI4JLo_efWVd3QeawPgzoUL-Z0P3YNwd4RMtkgmUUke7_KJeGmoRejRzAaiVc8UVGa9mVKtd-TgFW6R6f4AKmk" -->Anonymoushttp://www.blogger.com/profile/06834470382493447978noreply@blogger.com0