Setting up my Windows environment

Since I am not working with a Windows environment on a day-to-day basis, the first task for the WinPHP Challenge for me was to actually install a Windows environment and get my development environment up and running.

As I don't have any spare hardware on which I can install Windows, setting up Windows for me meant creating a new Parallels virtual machine on my iMac. On that VM, I installed Windows Server 2008, of which I still had a copy lying around.

The easiest way I had heard of to get a server environment up and running must be the Web Platform Installer by Microsoft, which you can use to easily install IIS and PHP. So, I downloaded the Web Platform Installer and used it to install IIS and PHP. It was indeed pretty easy to install all the things I needed, with automatic installation of dependencies, however it was a nuisance every once in a while, because several of the components I had to install required me to reboot my Windows. All in all, I think I had to reboot 4 times to get my platform up and running. When twittering about this, I did get a response from Josh Holmes that it was not supposed to do that, so I am not sure what happened there.

Since I am using Github for my code, I also needed to get Git up and running. Now I heard horror stories about running Git on Windows but actually it is quite easy as it turned out. It is just a matter of installing mSysGit and off you go. I especially like the Git Bash commandline that gets installed that way (which I'm really used to while working with Git on Linux and OSX).

After having cloned the MediTerra repository, it was time to install an IDE. Lately I have become a fan of the Jetbrains PhpStorm IDE, and since they have a Windows build available I decided to install that one. Starting it and creating a project from the cloned MediTerra repository worked fine and it seems PhpStorm runs like a charm, just like it does for me on Linux.

Since I am building an application that is supposed to run on Windows Azure, and I want to develop my application without having to deploy to Azure itself all the time, I also need the Azure SDK. I downloaded the SDK and tried to install it, but found out it has some dependencies that I needed before being able to install the SDK. The first one (.NET Framework 3.5 SP1) was listed on the SDK page (stupid me, I should've read), was an easy download and install. The second one was MS SQL server, of which the Web Platform Installer has an easy installation option. Luckily the Web Platform Installer is really as easy as opening the WPI installer, selecting the package you want and click install. It takes a short bit but then you've got it installed and up and running. 

The installation of the Azure SDK was pretty straightforward after that. Well, I ran into a strange problem where the SDK installer would basically stall on checking for diskspace requirements, but there's nothing a Windows reboot does not solve ;) and after that, the SDK installed fine. One bit of feedback towards Microsoft though: Get the Azure SDK into the WPI to make it all even easier.

So now I have a seemingly running local environment. It's time to start working on the code. This is where I'll leave it now, and start with my next blogpost.

Add comment

Comments

gravatar Dr. Robert Goulet: Goodness. I think you lost me mSysGit. I guess I don't know as much about development environments as I thought I did. Thanks for posting this though. Even though I'm behind, this explains enough for me to start trying things out on my own. I happen to be already using a Windows environment though, so I'm already one step there!
February 7, 2011
gravatar Les: For some of us PHP developers, IIS is a dirty word :evil: :lol:
October 11, 2011
gravatar online dating sites: Congratulations. Extremely impressed with the excellence of the knowledge offered. I sincerely hope that you keep up with the good job conducted.
October 14, 2011
gravatar orlando car accident lawyers: The process of setting this up is not hard at all. There is so much that goes into this but well worth it.
November 3, 2011
gravatar Accounting Software: Really i am impressed from this post....the person who create this post it was a great human..thanks for shared this with us.
November 18, 2011
gravatar Fadi Karnaby: The sign of an intelligent people is their ability to control their emotions by the application of reason.
November 18, 2011
gravatar compaq ladegerät: Very interesting topic will bookmark your site to check if you write more about in the future.
November 18, 2011
gravatar dentist in houston: Thanks for the best blog. It was very useful for me. Keep sharing such ideas in the future as well. This was actually which was looking for and glad to come.
November 29, 2011
gravatar bestech park view ananda: I think this is a educational post thanks.
December 29, 2011
gravatar music production: Nice website like article thanks I feel lucky to search this websites. I really appreciate you.
January 1, 2012
gravatar medium length hair styles: This has to be one of my favorite posts! And on top of thats its also very helpful topic for newbies. Thanks a lot for informative information!
January 14, 2012
gravatar IT Support Fishpool: These kind of post are always inspiring and I prefer to read quality content so I happy to find many good point here in the post
February 3, 2012
gravatar Otsingumootorite optimeerimine: This is a interesting line of content, very good article. Thanks for sharing this post, nice way of bring this subject to discussion. Keep up the excellent work !
February 4, 2012

Php5_zce_logo

Upcoming events

I will be speaking 06-02-2012: D-Day
I will be speaking 17-02-2012: Techademy Trainingday February
I will be speaking 23-02-2012: Zend Webinar: Git for Subversion Users

Tags

1337 2008 2010 2011 4developers access modifiers accessibility AdaLovelaceDay09 advent agavi agile alfred amsterdam apache api apple article articles atk atkMetaNode audioscrobbler automation azure backwards compatibility barcelona barcodes bash bbc bbq beatstad belgium best practices bittorrent blogging blogs boards of canada book books bughuntday bundle caching cake cal evans calendar career cat cerf certificate cfp clear cms cologne common sense communities community components conference conferences contest continuous integration contribute contribution crisis css custom d-day datetime DbFinderPlugin decorator decorators deployment devdays development directoryindex docblox doctrine documentation download dpc dpc09 dpc10 dpc11 DPC2008 dreamhost drupal dv7 eclipse ed editors efficiency enterprise errors event events expertise ezcomponents facebook finland flickr fork framework frameworks freelance freeze frontend fun game games geoip germany getting real git github gnome-do google google calendar googletalk graceful degradation hack hackers hidden gem hiphop howto hp HR html http i386 ibuildings icann ide ideasofmarch idm imovie indy ingewikkeld integration international php conference internet interview ipad IPC ipc ipc08 ipc10 ipc11se iterm2 javascript jenkins jenkins-php job job openings jobeet john peel joomla joomladays kiva kubuntu launcher launchy left on the web libraries library lighttpd lime linktuesday linux live london loudblog m2ts mac magazines malware mambo marjolein mediterra meeting meme meta methodology micro-financing microframework microsoft migration movie music mysql namespace namespaces netbeans netherlands newsfire nllgg nos odmarco open source opinion ORM osx paradiso paris partnership pavilion pear pecl performance personal pfc10 pfc11 pfcongres pfcongrez pfz photo php php5.3 phpabstract phpazure phpBB phpbb phpbelgium phpbenelux phpbnl10 phpday phpdoc phpdocumentor phpgg phpitalia phpnw phpnw08 phpnw11 phpstorm phptek phptek09 phpuk2009 phpUnderControl phpunit php|architect php|tek podcast politics portability postcrossing presentation presentations private projects protected prototype PSR-0 public python qa qr codes re2c recruiting refactoring review rewrite ruby on rails san francisco schedule scifi script security sensio seven things sfdaycgn sflive2011 shell scripting silex simplexml slides smfony software sogeti solar sound speakers spl ssh standard standards star trek static steer strings stylesheets subversion symfony symfony live Symfony2 symfonycamp symfonyday symfonylive symfonyUnderControlPlugin talk talks techademy technology techportal tek09 telecommuting terratec terrorism testfest testing textmate textpattern the right tool timeout tips tld todo tomas tools training twig uncon unet usability usergroup validation vhost video vim vinyl virus warp webinar weblogging webservices wiki windows winphp women wordpress work workshop world world of warcraft wpi writing wunderlist xml xpath xsd yara year youtube zc11 ZCE zemanta zend zend framework zend server zend studio zendcon Zend_Form zite
© 2004 - 2012 Stefan Koopmanschap + Powered by Symfony, photos powered by Flickr, links powered by Delicious, Shanghai smilies by Iconbuffet. Feeds: rss / atom. Left on the Web v4.4.0.1