Like the iPhone, the iPad inspires ideas for products. But can you turn your idea into a viable product? We have developed a set of rapid design templates that guide some of the creative and critical thinking processes behind good product design. You can download the templates for free for use in designing your own products.
ActionMailer classes, for sending out emails, typically reside with models, inside app/models folder. Yet, they have traits that are similar to controllers. For example, each actionmailer class has a view folder inside app/views where email templates are defined. And testing support for email is provided as functional tests with assert_select macros such as assert_select_email.
In my current project, most of our email hooks are defined on model classes as after_filter. This is in line with recommendation to keep controllers thin and models fat. However, testing email body’s html format is a pain since assert_select_email support is only available in ActionController::TestCase hierarchy, and not in ActionMailer::TestCase hierarchy.Read more »
We have a number of clients who have taken a hard look at MonoTouch. Objective-C was just too much of a technology shift for them with their C#/Java/Ruby developers. Now with the revised SDK agreement and it’s section 3.3.1, it looks like XCode and the C-derived languages of the 1980′s are in everybody’s future.
Now along comes HTML5 with it’s offline caching of resources, it’s offline storage (key-value and SQL), and it’s Canvas. Throw in the high performance of the new crop of browsers, and you see where this is all headed. And with WebGL, well, check out this port of Quake II by the GWT team. Yep. That’s Quake II running in the browser.
Offline storage on on the iPhone is limited to 5 meg (10 meg if the user permits it), but that’s still pretty decent for an online/offline app. And you can absolutely give users part of the experience of a native iPhone app with a custom app icon and a startup screen. Will this type of app replace the native iPhone app that needs the sales channel of the AppStore? No. But in the short term, it’s a good option for companies looking to develop lightweight mobile apps for all WebKit capable devices.
I can still remember how I felt the first time I deployed a a Java application from the WinNT desktop where I had developed it to a pair of Solaris servers. It was either late 1998 or early 1999. Up to this point most of my experience in cross platform development had consisted of the surprisingly difficult and painful task of tweaking the code and header files of open source programs to compile on ever so slightly different flavors of Unix. Forget about crossing the Unix/Windows divide — that way lay madness.
This was one of the first servlet-based application outside of Sun, and so it was still unproven technology, but when that webapp was ftp’d and installed and ran against that Sybase back end just like it had on NT, it struck me as deeply weird, unnatural and…wonderful. Would I, finally, as a developer, be able to write once and run anywhere?
Well, the answer was a resounding “sort of.” Java never really took off as a desktop platform, but it inspired other cross platform runtime environments, like Flash and Ruby. The Balkanization of software development platforms seemed, if not at an end, then at least in remission.
With the advent of powerful and widely available mobile platforms, it seems that we’ve experienced a relapse. Apple recently revised section 3.3.1 of it’s SDK agreement to read:
Many blog posts have already been written. Perhaps the best responses can be found here, here and here. My thoughts? Lawyers get overzealous and put all sorts of unenforceable things into contracts on the off chance that it might stick. This one strikes me as unenforceable.
Beyond the above bit of silliness, there’s speculation afoot that the iPhone will singlehandedly kill of Flash. Why develop for Flash if the use can’t see it on an iPad, the reasoning goes. And if all we were talking about were the demise of inappropriately flashy corporate web brochures, annoying web adverts and a few video players, not one would care. But as with most cross platform runtimes, there’s more here than meets the eye.
Flash/Flex is, for example, an excellent data visualization platform. Drawing fancy graphics efficiently even in a native environment is no mean trick. Animating vector graphics with millions of points demands prodigious effort on the part of developers. Having to do it twice or three times for different operating systems means it will likely only get done for one.
If Flash ceases to be a viable platform, it will kill off some really useful software, or at least make it less available. Let’s hope that doesn’t happen. Otherwise “porting,” that least useful of development tasks, will become a ubiquitous verb again.
I had the opportunity to speak last night to the first meeting of the Chicago Product Managers Association (ChiPMA) meetup group (www.meetup.com/chipma). We had pizza, beverages and a great group of about 15 people looking to learn about and share product management experiences. The presentation centered on six techniques for quickly creating and communicating ideas using visual templates. You can download the templates right here by clicking this link.
Following the presentation, we had a group dialog about creative thinking techniques and future topics of interest for ChiPMA meetings.
If you are interested in product management, networking with the product management community or just expanding your knowledge of the digital product space we hope to see you at the next ChiPMA meeting!
Yes, we did. And here’s why.
I was at a recent social gathering where we started talking about how funny and bizzare it is that people use twitter to post messages like .. sh**, woke up late .. having lunch at Gino’s East … driving to work … my dog peed on my bed … . .. Oh ok, that last one is probably out of thin air but posting those kinds of messages probably don’t add much value for anybody, the author or the readers.
To test the waters, I created an account about 6 months ago. Very quickly I realized that twitter fills in a void that none of the other communication tools do.Read more »
I don’t remember the last time I was as excited about development as I am now, and for discovering old news no less! Enter Adobe Alchemy.
To give you some background on the problem, I am currently working with an excellent team on a huge project (top secret). It is so huge that we are trying to retrieve half a million records per call from the server and process it with complicated algorithms in a browser. A tall order for Flex. Yes, we are using BlazeDS and we’ve added Vector Class from Flex SDK 4.o. We even did some Number to int and back magic (shoutout to Chris and Jeff) to compress the data going over the wire, but the processing of the result is “less than ideal”.
This is where Alchemy steps in. Thanks to a great article by Ralph Hauwert, we have been able to tap into power of C inside Flash Player! To quote Alchemy’s site regarding that: “…performance can be considerably faster than ActionScript 3.0 and anywhere from 2-10x slower than native C/C++ code.”Read more »
So Opera Mini for the iPhone got approved and is available in the App store since last night. I downloaded it this morning and should say I am mighty impressed with it. It is zippy, fast and intuitive. There was a quite a bit of speculation around whether this would get approved by Apple. I m happy that Apple approved it.
I did notice a few quirks with the Browser but they are in no way deal-breakers. From my brief interaction with it, the browser looks awesome to me! I dont deny Safari being a solid mobile browser itself but with Opera out now, its “Bye-Bye Safari” for me
Microsoft is to Netscape as Apple is to Opera?
Remember when Microsoft dominated the landscape and they drove Netscape out of business by bundling IE ever more tightly with Windows? There was a little matter of a governmental antitrust litigation that eventually caused Microsoft to change it’s ways.
Apple is set to dominate the mobile landscape in much the same way, and they’ve come up with a closed ecosystem of hardware, operating system, SDK, app store and restrictive licensing terms. If they reach as dominant a market position as Microsoft did with PCs, you are likely to see the same kind of legal challenges.
An early challenge is coming in the form of the Opera browser, which was submitted to the app store on March 23rd. This browser isn’t based on webkit, so it changes the equation for folks developing mobile web sites targeted to the iPhone and iPad.
If they give Opera flack, then the crisis for Apple might come sooner. If they knuckle under, they might be able to stem the opening tide for a while longer.
I bought a Kindle shortly after the second version came out, then upgraded to a DX soon after. The device worked for me and carrying around a few hundred books in a little package beats schlepping a bag full of physical books.
There are some things that the device doesn’t do well, mainly jumping around in a reference works. So the Robert Parker wine guide or the Gang of Four patterns book are next to useless on the Kindle. But if you are reading fiction or nonfiction from front to back, it rocks.
The real killer aspect of the Kindle is the e-ink display. For someone who spends all day staring at a glowing computer screen, the reflective display is literally a sight for sore eyes. It’s even easier on the eyes, I’ve found, than a regular physical book.
I’ve now had a few days to evaluate the iPad’s iBook application as well as the Kindle app. My findings are as follows:
- The iPad is just as useless for reading reference works. Use a PDF reader instead.
- The iPad is hard on the eyes. Reading, in fact, is harder than other types of tasks that involves changing focus frequently. If our school children are going to be reading off of their iPads, I’d recommend investing in the corrective eyewear industry.
- The battery life of the iPad at 10 hours, while ok, is laughably short compared to the 2 weeks of the Kindle.
So, as far as I’m concerned, it isn’t a better ebook reader (though the Kindle is far from perfect). I won’t be cuddling up with a cognac and my iPad on a cold winter evening.
But even though the iPad is an inferior reader, can’t it still be a Kindle killer? I suspect that some people who were potential Kindle customers may make due with an iPad, but I think many more will be exposed to the idea of reading ebooks and end up upgrading to the current and next generation of e-ink devices.
The real battle, however, will be fought over access to iTunes, the app store and the Apple mobile platform. So, make some popcorn and get out your legal dictionary. It’s going to be an interesting two years or so.