PHP 7 Released

On Thursday 3rd December, PHP 7 was released and is now available for download.

On OS X, there are various ways to install PHP, but the way I find the easiest is to download and install is via http://php-osx.liip.ch/

To install from here, is basically a case of executing:

curl -s http://php-osx.liip.ch/install.sh | bash -s 7.0

This installs PHP 7 (or other versions) with a decent set of extensions configured (such as XDebug).

PHP 7 contains many new features, probably the ones I’m most pleased to see are the increase in performance (which is estimated to be up to twice as fast as PHP 5.6) and the improved exception hierarchy and handling of errors.

Posted in Development, PHP, Uncategorized | Tagged | Leave a comment

Chutzpah 2.5 Released

Matthew Manela has announced on his blog that Chutzpah 2.5 has been released and is available. The easiest way to get this new version is to check for updates in Visual Studio and let VS update it for you (assuming you’ve already installed a previous version)

This version of Chutzpah now supports VS2013.

Full details are on Matthew’s blog:

http://matthewmanela.com/blog/chutzpah-and-snippet-designer-now-support-visual-studio-2013/

Posted in Testing | Tagged , , | Leave a comment

Deleting a Team Project From Team Foundation Service

If you’ve created a project incorrectly in Team Foundation Service, or you simply don’t want to host a project with it anymore, you’ll find that there is no option to delete a project from your collection via the Team Foundation Service Web Interface.

To delete a project, you need to have Visual Studio installed and need to open a Visual Studio command prompt. From a VS command prompt, you can delete a project using the “tfsdeleteproject.exe” command as below:

tfsdeleteproject
/collection:https://.visualstudio.com/DefaultCollection
""

Where is the name of your TFS collection that you registered with Team Foundation Service and is the name of the project you wish to delete.

If, for any reason, this fails, you can add the “/force” parameter to force the project to be deleted.

If you wish to run “tfsdeletecollection” from a standard command prompt rather than a Visual Studio command prompt, then you will find the executable in the following folder:

C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE

For more information on the arguments to “tfsdeletecollection”, simply run the command on its own with no arguments.

Posted in VCS | Tagged | Leave a comment

Page Navigation In Windows Phone 8

In Windows Phone 8 applications, the NavigationService class is used to navigate between application pages.

To navigate to a new page, call the .Navigate() method:

NavigationService.Navigate(
  new Uri("/Pages/AboutPage.xaml", UriKind.Relative));

The Navigate() method takes 2 parameters. The first being the page to navigate to. I like to keep my pages in a subfolder “/Pages” to keep them organized.

The second parameter specifies whether the Uri is relative or absolute. In the example above, the Uri is relative to the application’s structure, i.e. the AboutPage.xaml file can be found in the /Pages folder located of the application’s source root.

If required, an application can navigate backwards from a page, gain using the NavigationService class.

NavigationService.GoBack();
Posted in Development, Windows Phone | Tagged , | Leave a comment

Confiuring IISExpress Host Binding

IIS Express is an easy to use, developer friendly, lightweight version of IIS.

Unfortunately, the default configuration of IIS Express is to bind to localhost only so it cannot be accessed from machines other than the one it is running on.

To configure IIS Express to bind to a machine’s IP address rather than localhost, you need to edit the IISExpress/config/applicationhost.config file.

Edit this file and search for the <sites> collection

<sites>
  <site name="..." id="1" serverAutoStart="true">
    ...
    <bindings>
      <binding protocol="http" bindingInformation=":8080:localhost: />
    </bindings>
  </site>
</sites>

To change IIS Express to bind to the machine’s IP address, edit the bindingInformation attribute and change it to be in the format <ip Address> : <Port> : <Host Name>.  If you wish to bind to all the ip Addresses on the machine, set the ip address to an asterisk ‘*’, e.g.

<sites>
  <site name="..." id="1" serverAutoStart="true">
    ...
    <bindings>
      <binding protocol="http" bindingInformation="*:8080: />
    </bindings>
  </site>
</sites>

After making these changes, you will need to restart IIS Express.

Posted in Application Servers, IIS | Tagged , | Leave a comment

Running 32 Bit Application On 64 Bit IIS

If you’re running IIS 6 on 64 bit Windows 2003, the default configuration is for all applications to run as 64 bit within IIS. If you therefore have a 32 bit ISAPI extension or ISAPI filter that you wish to run, it will not work out of the box.From Win 2003 SP 1 onwards however, you can configure IIS so that 32 bit processes can be executed using the 32 bit compatibility layer. This is achieved by executing the following command from the InetPub\AdminScripts directory.

cscript.exe adsutil.vbs set W3SVC/AppPools/Enable32BitAppOnWin64 “true”

The downside of this however is that IIS6 can only run either 32 bit processes or 64 bit processes – it cannot run a combination of both. you need to think carefully before enabling this option therefore to ensure that all applications work correctly across all web sites defined within IIS.

Posted in Application Servers | Tagged , | Leave a comment

“Why JSF” or maybe “Why Not”?

In his blog, Keith poses a question “Are you using JSF or intending to?”. So here goes, these are my reasons for learning JSF.

  1. The answer Keith didn’t want. It’s a standard. I know this is a very boring and possibly not very good reason, but I’m interested in the new Java EE 5 spec and JSF is a part of the new spec.
  2. I don’t know JSF yet. This may sound pretty obvious, but I want to learn JSF because I don’t know it. If I don’t know JSF well enough to develop applications in it, I can’t really say whether it is fit for the types of applications I develop or whether I should be using some other framework like Struts or Wicket or Spring MVC.
  3. I want to learn Seam. Seam is based upon JSF, so its probably a good idea to get a good grounding in the basics before progressing to the next stage.
  4. JSF will supposedly allow me to develop web apps quickly. Whether this is true or not, I’m sure I’ll soon find out!

So, will I ever deploy an application with JSF? I don’t know, I’m still in the early stages of learning. I know there is plenty of information on the internet regarding peoples opinions of various technologies including JSF, but how much of it is FUD and how much is reasoned criticism?

Posted in Java | Tagged | Leave a comment