The PIT
Röster från ITM-koncernen.

ITM Mobile på plats i Barcelona, när Microsoft släpper Windows 7 för mobiler – helt ny makeover!

February 16, 2010 13:39 by Stefan Karlsson

 

 

    Microsoftchefen Steve Ballmer tog scenen i besittning på Mobile World Congress i Barcelona på måndagen och drog av täcket på sitt nya operativsystem för mobiler – Windows Phone 7-serien - ett helt nytt operativ från grunden.  Till jul kommer i stort sett alla mobiltillverkare att ha en modell med Microsofts nya operativsystem.gdm

    Det är utvecklare från Xbox och Zune som kastats in för att ta fram nya 7-serien för mobiler.

    Nya 7-serien har fått en ny design med en startskärm som kan uppdateras i realtid, informationen är uppdelad i ”hubbar” och en ”Bing-knapp” som tar mobilanvändaren direkt ut på nätet.

    Presentationen av Windows Phone 7 är väl värd att titta på, och den lockar genast till ett par reflektioner:

  • Snabbt –  De första mobilerna med Windows Phone 7 ska komma redan till julhandeln 2010.

  • Kopia - Om man vill är det lätt att påstå att Windows Phone 7 bara är en i raden av ”Microsoft gör som Apple”. Börja med en musikspelare med en ny användarmiljö (Ipod/Zune), lägg till internet och telefonfunktion och en läcker pekskärm med multitouch (Iphone/Windows Phone 7).

  • Extremt välgjort- Möjligen kan Windows Phone 7 ses som en kopia av Iphone OS och Android, men den här gången har Microsoft verkligen gjort sin läxa grundligt. Hela användarmiljön är betydligt mer genomtänkt och inbjudande än i tidigare Windowsmobiler. Kanske har Microsoft till och med hunnit ta något steg längre än Iphone OS och Android, exempelvis genom att adresser i kalenderposter med mera blir klickbara för kartvy genom ett slags automatisk bakgrundssökning.

  • Consistenty - Risk för anonyma tillverkare. Ballmer pratade vid presentationen mycket om enhetlighet (”consistency”) – olika form och storlek på Windowsmobiler är i och för sig välkomna, men de ska upplevas som lika. Därför har Microsoft jobbat hårt på en avancerad användarmiljö, som påminner om det Sony Ericssons åstadkommit i sin första Androidmobil X10. Det betyder å andra sidan att mobiltillverkare får mindre möjlighet än med Android att skapa sin egen känsla i mobilen. Tillverkarna av Windowsmobiler riskerar då att bli lika anonyma som tillverkare av Windowsdatorer.

  • Affärsmodellen. - Med Windows Phone 7 behåller Microsoft sin modell med betalda licenser – ett visst belopp per mobil. Android och Symbian är gratis (Iphone OS licensieras inte alls).

  • Kompatibelt - Frågetecken kring äldre program. Microsoft har ännu inte gjort klart om Windows Phone 7 är kompatibelt med äldre versioner av Windows Mobile/Phone, det vill säga om äldre program kan användas på de nya mobilerna, eller åtminstone lätt anpassas. Om inte måste Microsoft börja från noll med att locka fram program till de nya Windowsmobilerna. Till Iphone finns idag 140.000 program i Apples App Store.

  • Multitasking - Flera program samtidigt. Windows Phone 7 har liksom sina föregångare, och liksom Android och Symbian multitasking. Där är Iphone OS fortfarande inte. I Iphone är multitasking fortfarande reserverat för Apples egna program. Övriga program kan bara köras ett åt gången, och de kan då varken samverka med andra eller köras i bakgrunden.

  • Spel -Microsoft har integrerat sin onlinetjänst Xbox Live i Windows Phone 7.

Ita Grossmann på Mobile World Congress i Barcelona


Tags:
Categories: Mobilt | Mjukvara
Actions: E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

Applikationspooler och Sessionstates

February 4, 2010 14:23 by Stefan Karlsson

 

Stötte på ett problem med sessioner som försvann. Vilket var väldigt irriterande då vi inte kunde hitta anledningen, inga error, inga loggevent, inga spår alls om varför det skedde. Började titta i eventloggen på servern och se vad som loggats vid de tidpunkter som detta inträffade. Det enda jag såg som kunde kopplas till detta var informationsevent om att applikationspoolen gjort en recycle.

image

Applikationspooler

image


Som default så kopplas din website till DefaultAppPool, men du kan också skapa en egen applikationspool för din site. En applikationspool är egentligen en (arbets)process. Och som default så är det inställt att var 29:e timme så recyklas (återvinns/återanvänds) processen. Den återvinns också om något fel uppstår, men då loggas det som varning i eventloggen. En vanlig 29:timmes-recycling loggas som ett vanligt informationsevent för det anses vara ett naturligt flödeslopp.

image


Problemet

Problemet som uppstår är att vid återvinning så kan alla sessions-states som är aktiva i webbapplikationen (kan) dödas. Vilket är förödande om man har en webbokningssite och någon är mitt uppe i en bokning, kanske precis gått igenom betalningen och bokningen sedan ska sparas, skrivas ut, mailas. Om applikationspoolen återvinns just då så kan viktiga sessionsdata vara borta och du kanske inte hittar tillbaka till den aktuella bokningen osv.

Lösning

Enda sättet att komma förbi det här problemet är något av nedanstående:

  • Inte använda sessions-state (använd cookies, querystring osv) Men det kan vara farligt i en webbokning då användarna inte ska få trixa med priser, artikelnummer osv och man måste i så fall ta det med i beräkning när man bygger upp flödet (verifiering & validering blir mycket mer viktigt)

  • Stänga av Worker process recycling (vilket jag inte vet vad det kan få för konsekvenser, tar man detta beslut bör man googla vidare på det)

  • Ställa in så att sessions-states lagras i databas. Detta är väl den vettigaste vägen och öppnar även upp för andra fördelar (lastbalansering, uppdaterbar site utan att sessioner försvinner, kan starta om servern och behålla states osv)

  • På något annat sätt hantera lagring av sessionsstate när en process återvinns.

    Källa:
    “By default, Worker Processes recycle after a preconfigured amount of time. If your ASP applications are not designed to store session state while a worker process is recycled, then session state in that ASP application can be lost. To remedy this problem, you can either store session state in a database or disable worker process recycling.”

Tags:
Categories:
Actions: E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

Bara en liten feature till, snälla?

January 4, 2010 11:24 by Stefan Karlsson

 

Som programmerare är man ofta lockad att tillfredställa sina kunder eller användare av program man gjort genom att lägga till ny funktionalitet. Speciellt om det är en liten fix som bara tar 20 minuter att koda.

Det man inte tänker lika ofta på är att det faktist inte bara är de där 20 minutrarna det gäller. Har programmet stöd för flera språk så ska det översättas, manualer ska uppdateras, en ny version av programmet ska distribueras, påverkas någon annan del av programmet av denna ändringen, ligger högre prioriterade åtgärder i pipelinen osv.

Det påminner mig om den berömda “Hur många Microsoftanställda behövs det för att byta en glödlampa?”

För att göra en ny funktion (ex: ChangeLightBulbWindowHandleEx) som tar 5 minuter krävs detta hos Microsoft (och det är inget skämt utan normal arbetsgång):

  • One dev to spend five minutes implementing ChangeLightBulbWindowHandleEx.
  • One program manager to write the specification.
  • One localization expert to review the specification for localizability issues.
  • One usability expert to review the specification for accessibility and usability issues.
  • At least one dev, tester and PM to brainstorm security vulnerabilities.
  • One PM to add the security model to the specification.
  • One tester to write the test plan.
  • One test lead to update the test schedule.
  • One tester to write the test cases and add them to the nightly automation.
  • Three or four testers to participate in an ad hoc bug bash.
  • One technical writer to write the documentation.
  • One technical reviewer to proofread the documentation.
  • One copy editor to proofread the documentation.
  • One documentation manager to integrate the new documentation into the existing body of text, update tables of contents, indexes, etc.
  • Twenty-five translators to translate the documentation and error messages into all the languages supported by Windows.The managers for the translators live in Ireland (European languages) and Japan (Asian languages), which are both severely time-shifted from Redmond, so dealing with them can be a fairly complex logistical problem.
  • A team of senior managers to coordinate all these people, write the cheques, and justify the costs to their Vice President.

     

    Den där lilla 5-minutersändringen resulterar i flera manveckors arbete i slutändan. Vet man inte om detta så känns det som att 5 minuter kan man ju lägga på att göra en kund glad. Det viktiga här är alltså att ha en bra arbetsplan med värderade prioriteringar som gör att arbetsinsatsen man gör maximerar nyttan för så många kunder som möjligt.

  • Inlägget jag hämtat punkterna ovan från är från Eric Lippert's Blogg: http://blogs.msdn.com/ericlippert/default.aspx


    Tags:
    Categories:
    Actions: E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

    För er som gillar att löda och skapa

    January 4, 2010 02:32 by Stefan Karlsson

    Ta en titt på showen Systm som visar hur man “gör det själv”, allt från att bygga en fjärrstyrd öltunna, starwars-svärd, boota OS på flashdrive till att bygga en box som scannar av omgivningen på trådlösa videokameror och mycket annat.

    http://revision3.com/systm

    Man blir sugen att värma upp lödkolven på en gång!


    Tags:
    Categories:
    Actions: E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

    Lite konceptmöss från Microsoft.

    October 21, 2009 23:53 by Stefan Karlsson

    I nedanstående video från Microsoft så visas lite ideér på nya möss som är i koncept-stadiet. Meningen är att utöka mössen med multitouch-funktionalitet.

    De flesta ser ganska så obekväma ut tycker jag. Den sista tror jag dock på.


    Tags:
    Categories:
    Actions: E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

    Utomordentlig kundservice

    October 14, 2009 03:26 by Stefan Karlsson

    Det här blogginlägget av Joel Spolsky bör alla i IT-branschen, chefer, utvecklare, säljare, projektledare, testare läsa och förstå till fullo. Detta borde pluggas in och utföras prov vid varje måndagsmöte att man läst och förstått.

    7 Steg till utomordentlig kundservice.

    http://www.joelonsoftware.com/articles/customerservice.html

     

    Liten sammanfattning med kommentarer, men läs hellre ursprungsinlägget på engelska på Joels blogg som jag länkar till ovan. Min sammanfattning är mycket fattigare på information än orginalet:

    1. Fixa allt på två sätt
    När man tar emot ett supportsamtal så är första sättet att fixa ärendet att lösa kundens problem. Det andra sättet är att använda samtalet som underlag för att se till att problemet förebyggs i framtiden.Kan man ändra gränssnitt, information, meddelanden så att det inte blir ett problem i framtiden så har man ett bättre system, nöjdare kunder.

    2. Föreslå att “blåsa bort dammet”.
    Om man frågar kunden om “sladden är i” så svarar denna antagligen förnärmat “självklart” utan att titta efter. Många uppenbara frågor måste ställas för att inte missa en uppenbar lösning. Istället för att fråga om sladden är ikopplad, be kunden att ta ur kontakten och blåsa bort damm, och sätta i kontakten igen. Sitter kontakten i så får vi det bekräftat, sitter den inte i så säger kanske kunden “Ja, det löste problemet, det måste ha varit dammet”.

    Det denna punkt handlar om är att ta kunderna på rätt sätt, leva in sig i deras situation och ställa rätt frågor. Det handlar inte om att se kunderna som “idioter” som måste ledas igenom ärendet, utan helt enkelt kommunicera på rätt sätt.

    3. Gör dina kunder till fans.
    ”When customers have a problem and you fix it, they’re actually going to be even more satisfied than if they never had a problem in the first place.”

    Jag har själv ett bra exempel, ett riktigt dåligt köp av en soffa på IKEA. Soffans botten gick sönder när en kompis lite bryskt slängde sig ner i soffan. Efter ett samtal till IKEA så sa dom att en lastbil kommer och hämtar soffan senare i veckan och pengarna sätts tillbaka på mitt konto inom två dagar. Inga frågor om jag hanterat möbeln fel eller varför, utan enda villkoret var om jag var nöjd eller ej. Samma sak när jag råkade köpa för stor soffgrupp och efter ett par månader insåg att jag inte kunde möblera på något vettigt sätt, de tog tillbaka de monterade möblerna och pengarna tillbaka. Gissa om jag spridit denna information till alla jag känner (och nu i denna bloggpost). Ett annat företag levererade en våningssäng till mig, en säng som inte höll vad den lovade, trappstege med trappsteg som knappt höll för barn osv. De krånglade vid återlämningen, för att göra en lång historia kort, jag handlar inte där mer och även denna information delar jag med mig av till vänner och bekanta.

    Det kan vara värt mycket att lösa ett problem även om det är till en viss kostnad och även om man inte löser själva problemet så kan kunden bli nöjd. I Ikeafallet fick jag inte en bra möbelgrupp, men var en riktigt nöjd kund efteråt ändå. Att ha en plan för problem som inte går att lösa, t.ex. “nöjd kundgaranti” osv är en del av kundservicen.

    4. Erkänn skuld
    Uppenbart, har man gjort fel, säg det. Alla kan göra fel, att låtsas om som om man inte gjort det är att skjuta skulden mot kunden eller någon annan. Att stå för sina fel visar att man uppmärksammar dom och kan bättra sig, att man tar ansvar.

    5. Memorera besvärliga fraser
    Det här handlar om att inte agera utifrån ryggmärgsreflexer i alla situationer. Att inte automatiskt gå i försvarsläge när man får kritik. Öva på att kommunicera problemlösande istället för försvarstagande.

    6. Practice Puppetry (kom inte på någon bra översättning här)
    Punkten handlar om att vi alla spelar roller, kunden har sin kundroll, du har din roll oavsett om det är säljare, utvecklare, chef osv. När en kund klagar och är irriterad är det lätt att komma i försvarsläge eller ta det personligt. Du kan aldrig vinna en sådan diskussion och tar du det personligt så blir det 100 gånger värre. Kunden är inte arg på DIG, utan på företaget/produkten och du representerar företaget/produkten. Se mer i Joels blogginlägg.

    7. Girighet tar dig ingenstans
    Denna punkten fokuserar på att man med nöjdkundgarantier osv kan göra kunderna “glada” redan från början, så när dom kontaktar dig för t.ex. en bugg så är kommunikationen bra och trevlig istället för arg och irriterande.

    Joel som driver Fog Creek har en ganska så generös återbetalningspolicy:

    “We don’t want your money if you’re not amazingly happy.”

    “no-questions-asked 90-day money back guarantee”, en garanti som sträcker sig mer än 90 dagar, ringer du 200 dagar senare och säger att du inte är nöjd, fortfarande inga frågor, pengarna tillbaka.

    Läs mer om det under punkt 7 i bloggen.

    8. Ja, det finns en bonuspunkt, men den får du läsa i blogginlägget hos Joel istället.


    Tags:
    Categories:
    Actions: E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

    Flash Lite 3.1 på WIIn

    October 5, 2009 23:07 by Stefan Karlsson

     

    En uppdatering av internetkanalen i Wii-konsolen i dagarna uppgraderade minibrowsern (Opera) med stöd för Flash Lite 3.1.

    Flash Lite 3.1 är (enligt vad jag läst) en nedbantad Flash 8 som är till för att köras på telefoner och andra enheter som har begränsat minne m.m.

    Detta gör att man kommer åt många fler video och steaming-site i Wii:n än i den tidigare versionen.

    Youtube har dessutom en specialanpassad layout för Wii:n, så besöker du Youtube via Wii:n kommer du automatiskt att få den anpassade layouten.


    Tags:
    Categories: Wii | Flash | Flash Lite
    Actions: E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

    Windows 7 Ultimate från utvecklarsynvinkel

    September 29, 2009 14:28 by Stefan Karlsson

     

      Efter en vecka med windows 7 på burken så kan jag meddela att det inte varit några problem i utvecklingsmiljön.

      Då vi kör en hel del specialsaker med emulatorer både för comport och hårdvara samt kommunikation med extern hårdvara som kontrollboxar, babsterminaler osv så var jag lite orolig över att OS:ets säkerhetstänk skulle ställa till det, men det har inte varit några som helst problem.

      Windows 7 känns som XP i snabbhet, i många delar snabbare. Själv har jag valt klassiskt tema och försökt göra så att allt ser ut som i XP istället för att köra aero-gränssnittet.

      Några tweaks behövdes dock

      • Man måste ladda hem en special servicepack till VS2005 som är för vista samt köra VS som administrator

      • När man reggar sina 3dje-parts dll:er och andra dependencies så måste man köra CMD som administrator
      • Vill man att MSN ska ligga i traybar så får man köra MSN i vista-kompatibelt läge (Inställning på egenskaper på genvägen)
      • Jag kör följande på min utvecklingsburk, alla programmen fungerar, har inte haft problem med rättigheter eller annat:

        IIS, Ajaxtoolkit, WSE extention, Adobe Reader, ***** (banksimulator), com0com  (comportsemulator), componentone, daemontools (dvd/cd-emulator), mcafee, office 2007,  SQL 2000 +sp4, SQL 2005 +sp3, VS 2005 proffesional, VS 2008 professional, multilang2005 (språkstöds-addin för visual studio), simulator för skatteverkets kontrollbox, Simulator för point betalterminal, Windows Live Writer, Sourcesafe, Diverse olika VPN lösningar, Terminal Services.

        Den inbyggda Bluetoothhårdvaran har till och med börjat fungera, något som det inte gjorde i Win XP på den här datorn.

        Så här ser windows 7 ut när man har XP-fierat den. Har valt klassiskt tema, lagt till quicklinks-toolbaren, tagit bort allt som har med den nya taskbaren att göra samt sett till att msn-fönstret minimeras till traybar istället för att synas i taskbar hela tiden. Har ställt in att jag vill se alla ikoner i traybar också.

        image

        I det stora hela så är jag jättenöjd med Windows 7 Ultimate. Det var smidigt att installera.(valde ren installation, inte uppgradering)


        Tags:
        Categories:
        Actions: E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

        Ny Q/A site för tekniker

        September 1, 2009 11:37 by Stefan Karlsson

         

        Personerna bakom succén www.stackoverflow.com har skapat en systersite, http://serverfault.com/ som är inriktad på alla frågor som kan uppstå för en servicetekniker, systemtekniker m.m.

        Har det med servrar att göra, så är det hit du går för att få svaret. Samma snabba respons och lätthanterliga system som stackoverflow.

        Hälsa på: http://serverfault.com/

         

        Det har blivit en triologi, nu har även http://superuser.com/ skapats, som är inriktad på de frågor som man kan ha som vanlig datoranvändare.

         

        Så vi har numera

        Programmerarfrågor - http://stackoverflow.com/

        Serverfrågor - http://serverfault.com/

        Användarfrågor - http://superuser.com/

         

        Stack Overflow

        Server Fault

        Super User


        Tags:
        Categories:
        Actions: E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

        Windows API Code Pack for Microsoft .Net Framework.

        August 11, 2009 15:17 by Stefan Karlsson

         

        För alla som vill kunna styra och ställa in i det minsta i systemet så krävs det ofta att man kommunicerar med systemet självt genom API:er.

        Nu har Microsoft gjort ett litet ryck och fixat ihop ett källkodsbibliotek för att just kunna göra detta i .Net. Här får vi alltså färdiga definitioner och kod för att hantera nya saker i Windows 7 och i existerande OS, som t.ex. XP.

        Detta är en guldgruva! Vill man kunna använda befintliga dialogrutor, modifiera beteende hos befintliga kontroller, hooka in lite djupare i eventkedjan i systemet, så är det just det här man behöver.

        Biblioteket finns att hämta här:

        http://code.msdn.microsoft.com/WindowsAPICodePack/Wiki/View.aspx

         

        Beskrivning från sidan:

        The Windows® API Code Pack for Microsoft® .NET Framework provides a source code library that can be used to access some new Windows 7 features (and some existing features of older versions of Windows operating system) from managed code. These Windows features are not available to developers today in the .NET Framework.

        The individual features supported in this version (v1.0) of the library are:

        • Windows 7 Taskbar Jump Lists, Icon Overlay, Progress Bar, Tabbed Thumbnails, and Thumbnail Toolbars.
        • Windows 7 Libraries, Known Folders, non-file system containers.
        • Windows Shell Search API support, a hierarchy of Shell Namespace entities, and Drag and Drop functionality for Shell Objects.
        • Explorer Browser Control.
        • Shell property system.
        • Windows Vista and Windows 7 Common File Dialogs, including custom controls.
        • Windows Vista and Windows 7 Task Dialogs.
        • Direct3D 11.0, Direct3D 10.1/10.0, DXGI 1.0/1.1, Direct2D 1.0, DirectWrite, Windows Imaging Component (WIC) APIs. (DirectWrite and WIC have partial support)
        • Sensor Platform APIs
        • Extended Linguistic Services APIs
        • Power Management APIs
        • Application Restart and Recovery APIs
        • Network List Manager APIs
        • Command Link control and System defined Shell icons.


        What’s New in this update (v1.0):
        The new features added in this update of code pack are:

        • Shell Search API support.
        • Drag and Drop functionality for Shell objects.
        • Support for Direct3D and Direct2D interoperability.
        • Support for Typography and Font enumeration DirectWrite APIs.


        Other enhancements done in this update are:

        • Bug fixes in all areas.
        • Performance optimizations.
        • Some improved and new samples (esp. for the new features in this release).
        • Improved API reference documentation.

        Tags:
        Categories:
        Actions: E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed