Varying the viewport meta tag between phones and tablets

Here’s a quick tip on viewport meta tags when dealing with differing preferences for phones and tablets – use javascript. First, create your meta element, be sure to add an id. <meta id="viewport" name="viewport" content="" /> Now, add some simple JS to modify the value to whatever your conditional needs may be: if (screen.width < ...

Reporting Dashboards for SaaS Platforms: Buy or Build?

Providing reporting dashboard solutions to end users is a common deliverable of a fully developed SaaS platform. The business decision to buy or roll your own can be complicated, and largely depends on your actual needs and what your staff and long term goals look like. Many products exist at varying levels of complexity for ...

Why iOS6′s ajax POST requests get cached and how to fix it

iOS6 features something that will feel like a bug to most web developers out there, but in reality is Apple trying to enforce a definition in the HTTP spec that has never been utilized before. See this on Stack Overflow: http://stackoverflow.com/questions/12506897/is-safari-on-ios-6-caching-ajax-results In regards to POST data, the HTTP spec defines this little gem: “Responses to ...

iOS6 XHR bug – multiple 200 responses in Safari

Apparently iOS6 has a flaw in its handling of XHR requests in Safari. I can’t confirm if there is a particular condition for the repro, but working with A5 (a5js.com) the bug was present and has now been fixed. Using the safari remote debugger I was able to confirm that a single request went out ...

Dealing With Rogue IP Requests in Web Apps

When building web applications, we develop, we test, we release. And when we test, we’re generally designing and verifying test cases that we are expecting our end users to come across, either intentionally or accidentally. We may, if we are diligent, go a step further and attempt to identify holes in the application as well ...

HTML5 manifest mime type in grails 5

I ran into an issue serving the proper mime type for a cache manifest from grails today, adding a ‘manifest’ key to grails.mime.types failed to register for some reason (if you know why, do tell!). Running on a server this can be addressed by setting the mime type directly in tomcat, but i needed to ...

Internet Explorer 10 preview – no sign of Web Workers, among others

Microsoft today released a preview of Internet Explorer 10, and as of this first release there are no signs of Web Workers or other wish list JS items in IE9. I’ll give the benefit of the doubt as this preview is exceedingly early and it seems to be focusing on CSS3 improvements, but so far, ...

RIM, please buy Palm.

[dtse][/dtse]Dear RIM: You’ve had a great run, but it’s time for a change. It seems even you are starting to realize your failings with your recently announced webkit browser, and a large portion of your once loyal user base is now dying to jump ship. Palm on the other hand has a whole slew of ...

Multitask apps can be killed in OS 4.0 2

[dtse][/dtse]Scott Forstall, SVP of iPhone Software for Apple, appeared to dodge the question of how to kill an app running in the new multitasking interface for iPhone OS 4.0. When asked during the Q & A session post announcement, he stated that it wasn’t necessary to kill the apps in the first place. Note he never ...

iPhone OS 4.0 beta does not include iPad device firmware 1

Officially official – Apple already stated the iPad wouldn’t get an end user 4.0 release until the fall, and in line with that developers do not have access to an on-device 4.0 beta in the just released SDK either.