The General Theory of RIAtivity

Pondering the New Fabric of the Web — Rich Internet Applications (RIAs)

Apple Rejects Microsoft SharePoint-related App

leave a comment »

For three weeks I’ve been trying to get an application our team has spent nearly six months developing and testing approved by Apple for the AppStore. The application, GainCast for iPhone, is an app which lets users connect to a Microsoft Office SharePoint Server running the open source PodCasting Kit for SharePoint (PKS). Basically, PKS turns your SharePoint server into a YouTube-like server.

The first rejection from Apple had a robotic-like response stating:

GainCast for iPhone cannot be posted to the App Store because it is transferring
excessive volumes of data over the cellular network, which as outlined in the
iPhone Developer Program License Agreement section 3.3.20, is prohibited:

" If an Application requires or will have access to the cellular network,
then additionally such Application:

-  Must comply with Apple's best practices and other guidelines on how Applications
should access and use the cellular network;

-  Must not in Apple's reasonable judgment excessively use or unduly burden network
capacity or bandwidth;"

I sent two emails back to Apple Developer Support asking for exact clarification because, upon browsing the AppStore, I found other apps which do the same thing our app does — the Consumer Reports app among them, where one can stream video reviews from a browse screen. Both requests for more info resulted in more robotic-like responses asking that I provide details of the support problem, including screenshots. It’s as if no one even reads emails over at Apple — the only technical support issue here is that Apple Developer Support folks don’t actually read emails before shooting off automatic replies asking for information irrelevant to the issue at hand.

So I re-submitted GainCast for iPhone for another review and in this submission I included verbose comments such as “before rejecting our app please note the following list of apps which utilize identical core functionality (e.g. fetching XML and streaming video). Today I learned that, again, the reviewer(s) seemed to have ignored my comments and questions, which included “please explain in detail how Apple perceived our app differs from others with similar functionality already approved and available in the AppStore.” The result: GainCast for iPhone was rejected again for the same reason — too much consumption of cellular bandwidth and, despite my request for a deeper explanation, there was none.

Ths is nonsense. Is there a deeper issue here? Does Apple not want apps in the AppStore that connect to SharePoint? Or am I giving Apple too much credit and is it that, as one could surmise by the multitude of complaints from other developers, that Apple’s app review process is secretive, inconsistent, not at all respectful of the interests of developers (e.g. read and answer my questions), and just plain broken?

If someone from Apple is reading this and has an ounce of compassion please comment with how I can reach you. I just want to have my specific list of questions addressed. Thanks!

COMING NEXT: Side-by-side comparison of the network traffic transferred by the Consumer Reports app vs. GainCast for iPhone.

PKS Mobile Services Pack and PKS Player for iPhone

with one comment

GainCast for iPhone GainCast for iPhone GainCast3

Now seems the right time to mention two exciting Podcasting Kit for SharePoint (PKS) products the team and I at Sysgain have been working on for several months.

First, in the next few days we’re releasing the PKS Mobile Services Pack. An easy install on top of an existing PKS instance (minimum March 2009 beta required), PKS Mobile Services is an API layer which we hope will become the foundation for the development of mobile apps, extending the value of PKS to an array of mobile devices. PKS Mobile Services will be released open source under Microsoft’s Publice License. A formal announcement will be made on the day of release including download information and documentation.

Soon after the PKS Mobile Services Pack release we’ll announce the availability of the GainCast for iPhone PKS Player in the Apple AppStore. Currently in AppStore review, GainCast for iPhone is the first application enabling  users to connect to one or multiple PKS servers and browse, search, stream, and rate podcasts from the convenience of an iPhone/iPod Touch over Wi-Fi or the cellular network. This is a powerful addition to any enterprise seeking to extend the power of PKS to its mobile workforce. GainCast for iPhone will be available to the public as a reasonably priced download from the AppStore. Organizations looking to economically deploy a PKS Player solution to their workforce also have the option of a custom branded Enterprise version of GainCast PKS Player. In addition to the iPhone version, we’re planning a Windows Mobile 6.5 version of the player for release later in 2009.

For questions about either product contact Mike Brophy, Product Strategist at Sysgain. We’re looking forward to the PKS Community using and providing feedback on these two exciting new additions to the PKS toolset.

Sysgain is an indepedent software vendor with offices in Washington DC, Las Vegas, and Seattle. Sysgain is passionate about helping organizations take the fullest advantage of PKS through its powerful add-ons and comprehensive array of PKS consulting, implementation, hosting, and support services. It’s proudly a Microsoft PKS Partner.

Podcasting Kit for SharePoint (PKS) is an accelerator for social media, using podcasting and social networks to deliver the next generation knowledge management solution to organizations using Microsoft Office SharePoint Server and their users/customers using a wide variety of mobile devices.

Commentary on “Does America Need to Make Things”

leave a comment »

Below is my response to an interesting article about “Does America Need to Make Things” by Sarah Lacy: http://www.techcrunch.com/2009/06/14/does-america-need-to-make-things/

“I’ve been saying this in conversations with friends for the past 3-4 years; I completely agree. I’ll be the first to admit, working as a developer and tech strategy guy, at the end of the day many American worker push emails and digital bits for a job and there’s nothing of tangible value in the end. I’m not saying “information workers” aren’t necessary, but as in so many other ecosystems DIVERSITY is key – manufacturing, services, medicine, academia, etc. America has gotten services-heavy in its employment profile. At the same time, American companies and consumers have to sacrifice the desire to have everything cheap otherwise manufacturing will never thrive in the US again. We have to understand that paying a bit more is the price we pay for a thirving domestic economy.”

Written by riactant

14-June-2009 at 15:02

Is your Gateway TB120 lid hinge loose or won’t stay up?

with one comment

A friend of mine recently dropped off their Gateway Tb120 tablet asking if I could fix the loose lid/hinge — the screen wouldn’t stay up. I have a Gateway M-275 convertible tablet PC which had similar issues which I fixed so I agreed to look at it.

After getting at the hinge assembly I discovered her problem was a broken left hinge arm. The arm itself looked warped, as if it had suffered extreme torque — I’m guessing because of a loss of lubricating action in the hinge pin due to age/environment. The hinge assemblies on Gateway convertible tablets varies by model. If you have a Gateway TB120 and have a loose screen/hinge this might be your problem. Replacement hinges are available, but at $60-$90 for parts and adding getting the assistance of someone patient and careful enough to take apart your tablet to replace it, you could have bought a new netbook and at greater than half the cost of a new, inexpensive laptop.

Gateway TB120 Broken Hinge Arm

Written by riactant

13-June-2009 at 12:49

MPMoviePlayerController Streaming Breaks Under Authentication

leave a comment »

So my colleague and I have been stuck on an issue for about three weeks which we finally gave up on. The application we’ve been developing requires streaming of an MP4 file from a Microsoft Office SharePoint Server (MOSS) 2007 server. The video file can only be accessed by authenticated users. Several other parts of our app authenticate just fine to the MOSS instance using NTLM authentication using NSURLConnection and NSURLDownload in our Objective-C code. However, once we try to access a video file, even if we’re already authenticated to the server and there is a valid identity in the iPhone Credential Cache, the app fails at the QuickTime player screen with an error to the effect of “the movie could not be played.”

For comparison and to rule out our own code, we tried to access the video URL directly from iPhone Safari — Safari will prompt for the user credentials when challenged by the MOSS instance, however entering the correct credentials and proceeding leads to the same error.

Upon consulting with relatively more experienced iPhone SDK folks here in the Seattle area and a few, very sparse, comments online, it appears Apple’s MPMoviePlayerController doesn’t work when a credential challenge is received. The consensus, although conjecture, seems to be that the MPMoviePlayerController is based on a Core Foundation (CF) Network class which is pretty low lever networking without much intelligence for handling authentication challenges. One of the gurus we chatted with recommended we write our own class, but unfortunately we don’t have the time to dig into the packet level and write our own class so we came up with a server-side workaround that provided sufficient security.

So beware authenticating to play a video/stream with MPMoviePlayerController — if you discover an answer or solution that we’ve missed, however, please let me know.

Written by riactant

25-May-2009 at 19:57

Retrieving Deleted Text Messages from your iPhone

with 14 comments

[Updated 06-28-2009]
If you want to easily view the text messages off of your iPhone I highly recommend the following site:
http://www.iphone-sms.com

You can export your messages to an easily readble HTML page or PDF file.

Note that if you have deleted portions of conversations (a feature as of iPhone OS 3.0) or deleted entire SMS conversations and sync’d your iPhone through iTunes, the most recent backup will not contain those messages/conversations you deleted. The only way to access those is to find the SMS DB file from a backup done via iTunes before you deleted them.

[Updated 05-03-2009]

I figured I’d post this as a follow-up to my previous post a few years back mainly because I regularly get questioned on the topic of how to retrieve deleted text messages. Furthermore, I wanted to post a method which didn’t require JailBreaking a phone or that was overly technical. So here you go, a pretty straighforward method for accessing text messages from your iPhone which may have been deleted but might still be available in the iPhone’s SMS database.

ASSUMPTIONS: I assume you are running Windows of some flavor and have synched/backed up your iPhone using iTunes on said machine.

1. Download and install TextPad
2. Open TextPad.
3. Select Search > Find in Files…
4. Complete the “Find in Files” dialog as you see in the following screenshot. Make sure you’ve checked the Search subfolders checkbox or else this won’t work. Note: this was taken from a Windows 7 machine. The path value for the “In Folder” field should be the same for Windows Vista (of course, your username will appear instead of “mike” in the path. For pre-Windows Vista your path will be under c:\Documents and Settings\[username]\Application Data\Apple Computer\MobileSync\Backup\
capture

5. Click Find.
6. In the TextPad search results pane you should see at least one search result found (even though multiple results may have been returned, they all will point to the same SMS DB file per backup folder). Below is a screenshot of what might appear (your filename will likely be different):
capture1
7. Double-click on one of the search results and the SQLite file will open in the upper pane. Much of it will look like garbage, but there’s alot of human readable info in the file, particularly your text messages. Enjoy!

Written by riactant

2-May-2009 at 20:20

Posted in iPhone, iPhone Security

Tagged with , ,

The Retirement of Dr. Thomas E. Devine, USDA Soybean Geneticist

with one comment

Dr. Thomas E. Devine, USDA Scientist

Dr. Thomas E. Devine, USDA Scientist

Following is a piece I wrote that was presented at the retirement celebration for Dr. Thomas Devine, a soybean geneticist with the United States Department of Agriculture (USDA). Dr. Devine retired after 40 years of service with the USDA on Thursday, 26 March 2009. I worked with Dr. Devine in 1990 at the USDA Agricultural Research Service in Beltsville, Maryland.

I worked as a Biological Aide intern to Dr. Devine during the Summer of 1990. Nearly 20 years have passed since that blistering hot summer, but those 13 weeks with Dr. Devine left me with lasting memories and influential lessons that I carry with me still. Today we celebrate Dr. Devine’s long and distinguished service and I’d like to share three short stories about lessons I took away from working under Dr. Devine.

The first story is about how working for the USDA taught me more about Irish history than it did about agriculture. It’s no surprise to anyone who’s known Dr. Devine that he’s fully invested in his Irish heritage. Frankly, I think the only reason he selected my application from the pile was because I had a not-so-common Irish surname, at least not so common in America. There are Brophys all over the place in Ireland. I remember when Dr. Devine called to tell me the good news that I’d been selected for the internship — he asked if I knew of my Irish surname and about my family background. It wasn’t long after starting that Dr. Devine pulled me and his two other interns, Bryan and Stephen, in for one of his afternoon history lessons where we learned about the likes of 10th century King Bryan Boru, uniter of the Irish people. Dr. Devine’s love for Irish history and culture was contagious — he truly modeled a respect and curiosity for family history that left a lasting impression on me.

The second story is about hard work and seeing things through to completion. When I applied for the Biological Aide position in the Spring of 1990, I pictured beakers and lab coats, a summer spent in an air conditioned lab helping unlock the secrets of the soybean genome. My vision couldn’t have been further from the truth. The reality was that someone had to raise the soybeans first. That meant lots and lots of time out in the sun and dirt, planting, hoeing, irrigating, hoeing, pollinating, hoeing, and harvesting. Did I mention I did a lot of hoeing? I also did a lot of cursing under my breath. But the time for lab work came — the last two weeks of August — the bulk of the time consisted of four to eight hours out in the sweltering summer heat and beating sun on a USDA farm just inside the Beltway off of Cherry Hill Road. I’d arrive at 8 am each day and Bryan, Stephen, and I would hop in the USDA truck for the short ride over the hill to the farm. The only real highlights of each day were taking a 15 minute water break at the rickety old supply barn and then going back to the lab in the afternoon. When it rained it was a blessing from Heaven because we got to stay in the lab. But ominous clouds and drizzle weren’t enough — unless the rain was coming down good or there was a threat of lightning you could count on Dr. Devine sending us out to the fields.  But when you’re 17 years old and making $4.03 an hour as a GS-1 hoeing a soybean field it’s hard to see the value in what you’re doing. But I trudged through it, sunburn and all. Hoeing a field is a solitary and fairly non-creative activity, but by the end of that summer I saw the little seeds we planted grow into vibrant, two foot tall plants, that dusty field was a lush green oasis by September, and Dr. Devine had a new crop of plants and seeds that would support several more years of research — research that culminated in farmers here and in developing nations not losing their crops to drought, and turning devasting crop diseases into manageable and preventable ones.

The final story is about patience and believing in others. I mentioned a moment ago that we pollinated the plants. You’d think the US Government would have devised some hi-tech method for pollinating soybean crops. I discovered they did not — the job consists of a pair of tweezers, a jar of pollen, a magnifying glass, and several weeks of dragging yourself along the ground under soybean plants individually placing bits of pollen on the flowers. As a Biological Aide I had to operate at a macro level (hoeing dirt) and a micro level (pollinating plants). Soon I graduated to other, more skilled tasks — on rainy days Dr. Devine would hand me a pile of research papers to proofread, some his, some those of his colleagues. It was during this time that I learned about the effects of pH on nitrogen fixation of legumes and the order of precedence of footnote symbols. At one point during that summer Dr. Devine asked me to help write a computer program, with my collegue Bryan, that would calculate inheritance traits of certain soybean hybrids. It was a short project, but I felt as though I had graduated. You see, I always loved computers, I spent entire summers teaching myself to program on the computers at the local public library, and now I had a real job writing a program for the USDA! Dr. Devine probably doesn’t remember that little program, but I do — it was my first paid programming job and today I co-own a successful software company. Dr. Devine’s patience with me that summer and his belief that I could be trusted with increasingly important tasks meant alot to me; it taught me self-confidence and to be a self-starter and is something I will always be grateful for.

Much of the success I enjoy today had its roots in those 13 weeks I spent mentoring under Dr. Thomas Devine. I look back fondly on that summer, the young and somewhat aimless teenager who got the chance to work with a brilliant scientist and patient teacher. Dr. Devine no doubt contributed immeasurablly to his field during his career, but probably his most distinguished achievement was the positive effect he had on the trajectory of so many young peoples’ lives – those interns who passed through his doors during his decades of service at the USDA.

Dr. Devine, thank you for the memories, congratulations on your retirement and, as the Irish blessing goes, “”May the saddest day of your future be no worse than the happiest day of your past.”

Written by riactant

28-March-2009 at 12:11

“OK, we’ve got 50 million users. Now what?”

leave a comment »

Ian Landsman’s response to yesterday’s 37signals’ article “How did the web lose faith in charging for stuff?” is sobering. Both pieces remind us of the obvious, which seems to have gotten lost in the heady pace of the web. Namely, that web startups seem hesitant to charge for the value they provide and the likely cause for that is because many programmers, who are the polar opposites of sales and marketing professionals, are too scared and lazy to want to provide the service and support required of paying customers.

Let’s consider the latter for a moment, because perhaps there are more deeply rooted drivers for this behavior. I’ve been programming and working with other programmers across a number of companies for a long time, but have spent the last five years on the sales side of the software industry, so here’s my take. First, programmers are extremely egotistical of their own ideas and work — this is the dominant motivator. Combine the inarguable fact that most programmers are male, and you have a testosterone-rich competitive environment of guys trying to prove who has the better stuff.

Secondly, once programmers conceive their brilliant app ideas, they immediately envision themselves standing on railroad tracks, fame and fortune sits 100 yards down the tracks in one direction while, from the other direction, a train full of imagined competing “idea stealers” (aka other enterprising programmers) plows toward them, threatening to mow them down. This leads to the “36 hour Mountain Dew fueled coding session[s]” Ian describes. It’s also what explains the explosion of beta releases and commandments such as “release early and often.” Be first, no matter what, even if you don’t have a business plan. I’m guilty of it too.

This behavior has reached mania level and a collective tunnel-vision has arisen focused solely on the technology and little to no attention given to execution, to sales, to marketing, or to longevity. I’d guess most business plans for web startups includes some form of the phrase “build user base first, monetize it later.” When I was in tech support and then later a developer it was the cool thing to bitch about the A-type sales people and the know-nothing marketing team. But once I took a technical sales role and later started my own company, I realized software companies that last, that live beyond their initial investment to be profitable, only do so because of sales, marketing, and management execution in concert with quality engineering and support.

Steve Wozniak said in a CNET interview: “Steve [Jobs] wants to be this guy…who wants to change the world. Every time we’d create something great, he’d have the idea to sell it.” The moral: your app might change the world, but make sure it’s legacy is written in black ink, not red.

Written by riactant

10-March-2009 at 02:07

Install Windows on Boot Camp Using External USB Optical Drive

leave a comment »

Well over a year ago the SuperDrive in my MacBook Pro failed. No biggie, I rarely use an optical drive. But when I installed a new 300GB drive in my MacBook Pro and needed to install Windows on Boot Camp I ran into a problem. My Mac OS 10.5 Leopard wouldn’t recognize the external optical drive I’d bought (an LG slim drive). It worked fine with the Mac OS 10.5 install discs, but would not allow a boot to the Windows Vista DVD from the Boot Menu (what you get when you hold down the ALT key during power up).

The solution, I discovered after months of posting across various Mac forums, is to use rEFIt (http://refit.sourceforge.net/). Install rEFIt, then be sure to restart your MacBook Pro TWICE (via the Mac OS X restart function). On the second restart the eEFIt menu will appear and, provided your external USB optical drive is connected with the Windows bootable install disc, you can now choose to boot from the Windows install disc and install to the Boot Camp partition you should have already created.

I’m running Windows 7 on my MacBook Pro now and the install, using the above procedure, worked perfectly.

Xbox 360 Netflix vs. Apple TV

with one comment

Today the New Xbox 360 Experience (NXE) was released — I updated my Xbox 360 this afternoon to check it out mainly for the addition of Netflix. I’ve been using Apple TV since May 2008 and wanted to examine how Xbox 360 Netflix holds up against it.

Initial Setup – Winner: Apple TV
The Netflix bits aren’t downloaded and installed automatically as part of the NXE update, you have to separately select to download the Netflix Xbox 360 bits, this is likely because of the paltry hard drive space on stock Xbox 360’s. Microsoft probably didn’t want to put anymore down on the hard drive than necessary and leave it as an opt in for users. Account creation is typical — you have to enter a code presented on-screen on the Netflix website so your account and Xbox 360 console are associated.

Apple TV, on the other hand, is very easy to setup. Take it out of the box, connect the cables to your TV/ home theater system and power it on. It walks you through wireless LAN association and associating with your iTunes account.

Browsing – Winner: Apple TV
My biggest complaint with Netflix on Xbox 360 is that the Netflix catalog of streaming movies isn’t browsable on the console. This is a gaping hole in functionality if you ask me and probably the one feature most folks expected to have. Instead, you have to add movies to your Instant Play queue from your computer. They then appear immediately on your Xbox 360 console in the Netflex queue screen and you can play them on your TV.

Video Quality – Winner: Apple TV
The first movie I tested streaming with Netflix on Xbox 360 was “Apollo 13″ in standard resolution — the time from hitting “Play” to the movie starting was not bad, but not as good as Apple TV, and it was noticeably lesser quality, not terrible, but the differnce in video quality would be noticeable even to non-videophiles. Apple TV’s video compression and quality is hands down superior.

Movie Selection – Winner: Tie
This is where I would have thought Netflix on Xbox 360 walked away with the win. The vastness of the Instant Play catalog is a real plus, especially considering you can watch as many Instant Play movies as you like for as little as $8.99/month. However, Apple TV pulls it out making this category a tie because of their one killer feature: same day availability of movies on Apple TV as the DVD release. Folks are more than willing to pay near DVD full price for a movie if they can download it on the DVD release date to their console — my family is proof positive of this! The day “WALL-E” released we bought it on Apple TV for $14.99 and have done so for other movies. Netflix’s clinging to only making new releases available by DVD via mail will quickly become antiquated. With an Xbox 360 and a 20 mbps pipe into my home I’m begging someone to take my money so I can download their movie on the DVD release date. If the issue is distribution contracts/licensing, I suggest the Microsoft and Netflix folks get working on figuring that out, otherwise they should consider changing their name to USPSflix instead of Netflix.

Update: after further thought it seems unfair to ding Netflix for not having same day as DVD movie availability. This is more a shortcoming of the Xbox 360 Video Marketplace. However, it is entirely fair to ding Microsoft for having a disjointed video offering now with the Video Marketplace (which Microsoft runs) and Netflix. They need to iron this out so there’s one place to go for video rental, purchasing, and streaming in the Xbox 360 interface.

Overall Winner: Apple TV

I’m hoping in the next rev of Netflix on Xbox 360 things will improve and I understand it’s their first step. In the meantime, I’ll use Netflix on my Xbox 360 for older movies, documentaries and arcane stuff I can’t find on Apple TV, but my Apple TV will remain the marquis piece of my home theater device collection (after the 50″ plasma TV and 5.1 surround sound system of course!).

Here’s another review on the New Xbox 360 Experience. I don’t agree with all the reviewer’s comments but it’s another perspective and a thorough review.

Written by riactant

19-November-2008 at 20:37

Posted in Apple TV, NXE, Netflix, Xbox 360

Tagged with , , ,