Brent Shaffer

Brent Shaffer

Developer

Brent's Biography

You know that guy with the perpetual good attitude, who can find a reason to joke even when the pressure is on? Yeah, we know that guy -- his name is Brent, and he works for centresource. Brent came to us as a full-time .NET developer who dabbled in PHP, and has quickly grown into an expert in Symfony and custom development; in fact, Brent is now a frequent plug-in contributor to the Symfony project and acts as a project lead for some of our biggest projects.

Brent is, at heart, a math geek with a love for programming and a strong desire to create. And it shows: Brent Brent displays the creativity necessary to develop an application the right way, he knows the best solution is usually not the first possible solution.

As far as Brent's personality, we'll take it right from his mouth because we couldn't have said it much better ourselves: "I am an idealist at heart, and really hope to finish a novel or two before I die. I also want to take a road trip around the country, suck the marrow out of life, and most other cliches."

Follow Me

Symfony 2 Conference Hub at the Castle

When the Symfony Live Online conference was first announced, Brandon came up with the great idea to get the entire Nashville Symfony/PHP community to watch it together at centresource. “It’ll be an amazing gathering of nerds the likes of which have never been seen!” he says.

Well, Sensio decided to steal our thunder by suggesting Symfony 2 Conference Hubs a few days later. Hey Sensio, we still take credit for the idea. We thought of it first. And now that’s off my chest, the sales pitch:

Continue reading "Symfony 2 Conference Hub at the Castle"...

Code That Saves The Day: Symfony Admin Generator

Every day at CentreSource brings with it a new challenge. With every challenge comes the opportunity to try a unique approach. We all know sailing the interweb can be stormy at best. But if you keep your eyes open, you will find code that can be a lighthouse to your sinking ship. Today’s Code that Saves the Day™: The Symfony Admin Generator!

Continue reading "Code That Saves The Day: Symfony Admin Generator"...

Comments {View Comments}

Nashville Symfony Users Group - Extending Symfony Routing and More!

On Thursday, the Nashville Symfony Users Group met in the Centresource conference room to discuss the extension of the Symfony routing framework.  I lead the talk, but it did not take long for the presentation to become a round table discussion, with everyone contributing their own thoughts and snippets of Symfony wisdom.  Overall, the session was a lot of fun.  You can view the slideshow from the presentation here.

Doctrine 2.0 was also discussed.  We are hoping for a more complete presentation from Jon Wage next month.  Keep your fingers crossed!

Comments {View Comments}

Symfony Faux Form Serialization

Recently, I ran into an issue when building a Symfony plugin for Slideshow renderings.  When I added the support for multiple libraries, in this case Google Slideshow2 and JQuery Cycle, they had drastically different configuration options.  JQuery Cycle allows you to use a list of effects, such as blindX and blindY.  These effects are great, and I want the end user to be able to easily select between them.  Google Slideshow2 allows the adding of thumbnails and traversing controls.  Neither of these settings apply to the other, and this is only two slideshow renderers.  What happens when I add another one?  Five more?  I could create multiple tables for each renderer, such as google_slideshow2_options and jquery_cycle_options.  I could also just provide a textarea for key-value pairs (effect=blindX timeout=500) that the user typed in.  I did not like either of these options, as the former struck me as over-architecting, and the latter as unusable.

Continue reading "Symfony Faux Form Serialization"...

Comments {View Comments}

Centresource Releases New Plugins to the Symfony Community

Over the last week, the developers here at CentreSource have published nine plugins for the symfony community.  The plugins have been used in several of our internal projects and client web applications, but have been developed on a private repository.  We finally decided the plugins were properly documented and tested.  These plugins can be found here.

1) csDoctrineActAsAttachablePlugin - associates various uploads with multiple models, and includes an AJAX uploading client interface.

2) csDoctrineActAsCategorizablePlugin - associates models into nestable categories and category groups.

3) csDoctrineActAsGeolocatablePlugin - integrate your model with the Google Maps API to pull in geocodes based on record fields.  Supports radius and proximity searches.

Continue reading "Centresource Releases New Plugins to the Symfony Community"...