Konferencija Javantura Zagreb 2014 by HUJAK
Java na klijentskoj strani – ima li budućnosti? by Ivan Vučak
U proteklih nekoliko godina Java se pozicionirala kao tehnologija izrade serverskih komponenti, ali kao da se zaboravlja da se Java koristila iza izradu Rich Internet aplikacija (RIA). Da li je Java konkurentna na području RIA te koliku ulogu u tome imaju razni sigurnosni standardi? Kako održavati postojeće RIA sustave uz općenito nepovjerenje ostalih sustava prema Java klijentskim aplikacijama? U ovom predavanju bavit ćemo se usporedbom Jave s ostalim tehnologijama te pokazati zašto strepimo kod svakog Java update-a.
Konferencija Javantura Zagreb 2014 by HUJAK
Alfresco – Neo4j integracija – nova vrsta CMS aplikacija by Damir Murat
Graph baze imaju mnoge primjene, a jedna od njih je obogaćivanje i novi način pretraživanja i korištenja postojećih podataka. Ako prateći tu ideju povežemo CMS sustav Alfresco (www.alfresco.com) i graph bazu podataka Neo4j (www.neo4j.org), otvara se mogućnost kreiranja nove vrste CMS aplikacija. Dodamo li u mješavinu još i tehnologije kao što su Ext JS, D3.js i Grails, rezultat može biti vrlo atraktivan za krajnjeg korisnika.
Konferencija Javantura Zagreb 2014 by HUJAK
Vert.x – asinkroni, skalabilni i poliglotni framework nove generacije by Mihovil Rister
Vert.x (vertx.io) je relativno novi, asinkroni, poliglotni framework uvjetovan događajima te baziran na JVM-u, a svojevremeno jedan od najpraćenijih projekata na GitHubu. Također, bio je i razlog ozbiljnih napetosti između Red Hata i VMwarea, koje su umalo zaustavile projekt. Cilj ovog predavanja je predstaviti Vert.x svijet, pokazati osnove, te ponuditi najbolja iskustva, prakse i preporuke pri njegovoj uporabi.
Prve tri su najvažnije – Skupština HUJAK-a 22.2.2014.
HUJAK
Branko Mihaljević, Stjepan Matijašević, Hrvoje Đurđević, Slavko Žnidarić, Marin Orlić, Aleksander Radovan i Jurica Križanić
Often, there is a difference of opinion between IT specialists who make business apps with databases in client-server architecture and those who skipped the client-server architecture altogether and began working on web applications. The former usually (but not always) tend to write their code in the database, while the latter consider the database a “black box”, which often serves only as a data container, while the business logic resides in the application server. There are a lot of other questions. The author thinks that specific needs require consideration. It is important to learn and think, and avoid being narrow-minded and accept a single “truth”. These questions will be considered through the Oracle ADF framework.
Description and analysis of MEAN stack and underlying technologies (Mongo DB, Express, Angular and Node JS). Review of development tools & techniques. Performance, best practices. Common usage scenarios, pros and cons. How to use it, when to use it, when not to use it.
To deliver optimal user experience, web applications should have simple navigation and browsing, automatic resolution adjustment to suit the user (whether on mobile devices or desktop computers), minimal loading times, SEO, etc. All of these must be considered when designing a web application today. The Java/JEE ecosystem provides a number of frameworks that can facilitate the development of web applications, but have difficulties fulfilling the above-mentioned conditions. On the other hand , more and more web developers advocate “Single page” applications and JavaScript frameworks which boost development. How to take advantage of existing services (EJB) and introduce them into the world of JavaScript programming (JSON)? Should all data access be organized through an API?
Konferencija Javantura Zagreb 2014 by HUJAK
Alfresco – Neo4j integracija – nova vrsta CMS aplikacija by Damir Murat
Graph baze imaju mnoge primjene, a jedna od njih je obogaćivanje i novi način pretraživanja i korištenja postojećih podataka. Ako prateći tu ideju povežemo CMS sustav Alfresco (www.alfresco.com) i graph bazu podataka Neo4j (www.neo4j.org), otvara se mogućnost kreiranja nove vrste CMS aplikacija. Dodamo li u mješavinu još i tehnologije kao što su Ext JS, D3.js i Grails, rezultat može biti vrlo atraktivan za krajnjeg korisnika.
Konferencija Javantura Zagreb 2014 by HUJAK
Vert.x – asinkroni, skalabilni i poliglotni framework nove generacije by Mihovil Rister
Vert.x (vertx.io) je relativno novi, asinkroni, poliglotni framework uvjetovan događajima te baziran na JVM-u, a svojevremeno jedan od najpraćenijih projekata na GitHubu. Također, bio je i razlog ozbiljnih napetosti između Red Hata i VMwarea, koje su umalo zaustavile projekt. Cilj ovog predavanja je predstaviti Vert.x svijet, pokazati osnove, te ponuditi najbolja iskustva, prakse i preporuke pri njegovoj uporabi.
Prve tri su najvažnije – Skupština HUJAK-a 22.2.2014.
HUJAK
Branko Mihaljević, Stjepan Matijašević, Hrvoje Đurđević, Slavko Žnidarić, Marin Orlić, Aleksander Radovan i Jurica Križanić
Often, there is a difference of opinion between IT specialists who make business apps with databases in client-server architecture and those who skipped the client-server architecture altogether and began working on web applications. The former usually (but not always) tend to write their code in the database, while the latter consider the database a “black box”, which often serves only as a data container, while the business logic resides in the application server. There are a lot of other questions. The author thinks that specific needs require consideration. It is important to learn and think, and avoid being narrow-minded and accept a single “truth”. These questions will be considered through the Oracle ADF framework.
Description and analysis of MEAN stack and underlying technologies (Mongo DB, Express, Angular and Node JS). Review of development tools & techniques. Performance, best practices. Common usage scenarios, pros and cons. How to use it, when to use it, when not to use it.
To deliver optimal user experience, web applications should have simple navigation and browsing, automatic resolution adjustment to suit the user (whether on mobile devices or desktop computers), minimal loading times, SEO, etc. All of these must be considered when designing a web application today. The Java/JEE ecosystem provides a number of frameworks that can facilitate the development of web applications, but have difficulties fulfilling the above-mentioned conditions. On the other hand , more and more web developers advocate “Single page” applications and JavaScript frameworks which boost development. How to take advantage of existing services (EJB) and introduce them into the world of JavaScript programming (JSON)? Should all data access be organized through an API?
Panel diskusija - usporedba Web frameworka (IT Showoff)IT Showoff
Kod izrade web projekta postoje razne mogućnosti odabira frameworka na kojem će se projekt bazirati. Mi smo odlučili izdvojili pet glavnih frameworka te oko njih izgraditi kvalitetnu panel diskusiju.
Vjerujemo da većina developera koji će sudjelovati na IT Showoff konferenciji su barem u jednom trenutku svoje karijere radili web site ili web aplikaciju na nekom od odabranih frameworka. Isto tako, vjerojatnost da su koristili, i temeljito isprobali sve njih, je vrlo mala. Zato nam je cilj putem kompetentnih stručnjaka pokušati publici prenijeti iskustva vezana za pojedine tehnologije, njihova osnovna svojstva, prednosti i mane.
Panelisti su svi od reda pravi majstori svog zanata, te će usporedno proći važna svojstva svakog frameworka i usporediti ga s drugima.
Need for seamless communication between web browser and back-end server has resulted in technology called WebSocket. In this presentation we will see what is WebSocket and how can we leverage Spring framework and STOMP (Streaming Text Oriented Messaging Protocol) to display GPS coordinates on OpenLayers map in real time.
Predavanje sa JavaCro14 koje na primjeru CROZ-ovog proizvoda LikeMyIdea pokazuje automatizaciju release-a i instalacije. Korišteni alati i jezici: Maven, Groovy, Ant,
Jython, Shell (Batch).
Konferencija Javantura Zagreb 2014 by HUJAK
Java 8 JavaScript – Nashorn by Miroslav Rešetar
Java 8 donosi podršku za scripting u JavaScriptu. Engine se zove Nashorn (openjdk.java.net/projects/nashorn) i nasljednik je popularnog Rhino engine-a. Za razliku od starijeg Rhino-a, Nashorn koristi invoke dynamic Java 7 mehanizam što mu omogućava puno bolje performanse. Nashorn je moderni engine, usklađen sa ECMAScript 5.1 standardom. To omogućava uporabu popularnih JavaScript biblioteka iz Java programa što otvara neke sasvim nove načine kako implementiramo naša Java rješenja. Prezentacija ima za cilj upoznati Java developera s mogućnostima integracije JavaScript-a u buduća Java 8 rješenja.
Konferencija Javantura Zagreb 2014 by HUJAK
Zašto je Google Dart spas za Java programere? by Željko Kunica
Java programeri su naučili na “lijep” i strukturiran jezik. Zato im često JavaScript zadaje glavobolje. Ali JavaScript je sveprisutan i svakim danom sve popularniji. Također novi trendovi nameću “pametnije” web aplikacije što nameće još više JavaScripta. Dartlang (www.dartlang.org) je rješenje koje Java developeri razumiju i cijene! Struktura jezika vrlo je prepoznatljiva, a neke karakteristike bi bilo lijepo vidjeti u budućim verzijama Jave. Predavanje je uvod u izradu JavaScript aplikacija korištenjem Darta.
Konferencija Javantura Zagreb 2014 by HUJAK
All your base are belong to us – pristup bazama podataka na Groovy način by Dinko Srkoč
Službeni Oracleov JDBC tutorijal počinje riječima: “JDBC API je osmišljen kako bi držao jednostavne stvari jednostavnim. To znači da JDBC čini svakodnevni rad s bazama podataka laganim”. Je li moguće taj lagani rad još malo olakšati? Na predavanju ćemo vidjeti kakvu podršku radu s bazama podataka pruža Groovy (groovy.codehaus.org), popularni programski jezik za JVM.
Konferencija Javantura Zagreb 2014 by HUJAK
Izgradnja otvorene i besplatne EU platforme za razvoj ICT usluga za starije osobe by Andrej Grgurić
U siječnju 2014., nakon četiri godine intenzivnog rada europski istraživački projekt universAAL (www.universaal.org), sufinanciran od strane Europske Unije, uspješno je priveden kraju. Glavni rezultat projekta je, uz otvorene alate (pretezno razvijene u obliku otvorenih Eclipse plug-inova), besplatna i otvorena (ASL2.0) platforma, bazirana na OSGi tehnologiji, koja olakšava tehničku implementaciju i djeluje kao otvoren i zajednički temelj za programere.
Konferencija Javantura Zagreb 2014 by HUJAK
What’s new in WildFly 8 by Tomaž Cerar
WildFly 8 (née JBoss Application Server, www.wildfly.org) je Red Hat-ov open source Java EE 7 compliant application server. Sadrži robusnu implementaciju za WebSocket, Batch, JSON, Concurrency, JMS2, JAX-RS 2, CDI 1.1 i sve Java EE 7 tehnologije. Ispod je novi cutting-edge web server koji je u WildFly 8 dizajniran za maksimalni throughput i skalabilnost, uključivo okolinu s više od milijun konekcija. Broj portova je reduciran korištenjem multipleksiranja HTTP-a pomoću HTTP Upgrade. Role Based Access Control podržava organizacije s odvojenim odgovornosti i ograničenja za upravljanje. Uloge predstavljaju različite skupove dozvola, kao što su izvođenja runtime operacija, područja konfiguracije koja se mogu čitati ili pisati, te sposobnost za audit promjena i upravljanje korisnicima. Osim toga, novi ograničeni audit log može biti omogućen zajedno s mogućnosti za offload na sigurni syslog poslužitelj. WildFly također pruža “core” distribuciju koja je idealna za autore frameworka koji žele izgraditi vlastiti application runtime pomoću snažne WildFly 8 arhitekture. NetBeans, IntelliJ i Eclipse već omogućavaju da se WildFly koristi za razvoj, deployment i debugging. Ovo predavanje će dati pregled svih tih mogućnosti pomoću nekoliko live demo-a.
Konferencija Javantura Zagreb 2014 by HUJAK
Sencha Touch – napredni front-end za mobilne klijente by Denis Jajčević
Izrada bogatog sučelja za mobilnu platformu nikad nije bila jednostavnija i zabavnija. Programski okvir Sencha Touch (www.sencha.com/products/touch) omogućuje implementaciju složenih aplikacija temeljnih na HTML 5 standardu i izvršavanje u web i/ili native načinu rada. Web ili native aplikacija? Zašto razbijati glavu kad možete imati oboje odjednom. U pola sata doznajte glavne pikanterije vezane za Sencha Touch te svjedočite izradi jedne mini aplikacije i demonstraciji iste na mobilnom uređaju.
Konferencija Javantura Zagreb 2014 by HUJAK
Vaadin - thinking of U and I - by Peter Lehto
Vaadin (vaadin.com) je Java framework za rapidni razvoj visoko interaktivnih HTML5 web aplikacija na poslužitelju. On sakriva tehnologije prijenosa dokumenata i stanja (DOM, AJAX, JSON) i omogućuje da web aplikacije budu razvijene u Javi prema metafori desktop aplikacija. Vaadin iskorištava svu moć GWT-a, Java-to-JavaScript prevoditelja, pa je moguće razviti cijeli stog web aplikacija i nove komponente na strani klijenta bez napuštanja Java okruženja. Brzi razvoj olakšava veliki izbor komponenata i trenutni deployment na poslužitelj. Vaadin aplikacije koje se izvode na poslužitelju pružaju veliko povećanje sigurnosti, kao i povezivanje Vaadin sučelja na bilo koji postojeći backend sustav. U predavanju bit će prikazan pregled Vaadin 7.1 mogučnosti, pogled na Vaadin arhitekturu i što se zapravo događa iza kulisa frameworka, a bit će raspravljene i značajke koje donosi Vaadin 7.2.
U Srcu razvijamo, održavamo i dajemo podršku za veliki broj sustava, gdje se svaki sastoji od niza servisa i aplikacija, broj aktivnih korisnika ide i preko 150.000 (uglavnom iz akademske zajednice), a ti sustavi rade na raznim platformama (Java, .Net, PHP, ...). Potrebe i želje korisnika za doradama, nadogradnjama i proširenjima sustava konstantno rastu kako rastu i sami sustavi. Kako bi i dalje uspješno pratili potrebe korisnika smatramo da nam treba Platform as a service (PaaS) kao temelj za daljnji razvoj i održavanje naših sustava. U prezentaciji je prezentirano u kojim segmentima rada nam PaaS može pomoći.
Panel diskusija - usporedba Web frameworka (IT Showoff)IT Showoff
Kod izrade web projekta postoje razne mogućnosti odabira frameworka na kojem će se projekt bazirati. Mi smo odlučili izdvojili pet glavnih frameworka te oko njih izgraditi kvalitetnu panel diskusiju.
Vjerujemo da većina developera koji će sudjelovati na IT Showoff konferenciji su barem u jednom trenutku svoje karijere radili web site ili web aplikaciju na nekom od odabranih frameworka. Isto tako, vjerojatnost da su koristili, i temeljito isprobali sve njih, je vrlo mala. Zato nam je cilj putem kompetentnih stručnjaka pokušati publici prenijeti iskustva vezana za pojedine tehnologije, njihova osnovna svojstva, prednosti i mane.
Panelisti su svi od reda pravi majstori svog zanata, te će usporedno proći važna svojstva svakog frameworka i usporediti ga s drugima.
Need for seamless communication between web browser and back-end server has resulted in technology called WebSocket. In this presentation we will see what is WebSocket and how can we leverage Spring framework and STOMP (Streaming Text Oriented Messaging Protocol) to display GPS coordinates on OpenLayers map in real time.
Predavanje sa JavaCro14 koje na primjeru CROZ-ovog proizvoda LikeMyIdea pokazuje automatizaciju release-a i instalacije. Korišteni alati i jezici: Maven, Groovy, Ant,
Jython, Shell (Batch).
Konferencija Javantura Zagreb 2014 by HUJAK
Java 8 JavaScript – Nashorn by Miroslav Rešetar
Java 8 donosi podršku za scripting u JavaScriptu. Engine se zove Nashorn (openjdk.java.net/projects/nashorn) i nasljednik je popularnog Rhino engine-a. Za razliku od starijeg Rhino-a, Nashorn koristi invoke dynamic Java 7 mehanizam što mu omogućava puno bolje performanse. Nashorn je moderni engine, usklađen sa ECMAScript 5.1 standardom. To omogućava uporabu popularnih JavaScript biblioteka iz Java programa što otvara neke sasvim nove načine kako implementiramo naša Java rješenja. Prezentacija ima za cilj upoznati Java developera s mogućnostima integracije JavaScript-a u buduća Java 8 rješenja.
Konferencija Javantura Zagreb 2014 by HUJAK
Zašto je Google Dart spas za Java programere? by Željko Kunica
Java programeri su naučili na “lijep” i strukturiran jezik. Zato im često JavaScript zadaje glavobolje. Ali JavaScript je sveprisutan i svakim danom sve popularniji. Također novi trendovi nameću “pametnije” web aplikacije što nameće još više JavaScripta. Dartlang (www.dartlang.org) je rješenje koje Java developeri razumiju i cijene! Struktura jezika vrlo je prepoznatljiva, a neke karakteristike bi bilo lijepo vidjeti u budućim verzijama Jave. Predavanje je uvod u izradu JavaScript aplikacija korištenjem Darta.
Konferencija Javantura Zagreb 2014 by HUJAK
All your base are belong to us – pristup bazama podataka na Groovy način by Dinko Srkoč
Službeni Oracleov JDBC tutorijal počinje riječima: “JDBC API je osmišljen kako bi držao jednostavne stvari jednostavnim. To znači da JDBC čini svakodnevni rad s bazama podataka laganim”. Je li moguće taj lagani rad još malo olakšati? Na predavanju ćemo vidjeti kakvu podršku radu s bazama podataka pruža Groovy (groovy.codehaus.org), popularni programski jezik za JVM.
Konferencija Javantura Zagreb 2014 by HUJAK
Izgradnja otvorene i besplatne EU platforme za razvoj ICT usluga za starije osobe by Andrej Grgurić
U siječnju 2014., nakon četiri godine intenzivnog rada europski istraživački projekt universAAL (www.universaal.org), sufinanciran od strane Europske Unije, uspješno je priveden kraju. Glavni rezultat projekta je, uz otvorene alate (pretezno razvijene u obliku otvorenih Eclipse plug-inova), besplatna i otvorena (ASL2.0) platforma, bazirana na OSGi tehnologiji, koja olakšava tehničku implementaciju i djeluje kao otvoren i zajednički temelj za programere.
Konferencija Javantura Zagreb 2014 by HUJAK
What’s new in WildFly 8 by Tomaž Cerar
WildFly 8 (née JBoss Application Server, www.wildfly.org) je Red Hat-ov open source Java EE 7 compliant application server. Sadrži robusnu implementaciju za WebSocket, Batch, JSON, Concurrency, JMS2, JAX-RS 2, CDI 1.1 i sve Java EE 7 tehnologije. Ispod je novi cutting-edge web server koji je u WildFly 8 dizajniran za maksimalni throughput i skalabilnost, uključivo okolinu s više od milijun konekcija. Broj portova je reduciran korištenjem multipleksiranja HTTP-a pomoću HTTP Upgrade. Role Based Access Control podržava organizacije s odvojenim odgovornosti i ograničenja za upravljanje. Uloge predstavljaju različite skupove dozvola, kao što su izvođenja runtime operacija, područja konfiguracije koja se mogu čitati ili pisati, te sposobnost za audit promjena i upravljanje korisnicima. Osim toga, novi ograničeni audit log može biti omogućen zajedno s mogućnosti za offload na sigurni syslog poslužitelj. WildFly također pruža “core” distribuciju koja je idealna za autore frameworka koji žele izgraditi vlastiti application runtime pomoću snažne WildFly 8 arhitekture. NetBeans, IntelliJ i Eclipse već omogućavaju da se WildFly koristi za razvoj, deployment i debugging. Ovo predavanje će dati pregled svih tih mogućnosti pomoću nekoliko live demo-a.
Konferencija Javantura Zagreb 2014 by HUJAK
Sencha Touch – napredni front-end za mobilne klijente by Denis Jajčević
Izrada bogatog sučelja za mobilnu platformu nikad nije bila jednostavnija i zabavnija. Programski okvir Sencha Touch (www.sencha.com/products/touch) omogućuje implementaciju složenih aplikacija temeljnih na HTML 5 standardu i izvršavanje u web i/ili native načinu rada. Web ili native aplikacija? Zašto razbijati glavu kad možete imati oboje odjednom. U pola sata doznajte glavne pikanterije vezane za Sencha Touch te svjedočite izradi jedne mini aplikacije i demonstraciji iste na mobilnom uređaju.
Konferencija Javantura Zagreb 2014 by HUJAK
Vaadin - thinking of U and I - by Peter Lehto
Vaadin (vaadin.com) je Java framework za rapidni razvoj visoko interaktivnih HTML5 web aplikacija na poslužitelju. On sakriva tehnologije prijenosa dokumenata i stanja (DOM, AJAX, JSON) i omogućuje da web aplikacije budu razvijene u Javi prema metafori desktop aplikacija. Vaadin iskorištava svu moć GWT-a, Java-to-JavaScript prevoditelja, pa je moguće razviti cijeli stog web aplikacija i nove komponente na strani klijenta bez napuštanja Java okruženja. Brzi razvoj olakšava veliki izbor komponenata i trenutni deployment na poslužitelj. Vaadin aplikacije koje se izvode na poslužitelju pružaju veliko povećanje sigurnosti, kao i povezivanje Vaadin sučelja na bilo koji postojeći backend sustav. U predavanju bit će prikazan pregled Vaadin 7.1 mogučnosti, pogled na Vaadin arhitekturu i što se zapravo događa iza kulisa frameworka, a bit će raspravljene i značajke koje donosi Vaadin 7.2.
U Srcu razvijamo, održavamo i dajemo podršku za veliki broj sustava, gdje se svaki sastoji od niza servisa i aplikacija, broj aktivnih korisnika ide i preko 150.000 (uglavnom iz akademske zajednice), a ti sustavi rade na raznim platformama (Java, .Net, PHP, ...). Potrebe i želje korisnika za doradama, nadogradnjama i proširenjima sustava konstantno rastu kako rastu i sami sustavi. Kako bi i dalje uspješno pratili potrebe korisnika smatramo da nam treba Platform as a service (PaaS) kao temelj za daljnji razvoj i održavanje naših sustava. U prezentaciji je prezentirano u kojim segmentima rada nam PaaS može pomoći.
[TVZ računarstvo] Dinamičke web aplikacije, predavanje 11. Stipe Predanic
Predavanje iz Dinamičkih web aplikacija, 11. predavanje
Video: https://www.youtube.com/watch?v=0othfQg9AP8&list=PLYqeapOP_CtS0kbdbo_GXFgnS81JGAd8L&index=12
Tema: Izrada web aplikacija za mobilne uređaje
Datum snimanja: 19.5.2016
Razvoj aplikacija za Google Chromecast - Branimir Conjar, Matija Kovačić, Kre...Five
Uz Google Chromecast korisnici na jednostavan način mogu uživati u online glazbi i filmovima na svom TV-u. U predavanju će najprije biti objašnjeno što je Google Chromecast i kako funkcionira te biti navedene prednosti i nedostaci u usporedbi sa sličnim proizvodima. Nakon uvoda slijedi dio o samom razvoju aplikacija u kojem će se proći kroz postavljanje okoline za razvoj aplikacija, objasniti životni vijek aplikacije koja podržava Chromecast i ukratko proći kroz stvari bitne za razvoj Android i iOS mobilnih aplikacija.
Predavači: Branimir Conjar, Matija Kovačić, Krešimir Mišura
This is a presentation given at www.jobfair.ba, about different types of carreers in an ICT company. It's introductory level, designed for students looking for basic guidance.
Vert.x (vertx.io) je relativno novi, asinkroni, poliglotni framework uvjetovan događajima te baziran na JVM-u, a svojevremeno jedan od najpraćenijih projekata na GitHubu. Također, bio je i razlog ozbiljnih napetosti između Red Hata i VMwarea, koje su umalo zaustavile projekt. Cilj ovog predavanja je predstaviti Vert.x svijet, pokazati osnove, te ponuditi najbolja iskustva, prakse i preporuke pri njegovoj uporabi.
Javantura, Zagreb, 2014.
GraphQL & Laravel - Efikasni API servisiPedja Jevtic
Sa najnovijom generacijom pametnih tehnologija, sve više i više uredjaja ima potrebu za podacima neophodnim za njihovu osnovnu funkcionalnost. Pametni satovi, frižideri, garažna vrata su samo neki od njih.
Razvoj i održavanje API backend aplikacije za usluživanje nekoliko generacija uređaja i njihovih specifičnih potreba postalo je veoma teško i skupo.
GraphQL pruža alternativu i promenu u paradigmi izmeštanjem odgovornosti za strukturu podataka u API pozivima ka samom klijentu. Ovo obezbedjuje optimizaciju u prenosu podataka isključujući nepotrebne podatke i u isto vreme, smanjuje kompleksnost API poziva i metoda što ujedno ubrzava i olakšava održavanje istih.
Javantura v7 - Behaviour Driven Development with Cucumber - Ivan Lozić
Behaviour-Driven Development (or TDD for that matter) is one of the pillars of Software Quality. While it is very important, not many of us do it or do not have the support from the management to invest time in it. Commonly, it has been described as a waste of time or an intangible effort conflicting with the deadlines. In this presentation, I would like to share my experiences with the Behaviour-Driven Development, the effects of not having it at all, as well as the outcomes of working on projects where a significant amount of behavior is automated with Cucumber tool.
By attending this session you will be able to learn what BDD and Cucumber are, how to build Cucumber tests and hear about first-hand experiences around automating specifications.
Javantura v7 - Learning to Scale Yourself: The Journey from Coder to Leader - Daniel Strmečki
Your success depends on others, a 1-man army can only achieve so much. The only way to progress from coder to leader is to learn how to scale yourself. Nowadays, you can become a Senior Developer with just a few years of experience. After that, there are many roads and possibilities you can take. Whether you decide for a developer, architect, manager or a mixed career, at one point, you will need to become a leader. In the first chapter of the lecture we will start a discussion on how to get there. Since your time is limited, you need to mentor, coach, motivate and engage others. Start with making a stable foundation, like setting up a proper onboarding process. If you help people around you, they will for sure talk about it, and your manager will hear it. Also, demonstrate ability in everyday work: coding, project management, client-focus, communication and care about others. Always stick to your values and keep high standards. In the second chapter we will discuss the challenges that turn up once you get there. At that point you will deal with people more than technology. You will need to step away from coding for meetings very often. Interruptions will happen every day and it we be very hard to maintain “the flow”. You will need to learn how to delegate and drive topics without implementing them yourself. Visit the lecture to find out some techniques for dealing with interruptions, meetings, prioritization, people and their motivation.
The State of Java and Software Development in Croatia (Community Keynote) by dr. sc. Branko Mihaljević, Aleksander Radovan, and doc. dr. sc.Martin Žagar at the 8th International Java Conference in Croatia - JavaCro '19
In this community keynote by HUJAK, we want to present and compare the current state of Java and related software development in Croatia, our part of Europe, and worldwide. Therefore, we will start by discussing the latest global trends in software development and what does it mean in our rapidly evolving world full of new technologies based on IoT, Machine Learning and AI, Blockchain, Virtual Reality, and Robotics, to which we must respond to ASAP. Of course, when addressing those contemporary technology trends, we will focus mostly on our country and the region. In the other part, we will discuss the major events in the world of Java that happened in the last few years since Java 8 and Java 9/10/11 were widely adopted. We will see what Java 11 and 12 brought us and what developers are mostly using (or not) and why, as well as what will be there interesting in Java 13 and beyond, including new features from incubator projects Amber and Valhalla, and new ideas from projects Loom, Panama, Skara, and Metropolis. Once again, we are going to take a typical developer’s point of view on software development challenges in this part of Europe, and we will discuss the future of our software developers from the perspective of how to become one (educational institutions and practice) and how to get/earn a good job (local employers and the job market). We intend to close this keynote with details of (y)our favorite Java community aka HUJAK.
This is a story about our exploration of aspects of Polyglot Programming and Memory Management in a (J)VM. The first part is focused on our research of performance of GraalVM, an open-source, high-performance polyglot virtual machine written in Java, as well as an accompanying Graal compiler, supporting JIT and AOT compilation, with outstanding inlining and escape analysis algorithms. In the second part we are dealing with aspects of automatic memory management and garbage collection analysis in an existing JVM, thus comparing the most commonly used (older) garbage collectors such as Serial, Parallel (Old), CMS, and G1, with contemporary and default Parallel Full G1, and new experimental ZGC and Shenandoah, across several JDKs using a common benchmark suite.
We develop an application prototype with Java and Hyperledger Fabric to facilitate people in the company to sell domestic goods to each other using marketplace application. Java and SmartGWT were used to develop UI, part of data were stored in the relational DBMS, while orders and balances were stored on the blockchain, specifically Hyperledger Fabric.
Bugs happen! It is a developers life fact. Let'e explore one way we the developers can help customers to make batter bug reports.
During lifecycle of systems and applications that support complex and long running business processes it is often the challenge to get accurate bug report. In this talk we will present one custom developed solution that we used on several our projects as well as our experiences in using this approach.
With several years of remote work experience in an agile environment, working from beautiful Zagreb for clients abroad and trying out different distributed team setups, we will share the motivation and philosophy behind it. We will also cover best practices, challenges and general tips & tricks in different segments such as work organisation, technical requirements, social requirements, methodology etc.
This talk is recommended for all developers who want to start working remotely or improve the way they already do it, employers who consider establishing distributed teams inside of their companies and clients searching for partners who have distributed teams.
While Kotlin is designed to work well with Java by default, we'll still need to some work to get clean and idiomatic code in both languages.
In this talk we'll cover both how to make your Java code more Kotlin friendly and how to make your Kotlin code nicer to use from Java.
HATEOAS is without a doubt, the least understood pillar of REST. It seems difficult to implement and shows no immediate reward for it, so many developers don't even bother. The truth is, it just has some bad PR and a horrible acronym that sounds like a breakfast cereal. Join me to take a look at the theory and practice behind using hypermedia by examining both web services and web clients. Along the way we will look at some exciting upcoming Spring HATEOAS features, like the Affordances API, and talk about what the future holds for hypermedia in your web services.
In the last few years we witnessed big changes in how we actually build, deploy and run applications with the rise of Microservices Architectures, Containers, Kubernetes, and DevOps practices. Those amazing improvements need a cultural shift
based on continuous improvement and learning in order to deliver business value and delight our customers.
But how could a team achieve this ambitious goal?
This talk will introduce the attendees to a revolutionary open source project, called Jenkins X, which attempts to achieve this goal. It is basically a reimagined CI/CD Ecosystem for Kubernetes built around Jenkins, either with a classical master or leveraging knative serverless functions.
After this talk, attendees will be able to develop effectively in a cloud native way in any language on any kubernetes cluster!
Let's forget Scrum and be truly Agile! Finally!
Individual microservices are relatively easy to develop, but managing a distributed system composed of microservices is never a simple task. Kubernetes helps, but it falls short of providing everything such a system needs. This is where the Istio Service Mesh comes in.
Running microservices in production, you'll soon realize you want things like traffic splitting, automatic connection retries, timeouts and failovers, secure communication and authentication between your services, distributed metrics, tracing and logging. By introducing Istio into your architecture, you get all of that and more. And you get most of it without changing your code at all.
In this talk, you'll see a demonstration of Istio in action and learn about the tricks that make its magic possible.
Do your customers keep complaining about bugs in your software application? Does it take you too much time to implement new features? If yes, then you probably have issues with the quality of your application. Join me to find out what practical steps you can follow to improve the quality of your application!
We are used to give commands to our computers with keyboard - by natural language recognition improvement, services around this technology stack become better and better each day. Using Google Home mini device, IFTTT service and java web socket netty server hosted on red hat Openshift platform, control your loving private computer terminal or any application from distance with your bare voice.
Quality control during apps development demands continuous testing. Selenium, Cucumber, Jenikns and Docker can help us in that process. Hrvoje will share his experience about that subject.
Bugs are a daily cause of stress in our work as Java developers. Those pesky things can hide behind core concepts in Java 9 and 10—there is no way out of this. If we don’t keep up to date with new Java versions, bugs will take over our projects. But can we have fun hunting them? You bet! How about solving a series of Java puzzles as a way to master concepts and save a lot of time finding those tricky bugs? In this session, attendees can help the bug hunters solve fun Java challenges, gain a clear understanding of what causes the most-stressful bugs—and have fun eliminating them from projects.
In H2020 EU project symbIoTe (symbiosis of smart objects across IoT environments) we have been building IoT middleware based on microservices programmed in Java with Spring Boot and Spring Cloud components. Here I will present our experiences in developing such services in distributed team across EU and employed by 15 organizations. I will present organizational and technical advantages and drawbacks as well as our choices in building such system.
More from HUJAK - Hrvatska udruga Java korisnika / Croatian Java User Association (20)
2. SADRŽAJ
SADRŽAJ PREDAVANJA
UVOD
1. Sedam IT
2. Demistifikacija teme
3. Klijentske aplikacije
4. Rich Internet Application - RIA
5. Java i RIA
6. Ostale RIA tehnologije
7. HTML5 vs JavaFX
8. Security issues
9. Q&A
3. TKO SMO
SEDAM IT
MISIJA
Radom
stvaramo vrijednosti koje ostavljamo u naslijeđe
VIZIJA
Postati
vodeći isporučitelj pametnih ICT rješenja koja korisnicima
bitno smanjuju troškove, povećavaju prihode i doprinose poboljšanju
efikasnosti poslovnih procesa
NAŠE VRIJEDNOSTI
Zadovoljstvo korisnika: korisnik
nam je na prvom mjestu
Znanje: imamo opsežno znanje, kontinuirano učimo i razvijamo se
Kvaliteta: stalno poboljšavamo kvalitetu svojih proizvoda i usluga
Učinkovitost: poštujemo rokove i pravila rada, učinkovito i
odgovorno djelujemo
4. NAŠI RESURSI
LJUDSKI RESURSI
Ukupno 70+ zaposlenika
Prosječno iskustvo u IT sektoru
Prosječna starost
Visoko obrazovanih
Certifikata i IT vještina
Znanja:
> 9 godina
< 35 godina
> 90%
> 250
–
Najprestižniji IT certifikati (CISCO, CA, MICROSOFT, INFOVISTA, F5, SOURCEFIRE, FLUKE, …)
–
Upravljanje projektima (PMP)
–
Upravljanje kvalitetom (EOQ Quality System Managment)
7. O NAMA
DRUGI O NAMA
2008/9/10/11/12
Cisco® Master Unified Communications
IDC Adriatics TOP CRM Solution Provider
Deloitte Technology Fast 50/Central Europe
Deloitte Technology Fast 500/EMEA
Infotrend TOP 100 Hrvatskih IT poduzeća
Business.hr Hrvatske Gazele (TOP Fast Growth)
–
–
–
–
–
–
1. u JI Europi
Rang 1
Rang 25
Rang 275
Rang 29
Rang 119
8. Demistifikacija
Demistifikacija teme
Java na klijentskoj strani – ima li budućnosti ?
Java:
–
–
Klijentska strana
–
–
–
–
Oracle Java (6/7/8)
SE, EE
Aplikacije koje se ne izvršavaju na poslužitelju
Izvršavanje na klijentskom računalu
– sa i bez instalacije
Aplikacije na mobilnim uređajima nisu u razmatrane
Naglasak na RIA
Budućnost
–
–
–
Sve ono što nas čeka
Praćenje trendova
Odgovori na zahtjeve (tržišta/tehnologije itd.)
9. Klijentske aplikacije
Klijentske aplikacije
(kojima se bavimo u ovom predavanju)
Aplikacije koje se izvršavaju na klijentskom računalu
Dio klijent – server arhitekture
Pokretanje aplikacija kroz web preglednik
–
sa ili bez korištenja određenog plugin-a
RIA aplikacije
10. RIA
Rich Internet Applications
RIA
–
–
–
–
–
Rich client
Web aplikacije sa karakteristikama desktop aplikacija
Funkcionalnosti desktop aplikacija na Internetu
look & feel Internet aplikacija jednak desktop aplikacijama
neovisnost o web pregledniku i platformi
Malo u prošlost …
davne 2002. godine
–
–
Macromedia Inc (danas Adobe)
technology that can integrate “best of the web” with “best of the desktop”.
11. RIA
RIA prednosti
Prednosti (pred tradicionalnim web aplikacijama)
–
–
–
–
–
Responsive
Interactive
Faster processing
Decongests traffic on server
Enhanced Customer Experience
Prednosti (pred tradicionalnim desktop aplikacijama)
–
–
–
Accessibility to Web
Rich User (Friendly) Interface
Enhanced User experience
12. JAVA & RIA
Java & RIA
Povijest
–
Java od početaka ima podršku za RIA
– druge tehnologije nemaju
Applet i AWT Applet (JDK 1.0)
Swing (JDK 1.2)
JavaFX (2008. godina)
–
–
Zaseban library
Verzije 1.0 – 2.2
Java FX 3.0
–
–
Java 8 donosi Java FX kao dio JDK/JRE
Verzioniranje se izjednačava s Javom (8.x)
13. JAVA & RIA
JavaFX
JavaFX Script
–
–
JavaFX 1.0
–
JavaFX Script
JavaFX 2.0 >
–
2008. g.
< JavaFX 2.0
–
nastalo na temelju F3 (Form follows functions) Chris Oliver
2006-2007 godina
Native Java library
Dvorana B 13:05 – 13:35
–
Je li JavaFX pravi nasljednik Swinga?
15. Pitanje?
Pitanje
Razvijate enterprise sustav (npr. software za banku):
–
–
–
–
Klijent server arhitektura
Velika količina podataka
Rich client
Korisničko sučelje:
– bogato, brzo, interaktivno
– …
Što odabrati ?
– Serverska strana : Java tehnologija (naravno )
– Klijentska strana ?
17. HTML5
HTML 5
Prednosti:
–
–
–
–
–
W3C standard
Tehnologija budućnosti (… barem svi tako tvrde…)
Nije potreban plugin
(Biti će) dostupan na svakom (podržanom) web pregledniku
Mnoštvo gotovih widget-a
– Out-of-the-box rješenja
– html5demos.com
Nedostatci
–
–
–
–
HTML + JavaScript umjesto „programskog jezika”
Specifikacija se očekuje krajem 2014 (finalna verzija)
Upitno koliko web preglednika će stvarno podržavati
cross-browser development
18. JavaFX
JavaFX
Prednosti:
– Korištenje Java API-a
– Olakšana izrada RIA za Java developere
– Jedinstveno razvojno okruženje (backend i frontend)
– Mogućnosti: debug i refactor
– Mogućnost korištenja FXML-a
– Odvajanje UI dijela od logike
– Podrška za CSS
– Integracija HTML i JavaScript dijelova
– Integracija (postojećih) Swing aplikacija
– Različite mogućnosti pokretanja iste JavaFX aplikacije
– standalone, web, Java Web start
– Velik broj gotovih komponenti
– JavaFX Ensemble
– Nije potreban cross-browser development
22. Security
Security issues
exploits
– Iskorištavaju nedostatke cross-platform runtime sustava
– JRE, ali i ostalih (Flashfake malware za Adobe Player)
Java 7
– 2 zero-day vulnerabilities
Department of Homeland Security (DHS)
– …has a vital mission: to secure the nation from the many threats we face…
– siječanj 2013 :
– Java 7 fails to restrict access to privileged code (http://www.kb.cert.org/vuls/id/625617)
– Unless it is absolutely necessary to run Java in Web browsers, disable it
... even after updating to 7u11
23. Security
Security issues
Oracle :
– siječanj 2014:
– Oracle Critical Patch Update Advisory - January 2014
(http://www.oracle.com/technetwork/topics/security/cpujan2014-1972949.html)
– 147 security patch (36 for Java)
Rezultat:
– Nepovjerenje prema Java RIA
– bez obzira na certifikat
24. Security
More than 50% of enterprise application are written in Java
3. 2013 - http://www.bankingtech.com/71961/java-in-the-cloud-for-financial-services/