print('WS7');Dobri developerski duh
::Predavanja
Predavanja na Web::Strategiji 7
Predavanja su ovdje posložena redosljednom kojim su se prijavljivali predavači, dok točan redosljed predavanja na konferenciji je vidljiv u programu Web::Strategije 7.
Razvojni proces u web developmentu
Predavač: Saša Šarunić
Bilo da ste tvrtka koja ima samo jednog zaposlenog ili tvrtka od više stotina zaposlenika, vjerojatno je da ćete kad-tad morati uvesti proces u razvoj softvera. Proces je potreban kako biste izbjegli kaos koji nastaje kad se on prepusti slučaju.
U ovom predavanju pričat ćemo o svojem iskustvu, problemima na koje smo naišli te rješenjima koja se koriste u tvrtki Pet minuta. Razvojni proces u tvrtki je morao pratiti brzi rast s dvoje na dvadeset dvoje zaposlenika. Situaciju dodatno komplicira činjenica što softver razvijaju za sebe i za druge tvrtke. Pri tome koriste različite razvojne alate i različite programske jezike. U tvrtki se programira za različite platforme i operacijske sustave. Programira se za web, desktop, ali i za mobitele. U tom razvoju često koriste vanjske suradnike, a programiraju i u sastavu dislociranih multinacionalnih timova koji se protežu u više vremenskih zona. Pa kako sve to uskladiti u proces?
Na predavanju ću biti predstavljena njihova organizacija procesa. Biti će riječi o razvojnom procesu kojeg su prije koristili, o procesu kojeg trenutno koriste, te njegovim prednostima i manama. Educirati će Vas i o upotrebi alata za upravljanjem izvornim kodom (eng. source control). Navedeni će biti i odlični alati za praćenje problema (eng. bug/issue tracking). Također, biti će riječi i o prednostima i manama hostanih alata, te će sudionici Web::Strategije dobiti pregled vrijednih alata za vođenje projektima (eng. project management). Prezentacija će sadržavati i priču o dokumentaciji i upravljanju dokumentima (eng. document management).
MySQL trikovi koje mora znati svaki web developer
Predavač: Gordan Orlić
Sama činjenica da MySQL bazu podataka koristi Facebook dovoljno govori o njenoj snazi, mogućnostima i činjenici da se može nositi i sa najzahtjevnijim zadacima. MySQL je u izrazito kratkom vremenu narastao od baze podataka "za male projekte" koja je imala tek manji niz funkcija i mogućnosti na prilično kompleksnu relacijsku bazu koja kako performansama tako i mogućnostima ne zaostaje za puno većim i mnogo skupljim proizvodima. Usporedno s razvojem MySQL-a rasla je i kompleksnost (i glad) web aplikacija koje danas izvlače maksimum iz jezika u kojima su pisane i baza koje upotrebljavaju za pohranu podataka.
Kompleksnost rada s velikim bazama dodatno je povećana činjenicom da upit (query) može bez problema raditi na tablici koja ima tisuću redaka, a istovremeno biti gotovo neupotrebljiv kada se broj zapisa poveća na nekoliko stotina tisuća. Detaljno testiranje upita je nužno, ali ujedno i kompleksno, dugotrajno i samim time skupo.
Upravo takvim, problematičnim, upitima će se baviti Gordanovo predavanje te fokusirati na "sitnice" i savjete koji su trivijalni kada vam netko ukaže na njih, ali zadaju prave glavobolje ako ih ne znate. Na predavanju ćete doznati:
- kako optimizirati dohvaćanje slučajnog retka iz tablice,
- kako se obračunati sa promjenom dizajna tablice koja ima nekoliko desetaka gigabajta i
- kako optimizirati indekse na velikim tablicama.
Demonstrirati ćemo i upotrebu naredbi za mjerenje "cijene" upita pomoću koje se jednostavnije optimiziraju i najkompleksniji upiti.
Ponavljate li iste (sigurnosne) greške?
Predavač: Vlatko Košturjak
Svjedoci smo doba u kojemu se gotovo svi podaci postavljaju na web: bilo to kao internu ili Internet dostupnost. Kako raste takva opća prisutnost nas (sveprisutnost) i naših osjetljivih podataka na Internetu i web-u, tako raste i naša svijest o potrebnim zaštitama istih.
Na predavanju će Vlatko educirati web developere na Web::Strategiji o najčešćim sigurnosnim greškama koje čine razvijatelji weba (naglasak na web programere) iz iskustva penetracijskih testiranja na različitim web aplikacijama i platformama kod nas i u svijetu.
I na kraju, razlog zašto da NIKAKO NE propustite Vlatkovo predavanje: S obzirom da mudre osobe uče na tuđim greškama, a ne na vlastitima - poslušajte ovo predavanje da ne ponovite iste greške.
Ne budite duh! Budite žirafa!
Predavač: Tomislav Bilić
Tema ove Web::Strategije je "developerski duh". Svatko od nas tko je
sudionik, većim ili manjim dijelom je u developerskim vodama. U
današnje recesijsko vrijeme sve je teže naći posao te je učinkovitost
vlastite prezentacije u toj mjeri važnija.
Imati "dobri developerski duh" je nužnost kako biste se izgradili u
dobrog developera. No kad jednom i postanete dobar developer, izazov
predstavlja prodaja vašeg znanja. Developeri često ne vole
raditi prodaju jer su razmišljali tek o tradicionalnim metodama. Ovo će
predavanje pokušati proširiti vidike i prezentirati najbolje
najučinkovitije načine prodaje.
U čemu ste najbolji? Ova tema će se objasniti nužnosti specijalizacije za područje u kojem ste bolji od ostalih i koje će biti osnova Vaše ponude.
Metode za uspješnu prodaju. BLOG.
Imati statičnu stranicu tvrtke je prošlost! Blog na kojem ćete pisati o vašim
izazovima u radu te rješenjima do kojih ste došli privlačit će ljude
sličnog interesa. Većina će biti web developeri kao i vi, no jedan dio će
biti potencijalni klijenti koji će Vam se javljati s upitima za ponude.
Kombinacija vlastitog weba, bloga, LinkedIn-a, Twitter-a, job portala,
stručnih foruma i ostalih metoda je najbolji put za stvaranje
strahovitog marketinškog alata koji generira poslove uz umjereno malu
aktivnost i neznatne troškove.
Što kad više sami ne možete? Kad opseg posla postane prevelik, vrijeme je za razvoj. On može teći u nekoliko smjerova, o čemu će Tomislav educirati sve prisutne na predavanju.
Zašto treba biti žirafa? Žirafa je visoka. Svi je vide. Uzdignuta je iznad ostalih, elegantna, može pojesti najbolje lišće. Pored svega, nemamo osjećaj kako joj je život težak.
Web development - iz perspektive naručitelja
Predavač: Lovrenco Vladislavić
Predavanje će proći kroz kratki opis povijesti razvoja turističke agencije (ali to može biti bilo koja druga mala tvrtka ili obrt) iz aspekta donošenja poslovnih odluka vezano uz informatički razvoj. Predavanje će biti korisno svim malim obrtnicima te malim tvrtkama da nauče na koju problematiku nailaze u suradnji sa web development tvrtkama.
Dakle, na samom početku imali su HTML stranice bez velikih ulaganja. Dakle, njihovo vlastito rješenje. U drugoj fazi - također HTML stranice, no dizajnerski bolje riješene uz angažman vanjske tvrtke. U trećoj fazi - dolazi do izrada baze podataka i dinamičkih web stranica uz angažman njihovog vlastitog programera i "freelance" dizajnera. Također, tu su imali i izvedbu vlastitog rezervacijskog sustava. U četvrtoj fazi - odlučili su se za kompletan redizajn poslovnog sustava, frontend i backend web aplikacija, izradu novog web dizajna i CMS-a uz angažman vanjske programersko-dizajnerske tvrtke. Ovdje su nastali problemi tijekom suradnje u izradi te održavanju i proširivanju sustava.
I na kraju dolazi - peta faza - pronalazak i angažman druge programerske tvrtke koja preuzima postojeći sustav i nadograđuje ga prema zahtjevima agencije, te pozitivna iskustva u suradnji i pristupu problemu. Kao naručitelj web developmenta, ne morate prolaziti kroz svih pet faza - naučite kroz ovo predavanje kada i kako se usmjeriti odmah na petu fazu.
Licenciranje komercijalnog i open source softvera
Predavač: Mladen Vukmir
Na koji je način najbolje zaštititi i komercijalizirati softver koji ste razvili u Vašoj tvrtki? Prezentacija se fokusira na komparativne praktične aspekte obaju predmetnih modela licenciranja, uključujući kako osnovne teorijske i pravne postavke, tako i gospodarske učinke, prednosti i reperkusije komercijalnih i otvorenih licenci.
Ako ste web development tvrtka, nikako ne propustite ovo predavanje jer Vam može pomoći u ključnim stvarima u budućem poslovanju.
Osvježenje web platforme - Silverlight
Predavač: Tomislav Tipurić
Silverlight je tehnologija novijeg datuma koja na iznimno jednostavan način omogućuje izradu bogatih interaktivnih aplikacija (RIA) koje se vrte u korisnikovom web pregledniku ili izvan njega. Vrhunska korisnička iskustva koja se mogu izvesti u Silverlightu osvježit će Vaše web site-ove i na taj način privući nove korisnike te zadržati postojeće. Silverlight je zapravo dobro upakirani .NET koji teži manje od 5 MB što Vam omogućuje iskorištavanje postojećeg znanja u izradi modernih i uzbudljivih web iskustava.
Napomena: Pokroviteljsko predavanje.
Cloud Computing budućnost: Kako razumjeti i iskoristiti nove mogućnosti
Predavač: Ratko Mutavdžić
Na Web::Strategiji 7 ćete saznati što donosi cloud computing kojeg nude svi veliki i mali proizvođači softvera i usluga te kako razumjeti poslovne modele, mogućnosti ali i zamke cloud computing tehnologija. Cloud computing je ipak još u nastajanju i iako od njega dosta očekujemo, tehnologija je do sada pokaza da ima i nedostataka i ograničenja. Pored toga, pojedini scenariji traže drugačije modele slaganja cloud computinga, pa su se pojavile varijante kao što su public, private, dedicated, heterogeneous, itd... s specifičnim zahtjevima na aplikacije i infrastrukturu.
Isto tako, saznati ćete što sve developer i web developer mora znati da bi počeo programirati za oblak te koliko ga to košta, a što zauzvat može dobiti. Pored toga, koji alati su mu na raspolaganju, koliko brzo se može napraviti jednostavna cloud aplikacija itd. Kao primjere, proći ćemo tehnologije Amazona, Googlea, Microsofta, a i još po neku tek toliko da je sve transparentno i razumljivo. S obzirom na mogućnost, prezentirati će se i neki napredni koncepti koje donosi Microsoft Azure platforma, ali nećemo inzistirati na njima.
I naravno, Ratko sprema hrpu odgovora na isto toliko pitanja web developera. :)
Uvod u arhitekturu web aplikacija kroz MVC obrazac razvoja
Predavač: Hrvoje Hudoletnjak
MVC je design pattern, obrazac koji implementiraju gotovo svi programski alati za razvoj web aplikacija. Pojavom web 2.0 web stranica i migracijom poslovnih aplikacija na web okruženje, dolazi do potrebe što boljeg strukturiranja logike, algoritama i slojeva aplikacije. Desktop okruženje je zamjenio (stari) klijent-server model rada, sada na infrastrukturi interneta, ali s mogučnošću daleko većeg skaliranja broja korisnika. Takvi scenariji pred web programere postavljaju zadatak dobrog osmišljavanja arhitekture, radi što lakšeg i bržeg razvoja, ali i budućeg održavanja.
Web je u svojoj osnovi zamišljen kao prezentacijska okolina, bez potrebe za većom interakcijom korisnika. No, uvođenje složenijih aplikacija u MVC obrazac, koji je predstavljen davne 1979., savršeno odgovara takvom okruženju. Web programeru omogućava odvajanje logike aplikacije od izgleda ekrana, web stranica, kao i modela podataka. Ruby on Rails nativno koristi MVC, PHP ima CakePHP, Zend i još mnoge MVC radne okvire (eng. framework), Java ima puno implementacija MVC patterna, a i Microsoft je prije dvije godine predstavio svoju implementaciju kroz ASP.NET MVC framework. Prezentacija će osim predstavljanja MVC obrasca educirati sudionike Web::Strategije 7 i o samoj arhitekturi cijele aplikacije sljedeći domain driven načina razvoja poznatog iz enterprise svijeta, ali primjenjivog u gotovo svim projektima.
Google-ov programski jezik - Go
Predavač: Alan Pavičić
Objavom programskog jezika Go, Google je krajem prošle godine poprilično uzburkao programersku scenu.
- Radi li se zaista o novom revolucionarnom jeziku ili tek o još jednom pompoznom eksperimentu iz Googleplexa?
- Da li je Go evolucijski korak u razvoju C familije jezika, Erlang u ovčjem ruhu ili pak nešto sasvim novo i nezavisno?
- Što su nam ovog puta skuhali majstori Pike i Thompson?
Ovo su samo neka od pitanja na koja ćemo pokušati naći odgovor u prezentaciji novog Googleovog sistemskog jezika. Uz obavezan pregled osnovnih svojstava, u predavanju ćemo poseban naglasak staviti na gorutine i kanale - glavne adute ovog jezika, koji čine osnove gradivne elemente na kojima se bazira sav paralelizam u Go-u.
Ukoliko se i ne bavite sistemskim programiranjem, Go je zabavan i inovativan programski jezik vrijedan učenja.
Automatizacija testova za web aplikacije
Predavač: Željko Filipin
Watir se izgovara kao engl. water i skraćenica je od Web Application Testing in Ruby. To je skup alata koji se koriste za testiranje web aplikacija. Otvorenog je koda (engl. open source) i napisan u Ruby-ju. Postoje portovi na .NET (Watin) i Javu (Watij). Željko će kroz svoje predavanje detaljnije naučiti web programere kako s Watirom testirati web aplikacije na Windows, Mac i Linux operacijskim sustavima koristeći Microsoft Internet Explorer, Mozilla Firefox, Apple Safari i Google Chrome te kako izvršiti iste testove bez preglednika sa Celerity.
Ukratko - što sve radi Watir?
- Watir upravlja preglednicima (engl. browser).
- Može testirati aplikacije napisane u bilo kojem programskom jeziku (Ruby, .NET, Java, PHP...).
- Watir radi na Windows-ima, Mac OS-u i Linuksu, a može upravljati Internet Explorer-om, Firefox-om, Safarijem i Chrome-om. Podrška za Operu bi trebala doći uskoro.
Celerity, drugi alat za testiranje web aplikacija o kojem će Željko predavati, ima istu sintaksu kao i Watir, ali ne upravlja preglednikom, nego ga emulira. Time Celerity dobiva na brzini, ali zbog emulacije nije uvijek pouzdan. Za kojeg se odlučiti?
Šefe, smanjio sam web
Predavač: Stjepan Zlodi
Kako razvijati web aplikacije za pametne telefone koristeći JavaScript, CSS, HTML? Mobilni web još uvijek je u razdoblju dječjih bolesti, ali web preglednici u mobilnim uređajima su sve moćniji, njihov tržišni udio je sve veći i uskoro (već sada) nijedan web studio neće moći reći da ima kompletnu ponudu ukoliko u sklopu nje nema i razvoj mobilnog weba. Veliki broj različitih mobilnih platformi čini razvoj aplikacija za glavninu njih dosta zahtjevnim poslom pa je razvoj prilagođenih web aplikacija najbrži način za ostvarivanja prisutnosti na njima.
Zbog specifičnosti tih uređaja, razvoj web aplikacija zahtijeva drugačiji pristup nego kod klasičnih web aplikacija za osobna računala. Okvire određuju manji bandwidth i manje brzine, manji zasloni te drugačije prilike u kojima se nalazi korisnik uređaja. Posjetitelju treba nuditi samo najvažniji sadržaj u prilagođenoj formi. Kod projektiranja aplikacije treba predvidjeti situacije u kojima će ona posjetitelju biti korisna i ponuditi mu funkcionalnosti koje će ga motivirati na njezino korištenje.
Aplikacije je potrebno testirati u stvarnim uvjetima jer emulatori su obično puno brži nego stvarni uređaji, a sučelje i kontrole su potupno drugačije.
Poslovnjaci sa šiltericom
Predavač: Igor Vuksanović
Danas su poslovni korisnici neki sasvih drukčiji ljudi nego što su to bili prije 5 ili 10 godina. Kako se mijenjaju njihovi korisnici, tako se trebaju mijenjati i poslovni sustavi. I to vrlo brzo jer poslovnjaci sa šiltericom već napadaju vodeće pozicije u mnogim tvrtkama!
Tko su poslovnjaci sa šiltericom?
Poslovni ljudi odrasli na internetu i društvenim mrežama su novi korisnici poslovnih sustava. U privatnom životu oni su navikli na jednostavnost korištenja i minimalistički dizajn te dostupnost uvijek i svuda. Oni žele iskoristiti vrijeme dok čekaju na aerodromu ili u gužvi u prometu. Te iste karakteristike očekuju i od aplikacija koje koriste u svome poslovanju. Oni žele prave informacije i kada nose šiltericu odnosno kada nisu na poslu.
Prednosti i nedostatci koje nam donose poslovnjaci sa šiltericom
Novi poslovnjaci ne traže opsežnu obuku - njima je računalo sastavni dio privatnog života. Brzo uče i snalaze se bez puno pitanja, a najnovije tehnologije im nisu strane. Ležerniji su i ne vole birokraciju. S druge strane očekuju niže cijene jer im je u privatnom životu internet besplatan. Također očekuju minimalističko i jednostavno korisničko sučelje. Dođite na konferenciju i saznajte kako iskoristi prednosti koje nam ovi novi poslovni ljudi donose te kako minimalizirati njihove nedostatke.
Napomena: Nove poslovnjake ćete prepoznati po tome što nose šiltericu, a ne odijelo :) Višestruko su produktivniji, zahtjevniji, ali i pristupačniji. Pripremite se za novo doba poslovnih sustava!
|