Monday, April 26, 2010

The Best Streaming Service

I've long avoided writing this post. Maybe it's because I was hoping for more progress in the streaming video field. Maybe I was just being lazy. I'm actually leaning towards the thought that I didn't want to admit the truth.

The truth is that there is no best streaming service. However, there are best services in a couple of categories. There's also the highly subjective "best service for Dan." Without delay, that service is:

Hulu.

Sorry Netflix. I've been a loyal customer for so long. In fact, I probably watch more content from Netflix than I do from Hulu, but it's all on DVD. The truth is that due to the implementation and catalog I almost never watch anything via Netflix streaming. Hulu is easy, available, and most of all it has loads of high quality content. In the end, no technical measure can make up for that quality of the catalog. The video quality is better on other services, as is the community. I should also mention that I can tolerate commercials, especially in the low dosage and variety that I see on Hulu.

If you prefer the catalog offered by Netflix, it is the superior service. If you can't stand commercials that may tip it the edge. I consider Netflix the winner overall if we ignore content. The combination of online and offline viewing is great. I appreciate the user reviews and recommendation system, both of which help me make up my mind what's the best use of my entertainment time. The Silverlight based player is also superior to most Flash implementations. It's not perfect by any means, but it delivers solid video quality and UI with much less resource utilization. I can watch Netflix content on my 6-year-old Pentium 4 desktop without noticeable degradation in quality or dropped frames. I can't say the same about Hulu.

I have to also mention Amazon's VOD service. It's Flash based, yet they've worked some magic to deliver a superior video experience to just about anyone else in the streaming sector. It's a winner in that respect, but it loses in almost every other. The UI is terrible and confusing. Most importantly, from a value perspective Amazon ranks up there with a trip to Blockbuster (brick & mortar, that is). Most of the VOD offerings are available as rentals for only a small discount over buying a boxed set or renting a DVD. I'd rather use my money on a Netflix subscription and rent the DVDs. I'd recommend Amazon's service as a way to try one of the few series they have before you buy or rent the set, but otherwise I don't think it's worth it now.

As for other services, I've excluded many based on principle alone.

I don't count YouTube because only a small part of its content is longer than 10 minutes. Most of the shows you can watch there are webisodes, or they're illegally posted and broken into 10 minute chunks. No thanks.

I really like Vimeo's player for its UI and video quality, but beyond that is suffers from the same problem as YouTube. It's all user-generated, independent content. Vimeo has a lot of merit, they're kinda the PBS of the web. They host a lot of great shows, but ultimately the stuff there is just for a quick break from work or its all substance with no entertainment value. I'm also not sure of their website at all, I only seem to view their content via the embedded player. I'll have to do a proper review another time.

There's many, many more. I'm not going to bother to review all the different networks, especially since the biggest players simply signed up with Hulu. Viacom hosts a lot of its stuff, but they use a no-frills Flash player and they seem to focus more on making their content short so it can be embedded. This seems to be the way smaller cable networks have gone. They really want you to watch TV instead. Anime sites like CrunchyRoll have serviceable players but nothing great. Aggregator sites like Joost have largely given up on hosting content (beyond ads) and focused on aggregation, so they're not worth a mention. Beyond that, how much is there? I'm sure I'm missing some service but I doubt it would change the top three that I picked.

Hulu it is. I'll give it another year or so and revisit.

Thursday, April 15, 2010

Feature Creep: The Enemy of an In-House Developer

If you do in-house development then you probably have first-hand knowledge of feature creep. If you don't know what that is, or you haven't seen it happen, then I envy you. It's an ugly monster and the bane of my work. The problem is not limited to in-house developers; it is particularly acute in that environment, though.

This is because development cost is a taboo topic in most in-house development environments. The developers and their immediate management don't want to talk about it because they don't want to remind senior management that in-house development is expensive. Senior management is happy to ignore it because they crave the finite control, costs be damned. So a game is played to balance the quality of the product with costs, where the quality is generally lower than a prepackaged system and the cost is generally higher. In general, this works fine. It helps keep developers employed and management happy.

The real problems start as the customization culture trickles down the management chain. Depending on how vertical the structure of your company is, you may have dozens of management steps between the top and the developers. Typically, when software is not a primary focus of the company, your developers and their managers will be quite low on the org chart. This puts them at a disadvantage when dealing with almost any manager and makes saying no quite difficult.

Therein you have the perfect storm: A situation where discussion about cost is a taboo, but the number of powerful voices calling for increased cost is huge. It's worse yet, though. When management's focus is not on software but instead specifically on how to make software work for them (as in, each manager personally) there is often little to no concern about the cost of feature creep to usability. In fact, usability is typically not in a non-technical manager's vocabulary. Outside of the developer group no one cares about usability, and often inside the developer group it is neglected because of the notion that client doesn't care.

Unfortunately, even if the user thinks they don't care about usability they really do. The difference between great software and passable software is often usability. The difference between a truly happy client and a client who is merely happy that development is done is usually usability. Software is supposed to solve a problem, to help a user achieve a goal. If it is too difficult to use it creates more problems than it solves, or it hinders the users from achieving their goals. At that point it should be considered a failure, though reality shows that this rarely happens.

Failed development projects, whether they are recognized or not, are dangerous. They put developers on shaky ground. They cause managers to think of the taboo of their in-house development: cost. If they aren't thrilled with the product then they will be far more likely to consider whether it is worth the money. The only thing that keeps this from happening is that they are often too egotistical to admit failures, but eventually if feature creep continues they will come around. When they do they will externalize the failure to the development group, after all it is their job to make this software and if it's so much more expensive then it should be better, right?

Wrong. There is little connection between cost and quality in software. Devs don't dare tell a manager this, except maybe as a last resort. Lest he add things together and realize that he could put company resources to better use.

Of course, most developers actually do want to put resources to better use. With less pet projects on their plate most developers will try to automate processes to save the company money. They'll refine existing systems to make them more efficient. In this aspect, in-house developers yearn to be more like system and network administrators; if you can't tell I'm there then that means I'm doing my job. Occasionally they might venture off course to test some new technology or try to solve a particularly complex problem, but for the most part a dedicated in-house developer is happy with the sense of accomplishment that comes when he or she knows that their product made a truly positive impact.

Developers have a responsibility to fight against feature creep. Don't buy into the false mantra that your job is to do as you're told. Your job, at any level of any company, is to act in the company's interest. That means to be truthful about costs and try to help management make the right decisions. There is no room for complacency in this. Feature creep is the developer's enemy and it is our duty to fight.

Sunday, April 11, 2010

DINOsaurs

Politics around the healthcare debate have reached fairly epic levels recently. As the bill passed I've noticed a general mood among the people I know who are even remotely politically aware that is eerily similar to the mood before and immediately after the election. Moderate Republicans have all but shut up about things after passage, meanwhile the radical factions have gone completely bonkers. [Note: for some it was not a long journey.] Democrats were whipped up at the end, and they still have a feint elation about the entire ordeal, yet the pessimism that this administration is not liberal enough soon returned.

Granted, it has been my position that this administration is neither significantly more liberal or less liberal than President Obama promised as a candidate. I also believe that by the administration and congress whipping members into passing comprehensive health care reform, among various other acts that are done or in the works, they've been very productive. Between this and credit card reform alone, I'm very happy with the first year or so of this administration.

I'm not as happy with congressional Democrats, though. They seem almost completely inept at forming any sort of narrative or defending any of their actions. I can't think of the last time that a Democratic member of the legislative branch called out the revisionist history that the Republicans are selling. The history that says that tea partiers are the majority voice of the people (which only works if you look at racial demographics) while ignoring the historic victory that brought President Obama into the White House. The history that blames Obama for the recession, ignoring that the housing crisis started during the summer of '08, and the problems that led to our crappy economy were almost completely ignored by the previous administration and the ones before it. The history that calls out as offensive almost every presidential act that Obama performs, regardless of the bipartisan precedent of that act. The history that calls the obstructionist attitudes of Republicans - who are now voting against proposals identical to those they previously drafted - maverick and revolutionary. Why aren't our representatives fighting back at this? Why isn't anyone standing up to say, "Hey, that's a lie," or "This health care plan was good enough for you when you offered a nearly identical plan as an alternative to the Clinton health care legislation."?

I believe it is because we've let our Democrat representatives grow too soft. We've mistakenly believed that a sweeping victory for Democrats in two straight elections would give them the leverage necessary to make the progressive changes we desire. We were wrong. Not in our intentions, but in our judgment. We were led to believe in the majorities we gave, but these were false majorities propped up by numerous "independents" and "blue dog" Democrats. When the other side formed a narrative that the majority was dangerous, ignoring what previous majorities on their part had done, these groups of right-leaning politicians that caucus with the Democrats completely caved, and they took the rest of their caucus with them.

I propose that we frame a new narrative for the upcoming election. I believe we should challenge every one of these worthless "Democrats" from the left. We should be upset at their inaction, cowering and inability to properly represent the people who elected them. If the Republican have RINOs, then we should properly label these politicians DINOs. Democrat In Name Only. Also, because they tend to cling to an anti-progressive agenda that ignores civil rights movements over the last five decades, we can call them DINOsaurs. They're outdated and unwanted. When they lose their office we should let them know it is not because they leaned too far left, but because they leaned too far right and we could no longer support them. We don't need them in our caucus.

We should expect some losses come this November, but they will largely be these useless barnacles that do almost nothing to further our cause. Progressives need not lament, but instead become engaged. Good riddance to these people, let's work to replace them with someone useful.

Saturday, April 10, 2010

Christie Guts Education

I was reading an article posted on Facebook about NJ Governor Christie's cuts to educational funding. Some of the responses seemed to cheer for Christie and these huge cuts, claiming that they were aimed squarely at corruption. This is a short version of my opinion on the topic. I think there's a lot of misconceptions on this issue:

Cutting funding for education isn't going after corruption. It's a blatant affront to public service. What corruption there is won't be so easily weeded out. But he and others like him are in favor of voucher systems and charter schools, this is an attack on the secular public schools in favor of private (and largely religious) private schools.

It's also an attack on the communities that need this most. If you look at the list of cuts the biggest (dollar wise) are in the neediest areas. Obviously Upper Saddle River schools will get by without an extra $300k, and they'll have an easier time finding a way to replace that money. Passaic and Paterson schools lost millions, and they'll have to cut innumerable services and jobs to make up for that. They cannot squeeze blood from a stone by raising local taxes enough to cover this. Indeed, even if they could Christie has made sure that's impossible because the cuts across the board are 5% or more and local municipalities are only allowed to raise property taxes enough to cover a 4% school budget increase.

But let's look at the corruption issue and charter schools. What makes anyone think charter schools are immune to corruption? Evidence points to as much or more corruption in charter schools. Let's use my hometown of Dayton, OH as an example. Faced with high unemployment and low tax revenues the city tried a charter school system that promised to cut costs and corruption. The result? Charter school owners took the money and ran, did not provide even half of the services they promised, and many of them have been shut down with their administrators indicted or sued by the city. Now the city's schools are in complete shambles and the system is bankrupt, bogged down with several lawsuits and scrambling to figure out what to do with children who no longer have schools.... See More

Instead of hearing failed stories like this we're presented with the stories of privileged children who excel in these schools. In upper-middle class areas where families have two parents and home life is easy. Areas where charter schools are easy to fund and likely to succeed, and there's little evidence that the public schools were failing. Areas where there is no need for after-school programs, or food assistance, allowing the schools to operate cheaply and at a profit.

Then there's the teachers. Do you think charter school teacher make so much less than public school teachers? Do you think public school teachers make so very much money? In NJ, one of the highest paying states for teachers in the country (but also one of the wealthiest states and among the highest cost of living), teachers make on average slightly more than the average college graduate. Those averages ignore the different types of degrees, for instance the math and science teachers are required to have degrees that would result in higher pay in the private sector. Also, those with postgraduate education are included in that average, and the average pay for those with masters degrees is $30k more per year than the average pay for teachers.

Suffice to say I think the data presented is often skewed, and there's such a huge focus on the benefits teachers get and the misinformation about their salaries. What Christie is doing is beyond the pale, some cuts were required but to simultaneously cut services for the poor and taxes for the rich is sickening. I have a very wealthy friend who is moving to CT. She's moving because the school system in Montclair is so bad.
We don't need to protect the rich, they aren't leaving the wealthy areas in any sort of worrying numbers.