Jun 23 2011

You know why Hulu’s a tough sell?

Hulu’s a tough sell because right now it’s owned by the networks who wield the most control of all over the content that is on Hulu, and even with that seeming power and flexibility they can’t manage to make meaningful deals to get a wide array of content available on Hulu without a huge number of stipulations.

If the networks are trying to screw over Hulu when they all own a stake in it, why the hell would you want to buy it from them and then be once removed from that?


Jun 21 2011

Blast from the past: Things I want to do before I die

Back in ’09 I made a Facebook note with a list of things I’d like to get done before I die. Let’s see how I’m doing so far:

Things I want to do before I die

August 5, 2009 at 11:34 pm

  1. Learn to play the piano. -not yet
  2. Live in a foreign country for some time (again). -still on my list
  3. Fix or tweak an electronic device at the component level. -does iPhone repair count? No, it does not, but it’s close. This needs to involve a soldering iron.
  4. Get involved with politics in a serious way (I mean like talking to congressmen and congresswomen, etc.). -Does tweeting Anthony Weiner count? THE GENTLEMAN IS NOT CORRECT IN RESIGNING OVER A FREAKING PICTURE OF HIS UNDERWEAR
  5. Write a song. -Seriously, did I add this to my list? I’m taking it off.
  6. Raise a child and teach said child multiple languages (programming languages included in there). -I need to acquire a child first. Anyone have one?
  7. Write some software for OS X. -Check! Mail.app plugins count!
  8. Write some software for a mobile device. -In progress
  9. Own a car that doesn’t run on fossil fuel. -No, but I’m up to having a diesel, and that has incredible efficiency.  So that’s a good step toward that.
  10. Learn Dutch, Swedish, Norwegian, French, or Icelandic. -Not yet. Anyone have any recommendations for one of these?
  11. Find the love of my life. -I’m going to cross this one off the list
  12. Make a web app. -Boo yeah! I even did it old school style, using only mod_python and coding the HTML and stuff by hand.  Go me!
  13. Become well versed in queer theory. Bonus points if I get a master’s or Ph.D in queer theory (PS: I’m not sure what I will redeem the bonus points for when I’m dead)
  14. Acquire a soprano or sopranino saxophone. Bonus points for the sopranino because it’s more obscure.
  15. Acquire a house and apply some really strange customizations to it, because it’s my house, bitch.

 

Those last three were ad libbed by me just now.  I figure at the rate I’ve been striking things off of this bitch, I’ll run out of things to do by the time I’m 30!

 


Jun 20 2011

Blast from the Past: WTF^2

I subscribe to The Daily WTF, which is a blog in which programmers come together to share funny/awful experiences with coding related things they’ve encountered. Some of the time it’s talking about hellish job experiences in which management had a really authoritarian attitude mixed with zero technical knowledge, and often times it’s a programmer who is looking at code someone else wrote and saying “WTF?” 

I was reading this article one day:

I had a professor once who said that given enough NAND gates, he could rule the world,” writes Rob B. “This was a roundabout way of saying that, using a whole bunch of NAND gates, you could create the function of any other logic gate. You shouldn’t, because the other logic gates exist and it would be hugely wasteful to use NAND gates to do the same thing, but it can be done. It turns out this applies to code as well.”

“We got some utterly garbage C++ code from a subcontractor. The error-to-lines ratio was amazingly high, and there were a lot of things to hate about it (like having one global function to get bits from a binary value which didn’t work, and several different localized one-off solutions which did work). My main WTF moment, however, was the following.”

while(true)
{
if(mainType == 7)
{
subType = 4;
break;
}

if(mainType == 9)
{
subType = 6;
break;
}

if(mainType == 11)
{
subType = 9;
break;
}

break;
}
“Just look at that for a minute,” Rob continues, “I spent a lot of time thinking about this. The while loop is only there so that the break can be used to jump over code. I’ve never seen an unconditional break at the end of a loop before, but there’s a first time for everything.”

Rob added, “all I can figure is that the developer honestly didn’t know that there is such a thing as ‘else if’. But he did know about ‘if’, ‘while’, and ‘break’, so he cobbled together an ‘else if’ in the most ridiculous way possible.”

I knew to be a little suspicious when I read the author’s first paragraph, because he said that although you could use NAND gates for all your logic gates, it’s dumb because you can just use the other respective logical gates. I got suspicious at that because apparently the author didn’t realize that our chips are made completely of NAND gates, because they use fewer transistors and it’s cheaper to optimize a chip when all the gates are the same. 

And as I looked at the code, the lazy part of me did indeed think “well, you could have just used a switch statement,” which made me also question the guy’s ability to code because although he noticed this code looked weird, he failed to see the most elegant solution for this. 

Looking at the code further (and reading a comment which confirmed my suspicions), I realized that the guy who wrote the article complaining about this other guy’s code is a moron. This code might not look pretty (and break statements should indeed cause a red flag in many cases), but this is optimized code that is closely mimicking the fastest way to get through that code. The only further optimization that you can do past that (which the programmer might have done, I don’t know the context) is order the cases so that you encounter the most likely case first, because you’re making use of short circuiting (short circuiting basically means you quit once you have found what you’re looking for).


Jun 15 2011

On Diversity and Pride

This will be the first year in awhile that I didn’t get the opportunity to go to a Pride festival due to circumstances beyond my control. Every year, though, Pride celebrations seem to spark a discussion (more from within the gay community than outside of it) of whether having these celebrations is good for our image.  A lot of people see the scantily clad gay men (some of which are inexplicably covered in suds), the drag queens and the explosion of flamboyance that is the result of bottling it up 11 months out of the year and they start to ask if we’re causing people to hate us, or if perhaps we’re abusing the rights less flamboyant gay people have fought hard to earn.

Really, the only abuse here is that I didn't get a piece of this.

 

If we have allegedly worked hard to secure freedoms to do things like have Pride parades that are flamboyant and colorful, only to not exercise the rights because we’re afraid of hurting our image, then we don’t have that freedom to begin with.  If we felt it necessary to restrain ourselves in such a way as to not actually hold the celebrations celebrating our freedoms, then that lack of celebration would be quite appropriate, in that there’s really nothing there to celebrate.

For the sake of thought here, let’s explore the possibility that having gay pride parades causees some people on the fence about gay marriage to become disgusted by what they see, and thus vote in opposition to gay marriage. Here it would seem like the Pride festival could be to blame for the lack of marriage equality, but more realistically, homophobia is a more appropriate culprit. If you wear red and a gang member decides to murder you because you wore red, a reasonable person isn’t going to blame you for your murder. People are homophobic because they’re hateful or ignorant, not because you’re being yourself.

Some don’t necessarily make the case that they’re being made to look bad by Pride festivals, but they are upset that it portrays gay people as being something they aren’t.  First off, any festival celebrating a particular group of people or particular thing has no obligation to portray that group or thing in a way that 100% accurate and inclusive of every single person. The various floats of town parades don’t represent every facet of every citizen of a town, and since there are no scantily-clad men in those parades, nobody complains. And you can’t fault the Pride parades for not trying to include a diverse range of people, which brings me to my next point.

The logo, if you will, of the queer community is a rainbow.  We didn’t just settle on the rainbow because we thought they look cool (they do), or because there were fierce arguments on picking a single color to represent us (I imagine there would have been), but we settled on it because of what the rainbow means, and it means what it means in such an obvious way that you can easily pick up on it (nobody ever told me, but I’m confident that I am correct in the following description of the rainbow).  Having a rainbow flag represents that we are intrinsically a very diverse community, and it is this very diversity that makes us bright and beautiful, and although we are ourselves perhaps individuals (individual colors, maybe?) we are able to appreciate that others are different, because without others who are different, we won’t have a rainbow. It even segues nicely into a general life lesson to appreciate people of different cultures, religions, genders, national origins and all sorts of other categories, because sexual orientation varies in all of these groups and being queer doesn’t discriminate. If you’re complaining that the Pride parade had some shirtless men in it, it’s not because you were offended, it’s because you probaby couldn’t take your eyes off of their sexy bodies (can’t blame you there) because sexy men in gogo shorts were just one of many, many things that are part of a pride parade. Last year at the Twin Cities Pride parade I saw close to a dozen different churches asserting their welcoming of everyone, I saw dykes on bikes, the police (who are incredibly supportive of Pride), a ton of Democrats and the lone Log Cabin Republicans (who couldn’t manage to get a single elected Republican to show up, which really gives rise to the question, why aren’t you starting your own party, gay Repubs?), Socialists, anarchists, hospitals, people dancing, high school marching bands, Al Franken giving people hugs and high fives, some drag queens, the bears, the leather daddies, the twinks, the nudists, the atheists, possibly a dancing cake, the Lucky Charms guy and other General Mills cartoon characters, a giant Cub Foods shopping cart giving out these promotional merchandise things saying “have you hugged your cub today?” and all the HRC stickers you can handle. So, once again, I reiterate, if you see Pride as nothing more than a bunch of young men making fools of themselves showing off their bodies in public, it’s because they were the only ones you were staring at the whole time, NOT because there is a lack of diversity in Pride parades.

Attending the Pride festival is a sort of yearly pilgrimage I like to make, and it truly livens my spirit for the rest of the year.  Seeing young people there holding hands with other young people of the same gender and seeing older people coming to show their support really gives me a warm fuzzy reminder that the world (at least in gay Minneapolis) is becoming a much better place for queer people. It may be a scene that feels too young for you and it may feel like something you might grow out of (grow out of becuase your tastes have changed since you got older, not because you came to find the parades immature or stupid) but it’s still fantastic to attend, especially if you’re newly out of the closet, because when you spend every other day of the year being the minority, having that one day where everyone around you shares your sexual orientation (or is at least a strong enough ally to come with you) is a great, liberating feeling.  We get enough hate from straight people. Love yourself enough for a week each year to come out to (and enjoy) your local Pride festival!


Jun 4 2011

iOS 5 predictions, revisited!

Being the hopeless romantic I am, I wrote about one of the bigger loves of my life on Valentine’s day, expecting iOS 5 to be announced in March in a manner consistent with the previous iOSes.  Alas, Apple had far too many things on their plate (like another iPad and such) to introduce iOS 5 in the spring, so it’s getting announced on Monday (yay!!!!).  I’m going to officially lay out my predictions for iOS 5:

Revamped Notifications System

A no-brainer for sure. The modal-only notification system of iOS has been the Achilles heel since v1.0.  It started off innocuous enough, but then when push notifications came (for realsies) in iOS 3 and every app thought it would be cute if they used them (kind of like how every Windows app thinks it’s worthy of a taskbar icon, which I admit the only Windows app I have developed is guilty of just that) then it got really really unwieldy. Nothing worse than watching a movie or playing a game to be suddenly interrupted by an SMS. There has got to be a less obtrusive notifications system, and on that note, one that lets you get multiple messages, VMs and calls while away and lets you come back to a nice list of them all instead of a bunch of modal popups that are behind one another.

New Home Screen with Widgets and such

File this one under “probably.” The array of apps, bookmarks and folders of the above that can’t be arranged in a non-grid fashion and can’t have gaps is long overdue for a makeover.  Not just because of the lack of appeal, but because there are great opportunities for cool widgets that display information without needing an app to be launched. Having access to vital information at a glance is kind of the point of having a smartphone, no?

Better Developer-y stuff

I feel like in 2011, it’s time to get that ObjC garbage collection rolling. Managing your own memory simply isn’t something that we should care about in this century, and any overhead incurred by the garbage collector is more than likely going to be offset by the improved memory footprint of apps, especially when most of the apps are made by developers with little ObjC experience and don’t know fully understand memory management.

And while we’re at it, let’s get rich text editing in our text controls. Apple implemented such controls for its iWork apps, which was presumably a guinea pig for what would be to come for the rest of iOS (though some of the intrepid developers have gone through the trouble of implementing their own).

This is kind of user facing, too, but we could certainly use a central storage place in iPhone to store and save files.

Sync, Wireless

MobileMe was a great first step, but I’m ready for some real wireless syncing (a.k.a. not having to plug my phone into my computer EVER). My Mac can install OS updates on its own over the air, why can’t iPhone?  I can wirelessly send files from one Mac to the other, why not iPhone? Regardless of what cloud solutions Apple comes out with, Bonjour syncing with iTunes may as well be a reality now.

Apps that auto-update are probably going to become a thing in iOS 5, though opening the App Store app every few days to update isn’t that hard; just annoying.

In February I predicted the ability for apps to download updated content in the background like the Messages app and Mail app get to do. Though it isn’t a highly demanded feature, I hope Apple throws it into the SDK.  That’s the kind of thing that will make the phone feel a lot faster and really improve the user experience. This is something that Android has always offered and it never caused much of an issue.

I also wouldn’t be surprised if AirPlay got a few new features. It’s great right now but it’s mostly just the quiet brilliant feature in the room. Perhaps an announcement of partnerships with more companies that will implement it?

Services

If this becomes a thing, it’s going to be one of those predictions I made out of left field and will be really proud of because it wasn’t part of the rumor mill rotation.  Services are great in OS X, but they’ve always felt a little ahead of their time and a bit neglected (though they got revisited in a big way in Snow Leopard). Services is the kind of feature that just makes perfect sense in iOS, and it would offer a level of extensibility and cross-app communication that otherwise might have required a lot of coding.

Personal assisting

Apple bought Siri some time ago for their talent. I’m really looking forward to see what becomes of that.

 

My predictions are largely consistent with what they were in February. I think iOS 5 is going to be a little bit more feature-filled than other iOS updates because of the length of time between releases, but I do want to be a bit reserved in my expectations, as Apple tries to be conservative in their adding of features.

We’ll see how I did on Monday!


Jun 4 2011

AT&T-Mobile: the good, the bad, and a better alternative

When AT&T and T-Mobile announced their plans for AT&T to buy the beleaguered American wireless wing of Deutsche Telekom, the only cheers I heard were from the two companies themselves. I imagine the AT&T execs were all sitting around the conference room high fiving each other upon realizing that buying your competitors is much simpler than being competitive, and the Deutsche Telekom execs were shrieking with joy on news that some sucker actually wanted to buy that third rate wireless carrier.

Realistically, AT&T needs T-Mobile’s resources if it wants to survive. While AT&T were busy cleaning the jizz out of their underwear after realizing that customers were willingly paying $30/month extra for data plans for their iPhones (for which AT&T was the exclusive carrier), Verizon was buying up that coveted 700 MHz spectrum that it would inevitably need. To make matters worse, there are pretty giant regions of the US where AT&T doesn’t even have a foothold (like, ahem, THE MIDWEST) and is completely reliant on its roaming partners to provide coverage outside of the metro areas in the Midwest (and by roaming partners, I of course mean T-Mobile and its partner carriers). Because T-Mobile’s 3G network isn’t using the same frequencies that AT&T’s 3G network used, this means that roaming off of AT&T’s network leaves you on the EDGE of civilized life with poor data speeds (also a ton of dead zones, because T-Mobile doesn’t have a lot of cash to spend on towers, and AT&T just doesn’t give a shit about small areas).  Albeit the more rural areas aren’t really in AT&T’s focus (they really only care about providing cell service to an area they can make a shit ton of money on as opposed to being able to offer a thorough network to all its customers), AT&T’s also got this growing problem of network congestion in major cities that are densely populated. For AT&T, buying T-Mobile is a logical next step, because T-Mobile’s already got a large presence in these major cities (and logically is licensed for spectrum in said cities) and since they don’t have a lot of customers, that means there’s a fair amount of breathing room (and based on the network performance my T-Mobile using friends have experienced, that is the case).  And T-Mobile’s developed other interesting technologies that may be of use to AT&T, such as their use of UMA which enables customers to make calls using a WiFi hotspot (which is great for T-Mobile whose network isn’t that expansive and for AT&T, whose network could really use a break).

Conversely, T-Mobile isn’t doing so hot.  Despite offering the most competitive prices of any national carrier (Sprint’s a close rival), they’ve recently been bleeding subscribers. Being a smaller carrier, they have failed to get access to some of the hottest phones (okay, the iPhone. They have so far failed to get access to the iPhone), and their coverage on a large scale is relatively weak, which surely has pushed subscribers away. When a big company like AT&T comes along and offers them $39 billion in cash and stock, well, it’s kind of hard to walk away from that.

But the overwhelming feelings of opposition from consumers (correct me if I’m wrong on that, but I’ve been getting that vibe) indicates that although the companies stand to benefit from this, the consumers are going to lose. Realistically, it’s a mixed bag. T-Mobile customers will start to get access to AT&T’s larger network (which may or may not make a difference, as the two have always been roaming partners) but they’ll probably also get access to AT&T’s higher prices, too.  AT&T customers may very well breathe a sigh of relief on hearing that their network might get a bit less congested, though AT&T’s network performance hasn’t been making headlines since the Verizon iPhone came out (not that I think there’s a causal relationship between the two; I genuinely think AT&T’s gotten a better handle on their network in the past year). T-Mobile customers may start to get more mainstream phones, and AT&T customers may soon see WiFi hotspot calling (a feature I would love, personally).

There is the reality, though, that less competition is going to harm consumers.  One fewer competitor creates an effective duopoly in the US wireless market. Jobs are going to be lost for sure as the merger creates redundancies that will be eliminated. Price increases and data usage limitations will probably come to exist a lot faster than when there was one more large carrier making the others look bad.

Perhaps a better solution here would be to do something along the lines of what happened when we broke up Ma Bell.  When this happened, long distance prices magically went down. Though from a technical standpoint having all these disparate networks competing against each other would probably be slightly inefficient, I think that limiting the size of a wireless carrier to a certain regional area and/or number of customers and having the carrier split after growing too large could be beneficial assuming a couple of stipulations:

  • Carriers are required to let other carriers’ customers roam to their network, and vice versa, at the same rates
  • Devices running on these networks may not be locked to run on a single network; they should be able to run on any network they are compatible with
  • If a carrier is to change to using a different network technology, other carriers should also adopt this technology so that there is roaming coverage nationwide.

Sure, having dozens of small carriers could have its disadvantages, but I think most would agree that having 4 large ones in the US has created more problems, and I think having many small carriers could lead to some clever advantages, such as the companies catering better to the needs of locals because they’re from around there, more local jobs, and of course, more competition and lower prices.