An open letter to less experienced developers - <AUTHOR> https://medium.com/@p7r/an-open-letter-to-less-experienced-developers-c33c16ea5e88 <comment><USER2> As I grow older, I've found out that I value tools, processes and organization/conventions more than the code itself. These days it is very strange for me to look at some piece of code and think "that's amazing".

Part of that is because I keep finding out that the best code is as simple and "to the point" as possible. Great tools (I'm counting stuff like good type systems, good meta-programming, etc. in this category) combined with good architecture/conventions are the real enablers of this kind of code. Once the former is worked out (which is the really hard part), the latter should just come naturally given a sensible coder.

As a reuslt, I'm excited about Rust and its "zero-overhead" abstractions. I'm excited about the Elm architecture, and how it permeated/influenced the javascript ecosystem (react/vue/whatever). I'm excited (and amazed!) about the RDBM's we have available (sqlite, mysql, postgres), and the awesome cache/in- memory ones (redis), and the strongly consistent distributed systems (etcd/zookeper/etc.), and the web servers (apache, nginx), and the "application servers" (jetty, uwsgi, php-fpm), and the load balancers (haproxy), and the heaps of testing tools we have, and I could go on and on...

Almost none of these things existed when I started coding. Databases got corrupted frequently, client/server programs were almost mythical monsters, etc.. These were the days when clever code was king (to pack stuff tighter in memory, to shave off some computation through clever operations, etc.). Nowadays these hacks are hardly ever necessary anymore, and I couldn't miss them less.

If you want to see me excited, explain to me how your system works and why it won't break. This is my takeaway, not your actual code...

</comment><comment><USER3> (My 2 cents, I work alone doing mostly professional web apps)

I've been coding for around 35 years, and I'm bored. I really am.

The point of developing software (at least in my vision) is to solve problems. But growing old, I like to find solutions « in my head » (or on paper or white board). And once I found the solution, I lost 100% of my interest in the problem. And it's precisely the moment I have to start coding the solution !

So I try different frameworks or different languages to keep the interest on coding.

It's a bit sad I know, but I like learning new stuff or languages so that's why I keep going on (and mostly enjoying my job).

<comment><USER4> You must be godly. I have a couple of problems I have been thinking about for years that I could use some help with! But my problems in are the real time rendering realm.

For me personally I have found that when I find initial solutions to problems, they are usually just a shadow of the actual problem. The true complexity is not revealed until I start stress testing it, or making it interact with other systems, trying to expand it to handle more functionality.

Maybe this can be attributed to the fact that my first step is to just make things work. And it not until I make them work do I really see the patterns. Then I usually manage to remove half the code as the patterns and abstractions resolve themselves.

So for me, coding is essential to truly solving the problems.

<comment><USER3> I might have mistranslated what I usually work on. I essentially do web apps for professionals. Intranet is a better word ? Usually CRUD apps with no need to top of the art designs, just working and adapted to what the client wants.

The most interesting part is sort out the best solution to translate a need they often have difficulties to explain, as it generally is concept they use on a daily base and is adapted to the way they work for years (in companies and projects as diverse as, for example, CRM for multiple AC companies regrouped in a joint society, gas truck following, with deliveries validated on tablet, backoffice for an editor for managing authors, stock, and stuff like that, etc...).

Once I figure it out, menus, shortcuts, the different screens, etc, and validate with the client, 80% of the job is done.

And then the coding part starts. I don't say it's useless and sometimes you're right you bump on some problem you didn't thought of in the beginning.

But most of the time, it's boring, for me.

As I said, I work alone and most often for small companies, so there is rarely a lot of people using the systems at the same time. It might simplify it a lot for me.

</comment></comment></comment><comment><USER5> Spot on, I see many wide eyed junior developers thinking just becse they can code they can be the next startup enterprenuer with their side project and show what they can do at their current job. With a bit of experience they soon realise just because you can code doesn't mean it's good code nor does it mean it will satisfy the user requirements. Luckily most juniors I have dealt with respect their seniors and take advice, there are a few who quite frankly haven't got a clue but make out they know what they are doing.

</comment><comment><USER6> With respect to the OP, code != blueprints. IMO, code == bricks.

But bricks are just one piece of the puzzle of building a house, just as much as the blueprints are just one piece of that same puzzle. I just disagree which piece they are.

Other than that, this seems to be a reasonable response on the subject from an experienced developer to someone who hasn't been in the business as long.</comment>


Adobe Brackets - <AUTHOR> http://brackets.io/

<comment><USER2> Adobe will probably have a hard time getting users over from Sublime, Github's Atom or JetBrains editors, just to name a few, if they don't commit a lot of resources into it.

Github repo: [https://github.com/adobe/brackets/](https://github.com/adobe/brackets/)

<comment><USER3> It seems to be narrowly focused on HTML/CSS as well.

</comment></comment><comment><USER4> brackets is a good editor with nice features and is easy to use. It has multi- caret editing, which is essential to me now. It can choke on larger files though and isn't as robust in doing search / replace as I've used before. I had one file that all my editors were choking on except ultraedit took care of it.

definitely for free, brackets is excellent and I can recommend it to people. But serious editors and programmers will find some sort of missing feature or flaw within a short time using it I bet. Still I encourage development on it.

</comment><comment><USER5> It's pretty good, but IMO it's too tightly tied to Google Chrome & Node.</comment>


The Difference Between Undergraduate and Graduate School - <AUTHOR> http://www.wisdomandwonder.com/article/3893/the-difference-between-undergraduate-and-graduate-school <comment><USER2> Good point - I think of this as the difference between a pupil (absorbs instruction) and a scholar (seeks knowledge).</comment>


Engadget talks Joojoo, Arrington, 3G, and with Fusion Garage - <AUTHOR> http://www.engadget.com/2009/12/11/engadget-talks-joojoo-arrington-3g-and-more-with-fusion-garag/ <comment><USER2> Quite interesting. Both Rathakrishnan's remarks and TC's suit suggest the falling-out was over who would have majority control of the venture.

Incidentally, Engagdet has been all over this particular story...does someone there have history with TechCrunch? They seem to be very much on the side of Fusion Garage, for some reason.</comment>


The Difference In Profitability Between Apple And Amazon - <AUTHOR> http://www.businessinsider.com/amazons-profits-versus-apple-2013-1

<comment><USER2> Regardless of raw profit, Amazon will remain a viable business for as long as there are products that people want. ANY products. Apple will remain a viable business only as long as they create NEW products that people want.</comment>


What You'll Wish You'd Known (2005) - <AUTHOR> http://paulgraham.com/hs.html

<comment><USER2> In my first year of graduate school, I was wondering "HOW can I do something creative?" It seemed an impossible problem. How do you come up with something which would startle you with its newness if somebody else showed it to you as something they came up with?

The solution I hit upon which moved me forward was this: research problems are homework problems. You could give me a homework problem I had never solved before, and I would work diligently on it. I was not deterred by the fact that I had never answered this homework problem before because I knew SOMEBODY had answered this homework problem before.

A Research Problem was just a Homework Problem asked for the first time. BEFORE the first person to do it had ever done it. With this attitude, I was able to work on a problem with the artificial belief that OF COURSE it could be done, and so I should stick to it until I had done it. The belief was artificial because, in the case of a research problem, it had NOT been done before.

Once I got used to working on research problems it was totally better than homework. No longer was I interested in homework, but only in these incredible investigations that hadn't been done before.

I should add that I wouldn't have even vaguely understood the questions if I wasn't on a daily basis exposed to great research.

<comment><AUTHOR> _The solution I hit upon which moved me forward was this: research problems are homework problems._

There is a famous story about this, which you can read in the book Mathematical People. George Dantzig came late to class one day and saw two problems on the blackboard. He worked them, not knowing that his professor had posted them as examples of unsolved research problems, NOT homework. That impressed his professor and helped launch his career.

<http://en.wikipedia.org/wiki/George_Dantzig>

<http://www.snopes.com/college/homework/unsolvable.asp>

[http://www-groups.dcs.st-and.ac.uk/~history/Biographies/Dant...](http://www- groups.dcs.st-and.ac.uk/~history/Biographies/Dantzig_George.html)

</comment></comment><comment><USER3> Chevy Chase spoke at our HS graduation, and as best I can recall, he told us that adults are jerks, it's fun to smoke pot (he said it euphemistically but we all knew what he meant), and not to take things too seriously. I think he was pretty stoned at the time.

</comment><comment><AUTHOR> My favorite line in a speech with lots of favorite lines:

"I'm not saying there's no such thing as genius. But if you're trying to choose between two theories and one gives you an excuse for being lazy, the other one is probably right."

<comment><USER4> A nice application of this rule: try to explain a social or economic event/trend.

Theory 1: event occurs as a result of emergent phenomenon.

Theory 2: powerful people that I dislike caused it.

<comment><USER5> How is this an application of that rule?

Both theories are excuses for being lazy.

It seems to be more of an application of rule "if I say something that's appealing to the majority of people on YC I'll get upvoted."

<comment><USER6> I imagine that explaining the emergent phenomenon is less lazy than blaming someone, though simply labeling it as such may not be.

</comment></comment></comment></comment><comment><USER7> Sorry if it's rude to ask, but why were you vetoed?

<comment><USER8> I think because I wasn't from an organization that could serve as a guarantee of good behavior. E.g. if I came from IBM and told the students to try heroin, I'd be fired, but as a random individual there was no limit to how irresponsible I could be. (This was before YC.)

It wasn't because of the content of the talk. The authorities didn't see that. The only thing I've written that was turned down because it was too controversial was:

<http://www.paulgraham.com/divergence.html>

<comment><USER9> What would you say the limit on how irresponsible you can be is now that you are part of YC?

</comment></comment></comment><comment><USER10> This has been posted here before. I wonder how dupe-detection failed! I couldn't find the earlier submission in SearchYC.com but I am _sure_ it was posted before.

<comment><AUTHOR> My wild guess, based on other examples, is that duplicate submission detection lapses after a certain interval, so that there can be fresh discussion of interesting topics. But I haven't checked the source code to see if that is indeed how it works.

There is enough churn in membership here on HN that if the software lets a submission post as a new thread, I'm willing to treat it as a new thread. I try always to post canonical URLs when I submit links myself, the better to activate the duplicate detector if necessary. /metadiscussion

<comment><USER10> Not complaining... just surprised :-)

</comment></comment></comment><comment><USER11> The background story seems interesting. Why was this speech not given?

In any case, I'm pretty sure that at 18, I wouldn't have "gotten" it.

<comment><USER12> I read it at 18...

<comment><USER13> Reading it now. :P

</comment></comment></comment><comment><USER13> I'm a bit confused on who the audience is. Students going into high school or students going into college? After reading I'm noting to myself not to waste any time in college.

<comment><AUTHOR> Maybe the audience is more clear to readers who grew up in the United States. The speech would be given to a group of students about to graduate from high school (that is, just completing secondary schooling) and would assume that many of the audience would be going on to college for higher education.

</comment></comment><comment><USER14> Any possibility of hyper linking the footnotes on all of the old essays? I'd rather click a link than search [1], [2] etc :P</comment>


Google just deleted my nearly 10-year-old free and open-source Android app - <AUTHOR> https://medium.com/@mmathieum/google-just-deleted-my-nearly-10-year-old-free-open-source-android-app-7fbc52edc50a <comment><USER2> The easiest way to identify a monopoly is to look at how badly a company can treat its customers and still get away with it. My company has a half dozen stories like this about Google in the last year alone.

Know what Google is doing to its AdSense partners on a massive scale? They wait until your site has just under the earnings when they have to write you a check, then they terminate your AdSense account for "policy violations".

I'm taking about AdSense sites that have been running for years with very little traffic, accumulating a few pennies a day.

They suspended a client of ours who was spending $40k a month on Google Ads with a two word explanation of "policy violations", and steadfastly refused to explain any reason why. Our client was perfectly reputable, ran multi million dollar ad campaigns on television and radio, and was FDA approved.

When what Google has been getting away with finally comes to light... well, let's hope it does come to light and they pay the consequences.

<comment><USER3> This also makes me feel even more strongly that the FTC should really clamp down on these very strict app stores.

[https://www.ftc.gov/system/files/documents/amicus_briefs/app...](https://www.ftc.gov/system/files/documents/amicus_briefs/apple- inc-v-robert-pepper-et-al/17-204_apple_v_pepper_ac_pet.pdf)

Both the App Store and Google Play stores I think are basically illegal monopolies. I should be able to install whatever app I want, without having to jailbreak my phone and deal with warranty nonsense from the manufacturer. Just like my computer, which I can also install whatever software I want on it.

Both the mandatory fees, and the review policy are terrible. Both Apple and Google could just as easily "recommend" an app as "safe and following best practices" rather than banning them from the app store. And still, many apps get through the nonsense, which has been real joy for scammers and possibly illegal money laundering:

[https://medium.com/@johnnylin/how-to-make-80-000-per- month-o...](https://medium.com/@johnnylin/how-to-make-80-000-per-month-on-the- apple-app-store-bdb943862e88)

I get that they want to protect their brand, but really, I think that horse is out of the barn.

<comment><USER4> Personally, as an iOS user, I do not want the App Store opened up at all.

Currently, I can go to the App Store, install any app, and be about 99.9% confident that the app will do me (or my technologically illiterate mother) absolutely no harm.

This is something I value highly, and am happy to pay the "Apple premium" for.

<comment><USER5> I don't want to live in your locked-down _Disney with the death sentence_ world.

That's fine for you to want it, but don't impose it on me.

I want freedom and liberty to do what I want with the devices I own. I want to develop without fear that these two megacorps can shut me down on a whim for developing something against their ideology.

The web isn't like that. Windows wasn't like that.

Today we live in a Fischer-Price future land where everybody has to wear gloves because we might get burned. I hate what we've become. I want to go back to the world before smartphones and Apple and app stores. The open web. Before Facebook and Google became big brother surveillance operations.

<comment><USER6> Your ideal state of Internet / Tech companies is definitely in the minority contrasted to overall expectations the broader population has put on these devices and services.

Yeah, we get it, you're smart. I'm smart. Most people here are smart. But protections still matter.

What you're saying is I don't want to wear a seatbelt when driving my car. Sure that is your choice - but I think it is a very foolish one.

<comment><USER7> >What you're saying is I don't want to wear a seatbelt when driving my car.

As others have said there may be more apt analogies...sticking with the car theme, it may be closer to a market where you buy a Ford and then you can only fill your Ford up with Ford gas from a Ford gas station.

That market doesn't exist for clear cut reasons, but if it did you can bet Ford and other car manufacturers would claim the same thing, that limiting Ford owners to using Ford gas is for their safety, if Ford owners started putting gas into their Ford from a 3rd party, there could be all kinds of harmful additives or other quality issues with the gas that will damage the Ford. Of course Ford won't mention on their tax to "Ford gas suppliers" (of 33%) for access to the Ford car market.

<comment><USER8> I worked in the computer printer industry a ways back. The printer companies tried to make this argument with respect to blocking generic ink cartridges from being used on their printers. They argued that they needed to limit to the manufactuerer's cartridges to guarantee a good user experience.

<comment><USER9> The scary thing is that these companies aren't simply being disingenuous - they earnestly believe this.

A company takes for granted that they are good actors, and that their customers' interests are perfectly aligned with their own. With those assertions, increasing their control can only mean a better ability to make things good/safe/simple for their customers.

But that is an authoritarian delusion. Because real difficulty arises out of cross-party emergent complexity - illegible and unmanageable by any single entity. And the road to hell is paved with good intentions. This is blatantly obvious when you, as an individual actor, eventually end up at odds with whatever authoritarian scheme they've implemented - wishing to do something simple that you've personally judged as good/safe, but it's impossible to convince that centralized controller to understand / approve it.

In the real (multi-actor) world, we acknowledge that interests diverge on either side of a transaction. Someone who has bought a printer is then an individual participant in the ink market. Someone who buys a pocket computer wants that computer to act for _their own_ interest - not for it to be beholden to the whims of the company who made it.

Unfortunately, always-on communication, the difficulty of reverse engineering, and overbearing copyright law have allowed these companies to double down on overarching control rather than allowing reasonable demarcation points. Apple could straightforwardly create an app sandbox that would allow running fully untrusted code with fine-grained capabilities, unilaterally design it to not have the vulnerabilities that the Web continues to have (eg fingerprinting), and allow sideloading after appropriate warnings. And lest you think I'm being partisan here, the same exact thing applies to Google's general insistence that sideloaded apps are less safe.

But it's much simpler and more lucrative to double down on authoritarian control until they're forced to create those demarc points, either by direct legislation or by consumer demand - eg if this recent censorship trend eventually pushes them to prohibit secure communication apps in their central stores.

<comment><USER10> Well put!

Bad intentions are not necessary to build an authoritarian system. All it takes is enough good-intentioned people being unaware of the system they are building and their role in it.

<comment><USER9> Being aware of the system itself doesn't even capture it. People need to be aware of the system's effects, _from the marginalized perspective_.

<comment><USER10> Right. It's not enough to be aware that there _is_ a system if you remain unaware of its shape, who it excludes, etc.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER11> I ran a website that I first coded when I was 14-15, then kept improving over the years. It was for amateur electronic music producers to upload their tracks and after a few years there were several thousand active users, generating ~$400/month in AdSense.

One day a relatively famous DJ tweeted a link to a song on the website, and that day alone generated close to $300, so 19 year old me thought he was about to earn his first $1000 in one month from a website! But Google decided to block the account because I guess that spike in traffic was too much, even though it all came from Twitter...

So suddenly I was left with this website I had invested hundreds of hours in, and no way to monetise it. I tried a few other ad networks but they all seemed really dodgy and in the end decided to leave it with no ads.

There really needs to be more regulation in this space.

<comment><USER12> I also developed a website young (mid teens), which was essentially a "beautiful/unique website ranking" based on visitor submissions and upvote/downvote system. I had the essential pieces done and launched the website, super excited as my first real project.

I decided to toss on Google AdSense to see if I could potentially monetize the website by putting a single picture advertisement on the right side of the website. I was starting to generate some money (small, but exciting for a young developer). I was talking to my high school friend about what I was doing and how AdSense worked. Unbeknownst to me, he later visited my website and clicked the ads repeatedly expecting to make me hundreds of dollars... well, my account was shut down.

I tried to plead my case, Google didn't care at all. I was "banned" and a small fish. Years later (in my early 20's) I considered revisiting the idea of monetizing a site I had for an online community. I tried to appeal to Google again lifting the ban and was denied.

I was effectively banned for life from using Google AdSense as a young teen because of a friend "trying to make me rich" without him knowing the repercussions. I know there are alternatives to Google AdSense, however, Google was the one that payed the best. Still irks me to this day when I think about it...

<comment><USER13> How is this system immune to me clicking on an _enemy website 's_ ads 100's of times to get them banned from AdWords?

<comment><USER14> Nothing. If anything, I'm feeling like we should create bots, browser extensions that repeatedly do this and cause massive havoc on their system until they listen and start figuring out better ways to fix their system. Folks are not fighting back. I'm not into ads and have never cared about using them to monetize, but if I did and they took my money. It's war.

<comment><USER15> Related idea: [https://adnauseam.io](https://adnauseam.io)

</comment></comment></comment></comment></comment><comment><USER16> We were banned from the Play Store for violation of their Impersonation policy in mid July after publishing an update. We just got reinstated last week. During the course of the lengthy appeal I had an unshakable feeling I was up against The System™. I still believe I was communicating with a bot and not an actual human being — I refuse to accept a rational human being will behave the way Bob from Google did.

It's such a stark contrast to developing a web app which you can _freely_ publish. When did thing go so horribly wrong?

<comment><USER17> >When did thing go so horribly wrong?

When every company and their dog decided their content needs an app. Instead of using the nicely standardized thing called http and web browsers.

That moved us from http straight to corporate technical fiefdoms with no control.

<comment><USER18> I've been building apps for Windows for over a decade (we used to call them programs or software) and this isn't exactly a problem there. The problem is strong centralized App Store control, not native app development.

<comment><USER17> >I've been building apps for Windows for over a decade and this isn't exactly a problem there.

You 300% completely miss my point. Apps ARE the problem. Especially in the "for Windows" context. Now I need to install 30 different apps to access 20 different sites, and another 40 different apps on my other device that's in a different app eco system.

...versus standardized http and browsers. The entire app eco system in their specific walled incompatible gardens is top to bottom is toxic.

And that's not me pulling a stallman. Every fuckin website and company on every device wants me to install their own app. It's tedious AF at best

</comment></comment></comment></comment><comment><USER19> Hey Google! Want to know why your cloud service is trailing behind AWS & Azure? This is why ...

When you erode trust in your consumer and developer services, don't expect us to sign up for your enterprise services.

<comment><USER20> Well, I did try to fix my Amazon packages being delivered to wrong address. There's simply no way to give that feedback, yet alone receive a response.

<comment><USER21> You can call customer service and talk to a person at Amazon

<comment><USER22> Yea amazon support on the phone has always helped me out when there were shipping issues. Even when someone literally just ripped open a package and stole the contents, the lady on the phone at amazon was courteous and helped me out.

</comment></comment></comment></comment><comment><USER23> We were suspended once for serving deceptive ads. Yet the only ad network we use is Google Adsense. We had to remove Google Ads to be allowed back in.

<comment><USER24> Ah, the ol' "Do as we say and not as we do" clause by Google, huh.

<comment><USER25> Pretty sure the latest iteration of mobile search result ads on google.com would get banned by google

</comment></comment></comment><comment><USER26> The nasty part with those sudden removal/bans from AppStore's/ services is that they say: You've violated something. You're blocked. You know why!

Imagine going with that approach to a child...

Without explaining or suggesting the rationale it's closer to very dark dictatorship instead of providing something closer to a decent legal system where you can appeal and a system that should make justice.

With those companies it's more like a field trial.

<comment><USER27> It reminds me of The Trial by Kafka.

<comment><USER28> Who would've thought that one day we'd be thinking about the likes of Apple and Google in the same way as Kafka, and one has to imagine many others, thought about the bureaucracy of the Dual Monarchy.

</comment></comment></comment><comment><USER29> The Google and Apple app stores and support services ought to be regulated as public utilities. Because they effectively constitute a duopoly regarding apps for mobile devices.

That would prevent them from arbitrarily refusing to provide services and list apps in their stores. They could refuse, but only for permitted reasons, and with a clear appeal process.

The Public Utility Commission of Texas has a pretty clear explanation.[0] The top DDG hit was an ancient law review.[1] It's probably outdated, but makes an interesting read.

0) [https://www.puc.texas.gov/consumer/complaint/Rights.aspx](https://www.puc.texas.gov/consumer/complaint/Rights.aspx)

1) [https://openscholarship.wustl.edu/cgi/viewcontent.cgi?articl...](https://openscholarship.wustl.edu/cgi/viewcontent.cgi?article=4595&context=law_lawreview)

Edit: I mean, whether you're a residential customer or a business, public utilities (electricity, water, sewer, garbage, police, ...) can't arbitrarily refuse service.

<comment><USER30> The Google and Apple App Stores generate ~$100 billion in annual revenue combined, and growing at about 25% per year. The App Stores are the greatest software distribution and monetization platforms ever created, second perhaps only to "The Internet" as a whole.

Regulating the App Stores as some sort of utility sounds like the perfect way to stifle growth and make it _more_ difficult and expensive to publish on the App Store, which would hit small developers in particular.

Every percentage point reduction in the growth of these stores at this point is basically $1 billion taken out of developers' pockets.

<comment><USER31> ...until it's your app that has been removed, your company that is going out of business, and the response from the rest of the technological world is, "Eh, collateral damage. Too bad."

<comment><USER30> You're right, some businesses have probably gone under because of a bad wrap in the App Store review.

How many billions in revenue would you estimate?

The world is very rarely perfect. The proposed "common carrier" cure in this case is orders of magnitude worse than the disease.

<comment><USER31> I've been reading naval history lately. The thing that strikes me most is that the benefits, such as they are, of war (or in this case, app store review non- support) are collective, but the costs are paid individually.

</comment></comment></comment></comment></comment><comment><USER32> I'd suspect a competitor flagged your app somehow. This seems to be a trending dark pattern. Across a lot of competitive platforms - Amazon Sellers, App Store, Play Store - even social media people are flagging content as abusive to hurt competing brands.

Since normal support channels don't work, maybe report this to a bug bounty - this would be considered a type of social hack, right? Someone or something convinced their app review system to flag your apps and eventually have them removed.

<comment><USER33> From my experience with bug bounties, if it's not on the OWASP TOP10, they'll kick, stamp, scream and fight -- even if you say "I don't want the bounty, I just want this bug fixed".

(backstory: found a bug in Twitter which disclosed DMs. Reported it, Twitter engineer had a raging tantrum on Hackerone, H1 (I assume) mistook his messages for mine and banned me from the site. Found out a mutual was a Twitter engineer, sent him the POC. A few days later, fixed)

<comment><USER34> Please don't abbreviate as H1. It messes up my pronunciation of the Hackerone program. Hackerone rhymes with macaroni.

<comment><USER35> Much like CoreOS rhymes with Oreos.

</comment></comment></comment></comment><comment><USER36> I propose a new heuristic called "The HN PR Law" or something to that effect: no response from a company on a negative PR incident should be taken seriously after an article on said incident hits the front page of HN.

Given Google's track record and the ranking of this post, they'll probably reinstate the app within a few hours, and I propose that we act as if they had not - only acting on issues after they have been exposed to a massive audience signals a desire for public positive perception without any actual care for users, and users shouldn't have to go to social media to get their problems solved.

Edit: a bit late, but I called it: [https://news.ycombinator.com/item?id=20829484](https://news.ycombinator.com/item?id=20829484)

Edit^2: technically, Google hasn't reinstated the app yet, but I think that the idea still stands

<comment><USER37> I like Apple's approach. When some scammy dev ran to the press with a sob story, Apple would expose all the shady shit the dev was doing. Sorry, but 99% of these whiney stories are the developer's fault. Don't violate the terms of service, and don't be shady. It's not that hard.

<comment><USER38> Maybe Google can´t do that because they are the ones doing the scummy thing.

I personally know 2 cases of people banned from Google, in one case they were actually infringement (they made an app using copyrighted characters), and in the other it was the same case stated elsewhere - grandmother clicked repeatedly on the ads thinking she was helping her grandson, and he got banned from AdSense forever.

</comment></comment></comment><comment><USER39> Only 12 hours between an email and the account termination, with no real interaction and no way to change what seems not to be a serious problem.

That would change the time gap during responsible disclosure, Alphabet/Google is changing its metrics. I mean why only small developers would have to be mistreated.

If they play it that way, Android developers community can also report platform bugs to them - and go full disclosure (report the bug publicly) within 12 hours.

<comment><USER40> 12:34 - I have found a security vulnerability

12:47 - I noticed you haven't fixed it yet, if you don't do it soon I'll go public

14:13 - I noticed you still haven't fixed it, please hurry, if you don't do it soon I'll go public

14:15 - I noticed you haven't fixed the bug yet, if you don't do it soon I'll go public

16:55 - Since you still haven't fixed this. I've made this public on my blog. Enjoy the consequences!

<comment><USER41> Based on the article even if Google replied you'd still be in line to disclose regardless, this poor developer's appeals were rejected, I'm not convinced a human ever read them on the way down.

</comment></comment></comment><comment><USER42> Everyone in this thread is bashing Google for their evil-ness, but I had the exact same experience with the iOS AppStore: Apple just claimed I broke some policy without further details, but I was pretty sure this was not the case. Upon asking for clarification, they basically sent the same paragraph again. I ended up sending an "update" with some random changes on things related to said policy (without actually changing functionality) and it somehow got approved.

If you think about it, it's impossible to fully check an app for compliance. That's probably why the enforcement appears so aimless and fuzzy from the outside.

<comment><USER41> The enforcement may not appear so aimless and fuzzy if they could be bothered to put more effort into the justification then a canned RTFM reply.

</comment></comment><comment><USER43> The company I work for has banned the use of Google Cloud due to how they treat their Play Store developers, in particular that there never seems to be any human being that you can talk to and find out what you need to do to fix the situation. We do not want the same to occur to our servers or if there is an overflow from Play Store ban to GCP etc.

<comment><USER44> This is why I moved my clients off G-Suite and onto Zoho. And it's why where possible, I advise people to build clean web-based mobile apps which do not require a "store".

Since we have no practical alternative to Play Store and Apple Store for native phone apps, we'll just have to settle for slightly fewer features and slightly less performance with non-native apps. (And no, sideloading isn't an option. Most users are barely able to install a native app via a link directly to their store.)

For Google, it's simply not worth their time to maintain a staff of humans to prevent these false negatives. They are not committed to the app developers just as they are not committed to their non-government G-Suite clients. They are committed to their primary revenue streams. And the reason they can simply not care about some human losses (stories like TFA) is because they are a monopoly when it comes to Android apps. And while Amazon is not an admirable company at all (based on how it treats its sellers or low level employees), their cloud business seems to have more human oversight - or at least a less heavy-handed automated banning system.

Google's behavior will continue to be profitable enough that they won't change it... for many years, or until the regulators come at them. Since the US regulators are now almost entirely corporate lobbyists themselves, we'll have to depend on the EU to fight it. (And since the EU is becoming corporatized as well, the window of opportunity is shrinking.)

</comment></comment><comment><USER45> Wow the same thing happened to me[1], luckily I was awake by chance and took action after the first email, scary to think that if I was just offline for a few days my whole account could have been banned with no recourse..

[1]My app [https://play.google.com/store/apps/details?id=com.lpellis.se...](https://play.google.com/store/apps/details?id=com.lpellis.sensorlab) was on the store for several years at the time, it was called 'Android Sensors'. (Google had issue with the name, I had to rename it)

@lladnar does your app maybe have 'Android' in the name? I believe that was the issue they had with mine, I dont even think humans are in the loop at all here to give feedback.

<comment><USER46> If they told you what you had done to violate policies and what you had to do to be in compliance again, you were a huge step ahead of this guy!

</comment></comment><comment><USER47> Wow, I can't believe they suspended Mon transit! It's been a while since I lived in Montreal, but it was super helpful back then, showing the next bus times and the number of available public bike system bikes at nearby stations.

Sorry to hear that, Mathieu, and best of luck!

</comment><comment><USER48> Seems like a good time to bring it up again -- 18 years ago my Google ads account was locked for reasons unknown to me. I'm still waiting for an answer on my appeal. Yes, I was one of their first few thousand advertisers. Even back then they treated us like crap when they could have easily had a human review every decision.

</comment><comment><USER49> We has a small niche product in Google Play, worked 100% offline, so quite secure for the user privacy and so on, had ratings of about 3.7. The service had generated about $30.000 and would have generated another $30.000 in it's lifetime, unless Google had, quite unjustly, taken it out spring 2019. When we tried to discuss about it, we got what we understood was a threat to close our account. Obviously we talked to some person, I wonder if he had been told to treat us like sh __or if there was some other reason. Obviously, for the next apps, we are thinking furiously on how to not be dependent on app stores.

</comment><comment><USER50> Looking at this app, it's an absolute hidden gem of how amazing Android is as well.

The main app can have third party extensions provided just by installing more APKs. This is something I tried to explore quite a few years ago when I last had an Android phone, but seeing such a polished app which achieves it is nice.

</comment><comment><USER51> My game ( [https://play.google.com/store/apps/details?id=com.nkcss.shad...](https://play.google.com/store/apps/details?id=com.nkcss.shadesandhues_agameofcolorgradients) ) was suspended because I did not have a link to my privacy policy in the app (required when you serve ads for some reason). My game only shows an ad every other time you abort a game or ask for a hint, if you just play without hints/aborting games, you'll never see an ad. It was up for about 6 months, ~1000 installs, then it was taken offline. I was busy for another 6-9 months, after digging into the reason why it was taken down, I created a privacy policy page, added a link in the app to the page and re-submitted it, then appealed/asked for another review on the play store and admob and after a few days, everything was restored again.

It can be a pain to find out the exact reason, by in my case, after fixing what they wanted to have changed, it was all ok.

<comment><USER52> Meanwhile your ad network library was mining data in the background (they do that even if you don't show the ad) of users without telling them in privacy policy. You're not the victim in your case.

<comment><USER53> Would not it be better to make it difficult to collect data (e.g. show a popup asking access to those data every time) instead of just requiring a privacy policy that nobody reads?

<comment><USER52> Both is being done of course.

However, I'd love to hear your solution on how to prevent data collection by the very app you're running on your pocket computer.

</comment></comment></comment></comment><comment><USER54> It looks like @GooglePlayDev responded on Twitter 4h ago.

[https://twitter.com/GooglePlayDev/status/1166999937156100096](https://twitter.com/GooglePlayDev/status/1166999937156100096)

Good luck to the developer!

</comment><comment><USER55> I have a strong feeling that this will soon happen to my Play Store account. I did some very lax hobby development many years ago (my biggest app was also transit related!), and my account has basically been inactive with just a few apps. I guess its enough that 1 human somewhere reports my apps for anything and Im gone from the Play Store, which would be a bit sad. I still remember thinking it was so awesome that developing for android was so simple, and free!

That seems to be disappearing.

</comment><comment><USER56> Seems to me that Google is turning on a lot of deep learning models in production which aren't production ready.

Search has gone to shit recently.

Image search is hot garbage for anything but images with well known people / places / things.

You can't reliably filter or sort news results by date.

YouTube is filtering pro LGBT content but allowing weird Eastern European pedo videos.

The play store is apparently moderated by bots and doesn't have rules or policies in place about giving devs time to respond.

Something has changed dramatically at the company in the last 5 years. Would be interesting to zero in on it.

<comment><USER57> I searched for an error message yesterday and Search removed 18 of the 20 keywords (they are all scratched out as 'missing'). The only remaining keywords were for the platform I had the error on. Thousands of results that were all completely irrelevant. I was completely stunned how something I rely on could suddenly do that. What is the point?

Google's monopoly has gotten to the point where they do not care how their products perform, just so long as the money continues to rain in.

<comment><USER58> > (they are all scratched out as 'missing')

The 'missing' notes are incredibly condescending. Not only are the results irrelevant/incorrect, they also had to arrogantly point out exactly how they are choosing to ignore the user's request.

<comment><USER57> Amen to that. I got to where I am as a sysadmin by knowing how to filter out keywords to make my search specific. Then Google throw all that away and decide for me what I want to search for. No Google, you don't tell me what to do.

<comment><USER58> Animaniacs Episode 7, "Piano Rag":

        [The Warners try to hide form Dr, Scratchandsniff in
         a piano recital, where Tymannini is about to perform]

        TYMP: Franz Schubert intended the scherzo
              to reflect the struggle between intellect
              and the creative process.
        TYMP: However, Schubert was simply incapable
              of expressing such delicate nuance.
              But, thanks to *my* genius,
              I will perform this great work,
              *not* as the composer wrote it,
              but as he *intended*.

DWIM ("Do What I Mean")[1] has always been impossible; it's a fallacious belief that what a user _intended_ is different from what they actually said, and that this intent can somehow be divined form a few words, typos, etc.

> as a sysadmin

It doesn't even require any advanced technical knowledge. Most people understand basic keyword searching. Over the last ~6-12 months, I've seen a wide variety of people complain about Google ignoring their search terms.

[1] [https://news.ycombinator.com/item?id=15628014](https://news.ycombinator.com/item?id=15628014)

</comment></comment></comment></comment></comment><comment><USER59> We should all make a concerted effort to get people to stop using Google Play. There are multiple websites which offer apps, including ones where search can be automated. The default "app management app" should be something which is based on multiple source, independent of each others and not Google controlled.

I realize that might be very hard; and if you're logged into a Google account on your phone (which you really shouldn't be!) it's very tempting to use Google Play, so what I suggested requires either self-discipline or rooting devices to make them not default to Google Play. On the other hand, maybe the US sanctions against Huawei might actually make that a viable option? Time will tell.

Personally, I use APKPure instead of Google Play; they have an app of their own. Not the best solution - and certainly doesn't solve the article author's problem - but at least I don't have worry about Google's heavy-handed tactics so much.

</comment><comment><USER60> Perhaps a sneaky competitor exploited some flaw in the app reporting process to knock the app off the store?

<comment><USER61> That explains Goog's two word explanation to shutting them down.

</comment></comment><comment><USER62> This is my personal nightmare as a android developer, and knowing google it's not a matter of "if" but rather "when".

(Google did remove my app from store once for not providing a link to a privacy policy document, abruptly, with no warning and notifying me post- factum, reading other horror stories I consider myself lucky)

<comment><USER63> Google has lost any connection to their once oh so brightly glowing halo. As a developer I am steering clear of Google Cloud partly because of all their crappy way of dealing with humans. AWS and Azure just make more sense down here in Melbourne as well.

</comment></comment><comment><USER64> I have a very similar story. I had an AdMod ad running on my free app, and all of a sudden the account was deleted in a few hours just before it was time to get my earnings. Google had no responses and were unreachable and I just gave up.

After this I found this has happened to 1000s of people and I realize how massively powerful this company is and they're using AI/bots to make decisions. I've now moved away from Google as much as I can and I warn others of their monopolistic practices and lack of care toward customers.

</comment><comment><USER65> What we have is a giant GAN - google's AI trying to spot the real bad actors from not, against the bad actors AI trying to fool the google AI.

I suspect your experience is a sign that the bad actors are getting the upper hand and one of the problems in this space is human intervention can't really scale against machines.

It could be a fight for survival for these companies whose huge market cap is based on the enormous scaling benefits of automation - however if it turns out that the automation processes can't successfully scale once automated fraud is taken into account then the only solution might be to descale the operation - making them vulnerable to traditional companies.

</comment><comment><USER66> > Sun, Aug 25, 05:21 PM EDT: Google Play Team > After reviewing your appeal, > we have confirmed our initial decision and will not be able to reinstate > your developer account.

I think I might of missed it but, did they _even_ appeal? The hell is Google doing saying they did if they didn't? I would sure hope this is some sort of grounds of defamation or some related law, claiming someone said something they didn't even say is pretty awful. I wish people would start suing the hell out of Google for their obviously ridiculous hostile behavior, looks like we have dozens upon dozens of companies that could band together too.

</comment><comment><USER67> Google's App Store is failing miserably with both Type 1 (false negative) and Type 2 (false positive) errors. As a result, malware gets allowed in while reputable developers get kicked off.

And there's apparently no (real) appeal process. Once the robot decides it doesn't like you, you can't change its mind and it won't tell you why.

These problems are eminently fixable. But Google's app store desperately needs competition, some antitrust investigations, and probably some hefty class action judgments. Without those, Google has absolutely no motivation to fix the mess. With those motivations, Google could fix this overnight.

<comment><USER68> I think you meant to say -- Type 1 is a false positive, and type 2 is a false negative.

<comment><USER67> Yes. Thanks.

</comment></comment></comment><comment><USER69> I don't really see any mention of it, but do you at least have some idea of what may have triggered this issue? I see that your open-source Android app is serving ads. I'm also curious why your app isn't on F-Droid?

<comment><USER70> Seems it wasn't on F-Droid because it uses some Google Play Services (for maps, ads, location, etc), and nobody took the time to make a fork without those non-free dependencies.

[https://github.com/mtransitapps/mtransit-for- android/issues/...](https://github.com/mtransitapps/mtransit-for- android/issues/2)

</comment></comment><comment><USER71> We need something like "tenant rights" for online marketplaces in addition to legal protections similar to what happens with evictions. This will not be solved voluntarily by the "landlords."

</comment><comment><USER72> Earlier after certain amount of backlash Google employee reading HN used to help. Now I think this is also banned/discouraged by Google. Google New policy: Let's just ignore these type of posts and let it disappear from front page in few hours. What option developers or user's have ? Shun Android or Google services. I think for vast majority of developers and Users this not an option.

</comment><comment><USER14> Okay, what if I can bribe someone that works for Google reviewing apps to terminate a competing app? Folks were bribing T mobile employees to steal phone numbers so they can empty bank/crypto accounts. Folks were bribing employees that worked for background checking services to pull data so they can perform identity theft. I imagine folks that review apps for Google are not highly paid and since they rarely reply to you. Most app developers just quietly go away when such things happen.

</comment><comment><USER73> Guilty until you prove yourself innocent. It's efficient, but unethical and immoral.

Requiring large entities such as government or monopolies to consider you innocent until proven guilty in a 3rd party controlled system, such as a court, is a fundamentally important check on power.

</comment><comment><USER74> > 4 of my apps were reviewed and suspended on Friday ..

What were the other three?

</comment><comment><USER75> I'm guessing some lawyer at the Montreal transit authority decided to report that app for violating some kind of intellectual property. And, due to Google's consistent cover-their-asses policy (of Youtube fame), they decided to shut down that app.

</comment><comment><USER76> For what it's worth, I use this app on a daily basis and haven't found any deceptive behaviour. It's pretty annoying that now I have to download the APK from his website instead of the Play Store, so thanks for that Google.

</comment><comment><USER77> Mobile developer myself and I'm scared that this will happen to me, too. I have a >600k downloads open source app on the Play Store and I got 2 warnings for other apps within the last 8 years on the store without any explanation or what so ever. The non existent communication from Google really stinks.

</comment><comment><USER78> These "Google suspended my account" stories are all similar in that Google always refuses to provide any details about the supposed violation. Is there a good reason for this reticence, or are they intentionally vague just so you have no way to defend yourself?

</comment><comment><USER79> F-Droid becomes more and more popular.

<comment><USER80> Came here to suggest publishing the app on F-Droid as it is FOSS. An alternative is make a PWA instead of an app. Those cannot be banned by an 'App Store' (read: walled garden with one lunatic dictator being the gardener).

<comment><USER81> PWA = Progressive Web App ---"progressive" seems to mean it uses some relatively recent additions to browsers to make the app feel more like a native app.

(In case others didn't know either.)

<comment><USER82> "Progressive" in this case means it uses progressive enhancement: it'll work even if your browser doesn't have those additions (though QoL won't be as nice), and it also uses responsive design such that it's just as useful on desktop as on mobile.

The new Twitter is a good example of a PWA.

<comment><USER46> Viewing mostly on desktop, I hate the new twitter and wish the old one was back. It's a bunch of javascript moving things around instead of a plain old web page (how is twitter's content complex enough that it can't just be static html?), and due probably to some combination of privacy settings i have usually says "There has been an error try again" when i follow a link to a tweet, requiring me to hard-refresh the page (at which point it works).

So if that's a good example...

</comment></comment></comment></comment></comment><comment><USER83> "I don't _think_ my app is deceiving Google Play Store". I feel like there's more to this story.

<comment><USER84> If Google had provided details of what the violation was, he might be able to tell us about that part. One of the big problems is that they don't.

<comment><USER85> I wonder if the GDPR covers this under the right of explanation (if it happens to someone in the EU), or was the decision made against a non-human app who has no rights to violate?

</comment></comment></comment><comment><USER86> Google: Where we dont just close _our_ services.

</comment><comment><USER87> Low friction and no support ejection from app markets seems to be a necessary cost of the low-cost, low-friction entry that they allow, and the fact that action against app developers to recover costs due to abuses isn't easy. If we had more upfront costs (both directly to market operators and in surety bond) it would be practical to have a lot friendlier process in the event of apparent violation. But then, we'd have a lot fewer devs even able to get into app stores, and the vast majority of non-abusive developers would experience this as a pure burden. The few that get caught up incorrectly in policy violation scans would benefit (assuming they weren't kept off the market in the first place), and it would be more abstractly fair, but I'm not sure it would be a win for consumers _or_ developers on the whole

Which isn't to say it shouldn't be done: fairness is important, too. But there is a cost.

<comment><USER41> I'd be more then happy to pay a fee if it means an actual human, who actually had access to all the case information, would actually review the appeal and provide a detailed personalized account of my crimes.

As a bonus, if my appeal is found to be genuine and my account reinstated I'd like that fee refunded.

<comment><USER30> That's an interesting approach - not only do you not want to pay if you get the best possible result, you want to financially incentivize them to find something wrong!

<comment><USER87> Yeah, the perverse incentives of it is "pay if you want to challenge a violation" that get even worse if it is "get a refund if we agree with your challenge" are why it pretty much had to be "pay up front to get into the store".

Even were the store owner perfectly honorable in performing initial and appeal reviews, the perverse incentives would lead to a perception of unfairness.

</comment></comment></comment></comment><comment><USER88> I have a very similar problem with Google's Chrome store. I have a small open- source extension. Recently they started to send me notices that it is in violation of their policies. All my attempts to figure out what exactly I am doing wrong failed. I emailed multiple times. Finally, they just removed it from the store.

</comment><comment><USER89> So where does this stuff place Google in the moral spectrum?

        Obviously Good stuff: Firefighting, EMTs..
        working on cancer research, Doctors without Borders..
        NASA, Nat'l Park Service..
        EFF, Mozilla..
        the electric company
        $genericStartup, $genericFortune500
        drone programs
        Google (?)
        telemarketing
        patent trolling
        being Chapo's IT guy (voluntarily)
        running phone scams targeting old folks
        Obviously Bad stuff: running ransomware on hospitals

I mean, it's a big company, but stories like these are hardly _unusual_. I feel like bad customer service is maybe a feature by design.

</comment><comment><USER90> Automated ban-bots are probably unavoidable. What's evil is automated appeals, they almost invariably deny them. On Quora anybody can report anyone for harassment. And anyone does. You get a BNBR notification (Be Nice, Be respectful) and a little link to appeal.

Recently someone posted pretty clear proof of Quora employing an automated appeal denial process when they got denied an appeal for a comment _praising_ another user.

I don't know what the answer is here. I'm sure the EU or California will take the lead on the issue when it finally hits their Overton window.

</comment><comment><USER91> Our company had ~15 Google accounts shut down the other day due to apparently the content of our emails being flagged by some kind of automated curation system.

This happened without any warning.

The problem was rectified within 30 minutes of the incident occurring because we contacted support immediately. As soon as they looked over it, we were back online, so it can't have been too serious.

It feels like Google take internal company policies and apply it to all their customers.

Anyway, I'm glad I don't have my personal stuff hosted there anymore.

</comment><comment><USER92> A very cool thing to reflect on:

Valve held a tight leash on Steam for years. Games and apps had to be approved by Valve, and what they allowed was, at the very least, subjective.

After a while it began to gradually let go of control. Nowadays, there are just a few things that might get blocked and I haven't heard any more stories about developers who got blocked.

Funny thing is: Valve is privately owned, and Google is a public company. One should expect it to be the other way around.

</comment><comment><USER93> While I'm sure that buried in the TOS you can be banned at any time for any reason, and the sheer volume of apps they referee makes things difficult to have humans manage. The "right" thing to do here would be to at least provide some sort of substantiation of your assertion that it violates policy.

-App is asking for more permissions than it needs -App is violating privacy -App is direct copy of/ mimicking Core OS functionality -App is using non opensource code

etc.

They obfuscation of the reasons for the ban seem to me to be one of the following 1) laziness 2) malice 3) fear that it would somehow expose the methodology for finding the policy violations and create a cat and mouse game.

It seems like mobile development is becoming less and less an attractive platform to spend my cycles. There are basically 2 markets with millions of apps that already implement your idea in some form or fashion that are free or cheap. Meanwhile being a Luddite and writing enterprise code for business has consistently paid more each year I've done it.

</comment><comment><USER94> I'm developing a consumer facing service right now, and it's stories like this that steer me away from expending the effort to develop as an Android and iOS app. At least on the web we're not (entirely) beholden to a single company that can unilaterally remove you with no recourse.

</comment><comment><USER17> My money is on the gaming battery life thing triggering some automated test

Sorry to hear mate. Seems quite unreasonable

<comment><USER61> That does not explain why Goog doesn't treat people like humans.

If the app developer has been in good standing for years, and has a popular app, why not send them more information as to why they are in violation? And give them some time to fix it.

<comment><USER56> Because they're not using humans to do the reviews anymore. They're putting bots on the frontlines, then using humans to (maybe) handle appeals.

But those humans are probably undertrained, underpaid and have zero context for each of their 1k cases, so they default to accepting the bots judgement. Which in turn feedback to the bot, justifying it's actions.

<comment><USER14> Does matter, even if they used bots, The bot would detect something. The bot would go through some rules to determine what it would flag. The bot should report on it.

We detected something suspicious about your ads. We detected that you're abusing the battery life. We detected adult contect.

Give them something! Even a clue!

<comment><USER56> The code is probably in place to do that, but it probably errors out and no one who needs access to those logs has access or knowledge of them, and the humans handling appeals are probably siloed off from the bots and devs, so they think things are fine, and the devs think things are fine, since no one is complaining.

</comment></comment></comment></comment></comment><comment><USER95> IMHO the title should say ad-supported instead of free.

</comment><comment><USER96> Surprisingly he never mentioned what the actual violation was, nor of him asking what it was.

<comment><USER97> Yeah, there's a bit of a fog around this. He sets it up very nicely and gets the sympathetic emotions going and kind of sneaks in "4 similar apps" were the cause of the account suspension. I have no doubts that MonTransit is above board, it looks great, but about those other "similar apps"... no detail provided

<comment><USER98> He also doesn't mention where and how he gets the data from. But pitchforks are already out so who cares.

</comment></comment></comment><comment><USER20> As far as I understand, author's account was blocked, but not necessarily related to app in question. Author said that there were other apps, one "not being in production", and didn't mention what those apps did.

</comment><comment><USER99> That's why I don't want to even go into mobile development - pretty much the whole market is gated by two oligopolists who have random capricious policies and can - and do! - destroy thousands of hours of your work without even properly stating a reason and without any recourse. You work for years, you put your thought and love into something, you release it, people are happy to use it - and then some (probably severely underpaid and overworked) anonymous, or ever worse, a mindless misconfigured ML routine, pushes a button and poof! - it's all gone. That's an insane world to live in.

</comment><comment><USER100> Hi all, I'm the developer of the app in question. I have regained access to the Google Play Console. Working on publishing the new apps. More details in updated Medium article. Thanks

<comment><USER101> Can you give us more details? Which icon was hidden? And how?

</comment></comment><comment><USER102> am i the only one skeptical here? the guy put 5000 hours and is paying for advertising but the app is totally free? he doesnt say anything about what could have been flagged as deceptive.

</comment><comment> Paul-ish Perhaps there is room for new companies that provide quasi-legal services that vet apps before they are sent to the play store, to make sure their customers apps are in compliance. Ideally their experience seeing many apps would help them understand what gets removed and what doesn't. In cases like this, where the developer gets a notification about non-compliance, they would also take the app down ASAP so the developer can work things out before Google removes them from the store.

</comment><comment><USER103> One golden rule of businesses (or any investments) is that you should not put your eggs to single basket. With development of mobile apps you just do it, you are totally in mercy of a couple of gatekeepers, like it or not. I would rather focus on recognising and mitigating these risks, and make sure that you do have alternatives. Do not buy into some corporation's promises of not to be evil. They all are. Sorry you had to learn it in hard way, but better late than never.

</comment><comment><USER104> Was there Facebook Audience Network SDK in this open source app?

<comment><USER105> It's on GitHub in case you'd like to answer that question by source inspection. I'm not familiar with Android so I can't do so for you, sorry:

[https://mtransitapps.github.io/](https://mtransitapps.github.io/)

</comment></comment><comment><USER106> It honestly amazes me that people didn't think this wouldn't happen. When you have a company own a market, they simply dictate on a whim who gets access to it.

It's the same with Steam. The more you move to the cloud, the more you give companies control over your goods and services.

Phones should've remained open the day they were made. You should never been banned from administrative control of your device.

</comment><comment><USER107> In a few weeks, an app offering the exact service as the removed one of yours will appear on Google Play, except now there will be a fee

</comment><comment><USER108> This kind of story makes me favor a blend of the policy proposals of Andrew Yang and Elizabeth Warren. We recognize that the current automated economy has hurt the little person (Yang), but, at the same time, recognize that a few super large corporations have created this situation (Warren).

So, I propose that all US residents receive $1000 a month directly from Google.

</comment><comment><USER109> The timing is pretty brutal and outrageous but other than that, unless there are indeed no violations of the policies, I have no issues with an app getting kicked out.

It is hard to have any opinion on the accuracy of these strikes though, since almost all the times devs believe that whatever they do is legit.

<comment><USER110> It's pretty easy for the developer to believe "whatever they do is legit" when they aren't shown an example of how they violated the policy.

Could you imagine a world where a traffic cop pulled you over, issued you a ticket, and when you asked what you did wrong they said "You violated the policies regarding safe driving and expected behaviors".

Your license is now revoked. All the information required has been provided to you.

So maybe you are a terrible driver who deserves to lose a license, or maybe you just did something like parking in front of a mail box, a behavior you would adjust if you realized it was against the rules.

No one should be expected to have a perfect mental map of the extremely long terms and conditions agreements and how they map to every real word situation.

<comment><USER109> I agree that they should do a better job at explaining issues.

My understanding is that at first the number of apps where the violation is unclear was so low that it was not worth it.

IIRC Google has announced that they are going to provide more info in the future on what the issues are.

however

the link in the article is pretty clear : [https://play.google.com/about/privacy-security- deception/dec...](https://play.google.com/about/privacy-security- deception/deceptive-behavior/#!?zippy_activeEl=dishonest-behavior#dishonest- behavior)

(even though it does not mention which part of the app exactly violates these rules)

And I disagree on the fact that the TOS are unreadable : [https://play.google.com/about/developer-content- policy/#!?mo...](https://play.google.com/about/developer-content- policy/#!?modal_active=none)

Google could improve devs relationships for sure, but these are pretty clear.

FWIW, I had several strikes as well, because of a permission used by an unpublished app on a beta channel :/. The whole process of getting the account reinstated was pretty easy in that case.

I am kinda curious to scrape the op app and look at what might have got them in trouble, I might give it a go if I have enough time.

<comment><USER110> Thank you, that's good info. Please report back if you have time to scrape the app and give us that perspective.

Is it easy to scrape the app now that it isn't in the store anymore?

I have a hunch the violation will be something to do with him trying to cut costs on the Google Places API.

<comment><USER109> By scrape I meant that there are some sites allowing to download apks from Google play They usually cache the apks for a couple of days so that would have been a way to download it.

And after that, I would have looked at the app manifest (it contains all the permissions that the app might want to use, so there might be some interesting stuff there) and maybe use it.

I don't plan to look at the bytecode for shady behavior .. that's not my forte and I am not interested enough to spend one week looking at bytecode.

edit : I have just opened the article again to get the app package name .. looks like it got reinstated. But no comment of the author as of why it was removed.

<comment><USER110> Ya, looks like it got updated again and he doesn't have to make any changes.

Google thinking he was in violation was an error on their part.

</comment></comment></comment></comment></comment></comment><comment><USER111> So, with the US tradewar on China, the big Chinese companies are forced to roll out an os and app store. They cater to a large internal market augmented by a large market in India.

The sanctions could potentially kill Android, I'm thinking. At least with how Alphabet is "curating" it.

</comment><comment><USER112> The problem is multi fold, its completely ridiculous on them banning this app and letting thousands of piracy apps (free movies, live streaming ) etc etc.. Guess there is a genuine bias from AI to scrap out the actual apps that actually helps people legally than the illegal ones..

<comment><USER113> I think, they are already banning many of the malicious apps. As nobody cares about those apps, these removals don't make any news and therefore it seems google is not punishing malicious apps.

</comment></comment><comment><USER114> All apps are still hosted here if any have interest: [https://www.apkturbo.com/apps/montransit/org.mtransit.androi...](https://www.apkturbo.com/apps/montransit/org.mtransit.android/)

<comment><USER115> Or by the author himself at the end of TFA: [https://mtransitapps.github.io/apk/](https://mtransitapps.github.io/apk/)

</comment></comment><comment><USER116> Wonder what's going to happen to this blog post when Medium goes out of business?

</comment><comment><USER117> You ensure service by signing a mutual contract where breaking the contract hurts the party that broke it. Expecting the same from the one-sided agreement you sign with Google is like believing in the Easter Bunny.

</comment><comment><USER118> I know there are several people in this discussion advocating for regulation... but surely there are legal remedies for this? Why not just find a way to make them liable for this?

</comment><comment><USER119> I run a paid Google Chrome extension - I'm terrified there's going to be similar stories for Chrome extensions since this year Google introduced a review process.

</comment><comment><USER120> I'm starting to wonder, is google play better for app security since it helps to authenticate apps?

Microsoft can sign windows "apps" without an app store.

</comment><comment><USER121> Someone at google must have really liked their Kafka, but accidentally took it as a guide rather than a warning. Oops!

</comment><comment><USER122> good pitch post, nice to see google dev account responding on twitter and maybe some escalation, but reading the post -- did you even consider what the deceptive behaviour might be even if barely a case for it? Mimicing functionality from other apps? Does STM or whatever transit in Montreal have an official app? While it's good to have competition and variety in the market for transit apps etc, seems like a lot of municipalities would tend to have an 'official' app these days or recommend preferred ones, so maybe there's a push as far as app store etc to go towards the official ones and maybe the STM reported you or someone downloaded and was mad it wasn't the real one etc etc. Sorry I didn't see your app before it got taken down/am not familiar with it but reading your post and started to wonder. No offense. Transit apps and public service sort of space for apps is a tricky space in modern day

<comment><USER123> The real problem isn't that Google may have an opinion that the app is deceptive or not, one that we may even share if we knew all the details. The real problem is that the app developer doesn't even _know_ , and had what appears to have been roughly a two-hour window to nominally fix the problem before being booted off the service.

</comment></comment><comment><USER124> That's why i'm full for PWA. I never had a ban, but I got apps disabled too.

</comment><comment><USER125> Yeah, there's definitely a headache to running a marketplace like these.

</comment><comment><USER61> Shutup! I heard they pay well. /s

Programmers here at HN could stop this behavior in a minute. They do not care about you.

<comment><USER61> Downvotes incoming!

Other explanations from Google programmers: "the work is interesting"

<comment><USER126> Not having worked at Google yet, but having plenty of experience with other big companies: things are not black and white. There is no "evil" per se, it's just a shit load of conflicting interests, different priorities and different pressures at play: nobody wakes up in the morning and decides "I'm gonna fuck up this webmasters day today for the sake of it". It just happens that some innocent people end up in an unfortunate corner case of a tool trying to protect against scammers.

I can totally understand how in a flagging tool with a false positive rate of 0.01% some innocent publisher got caught by mistake, and got its app banned. Is that publisher important enough so it's worth manual review time? What's the risk to expose the internal heuristics to make EVERYBODY happy? Oh, wait, you can't make EVERYBODY Happy.

I can tell you this shit happens EVERYWHERE. It's just the way the law of large numbers works against you. If you want to make ALL your customers happy, your only choice is a bespoke dev type of thing, because you then to deeply cater to your each customer.

It's the same shit everywhere, and you're interested in working on large bits, it doesn't really matter where you go. Google, FB, Amazon, everywhere you're going to have people that are unhappy with your product/service/decisions. So if it's the same, why not go to the ones that pay better/got more perks/look best on your CV?

<comment><USER127> This is not about making everybody happy. This is about completely wrong behaviour: You can suspend scammers fast, but if you also catch legitimate developers with your scam protection you have to have processes in place to give 1. valid explanations why 2. time to react, at least retroactively 3. a legitimate possibility to appeal. Google does none of that, fixing that process is possible and has nothing to do with a law of big numbers or the difficulty of making everybody happy. The adsense scam Google is running, if the description provided here is correct, is just fraud.

Both is just Google being evil.

> _nobody wakes up in the morning and decides "I'm gonna fuck up this > webmasters day today for the sake of it"_

You can be sure that happens as well in every organization of that size. It's just another reason you have to have a proper appeal process in place, not the automatic dismissal system Google has.

<comment><USER126> How do you know who is a legitimate dev and who is a scammer posing as a legitimate dev, to know when to work with someone, or to withhold information that would expose secret filters that you use?

Mind, it's not that this dev got one app banned, he got ALL of them banned. There is an appeal process when you gone one banned, but he got multiple violations. He got all the violations in a span of hours, so he got unlucky to be a corner case that the regular appeal process no longer works for him. So you might argue that the appeal process is not flexible enough, but then the question is what would be flexible enough? So no matter for how long you're tweaking it, you're gonna have corner cases that will make people unhappy.

On the adsense scam, I hear the reports, but I've not seen Google lose in a small-claims court yet. Given the amount of money Google makes on there, I doubt that the revenue from running such a scam would even register as a blip, never mind the reputation hit they would take should it be ever proved true.

<comment><USER128> > [...] to withhold information that would expose _secret filters_ that you > use?

It makes no sense to me that these filters are such a secret. Either you are doing something to deceive your users or you are not. Are you advising that we should just blindly trust an opaque set of rules that a giant corporation, whose interests are not aligned with our own, can use to ban anyone with no oversight at all?

<comment><USER126> Play Store developers are not users - they are customers for the Play Store product. Nobody is forcing them to develop for Play Store; or to use Ad Sense or any other Google product.

When you're starting your relationship, it's very clear (in the ToS) that they can reject your apps or terminate the relationship however they choose. If they would start quitting developing for Play Store because of these opaque rules, perhaps Google will listen to them. But reality shows that this problem doesn't happen often enough, so the opaque filters work as intended.

So yes, I advise that, if you don't like the rules of Google, don't go play with them. It's the only thing that can change the rules of Google. (and FB, Amazon, etc).

<comment><USER128> When I said "users", I was referring to their rationale for killing off this developer's account and applications. One of the cited policies was Violation of Deceptive Behavior, which referred to users.

> So yes, I advise that, if you don't like the rules of Google, don't go play > with them. It's the only thing that can change the rules of Google. (and FB, > Amazon, etc).

If you don't like the rules (or their behaviour when supposedly applying them), you can also:

1\. Criticize, explain why the behaviour is bad and spread the word about it. This is what we are doing now.

2\. Regulate this kind of behaviour out of existence.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER129> both Google Play Store and Apple App Store use automated app review systems.

Translation: ITs your fault for not keeping abreast of policy changes.

Same is true for desktop app stores as well and browser plugins.

devs and designers stop whining and being irresponsible the users come first not your feelings!

</comment><comment><USER130> To be exact, Google did not "delete" the app. It cannot even do that. It removed the app from its own app store. The fundamental problem is that Google's own app store is perceived by many users to be the only way to install Android apps.

Are there any ideas about how to convince users to use other app stores?</comment>


English as a programming language - <AUTHOR> https://github.com/pannous/english-script/ <comment><USER2> In my opinion making a programming language more like a spoken language will just add more confusion. To an english speaker, the phrase "take every number in the list X and add five" means the same as "add five to each number in the list X", but in many cases these natural language compilers cannot recognize that.

<comment><USER3> The spoken language has some horrible holes in it. A couple of my favorite examples: "You cannot put too much salt in a margarita" (which has two completely opposite meanings) and "I did not say he beat his dog" (which can have seven different underlying meanings depending on where you put the inflection).

<comment><USER2> Yeah, inflection is really interesting. Now I'm reading the examples for this programming language and putting emphasis on random words, lol

</comment></comment></comment><comment><USER4> This looks like an amazing way to introduce programming concepts. So cool!

</comment><comment><USER5> This reminds me of AppleScript. Super easy to read, very hard to write.

</comment><comment><USER6> It looks like a verbose Python.</comment>


Touch ID Likely on iPad 5 Even Though Performance is Erratic - <AUTHOR> http://www.forbes.com/sites/anthonykosner/2013/10/13/iphone-5s-touch-id-likely-on-ipad-5-even-though-performance-is-erratic/

<comment><AUTHOR> A Polar poll shows 23% of respondents complain of "too many fails." ([http://www.polarb.com/131862](http://www.polarb.com/131862)) and certainly that has been my experience. I wonder whether more people are not overtly complaining about it because users feel that they are "doing it wrong," not that the software might have been too fiddly for release.

<comment><USER2> Sure, that's one possibility, but I'm not sure I'd take that poll's sample as being even remotely representative. At this point it's people on both sides pointing to weak evidence to support conclusisions they've already drawn.

To be clear, I have no dog in this fight, but I don't think that any information I have seen so far has a hope of being accurate.

<comment><AUTHOR> The only dog I have in this fight is my iPhone 5S! My big question is whether the problem is hardware or software. The necessity to press the fingers just so and the UI validation giving, in effect, a false positive makes it seem like software. For Apple's sake I hope so. Software updates are a lot easier and cheaper than hardware recalls.

</comment></comment></comment><comment><USER3> Perhaps because it isn't erratic at all? My wife and I have not had the problem where it stops working after the first day - my anecdotal evidence beats theirs!

They even mention that there's a support post about this, but not a lot of people complaining about it.

I fell for their link bait

<comment><AUTHOR> See comment above. This is a real story, not "link bait," but thanks for the vote of confidence!

</comment></comment><comment><USER4> I haven't any trouble with Touch ID, modulo when my fingers are wet or I do something dumb like use a part of my finger that I haven't scanned (like the first joint on my thumb).

That said, it takes _way_ too long to work. I want it to be instantaneous and instead there's a noticeable delay in between when the screen flicks on and when I end up back on Springboard.

<comment><USER5> I've discovered that resting your thumb on the home button _before_ waking your phone speeds up the process. When I do that I barely even see the lock screen. It's like the sensor eagerly scans upon contact.

<comment><USER4> clever, good call. i'll try to remember that!

</comment></comment></comment><comment><USER6> My own personal experience is that it works great as log as I'm not too hot. The moment my hands get a little sweaty, it just fails nonstop. The reader gets so confused that I can't even program a new fingerprint in this state. Unfortunately, this happens with some frequency for me.

</comment><comment><USER7> Touch ID works great for me and seems like its getting faster. Sometimes I don't even get a chance to look at the lock screen before it unlocks. It's pretty awesome.</comment>


How consciousness works - <AUTHOR> http://aeon.co/magazine/being-human/how-consciousness-works/

<comment><USER2> Equating attention to an internal mapping of mental processes makes sense. I don't see how that leads to the subjective feeling of consciousness. This article, and Dennett's Consciousness Explained both argue for schemas that would seem to accompany consciousness, or even be necessary for it. But they are both unsatisfying because they don't explain the subjective part.

I can imagine software interacting with sensors of the real world, and many levels of organization above that, in which there are schemas allowing for symbolic manipulation of the layer below. I can also imagine how such a system might reason about (i.e., manipulate a symbolic representation of) some other computer's layers of representation and reasoning. But I don't see how the subjective feeling of consciousness arises here either.</comment>


A guide for IT bosses - <AUTHOR> http://www.nico.schottelius.org/blog/guide-for-it-bosses/

<comment><AUTHOR> Hey guys,

please add your ideas and experiences here - I'll add reasonable hints to the guide.

Cheers,

Nico</comment>


Molecular Self Assembly on a Surface Moves from 2D to 3D - <AUTHOR> http://spectrum.ieee.org/nanoclast/semiconductors/nanotechnology/molecular-self-assembly-on-a-surface-moves-from-2d-to-3d

<comment><USER2> What's next, replicators?</comment>


Jonathan Mann Performs a Musical Duet with Siri - <AUTHOR> http://youtu.be/hckrig2BwNY

<comment><USER2> Siri's a cute toy that I'm sure would provide a few hours of amusement but it needs to get to another level before I could make it a part of my life. If it's just a robot voice spitting out the same robot inflection over and over, I'd much rather just look at the damn screen. I don't know if the software will ever be that good, but I'd want an audio assistant to be constantly variable and natural in inflection otherwise it gets old really fast. Where are you HAL?</comment>


Grab lunch with Jeff Barr of AWS - <AUTHOR> http://aws.typepad.com/aws/2008/04/friday-lunch-me.html <comment><USER2> Please include locale hints in headlines of specific geographic interest -- an "[NYC]" at the end of this headline would save many people a click.</comment>


How to make cracking your programs a little harder - <AUTHOR> http://inner-smile.com/nocrack.phtml

<comment><USER2> Delphi? SoftIce? Ah the memories... the Copyright link says 1996-2002 and the most recent technical comment is from 2005.

I'm sure there are some applications out there which really need anti- cracking, but based on my experience with OSX apps if I was a shareware author I think my time and effort would be better spent running a support forum.

</comment><comment><USER3> One easy way: open source it.</comment>


Ask HN: Senior devs: what are some tough programming problems you've solved? - <AUTHOR> At work I mean. What are the kinds of things that make a senior developer frustrated? <comment><USER2> Modifying a binary (we did not have the source) to work on a different CPU architecture. That was my most challenging problem.

What makes me frustrated? Inconsistent interfaces, uncessisary abstraction, premature optimisation and juniors and intermediates who don't profile before attempting optimisation

Though these things don't really "frustrate" me - as you get older your time horizons broaden and everything is in perspective, and often I just fix these problems myself, it's quite enjoyable fixing these things, like a form of meditation

</comment><comment><USER3> Getting given a system someone else worked on, spending days understanding the system, to identify that at the present rate it'll start to fail inside of a few months, escalating that, being ignored, then seeing the system begin to fail as expected.

It's like watching a train wreck in slow motion, except I am in the train.

</comment><comment><USER4> Legacy code is always frustrating. I had to pick up Delphi at one point to fix a bug in an application who's only job was to relay specific windows messages (essentially a broker).

5 sold days getting the environment setup (every dependency had to be in the PATH), 20 min to make the change then another 3 days getting the installer build environment setup.

<comment><USER4> But don't conflate tough with what frustrates people. I spent 2-3 years designing and building 3D CAM software that presented MANY challenging problems from abstracting platform API's to optimzing toolpaths for cost effective manufaturing.

Not once did I get frustrated with the learning or implemention process. The frustration in a sr devs life (in my experience) usually comes from uper management putting "really cool" features on the back-burner to never be seen again.</comment></comment>


Bill Gates in Byte Magazine: The Future of Software Design (1983) - <AUTHOR> https://archive.org/stream/byte-magazine-1983-08/1983_08_BYTE_08-08_The_C_Language#page/n399/mode/2up <comment><USER2> The same edition has articles about coordinates systems in graphics and Gaus- Jordan elimination method. There are circuit diagrams and program listings. It was a real trade magazine.

Today that type of content is almost exclusively in in blogs.

Magazines write about stuff like "The Most Important Agile Trends to Follow in 2020". It's part marketing, influencing kind fluff where people write opinions about soft issues where you can't be clearly right or wrong.

<comment><USER3> > Magazines write about stuff like "The Most Important Agile Trends to Follow > in 2020". It's part marketing, influencing kind fluff where people write > opinions about soft issues where you can't be clearly right or wrong.

The mainstream ones sure, but there's others out there that don't. At least 2600 still the same.

<comment><AUTHOR> Related: 2600 recently started publishing DRM-free PDFs.

They're kind of floundering for funding, so if you like that sort of thing, you should probably grab a copy or subscription.

[https://www.2600.com/content/message-our- readers](https://www.2600.com/content/message-our-readers)

<comment><USER4> I'd not looked at 2600 in years, but did as you suggested and I'm glad to see it's not changed much at all! What a great magazine - looking forward to reading it again each quarter.

</comment></comment></comment></comment><comment><USER5> I love how the very next article is titled "The 8086 - An Architecture for the Future"

I love reading old computer magazines and the archive.org collection is amazing. One interesting thing about doing that is that it provides a first hand account of what a lot of the people that worked in the industry thought the future of computing would be like. It is fascinating to compare that view with how it turned out.

I wonder what people 30 years from now with think when they read HN archives?

<comment><USER6> Here is an issue of Computer Design magazine from 1983 which I scanned: [https://archive.org/details/computer-design- magazine](https://archive.org/details/computer-design-magazine)

It mentions:

\- ArpaNet can be the future of commerce

\- C is the key to portability

\- Apple's Lisa introduces a revolutionary UI

<comment><USER7> Thanks for scanning that! I used to read Computer Design back then, but I haven't seen one of the old issues in a while.

Coincidentally, the theme of this August 1983 BYTE is The C Language, with a dozen articles on C.

As always with these wonderful old BYTE magazines, at least skim through the whole thing. The cover art and the ads are a real treat. Hit the Home key and start from there!

<comment><USER8> Before I had a computer, I had a box of Popular Science magazines from the early 80's.

They were about 5 years old when I had them, so they talked about the ZX81, TRS-80, and the PCjr.

Everything was already obsolete but they were fun to read. The best was a review of electronic typewriters that could double as a printer for your computer!

<comment><USER7> Ah, the late great IBM PCjr (PC Junior), with its innovative squishy chiclet keyboard.

I was writing PC software at the time, and I knew I needed to make my programs compatible with the PCjr. The Macy's store in Stanford Shopping Center was one of the few local retailers promising they would have them in stock on the release date. So I called Macy's to reserve one.

When I went there to pick mine up, they said, "oh, we're sorry, we got 10 of them and you were number 11 on the list."

Bullet dodged!

</comment></comment></comment></comment></comment><comment> nv-vn Really forward-thinking stuff, but then again that's why Microsoft succeeded. It seems like all of Gates' predictions were spot-on in this article.

<comment><USER9> "Really forward-thinking"? All of what Bill Gates "envisioned" in this 1983 article was already done or about to be done at that time. Gates is well known for being bad at prediction and for having no vision to imagine the future. It certainly is not the reason why Microsoft kind of "succeeded". No need to rewrite history.

<comment><USER10> >> Gates is well known for being bad at prediction and for having no vision to imagine the future.

Interesting. Got any references for that ?

<comment><USER11> 640k more than enough for anyone

Multiple overlapping windows not useful

</comment></comment></comment></comment><comment><USER12> I love reading the advertisements for computer systems. 256K RAM for your business applications - can you imagine the potential?

</comment><comment><USER13> He looks to be laying out his company roadmap in the open. Is this a good business strategy? Do you see similar articles from current founders?

<comment><USER14> Roadmaps are a PR tool, and something you give to you customers to plan with, not something you keep secret. You can find all sorts of articles like this if you look in the right places.

Of course, they're also what you want your competitors to think you're doing, messages to Wall Street or investors, all the other usual things you'd expect from a PR vehicle.

</comment></comment><comment><USER15> I love how that issue has all these other articles that have hidden gems of insight of things that, with the benefit of hindsight, would have been good to have taken note of. Including gems on Lisp, on the philosophy of designing software for unix and to make things small and testable as soon as possible. How things like structured programming had a lot of fluff talk around it that obscured the tiny gems of good ideas, that people got carried away with the "process".

</comment><comment><USER16> I downloaded the whole PDF and one thing I find mesmerizing is just how sophisticated the business graphs looked back then. It seems we're only starting to slowly catch up with these in many web apps again.

<comment><USER17> The graph on page 350 is a good example. Gone is the golden age of data visualization.

</comment></comment><comment><USER18> Interesting how many of the integrations he talks about (OLE/DDE) are exactly the ones that mobile sandboxes make difficult to do these days.

</comment><comment><USER19> [https://tech-insider.org/software/research/acrobat/8308.pdf](https://tech- insider.org/software/research/acrobat/8308.pdf)

"The promise is that the existing machines could do the job much better-more easily, more efficiently - if software were better designed."

'Vista 8'

</comment><comment><USER20> Andreason said this more succinctly in 'Software eats the world'.

<comment><USER21> Yeah, but that was 30 years later.</comment></comment>