Želite razgovarati o web tehnologijama?

siječanj 24, 2008 16:35 by luka

Nedavno smo unutar odjela kojeg radim u Microsoftu definirali specifičnu ponudu koja je zapravo primjenjiva na više strana, partnere, korisnike pa sve do najšire publike koja se bavi webom. Za početak, kratak uvod – moj odjel se bavi Microsoftovom platformom i aplikativnim rješenjima koja se na njoj mogu izgraditi. Zabavni dio posla i naša glavna zadaća je primjenjivati i promovirati sve nove i napredne tehnologije te objasniti kako se iste mogu iskoristiti u stvaranju drugačijih i inovativnih rješenja.

Osnovna ideja je za različite strane organizirati i održati specifične treninge i predavanja. Znači za pojedinu tvrtku, korisnika, partnera, odnosno zainteresiranu stranu održimo predavanja i razgovaramo o nekom specifičnom scenariju. I dok tako u ponudi imamo cijeli niz različitih tehnologija (od pregleda cjelokupne razvojne platforme, sigurnosti, interoperabilnosti, preko Visual Studija 2008, Software+Services modela, .NET Frameworka, Application Lifecycle Managementa, pa sve do Open XML-a i raznih drugih specifičnosti), mišljenja sam da bi sljedeća dva mogla biti zanimljiva široj publici.

Radi se o specifičnim predavanjima vezanim uz Microsoftove web tehnologije. Za njih sam osobno odgovoran  – eto zato i informacije na blogu. Ukoliko se vaša tvrtka bavi webom u bilo kojoj ulozi (od hostinga, preko dizajna, programiranja pa sve do razvoja složenih web rješenja i usluga) ili to tek planirate, možda je ovo prilika da se upoznate s Microsoftovom platformom, alatima i tehnologijama. O sebi mogu reći da sam pragmatičan i da me zanimaju realni scenariji, interoperabilnost i maksimalno iskorištavanje postojećih resursa, znanja, tehnologija, proizvoda, čega god. Nije na meni da bilo što od ovoga prodajem, tako da neću doći u ulozi trgovačkog putnika, već nekog s kim se možete posavjetovati oko razvoja korištenjem bilo kojeg dijela (ili cjelokupne) Microsoftove web platforme. U svakom slučaju, ukoliko vas zanima i želite porazgovarati s nekim o nekoj od sljedećih tema, ne oklijevajte se javiti. Naravno, kao i televizija, zadržavamo pravo izmjene programa, a termin će prilično biti ovisan o mom kalendaru i obavezama. I naravno, uvjet je da ste ozbiljni u svojim razmišljanjima, ne želim ni vama ni sebi trošiti vrijeme. Evo, dakle, spomenutih tema…

Microsoft Web Platform Overview
Interaktivno predavanje prikazat će što danas sve čini Microsoftovu web-platformu i predstaviti tehnologije poput ASP.NET-a i AJAX-a, Windows Servera i Internet Information Services poslužitelja, SQL Servera kao baze podataka u web okruženju i Silverlighta za izradu interaktivnih web-aplikacija. Predstavit će se i različiti alati za izradu web-aplikacija, svaki sa svojom specifičnom namjenom te glavnim karakteristikama. Bit će riječi o besplatnim Microsoftovim alatima (VIsual Studio Express), samom Visual Studiju 2008 te Expression alatima. Razgovarat ćemo i o smještanju web-aplikacija (hostingu) te zajednički razmotriti najbolju strategiju.
Trajanje: 2h – 4h

Interaktivne multimedijalne web-aplikacije (Expression i Silverlight)
Predstavljanjem Silverlighta i Expressiona, nove obitelji Microsoftovih alata za dizajnere, otvaraju se nova vrata na području interaktivnih multimedijalnih web-aplikacija. Predavanje će korisnika upoznati sa Silverlightom i uz stalnu usporedbu s trenutnim standardom, Flashom, pokazivati glavne prednosti, trenutne nedostatke te osnovna područja namjene. Uz razgovor o arhitekturi i značajke verzije 1.0 (JavaScript i XAML), predstavit će se i verzija 2.0 (.NET programiranje). Jedna od glavnih tema također je video na webu te će se prikazati Expression Encoder i mogućnosti Silverlight Streaminga. Pokazat će se i kako se Expression alati uklapaju u svakodnevni razvojni proces, a Silverlight u bilo koju postojeću web-stranicu.
Trajanje: 2h – 4h

Naravno, sve je u potpunosti prilagodljivo i temeljna odrednica predavanja je da budu interaktivna – scenariji u kojima samo ja pričam, dok svi drugi šute i gledaju nisu nikome zanimljiva…

P.S. Cijena? Prava sitnica, skoro konzultantska satnica – ½ soka po satu predavanja. Netko ipak treba i investirati :).

Stigao je Visual Studio 2008!

studeni 20, 2007 10:15 by luka

Visual Studio 2008 Visual Studio 2008 i .NET Framework 3.5 su dostupni i pušteni na tržište (ili u originalu, RTM, Release To Manufacturing). Rad na njima je završen i sad imamo finalne verzije spremne za produkciju. RTM status označava završetak programiranja i ispravljanja bugova, što znači da se još krajem prošlog tjedna radilo punom parom na novoj verziji Visual Studija 2008 i .NET Frameworka, a odmah po završetku, stvar se zapakirala i učinjena je dostupnom svima. Službeni launch (s pravim fancy opipljivim kutijama) proizvoda očekujemo iduće godine, a danas su VS 2008 i .NET Framework dostupni virtualno - punu verziju možete preuzeti s MSDN korisničkih stranica (ako ste MSDN pretplatnik, Visual Studio vas čeka spreman za download), a na javnim stranicama vas očekuje probna verzija te Express verzije (besplatne i specijalizirane verzije Visual Studija – Visual Basic, C#, C++, Web Developer). Ako vam treba samo .NET Framework 3.5 runtime, preuzmite ga ovdje.

Novosti naravno ima hrpa, no evo nekih najvažnijih. Visual Studio 2008 donosi podršku za multi-targeting, odnosno sad kroz istu razvojnu okolinu možete razvijati aplikacije koje koriste .NET Framework 2.0, 3.0 i 3.5, što rezultira malim promjenama sučelja i opcija, a istovremeno vas rješava potrebe da na istom stroju imate instalirane starije verzije Visual Studija. U .NET Framework 3.5 ugrađena ja podrška za ASP.NET AJAX (više nije potreban poseban download), poboljšane su kontrole, tu je podrška za JSON i razna druga poboljšanja. Visual Studio 2008 donosi bolju podršku za izradu web-aplikacija, što uključuje bolji web dizajner, CSS integraciju, pa čak i debugiranje JavaScript koda, što će bitno olakšati razvoj složenih web-aplikacija (AJAX, Silverlight…).

Novost su i poboljšanja u programskim jezicima – VB i C# kompajleri donose nove koncepte i omogućavaju novi programski model imena LINQ (Language Integrated Query), koji u potpunosti uklapa upite prema podacima i rad s podacima u programski jezik. Tu je i podrška za izvorni kod .NET Frameworka, koji će se moći gledati izravno iz Visual Studija (trenutno se kod objavljuje na serverima i ovo će biti moguće u narednim tjednima). Od ostalih noviteta valjalo bi izdvojiti još WPF dizajner, ClickOnce kroz Firefox, podršku za integraciju s Office 2007 ribbonom i Outlookom, uključen Visual Studio Tools for Office (ne treba više kupovati zaseban proizvod za izradu dodataka za Office), WCF i Workflow dizajner, unit testing uključen u Visual Studio Professional (prije je bilo moguće samo kroz VSTS), AJAX web testove (unit i load) i hrpe drugih stvari…

Zanimljivost je i da se pri izradi Visual Studija 2008 koristio Team Foundation Server, što dovoljno potvrđuje skalabilnost tog proizvoda i interno povjerenje u proizvod (takozvani dogfooding). Koga zanima više, detaljnije o novostima s linkovima na resurse, dokumentaciju i video zapise može pronaći na blogu Scotta Guthriea.

Visual Basic i XML, stari prijatelji

studeni 6, 2007 12:09 by luka

Evo i malo tehnikalija na ovom blogu. Programski jezici se već desetljećima unapređuju, kompajleri se optimiziraju, no kako danas izgleda vaš kod? Koliko se promijenio od onog što ste učili na fakultetu ili od vašeg prvog pravog programa? Uglavnom je iza našeg koda uvijek vrlo slična logika i proces, a sve konceptualne i arhitekturne promjene je dosta teško usvojiti (o čemu mogu posvjedočiti svi ASP programeri koji su prešli na ASP.NET). No postavite li si ikada pitanje kako će izgledati programiranje u dalekoj budućnosti? Vjerojatno svi zamišljamo slaganje programa iz gotovih blokova (nešto slično Popflyu) bez većih upliva u sam kod koji će se generirati i debagirati automatski. OK, možda je to još predaleko, no kako zamišljate razvoj svog omiljenog programskog jezika u narednih par godina? Imate li uopće ideju što se može promijeniti i što se može poboljšati?

Evo jedne sitnice koja me oduševila. Ovaj tjedan sam na Microsoftovoj europskoj konferenciji za razvojne inženjere, TechEd Developers - ukupno je tu 30-ak ljudi iz Hrvatske, a domaća tvrtka Ekobit je izlagač (predstavljaju svoj proizvod TeamCompanion, no o tome jednom drugom prilikom). Na jednom od jučerašnjih predavanja govorilo se o LINQ-u (Language Integrated Query, novost u .NET Frameworku koja omogućava pisanje upita na izvore podataka, baze, XML datoteke, objekte, što god, direktno u kodu, preopsežno da bih uspio unutar ovih zagrada nešto smisleno objasniti, bacite pogled na link), a spomenule su se i novosti u Visual Basicu 9.

Da ne duljim, pogledajte sljedeću stvar. Kako danas radite s XML-om u kodu? Koristite objekte za stvaranje elemenata ili eventualno parsirate tekst i pretvarate ga u XML. Evo kako to može izgledati u Visual Basicu 9 koji dolazi s Visual Studijom 2008 (čiji je RTM najavljen za ovaj mjesec!).

Dim doc = <?xml version="1.0" encoding="utf-8"?>
<Knjige>
<Knjiga Autor="Hrvoje Horvat">Povijest</Knjiga>
<Knjiga Autor="Pero Perić">Knjiga</Knjiga>
<Knjiga Autor="Marko Marić">Antika</Knjiga>
</Knjige>
doc.Save("knjige.xml")

Da, s XML-om se radi kao s običnim podacima. Kompajler to u pozadini pretvara u nešto drugo, naravno, no vama je kao programeru ovako skinut velik teret s leđa. Što ako želite nešto ubaciti u XML, spojiti ga s drugim varijablama?

Dim autor = "Filip Filipović"
Dim doc = <?xml version="1.0" encoding="utf-8"?>
<Knjige>
<Knjiga Autor=<%= autor %>>Povijest 2</Knjiga>
</Knjige>

A kako raditi s tim podacima? Tome služi LINQ, a vi se više ne morate zamarati s XPathom, elementima, kretanjem kroz nodeove i slično. Evo kako izvući sve knjige koje je napisao "Hrvoje Horvat" iz XML dokumenta učitanog s diska.

Dim doc = XDocument.Load("knjige.xml")
Dim knjige = From knjiga In doc.<Knjige>.<Knjiga> _
Where knjiga.@author = "Hrvoje Horvat" _
Select knjiga.Value

Jednostavno, čitko i u potpunosti podržano alatom pa ćete sve upite moći debagirati, koristiti IntelliSense i pronaći greške puno brže (LINQ se naravno koristi i za upite u baze podataka pa više ne morate pisati, primjerice, T-SQL upite i SELECT naredbe). Ove mogućnosti su naravno mnogo šire i dublje, no nadam se da vas je ovo zainteresiralo – bacite pogled na video koji objašnjava rad s XML-om i LINQ-om u Visual Basicu 9.

Zavalite se u Trosjed, hrvatski MySpace/Facebook

listopad 19, 2007 12:25 by luka

Trosjed Stiglo je vrijeme da vam predstavim i drugu studiju slučaja koju ćemo pokazivati na Advanced Technology Dayu 3. Radi se o novoj usluzi u sklopu Net.hr portala, koji je prema istraživanjima jedan od najposjećenijih domaćih portala (prvi ili drugi, ovisno o mjesecu istraživanja, izmjenjuje se s T-Portalom). Servis se zove Trosjed i predstavlja domaću inačicu popularnih MySpace i Facebook  portala. Kao i svi drugi Web 2.0 projekti, i Trosjed je još uvijek u beta fazi, no broj korisnika mu stalno raste, a bit će zanimljivo vidjeti kako će ga prihvatiti domaći korisnici i da li će steći respektabilnu bazu korisnika. S obzirom na povezanost s portalom Net.hr, ne sumnjam u uspjeh. Kompletnu vijest s više informacija možete pročitati ovdje.

Kao što ste i mogli zaključiti, Trosjed je napravljen u potpunosti na ASP.NET 2.0 tehnologiji, u pozadini je SQL Server 2005, a sve se naravno vrti na Windows Serveru 2003. To je posebno zanimljivo uzme li se u obzir da Net.hr dosad nije koristio Microsoftove tehnologije. Autori projekta su Viktor Marohnić i Saša Šarunić, vlasnici malog startupa pod nazivom Pet Minuta. Njihova priča mi je posebno zanimljiva – obojica su zajedno radili u jednoj većoj tvrtki na razvoju aplikacija i IT sustava, a u svoje slobodno vrijeme su napravili iznimno popularan domaći servis za razmjenu i objavu slika, Ptičicu. Između ostalog, prijavili su ga i na natječaj kojeg smo prošle godine organizirali u suradnji s T-Portalom, Web2Vegas (mogli ste o tome čitati u časopisu Mreža) i pobijedili. Tako smo se i upoznali i tjedan dana družili na njihovom nagradnom putovanju u Las Vegas na konferenciju MIX. Nedugo nakon toga su nam i pokazali preview svog novog projekta, a već tada su imali spreman naziv Trosjed i ove fora glinene likove za grafičke elemente kao na slici uz tekst.

U međuvremenu su pokrenuli vlastiti startup u kojem Viktor nosi titulu CEO, a Saša CTO (eto, spremni su za rast!). Viktor će tako na ATD-u biti sudionik okruglog stola i ispričati svoja iskustva pokretanja i financiranja domaćih startupa, a Saša će održati predavanje pod nazivom "Projektiranje web-sitea za milijun korisnika u ASP.NET-u" na kojem će na ovom konkretnom primjeru govoriti o skalabilnosti, iskustvima u razvoju, konkretnim rješenjima i trikovima i sličnim detaljima iz stvarnog života.

P.S. Obratite i pozornost na desni gornji kut na Trosjedu gdje trenutno stoji "Još je 999143 mjesta slobodno :)". Eto, doista su projektirali site za milijun korisnika :)

Zanima vas izvorni kod .NET-a? Izvolite…

listopad 3, 2007 12:50 by luka

Microsoft .NET Dogodila se prekretnica u razvoju .NET-a – Microsoft će objaviti izvorni kod .NET klasa! Sam kod će biti objavljen pod Microsoft Reference licencom koja dozvoljava njegovo pregledavanje, no ne i kopiranje ili rekompajliranje. Izvorni kod će se moći pregledavati na dva načina. Prvi način jest da se kompletno preuzmei pregledava u bilo kojem tekstualnom editoru. Drugi, daleko prikladniji, štoviše über-geeky način je korištenjem nove mogućnosti u Visual Studiju 2008 koja će omogućiti debagiranje ne samo vlastitog koda, već i izvornog koda .NET Frameworka. Tako će programeri moći, ako žele, iskoristiti step into mogućnost u .NET biblioteke. Više o tome kako će to izgledati pročitajte u blogu Scotta Guthriea.

Dostupan izvorni kod uključivat će Base Class Libraries (što uključuje osnovne klase frameworka poput kolekcija, upravljanja tekstom, IO operacija, serijalizacije, remotinga i drugih), Windows Forms, ASP.NET, System.Data i WPF klase. U planu je da se i druge klase uključe u budućnosti. Ova objava spada u Microsoftovu Shared Source inicijativu o kojoj je već bilo riječi na ovom blogu.

Naravno da ovo ne znači da .NET Framework postaje open-source, no priznajem da me sve to vrlo pozitivno iznenadilo. Zanimaju me i reakcije open-source zajednice…

I ovce i novce – PHP i .NET

srpanj 2, 2007 09:30 by luka

Phalanger PHP je neupitno jedan od vodećih jezika za izradu web-aplikacija, a ujedno i jedan od konkurenata Microsoftovoj ASP.NET platformi. I PHP i ASP.NET imaju svojih prednosti, no zašto ne uzeti najbolje iz oba svijeta? Što kažete na izvršavanje PHP web-aplikacija u ASP.NET okruženju?
O tome smo govorili i na Advanced Technology Dayu 2, no evo sada i nešto crno na bijelo (odnosno, bijelo na crno) s par linkova. Phalanger, odnosno PHP kompajler za .NET, je ono što spaja PHP svijet i .NET svijet.  Phalanger omogućava izvršavanje PHP aplikacija pod .NET-om, i to sa svim prednostima koje .NET donosi. To znači da će se sve takve PHP aplikacije kompajlirati pri prvom izvođenju u MSIL (Microsoft Intermediate Language, što je byte-kod assembly kojeg koristi .NET CLR), što omogućuje daleko brže kasnije izvršavanje (jer kod nije interpretiran svaki put). To također omogućava i korištenje specifičnih .NET mogućnosti, kao što su genericsi, LINQ, custom atributi, parcijalne klase, događaji i, naravno, .NET klase i objekti (želite li koristiti System.Xml ili System.Web.Services, nema problema). 
Uz Phalanger, PHP postaje standardan .NET jezik, baš kao što su i C# i VB.NET. Prevedeno, to znači da PHP-om više niste ograničeni na web-aplikacije, već možete pod okriljem .NET-a izrađivati web-servise, konzolne ili pak Windows Forms aplikacije. Zašto ne upotrijebiti svoja PHP programerska znanja i na drugim poljima? Uostalom, oduvijek se o .NET-u priča kao o višejezičnoj platformi, neovisnoj o programskom jeziku…
Sljedeće logično pitanje koje se postavlja jest – što je s kompatibilnosti? Najpopularnije PHP aplikacije, kao što su PhpBB 2 (i beta verzije 3), PhpMyAdmin, MediaWiki (wiki aplikacija originalno napisana za Wikipediju) i WordPress (kad smo već kod blogova), bez problema se kompajliraju uz Phalanger na .NET platformi (evo liste aplikacija). Ništa vas zapravo ne sprečava da svoje standardne PHP / mySQL aplikacije migrirate u .NET okruženje i obogatite ih novim mogućnostima. Želite li pak raditi u Visual Studiju, zašto ne – Phalanger donosi predloške za PHP projekte, podržava syntax highlighting i debagiranje, no nažalost još nema IntelliSense podrške.
Za kraj, bacite pogled na performanse (možda vas to uvjeri da isprobate), evenutalno u source kod, preuzmite izvršne datoteke, pročitajte FAQ, naučite nešto konkretno uz tutoriale, i sretno PHP-iranje na .NET platformi. Osim toga, i trenutno prvi tekst na php.hr (Udruga PHP programera Hrvatske) spominje Phalanger. Živio PHP :)