Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Plorkyeran
Mar 22, 2007

To Escape The Shackles Of The Old Forums, We Must Reject The Tribal Negativity He Endorsed

Toady posted:

LLDB has supported dot notation for at least two years.
Which would be wonderful if it actually worked consistently.

Adbot
ADBOT LOVES YOU

Simulated
Sep 28, 2001
Lowtax giveth, and Lowtax taketh away.
College Slice

Toady posted:

LLDB has supported dot notation for at least two years.

The compiler and LLDB apparently have different definitions of "property".

Doc Block
Apr 15, 2003
Fun Shoe
Dot notation != Property

Toady
Jan 12, 2009

Plorkyeran posted:

Which would be wonderful if it actually worked consistently.

What issue are you having?

Doctor w-rw-rw-
Jun 24, 2008

Ender.uNF posted:

The compiler and LLDB apparently have different definitions of "property".

Property means only one thing. You can introspect the type information out of a property if it has been defined as such, but using dot notation doesn't make something into a property.

Can you give a specific example of how the definitions don't align?

shodanjr_gr
Nov 20, 2007

lord funk posted:

The only part that bothers me is how they touted Quicklook™ like viewing of objects in Xcode 5 as an amazing new feature. So far all I've been able to use it for is viewing colors, which is great, but why didn't they take the opportunity to extend it to other standard objects?

I've used it with UIImages and GLKit textures if I recall correctly. And it will dump various collections and stuff to the log window (or was that there before?).

My main peeve with it is that it's a bit slow to react.

ManicJason
Oct 27, 2003

He doesn't really stop the puck, but he scares the hell out of the other team.
My ridiculous segue problem was a total face palm on my part. I was spewing nonsense into a fresh project trying to get a prototype going, and I made a string property called "class" in one of my custom view controllers. :saddowns: It's interesting that that doesn't generate any complaints at compile but obviously breaks the hell out of things.


I'm having a weird Core Audio problem, and I'm wondering if anyone has some insight. I have an object that owns an audio unit. If I stop the audio unit and then deallocate the object, the C callback gets called at least once more on the audio thread and causes a crash when it retains the dying object. My horrible solution is to send a meaningless message to the object in a dispatch_after block, effectively delaying its deallocation for a few milliseconds in order to give the audio code some time to spin down. That seems very bad, but it works. Anything with consolidating threads or locking seems even worse due to performance problems.

lord funk
Feb 16, 2004

ManicJason posted:

I'm having a weird Core Audio problem, and I'm wondering if anyone has some insight.
How are you disposing of the audio unit? With these?

code:
AudioUnitUninitialize(audioUnit_);
AudioComponentInstanceDispose(audioUnit_);
edit: I'm assuming you're stopping with:

code:
AudioOutputUnitStop(audioUnit_)

lord funk fucked around with this message at 01:55 on Dec 31, 2013

Simulated
Sep 28, 2001
Lowtax giveth, and Lowtax taketh away.
College Slice

Doctor w-rw-rw- posted:

Property means only one thing. You can introspect the type information out of a property if it has been defined as such, but using dot notation doesn't make something into a property.

Can you give a specific example of how the definitions don't align?

I'm being loose with definitions here. LLDB doesn't allow dot syntax in all the same places as the compiler. I know dot syntax isn't necessarily synonymous with properties, but it seems a distinction without a difference in practice.

Doctor w-rw-rw-
Jun 24, 2008

Ender.uNF posted:

I'm being loose with definitions here. LLDB doesn't allow dot syntax in all the same places as the compiler. I know dot syntax isn't necessarily synonymous with properties, but it seems a distinction without a difference in practice.

Having just written some library functions to do runtime introspection into properties, properties are most certainly separate: https://developer.apple.com/library/mac/documentation/cocoa/reference/objcruntimeref/Reference/reference.html

I suppose you could make the debugger a bit more intelligent to just aggregate properties and method invocation when using dot syntax inappropriately, but...

ultramiraculous
Nov 12, 2003

"No..."
Grimey Drawer

Doctor w-rw-rw- posted:

Having just written some library functions to do runtime introspection into properties, properties are most certainly separate: https://developer.apple.com/library/mac/documentation/cocoa/reference/objcruntimeref/Reference/reference.html

I suppose you could make the debugger a bit more intelligent to just aggregate properties and method invocation when using dot syntax inappropriately, but...

Ender.uNF posted:

I'm being loose with definitions here. LLDB doesn't allow dot syntax in all the same places as the compiler. I know dot syntax isn't necessarily synonymous with properties, but it seems a distinction without a difference in practice.

It really seems like Xcode's flavor of LLDB should be smart enough to try the struct and property syntax before failing out.

Hughlander
May 11, 2005

Ender.uNF posted:

I'm being loose with definitions here. LLDB doesn't allow dot syntax in all the same places as the compiler. I know dot syntax isn't necessarily synonymous with properties, but it seems a distinction without a difference in practice.

Oh really? :allears:

code:
    NSMutableDictionary* toReturn = NSMutableDictionary.dictionary;
From a codebase I had to deal with recently.

ManicJason
Oct 27, 2003

He doesn't really stop the puck, but he scares the hell out of the other team.

lord funk posted:

How are you disposing of the audio unit? With these?

code:
AudioUnitUninitialize(audioUnit_);
AudioComponentInstanceDispose(audioUnit_);
edit: I'm assuming you're stopping with:

code:
AudioOutputUnitStop(audioUnit_)

I'm doing AudioOutputUnitStop, but I'm not actually disposing of the audio unit because I need to be able to restart it from the background later. As far as I know, you cannot initialize a new audio unit from the background.

The truth is probably that my audio unit's callback should go through a class that continues to live through where I'm doing this stopping/starting, avoiding these lifetime shenanigans entirely.

Doc Block
Apr 15, 2003
Fun Shoe

Hughlander posted:

Oh really? :allears:

code:
    NSMutableDictionary* toReturn = NSMutableDictionary.dictionary;
From a codebase I had to deal with recently.

People who do this deserve to have their fingers broken.

Hughlander
May 11, 2005

Doc Block posted:

People who do this deserve to have their fingers broken.

"But the coding standard says prefer bracket notation when it's in the form of a verb/sentence! That's a noun!"

Simulated
Sep 28, 2001
Lowtax giveth, and Lowtax taketh away.
College Slice

Hughlander posted:

Oh really? :allears:

code:
    NSMutableDictionary* toReturn = NSMutableDictionary.dictionary;
From a codebase I had to deal with recently.

Hey, let's be reasonable people here.

duck monster
Dec 15, 2004

Apple are loving cunts sometimes.

One of the apps I did for a client had a little embedded UIWebView that linked to an "About" page hosted on the clients site.

It mentioned the word "Android" in the text about the clients company. Just says the words.

Thus apple flunked the app from the app strore.

Anticompetitive loving shitbags.

Doc Block
Apr 15, 2003
Fun Shoe
It spells it right out in the rules that you can't mention Android or any other competitors.

First rule of advertising is that you never mention your competitors, and failing that you don't mention them or their products by name.

Volmarias
Dec 31, 2002

EMAIL... THE INTERNET... SEARCH ENGINES...

duck monster posted:

Apple are loving cunts sometimes.

One of the apps I did for a client had a little embedded UIWebView that linked to an "About" page hosted on the clients site.

It mentioned the word "Android" in the text about the clients company. Just says the words.

Thus apple flunked the app from the app strore.

Anticompetitive loving shitbags.

Have it link to a page that doesn't mention Android. After it ships, have them make that page into a 302 to the one that does.

Toady
Jan 12, 2009

duck monster posted:

Anticompetitive loving shitbags.

Actually, it's very competitive of them.

Doctor w-rw-rw-
Jun 24, 2008

duck monster posted:

Anticompetitive loving shitbags.

Yeah, because they are the only major mobile platform, and Android is something that runs on it that they are unfairly suppressing with their market position.

Nope.

...consider reading up on some history and learn what Microsoft did to get slammed with lawsuits.

Apple is iron-fisted, yes. Anticompetitive "shitbags", no.

Hughlander
May 11, 2005

Doctor w-rw-rw- posted:

...consider reading up on some history and learn what Microsoft did to get slammed with lawsuits.

Apple is iron-fisted, yes. Anticompetitive "shitbags", no.

That's an odd position to take. Isn't still a policy that you can't have an app that duplicates the functionality of a system app? Not just offer a choice of do you want 3rd party program or MSFT program like the EU wanted, but "No, we won't sign this and offer it on the App Store at all."

carry on then
Jul 10, 2010

by VideoGames

(and can't post for 10 years!)

I think it's only forbidden if it exactly duplicates the functionality of a built in app without adding any value. Otherwise Fantastical, or Mailbox, or any of the tons of notes apps wouldn't have been approved.

Doctor w-rw-rw-
Jun 24, 2008

Hughlander posted:

That's an odd position to take. Isn't still a policy that you can't have an app that duplicates the functionality of a system app? Not just offer a choice of do you want 3rd party program or MSFT program like the EU wanted, but "No, we won't sign this and offer it on the App Store at all."

Controlling quality is their prerogative. Not one I am totally on board with, but I was also a longtime Android developer and the difference in app quality is palpable, and that's not entirely due to the fact that Android is a horrible SDK that just happens to be less horrible than most SDKs.

The fact is that they're not leveraging iOS apps themselves to shut down a threat to iOS (not that they aren't trying in other ways...). They otherwise have the right to exert control over their own platform, I think.

Hughlander
May 11, 2005

Doctor w-rw-rw- posted:

Controlling quality is their prerogative. Not one I am totally on board with, but I was also a longtime Android developer and the difference in app quality is palpable, and that's not entirely due to the fact that Android is a horrible SDK that just happens to be less horrible than most SDKs.

The fact is that they're not leveraging iOS apps themselves to shut down a threat to iOS (not that they aren't trying in other ways...). They otherwise have the right to exert control over their own platform, I think.

I'm not talking about quality I'm talking about competition. When they reject a class of App outright because they plan on doing it or have already done so. Are you arguing that Podcaster was low in quality? Also it's ok for Apple to control their platform, but MSFT didn't have the right to control theirs?

kitten smoothie
Dec 29, 2001

Hughlander posted:

I'm not talking about quality I'm talking about competition. When they reject a class of App outright because they plan on doing it or have already done so. Are you arguing that Podcaster was low in quality? Also it's ok for Apple to control their platform, but MSFT didn't have the right to control theirs?

To be fair that Podcaster rejection was from September 2008, a time when the App Store had only been a thing for just two months. I think we could all agree that was a time when they were still feeling this thing out and were capriciously rejecting poo poo. The App Store Review Guideline document (to which they will now refer, by bullet point, if you get a rejection) was still two years away.

There's now plenty of podcast, browser, and email clients up on the store. I don't think any of these would've made it past the review portion back in 2008.

kitten smoothie fucked around with this message at 05:09 on Jan 2, 2014

wakachamo
Dec 3, 2013

lord funk posted:

The only part that bothers me is how they touted Quicklook™ like viewing of objects in Xcode 5 as an amazing new feature. So far all I've been able to use it for is viewing colors, which is great, but why didn't they take the opportunity to extend it to other standard objects?

I'm not sure how much of pre-release software we're supposed to talk about over here for obvious reasons but all I'm gonna say is you should really check out if they have any beta software available on the Dev Center.

Just sayin' is all.

Doctor w-rw-rw-
Jun 24, 2008

Hughlander posted:

I'm not talking about quality I'm talking about competition. When they reject a class of App outright because they plan on doing it or have already done so. Are you arguing that Podcaster was low in quality? Also it's ok for Apple to control their platform, but MSFT didn't have the right to control theirs?

Microsoft, which was behind the curve on web browsers, used their dominant position as the operating system on a huge majority of systems and IIRC threatened retailers with not licensing them Windows if they installed Netscape. This was before the internet was so ubiquitous as to be considered an integrated part of a system, and instead was accessed through separate *products* such as IE and Netscape.

Microsoft used their position in the market to threaten distribution of a competing product using methods outside the scope of their direct control. That is, anyone in control of the machine had the choice to install apps from anywhere, and Microsoft used dirty tactics to penalize that choice and thus the competitiveness of other products' distribution by interfering with that.

Apple has had control of the sole distribution channel on their own platform from the start, and it can be treated as a part of their own product. The marketplace is not and never was open, so it's within their right to dictate the terms. They get to determine what apps will make people enjoy iOS more and which ones will infringe on Apple's plans to do it themselves. Microsoft cheated on an open market.

That's the distinction I draw.

Doc Block
Apr 15, 2003
Fun Shoe
Also, Apple doesn't have a mobile phone/mobile OS monopoly.

Doctor w-rw-rw-
Jun 24, 2008

Doc Block posted:

Also, Apple doesn't have a mobile phone/mobile OS monopoly.

Yes, but it's important when talking about anti-competitiveness to be :spergin: about the scope of the monopoly and what amount of control is justified and why. From one point of view, Apple does have a monopoly over iOS-compatible-app distribution on its own platform. From another, Apple doesn't have a monopoly over app distribution as a whole because Android exists.

Microsoft wasn't anti-competitive because they were so dominant, they were anti-competitive because of their abuse of their market share. Since Apple's app store has a 100% market share *on iOS devices* (of course), it's important to be clear that the total control means that the right to offer products on an open marketplace has never existed at all for the iOS platform, so we app developers have opted into Apple's control.

duck monster
Dec 15, 2004

Toady posted:

Actually, it's very competitive of them.

Yes clearly forbiding other companies from mentioning android on their websites is fostering competition in the market. But thats OK theres no leveraging going on here, I'll just go to another app store for ios apps oh wait.

Just because they have the right to behave like this, it doesn't even remotely make it ethical. I can walk up and down my street calling every person I meet a oval office, and that right is protected by law, it doesn't make it the right thing to do.

Pretty much every computerized device I own, laptop, desktop, phone, pad, whatever is an apple product, but I swear to god I refuse to bow to the stockholm syndrome so many apple devs have where people rush to the defense of this companys consitent insistence of putting its own commercial priorities over that of the developers who are almost the sole reason the iphone revolution happened at all.

edit: Oh I suppose I probably am grumpy because loving app update just nuked my python based command line build system AGAIN. But still. Angerbeams.

duck monster fucked around with this message at 16:19 on Jan 2, 2014

Doctor w-rw-rw-
Jun 24, 2008

duck monster posted:

Yes clearly forbiding other companies from mentioning android on their websites is fostering competition in the market. But thats OK theres no leveraging going on here, I'll just go to another app store for ios apps oh wait.

Just because they have the right to behave like this, it doesn't even remotely make it ethical. I can walk up and down my street calling every person I meet a oval office, and that right is protected by law, it doesn't make it the right thing to do.

You're shifting the goalposts. I didn't comment on whether I think it's ethical. It's just not illegal or anti-competitive. I'm not defending Apple so much as I am being obsessively precise.

ManicJason
Oct 27, 2003

He doesn't really stop the puck, but he scares the hell out of the other team.
Can't we all just hate Apple together? When did iOS developers stop hating Apple?

haveblue
Aug 15, 2005



Toilet Rascal

ManicJason posted:

Can't we all just hate Apple together? When did iOS developers stop hating Apple?

When the money started coming in.

Doctor w-rw-rw-
Jun 24, 2008

ManicJason posted:

Can't we all just hate Apple together? When did iOS developers stop hating Apple?
For me, when I was forced onto Android and was subjected to loads and loads of hypocrisy on how Android was more open. I basically called it ~3-4 years ago that Google was eventually going to lock in the bigger value-add Android apps to their app store, and I was right.

Unlike Android, Apple didn't claim to not be ruthless, it didn't pretend it was superior because of a disingenuous assertion of openness, and the parameters of the poo poo it does to developers is generally pretty consistent and well-defined. It's trustworthy in that sense.

In other, actual programming news, I'm writing an animation framework that can animate arbitrary Objective-C properties, and am working on getting it a) more performant and b) supporting spring-based animations.

Anyone care to help me out?

Glimm
Jul 27, 2005

Time is only gonna pass you by

Doctor w-rw-rw- posted:

Unlike Android, Apple didn't claim to not be ruthless, it didn't pretend it was superior because of a disingenuous assertion of openness

I dunno, it's pretty helpful in Android to just pull down the ListView etc. source and see how things are done sometimes. The OS itself is wide open.

Yeah, it's lovely Apple wont let the about screen mention Android - I agree with the earlier poster suggesting just changing the text after the app is approved.

Toady
Jan 12, 2009

Hughlander posted:

I'm not talking about quality I'm talking about competition. When they reject a class of App outright because they plan on doing it or have already done so. Are you arguing that Podcaster was low in quality? Also it's ok for Apple to control their platform, but MSFT didn't have the right to control theirs?

Microsoft (or MSFT if you're a blogger) was doing things like threatening to revoke Windows licenses from OEMs if they shipped certain alternatives. Apple's policy of not advertising Android hardly prevents Android from reaching customers. Pretty much everyone acknowledges that Apple are assholes, but that's long been common knowledge, and you accept the possibility of getting Sherlocked in exchange for the privilege of developing for a platform whose quality you believe in (:gruber:). Or at least, that's how it used to be before mobile developers migrated from other platforms because iOS makes more money.

duck monster posted:

Yes clearly forbiding other companies from mentioning android on their websites is fostering competition in the market. But thats OK theres no leveraging going on here, I'll just go to another app store for ios apps oh wait.

As far as I know, companies aren't forbidden from mentioning Android on their websites, but weren't you displaying it in the app itself?

Doctor w-rw-rw-
Jun 24, 2008

Glimm posted:

I dunno, it's pretty helpful in Android to just pull down the ListView etc. source and see how things are done sometimes. The OS itself is wide open.

Yeah, it's lovely Apple wont let the about screen mention Android - I agree with the earlier poster suggesting just changing the text after the app is approved.

They also develop it in quietly or in secret before dumping the code publicly, so there's nothing open about the development. Further, the source is available, but Google has let major bugs such as not handling HTTP Basic auth go unfixed for years despite it being fixed in forks, and the officially-distributed Android source (last I checked, and for a long time) doesn't even compile; you need to patch it before you can build it yourself. Hence disingenous, but not false.

Volmarias
Dec 31, 2002

EMAIL... THE INTERNET... SEARCH ENGINES...

Doctor w-rw-rw- posted:

For me, when I was forced onto Android and was subjected to loads and loads of hypocrisy on how Android was more open. I basically called it ~3-4 years ago that Google was eventually going to lock in the bigger value-add Android apps to their app store, and I was right.

Unlike Android, Apple didn't claim to not be ruthless, it didn't pretend it was superior because of a disingenuous assertion of openness, and the parameters of the poo poo it does to developers is generally pretty consistent and well-defined. It's trustworthy in that sense.

To be fair, Play and the rest of the Google apps are mostly used as the incentive for the carriers and manufactures to not poo poo all over the devices and break compatibility. Apple has the luxury of being their own manufacturer and mostly being able to tell carriers to gently caress off, which isn't to be discounted lightly.

This is why the Amazon app store is a little concerning for me; I'm waiting for a carrier to ink a deal with Amazon where the device comes with Amazon's appstore instead of play, it's locked down into a dumb phone with pay subscriptions for things you'd get free (Vz Backup Assistant, Vz Navigator, etc), and a marketing blitz makes it a success.

Adbot
ADBOT LOVES YOU

pokeyman
Nov 26, 2006

That elephant ate my entire platoon.

duck monster posted:

Pretty much every computerized device I own, laptop, desktop, phone, pad, whatever is an apple product, but I swear to god I refuse to bow to the stockholm syndrome so many apple devs have where people rush to the defense of this companys consitent insistence of putting its own commercial priorities over that of the developers who are almost the sole reason the iphone revolution happened at all.

I forget who said it but they were right:

quote:

Apple's priorities:
1. Users.
2. Apple.
3. Developers.

I don't know if it's defensible, reasonable, ethical, logical, right, wrong, or how you would measure the company's behaviour on any of those criteria, but it all makes more sense when you remember that ordering of priorities. They're all necessary pieces, but the perceived needs of the former trump the perceived needs of the latter. (And we could quibble about the distance between the items on that list. 1 and 2 are pretty close, 2 and 3 maybe not so close.)

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply