‘technology’
Symfony Framework’s Poor Documentation
Posted by Brendyn on May 24th, 2010

At the firm I work for, we recently made the switch from Zend Framework to Symfony. After evaluating the pros and cons of the available, and established, PHP frameworks (namely Zend, CakePHP and Symfony), we settled on Symfony for its pragmatic approach to development, ORM inclusion, and admin generator–being able to build a CMS around our database schema with just a few commands has proven an invaluable time saver so far. It also has a fairly robust developer and plug-in community.

One rather large factor we overlooked in adopting Symfony, however, was its documentation. At first glance, the example-driven approach they take seems sufficient. Rather than invest effort in documenting all framework components at their lowest level of complexity, they chose to aggregate components and document them through a sample application, from start to finish. Even after only a month or so of use, this approach has fallen far short of what a good framework needs in terms of documentation, and more pointedly what Symfony deserves.

Most frameworks that I’ve worked with choose to document components at the simplest level, building examples around say specific function calls like $sf_user->setFlash(), outlining the complete list of ways such methods can be called, and providing tips for their use. This works well because it makes few assumptions about how any one developer is going to use this piece of the framework. Other popular SDKs and frameworks, from Zend to .NET, take this approach. It should, after all, be the end-developer’s job as a good programmer to stitch components together. High-level examples that do so for us have only limited use beyond a beginner level and, when the only form of documentation, and an anemic one at that, lead to much time spent searching through API docs (generated from short code comments) and around Google for answers, often to questions about simple usage.

To the latter point about searching Google, a lack of framework-provided documentation may not be a problem if developer community contributions fill that gap, and that contributed content is easy to find. That’s just not the case with Symfony. Most answers to searches on Google, in my experience, either refer to deprecated documentation on the Symfony site, or blog and forum posts, which require additional time to abstract away proper usage from the specific implementation of the original author (if their questions are even useful and timely to begin with). In the best possible scenario, this is a matter of SEO, which should make solving this even easier. But documentation discovery now is abysmal.

With Symfony 2.0 on the horizon, slated for release some time in 2010, I really hope they change their documentation story–I’ve even e-mailed the release manager for 1.3/1.4 requesting as much. It’ll be a rather large undertaking as there’s quite a bit of functionality, to the framework’s credit. But if this issue isn’t resolved, I could see it preventing adoption by anyone with realistic documentation expectations looking for a mature PHP framework.

Avoid the Dumpster, Use Live Mesh
Posted by Brendyn on September 4th, 2009

I remember reading this article a few years back about a grad student (at Maryland, coincidentally) whose purse was stolen and with it the only copy of her nearly-finished master’s thesis. I was then an undergrad, but the impression of caution it left on me stayed over the years. I vowed then, if ever I was to go to grad school, to use all my technical chops to ensure I’d never have to root through a dumpster for my livelihood.

Thanks to the ridiculous pace of technological development, there are now far more effective ways of protecting your data than a USB or jump drive. In addition, these technologies offer a higher level of convenience and anywhere-access to your data, even when you’re not on your own computer. One member of this new class of software is Windows Live Mesh. If you haven’t heard of it or discovered its magic, you’re missing out. Wait, wait…before you click back mumbling “Microsoft shill…”, hear me out. Live Mesh is a software+service tool available for PC and Mac that syncs files between all the devices added to your “mesh”. All you need is a Windows Live ID and you’re ready to go. Installing the software is simple, and configuring which folders sync where is all but brainless.


I use Live Mesh to keep my OneNote notebooks and course documents in sync across my main laptop and netbook, which I use to take notes in class. It’s so useful to go home and have all my materials available on my other computer without having to do a thing. Even when you can’t install the desktop software, say on a lab computer where you don’t have adequate permissions, there’s a web interface that lets you access all your sync’d files (you can disable this if you prefer not to store your documents in the cloud).

The service is currently in beta, but trust me when I say it’s not going anywhere. If you’re a student, the days of bulky USB key chains and e-mailing papers to yourself are over; this service will show its value immediately. For everyone else, give it a try–there are plenty of potential uses for this technology outside academia. It’s free, what’ve you got to lose?

Welcome to technolitics!
Posted by Brendyn on August 18th, 2009

Along the road to grad school, many people impressed upon me how crazy I was to leave a comfy, secure job in troubled economic times to submit myself to abject poverty. To each of them I’d spew the normal “I’m chasing a dream” bit after which they seemed satisfied, even supportive. What I didn’t tell them was that I was using grad school as an excuse to unveil a new website. So here we are.

Welcome to technolitics, pronounced tech-nahl-ih-ticks, which, as I’m sure you’ve gathered, is the coupling of technology and politics. It’s my goal to use this site as an archive of my grad school work, a creative outlet for my thoughts and ideas when I emerge from my books for air, and a way to improve my writing by practicing as much as I can (apparently writing PHP and English are significantly different).

Like the name and description imply, you’ll find posts here about technology, politics, my experiences as a grad student and the intersection of all three. At first, my friends, family and co-workers were shocked when I told them I planned to study political science as it seemed I was abandoning my undergraduate studies and career. But really it’s a logical continuation. I’ve always been interested in the social sciences, and now more than ever the presence of technology is expanding in government. During the 2008 election, candidates used Facebook and text messages to rally their bases. Senators and governors have gone head-to-head on Twitter over healthcare reform and stimulus spending. Why is it that some of these technologies succeed where others have failed? What are the implications for government of a connected citizenry and world? Questions like these are best answered by those with both political and technical depth, which is why I’ve chosen now to expand my knowledge of politics. Hopefully some good can come from the tumbling in my head.

How frequently I’ll update this is at best a guess. I’d love to post multiple times a week but I’m not sure ambition and reality will jive come the start of the school year. An easy way to avoid coming back only to find stale content is to subscribe to my RSS feed, accessible by clicking the little orange icon in the upper-right corner. That said, do stop by often as I’m sure you can poke around and find something entertaining (that’s my dream, at least).

If you run into problems with anything on the site please let me know. I’ve done my best to test this puppy in multiple browsers and resolutions, but as, well, everyone that knows me will attest, I’m not perfect. Any feedback you can give that helps improve this site is and will be much appreciated.

Oh, and go Terps!

Republicans Hop On the Tech Express
Posted by Brendyn on January 24th, 2009

It seems Republicans may have learned their lesson from the 2008 presidential campaign. The Obama camp used technology in unprecedented ways to organize their campaign, and many claimed the Republicans would need to adopt high tech approaches to campaigning and organizing or risk becoming antiquated. This headline has been plastered all over Digg for the past day or two:

Digg Advertises Republican Leader John Boehner.pngWe’ll have to wait and see if Republicans embrace technology as closely as the Democrats have. If so, it looks as if the Dems have some thinking to do about their strategy for the next election.

To come out or not to come out? Ask Reddit the question.
Posted by Brendyn on December 14th, 2008

Reddit, a social news site much like Digg, has an interesting posting at the top of its front page.

Reddit coming out storyWhether the redditor seriously means to come out based on the number of votes or not, the suggestion so far is to come out. Despite the many crass comments, they’re overwhelmingly in favor of this person coming out. I think this is a neat way to summarize how the majority of geeks and nerds feel about homosexuality.