Microsoft Security Essentials – Gratis Anti virus

Misschien heb je het gelezen op de SDN site of op de blog van Ruud de Jonge van Microsoft. Sinds vanavond (29 september 2009) is Microsoft Security Essentials beschikbaar, dit is de gratis Virus en Spyware oplossing voor de consument van Microsoft. Voor de zakelijke klanten blijft natuurlijk de ForeFront Security familie een oplossing.

Natuurlijk moest ik dat tool gelijk downloaden en installeren. Eerst heb ik mijn AVG gedeinstalleerd, normaal gesproken gebruik ik de Free versie van AVG 8.5 altijd. Toen naar de website en installeren maar. 5 minuten later had ik een nieuwe anti virus scanner geinstalleerd. Nope, geen registratie nodig, nope geen registratie id, yep wel een valide versie van Windows nodig natuurlijk.

Na het installeren krijg je dit:

msehoofd msehoofd2 msehoofd3 msehoofd4

Maar goed, dan heb je een nieuwe virus scanner. Dan wil je ook weten of het werkt? Toch? Nou, ik wel in elk geval. Maar om nou mijn computer te infecteren met een virus. Dat leek mij niet zo’n goed plan. Uit een grijs verleden kon ik mij nog herinneren, dat er een soort tekenreeks was die zich als een fake virus voordoet. Dat is de Eicar AV test code ("i-kar").

Dus testen he. Op de desktop een text bestand maken, de code van de website erin plakken en het tekstbestand opslaan. Bijna direct na het opslaan kleurde mijn nieuwe MSE rood. Na een klik op de button “Computer Opschonen”, duurde het enkele seconden en kleurde mijn MSE weer groen.

msehoofd5_virus msehoofd6_virus msehoofd7_virus_verwijderd

Geweldig niet! Het werkt, nu maar hopen dat ik deze mooie rode kleur nooit meer tegenkom 😉

msehoofd8

Oja, alle history blijft natuurlijk beschikbaar. Daar staat dan een heel dreigende tekst over dit specifieke virus. Maar als je doorklikt op de link, dan weet de Microsoft Virus Encyclopedia toch dat het “Virus:DOS/EICAR_Test_File is not malicious and is a utility file created specifically to test that an antivirus application is functioning.”.

Veilig idee!

VS 2010 – Multi Monitor support

Met de komt van Visual Studio 2010 komt er ook support voor Multi Monitor. Bijna alle verschillende onderdelen kun je bij de Visual Studio omgeving plaatsen. Dit gaat zeker van groot nut blijken te zijn.

demo1

demo2

(Oh jee, ik hoor de Delphi mannen en vrouwen alweer snuiven! Delphi kon dit al jaren 😉 )

Hardlopen en Fietsen

Het is al een tijdje stil op mijn rond mijn hardloop en fietsactiveiten. Na de Marathon van Rotterdam had ik het wel even gehad met hardlopen. Ik kreeg mijzelf niet meer gemotiveerd om de schoenen aan te trekken en te gaan lopen. Ik liep wel geregeld, maar meestal niet meer dan 1 keer per week.


Ik wil nog steeds de Alpe D’Hueze op fietsen. En dat is waar ik de afgelopen zomer veelvuldig mee bezig ben geweest, namelijk fietsen. Het was erg mooi weer en ik had veel mooie gelegenheden om op de fiets te stappen. Overigens heb ik door het vele fietsen wel respect gekregen voor de Wielrenners in de Tour de France of andere wedstrijden. Hun gemiddelde snelheid haal ik bij lange na nog niet. Zeker ook respect voor Kenny van Hummel, zoveel kilometers in je eentje fietsen tegen zo’n klote berg. Dat vergt moed en doorzettingsvermogen. Oke, dat moet ik dus ook zien op te bouwen voordat ik alleen die berg op kan 😉


Een week of 5 geleden kreeg ik weer zin in regelmatiger hardlopen. Min of meer gedwongen omdat ik mij had opgegeven voor de Damloop. En tja, dan moet je wel gaan trainen. Ondertussen heb ik in de afgelopen 3 weken inmiddels 3 wedstrijden achter de rug. Met best aardige resultaten.


















Bridge-to-Bridge Arnhem

53:19

10km
Damloop Zaandam-Amsterdam

1:35:18

10EM
PosbankLoop Velp

1:31:38

15km

De Bridge-to-Bridge loop was 3 1/2 minuut sneller dan twee jaar geleden. Vorige jaar heb ik hem niet gelopen ivm de voorbereidingen voor de marathon van New York. De Damloop was een 1/2 minuut langzamer dan vorige jaar, maar ja toen was ik helemaal in vorm voor een marathon. Alleen van de PosbankLoop heb ik geen vergelijkingsmateriaal, twee jaar geleden heb ik de 6km gelopen in 33.33. Bij de Damloop en de Posbankloop was het dit jaar erg warm weer.

Windows 7 – Taskbar Tip

De Windows 7 taskbar werkt erg prettig en je gaat er erg makkelijk aan wennen. Daar kwam ik gisteravond achter. Ik zat in een Windows 2008 VPC. Ik ging met mijn muis boven de icoontjes op de Taskbar hangen en ik verwachte gewoon dat ik preview schermen te zien kreeg 😉

Wat ik nog niet door had. Zoals ik in een ander blogpost vertelde kun je applicaties op de taskbar pinnen. Dan hoef je niet helemaal naar het menu opzoek naar de goede locatie en dan te klikken. Maar als de applicatie al geactiveerd is, dan zorgt klikken op het icoontje voor het actief maken van de instantie. Bijvoorbeeld als je Notepad gestart hebt en een andere applicatie staat op de voorgrond, dan zal het klikken op het Notepad icoontje zorgen dat Notepad weer naar de voorgrond komt.

Maar wat nu als je een nieuwe lege Notepad wilt starten. Hoe doe je dat dan? Ik ging dan dus wel telkens naar het menu etc etc. Niet handig. Vandaag via Twitter hoorde ik de oplossing. Hou de Shift toets ingedrukt en klik dan op het icoon, er zal een nieuwe versie van de applicatie starten. Kijk dat is handig!

Oja, als je op een icoon klikt met je muis waarvan er meerdere open zijn. Dan kun je met CRTL-Tab door de verschillende heen scrollen en zie je gelijk een preview.

VS 2010 – Analyse mogelijkheden

Visual Studio 2010 heeft allerhande extra analyse mogelijkheden. In principe is daar ten opzichte van Visual Studio 2008 weinig aan veranderd. Wel is er een hele nieuwe optie ‘Visualize Code Dependencies’, maar daar over later meer. Wat wel veranderd is, zijn de verschillende rapporten van een analyse. Waren in VS2008 deze rapportjes nog ‘gewone’ opsommingen in een tabel, nu zijn er meer grafische elementen toegevoegd. Uiteraard duurt het genereren van het rapportje nu dan ook veel langer.

analyzemenu analyzemenu2008

(rechts VS2010 en link 2008)

Ik was hier mee aan het spelen, omdat een van de nieuwe taal elementen in .NET 4.0 natuurlijk pLinq is. En ik was wel heel erg benieuwd hoe pLinq nu invloed heeft op het gebruik van onze moderne CPU’s. Tegenwoordig hebben we nu allemaal minstens 2 cores in de processor zitten. Maar vooralsnog gebruiken we deze cores nog maar bar slecht.

De verschillen in de Performance Wizard zijn best groot, zo heb je in Visual Studio 2010 veel meer keuzes. Ook de verschillende views op de resultaten zijn enorm uitgebreid.

profilerwizardprofilerwizard2008

De beide wizards, rechts 2010 en links 2008.

verschillendeviewsverschillendeviews2008

De beide keuzes aan views, rechts 2010 en links 2008.

Mijn test was als volgt. Uiteraard heb ik dit niet zelf bedacht, maar gejat van Daniel Moth.

 normalecodeplinqcode

Het rechtse code voorbeeld is de recht-door-zee Linq query. We vullen een array met getallen van 1 tot 1000. Daarna doen we een Linq query over de array en zoeken alle getallen die deelbaar zijn door 5. We drukken het aantal resultaten af en we berekenen het aantal ticks tussen het begin en het eind. In het linkse code voorbeeld doen we hetzelfde, maar dan gebruiken we de Extension Methode AsParallel. (We hoeven natuurlijk pas de Stopwatch te starten als we werkelijk iets met q gaan. De Linq query wordt pas echt uitgevoerd in de UseResult methode.)

Het uitvoeren van beide varianten levert al een duidelijk verschil op. Uiteraard niet op het resultaat, dat is in beide gevallen 200 😉 Maar wel het aantal ticks, dat is in de pLinq variant beduidend lager. In de Taskmanager is ook iets leuks te zien. De CPU usage is in beide gevallen anders. Mijn machine heeft twee cores. In het eerste geval is er een verhoogde activiteit, maar nooit voluit en niet gelijk verdeeld over beide cores. In het tweede geval schiet het CPU gebruik naar de 100% en dan ook voor beide cores.

Met de performance wizards is dit erg mooi te zien. In beide rapporten kun je kiezen voor CPU ultilization. Het laat zich raden wel de pLinq variant is.

cpuutilization

De bovenste meting is van de pLinq versie en de onderste is de gewone recht-door-zee Linq query.

Het is zeker aan te bevelen om eens met de verschillende views te spelen.

Maar nu de nieuwe optie ‘Visualize Code Dependencies’. Die had ik nog niet gezien in Visual Studio 2008. Deze optie heeft drie keuzes: by Assembly, by Class, by Namespace. Alle drie hebben een ander startpunt, vanaf waar je door kan klikken naar beneden. Als je deze optie loslaat op de voorbeelden van hierboven, dan krijg je dit.

codedepbyclass01

Als je dan klikt op het tekentje in het cirkeltje, dan krijg je onderstaande.

codedepbyclass0 

Voor de code van de voorbeelden uit deze blogpost niet zo heel erg indrukwekkend. Maar als ik een oude VS2005 applicatie open en kies voor een view ‘By Class’, dan geeft dat toch een heel ander beeld. Best indrukwekkend.

codedepbyclass

codedepbyclass2

Gaat het ons toch nog eens lukken om documentatie te maken, die daadwerkelijk overeenkomt met de opgeleverde code. Maar ja, dan blijft de documentatie natuurlijk wel weer de sluitpost. Tenslotte aan het eind is de code klaar 😉

SQL Azure

Afgelopen dagen een beetje gespeeld met SQL Azure. Wat ziet dat er veel belovend uit.

Oke, de manier om er mee te werken is nog een beetje spartaans. Je kunt connecten met behulp van Microsoft SQL Server Management Studio. Maar je mist wel de handige Object explorer zoals je die gebruikt bij je normale SQL Server dingetjes. Ik denk dat dat in de toekomst nog wel zal verbeteren.

Maar goed laat ik bij het begin beginnen. Op de Azure Services site heb ik nu een SQL Azure tabje erbij. Daarop staan niet veel zaken: de database server naam, username. Je kunt er een nieuwe database maken en connectionstrings opvragen, daar blijft het dan wel verder bij.

sqlazuresite

Newdb

Het maken van een nieuwe database.

connectstrings

Het bekijken van de connectionstrings.

En daarmee is het eigenlijk wel gedaan op de site. Verder kun je er niets. Tot zover de rijke user interface 😉

Maar zoals gezegd, je kunt wel connecten met Visual Studio (Server Explorer) of Microsoft SQL Server Management Studio. Bij die laatste zit er wel een addertje onder het gras. Je kunt niet zomaar de New Connection Wizard gebruiken. Je moet een New Query maken en daar de connection gaan opzetten. Je moet dan niet vergeten om de default Database in te vullen. Anders vervalt dat naar de Master database en tja daar kan je niet veel.

connectdb1 connectdb2

Wel grappig is dan om te zien, in de drop down met Available Databases staat CloudeNode.

connectdb3

Als je over de tab met de Query hangt, dan krijg je de volledige string te zien. Die is beduidend langer dan bij een normale lokale of remote Database.

connectdb4

Als je op Connect druk overigens, krijg je altijd onderstaande fout. Niets ernstigs, maar wel vreemd.

 knownerror

Uiteraard heb ik een aantal standaard SQL dingetjes geprobeerd. Ik heb:

  • een tabel gemaakt
  • een primary key op de tabel
  • een insert op de tabel geprobeerd
  • een select uiteraard
  • een stored procedure (een simpele om een select van de tabel te retourneren)
  • en een view op de tabel

Het enige wat je vooralsnog niet kunt (en dat is natuurlijk ook niet zo gek), de FileGroup en Partioning Scheme aangeven. Deze zullen door de Cloud geregeld gaan worden.

Bij het maken van de index ontdekte ik, vooralsnog, alleen dit:

ALTER TABLE dbo.MyDemoTable ADD CONSTRAINT
    PK_MyDemoTable PRIMARY KEY CLUSTERED
    (
    ID
    ) WITH( STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF )
    /*,ALLOW_ROW_LOCKS = ON , ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]*/
GO

Het rood gemarkeerde kan (nog) niet in SQL Azure.

Wat ook nog mist, zijn alle bekende system stored procedures. Zoals SP_WHO, SP_HELP, SP_LOCK etc. Uiteraard zijn wel de sys tabellen beschikbaar, zoals sys.databases etc. Daarmee kom je natuurlijk alweer een heel eind. Wel vervelend is het, dat je geen auto complete hebt.

auto complete

Maar daar is wel al een oplossing voor. Je kunt je database, entiteiten en artifacts gewoon maken in een lokale database. Zodat je alle mogelijke hulp en hulpmiddelen tot je beschikking hebt. Daarna ga je met het SQL Azure Migration Wizard tool (van CodePlex) een SQL Azure script maken. Dit tool filtert dan alles wat (nog) niet mogelijk is, weg uit het script.

Tot slot, het ziet er allemaal wel erg aardig uit. Maar ik moet je eerlijk bekennen, dat het bekend voorkomt. Bij mijn website hoster heb ik ook een SQL server tot mijn beschikking en voor mijn gevoel is dat niet heel veel anders. Ook daar heb ik niet vrijheid van filegroups etc. Oke, daar kan ik niet ongestraft een database aanmaken geloof ik.

Komende weken maar eens verder expirementeren met SQL Azure.

Fouten melden aan gebruiker. Maar zo?

Deze foutmelding zag ik vandaag op de website van TNT post. Geweldig! Duidelijk is wel, dat de Track and Trace tooling van TNT post door techneuten gebouwd is. Misschien was het handig geweest als er ook iemand met UX ervaring naar gekeken had 😉

tntposttrackentrace

Of is de term ‘Hoofdgeheugen’ voor iedereen duidelijk genoeg?