Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Apple Developer Center still down (marco.org)
209 points by vinhnx on July 21, 2013 | hide | past | favorite | 194 comments


My money is personally on massive, unrecoverable data loss.

If you've ever poked around with the way that Apple's website works, you can see that the entire place is a huge mess. There's old servers running ancient (pre-2004) perl scripts alongside the brand new iCloud gear. I can't imagine how the authentication for AppleID is working as login details still work on the ancient pages (think pinstripes and glassy buttons). Depending what URL you hit, the webserver is using php3, php4, perl, python or maybe WebObjects (java).

At one point I wrote a scraper that was targeting one of their product pages, and kept getting random, unexplainable results. It turned out that one of their product areas was behind a round-robin load balancer, with three completely different apache versions on each server. The page was dying on one but not the other two. In the end I just had to repetitively scrape until I hit a good response.

Even the domain for the "maintenance" page for the developer section is telling. It's just a broken template system regurgitating a bit of the homepage.

http://devimages.apple.com/maintenance/

http://devimages.apple.com/

Truly a hacked together system. Some engineers at Apple must be having a truly awful weekend, no matter the cause and solution.


I work at an Apple Premium Reseller, and when we order stuff from Apple we use http://reseller.apple.com (which now seems to redirect to https://ecommerce.apple.com/) and all those systems feels hacked together just as you're saying.

The Reseller Store has been down the whole time the Developer Center has been down. Even more interesting perhaps, our company's "master apple id", which is used to place multi 100K USD orders from Apple, got some strange seemingly manual password reset from Apple about the same time as the Developer Portal went down.

Apple's hardware service portal (http://gsx.apple.com) has also been even more flakey this week than normal.

Something is broken over at Apple.


"Won't fix, as designed." B2B web apps have been hacky since time immemorial. Where I work, a different engineering team wrote a CMS in a bunch of Java with somehow Perl CGI to handle all of the little hacks that couldn't be put in to the main code base. I found this out by fixing a hack named emailservice_bkp_new2.cgi which was a hard coded rss parser. Our other client relations applications are even worse, often in IIS 6.0, and dating from 2003. Simply put, there isn't much "business reason" behind fixing something that isn't broken, but very shoddy.

The difference now is that "prosumer" application developers have enough economic weight to register as a force, but not enough to cause Apple to reconsider their entrenched developer relations.


Do you have access to the CRT? If yes, does that still work? It hinges on the same login infrastructure as reseller.apple.com AFAIK.

I have nothing to do with Apple anymore so I can't check it myself :)


Interesting; the http://devimages.apple.com/ URL seems to return the underlying contents of the file, bypassing the SSI (I'm so happy they use SSI... seriously: I love SSI ;P). You can then see the raw <!--#include virtual=""--> directives, and pull the individual parts. (It isn't quite then fair to say that it is a "broken bit of their template system"; it is more that it is a poor way to setup a static large-file caching endpoint, and may itself lead to a security vulnerability. To be clear: that's probably worse ;P.)


Careful. You might have committed a felony by accessing a page with SSIs. It was definitely not intended to be accessed under that URL by you ;)


That's no winking matter.


Ah, I didn't recognise Server Side Includes, I've never used them before.

There's a lot more weird around apple.com if you go looking. I'd love to hear the story behind their MX/SMTP hostnames (thousands of them) getting called "badger" and "msbadger".


Might I ask what vulnerabilities exist for SSI, and why you describe SSI as a "poor way to setup a static large-file caching endpoint"?

I haven't used SSI before, but after researching various technologies, it looks like a solution for my own caching use-case, and I am planning on implementing it. I realize that it's a rather old technology, but as long as there's nothing wrong with it, I think it could work for me.

Is there something wrong with it? The only thing that I have seen is that the "exec" command is dangerous, but NGINX doesn't seem to implement it.


I did not describe "SSI" as a "poor way to setup a static large-file caching endpoint"; that description was for the way they setup "devimages." to overlap with the content for "www.".

Let's imagine that the code in question was not SSI, but instead PHP. You might have this running behind a copy of Apache and mod_php. Your website includes both code and images.

This website runs like this, but maybe the way you configured Apache is too slow to handle downloading all the images: these large-file static assets need to be handled by a different system.

So, you install a copy of nginx and point it at the same folder. You give this copy of nginx a new hostname, such as "devimages.example.com" as opposed to the Apache "www.example.com".

Problem solved, right? No. Now if you go to http://devimages.example.com/index.php you get access to the source code to the website (which is generally considered a big security failure).

That seems to be what's happening here: the "devimages." hostname is configured to bypass the SSI parser, and you are getting to see how the page is composited. This could be a problem.

However, it also might not be a problem: it largely depends, which is why I was just idly speculating; it certainly feels wrong, though. As for SSI? I was serious: I love SSI, all my stuff uses it.


If you are now sampling this kind of technology, have a look at ESI (edge side includes), and have a look at varnish cache. You'll be pleasantly surprised.


I've spent more time using the developer resources recently, and I completely agree. Clicking one link will take you an entirely different feeling architecture, like parts have been built on top without thinking about what the impacts could be. It's probably been a house of cards for a long and it's now fallen down.


Maybe it's worse? Maybe it's related to an earlier incident?

From Feb this year:

"Earlier today it was reported that Apple’s computers had been compromised by a zero-day exploit in Java. Apple quickly released an update to patch the flaw for all Macs, but not before some of its own employees had been hacked.... A site called iPhoneDevSDK has been revealed as the means by which a dangerous exploit was injected via a Java plugin."

http://www.cultofmac.com/216618/this-iphone-developer-forum-...


Well if this is the case then there is some money to be made shorting the stock on Monday :-) I really like some of Apple's products (my Macbook pro is my favorite laptop of all time so far) but sometimes, like dealing with them as a guy who buys Macs for everyone who works for me, I think "Man they guys have a ways to go when it comes to this enterprise service stuff."

I hope that what ever it is, it doesn't put too big a crimp in them.


I don't believe they have massive, unrecoverable data loss. Think about that: If they are so retarded that they dont have backup then Apple is really doomed. Really. But I think they have good IT... I think they detected serious security breach (which might be related to some incompetence but security is very very hard).


I think so too. If you look back a couple of years, this kind of things (even if not as severe) happened several times. I actually blogged about it (when their DNS was messed up):

http://www.clingmarks.com/apple-please-be-serious-about-itc/... http://www.clingmarks.com/ios-vs-android-mobile-dev-platform...


Unrecoverable? I'd bet NSA has a complete backup ;-)


> My money is personally on massive, unrecoverable data loss.

Do we read this, you have an AAPL short order in tomorrow's market open?

I find no financial news on this.


I own no stock in any company. I have a reasonably pessimistic view based solely on the way this is being handled, and the way in which their web applications behave.


Through a combination of direct ownership and mutual funds, I own thousands of dollars of Apple stock, and would be materially harmed by a major drop in its price. I also own numerous Macs and iOS devices, and am indirectly harmed by Mac and iOS developers being unable to access code and information important to their work. The company I work for may also be harmed by this, as we engage in some iOS development (though I'm not directly involved in that these days).

I find the explanation of massive, unrecoverable data loss plausible, and your insinuation inane.


Could you imagine if the Linux Developer Center went down? It'd be nearly impossible to write Linux software, or download Linux development tools, or generate a Linux binary that a device was allowed to run. It'd be awful.


Real businesses are affected by this. Please keep your trolling elsewhere. I came to the comments looking for what people are doing, not for snarky and ill-informed comments.

> It'd be nearly impossible to write Linux software, or download Linux development tools, or generate a Linux binary that a device was allowed to run. It'd be awful.

You clearly don't understand how the Apple Dev center works.


The XCode IDE is downloaded from the Mac App store which is still running. Apps are submitted via iTunes Connect which is still running.


I managed to snag the iOS 7b3 SDK before it went down but not the documentation, unfortunately. Those downloads have been broken the whole time, so a download of Xcode is only as good as the documentation you still have.


This is more like if Ubuntu's package repository went down regarding accepting new packages for a few days.


If all the mirrors of ubuntu's repository went down simultaneously, I'd be more worried about the internet itself than installing some new software


You need the official repositories to install new software?


Dunno about Ubuntu, but Debian has dozens of "unofficial" mirrors, not to mention their main package server balances amongst a bunch of servers.


No, you can download a .deb file from somewhere else and install it manually, or even just a .tar.gz with the binaries, or (if the software is open source) even get the source! Alternatively, as I posted above, there are a load of mirrors (over 400 iirc) of the ubuntu software repository.


That's what I was getting at...


Ah, my mistake, hard to judge tone on the internet, etc, etc...


Nice attempt at snark, but something being fault-proof in this regard doesn't magically make it worthy in others.

Like desktop use, for one. People will not adopt Linux for their desktop/laptop even when offered for free. Where by people I mean more than 1% of them.


That is not totally true. The reason most people stay with Windows is because the hardware ships with it. In my experience Linux usage has about 50% retention rate among those I installed the OS for.

If you'd install OSX or Windows on a non techie who grew up using just Linux, I'd think the retention rates would be much lower.


>That is not totally true. The reason most people stay with Windows is because the hardware ships with it.

Only every attempt to sell hardware that ships with Linux (by several companies) failed.

And the "switch to something different" didn't seem to bother those going to OS X.

OS X, in less time than what Desktop Linux was promoted (1998-2013 for Dektop Linux, 2001-2013 for OS X), and with more expessive hardware, went from 2% to around 12% in the US (and even more for laptop share).

>In my experience Linux usage has about 50% retention rate among those I installed the OS for.

Selection bias.


a 50% retention rate? That's not very good. That means that after you've installed Linux, half of the people switch back.


No, that is actually stunningly good, considering the alleged state of the Linux desktop and considering the audience that the Linux desktop has traditionally been targeting. It is so good, that I suspect he has a strong selection bias (he is probably only installing Linux for users he thinks may be able to use it fulltime. This selection is probably unconscious.)

(And because it always seems to be necessary to add this disclaimer: I've been using Linux fulltime for over a decade; I'm not a critic, just a realist.)


Remember these are people who have been using windows all their lives. Change is not something all people can deal with easily.

It also says, given the chance to be the default desktop, Linux can have higher than 1% market share.


Yeah well its not like computers ship without OS so your point does not really make sense. And its not like Linux has marketing unlike all other OSes out there. When you want to compare stuff you got to have similar factors in place otherwise it does not make sense.


thanks for turning yet another HN post in a pointless flamewar. We so need more noise around here.


Haha, great troll, dudebro! Well, gonna go back to making money from iOS apps and running Linux on a backend server since I can still write software, download development tools, and generate binaries.


Could you imagine if people could make the kind of money developing things for Linux that they do developing things for iOS? It would make comments like yours kind of funny and relevant.


> Could you imagine if people could make the kind of money developing things for Linux that they do developing things for iOS? It would make comments like yours kind of funny and relevant.

Yeah, one has to admit that Mac users are a more receptive audience for the high-brow humor of sophisticated fart apps.


Now now, don't be mad because what he says is true. It's unbecoming. If you really care, put your effort into making it false.


It is false. I and my coworkers make plenty of money developing for Linux.

Also, we're hiring: http://aws.amazon.com/sdejobs/


Do you all make money developing Linux software for consumers? Anything my mom may have used, perhaps?


And consumer software is the only one that matters because..? In any case if your mom uses the interwebz, she has probably used Linux software, both free and money-making.


Are you saying it doesn't matter? Or that it matters so little you can justify just staying out of that market entirely?

Yes, the whole world "uses Linux" in one way or another. But Linux is not a viable consumer platform (No, Android doesn't count).


Why should companies care about selling software for $9.99 when there are free alternatives, while instead they can focus on other things where they really add value ?


Absolutely. For example:

https://www.neflix.com https://www.amazon.com

And we're not the only people making consumer-oriented Linux software. For example, https://gmail.com .


Staggeringly ignorant if you think the Apple ecosystem is nothing but fart apps. Seriously, I haven't seen one of those in many years.


There is money to be made making software for Linux. Mostly in engineering / Scientific software. Making money of utility software ? Not so much. If you are a company like PGI you are probably making a ton of money selling fortran compilers to people running Linux on their clusters.


Sadly the PGI compilers are (at least in my experience with codes I use) buggy, slow, and difficult to use. Why pay when I can get comparable performance using GNU compilers?


People using FORTRAN have this weird tendency of not changing much with the times. Their code bases go back decades, and PGI compilers are something they continue using.


My experience with PGI is that the engineers liked them because they had a FORTRAN to CUDA compiler, so they didn't have to rewrite their code. They were pretty good about answering bug reports, with the number of times I had to install new compilers on the compute systems.


I would wager more money is made via Linux than iOS by a fairly large margin.


I would wager more money is made via Linux than iOS by a fairly large margin.

As an aggregate measure, spread across several million people? Perhaps. Resolving that is just a matter of looking up the data.

But that's not the question that matters for an actual developer. What actually matters is: How much money are you making on one platform, and how much could you make on the other? That question has a lot more to do with whether or not a developer makes his or her rent next month than the aggregate measure above.

I'm not saying it's useless to look at the long-term picture. I'm just trying to show that it's a big mistake to focus on that to the exclusion of more pressing things first.


I'm not sure I completely follow you. I would calculate on the basis of developers building software that runs on top of Linux, so that would include a large proportion of all web applications as well as various embedded applications. You could probably include android in there also.

Now it's true that this isn't quite apples to apples since Linux is more fungible than iOS in most regards, mostly thanks to it's open source nature. For example moving your web application from Linux to FreeBSD is likely to make less of a revenue difference than say moving from iOS to Windows Phone 8.

The biggest point is probably that the existence of an Open Source/Free operating system has probably enabled more profitable businesses to exist than iOS.


The biggest point is probably that the existence of an Open Source/Free operating system has probably enabled more profitable businesses to exist than iOS.

Maybe.

On the one hand, I know exactly how great it is to have development tools that are a free download away (I remember shelling out hundreds on a C++ compiler in the mid-90s). Open source definitely rocks in this respect.

On the other hand, I know that without the iPhone, iOS, and all of the associated things that came with it (including the industry's massive pivot to compete in its wake), things might look very different for an app developer today. (Or at the very least they'd be slower in getting to this point.) I think it's important to realize that there were no independent app developers in 2007 - writing, buying and using software for the Palm handhelds or Windows CE was radically different on nearly every level.


It's quite difficult to retroactively unpick cause and effect though it could certainly be argued that the existence of Linux (and free UNIX in general) contributed greatly to the rise of the web.

I would still wager that more paid developer hours go towards stuff that ends up being executed on top of Linux than iOS though.


Why would you include Web Applications as part of that? Web applications are almost completely OS-agnostic. I can run my PHP application on Linux, on OSX, or on Windows. It shouldn't count for any of the three operating systems because it wasn't built for any of them. It was built to run on a software stack which runs on all three.


But people do in fact choose to run them on Linux which is unlikely to be a purely arbitrary choice though by nature open source stacks will be more portable, but it seems perverse to use that as a negative argument.


Sure, but people also choose to run them on Windows, and OSX. If it was Linux-only, then I could see why you'd include it as being "written for Linux" but web applications are, for the most part, OS-agnostic. People can choose to run it on a variety of platforms. Just because one is used more than the others does not mean it is the exclusive platform for web applications as a whole.

You're not writing a PHP application for Linux, you're just writing a PHP application, which can run on one of Linux, Windows, OSX, etc. Just because you choose to run in on Linux does not mean you wrote it specifically to be run on Linux, nor should it be included in the metric for Linux apps.


Some web applications are more platform specific than others. Since Linux is the most popular OS for running web applications it seems reasonable to assume it was chosen for a reason and therefor web developers would be worse off if it were not available.


> Some web applications are more platform specific than others.

Rarely.

As I said before, you're not developing for Linux when you make a web application. You're developing for Rails/PHP/whathaveyou. These are all OS-agnostic and can be run on any OS. I can run my PHP app on my Macbook, my Linux server, or my friend's Windows desktop. They all work. Because it's not meant to be built for a particular OS.

I don't understand how you can be this stubborn about it. If the language can be run on any number of platforms, then, by definition, it's not an application for one specific platform.


I mean that a very large share of these applications are in practise deployed to Linux. If you total the $ revenue of these applications you would no doubt come to a very large figure.


So? That's not the discussion at stake here. We're talking about apps being written for Linux vs OSX. By definition, a web app is not written for a particular platform (with certain exceptions like ASP.net). If anything, it'd fall into its own category.


By that definition you can only count applications that rely on proprietary OS features, which you generally don't have with an open source OS (that's sort of the point).

I don't think it's invalid to describe a web app deployed to Linux or an embedded system running Linux as a "Linux app" but I guess that is really semantics.


Theoretically, you're correct. In practice, you look at a company like Amazon (where I work) and our software, while mostly it is written in Java and other high level languages, there are many bits and pieces written in C and C++, and even the high-level bits are likely to fail spectacularly if you try to run them on anything other than a close relative of the Linux distribution they were built for. This is just a fact of software development. Write-once run-everywhere is a virtual myth.

Unless of course you're talking about building a single Linux virtual machine image and deploying it to thousands of servers. That actually works phenomenally. Doesn't work as well with Apple's software. Or Microsoft's for that matter (though this is largely a question of licensing cost.)


> I would wager more money is made via Linux than iOS by a fairly large margin.

Without a doubt. IBM, Google, Amazon, and many, many others are deep in the Linux eco-system. Pretty much all supercomputing is done on Linux, and all the boring cloud/infrastructure/scientific stuff is done on Linux.


Android (Linux) has surpassed iOS in number of users worldwide.


More people drive Toyota than BMW. More people eat at McDonalds than Five Guys. More people stay at a Holiday Inn than The Ritz Carlton. The statement is worthless as it conveys no meaning, other than a factoid, as do my statements.


How is that smugness working out for you ? Windows users are fewer than iOS users. Would you now compare Windows phones to Ferraris by using the same analogy ?


pukes


True. But the reality is far more complicated than that. In order to compare the two objectively (this is from the perspective of a developer, but many of the same factors also apply for end users), you also have to take into account things like the number of users that buy apps, app store fragmentation, how your software will fare in each store, and a whole host of other technical and market factors that are frequently discussed here.

I realize this might not be what you're saying, so I'll slay a misinterpretation for those that might hold it: going only by the sheer number of users on a platform alone does not mean that it is going to be a good idea for you to develop for it.


http://techland.time.com/2013/04/16/ios-vs-android/

Most notable point is that iOS users spend more than 3x on apps than android users. Also, the same exact app on the iTunes Store tends to make more then 3x in sales than the same app on Google Play.


True. But, then, there are other factors...

http://dottech.org/103219/ios-users-vs-android-users-comic/


But iOS users surpass Android users in web usage and other smartphone features. Android is essentially the default choice on cheap feature phones. It's often what one gets when there is no choice.


And?


Yeah, nobody makes money off of linux in embedded systems..


Can you imagine writing desktop software for Linux? Inconsistent APIs, API breakage, ABI breakage, sizable variances between distributions, multiple desktops UI implementations, and you may as well just forget about mobile.

I'm not justifying Apple's ever increasing shift towards enacting strict constraints on their platform developers, but the comparison with Linux is pointless.


What rubbish.

Any specifics, or are you just trolling?

The company I work for develops high-end desktop software for Linux, Mac and Windows, and Linux generally causes us the least trouble and OS X (thanks mostly to atrocious graphics drivers and OpenGL support in addition to really bad memory allocation/paging issues that have only just been fixed in Mountain Lion) the most trouble. And this is on limited numbers of hardware and software variations for OS X.


What versions of Linux do you target?


We "officially support" RHEL 5.4 and RHEL 6.0 (and thus corresponding CentOSes).

But we've got customers running everything from RHEL 4.5 to the latest and greatest Ubuntus, Mints and Arch.

All with the same binary installers.

The only linux-related weirdness I can recall in the last two years distro-wise was Scientific Linux, which seemed to have some weird XOrg config issues.


Thank you. Like others, I had no idea that Linux was that stable in the practical levels above its ABI.


> All with the same binary installers.

So you integrate with the user's desktop environment, using standard local widgets, theming, integration with UX guidelines, local library dependencies, etc?

Or are you shipping a Qt app with your own dependencies included? If so, Qt is pretty notoriously buggy on OS X (and rightfully disliked by most users as it stands outside all platform conventions), perhaps explaining some of your complaints.


Local widgets & theming yes, although generally we ship with our own themes by default as we make VFX apps, and the last thing artists want is bright UI to distract them.

I don't believe there are general UX guidelines for Linuxes, but for things like notification popups, system tray stuff, yeah, we do all that natively to the distro through Qt (DBus handles all that transparently within Qt very nicely).

We ship Qt as shared libs with the binaries and all dependencies we need system-wise statically - i.e. zlib, libpng, libjpeg are statically linked. For things like embedded Python, we have to do the same on OS X anyway, due to different python and zlib versions per OS X version.

As for Qt and OS X regarding nativeness - I keep hearing this, but I never see any good examples. I agree it's possible to create Qt Apps on OS X that looks crap, but it's also possible to make them look native as far as I'm concerned. The only thing I can remember not being able to easily do in Qt regarding OS X widgets is the horizontal grouping of side-by-side buttons in radio-button fashion. But it's easy enough to knock up a QWidget subclass which replicates this. But admittedly I don't think I've tried to replicate every possible OS X control/widget...

I think what might be the most difficult part of making a Qt app on OS X look native is the layout and spacing stuff, which generally does seem to be a bit crap within Qt on OS X.

I can have the same code to do a side-panel with edit values in a panel, and it looks great on Linux and Windows: http://imgur.com/kUI90ry

on OS X: http://imgur.com/yqigBdw

and the spacing and padding is all over the place - so I have to add a manual style-sheet to get the padding and spacing right, which is crap (image above is without extra stylesheet). So I'm not saying it's perfect or easy, but I think it is possible.


The dialog you've shown for OS X does not look native at all. Not just the spacing, but especially the second selector ('render') is quite odd. Also the font usage for the labels, the light-gray borders around the input fields and the tab focus is strange.

Does QT basically render a bitmap, or does it use the native controls and just has some odd default styling? If it's the first, then I would probably do the UI in native Objective C/Cocoa and keep a nice cross platform base for the VFX core of the app. Not sure if that's feasible for your application of course.


It's got a master stylesheet attached for the tabs, but admittedly, even without it, it's not identical.

http://imgur.com/68b9eoO - is native Cocoa moc-up in XCode.

I concede the borders are slightly different, but I personally wouldn't have noticed or minded.

The render button is a custom button - the only difference from the native one is the right-hand menu triangle which isn't native.

Qt has styles, and draws controls itself via vector drawing. And you can customise this yourself: So you've got all the power in the world to do what you want, but at the expense of loads of complexity that no-one's really going to go to the trouble of doing. So basically, it tries to emulate the controls on all platforms, and does a pretty poor job on OS X.


Thank you, very interesting. Am I correct that the button 'Visible to: All' is basically an action button where you can use the arrow on the side to change the action within? Those are not really common on OS X. Guess that's why it looks a bit out of place.

I would side with the reader below, I think that going for a completely different look works better than 'almost' native. Ableton Live is a good example I think that has (almost) the same UI on Mac as on Windows which doesn't look bad on either OS.


Not quite: it's a highly-custom multiple selection mask button (with intelligent title based on the selection options) - doesn't really have any native equivalent on any platform as far as I'm aware:

http://imgur.com/xXM7TBT


It does extremely shitty job on OS X. Not trying to emulate would probably look better.


The OS X version looks ancient and not like a modern OS X app at all. Is that due to limitations in Qt? I had considered Qt for cross platform development, but after seeing that comparison it seems like it would be better to maintain separate front-ends for different platforms.

I am thinking of Pixelmator, or Apple's Final Cut Pro and Motion for comparison to your screenshot. Even modern versions of Photoshop manage to look much nicer than that.


It's got a custom overall stylesheet for the tab widgets as I don't like the OS X tab style or colour, so they're completely different.

Qt "emulates" native control appearances by drawing them itself. This means it doesn't get it 100% correct (in OS X's case). You can apply stylesheets to configure all aspects of spacing and appearance, so in theory it's possible to write a stylesheet to completely emulate OS X's controls (or at least the majority of them), but that'd be a lot of work which you probably wouldn't want to do.

I could make it any colour I wanted with stylesheets in Qt - this was a personal app, and I'm not too concerned with what it looks like.


Do you work for the Foundry? I find that Nuke for OSX is by far the crashiest. Was wondering why.


What version (OS X and Nuke) and how does it crash doing what as an example?


Mostly things that smelled like memory leaks (pull a matte, leave it for a while, come back and tweak it => long coffee break). Also, restoring from idle seemed to be the hardest on Snow Leopard.


Which keyer? Primatte's had a few issues in 6.3 and previous.

on 10.6 (and 10.7), memory allocation/paging is pretty atrocious if you haven't got much free mem left.

Basically, OS X prioritises paging to disk over freeing up Inactive memory (which isn't actually being used for anything at present), which is pretty crap. So it's very easy to make it page when it shouldn't when you allocate loads of memory, and the system will generally just grind to a halt.

Apple fixed this in 10.8, so now it will free up Inactive memory first, before it starts paging.

But neither of these explain any crashes within Nuke.


Indeed Primatte. This explains a lot. Thanks!


I take it your software is cross-platform. What language (C++, Mono?) and GUI library (GTK 2/3, QT?) are you using? Thanks.


C++ and Qt.


You do realize that the majority of the smartphones in the world run Linux?


The kernel. Everything else from libc on up was rewritten, and under Google's control. The Play store is hardly in AOSP, much less their new IntelliJ-based development stack.


The tools are publicly developed: https://android.googlesource.com/platform/tools/build (there are also two adt repos, one for eclipse, one for idea; gerrit is also public)

Google may develop a lot of things behind closed doors but let's give them credit where credit's due.


The Play Store along with all the other Google Experience apps like gMail and Maps is not in AOSP. Google has no obligation to open-source those, nor do they want to.


Use something like python and qt and you are well set by any standards.


Just use Qt. Works brilliantly, great API and documentation, and gets you 95% of the way to Windows versions and 85% of the way on OS X too. On OS X you'll have issues with native painting within OpenGL drawing and maybe event throttling / reordering for mouse / pen tablet events that you have to install a manual event filter for to fix, as OS X doesn't always send input mouse/keyboard events in the correct order.


Nobody on OS X wants a Qt app. If you have any solid competition in the market from a company willing to produce a native app, you'll lose to them.

No wonder you're having issues on OS X.


Yes because the UI toolkit is the ultimate differentiator when it comes to all products.


Not all customers are design snobs. Some buy things because it does the task well.


A better user interface _is_ "doing the task well". Functionality and design are not exclusive from each other.


There's a massive amount of software that exists outside of note-taking apps where the customer will be more than happy to put up with different-looking buttons because the value the software provides is so high.

There are many software categories where visual-design decisions are not the only competition advantage.


Design is far more than just visual, and your dismissal of design as "different looking buttons" suggests that you don't really understand design very well.


Implying that a well designed application cannot be made in any UI toolkit save one also doesnt show a good understanding of design.


I don't think anyone was, least of all me. In any case, I'll bite:

Different UI toolkits make doing certain things hard, certain things easy, and some things damn near impossible without large effort on the part of the developer.

So when the parent commenter says "Nobody on OS X wants a Qt app", I'd argue that yes, although you can make a "well designed QT app", it's much harder to make a "well designed OS X app" with QT.

Why will it be less likely to be a well designed OS X app? Because it will be different to a Cocoa app made with interface builder, in subtle and sometimes not so subtle ways. Sure you can code around these and make adjustments, but the level of effort and investment to get to the stage of if you'd just built it with a more suited tool for the job (Cocoa / Interface Builder on OS X) is quite high.

This is why there is some truth the the admittedly generalised statement made above that "Nobody on OS X wants a Qt app".


I think a more useful statement is that "Nobody on OSX wants a poorly designed app because the platform has a high standard for design". It is possible to design well designed apps without using Cocoa - see Sublime Text.


Yes, but Sublime's UI consists almost entirely of a gigantic text window and the OS X menu bar.


Mathematica on OS X uses Qt, I've never seen a complaint about it vs. using Cocoa.


No it doesn't. Mathematica only uses Qt on Linux, the Mac frontend has always been a native Mac app.


I have. It used to use X11, I saw even more complaints then.

There aren't any competitors, however, so people use Mathematica.

I use high-end expensive that are Qt-only too, but I would gladly switch if there were other options, because Qt is buggy, uses non-intuitive non-standard UI, exhibits poor performance due to impedance mismatches between the Mac and Qt event/threading models, and ultimately decreases overall utility of the UX.


Can you give me an example of the "non-intuitive non-standard UI"?

This may well be true, but it's quite possible it's just the developer was lazy and didn't do all the effort to make it look native.

Edit: in fact, I'll give an example: VirtualBox - it does look crap on OS X, but that's because the developers obviously didn't make any effort to make it look native. They've got icons in tabs pane buttons and huge toolbar buttons along the top (which isn't a unified toolbar btw - which would make it look more native), which goes completely against the way OS X apps tend to look.


VirtualBox, IDA Pro, Google Earth (in fact, everything from Google that uses Qt), EAGLE (PCB software), OpenSCAD, QGIS ...

I've literally never been fooled by a Qt app -- a Mac user can spot that hot mess from a mile away. It's not just a matter of visual layout and UX, although that matters and always falls somewhere between subtly or completely wrong.

The controls also tend to lag at weird times, behave slightly strangely, demonstrate unusual font metrics, etc. The apps tend to exhibit bugs related to menu bar event handling, window management, on and on, and crash more than any other apps I use daily.

This isn't a huge surprise given that Cocoa is designed to be the first and only gatekeeper between events, the OS, UI controls, and Cocoa's main event loop, and most of what makes Mac apps a Mac app has to do with the APIs and integration that you lose first-class access to once you deploy Qt -- that includes 'simple' things like UI layout metrics, which Qt has to re-implement.

I abandoned almost all those Qt apps on my list above. I even dropped EAGLE, despite being "native", in favor of Altera on Windows, which I paid a hefty premium for in no small part because it wasn't a pile of broken UX, Windows or not.

I still use IDA Pro, but the minute http://www.hopperapp.com/ can replace my IDA Pro usage, I'll switch in a heartbeat.


Good points - thanks.

Although having looked at hopper, I must say I'm not convinced it seems any more native than a Qt app on OS X could look if work was concentrated with this goal in mind. So as I said in my VirtualBox comment, I think that while indeed it is a Qt deficiency that apps don't look native straight from the compiler, more work could be done by the developer to make it more native-like.

I've seen controls acting weirdly but only QPushButtons - that seems to be regarding the hit-test area - we've had to sub-class a lot of them on OS X to fix this by making the hit test area bigger which is annoying. There's also a pretty bad spacing/padding/layout issue as I alluded to in another comment.

I agree with the event stuff as well - definitely one of the biggest things which affects us is that sometimes mouse/keyboard events don't get sent to the app if the app isn't active or the mouse isn't over a particular window. Debugging through Qt, it seems that Qt never gets the event from the OS, so we have to install event filters for all windows and intercept them which is crap. We've also seen weird stuff like key release events being received before key down events - again debugging through Qt, it looks like an OS X issue in that that's the order they come in from the OS, but again, without a native version to compare to, it's difficult to tell or test.

Generally the crashing of our apps is due to graphics drivers or memory allocation issues (we deal with huge amounts of memory), and I'm not aware of Qt itself being the result of any crashes on OS X for our apps any more than other platforms, but I guess without a native version to compare to, it's difficult to say - but Qt is very rarely the cause of crashes in my experience and I generally develop for Linux and OS X.


Somewhat off topic, but does anyone know how Adobe does their cross platform interface? It doesn't feel like native Mac OS UI, though I think it works pretty well.


In fact they do: Phil Schiller himself on 10th June at the WWDC keynote mentioned that we've ported Mari to OS X, and he was extremely impressed with it and the fact that we've ported it.

It's heavily Qt-based, and doesn't really follow any Apple design guidelines. But it's the best 3D texture painting app in the world for high-end work.


It's not that bad.

And if you're really concerned, you can just use the JVM.


Apple's websites are among the worst corporate sites I've ever used. I don't say that just to be critical or cynical (ahem), I'm merely pointing out that they have tremendous room for improvement. As opposed to say php.net or stackoverflow.com which still give me that fresh air "why can't all sites be like this?" feeling every time I visit them.

Most of the time when I visit Apple's sites now, I just assume that what I need to find will either be buried in a convoluted maze, or simply won't exist, and I'll find myself on a "this has been deprecated" 404-style page which takes me someplace only loosely related to what I was looking for. So I end up back at google to try to find a copy of the information either cached somewhere or offsite.

Simply being an Apple developer is a chore. Keeping up with yearly certificate expirations is taxing when you are contracting for several clients. And they never really worked out an easy way to allow several developers to share certs. I just assume now that the other developers will invalidate whatever shared cert I made.

The situation is bad enough, and exacerbated by Apple stubbornly refusing to see the flaws, that I wish a startup would encapsulate the friction and just take care of all the minutia for me. I should never have to personally deal with provisioning. Anything short of a one click submission to iTunes Connect is reminiscent of all the TCP/IP details that we used to have to put in our modems in the dialup days, when all that should have been required was a phone number and passcode. I can't gently forgive them for it. So I think this downtime could be a wakeup call for them that the inefficiencies in their system are even costing them now.


Have you spent any time on the Verizon or Sirius XM sites? How about the average multinational insurance company? "Among the worst corporate sites" is a huge leap, considering the profound amount of crap. Spending 5 minutes using the average electronic medical records (EMR) web application would be enough to make your hair fall out. Forget about interoperability of EMR formats. It's a mess. I'm not defending Apple at all, I've spent many nights throwing iPhones over the provisioning and certificate process, but to me, the outcome of surviving that process is that I'm making money from the apps, so it's not ideal, but at least my iOS users are actually paying me money, as opposed to Android users that, as a group tend to expect something for nothing.

We ought to also look at the inefficiencies of the Android system while we're here. 35% of users are still on Gingerbread! You can't really expect to earn money as a developer if you ignore 35% of your target market, with iOS we have over 90% running iOS 6 and only about 6% running Android 4.2, which means that developers can't take advantage of a new Android feature without leaving behind the majority of their market, or creating multiple versions and then on top of that, having to test on a myriad of different hardware configurations. The fact also remains that Android users are generally cheap -- they don't like to pay for apps. So you have a highly fragmented OS environment, coupled with a user base that, in generally spends much less that iOS users and, on top of that, you have a royal mess in the copy-protection scheme used in Android -- which had to be disabled in Jelly Bean due to it breaking apps.

Of course, the security in Android is top notch! Great job on that Google.

If we want to talk inefficiencies with Apple, we certainly can, but to ignore the Google mess is disingenuous.

As far as the effect of Apple's "inefficiencies," is it really affecting them? Are people still buying apps and computers?

My last point is that the assertion of Apple "stubbornly refusing to see the flaws.." That's interesting, because unless one works for Apple at a level high enough to be involved in the conversation, that suggestion is merely conjecture. That's right up there with the pundits being disappointed that iWatch has been delayed, despite having no proof or any acknowledgment from Apple that even such a product exists.

There's an easy solution to not having to deal with Apple's "inefficiencies" -- don't deal with Apple and go make your money with all of the people paying money for Android apps. Or, respond to one of the hundreds of job listings at Apple and do something about it.


Given that iOS users worldwide are less than 1/3 of Android users, ignoring Gingerbread would still leave you with roughly double the userbase...

I completely agree with all your other points though. :)


Why did you make an android rant on a thread about Apple's (obviously) hacked together website?

if you don't like android, that's fine, but it's a total digression from the thread.


Oh sorry I just meant, from a developer's perspective, Apple's site is very "hands on". An 80s and 90s way of looking at software development that requires more setup and boilerplate than today. To me, they are passing the buck to developers to just "work it out".

I realize that Android is even worse (I wouldn't be able to test on the hundreds of devices it runs on). I'm hard on Apple because they have billions of dollars. Two policies that would fix their site for me:

* Throw provisioning in the wastebasket. They forgot the first rule of security: if you leave it up to the user to learn it, it's insecure. Imagine how easy it would be to steal the private keys from a developer's machine, or from the email they used to send the key to someone on their team. It's fine to let devs sign their binaries. But don't impose that as a requirement. Xcode should automagically jump through whatever hoops are necessary to sign a binary to run on the device you are building for, and also sign it when you upload it to the app store (with credentials it receives from iTunes Connect using your username and password). To me, there is no excuse for the way it runs now. I understand that they rushed it through to get the iPhone released to the public, and that they perceive their current policy as more secure. But they are wrong. It's just more work.

* If they are going to deprecate something, don't get rid of the original page. This is web design 101 and I just don't understand how it keeps happening.


What's even worse is that we, the developers, their customers, will never get to know what happened. Because that's the Apple way.

I'd really love that Apple proves me wrong on this one and comes clean on the problem, the cause and prevention measures being put in place so this won't happen again, whatever it is.


Nope they won't say a thing and they will get away with it. Oh the things apple devs have to pout upon with.

In another world HN would be up in arms about how to manage downtime, how this is u acceptable and how they are going to switch to somebody else immediately. But not for apple because they have no choice...


They'll have to come clean on this. People pay for this service AND many businesses rely on it. If I'm correct enterprise businesses won't be able to add new devices to the system for example. Apple will need a good explanation for this and if it is a security problem they'll probably be issuing password reset requests and maybe invalidating certificates - you can't just do those things without an explanation.


I have received 6 "How to reset your Apple ID password" Email from Apple during the last couple of days, none of which was triggered by me. Could this be related?



That's funny, a few days ago i received several too.


Was anyone else prompted to "update their expired password" when attempting to login to iTunesConnect?

I did have the same password for about three years so it didn't seem too odd. Of course I double-checked the url and it looked good. Also I waited for a few days in the hopes that someone else would notice if this was a scam of some sort.

Unfortunately after updating my password I forgot the new one. At least I think I forgot as my new password (as best I can remember it) doesn't work.


This makes our best guess to be "security breach".


I receive similar emails from Gmail now and then. Does not me think that Gmail had been compromised.


right, but we don't have multiple people all confirming GMail password resets while GMail just so conveniently happens to be down.


Same here.


Just received following email- confirmed breach:

Last Thursday, an intruder attempted to secure personal information of our registered developers from our developer website. Sensitive personal information was encrypted and cannot be accessed, however, we have not been able to rule out the possibility that some developers’ names, mailing addresses, and/or email addresses may have been accessed. In the spirit of transparency, we want to inform you of the issue. We took the site down immediately on Thursday and have been working around the clock since then.

In order to prevent a security threat like this from happening again, we’re completely overhauling our developer systems, updating our server software, and rebuilding our entire database. We apologize for the significant inconvenience that our downtime has caused you and we expect to have the developer website up again soon.


Let us compare:

World's premier closed-source shop: (presumably) gets hacked; goes down; stays down.

Github, Rubygems, Linux Kernel, etc. get hacked; restore from SHA256SUM'ed backups; keep moving.

Turns out what used to be called "hobby" projects matter, because code made without love has a smell, and no one does a "hobby" for anything but. (Remember the 'ama' in 'amateur') (ok ok so kernel.org was down for a while. But remember all the heavy lifting done by git to keep those commits clean. It was just the server, not the data.)


You probably have better developers pushing live code over at those other places, I'd bet.


This reminds me, yesterday i got an obviously spoofed phishing email from "apple" telling me to reset my passwords and reenter my CC info. Anybody else get that?

http://imgur.com/hyta4bC


It never ceases to amaze me that such emails are carefully constructed in the graphical sense, but miserable failures in the grammatical.


The British spelling of "apologise" is also a giveaway.


Can you have a look at the mail headers and check if it was just a standard phishing mail?


The "update now" link was to some completely other site, so without having checked out the headers yet I'd say it's a safe bet.


maybe they were using some parked or addon domain? I know the chances are that it was not, but the entire thread talks about the poorly designed apple dev backend, which includes links like that.


I just went to check on the dev center and got this e-mail:

Last Thursday, an intruder attempted to secure personal information of our registered developers from our developer website. Sensitive personal information was encrypted and cannot be accessed, however, we have not been able to rule out the possibility that some developers’ names, mailing addresses, and/or email addresses may have been accessed. In the spirit of transparency, we want to inform you of the issue. We took the site down immediately on Thursday and have been working around the clock since then.

In order to prevent a security threat like this from happening again, we’re completely overhauling our developer systems, updating our server software, and rebuilding our entire database. We apologize for the significant inconvenience that our downtime has caused you and we expect to have the developer website up again soon.


Amazon bas been down for as much as a half day in recent memory — and not dev stuff but their customer-facing money-making site, and mid-week too.


Apple's customer-facing store was down last night for several hours.


Doesn't matter. People aren't going to decide, gee, I actually wanted a Toshiba.


people also aren't going to decide 'gee, i'm going to go to x store and pay more for something' anymore then they'll go to BB to buy their apple product of choice.


How many times has AWS gone down taking with it half the web? That to me is a bigger issue than not being able to download iOS beta 3 for a few days.


Why is a mere unfounded speculation not backed up by any facts written to garner pageviews featured on the frontpage?


Because there are no facts, Apple hasn't said a word. The alternative is that we ignore this. At least with this article (which no one has to read), there's a place for HN Apple devs to talk amongst each other.


It goes very deep in meta territory, but hey, it's not as if there were any fact intersting to discuss.

I remember a lot of discussions a year or two ago when marco was very vocal about the reasons he didn't have comments on his blog, and would prefer to have all of these on HN for e.g.

slowdown's comment goes the other way round, on why HN should care about commenting on marco's blog. There is another thread [1] with 138 comments and more quality opinions and speculations than anyone should need, Marco's speculations are also represented in the top comments. Agree or not with he's stance, it's a valid point IMO.

I think it's fun to see this kind of reaction on why some contents should be commented or not, and the motivations to push a site or another.

[1] https://news.ycombinator.com/item?id=6071233


I've been checking on that post since it first came up looking for anything new, but old HN posts get to be hard to read for new stuff pretty quick, especially with no way to collapse a thread. If there was anything new, I'd be hard pressed to actually find it.

That thread is quickly sliding down the list and is already off the front page. I don't think a new one is out of the question.


https://userscripts.org/scripts/show/138037

A way to navigate to new unread entries would be nice.

Sometimes I really wish NNTP wasn't quite so dead.


>a place for HN Apple devs to talk amongst each other

So, you're telling me that I need to go read his article, earn him pageviews and ad money and come back here to discuss about the issue? I think a Ask HN post would have done the job, much better, no?

Just saw your edit:

>(which no one has to read)

wut?


Edit? No, I wrote that in one try.

No one has to read the article, and it seems like a lot of people don't read the article before commenting. The comment box doesn't give you a quiz on the article before letting you comment.


Apple is set to report their earnings on Tuesday, July 23rd. If this isn't back up by Tuesday evening, it's going to be a very interesting earnings conference call.


I would be very interested to see what the implications would be if this had happened to iCloud.

I'm sure Apple are as unhappy about whatever has happened as the rest of us (likely much more so), but I think at least some communication from them about it would be in order.


Instead of fighting about which platform is the best, I hope all of you will agree that Apple should not leave us in the dark for 15min, let alone 3 days, or not even "post mortem" to answer the question "what happened?".


Apple just released an update (developers should be getting it in their inbox) but still no ETA on when it'll be up. Very unfortunate for those of us waiting to release apps before August.


> or device provisioning and certificates (potentially very profitable)

Well, an `App'(, the name of which I would not like to identify, ) which was installed using Safari exploits and whose intended use is to help users search and install apps free of charge from AppStore, is still up and running.

I guess there exist various exploits up and down the App Store chains, till now.


So… Did everyone get the email saying they had an intrusion and they're rebuilding the system?


yep, I got it a few hours ago.


Forstall has the backups.


If it weren't Sunday, I wouldn't speculate, but it is. My 2 cents: iOS7 updates galore. Just imagine everything that could be overhauled. Even the old gray textured background we see is not very much like iOS 7.

iOS is in a big transition here. You can't even update apps at all unless you now include 'widescreen' support, for example. If you don't, iTunes reports an Invalid Binary (no default 586 image, etc).

So I would guess a huge overhaul, and typical Apple, is taking care of that vs. arguing or commenting on theories.


So I would guess a huge overhaul, and typical Apple, is taking care of that vs. arguing or commenting on theories.

A design overhaul wouldn't require the dev centre to go down at all - they could just prepare all the assets etc on testing servers and switch them over when they are ready.

Given the normal warning given on any maintenance, and the obvious negative consequences for Apple's business of any extended outage (extended in this case being over a day or so), this is unintended, and most likely caused by a security breach. I think we can safely rule out a design overhaul unless Apple are incredibly incompetent.

NB itunesconnect is still up (the bit which deals with app upload, itunes store metadata etc), only the dev center - dealing with certs/device registration/distribution etc - is down.


Keep in mind, this is the company which takes their whole store down when they need to add new products to it.


Did you mean when they have their WWDCs? In that case it might be a marketing reason.


They take it down during WWDC keynotes and other major announcements, yes.

But there are other instances where the store will go down outside of those periods. Sometimes it's for maintenance, but more often than not a new or updated product appears (e.g. a product line gets a speed bump across the board).


Perhaps they're also trying to pull together all the disparate things running on the dev servers?

nwh's comment ( https://news.ycombinator.com/item?id=6078854 ) says they've got a lot of different systems running, maybe they're trying to unify them to be on one system, making upgrading/changing easier in the future?


It's possible this is some sort of migration gone wrong I suppose, there are a lot of pieces involved in the dev centre, and I've seen a few changes popping up over the last few weeks. Seems odd that they'd just pull the whole thing though without warning, rather than just rolling back to the last state. With a migration they should have a good known state they can go back to quickly if necessary.

No planned migration or consolidation should take several days of interrupted service, it's just not necessary unless something goes horribly wrong.


Maybe they deleted all the copies of the both new and old developer centres so are having to rebuild it all from scratch.


I would hope a multi-billion dollar developer portal has a backup somewhere. It'd be insane if they didn't.


You'd be surprised the kind of risky setups multi-million <currency> companies will run with.


If this multi-day outage was planned, and they didn't communicate it to devs (like they usually do) then this is a huge, huge slap to the face. It seems very unlikely.


Wouldn't they offer a warning that the dev center would be down if it's just a design overhaul?


Being sunday has nothing to do with it - notice the title is "still down" - it's been down since thursday. If this was planned, any sane company would give notice to their developers, Apple's success implies they're sane.

Don't forget that developers get 30%, when Apple show off (rightfully so) a huge sum paid to developers, they've been paid significantly more than that - developers seriously matter.


Developers get 70%, and Apple gets 30%, not the other way around. The sum paid to developers is substantially larger than the sum paid to Apple.


Oops, stupid mistake. Point stands that Apple gain a lot, but thanks for pointing that out.


If it were a design overhaul, it would be instant. Just do a `git pull` and restart the internet-facing servers. It also wouldn't take days.


I really hope you're right and the Dev Center returns without explanation, but with neon icons and a "flat" design. The backlash would help Apple to adjust its priorities again. (Services over fashion)


Gee, thanks Marco, we would have never known ourselves...


Marco's audience includes a bunch of people who wouldn't have known this, or might have assumed it's back up: this draws attention back to it for people who like discussing this sort of thing (although, past that point, I largely agree with you, as I'm not certain what really there is to discuss).


That sounds like "I just read the title so I could post a snarky remark". He does put some suggestions forward of what he thinks could be the root cause.


I read the whole article. The suggestions cover all the cases one would that thought himself.

He is being Captain Obvious.

Including the gem to "set some time aside" as developers, because we might have some work to do after the site comes back up.

Everything in the comment is what men wiser than us called "idle speculation".


If you don't like reading idle speculation then you should probably avoid 95% of tech blogs.


I think that comment is Quickmeme-worthy. http://www.quickmeme.com/Captain-Hindsight/




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: