Events for udviklere

Nyheder for udviklere

ASP.NET websitet skal bygges på Umbraco
Microsoft har valgt at bygge et af deres kommercielle sites på Niels Hatvigs open source projekt Umbraco. Sitet ASP.NET har mange millioner besøgende om året, og det bliver derfor spændende at følge, om Umbraco kan klare et sådan load, og samtidig også hvad det kan betyde for Umbraco i fremtiden. Man må ihvertfald sige, at produtet får noget eksponering. Tillykke!
 
Visual Studio 2010 er udskudt
Det er både godt og skidt hvis du spørger mig, men der er bestemt intet at gøre ved, at vi ikke oplever Visual Studio 2010 til den oprindelige release dato d. 22 Marts. Produktet er blevet udskudt til et senere tidspunkt. Det skyldes at vi mener at der kan gøres mere ift. performance og optimering i selve kernen af udviklingsværktøjet. Det er et rigtigt godt tegn faktisk. Beta 2 af VS2010 er markant hurtigere og optimeret ift. beta 1 og tidligere udgaver af Visual Studio. Jeg tror på vi får et rigtig godt udviklingsværktøj, bare lidt senere end forventet.
 
Projekt Orchard
Orchard er et gratis, open source og community fokuseret projekt, målrettet til applikationer og genbrugelige komponenter som køre på ASP.NET platformen. Orchard teamet vil udvikle delte komponenter samt extensions til ASP.NET som kan bruges af både end-users, scriptere og den tungere udvikler. I fremtiden vil Orchard projektet være fokuseret på at levere en .NET baseret CMS applikation som vil give brugere mulighed for hurtigt at udvikle og oprette indholds-drevne websites.
 
Team Foundation Server 2010 på klienten - YEAH!
En nyhed i Visual Studio 2010 er at du har mulighed for at ínstallere Team Foundation Server direkte på din klient (Win xp, vista og 7). Du kan bruge SQL 2008 Express uden at opleve et stort “overhead” og den mindste version har både understøttelse for SharePoint og Reporting, ligsom den store version. Det betyder altså også at du opgradere senere. TFS installationen er ligeledes blevet lavet total om, og det tager ingen tid at installere længere.
 
ASP.NET 4.0 WebServer Shell Extension
Har du nogensinde haft brug for at pege på en lokal folder og sige “åben med min favorit webserver”. Phil Haack har opdateret sit registry hack til at virke med VS2010 beta2, og for dem der ikke gider at åbne VS for at se et ASP.NET website er dette ren sukker.
 

ASP.NET MVC 2 TechTalk d. 3/3

by Administrator 26. February 2010 12:08

Med lanceringen af ASP.NET MVC sidste år og den snarlige lancering af ASP.NET MVC 2 har Microsoft taget et stort skridt fremad inden for webudvikling. I denne Tech Talk ser vi på filosofien bag MVC og hvordan ASP.NET MVC kan øge udviklerens produktivitet og arbejdsglæde. De grundlæggende bestanddele vil blive gennemgået og den nye funktionalitet i version 2 vil blive præsenteret.

Tilmeld dig her

Taler:
Stig Irming-Pedersen
er partner i Copenhagen Software, der leverer rådgivning om og udvikling af løsninger baseret på Software as a Service og Cloud Computing. Stig varetager til daglig  opgaver spændende fra webbaseret softwareudvikling over agil projektledelse til udarbejdelse af tekniske arkitekturer for SaaS produkter.

Tags:

VS2010 | Udvikleren.dk

Windows Server AppFabric og Windows Azure AppFabric.

by Administrator 15. February 2010 10:53

Windows Server AppFabric har tidligere været kendt som Dublin, Velocity og WAS, er et sæt af teknologier som gør det nemmere at bygge og skalere web applikation som køre ovenpå IIS. Windows Server AppFabric består af 3 kerne områder; caching (velocity), workflow og service administration. Du kan læse mere omkring Windows Server AppFabric her, og du kan også downloade beta 1 som kræver enten en windows 7 eller windows 2008 server maskine.

Windows Azure AppFabric har tidligere været kendt som “.NET Services” under Windows Azure, og er en klods i Azure som hjælper udviklere med at sammenkoble applikationer og services der køre henholdsvis under Azure og “on-premise”. Pt. er det muligt at bruge en Access control service samt en Services bus service. Du kan læse mere om Azure AppFabric her.

Det er helt klart meningen at du kan bruge de to forskellige AppFabrics i sammenspil med hinanden, f.eks kunne man forstille sig at bruge Azure “service bussen” til at sammenkoble 2 eksiterende “on-premise” appliaktioner igennem skyen. Det ville give mening og man vil opnå en form for platform-agnostisk protokol (REST og XML) som applikationerne ville kunne bruge som kommunikationskanal.

Herunder en kort video omkring netop Access control servicen og Service bus servicen.

Tags:

Udvikleren.dk

Hvad siger Scott Hanselman om code-name “Velocity” ?

by Administrator 15. February 2010 10:07

Velocity er kode-navnet på et Microsoft produkt der gør caching over flere maskiner (f.eks en web-farm) til en leg. Velocity er som et distribueret HashTable der er tilgængeligt på tværs af flere maskiner og du kan gemme alle former for data i dette distribuerede HashTabel. Velocity giver dig mulighed for nemt at skalere din appikation ud på flere maskiner uden at skulle bekymre dig om hvilke data der er tilgængeligt på maskine A og på maskine B. Hvis du bruger Velocity vil din data være tilgængelig på begge maskiner og det betyder f.eks at dine brugere ikke vil opleve tabt data fra f.eks deres session.

Christian Dalager har også skrevet lidt om Velocity.

Get Microsoft Silverlight

Tags:

Udvikleren.dk | VS2010

Mere om object caching i .NET 4.0

by Administrator 15. February 2010 09:39

For nogle uger siden skrev jeg en kort post omkring object caching i .NET 4.0 og nu har jeg altså fundet en hel PDC 2008 video omkring emnet. Den er rigtig grundig og giver et godt indtryk af hvorfor der er netop er lidt ændret i frameworket ift. caching.

Get Microsoft Silverlight

Tags:

Udvikleren.dk | VS2010

Visual Studio .NET 2010 og .NET 4.0 TechTalk på Onsdag, kom og vær med.

by Administrator 15. February 2010 09:20

På Onsdag (d.17) får Microsoft fint besøg af Henrik Lykke Nielsen som skal give en præsentation af .NET 4 samt Visual Studio 2010. Det bliver en ret bred præsentation hvor der vil være mulighed for at få et helhedsindtryk af både det nye “studie” og de mange forskellige nyheder i frameworket. Pga. af det store deltager antal er vi rykket fra Tuborg Havnevej 12 til Tuborg Havnevej 19 hvor Rønne og Lundgren bor. Det eneste du skal gøre er at registrere dig og dukke op her, senest kl. 9:20 på Onsdag.

Vi glæder os til at se dig ;0)

newdotnetlogo_2

Husk at følge med i vores andre arrangementer på MSDN.dk.

Tags:

VS2010 | Udvikleren.dk

Silverlight 4 features

by Administrator 11. February 2010 10:50

Silverlight 4 er som du allerede ved, i beta, og der er faktisk kommet ret mange fede ting med den nyeste version af Silverlight frameworket.

Tim Heuer som er program manager i Microsoft har skrevet om alle de nye features i Silverlight 4.0, og man må sige det er en ret udførlig blogpost.

Nogle af de fedeste features, hvis du spørger mig, er: HTML hosting, webcam/mikrofon support, local file access og google chrome support.

Du kan læse og se demo kode af samtlige nye features i Silverlight 4.0 her.

Tags:

VS2010 | Udvikleren.dk

WCF RIA Services

by Administrator 11. February 2010 10:24

Tidligere kendt som .NET RIA services

I forbindelse med Silverlight 3 kom der (endnu) en mulighed for nemmere at snakke med sin database igennem Silverlight. Før WCF RIA services har det kun været muligt at tilgå sin database igennem asynkrone kald igennem et service lag. Service laget er du stadig nødt til at have på plads, men det asynkrone er blevet pakket væk fra os, og det er derfor blevet noget mere gennemskuelig og lettere at lave kald til sin database igennem sine services.

Med WCF RIA services opretter du services på baggrund af en data kilde (database f.eks). Det gør du på server siden af dit projekt, og de metoder du opretter i de services bliver samtidig tilgængelige på klient siden, altså Silverlight. Det hele sker lidt på baggrund af noget auto-genereret kode som VS laver for os, men betyder altså at vi får direkte adgang til de samme services på klient siden som på server siden.

En demo af WCF RIA Services kan du se her. Jeg har kun set de første 10-12 minutter da det er her man får indtryk af det fundementale.

Install Silverlight

Tags:

VS2010 | Udvikleren.dk

WCF Data Services

by Administrator 11. February 2010 09:16

Med .NET 4.0 er ADO.NET Data Services blevet til WCF Data Services.

Med WCF data services kan du både konsumere datakilder og stille datakilder til rådighed, uanset om det er in-memory objekter eller fra relation databaser. Når du bygger en data kilde op fra f.eks in-memory objekter vil de blive tilgængelige over et REST interface som man kan tilgå fra hvor som helst (så længe “hvor som helst” kan parse XML).

WCF Data Services er utrolig fleksibelt og faktisk super nemt at gå til, det kræver faktisk ikke meget kode at prøve det af. File –> New –> Wcf Data Service:

using System;
using System.Data.Services;
using System.Data.Services.Common;
using System.Collections.Generic;
using System.Linq;
using System.ServiceModel.Web;

public class UsersDataService : DataService<UsersContext>
{
    public static void InitializeService(DataServiceConfiguration config) {
        config.SetEntitySetAccessRule("Users", EntitySetRights.AllRead);
        config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V2;
    }
}

public class User
{
    public int ID { get; set; }
    public string Username { get; set; }
}

public class UsersContext
{
    static List<User> _users;

    static UsersContext() {
        _users = new List<User>() { 
            new User { ID = 1, Username = "Daniel" }, 
            new User { ID = 2, Username = "Henrik" } 
        };
    }

    public IQueryable<User> Users {
        get { return _users.AsQueryable();  }
    }
}

Højreklik og vælg “view in browser”. Nu vil du få det data ud som er i vores in-memory objekt, som XML.

Hvis du gerne vil se mere omkring WCF Data Services vil jeg forslå du ser disse screencasts igennem.

 

(ADO.NET Data Services baseret på en Non-Relational Data Source)

(ADO.NET Data Services baseret på en Relational Data Source)

Tags:

Udvikleren.dk | VS2010

PolicyRequest med DotNetOpenAuth.

by Administrator 8. February 2010 19:01

Når du som jeg bruger OpenId til et projekt, så kan det være frustrerende at OpenId ikke har en “log ud” funktion. Man skal selv styre brugerens “state” og det kan skabe nogle lidt finurlige oplevelser når man gerne vil logge ind. Hvis du tilføjer en extenstion til dit OpenId request så kan du tvinge igennem at brugeren skal logge ind hver gang vedkommende besøger dit site. Et eksempel på dette herunder:

var openId = new OpenIdRelyingParty();
var response = openId.GetResponse();

if (response == null) {
    try {
        var req = openId.CreateRequest( openIdIdentifier );
        req.AddExtension( new PolicyRequest { MaximumAuthenticationAge = TimeSpan.Zero } );
        return MessagingUtilities.AsActionResult( req.RedirectingResponse );
    } catch (ProtocolException exception) {
        //TODO: logging needed here!!!
    }
}

Tags:

ASP.NET | Udvikleren.dk

Custom ActionFilter i ASP.NET MVC

by Administrator 8. February 2010 18:55

Jeg synes ASP.NET MVC er mega sejt, især fordi det er så nemt og simpelt at hooke ind. Jeg har haft brug for at lave noget custom-validering af nogle brugere og i den forbindelse har jeg bygget mit egen ActionFilter.

public class NeedLoginFilter : ActionFilterAttribute
{
    public override void OnActionExecuted( ActionExecutedContext filterContext ) {
        if (filterContext.HttpContext.Session["identifier"] == null) {
            filterContext.HttpContext.Response.Redirect( "/home/index" );
        }
    }
}

Når jeg så gerne vil tjekke om en bruger har logget ind eller ej kan jeg simpelthen bar smide attributen på den metode jeg ønsker at validere. Det er sgu smart og nemt :)

[NeedLoginFilter()]
public ActionResult Index()
{
    return View();
}

Tags:

Udvikleren.dk | VS2010

Kommende CNUG arrangementer

by Administrator 8. February 2010 10:19

Vi har forsøgt at lave et line-up med en række forhåbentligt fede arrangementer i CNUG. Det er som altid gratis at deltage og størstedelen af de kommende events ligger om eftermiddagen og ikke om aftenen, hvilket bør gøre det nemmere for en at deltage.

TDD for øvede
Apr 15, 2010

Sikker betaling online
Mar 31, 2010

ASP.NET MVC 2 af Stig Irming-Pedersen
Mar 17, 2010

Hacking your website
Feb 24, 2010

RSS feed for kommende arrangementer

Tags:

Udvikleren.dk

Frosts Podcast Show #16 – Rundt om ASP, ASP.NET og PHP med Kim Larsen

by Administrator 5. February 2010 13:57

Da jeg desværre har været udsat for inbrud på min bopæl, er alle mine tidligere optagelser blevet stjålet. Jeg forsøger at komme tilbage i samme tempo som før jul, men hav venligst tålmodighed.

God fornøjelse

Tags:

Udvikleren.dk

TechTalk i Vedbæk d. 26 Februar.

by Administrator 3. February 2010 11:22

With Visual Studio 2010, Microsoft is shipping a broad set of technologies to support programmers in their quest of taking full advantage of the emerging parallel hardware. In this talk, Niklas Gustafsson, software architect at Microsoft Corporation, will present these technologies and give an overview of the kinds of algorithms targeted. Supporting both native-code development in C++ and managed-code development in C#, Visual Basic and F#, the new libraries and language features have a lot to offer the parallel programmer.

Tilmeld dig her.

Tags:

Udvikleren.dk | VS2010

Konkurrence: Vind en MIX10 billet + hotel i Las Vegas d. 15-17 Marts.

by Administrator 25. January 2010 09:33

Fordi det snart er tid til at tage til MIX i Las Vegas, vil jeg gerne udlode en billet samt hotel til en heldig vinder.

For at deltage skal du læse reglerne samt uploade en app’ til 10K på MIX sitet, det skal du have gjort inden på Lørdag (d. 30).

Senest Søndag (d. 31) skal du sende mig en email med emne “Vind en MIX billet” samt et link til din applikation og kontakt informationer.

Vi bedømmer de applikationer vi modtager udfra dem der er mest orginal, funktionel og teknisk svær.

Hvis du vinder betaler vi din indgangsbillet og dit hotel under hele MIX konferencen.

clip_image002

Held og lykke!

Tags:

Udvikleren.dk

Failed Request Tracer i IIS 7.x og FailedRequestViewer

by Administrator 22. December 2009 11:18

Med IIS 7.x har man mulighed for at trace fejlede requests. Det er smart hvis man oplever at mange requests simpelthen fejler, smider en exception eller evt. udløber. Request tracing efterlader en form for log fil hver gang et request fejler, og de log filer kan man enten gennemgå manuelt eller igennem det jeg har valgt at bygge til formålet – FailedRequestViewer.

Du kan sætte failed request tracer regler på, enten på din webserver (IIS) eller igennem din applikation. Jeg kan så godt lide at fortælle at man har mulighed for at manipulere med IISn igennem applikationens web.config fil, at jeg i dette eksempel simpelthen vil vise hvordan det gøres.

Du kan logge alt hvad mht. fejlede requests ved at indsætte følgende i din web.config fil:

<system.webServer>
<tracing>
<traceFailedRequests>
<add path="*">
<traceAreas>
<add provider="ASP" verbosity="Verbose" />
<add provider="ASPNET"
areas="Infrastructure,
Module,
Page,
AppServices"
verbosity="Verbose" />
<add provider="ISAPI Extension" verbosity="Verbose" />
<add provider="WWW Server"
areas="Authentication,
Security,
Filter,
StaticFile,
CGI,
Compression,
Cache,
RequestNotifications,
Module,
FastCGI"

verbosity="Verbose" />
</traceAreas>
<failureDefinitions timeTaken="00:00:00" statusCodes="100-999" />
</add>
</traceFailedRequests>
</tracing>
</system.webServer>

Det er faktisk meget simpelt. Her specificere vi hvilke providers vi gerne vil trace på, og hvilke areas vi ønsker at få information om. I vores failuredefinitions element fortæller vi, at vi gerne vil logge de requests som løber imellem statuskode 100 til 999 (alt).Husk at vi her kun fejlede requests, ikke requests der er “korrekt” gennemført.
 
Ens failed request log filer bliver pr. default gemt under inetpub (C:\inetpub\logs\FailedReqLogFiles\XXX\) folderen på webserveren. De er rene XML filer og sammen med dem ligger der et XSLT stylesheet der benyttes når man ser disse XML log filer i ens browser.
 
failed

Se det er rigtigt super mega smart. Dette giver os nemlig mulighed for at finde ud af rigtig mange ting omkring de requests der har fejlet. Dog er der en ting som ikke er optimal ved dette, nemlig at man pr. default skal gennemgå de her logfiler en efter en. Det holder ikke. Derfor jeg er gået igang med at bygge en oversigt til de her filer, så man får et mere nuanceret overblik over ens failed request filer og i fremtiden måske bruge oversigten til lettere at finde fejl i ens applikation.

files

og flere detaljer om hvert request

error

Du kan downloade koden for projektet her.

Tags:

ASP.NET | Udvikleren.dk | VS2010

HttpHandlers (.ashx) i IIS 7.x

by Administrator 15. November 2009 14:18

En ting som rigtig mange stadigvæk ikke er klar over, er muligheden for at extende Windows web serveren, Internet Information Services. Dette emne er noget som Mads Kristensen bestemt har ydet sit for at få udbredt, men om det har nået ud til jer alle er svært at sige. Mads har gentagne gange fortalt mig, at mange af de udviklere han møder simpelthen ikke er klar over denne lækre men efterhånden gamle feature i IIS 7.x.

HttpHandlers…

Har filendelsen .ashx, bruges udelukkende til at håndtere den response der kommer tilbage fra IISn, udfra en bestemt filtype.

Er smarte hvis du f.eks laver UrlRewriting, indholds-manipulation eller andet hvor du gerne vil have fingrene i responsen før klienten modtager det.

Er nemme at bygge, du skal faktik bare have en klasse der arver fra IHttpHandler interfacet.

Behøver ikke registreres på webserveren.

using System;
using System.Web;
using System.IO;

public class TxtHandler : IHttpHandler
{
public bool IsReusable
{
get { return false; }
}

public void ProcessRequest(HttpContext context)
{
StreamReader reader = new StreamReader
(context.Server.MapPath(context.Request.FilePath));

String cardInfo = reader.ReadToEnd();

context.Response.Write(cardInfo);
}
}

Ovenstående er en HttpHandler (.ashx) og det eneste du mangler nu er at registrere den. Det kan du gøre på enten server, website eller applikations niveau.

Hvis du vil gøre det på IISn skal du finde det punkt der hedder “Handler mappings”. Her tilføjer du stien og den ønskede type der skal tage sig af responsen.

iis

Du kan også gøre det på selve applikationen, og det kræver såmænd bare tilføjelse af en handler  i din webconfig fil.

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.web>
<compilation debug="true" />
</system.web>
<system.webServer>
<handlers>
<add
name="txtHandler"
path="*.txt"
verb="*"
type="TxtHandler"
resourceType="Unspecified"
preCondition="integratedMode"
/>
</handlers>
</system.webServer>
</configuration>

Når nogen kalder en .txt fil på dit website vil den ovenstående HttpHandler træde i kræft og du vil have fuld adgang over det pågældende request.

Bemærk at pipeline mode på IISn skal være sat til Intergrated.

Som sagt er Mads Kristensen en haj til at lave de her HttpHandlers, så tjek hele hans bibliotek ud :)

God fornøjelse.

Tags:

ASP.NET | Udvikleren.dk | VS2010

Frosts Podcast Show #7 – Dependency Injections med Mark Seemann

by Administrator 13. November 2009 12:04

Mark Seemann er tildagligt udvikler i virksomheden Safewhere. Han er igang med at skrive en Manning bog omkring netop Dependency Injection også er Mark både tidligere MVP og nuværende MDIP.

Har du aldrig arbejdet med DI før kan du finde mere information omkring fremgangsmåderne her.

God fornøjelse.

Tags:

Udvikleren.dk

Scott Guthie i Danmark d. 3 December – kryds i kalenderen.

by Administrator 11. November 2009 12:07

Jeg har netop fået at vide at Scott Guthrie kommer til København d. 3 December. Han skal være en del af et større men stadig ret “low key” event som tager udgangspunkt i nogle af de allerbedste ting fra PDC2009. Der vil bla. blive talt om MVC, ASP.NET 4.0, VS2010 og .NET 4. Vi har ingen fast agenda endnu, det eneste vi ved er at han kommer. Udover Scott vil der med stor sandsynlighed være mulighed for at se andre præsentationer fra bla. mit team. Dog tror jeg ikke at jeg får noget airtime, men det kan jo være :)

red_polo_big

Foruden præsentationer vil der forhåbentligt være mulighed for både MVPerne og MDIPerne at få en lukket session med ham hvor deltagerne kan stille ham mange flere spørgsmål og høre et par hemmeligheder. Som sagt er agenda ikke vedtaget 100% endnu, men vi er tæt på :)

Husk at sætte et kryds i din kalender for Torsdag d. 3 December. Det bliver en rigtig god dag for alle!

Tags:

Udvikleren.dk

ASP vs. PHP vs. ASP.NET vs. Daniel

by Administrator 28. October 2009 14:37

I den organisation jeg arbejder i er der sommetider nogle ting man ikke kan lave om på. Faktisk er der ret mange ting man ikke har indflydelse på, og for en person som mig kan det godt være en smule udfordrende. Jeg er nu så heldig, at jeg fra naturens side er anlagt med en udfordrings fetish, og jeg viger sjældent tilbage hvis noget står i vejen. Men den her udfordring er dog en af de svære.

I Microsoft er det sådan at jeg hvert år får 7 overordnede mål jeg skal nå i løbet af 12 måneder. Vi starter vores år d. 1 Juli også har vi ellers et år til at eksekvere i. Det er ikke så nemt som det lyder, og de 7 mål ender ofte ud med reele 21-25 mål som kan være alt fra “sørg for at XX markedsandelen vokser til XX%” til “efteruddan dig igennem XX”. Så det er både meget store mål og meget små mål, men når dagen er omme så er det stadig noget der skal eksekveres på.

I år har jeg faktisk fået et mål der siger at jeg skal fremme væksten af ASP.NET på Danske servere/domæner i forhold til PHP og ASP. Det er bestemt en udfordring der har fået mig til at tænke lidt, men som sagt…jeg er vild med udfordringer.

Lad mig i denne blogpost guide dig igennem mine egne tanker og ideér omkring det at nå dette mål. Feedback modtages som altid gerne :)

ASP.NET i forhold til ASP

Den her burde jo være ligetil. ASP udviklere er på en eller anden facon Microsoft “friendly”, og hvis de ikke allerede er flyttet fra ASP til ASP.NET så er det eddermanme på tide. Men hvis ASP udvikleren ikke rykker platform af sig selv, ja så må jeg og resten af min afdeling hjælpe til. Den teknologi adoption der skulle være sket for mange år siden er simpelthen ikke fuldendt, og det kommer faktisk lidt bag på mig. Kan det være pga. legacy kode at ASP stadig eksitere ? Er det fordi ASP er billigere ? Er det fordi ASP er nemmere ? Hvad er det der gør at ASP udvikleren er blevet i scripting paradis, istedet for at blive en rigtig mand med hår på kroppen, eje en IDE samt 10 bøger om OOP.

Jeg tror simpelthen det har noget med indlæringskurven (ASP.NET) at gøre, og at det ikke behøver at være så besværligt at udvikle et simpelt website. Det synes jeg var en valid pointe for nogle år siden, men nu mener jeg ikke længere at der er hold i den pointe. Idag har du mulighed for ligeså nemt at udvikle med ASP.NET og endda ligeså billigt, hvis ikke endnu mere billigt. Microsoft er blevet bedre til at følge med resten af web verdenen, se bare på ASP.NET MVC og hvor produktivt det er atbejde med, og hvor meget det kan ligne ASP “classic”.

Måske er det OOP tankegangen der sætter en stopper for indlæringen af ASP.NET, eller bare .NET i det hele taget ? Hvad er det der skal til for at man rykker sig fra en så gammel teknologi ?

Det er paradoksalt, men ASP er blevet Microsoft egne fjende i og med at mange udviklere stadig er fuldt tilfredse med det lille framework. Og jeg kan ikke modargumentere når en ASP udvikler siger “det er så nemt at sætte noget i søen”.

Er ASP og PHP under samme paraply ?

På sin vis ja, men PHP har rykket sig meget og forsætter konstant med at rykke sig i retning som både OOP, dynamisk og imperitivt sprog. ASP er ligget stille siden 1999 og der kommer ikke til at ske mere i framework. Det bliver faktisk usupporteret i 2014 også vil teknologien være et kapitel i en historiebog.

PHP kan meget mere ud af boksen end ASP kan, og sprogmæssigt er det et sjovere og mere elegant sprog/framework end ASP. Tænk jeg nogensinde skulle sige det :0)! Men formålet med de to sprog/frameworks er det samme. De bliver stort set udelukkende brugt til at bygge web applikationer med, er begge scriptsprog som ikke bliver kompileret og bliver nogenlunde eksekveret på samme vis. Dog er PHP meget mere populært end ASP og det må øjensynligt skyldes at hele sproget/frameworket er mere fleksibelt, eftersigende billigere at udvikle op imod og at der eksistere et sundt og velfungerende økosystem omkring frameworket og det relaterede teknologier.

PHP har, fordi det er i konstant udvikling også mange flere frameworks og produkter end ASP har.

ASP.NET vs. PHP

ASP.NET vs. PHP er en lidt anden sang end ASP vs. PHP fordi, ASP.NET under overfladen er meget mere end et web application framework. Set med mine øjne er .NET en solid pæl bygget i jernbeton, med en meget stor og pengestærk virksomhed i ryggen (jeg ved det kan give visse associationer, men lad os lade dem ligge for nu), hvorimod PHP i forhold til .NET absolut ingen organisation har i ryggen (communitiet er der) og mere virker som et slasket og dovent framework.

PHP og ASP.NET forsøger at løse mange af de samme problemer, men jeg fornemmer at PHP udvikleren generelt er mere interesseret i at få tingene hurtigere løst, istedet for at gå op i kvaliteten af softwaren/applikationen. Det kan der sagtens være fornuft i. Som Jeppe Rørbæk engang sagde “kunden er ligeglad med din kode, han vil bare have sit produkt til at virke”. På en måde er det lidt en lussing til dem der går op deres arbejde og betragter det som et “craftmanship”, men på den anden side synes jeg det er meget cool at være en “code cowboy” fordi de kan være ret ligeglade med om hvordan tingene ser ud, de vil bare gerne have noget der virker – i en fart.

De gennemsnitlige PHP udviklere kan måske godt betragtes som værende “code cowboys”, men det er nødvendigvis ikke personens eget valg, det kan ligeså vel være PHP der ligger op til at man sjasker rundt i en gang spaghetti kode og ikke har værktøjer til code-coverage, unit-tests, en compiler, support etc. Jeg synes ikke PHP er ikke en pæn teknologi i forhold til .NET, men den er helt gratis og alene det må betyde et eller andet for udvikleren. Det er sådan lidt tilbage til det her med en jernbeton pille…

En ting som PHP er rigtig god til, er at fungere på stort set alle operativsystemer, hvilket ganske simpelt betyder at man som udvikler har mere råderum og flere muligheder for at vælge platform. Dog er det en brøkdel af PHP udviklerne der vælger Windows som host, og det må være af den grund, at Windows i modsætning til bla. Linux koster penge. PHP på Windows køre nærmest ligeså godt som på Linux men om det er ligeså fleksibelt tør jeg ikke sige noget om.

.NET generelt er uden tvivl den mest innovative af de to teknologier, og der sker rigtig meget på i ASP.NET verdenen og i de omkring liggende teknologier. Se bare de muligheder der kommet med Silverlight, LINQ og MVC. Produkterne omkring teknologierne har ry for at være dyre men de findes altså også i en gratis version som fungere glimrende.

ASP vs. PHP vs. ASP.NET vs. Daniel

Ovenstående er for de fleste ikke nok til at overbevise eller informere om hvorfor ASP.NET er bedre end PHP eller ASP, men det vil jeg forsøge at gøre i et par fremtidige posts herpå sitet. Så følg endelig med hvis du ikke allerede er overbevist :)

Tags:

Udvikleren.dk

Spændende certificerings pep-talks d. 6 November

by Administrator 28. October 2009 10:14

Har du nogensinde tænkt på at blive Microsoft certificeret ? Nu har du mulighed for at få indblik i hvad det kræver, hvad du skal tænke på og hvad en certificering kan gøre for dig.

Fredag d. 6 November gæster en lang række MVPer samt MCTer København og giver en præsentation omkring certificering indenfor:

Windows 2008 R2
Exchange 2010
Windows 7 for IT-Pros
Visual Studio 2010
Windows 7 for developers

MCTeditionHeader

Du skal nok forvente at de forskellige sessioner er på engelsk, men du er mere end velkommen til at deltage og det er gratis.

Du kan læse mere og tilmelde dig her.

Tags:

Udvikleren.dk

Powered by BlogEngine.NET 1.6.0.0
Theme by Mads Kristensen

Om Mr. Frost

Developer Evangelist i Microsoft Danmark.
Ejer ActiveDeveloper.dk.
CNUG loge medlem.

http://twitter.com/danielovich