Sunday, August 15, 2010
#
Learning a new language can be a rewarding experience, if for no reason but to view the coding world in different way. Another way to
enrich this experience is through the environment that a company creates to actually write programs. Visual Studio and Eclipse have spoiled me rotten, which is why I grit my teeth at times when developing for the iPhone/iPad with XCode, Apple's integrated development environment (IDE) for writing apps on the iOS platform. A few quick rants:
- Why do I have to @synthesize everything by hand? Why can't I click a button and XCode write not only the boiler-plate code for doing that, but do me a favor and also release those variables in the dealloc method?
- A lot of classes that I end up creating myself end up needing to be serialized so that I can either send them to a web service or store them to the file system. When I specify that my class will implement the NSCoding and NSCopying protocols why can't XCode generate the methods, use a little reflection, and generate the assignments necessary to comply with those interfaces?
The whole point of an IDE is to take the drudgery out of development so you can focus your efforts on the meat of what the code is suppose to.
Now back to work in XCode.
Tuesday, August 03, 2010
#
Rant time.
I work at a Fortune 200 company and like most large enterprises we also use Microsoft Office. As a business productivity suite I think it's the best out there, no matter what the open source hippies might say, but when it comes to development with these products, I really get my panties in a twist.
Everyone has beat the IE horse to death, so I won't go there, but today I was augmenting a vendor software package to send automated emails out to end-users. We like to brand our communications, even to our internal customers, so producing quality communication is something we strive for. In this case it included content with background colors. The best, standards-compliant way to do this is using HTML to produce these messages. For those who even have a smidgen of HTML experience, this is a fairly trivial task. In fact, here's something I whipped up in a few seconds:
Some Title Salutation,
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam suscipit elit posuere elit tempus aliquet. Curabitur fermentum magna et mi venenatis quis consequat felis pulvinar.
Nullam aliquam mauris non justo fermentum posuere. Integer quam turpis, mollis et molestie adipiscing, condimentum sit amet ipsum. Pellentesque tincidunt, dolor eu pulvinar adipiscing.
This is very straight forward and can be interpreted in any browser and email client and looks pretty darn good (compared to the alternative)
EXCEPT in Office 2007. Microsoft decided that instead of using Internet Exploder (another non-standards compliant piece of $#!^) to render the HTML, they would instead use Word to render the HTML, which is far, far worse in what it does/does not support. This means that the nicely formatted message above loses much of the richness that can be accomplished in a standards-compliant HTML renderer in other mail clients.
Why, Microsoft, why??? The web offers us so many opportunities to develop rich content that can be shared across platforms and it's instances like this where you do not endear your developers to remain loyal to your platform.
I shake my fist at you, Microsoft.
Sunday, August 01, 2010
#
Every once in a while I go check out my Google Analytics account to get an idea of how people are reaching my website. A lot of my traffic is driven by Google searches, so imagine my surprise when I saw this term pop up in the list of key words:
I'm pretty sure that I am not the intended target, however, my blog does show up as the
#1 hit for that search. Nevertheless, I am fairly certain I am not a good political candidate, if for no other reason that I say what I mean and mean what I say. Those traits are pretty much antithetical to a healthy political career, so don't expect to see any signs of my candidacy in the lawns of my fellow citizens any time soon.
UPDATE: 5 minutes later, Google is showing this post as the #1 hit of that search. Bug (or feature) in the algorithm, Google? That or self-fulfilling prophecy of sorts. Crazy.
Sunday, July 25, 2010
#
I published
my first app in the iPhone App Store a little while back, here are a few loose thoughts on the matter:
- Approval process takes too long. It took a week to get initially approved for my app and an update I put in for took about the same. It's a very discouraging process to have to go through. It'd really be nice if the initial approval took a week and you get a pass on updates. I know that opens them up for abuse, but couldn't I just sign one of those 'on my honor' deals that I won't violate their trust?
- Feedback can be a bugger to get from users. Feedback is really important to a developer as far as features, bugs, etc. Unfortunately, the only standard opportunity for people to do that inside the iPhone is when people delete the app. This of course is fine, except that the only feedback you get is a star rating. There are a few people that go out of their way to give good (as in qualitative) feedback, but they're far and few between. I've seen a few apps that nag you for rating and that gets old, even when you leave the app to do so.
- Not a big 'community' for Objective-C. Objective-C has definitely climbed up the ranks in popularity since the iPhone debuted, but a big marker of a strong language is reflected in the community that springs up. Java and .NET are good examples of a thriving development community that look out for one another. StackOverflow is a good place where there are tons of great questions/answers on how to do things in those respective languages, but I really don't see the same in Objective-C. The communities themselves are one of the best resources for how-tos and troubleshooting, but they're also great for learning new patterns in software development.
- Eclipse and Visual Studio have spoiled me rotten. The IDE is where all the magic happens. Unfortunately, XCode is no where near as polished as Eclipse and Visual Studio. If Apple were to choose one place to improve the platform, it'd be to juice up its IDE with better Intellisense, code generation (why do I have to manually write the synthesize properties???), etc.
Sunday, May 30, 2010
#
WIRED magazine came out with a new digital magazine on iPad last week with much fanfare. I purchased the app myself and thoroughly enjoyed it, but there were some who
criticized the inclusion of advertisements. Economics aside, advertisements can have a lot of intrinsic historical value as well. Quite by accident I discovered this will perusing the
archives of Popular Science, hosted by Google.
There's a good chuckle to be had in this Canon PalmPrinter, from a 1980 issue:
It's interesting to note that the emphasis of the ad is on its size. As a single function device, I am sure it performed well, but in retrospect seems quite useless. My iPhone is smaller and does so much more than simple arithmetic. Here's a
really funny ad for a 'cordless' phone, again from 1980:
I'm sure that a 300 foot range seemed pretty nifty at the time, but it's amazing what can happen in 30 years. And for a technology that isn't even used anymore, check out this ad from 1971:
I guess we failed to send someone into the past to foretell the doom of spending
any money on that stuff.
At any rate, even looking back at more recent history, like 1999, brought back a lot of memories. Remember Intel's
Pentium III? As much as people whine about ads being included into digital content, there's a certain quality that comes from not only rereading the articles from years gone by, but also getting insight on what advertisers were trying to push.