More of Me
spacer  Friend Me
spacer  Follow Me
spacer  Feed Me
a blog by ken pardue
Apr 17

Wrapping my head around Ember.js.

So, I’m a PHP scripter that hasn’t done a lot of coding in a while. I’ve done some, but not a lot, of JavaScript, and college was, well, let’s just leave it at lacking in formal programming education. It seems pretty clear that the next step in responsive web applications is to run the entire app on the client side, only communicating with the server to download the application file and subsequent database communication. I get that. I also like what I’ve read about Ember.js and its approach to solving these problems (but I’m open to other solutions, too).

I’ve read the information on the Ember.js home page, and I get most of it (I think), but what I’m lacking is knowledge about how to structure my app as I start developing a slightly more complex site/app. There’s so many different ways people are solving problems that there’s no single this-is-how-you-get-from-point-a-to-a-functional-web-app guide. And if there were, I’m sure they would assume that I have knowledge about structuring MVC apps and advanced JavaScript to get there.

So here’s where I’d like to go with Ember.js: I want an app that has two main templates: one for user login which is served up initially, and one to house the rest of the app after logging in. After logging in, I want a main navigation pane that controls/changes out content in another pane (eventually based on user permissions, but I’ll start with just having it work).

How should I structure my app?  Here’s what Ember.js provides out of the box in their starter kit:

spacer

So, do all of my models, views, and controllers for the entire app go into app.’s?  If so, how do I structure those components inside the file so that they are easy to navigate?  How should I keep them organized, by components, or by keeping all models together, views together, etc?  If not, how do I load the separate components?  Should I have folders for models, views, and controllers?  If that’s the case, how do I load them?  Do I have a giant list of <script src="/img/spacer.gif">

As I’m planning out my components,  I’m assuming that something like this would be what I need to do:

spacer If I’m understanding this right, I would have an appController that would launch when the application first begins.  It would have a loggedIn property.  I would set an observer on that property such that if it were false, I would do a view.append() a login template to the Site Handlebars Template.  Otherwise, I would view.remove() the login template, and view.append() the main page template.  The main page view would contain a Navigation view that would never change, but itself controls what shows up in the Content View.  It would load whatever template is associated with the Component Button that is active, and each template would have its own models, views, and controllers for the functionality associated with it.  (how do I load in the extra templates and their associated models, views, and controllers?)

Is that anywhere near a correct big picture view?  How on earth do I structure the files and code associated with that?  I’m sure state charts play some sort of a role here, but I have no idea how to plan them out and implement them.  I’m encouraged that they appear to be built into ember.js now, according to the website, because there’s so much new material to learn here I’d rather focus on what’s available out of the box rather than how to do my task with a half dozen different frameworks or components.

In addition to structuring the app know I still have to learn the process of writing a RESTful back end, another huge learning task in itself, but I’m okay for the time being just using fixture data.  Heck, even if I used more traditional methods for developing the components I’d be okay; I’d just really like the responsiveness of an interface like the above that’s super fast.

 

Posted in Source Code | No Comments »

Oct 18

An Open Complaint about Suddenlink’s Incompetency

I decided to get the Suddenlink TiVo box after not having TiVo since 2006. When Suddenlink upgraded to an HD lineup in 2006 I thought it more convenient to use the new Suddenlink HD DVR instead of TiVo because TiVo’s HD box was prohibitively expensive compared to renting the Suddenlink DVR. When I canceled the TiVo rep was very friendly, and said that he was sorry to see me go but that he understood the price advantage and didn’t blame me. Over the years I’ve heard horror stories of inept or misinformed Suddenlink service technicians pairing CableCARDs with Tivo devices. Some people were told that they couldn’t get premiere channels, others that they couldn’t get HD channels, and others still that CableCARDs wouldn’t work right at all with the TiVo. In light of such inconsistency, I decided to stay away from TiVo, despite far preferring TiVo’s service to the clunky Suddenlink DVR.

A week ago I noticed a commercial that Suddenlink was now offering TIVo service in my area. I thought, “Surely this is a great way to get back on the TiVo bandwagon. Suddenlink must have worked out the kinks in the installation process *in their own implementation* of the TiVo box. I couldn’t have been more wrong. The Suddenlink rep came to my house, installed the TiVo box, and paired the remote with my television so that it would control the volume. Fine and dandy. I tried to locate the Media Access Key so that I could configure the iPhone and iPad apps to work with the box, but couldn’t find it. I suspected that Suddenlink may have disabled this functionality (which wouldn’t have surprised me), even though the iPad app (and detailed instructions from TiVo on setting it up) is a feature linked to from their TiVo promotional website at suddenlink.com/tivo. If this was the case, Suddenlink was being disingenuous at best, and engaging in false advertising at worst.

I contacted Suddenlink’s email support. They wrote back and told me to log into my TiVo account at TiVo.com to see if the Media Access Key was located there, and to try the online chat for more assistance. I wrote back saying that I had already tried this, and I hadn’t received any login credentials for accessing my TiVo account that Suddenlink enabled for me, and when I tried to activate the TiVo on TiVo’s website, I got the message “You cannot activate service on this DVR. Please contact Suddenlink Customer Support at 1-877-457-9849 for assistance.”

I tried the Suddenlink chat. I spoke with a person named LaShonda I believe. After explaining my situation, she resorted to finding different ways to tell me that she couldn’t help me, that all she can do is activate the TiVo box, and that I need to contact TiVo for more assistance, since it looked like the issue was on their end. After explaining to her that I had already tried activating the box with TiVo and they referred me back to Suddenlink, she gave me a phone number to contact Suddenlink’s phone support for more assistance, but again implying that the problem wasn’t with them, it was with TiVo. Before ending the chat, I asked her to confirm that the number she gave me was for Suddenlink since it seemed to be on their end. She said that yes, it was for Suddenlink Customer Support.

I called the number.

“Hello. You’ve reached TiVo Customer Support.”

Clever.

I spoke with Andrew with TiVo’s customer support. He was friendly and conversational, the only person I spoke to during this whole fiasco that made me feel like a valued customer and not like an obligation to satisfy. He convinced me that Suddenlink probably wasn’t being disingenuous and that it was more likely a technical issue. He walked me through updating my address and other information that had changed since I left TiVo in 2006. He pulled up the TiVo box and noticed that it wasn’t properly setup in Suddenlink’s system. It was in a Staging mode, activated but not associated with a customer. The problem was worse than simply not being able to find a Media Access Key; the TiVo would actually stop working after a few days. He told me what I should tell Suddenlink to resolve the issue, and said that after it was set up properly in their system all that would likely be needed was a quick reboot of the box.

I called Suddenlink back.

I spoke with a lady who’s name I didn’t catch. She said she had just gotten a TiVo two weeks ago herself. I told her what the TiVo tech told me and she said, “You know, I think you may be right.” I was put on hold for a time. She asked me to navigate around the Tivo and tell her what the menu options were. Apparently they don’t have that information in front of them. Asked for my email address to update their records. Put me on hold again. Asked for my email address again. Finally she told me that she thought it was taken care of but they would have to send a tech support out to my house to manually enter some information into the TiVo box. I agreed, even though it was an inconvenience.

The Suddenlink tech support person came to my house (my wife was home; I was at work), fiddled around for a bit, and finally declared that everything was fine on Suddenlink’s end. He wasn’t sure why Suddenlink sent him out there, because the problem was on TiVo’s end. He said I needed to go to TiVo.com and register the box using my TiVo’s service number. Remember now that trying to do so prompts an error message referring me back to Suddenlink. He left before I had a chance to call and talk to him, but not before telling my wife that they were having a lot of problems with the TiVo’s, and that ours was the first one he had seen that was actually working right. Except… it wasn’t working right! It was still in Staging mode!

I called Suddenlink back. Livid. I told the rep that I wanted to speak with someone who knew what they were talking about because I was about two seconds away from canceling all my Suddenlink services. I spent maybe a half hour waiting while he checked and rechecked things on his end while working with someone else on the problem. Finally he said that he had corrected the communication problem between TiVo and Suddenlink, but that he would have to send *another tech* out to our house to manually register the TiVo box with the system. Again. That’s where I stand now. I’ll be there this time so that I can badger him until things are working, but the sheer incompetence and failure of Suddenlink to know how their own system works across some 5+ customer support agents and no less than three visits from tech support personnel is absolutely stunning. If Suddenlink doesn’t resolve this this evening, I will be switching all my services to DirecTV.

Posted in Uncategorized | No Comments »

Aug 30

Who Rick Perry *Really* Is

I’ve finally figured out who Rick Perry reminds me of.

spacer

He’s the evil Huxley from Elmo in Grouchland!  The resemblance is uncanny!

One seeks to rule a land of self-serving, disgruntled followers by example of stealing anything he can grab from the less fortunate… the other stole Elmo’s blanket.

 

Posted in Uncategorized | No Comments »

Aug 1

Exclusiveness vs. Inclusiveness

The wife and I have been visiting churches looking for a place that is progressive enough for our tastes, hoping to surround ourselves with spiritually-minded people. In this conservative area seething with Republicans, I have little hope of finding a progressive message, so instead have sought a place that will just leave politics alone. I thought we had found such a place, but this Sunday they blew that hope out of the water by letting a politician running for Lieutenant Governor speak briefly (after being introduced as a person who “went up against the President” while stating that “we don’t need less religion in politics, we need more, Amen?”) What’s more, it was announced that next week’s message will be delivered by no less than the Republican governor of the state, who will deliver his personal testimony. During the message itself the pastor railed on to great applause that we need more God in our schools, more God in the media coverage of the funerals of service personnel, and more God in government.

I have a couple of problems with this.

  1. Separation of Church and State is a principal that the United States was founded upon, by a group of individuals seeking to liberate themselves from the government-sponsored Catholicism of Europe. The founders expressly built into the vision for the country a freedom to pursue whatever religion (or none at all) for which an individual was inclined. As such, it is entirely improper for the United States government, or any extension thereof, to endorse one religion over another. The reference to God in the founding documents makes it easy for some Christians to ignore the principal of Separation of Church and State. However, the reference is used in the sense of calling a generic higher power, a universal ‘God,’ to inspire the populace that the nation is guided by something greater than itself. Public schools and the military are “ours” only in the sense that they are extensions of the Federal government. And as extensions of the Federal government they cannot favor one religion over another–especially given the diversity of beliefs contained within.
  2. That politicians pander to the public for support is a truism to the point that it’s practically part of the job description. If a politician says anything to a group of more than three people, regardless of the message it should be understood that it is being said with the thought of reelection in mind. This is why I immediately become suspicious when a politican makes reference to faith on a public platform. I don’t know why the Republican party settled on the Christian faith as a support base, but it frustrates me to no end that they have, as a good friend once put it, achieved wholesale ownership of evangelical Christianity. I vehemently reject this. Religion is a personal matter. The church would be better suited attending to the personal needs of adherents than maneuvering for political relevance and endorsement. It’s almost as if the church feels indebted to the GOP to the point of endorsement for the attention they’ve given it, depending on the political party to spread awareness of where the church itself may not succeed. To invite such a person into a church to speak is a terrible mistake. Most churches can’t manage their own internal politics, I don’t understand why they would want to involve governmental politics. At best faith should be a secondary motivating factor in a politician’s decision making process, steadfastly behind the Will of the People. And it should most certainly never be a part of a political platform.
  3. Christians cannot pretend that the rest of the world doesn’t exist, no matter how hard we try. There are 2.1 billion Christians in the world amongst a population of 6.7 billion. That means that there are 4.6 billion in other faiths inhabiting this small mote of dust traveling through space with us. In the Internet age, it’s simply not enough to take the pompous view that nations (religion-endorsing or otherwise) are islands unto themselves. We are all citizens of the world, in our own right. And we will never be able to change the minds of people whose cultures and faiths are as ingrained into them as ours is in us. Even if the laughable goal of every Christian adherent converting one non-Christian to the faith, we’d still be left with literally twice the population of China being non-Christian. We owe it to the survival and betterment of the species to be tolerant and understanding of those with faiths other than our own.
  4. For Christians to actively seek that the United States government endorse Christianity devolves us as a society several hundred years to the days of government-sponsored Catholicism. It negates the very reason that the founding fathers had for creating this country. And, perhaps most importantly, makes the United States as destabalizing of a force on the world stage as do the Islamic-based governments, that we so vehemently reject.

Please, for the love of God, keep politics out of faith. Express the tolerant inclusiveness that you claim to aspire by, not the exclusivity of the religious right.

Posted in Uncategorized | No Comments »

Jul 25

Mac OS X Lion: My Review

I’ve got my two home Macs set up running OS X Lion now, which was released last Wednesday.

Overall, I like Lion.  It seems to me to be a solid release for Apple.  When Apple released Snow Leopard in August 2009, it was supposed to be a release that took a break from adding new features to the operating system in order to focus on replumbing the internals, as it were.  But even given that, Snow Leopard barely felt like new window dressings, and understandably so, since Apple had their team focused on cranking out iOS features (which frustrates me as one who prefers desktop OS X to iOS).  But Lion feels like Apple really did their homework to not only polish user experience but really strengthen the OS X’s security foundation.

Visually, Lion feels more mature.  It drops the blue lozenge buttons in favor of more subtle, squared off buttons.  Scrollbars make their exit in this release, appearing only while actively scrolling.  Scrolling itself is somewhat changed: what was scrolling down before is now scrolling up, changing the metaphor to more closely match the iOS style.  Instead of “scrolling a scroll wheel down a page,” you’re “pushing the page up with your finger.”  It’s taken some getting used to, but the metaphor translates well.  Also brought in from iOS is autocorrect, which in my limited use I’ve found to be much more helpful and less annoying on Lion than on iOS.  Mail looks drastically different, mirroring its iPad cousin much more closely.  iCal and Address Book now have user interface looks that resemble their leather-bound, real world analogs.  I don’t think I’m so fond of this change, and am confused why Apple, a company known for pushing the boundaries of design to deliver more usable experiences, would resort to a look resembling something that most people these days have scarcely used.

Lion really seems to be the under the hood plumbing update that Snow Leopard should have been, as well.  I think Apple is realizing that as its market share grows, they can’t depend on being safe from viruses just on account of the relative obscurity of the OS.  People will inevitably begin to write viruses for Mac, but Apple is doing their part to make this difficult.  OS X Lion introduces more robust support for Address Space Layout Randomization (ASLR) which makes it difficult for hackers to identify the location in memory that code may be running, and also offers better sandboxing of applications.  Microsoft has surprisingly set the gold standard in security the last few years.  Windows 7 has been known to be a very secure OS.  One security company describes OS X Lion as being Windows 7 Plus Plus, as far as security is concerned.  It means a lot to me to hear security researchers say that with Lion, OS X has surged ahead of Windows and Ubuntu Linux in terms of security.  Another new feature is full-disc encryption, for those worried about the security of their data.

What’s most exciting, though, is the support that third party apps will be building into their software in the coming months/years.  With Lion, Apple has provided a framework that completely eliminates the “Save” button.  And really, why not?  The very concept of the Save button is as obsolete as the floppy disk that so often represents it.  Why should the user need to worry about saving a file after x amount of changes?  Why should the user have to scream to the computer gods in agony when four hours worth of work is lost when a program with unsaved data crashes?  I say, let the Save button die, especially with the elegant system of versioning that Apple has introduced.  The beauty is that the file one is working on is always saved.  Every time you make a change to a document.  If the program crashes, when you reopen it you’re brought right back to where you were.  The computer gods need not be appeased.  When you close the program (or whenever you arbitrarily want to make one) a version is created, which makes a snapshot of the current document.  You can go back and browse previous versions, restore them, or copy and paste bits from one version to the current one.  And, since only the changed parts of the file are saved, rather than the file itself, versions aren’t very expensive as far as file size goes.

The next big thing coming for Lion is iCloud support, which ties together all the Mac and iOS devices (and even Windows, too) that we all own these days.  Apple will allot 5GB of free storage to store all of your settings and documents, and whenever a file is changed, the changed part of the document flies up to Apple’s servers and is then pushed back out to your other devices.  So let’s say I’m working on a Pages document, I throw in a chart and edit some text, run out of my house, open my iPad, and without giving so much as a thought to it, my document with the recent changes are present there.  It solves the biggest problem I have with cloud computing while giving me the biggest advantages: rather than having my data stored in someone else’s cloud and praying that they don’t decide to shut down my service for some random reason, I have a local copy of my files on all of my machines, all in perfect sync.

Windows users, do yourself a favor and get a Mac.  The new Mac Minis are real screamers.

Posted in Uncategorized | No Comments »

Jul 8

For My Grandmother

It’s impossible to sum up 94 years of a beautiful life into a few short words.  So instead, what I’d like to do is just talk to my children, and tell them about their great-grandmother’s life, what an inspiring person she’s been to me, and what they should carry with them.

Gustava was born into a humble life in rural Louisiana just before the United States entered World War I.  To the daughter of a sharecropper, however, such world events were only distant tales.  Her family would rent from one land owner or another, moving from place to place with the work.  The places where she lived weren’t referred to by town or zip code, but rather by the name of the property owner.  The Hodge Place.  The Richard Reynold Place.  The Buck Evans House.  The Neal Place.

She was a middle child in a family of five sisters and one brother.  Childhood toys for her included a piano that she built from an old apple crate with pieces of wood attached to rubber bands for keys.  Popular music for her was found in church hymnals.  There was only one car in the entire town, a luxury owned by the town’s doctor.  The only journal she had was writing in the margins of a hymnal retired from the church her family attended.  In the margins she would write down the date and what she was doing on the rare occasion that an airplane would fly over her house.

She would ride to school five miles away in a two-seat surrey driven by one of her older sisters Myrtle or Irene.  But by the eighth grade her father’s declining health forced her to abandon school to finish bringing in the crop.  She took a job working for a school teacher family.  Though the work was hard–milking cows before daylight, washing and boiling clothes in a pot, starching and ironing linen suits–it was one of the most wanted jobs in Manifest, and one of the highest paying at $15 per month.

In February of 1941 she married a man who would serve as a town alderman and owner of an auto parts store.  The family had two daughters: the first just days after the United States became involved in World War II, and another following in 1948.  Despite many difficulties in marriage she always saw fit to do what was right for her family with a sense of pride and dignity.  Those words describe how she approached life: She clung to living a simple and dignified life with an innate stubbornness.  Nothing was more important than living a life of self-respect.  She knew that when those things were attended to, in faith to God, all other things seemed to fall into place.

She found beauty in simple things: flowers, a well kept yard, and the designs of Depression-era glassware that she collected with her best friend, Mazelle.  Together, the two of them shared a hobby of making trips to seedier neighborhoods to find people willing to sell their wares.  Both remarked that it was a wonder they made it through some of those trips.

But my memories of her of course come later in her life.  They are of a strong, independent woman retired from her career at K-Mart, living in a small, tidy duplex apartment.  Spending the night with her in her apartment was a highlight of my childhood.  We would sing songs together, go walking on the railroad track that ran beside her apartment, or take trips to go fishing or to garage sales.  Never for a moment losing her mothering spirit, she would make sure that my hair was dry after a bath by making me sit in front of the heater vent, and that I wasn’t getting too cold at night by covering me up after she thought I had fallen asleep.  Even as a widowed woman on retirement income, she always provided for my family when we couldn’t always provide for ourselves.  She made sure that I had respectable clothes to wear and supplies to bring to school.  Of course, as a boy I never truly appreciated those shopping trips, and always wanted to try to push the limit of what she was willing to buy me into what I thought was in style for school.  She never once lost patience with me for that.

She would always spend the night with us on Christmas Eve, and those Christmases were special indeed.  She approached the holiday with a wonder that was on my level. Leading us in Christmas carols while we sat sipping eggnog, illuminated only by the tree and the special candles that we would burn once yearly on Christmas Eve.  She kept us curious in where Santa Claus might be delivering presents at, but never at the expense of recognizing that we were celebrating the birth of Christ.

Even as she encouraged that nearly every dream I had was reachable, she planted the seeds that I would reach goals only through hard work.  I guess you could say that she gave me my first summer job, paying me to come and mow her lawn, even though the service could have been provided to her for free.  When I offered to do it for free for her, she refused and paid me anyway.  I was encouraged by her pride in me to go to college and stick with it through graduation.  We both found it rewarding that my college was minutes from her apartment, and every day I had classes she would cook lunch for us both.

She leaves behind a legacy of life lessons for all of us: Never use anything that life throws at you as an excuse to live without self-respect.  Value hard work.  Live simply.  Live with dignity.  And live in faith.

Posted in Uncategorized | No Comments »

Jun 13

Learning the Next Big Thing (SproutCore or… something else?)

I’ve been toying with the idea of learning SproutCore for a while now as a way to learn more formal development skills than the PHP scripting I’ve been accustomed to.  I like the idea of an application that it more formally structured than the build-it-as-you-go-by-the-seat-of-your-pants approach that PHP pushes, and learning proper MVC structure.  I also love the concept of an application that runs on the client side and only calls back to the server when it needs data.  This strikes me as being a much more efficient and high performance way to do web applications.  I see a lot of benefit in this approach as I work on writing a replacement for our flagship app at work.

However, I’m increasingly struck by feeling that SproutCore isn’t quite sure what it wants to be.  For the last year, SproutCore’s direction seems to be blowing around in the breeze.  They appear to have obsoleted the Greenhouse interface builder they were working on; they introduced a templating system that bypasses the traditional way that Views were handled; they introduced a way to run apps based off of something called state charts but I haven’t seen much to officially sanction this on the website.  Now, at least as far as the 2.0 developer preview is concerned, they seem to be doing away with most all of the meat that made SproutCore itself, and making it an MVC layer optimized for jQuery.  I get the feeling that the entire framework is a boiling mish mosh and the developers are trying to figure out what kind of stew it’s going to be.

I’m sure I’m wrong in this characterization, but the point is that I’m now quite hesitant to put forth serious effort to learn SproutCore.  I can’t invest my time in something that I’m unsure will even be there in 6 weeks.  What’s more, the documents that are supposed to be teaching me how to code on the platform can’t keep up with the fervent pace with which the developers are changing the direction of the project.  I need a book, filled with official best practices on how to accomplish tasks and code examples leading up to the construction of a fully fledged app with user authentication.

I don’t know a lick of Objective-C or its style of development, but maybe it’s time to jump in with some Cappuccino and learn Objective-J instead?  However, something doesn’t feel quite right about Cappuccino’s approach of shoehorning applications onto the web while ignoring some of the web’s core features like HTML, CSS, and the DOM, but at least that way I could take my experience and perhaps back port it to writing proper Objective-C apps.  Maybe a shoe in the door to scratching the itch of writing the genealogy management app I’ve always wanted to write and take over the world.

spacer

Posted in Uncategorized | No Comments »

Jun 6

WWDC 2011 Thoughts

So, the Stevenote has come and gone and has seen a fairly substantial set of announcements.

Most of the OS X Lion preview was a rehash of the preview that the company made last year, but exciting to me since I’m one of the few dinosaurs that’s more a fan of desktop OS X than iOS.  A few new tidbits were revealed in the comprehensive list of 250 new features that Apple has posted.  Amongst the high points for me include:

  • improved VoiceOver – I enjoy having the computer read something to me while I’m busy working on something else from time to time
  • the execution of AutoSave and Versions.  This is one that I have to say: really, whether Apple or Microsoft implemented it first, isn’t this something that we should have had at least 5 years ago?  The “Save” button should really have gone the way of the dodo along with the floppy disk.
  • installs only from the Mac App Store.  I question not having at least a USB drive to install from, but that leads me to
  • creates an installation partition for fresh installs.  This makes sense to me given the limitations of an App Store install.  I could complain about the death of a hard drive and losing this data, but these days everything is moving to more reliable SSD drives, and hard drives are (for practical purposes) replaceable only by Apple anyway.
  • search tokens in Finder and Mail.  I’m giddy for how much this is going to improve searching for things.
  • iChat service plugins and single-window buddy list.  Apple should have done this a long time ago.  Maybe people will stop looking at me funny when I tell them I’m still using AIM if I can also plug in a Yahoo Messenger or MSN chat credential.  Then again, it’s not like I chat with anyone, anyway!
  • delta (or patch) updates.  This one had to be a matter of time.  They only need to have a few thousand users have to update the full 6GB Call of Duty app to put a serious, and unnecessary, hurting on their servers.
  • Safari – Lots of cool stuff, WebGL seems to be built in, but as of this point has to be turned on through the Develop menu.  Tap/pinch zoom, could be useful on the Macbook Air.  Reading list (or Instapaper knock off) could be neat, but only if accompanied with a worthwhile RSS feed reader on iOS.  HTML5 media caching.  Very excited to see this, but mainly as to whether or not it’ll make it down the pike to iOS.  I would love to be able to make a web app that played our training videos at work offline.  MathML and WOFF support, good to see more open standards working into the mix, but Apple is still unsurprisingly quiet on WebM support.
  • iOS-style auto correction.  I don’t know whether this will be useful enough to outweigh how utterly annoying it’s going to be.

I won’t go into the iOS 5 features in as much detail because frankly they don’t interest me as much.  The main points I would talk about would be frustration that some of them don’t offer integration with OS X.  iMessage is a dead ringer for being supported in iChat, and yet it isn’t.  I’m still surprised that there’s no iBooks app for the desktop.   The new Reminders app stands out as a major plus because I’ve been feeling for years now that Apple is slowly deprecating To Dos from the calendar, and not only brings To Dos back in a very useful way (it’s awesome to be able to set reminders to go off when I arrive or leave a location), but also  syncs back with iCal on OS X.

AirPlay mirroring for iPad could well have inadvertently given Apple a console gaming device, a particularly interesting development given that Nintendo is due to reveal their next console tomorrow which is widely expected to be a gaming station that has controllers with six inch touch screens that can be undocked and used as stand-alone game platforms.

The meat of the announcement, though, was iCloud.  After much speculation, the iCloud announcement turned out to be more about where Apple is going rather than a specific product announcement.  One blogger noted that what will define the direction that computing takes over the next ten years will be the differences in how Google and

gipoco.com is neither affiliated with the authors of this page nor responsible for its contents. This is a safe-cache copy of the original web site.