Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Let's ask Dr. Rush.

Dr. Rush, what are your thoughts?


Dr. Rush: This forum simply doesn't have the capability to dial reason! Their reason...... is gone! Their minds.... are gone! All of our civility... is GONE!!!

Oh and I absolutely know how to dial earth, I just won't tell you.
 
Remember, sarcasm rarely comes across correctly on the web :)

As much as I love sarcam (a super-important skill) I have to confess that my post here was one of the few times didn't employ any!

I think my first post is remarkably straighforward.

Crap. Maybe I'm usually so sarcastic that the one time I was serious, no one got it!
 
Add internet radio

Because so many people focus on Pandora as the reason they need multitasking, why doesn't Apple make something to relieve this? That is, unless and until they're really ready to open up multitasking more fully on an OS level. The iPod (music) module can play music in the background now. So what I would suggest is that they add to the iTunes module an internet radio section, similar to what they have in the iTunes desktop app. Then anyone can stream any audio they want to the iPhone/iPad, in the background, but it's more tightly controlled (from Apple's perspective) than just allowing third-party apps to run in the background (iHeartRadio is another great audio streaming app I'd like to have on in the background). I'm sure there's a way to have a mechanism to send data back to Pandora (or whatever "station" you're listening to) to change tracks or whatever.
 
here is a thought, maybe Apple hasn't put in multitasking because they haven't found a good way to do it that fits their vision of the products. when they figure it out it will be put in. this whole argument for "need" is silly, because in reality no one really even needs an iPhone or cell phone for that matter. it is a convenience item. business and life were just fine when everyone had land lines and pay phones
 
While I think users can cope with the idea of filling a limited-sized device with songs or applications - I am less comfortable with the idea that the performance of the device is a resource and can be used up.

Then I'd take the Palm Pre model, and when you're flicking through the currently running apps, add a super-simple meter below each one that's an visual indicator of its impact on the system. (cpu, data usage, power somehow combined in one set of dots or whatever)

It's similar to fuel and temperature gauges in a car. People understand the concept of good and bad and relative levels.

I used to make casino systems and believe me, if we get little blue-haired old ladies to understand progress bars when a device reboots, we can do usage levels on a phone :)
 
I'm 100% with you on the BB. In the context of this conversation, a BB is relevant as we try to accomplish the same tasks. It's also nice when you (have to turn this feature on) are at the home screen and single button launch applications. For example I can be in Beejive chatting, quickly hit home, then hit the 'n' on the keybad and go right into BB Messenger. You then hit the BB button and the app you were PREVIOUSLY running will be highlighted. Hit the trackball and it switches. You wanna go from Messenger to email? Hit the home button, then hit the letter 'm' and you go into email. Lame song on Pandora? Quickly flip to it to forward the track. Have a call come in? Well, if you have a headset or handfree answer it, then task back over to your Beejive to chat with someone while on the phone. It's so intuitive when you learn it that I often use my BB while in front of my OSX computer with fullsize keyboard and mouse.

I for one am a huge Apple customer. I seem to have one of everything except an iphone. I have mifi on verizon so I just keep that in my pocket and then run around with a Touch to have access to all the cool apps.

I have a real life example of the limitations of the touch/iphone. I was outside the Apple store in the mall on Saturday debating on whether or not to buy a MBP (AGAIN) or wait for the new processor. I decided to leave the store and sit on the chairs outside on Craigslist to see if I could just buy a used MBP for the time being, then sell it when the new one comes out. While sitting there I was in the Amazon app trying to find the current prices of the MBP. I found myself wanting to switch back and forth between Craigslist, the Amazon app, and the Best Buy app. It can't be done without multi-tasking. I ended up just giving up and pulling out the BB so I could multi-task. I was also talking to two friends about my dilemma, one on SMS and the other on gmail (through Beejive).

There's my real life example. :D I couldn't conduct day to day business without my BB due 50% to multi-tasking and the other 50% is because of the keyboard but that's of course outside the scope of this thread.

Mike


multitasking on BlackBerries is quite intuitive - unless you specifically tell an app to quit, it will move to the background when you exit to the homescreen. If you hold down the BB-button, you'll get a popup with a list of apps running. Switching between apps is extremely quick (I can zip back and forth between an email and BBM like nothing), and unless the app is actively accessing the network, it doesn't really affect the battery.

Granted, BlackBerry apps are much simpler than iPhone apps and therefore less resource-intensive when in the background, but this just goes to show that there are simple, intuitive multitasking solutions that Apple could be looking at. Frankly, now that I have multitasking on my BB, I couldn't go back to a non-multitasking phone.

applicationswitcher.jpg
 
It's similar to fuel and temperature gauges in a car. People understand the concept of good and bad and relative levels.

It's not really like this.

Shutting down another app to gain performance ... to stick with the car analogy .... it's like pulling the keys out of your wife's ignition so that yours can go faster. It's not nearly as natural as you suggest.

The problem with the standard multi-tasking model is a lack of consistency. With an unknown amount of background processing, your chosen app might work fine, it might suck, who knows? When we start a new application, there is a 1 in 5 chance that everything will feel broken. And if it starts behaving badly, the poor user has the task of cleaning-up and trying to find the problem.

That's not acceptable in a mobile device. It's especially bad in a phone.

Anything less that 90% performance for a foreground app is unacceptable in a mobile device. Simply because anything less than 90% will be perceived as some kind of defect.

There is absolutely nothing wrong with the user performing the job of resource monitor and task policeman. As long as the user consents to the role.

But with consumer electronics, we expect the device to manage itself. We users, even the geekier ones amongst us, have more important stuff to worry about. The device is supposed to be helping the poor human. Not the other way round.


C.
 
But with consumer electronics, we expect the device to manage itself. We users, even the geekier ones amongst us, have more important stuff to worry about. The device is supposed to be helping the poor human. Not the other way round.

I've been arguing for a long time that (from Apple's perspective) we tech-savvy users are using the wrong analogy for our phones. For Apple, the iPhone is not supposed to be a computer; it's supposed to be a content-delivery device. And we, the consumer, are supposed to consume the content that Apple wants us to consume when and how Apple wants to provide it. To Apple, the iPhone is much closer to a TV than to a computer. We don't expect our TV to multitask, and we are not meant to expect our iPhone to multitask.

And for most people, I'm sure that is more than adequate. I love the fact that my jailbroken 3GS with iFile and MobileTerminal and Backgrounder and Kirikae/Proswitcher is a perfect little BSD box in my pocket. My wife loves that fact that she can download Bejeweled and Scrabble on her stock one. I imagine that the vast majority of iPhone users are closer to my wife than to me.
 
Some empirical evidence, and some thoughts:

Palm: I've had several friends and family get a Palm Pre or Pixi, and even the ones who've never had a smartphone in their lives learned its multitasking model literally within seconds. How could they not? Running apps are easy to see, switch to, and dispose of.

MS: WM 6.5 seems to finally work the way WM was originally designed to, long ago: when you open a new program that needs more memory than you currently have free, an older app is silently closed. Most WM phones also let you easily see a list of which apps are running and choose to switch to them or stop them, similar to a Blackberry.

Apple: Again, they could choose to simply ignore the whole thing and doggedly stick with their tried-and-true single-user-app paradigm. If they were going to implement multitasking, you'd think the iPad would've been their showcase.

We don't expect our TV to multitask, and we are not meant to expect our iPhone to multitask.

Oh, I think it's quite the opposite: people _expect_ things to do all they want. For example, my wife can't understand why our DVR can only record two shows at once. To her, it should multitask as many as we want. (Of course, she doesn't use that word.) :)

Regards.
 
Some empirical evidence, and some thoughts:


Oh, I think it's quite the opposite: people _expect_ things to do all they want. For example, my wife can't understand why our DVR can only record two shows at once. To her, it should multitask as many as we want. (Of course, she doesn't use that word.) :)

Regards.

that has nothing to do with multi-tasking though, it has to do with the tuner on the DVR. the DVR itself can handle more than 2 shows, the limiting factor is the tuner
 
that has nothing to do with multi-tasking though, it has to do with the tuner on the DVR. the DVR itself can handle more than 2 shows, the limiting factor is the tuner

Of course, but the point is whenever I say that (fill in a gizmo name) can't do any more things at once, she's all "Well, why not?"

The opposite also happens of course. I go crazy when she hits "Print" and then stops doing anything at all until all jillion pages are printed. Then I'm the one going, "Hey you can do something else now, you know!"

:rolleyes:
 
Oh, I think it's quite the opposite: people _expect_ things to do all they want. For example, my wife can't understand why our DVR can only record two shows at once. To her, it should multitask as many as we want. (Of course, she doesn't use that word.) :)

I'd be willing to bet that the vast majority of iPhone users would never even notice that their phone couldn't run more than one app at once if someone didn't tell them.
 
Opponents of multi-tasking (running multiple apps simultaneously, to be specific) apologize for the lack of the feature by arguing that it isn't necessary.

They will first say that fast application load times combined with apps saving their state accomplish the same thing as multi-tasking. Secondly, they will challenge anyone to come up with a scenario as to why it's needed - excepting running Pandora in the background - and shoot down your reply.

To the first point, I reply:

1. Apps saving their state is a behavior that mimics what you would experience with actual multi-tasking. It was a compromise due to limitations of the hardware, but that is no longer relevant with the 3GS. With multi-tasking, apps would behave the same way that they do now while adding more flexibility.​

2. Not every app saves its state when closed. This is annoying when you switch to another app and must navigate back to where you were when re-launching the app. On the other hand, some apps work best when they always start at the same screen, such as the Settings app. I don't want to have to navigate backwards every time I launch the app because I previously quit in one of the sub menus. There is more flexibility with multi-tasking because there is a distinction between switching apps and outright closing them.​

3. Multi-tasking is about more than apps saving their state. It is about keeping context and preserving train-of-thought. Say a third-party app opens up a link in Safari. After you close the browser, you aren't returned to the app - you are returned to the home screen. Multi-tasking allows you to pause your workflow in one app while you explore a tangent in another. When you switch back to the app, you can resume your thought process. Re-launching apps from the home screen is not as nice beucase it interrupts our natural thought process.​

To the second point, that's what this thread is for. Post your real-life experiences of when multi-tasking would have been handy. For example:

I recently restored my iPhone as a new phone. I was setting up options to my liking in the Settings app when I get to mail accounts. I remembered that Gmail recommends setting up Gmail on the iPhone by choosing "Other..." as opposed to the built-in option so it syncs with the web app as designed. I open Safari and look up how to set up Gmail on the iPhone.

Now that I have the instructions ready, I go into settings and start to set up my account. After a couple pages, I switch... err, wrong word. I quit and go to Safari to review the next few steps. I re-launch settings to find myself back at the main menu. All the information I have already entered has been lost!

What am I supposed to do, memorize every setting so I can enter it all in one shot? If there was multi-tasking, I could easily switch back and forth between both applications. Instead, I had to open Settings > Mail, Contacts, Calenders > Mail Account (scroll down) > Advanced two or three times to make sure all the local settings and server ports were correct.



The real question is the level of importance for the individual user.


My main reason for purchasing of the 3GS was it's reliability, speed and overall smoothness. Phone, Email, SMS, Data/Web and GPS is what's most important for me. Sure my previous smartphones(mostly WM) were completely unrestricted and functional, but it seemed like it came at a cost of good reliability. I knew pretty much what I was jumping into with the iPhone.

Now I got to admit, ever since I jailbroke I've been spoiled and there's basically nothing that a jailbroken iPhone can't do. But whether jaikbroken or not, I'll stick with the iPhone cause it's proven to me to be the most solid device yet. It's up to the users themselves to decided if a non-jailbroken iPhone is worth the small sacrifice. So far Millions seem to think it is.

The same way people say Android is still a developing OS, I think the same applies to the iPhone OS. Sure iPhone OS has been out longer, but not by much and has only been on one phone. That being said, the next iPhone is more than likely to have mulitasking.
 
I'd be willing to bet that the vast majority of iPhone users would never even notice that their phone couldn't run more than one app at once if someone didn't tell them.

I'm sorry but it's amazing how some proponents of this think people are unbelieveably stupid. Chances are most people had a computer before the iPhone and chances are they opened more than one app at a time. People do have the ability to reason and understand the consequences of their actions. They can walk and chew gum at the same time.

There is simply no excuse for there to be no multitasking on 3rd generation iPhones and touches. Multitasking jailbreak apps have shown that it is possible with minimal slowdown until you start to have 10 apps running in the background. Battery life is the same as any other smartphone.

The argument for making a special case for Pandora is wrong. There are over 130,000 apps in the App Store. I'm sure there are some apps that people want to run that aren't related to Internet radio.
 
With an unknown amount of background processing, your chosen app might work fine, it might suck, who knows? When we start a new application, there is a 1 in 5 chance that everything will feel broken. And if it starts behaving badly, the poor user has the task of cleaning-up and trying to find the problem.

That's not acceptable in a mobile device. It's especially bad in a phone.

1 and 5 chance? Where did you get that statistic from?

The vast majority of apps use virtually no processing power while they are idle. To illustrate, look at this screenshot for the System Activity Monitor app.

CPU.png

With all the system processes, Safari in memory, the iPod playing in the background, and running the system app itself, the processor is 93% idle. Three apps put a combined 4% load on the processor. The only limitation is having enough available memory to load additional apps.

So, while the idea of a user having to monitor and troubleshoot their device isn't ideal, it's far from the truth. The hardware is quite capable of handling multi-tasking just fine. I also really think that the average user is capable enough to understand multi-tasking on the iPhone.



And now, for another example of when multi-tasking would have made using the iPhone just that much easier and more enjoyable.

Last I mentioned I had restored my phone. I reinstalled all of my applications, which includes SplashID - an e-wallet/database/web login app. Splash ID allows you to customize the icons for each record by importing pictures. After I imported all my records, I set about getting images for all the icons.

The process involved switching back and forth between SplashID, Safari, and Pastebot (to crop images). It worked fine enough, with a few hiccups. First of all, always going back to the home screen was disorienting. After launching and closing each app so many times, sometimes I would pause at the home screen and have to think about which app I needed to re-launch. When SplashID launches, it always starts at a list of all your records. It's sensible enough, but annoying when in the middle of editing a record and having to close the app to open the browser. Once again, having been in and out of so many records, it was easy to lose track of which one I was editing.

Nothing I did was impossible or significantly slower without multi-tasking. It just wasn't as smooth as it could have been with multi-tasking which would preserve my workflow and keep context. For example, there were a few times when I would choose an image to import (a six-tap process within the app), only to realize I hadn't downloaded one yet. With multi-tasking, I would have been able to switch out of the app right there, putting that train-of-thought on hold. I could go to Safari and download an image. Once I close Safari, SplashID ready to pick up where I left it. After the image is imported I can easily advance to the next record so I don't lose track of where I am at. No interruption in the workflow.
 
The process involved switching back and forth between SplashID, Safari, and Pastebot (to crop images). It worked fine enough, with a few hiccups. First of all, always going back to the home screen was disorienting. After launching and closing each app so many times, sometimes I would pause at the home screen and have to think about which app I needed to re-launch. When SplashID launches, it always starts at a list of all your records. It's sensible enough, but annoying when in the middle of editing a record and having to close the app to open the browser. Once again, having been in and out of so many records, it was easy to lose track of which one I was editing.

Nothing I did was impossible or significantly slower without multi-tasking. It just wasn't as smooth as it could have been with multi-tasking which would preserve my workflow and keep context.

It is no surprise that with a hand-picked collection of good-citizen applications your experience will be good.

We already know that to be the case.

But with app-store applications there is simply no guarantee that background apps will be good citizens. Which is why Apple-created applications do run in background while app-store applications are prevented from doing so.

I am strongly arguing that Apple *should* include a mechanism which allow the switching of foreground apps while preserving memory state and context. It think that would improve the usability of the device.

But I think this can be delivered without allowing apps to run in background.
Allowing apps to drain resources when backgrounded has the potential to eat batteries, confuse users and delivers very little benefit.


C.
 
I'd just like to say something on BlackBerry's multi-tasking.

People are so brainwashed these days thinking that Blackberry does everything so good. Well it doesn't :confused:

Yes multi-tasking works but damn it slows down the phone and KILLS the battery. I'm not joking... I had a fresh 9700 and if I was going between FB and BBM, it would lag like crazy. My iPhone has never lagged so this became very frustrating.

So let Apple take their time with this feature and perfect it... let them do a better job than RIM did.
 
1. Apps saving their state is a behavior that mimics what you would experience with actual multi-tasking. ...​

2. Not every app saves its state when closed. This is annoying when you switch to another app and must navigate back to where you were when re-launching the app. ...​
...
To the second point, that's what this thread is for. Post your real-life experiences of when multi-tasking would have been handy. ...

Multi-tasking is one possible solution for the particular problem you experienced. Another solution is that the app could have saved its state so it could be resumed right where you left off. In other words, the problematic app is not a well-written state-saving app.

If the app had been a well-written state-saving app, you would not have experienced the problem that caused you to make the initial post. Perhaps you would have found another app to use as an example, so the post would have been written anyway. Or perhaps you would have been satisfied with the experience of the app, so no complaint would ever have occurred, and this entire thread would not exist.

If the proposal is to allow multi-tasking as a way to avoid having to write well-written state-saving apps, then maybe that's just a different can of worms.

If some developers don't write apps that play well with saving state, due to ignorance, lack of testing, or whatever, then would multi-tasking necessarily fix that? You'd just be trading that group of developers for another group who can't write proper multi-tasking apps, due to ignorance, lack of testing, or whatever.

What are the consequences for the user of a poorly written state-saving app? They have to write things down, use copy and paste, or start long debates on the merits of multi-tasking. Best case, they file a bug report against the app, which the developer then fixes, or the user stops using the app.

What are the consequences for the user of a poorly written multi-tasking app? (These are already outlined by earlier comments.)
 
Multi-tasking is one possible solution for the particular problem you experienced. Another solution is that the app could have saved its state so it could be resumed right where you left off. In other words, the problematic app is not a well-written state-saving app.

You are aware the example I talked about revolved around Apple's native "Settings" app, right? Did you read the entire post?

First of all, there are no third-party alternatives for this app.

Second of all, the Settings app actually works best when it doesn't save state by opening to the main menu every time you launch it. The problem is in some specific instances (such as entering in information for email accounts) you do want it to save state. The app can't guess what the user wants, however. It either always saves state or it never does. Multi-tasking is more flexible because an app can always launch to the same screen when launched while it can still save state when switching to another app.
 
It is no surprise that with a hand-picked collection of good-citizen applications your experience will be good.

We already know that to be the case.

But with app-store applications there is simply no guarantee that background apps will be good citizens. Which is why Apple-created applications do run in background while app-store applications are prevented from doing so.

I am strongly arguing that Apple *should* include a mechanism which allow the switching of foreground apps while preserving memory state and context. It think that would improve the usability of the device.

But I think this can be delivered without allowing apps to run in background.
Allowing apps to drain resources when backgrounded has the potential to eat batteries, confuse users and delivers very little benefit.


C.

Apple constantly tests these apps and can easily tell a dev to reduce memory usage. The reject apps for the most inane reasons and I'm pretty sure they do this already.

Do you want to know how the iPhone runs multitasking? Here:

From the site using the Jailbreak solution Multifl0w:

Interface / Usage
Swiping to scroll among running apps is very smooth

Performance
I started out running 6-7 apps for a while – things like Evernote, Things, Tweetie, Newsstand, Mail, 1Password, and Analytics App. Zero noticeable lag, slowdown, or performance hit.

For most of the time I’ve been testing, I’ve been running 10 to 12 apps at a time – with most of the above apps in the mix, plus a couple of games (Paper Toss and Scramble 2), the Kindle app, RSS Player, BuddyFeed, and Safari with 4 pages open. And I still saw no slowness or lag, though at the 12 apps mark I did get a few crashes from the Scramble app. The rest of the apps have just kept sailing along – and are still doing so as I write.

Free memory got down as low as around 4MB at one point, but mostly stayed at just over 10MB. Even with these low levels of available RAM, the system has stayed solid and amazingly also just as speedy as ever. Whether scrolling in the Multifl0w view, or in the speed of the actual app switches, or working within apps, it’s just about as fast as ever.

Battery Life
In terms of effect on battery life, I’m sure there will be some with all the backgrounding this enables, but haven’t been using the app long enough to say much on this. I can say that in the first hour and ten minutes of heavy usage, with 10-12 apps running most of the time, my battery percentage dropped by 15%. That doesn’t strike me as outrageous – but I’ll need to use this a lot more to see for sure.
------------

This device is more than capable of handling it. Apple could just allow 5 apps to run in the background at a time and there would be a minimal efeect on battery life or slowdown. The next-gen iPhone will more than likely have 1.0 Ghz dual core processor with 512MB RAM similar to the Nexus One and Pre which would allow even more apps to run in the background. There is simply no excuse to not have background processes.
 
The issue of muti tasking would be a non-issue for me if I could do one thing: reply to/send a text while in an app. I consider myself to be a moderate texter....and when I receive a text while in another app I'd really like to be able to respond to it without quitting the app I'm currently in.

Now, multi tasking doesn't have to be the answer. I'd be perfectly happy with a solution similar to the way you can change a song without going to the music app. When you receive a text, it pops up on the screen. There should be an option to reply to the text right there....just press the reply button and up pops the keyboard and away you go. Now I don't know how heavy an app Messages is, but I wouldn't think this would be too resource consuming to do.

That being said I can't say I'd be unhappy if they did implement some sort of multi tasking. I'd probably use it every day. But as of now....I don't know what I'm missing, so I'm not missing it.
 
Apple constantly tests these apps and can easily tell a dev to reduce memory usage. The reject apps for the most inane reasons and I'm pretty sure they do this already.
I thought about this. Apple could attempt to vet apps for "good neighbor" behavior. But this sort of testing is expensive. If you submit a videogame to Microsoft - you have to pay for the TRC testing. And if you your game is rejected, you get to pay all over again.

This device is more than capable of handling it. Apple could just allow 5 apps to run in the background at a time and there would be a minimal efeect on battery life or slowdown.

There is simply no excuse to not have background processes.

This is where we differ - but only slightly.

The iPhone is easily capable of allowing 5 or more apps to remain fully resident. The user could then switch between them instantly with no loss of context and this would be of real benefit to users. If the system runs out of memory - it could ask the oldest app to quit - and that app would then save it's state conventionally.

But I am not seeing a strong case for allowing apps to actually RUN in the background. The only example uses are messaging and audio streaming.

And I think there are technical solutions for both of these functions which don't jeopordise foreground performance.

C.
 
I thought about this. Apple could attempt to vet apps for "good neighbor" behavior. But this sort of testing is expensive. If you submit a videogame to Microsoft - you have to pay for the TRC testing. And if you your game is rejected, you get to pay all over again.

I'm not sure but I would think that Apple already tests for memory usage before approval and I thought the SDK already, to some degree, helps in this process.



This is where we differ - but only slightly.

The iPhone is easily capable of allowing 5 or more apps to remain fully resident. The user could then switch between them instantly with no loss of context and this would be of real benefit to users. If the system runs out of memory - it could ask the oldest app to quit - and that app would then save it's state conventionally.

But I am not seeing a strong case for allowing apps to actually RUN in the background. The only example uses are messaging and audio streaming.

And I think there are technical solutions for both of these functions which don't jeopordise foreground performance.

C.

I can live with the idea mentioned in your first paragraph. Maybe they can have an option in settings that has multitasking off by default for those who are "technologically ignorant".

The problem in only allowing messaging & audio streaming is that every person has a different set of apps that they would want to run though the main example has been internet radio. One person may want to run a dyno app along with Pandora from their car. A runner may want to use an app like Runkeeper along with Last.fm while jogging.

They are many reasonable usage scenarios for the "common person" and there are 130,000 apps to choose from. The iPhone has to have true multitasking.

Apple has never even cited memory usage (because it's not really an issue with the 3GS) but rather battery life which by those tests I mentioned earlier are similar to every other smartphone. They are now developing their own chips (probably for better battery life) and there is no excuse, at the very least in the upcoming iPhone, to no have multitasking.
 
The problem in only allowing messaging & audio streaming is that every person has a different set of apps that they would want to run though the main example has been internet radio. One person may want to run a dyno app along with Pandora from their car. A runner may want to use an app like Runkeeper along with Last.fm while jogging.

Each of the examples you cited could be accomplished by enabling background streaming only. Stream last.fm or Pandora in the background and run the other app you need in the foreground. You can't have more than one foreground app up at a time anyway, and I can't think of a single app that needs to be run in the background that's not either streaming audio or messaging.* If you can think of one, I'd be happy to hear it.

* The possible exception are things like scrobbling or Google Latitude services, but such things would be such a drain on the battery running in the background that I don't think they will ever be allowed as third-party apps.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.