Originally Posted By: artie505
I know nothing about either developing apps or WebKit, but it just does not seem likely to me that a developer does not know where his app's "stuff" is cached.

Is it actually possible that MaxBulk Mailer just "throws" "stuff" at WebKit which deals with it according to its own secret protocols or, as seems more likely, does WebKit handle "stuff" as instructed by the apps with which it interacts (if that's a correct word in any sense)?

OS X and iOS provide developers with literally thousands of Application Program Interfaces (a.k.a. APIs) that provide immense power and functionality to developer applications. Functions such as creating windows on the desktop; accepting keyboard, mouse, trackpad input; rendering screen images from HTML, CSS, Javascript; providing internet access; etc., etc., etc. All the applicaton developer needs to know is the API call and what parameters are needed to perform the task and what parameters to access to obtain the results of that call. There are numersous advantages to this scheme including:
  • Each developer does not have to "reinvent the wheel" by writing extensive code to handle common functions.
  • It dramatically reduces the opportunity for error in the applications because much, even most, of the finicky stuff is handled by proven code in the OS
  • It contributes to a common "look and feel" for all applications
  • It dramitacally reduces the possibility for applications interfering with one another or with the OS
  • The application "footprint" on the hard drive and in memory is generally a fraction of what it would be if all the functionality were resident in the app itself
  • Applications are a lot easier to develop and therefore can be profitably sold at mucb lower prices
  • It makes a substantial contribution to Apple's mantra that "It just works"

A side effect of these extensive APIs is that is entirely possible to develop good applications with little or no knowledge of what is going on under the hood. Think of it as the developer's version of "It just works." While information on the specific code used in these APIs (what you are calling protocols) is not always available, how they work and what they do is available to anyone who is a registered Apple Developer (even at the free level) and has the time and patience to rummage through hundreds or even thousands of pages of documentation. Although there are some really bright and well informed guys and gals developing applications for OS X and iOS, Apple has made the entry point easy enoough that I would venture a substantial portion of those developers do not have the background to comprehend how those APIs work and could care less.

So it is entirely possible, even likely, that a given developer has little or no idea where webkit puts "stuff" or how it works internally. No matter what you think of this, trust me, you do not want to go back to the bad old days of software development where everyone did their own thing. By the way like almost everything in OS X and iOS, webkit and its associated APIs, is an open source product used by lots of developers other than Apple.


If we knew what it was we were doing, it wouldn't be called research, would it?

— Albert Einstein