Uh huh

This E-mail and any of its attachments may contain ****** proprietary information, which is privileged, confidential, or subject to copyright belonging to ******. This E-mail is intended solely for the use of the individual or entity to which it is addressed. If you are not the intended recipient of this E-mail, you are hereby notified that any dissemination, distribution, copying, or action taken in relation to the contents of and attachments to this E-mail is strictly prohibited and may be unlawful. If you have received this E-mail in error, please

Occupy This

There’s an “Occupy Whitehorse“. No, Americans, I did not mis-spell that. And, yes, that says “sole” as in “one”. I, for one, am part of the Occupy Schroeder Household movement. Our (my) demands are the immediate disolution of HOA rules and dues (save for the pool and a couple of flowers), a federal 50% tax on those who complain about their lot in life (current complainer exempted, of course), numerous unspecified regulations on environment regulations and the use of nuclear bombs in oil drilling, particularly if it’s in a national

Speaking at OsCon

This year OsCon will be graced by my presence.  And by that I mean; I get to go to OsCon!! This month on July 27th I will be speaking on PHP Performance.   I’m convinced that application performance is one of the most misunderstood problems out there.  How do I know this?  I spent just under 4 years as a consultant with Zend and I spent a great deal of my time doing performance audits of PHP applications.  There does seem to be a fair amount of, I guess I

I’m curious about what you build

What do you spend your time on?  What types of applications do you work on?  I’m not so much curious about the frameworks you use, or your production environment.  What you do, not what you use, is what I’m interested in.  Do you build a blog, a CMS, an order entry system, a social media platform?  What is it that you work on.  If you are so inclined to share, please post a comment.

Objections to dynamic typing

I am about to head out to Magento Imagine to speak on queuing and scalability. So what is today’s blog post about? Dynamic typing; which has absolutely nothing to do with scalability.
Every once in a while I inject my opinions into places where they are not welcome. I have heard from people in the staticly-typed realm of how amateur dynamic typing is. Some people are interested in understanding how to use dynamic typing, others, not so much. So what I would like to do is talk about some of the arguements made against dynamic typing. Clearly PHP will be my reference point, but many of my points will be salient across many dynamically typed languages.
The biggest misconception about PHP is that it is a strictly dynamicly typed language. In other words that cannot have typed variables. Where you are using the OOP mechanisms in PHP, you have the opportunity to strictly type your variables.class Test {}
class ExecuteTest
{
public function exec(Test $test)
{
doSomethingWithTest($test);
}
}
$et = new ExecuteTest();
$et->exec(new Test());
What happens when this code gets compiled?Catchable fatal error: Argument 1 passed to ExecuteTest::exec() must be an instance of Test, instance of Test2 given, called in test.php on line 17 and defined in test.php on line 9
Fatal error. This is because the type of object passed in was incorrect. So data types do exist in PHP and many other languages. The only downside is that you need to actually run the code on your web server or in a unit test to compile it. Some would (and have argued extensively) that this is a significant drawback. There’s truth to that, but on a very limited scope. Is it a drawback? Yes. Is it signficant? Not by a long shot. Whether it’s PHP, Java, C, Perl, Ruby, VB, C#, JavaScript, etc. etc, if you deploy code that you haven’t tested then you deserve every error and every sleepless night you get. It’s called being responsible for your code. And don’t think that having your code pre-compiled is much better. I have a lot of compiled applications running on my computer. Cakewalk SONAR, Firefox, Apache, PHP (the binaries), MySQL, Tweetdeck, Java, etc., etc. And you know what? Shit still happens with compiled code! Sometimes even type-related errors! Compiling your code ahead of time as you do with C, Java, and the like does not protect you from type-based errors. Can you catch some fat-fingered errors? Sure. Are you safe? No.
For example, take this Java codeSystem.out.print(
Integer.MAX_VALUE
);
Running it provides an output of2147483647
What about this code?System.out.print(
Integer.MAX_VALUE + 1
);

ZendCon 2010 Podcast – Pragmatic Guide to Git

Speaker

Travis Swicegood

Abstract

Git is hard; at least if you listen to the naysayers. Actually, you need to know a handful of commands to navigate Git successfully. This talk demystifies Git. Once we’re finished you’ll know everything you need to start using Git in your day-to-day projects and collaboratively with other developers..

Licensing:

The ZendCon Sessions are distributed under a creative commons Attribution-Noncommercial-No Derivative Works 3.0 License, Please honor this license and the rights of our authors.

ZendCon 2010 Podcast – Unit Testing in Zend Framework 1.8

Speaker

Michelangelo van Dam

Abstract

Zend Framework 1.8 has improved and simplified how you can test your applications, providing you with excellent techniques to streamline your quality assurance processes and reduce your maintenance costs.

Licensing:

The ZendCon Sessions are distributed under a creative commons Attribution-Noncommercial-No Derivative Works 3.0 License, Please honor this license and the rights of our authors.

Slides

ZendCon 2010 Podcast – Introducing Zend Framework 2.0

Speaker

Ralph Schindler (Penn) and Matthew Weier O’Phinney (Teller)

Abstract

Zend Framework has grown tremendously since the first public preview release in March 2006. Originally a slim, MVC framework with a number of standalone components, it has grown to a codebase more than 2M lines of code. Work now turns to version 2, with goals of increased simplicity and advanced PHP 5.3 usage.

Licensing:

ZendCon 2010 Podcast – Do You Queue?

Speaker

Kevin Schroeder

Abstract

There has been a lot of talk over the past several years about the difference between performance and scalability. When talking about building a scalable application queuing is a concept that many PHP developers are not overly familiar with. In this talk we will demonstrate how you can use the Zend Server Job Queue to scale your application.

Licensing: