Silicon Valley Code Camp : October 3rd and 4th, 2009

Mike Coast Development

About Mike
Mike began developing in 1981 with punch cards while completing a masters in Aeronautical Engineering. He immediately began working with Grass Valley on-line edit systems for the television industry while learning technical analysis for derivitives traders.
Creative innovation and a talent for converting ideas into code fueled demand leading to a software consultancy and several financial services software products. As a consultant for decades, Mike has worked on projects ranging from cutting edge graphics interface for end users, financial tools for hedge funds and complex server side data management suites for web based business.
{speaker.firstName} {speaker.lastName}

Speaking Sessions

  • FastCGI for high performance desktop applications

    2:15 PM Sunday   Room: 4220
    The web is playing an increasingly important role for desktop software. Developers often need to interact with a web server for tasks like; installation, authentication, application updates, data transfer, error reporting and secure transactions for billing. Typically these applications use HTTP and port 80 to avoid firewall support issues.<br><br> FastCGI provides a standard protocol for many servers including Windows IIS and Linux Apache, and most web development languages like php, Java, Perl, Ruby, Python etc for developing applications that execute on the server side. However, FastCGI applications may also be written in the same powerful high level languages (Basic/C/C++) used to create the desktop software, making code instantly reusable on the server side.<br><br> While Java/Javascript and .NET tend to dominate the web capable application development space these days, both have disadvantages for high performance desktop software. As an interpreted language with issues, JavaScript is not ideal, and .NET's 'managed code' and reliance on COM to wrap API's often leads to speed and reliability issues. FastCGI provides a powerful alternative protocol, supported by most servers and languages, that integrates into a development project quickly and easily. <br><br> The presentation will touch on the HTTP protocol in general, the WinHTTP library and reasons for choosing the flat API over the COM interface, the concept of the FastCGI protocol, FastCGI vs CGI and how it has evolved recently. I will then show you how to write, deploy and test a FastCGI application on your laptop in two minutes using a powerful free web server - see my Blog for more details<br><br> Finally I will discuss the design of a communication protocol utilizing libraries like; compression, Encryption, MySQL, SQLite and even the PayPal API with example code in a commercial thick client. Time permitting, the design of a FastCGI comet server will be covered. Each section can be expanded or contracted to accommodate the audiences interest.