TeamStation AI System Report LATAM IT Salaries 2024
Microsoft loves PHP. Seriously.
1. Microsoft Loves PHP
– Seriously!
Brendan Sera-Shriar
Web Designer
dropit@dropthedigibomb.com
@digibomb
Paul Laberge
Architect Advisor
paul.laberge@microsoft.com
@plaberge
2. When you here the name
“Microsoft”, what types of images
does it conjure in your head?
3. A problem has been detected and Windows has been shut down to prevent damage to your
computer.
The problem was caused by the following: gotchaitsajoke.sys
SYSTEM_FAULT_WINSYS_BOOTSTRAP.DRV
If this is the first time you have seen this Stop Error screen, restart your computer.
If this screen appears again, follow these steps:
Check to make sure all hardware and software is properly installed. If this is a new
installation, please contact the manufacturer of your computer.
If problems continue, disable or remove any new hardware you may have recently installed
and try rebooting. Consider booting into Safe Mode to disable any advanced hardware
features first by pressing F8 to select Advanced Startup Options and select Safe Mode.
For more information on BSOD refer to http://uncyclopedia.wikia.com/wiki/BSOD. This
presentation is certified LOLCAT-free.
Technical Information:
***STOP: 0x4E4F4443 (0xEA1019D, 0xFFF0101F, 0x00ABACAB, 0xBABABABA)
***GOTCHAITSAJOKE.SYS – Address 484DE5FA base at 544444AA, Datestamp 49A62CD
***WHOKNEWTHE.DRV, EMPIRTEHADA.CFG, SENSEOFHUMOUR.DAT
nV4_DISP
Beginning dump of physical memory
Physical memory dump complete
Contact your system administrator or technical support group for further assistance.
7. That being said, Microsoft is trying
really hard to change this perception
by working with the Free
Software/Open Software community.
I’m sure there are many more you
can think of.
8. We’re very happy to be
here.
The reason we are here is
not to convert you
(honestly!) but rather to let
you know of some of the
things we are doing to help
you succeed.
9. Goals for Today’s Session
• Put a face to Microsoft, specifically Microsoft
Canada.
• Demonstrate our honest desire to work with the
Open Source Community and provide a positive
contribution to it
• Show you some of the tools Microsoft has built
(ourselves or with partners) to make Open Source a
First Class Citizen on Windows
11. Believe it or not, we’ve actually been
contributing and actively participating in the
open source community for a while and we’ve
recently ramped it up a notch.
12. Make Web Not War – DEVTrain
Photo by Chris Luckhardt (motionblur)
• Annual conference hosted by Microsoft
• Different city each year
• Bringing diverse platform communities
together
• Open discussion on how to build great
software and solutions
• Networking and fostering friendships
• http://www.webnotwar.ca
13. • Blog and discussion platform for
open source on Windows
• Prominent FOSS community
members provide posts
• News about cool, new
interoperable tools and software,
including those from Microsoft
• http://port25.ca
14. • Started sponsoring and actively
participating WordCamps in
Canada in 2009 (at WordCamp
Toronto 2009)
• Reaching out the the WordPress
community to put a face to the
Microsoft brand
• Show the PHP community we’re
really not that evil
Joey deVilla, Microsoft Developer Evangelist at WordCamp Toronto 2009
Photo: Hicham Souilmi
15. • Incepted by Microsoft in 2009 as
Codeplex.org and spun as an
independent entity in 2010
• Founded to enable the exchange of
code and understanding among
software companies and open source
communities
• Provides a framework that allows
developers in software companies to
contribute freely to open source
initiatives
16. • With Internet Explorer 9, Microsoft is
embracing the future standard of
HTML5
• Microsoft is a core team member for
the HTML5 specification
• Microsoft is actively involved in over
30 working groups at th W3C
18. A look back to 2006
• PHP 4.4, 5.0
• IIS 6
• PHP on Windows+IIS
• Running on CGI
– Stable but Slow
• Running on ISAPI
– Fast but unstable
Translation:
Weweren’tinthegame.
19. FAST-CGI PHP
• Production PHP on
Windows!!!
• Requests from app pool
• Automatic max app pool
sizing
• Auto recycling PHP pool
when php.ini changes
• Consolidate PHP errors in
IIS
20. IIS 7
• Nearly ground up Rewrite
• New modular architecture
• Default minimum installation
• Streamlined processing pipeline
• New XML-based web.config
22. SQL Server
• PHP Driver for SQL Server 2.0
• Support for native PHP
• Support for PDO
• Support for PHP 5.3
• Source released under Apache 2.0
• Drupal 7 will be first major PHP app with SQL
Server support
23. PHP INTEROPERABILITY
• Windows Azure Companion
(CTP)
– Install & configure PHP & web
apps
• Azure Tools for Eclipse/PHP
– Build for the cloud on PHP
• Azure Cmd Line Tools for PHP
– Cmd line package & deploy to
Azure
• Windows Azure SDK for PHP
– Extend with blobs, tables and
queues
25. WEBMATRIX
• Create a new PHP
site
• Web Application
Gallery
• Create from Folder
26. WEBMATRIX
• Customize and Test
– Light-weight editor
• HTML, PHP, CSS
– Easily add modules
– MySQL Database
editor
– Monitor HTTP
Requests
– Tune and optimize for
Search Engines
27. WEBMATRIX
• Publish to the Web
– FTP
– Web Deploy
• Includes Database
– Pull - Synchronize
• Web Hosting Gallery
– Great deals on hosting
– PHP on Windows + IIS
– PHP and MySQL
In 2007
Fast CGI
With the release of FastCGI first time you could actually consider hosting php on win/iis, production quality, no more crashes.
FastCGI handles PHP requests out of an app pool rather than spinning up a new one each time.
FastCGI provides optimal PHP performance without having to manually tune:
Fast CGI provides Automatic performance tuning.
Determines: CPU usage, memory consumption, context switches.
Based upon that information it changes the number of PHP processes to optimize your application automatically. (Sets Dynamic Max Instances)
Very important if you are managing many customers on a single machine since it allows for a higher density of PHP applications on Windows than you could get before or a customer with an app that has large changes in requests over time.
Automatic recycling of PHP processes in IIS when php.ini changes. No longer need to restart IIS.
Version 1.5 now has a consistent set of features across all versions of IIS. This is important as a significant number of PHP developers still use XP. This will allow them to develop and deploy seamlessly to Windows Server. Version 1.5 of Fast-CGI is included in Windows Server 2008 R2 (IIS 7.5), an update is available for IIS 7 along with a back-port for those using XP.
Another useful feature I wanted to point out here as well is you can provide to your customers developing or running PHP on Windows/IIS is the Advanced Logging module in IIS which you can use to consolidate event reporting for PHP itself as well as from IIS. This will help your customers consolidate application performance reporting, good for tracking failed requests or other issues in your php application. No need to have separate error log files for webserver and php.
IIS
IIS 7.0 is a from the ground up rewrite over the previous versions and with a new architecture.
Default Min Install: The new IIS 7.0 architecture and default minimum install enables a significant reduction in attack surface making it far more secure.
Modular Architecture: Previous versions of IIS were difficult to customize or streamline for high performance applications.
This new modular architecture makes it far easier to create modules and handlers at any point in the processing pipeline.
You also don’t have to write these modules in C++ anymore either. You can create them in managed code far faster and with excellent performance.
Streamlined Processing Pipeline: The modular architecture allows for a streamlined processing pipeline. Load only what modules you need for much better performance.
Web Config: The new configuration system in IIS 7.0 loads configuration files—similar to .htaccess files in Apache—and manages them in a cache after first read. All subsequent requests use the cached configuration and the new configuration cache consumes significantly less memory than the equivalent in Apache. IIS 7.0 also includes caching support for all types of dynamic content.
PHP Manager for IIS 7 is a open source extension for IIS Management Console, that greatly simplifies the tasks of setting up, configuring and managing one or more PHP versions on IIS server. Use it to register PHP with IIS, run multiple PHP versions, get the information about PHP runtime settings, add and modify php.ini directives and enable or disable PHP extensions.
Features:
Simple registration of many PHP versions with IIS
An easy way of checking if PHP works correctly by geting the output of phpinfo() function
Configuring the PHP error reproting settings for production or development environment
Managing all php.ini directives and PHP extensions from within IIS manager
Remote PHP administration via IIS Remote Administration Tool
Works well with PHP installed via Web Platform Installer or PHP Windows Installer
Signed version includes support
Windows Azure is our Cloud Platform and is open & interoperable out of the box
Support for Industry Web Standards (REST, oData, Atom Pub) enabling interoperability
Great support for PHP
Open source tooling from Eclipse & Language bindings for PHP
Windows Azure companion enables seamless deployment.
Currently working on enabling community apps (drupal) to be supported on Azure.
Windows Azure Companion (new) (CTP) – a new tool that aims to provide a seamless experience when installing and configuring PHP platform-elements (PHP runtime, extensions) and web-applications running on Windows Azure.
Windows Azure Tools for Eclipse for PHP (v2.0) – End to End Windows Azure Platform Cloud Development for PHP Developers
Windows Azure Command Line Tools for PHP (v2.0) – a command-line tool, which offers PHP developers a simple way to package PHP based applications in order to deploy to Windows Azure
Windows Azure SDK for PHP version 2.0 (v2.0) – enables PHP developers to easily extend their applications by leveraging Windows Azure services (like Blobs, tables and queues) in their web applications whether they run on Windows Azure or on another cloud platform.