Top Developer Tools of 2016 - <AUTHOR> https://stackshare.io/posts/top-developer-tools-2016 <comment><USER2> JavaScript, Python, PHP, and HTML are developer tools? (yes, they're listed in four of the top ten spaces of Application & Data Tool of the Year) Isn't that like saying the #1 business tool is "The English Language"? I guess I expected a list of things people use like this one (which is phenomenal):

"Scott Hanselman's 2014 Ultimate Developer and Power Users Tool List for Windows"

[http://www.hanselman.com/blog/ScottHanselmans2014UltimateDev...](http://www.hanselman.com/blog/ScottHanselmans2014UltimateDeveloperAndPowerUsersToolListForWindows.aspx)

<comment><USER3> The results are in, folks, and The NUMBER ONE programming tool of the year IS:

The general purpose computer! Let's hear a round of applause!

The article reads like an ad for a bunch of commercial services. I was really hoping for things I could apt-get/brew install <excellent new tool>.

<comment><USER4> Unfortunately general purpose computing appears to be dying, slowly but surely. Talos recently wrote a good survey of the problems:

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

</comment></comment></comment><comment><USER5> Great list, wrong name, should be something like "top 50 _web_ developer tools. Not much in there for desktop app developers.

<comment><USER6> If the list is for all development work then i must be doing something wrong. I only use 5 of the listed "tools". Github, Gitlab, Vim, Python and Sublime Text.

These top lists lately always seem to focus on web development and seem to skip the millions of developers who work have never written a web app. Desktop, Embedded and backend apps may not be as sexy as the latest web framework but do run a huge number of businesses and devices in the world.

<comment><USER7> My guess is that they source this based on web searches and social media posts. Those tend to have a more web development focus.

</comment></comment></comment><comment><USER8> Well, this did point me to a shared password system with an API that I have not seen before: passbolt [[https://www.passbolt.com/](https://www.passbolt.com/)]

I have been looking for something like this for a while to securely access and share credentials from an application. GPL makes me nervous though -- especially AGPL. Does AGPL prevent you from using it as a service from within a separate program? For example, if OAUTH was AGPL would no one be able to use "sign in with google/facebook/etc" without open sourcing their software?

<comment><USER9> Probably not, but it depends on exactly how the code is arranged.

AGPL says that anyone who can use your code (via web service) counts as having the code "conveyed" to them, which means the GPL terms apply.

The purpose of this is to stop cases where I put GPL-derived code on a smart TV but say that since I don't let the TV owner touch the code I don't have to open source it. Or I wrap GPL-derived code as a web service and don't offer the source because the GPL'd code stays on my server.

In your example, maybe Facebook takes some AGPL OAuth library and adds 20 lines of code to talk to their database. If they now give you access to call their OAuth service, they must honor a request from you to look at those 20 lines of code. If the OAuth library that _you_ use to talk to Facebook is _also_ AGPL _and_ you give someone access to your service, then you have to release your source to them.

</comment></comment><comment><USER10> The #1 new tool of the year is a library for adding chat to a project. Why is chat being added to so many things?

Every time I use Evernote and see the chat button, I wonder if anybody is actually chatting in Evernote and if they are, why?

<comment><USER11> Absolutely 100%. The only time I ever call a company for support is when they don't have chat. My company provides both chat and phone support to our customers (many of whom aren't technically savvy) and chat is overwhelmingly more used. Support staff can also handle more throughput with chat since you can easily have 5 simultaneous conversations at a time.

Outside of analytics, real time chat is almost always the first non-core feature I ever add to a new project.

<comment><USER12> OP is talking about chat as a feature in a product. You're talking about something completely different - customer support chat.

<comment><USER13> If your product is a web site, having custom support chat built in to it is a feature.

<comment><USER12> I think you're still misinterpreting the OP (I know you're not the poster above :)). [S]he was referring to interpersonal sort of chatting with friends, colleagues, or people you've met online. Support chat is different. Nothing to do with "normal" chatting as a feature.

</comment></comment></comment></comment></comment><comment><USER14> Should qualify this as Web Developer tools. Nearly all of the things here would be irrelevant to systems programmers.

<comment><USER15> web development more popular

</comment></comment><comment><USER16> Difficult to take this seriously.

</comment><comment><USER17> It is very hard to take this list seriously as 'visual studio' isn't even mentioned anywhere. But 'vi' is? So, Vi is a top dev tool, but the _default_ Microsoft dev tool isn't worth the _top_ list?

Another issue. Go to githut.info, Java is second by wide, but it's not 'top'?

The list seems detached from reality and residing in its own bubble.

<comment><USER18> Additionally no mention of Eclipse or IntelliJ products, which seems a little strange, considering how much I see these everywhere.

</comment></comment><comment><USER19> Didn't expect to see this on HN today. I helped run the analysis, so feel free to direct any questions about the methodology my way!

<comment><USER7> How did you source the information? There are primarily web development tools on the list.

</comment></comment><comment><USER20> Surprised Visual Studio Code didn't get a mention in the text editor section.

<comment><USER19> Actually, the reason Visual Studio Code didn't make these rankings is because the stackshare page wasn't created until mid-2016. Since the rankings were heavily weighted to tech stack inclusion, VSC's numbers were a bit skewed. We do our best to keep up with requests to add tools, but as you could imagine there are _a lot_ of requests.

</comment></comment><comment><USER21> I'm genuinely curious what the value of stackshare is. Is it a form of "infotainment"?

It seems to me that if you work as a developer professionally, you'll have a good sense of what tools and stacks are out there based both on colleagues/work and the larger developer community you likely interact with. How does it help me to see that some well-known software is popular? It seems like just encourages more trend-following in programming.

I suppose I could see the benefit when it comes to SaaS products...this site gives a way to see all the options out there for things you might want to outsource.

Am I missing something? Do people find this site to be valuable?

<comment><USER22> I personally use it to keep up with new tools that companies might use or are becoming popular (always good to have an eye to know what's up).

I don't use it when I want to start a project and I'm looking for tools.

This is a keep at the back of your head kinda thing.

</comment></comment><comment><USER23> > Of course, the price of JavaScript comes with the hundreds of dev tools > needed to launch a simple "Hello World" app.

In node this is as simple as console.log('Hello World')

</comment><comment><USER24> Not sure how this was judged... Seems silly to list jQuery, React, and Javascript... If jQuery, React etc is on there obviously JS is too? They should really break down the numbers.

And what is meant by trending? I assumed this was judged by people hiring for the technology but they list Node as being a top-trend yet on their website Rails has more job openings than Node... Seems weird.

<comment><USER19> Originally we thought the same thing, but we wanted to remove as much bias from the analysis as possible, so we opted to keep all tools in the running. Since the weighted rank was based heavily on tech stack inclusion, we felt it was more valuable to keep the raw rankings.

For trending, we calculated tech stack growth over the past 6 months for each tool. I wish we had time to pull in job data, but the data pull was going to delay the article a while and there are some core features we were itching to get at (there's only 6 of us on the team). Not saying this is a perfect list, but it's a snapshot of the data we have and felt it was a good indication of what developers/teams are using.

</comment></comment><comment><USER25> Man I dislike all of their top picks, I guess I'm just old now adays.

<comment><USER19> Nahhh, the _most_ important thing is to use what works for you and your project. Any time you don't do that->eventual regret

</comment></comment><comment><USER26> Top 10 Developers?

Don't know any of them. I must not be in the right inner-circles (I'm guessing web development judging by this list). That reminds me, do we still consider Carmack a top developer?

<comment><USER27> They're apparently the top 10 contributors to Stackshare.io.

</comment></comment><comment><USER28> One of the top NEW tools should definitely be Prefix. It was released early in 2016 and is now used by over 10,000 .NET and java developers. It is a lightweight profiler that tells you everything your code is doing.

[http://stackify.com/prefix](http://stackify.com/prefix)

</comment><comment><USER29> So web development is the most popular field of software engineering. Makes you kind of sad.

<comment><USER30> Or it's the most popular field among the StackShare users, which is likely.

</comment></comment><comment><USER31> Kite looks intriguing, but sending every keystroke to a remote server is a bummer

<comment><USER32> Last I heard they will offer a on-premises solution for companies that need it. However without being connected to the hivemind, I imagine it's utility will suffer. :(

It's a great idea though!

</comment></comment><comment><USER33> Since this list doesn't actually make any sense, I'll list two actually great developer tools:

\+ The Stack package manager for haskell: [https://docs.haskellstack.org/en/stable/README/](https://docs.haskellstack.org/en/stable/README/)

\+ NixOS: [https://nixos.org/](https://nixos.org/)

Note that NixOS' drive towards critical mass isn't complete yet. It has great Haskell support (especially since Stack has nix integration), but may not have as good support for your language. No point in switching OSes before the time is right.

</comment><comment><USER34> This list makes no sense. Expected better from a site that's focused on tech stacks.

</comment><comment><USER35> "isomorphic javascript"... I thought we had moved past that :(

</comment><comment><USER36> Since we're agreed this is iffy, I'll add mine:

-Visual Studio Code

-yarn

-serverless

</comment><comment><USER37> Node.js:

"Look to an even stronger showing in 2017 as a language-of-choice for multi- threaded, scalable applications."

lol

<comment><USER38> Now that's just sad...

</comment></comment><comment><USER39> Items missing:

\- IntelliJ IDEA

\- John Carmack

</comment><comment><USER40> So, their product is #1?

How convenient...

<comment><USER41> Their product isn't even on the list, mate</comment></comment>


Raw SQL Backups on Heroku - <AUTHOR> http://blog.derekperez.com/post/453472206/sql-backups-for-heroku

<comment><USER2> Is this solution better than using RDS?

<comment><AUTHOR> Its not really the same...this is just a useful tool for backing up your locally stored database to S3. Its not a replacement database.</comment></comment>


Grouping Related Trends with Hadoop and Hive - <AUTHOR> http://www.cloudera.com/blog/2009/09/28/grouping-related-trends-with-hadoop-and-hive/

<comment><USER2> The author, Pete Skomoroch (<http://twitter.com/peteskomoroch>), will be giving a talk about TrendingTopics.org at Hadoop World NYC this Friday. Registration is still open ($400): <http://www.cloudera.com/hadoop-world-nyc></comment>


Ask HN: Company is growing and the culture shift is uncomfortable. What do I do? - <AUTHOR> We were a small consulting shop, with quirky and close coworkers. Suddenly (last 3 months) we have brought on an HR manager, a PR manager, a project manager manager, and many more developers.
Everything feels much more... corporate? Overly professional? I am struggling to think of how to describe it. The HR manager scares me, although I am not sure why.
I realize that all of this is my problem, that the issue is how I am reacting to things, not the things themselves. It is not something that anyone is doing wrong, it is just the nature of growth. Several people have quit because they do not like the changes, but I don't really want to quit.
So... does anyone have any experience with this? I guess I just want some advice on how to reframe the situation, so it is acceptable to my preference for casual/personal environments. Or maybe, I just want advice on how to keep things weird while growing. <comment><USER4> I know what you are going through. My last job was at Shutterstock, which went from 50 people to 700 in 5 years. I'm doing it again now, we went from 60 to 90 people in 6 months.

I have found that there are inflection points whenever things double. That could be people, revenue, office space, customers, etc. When this happens, "debt" affects the company. You're probably much more familiar with tech debt, and probably architectural debt. Maybe less familiar with organizational and cultural debt. You simply can't do things the way you always have, they don't scale. [http://steveblank.com/2015/05/19/organizational-debt-is- like...](http://steveblank.com/2015/05/19/organizational-debt-is-like- technical-debt-but-worse/)

Change is inevitable and required. If not managed, it could sink you. Some people will quit regardless, they were probably not the right people for the next phase. At first you don't need teams (you have 1 team), then you need to have 2 teams, them more. This change is disruptive and affects productivity and morale. Read up on team maturity models (not CMM), it will help knowing what phases you will be going through. [http://www.businessballs.com/tuckmanformingstormingnormingpe...](http://www.businessballs.com/tuckmanformingstormingnormingperforming.htm)

I presented the team maturity models too my devs the last time we restructured the teams. Multiple people came to me proudly stating they were in the "storming" phase, which essentially is when you argue a lot. They knew it was a phase, and frustration was reduced.

You do need leadership as you grow. A leader is not your best developer. The HR manager may scare you because they are a "manager", not a "leader". Good managers and leader can toggle between both roles. Too many people are great managers and not leaders. Know the difference between a manager and leader, know which ones you are missing. [http://changingminds.org/disciplines/leadership/articles/man...](http://changingminds.org/disciplines/leadership/articles/manager_leader.htm)

<comment> bjelkeman-again How is it different for you this time, going through this a second time?

<comment><USER4> The first time I started as a developer on 1 team and evolved into a director of 6 teams, each one a new business unit. I contributed code to most of the teams I managed. I was not the one primarily responsible. I learned a lot as I went, I was very inexperienced for what was required. I learned a lot of ways NOT to do things. If I had to sum things up, I would say before I was helping "connect the dots", now I am connecting all the dots.

This time around I am purely a leader and the one primarily in charge of tech. My almost exclusive focus from the start is the people. I have to start over on most things that I evolved through previously. \- I've taken on the responsibility to create and define our culture. My last job I assisted in this area. \- Make sure developers have the tools to be productive. This includes reliable wifi, internet, good coffee, software, furniture, TVs for monitoring, AV system for presenting, conference rooms. \- I've had to earn the trust of the existing people. Previously almost everyone was new on my teams and I hired them, so there was largely trust from the beginning. \- there is churn, like you are going through. I had almost no churn on my teams previously that was not purposeful. I have to explain why the churn is ok and expected. \- I have to teach developers to focus first on "why" they are building a feature, rather than "what" they are building and "how". This helps dev and product see eye to eye. \- I have to teach how to interview, run meetings, do agile right, communicate. Focus on building the right things over building things right. Teach people when to be tactical and when to be strategic.

Ultimately, I have to step up and fill the gaps until I can hire and/or train people to assist in that area. Before I had help all along. For example, I've interviewed about 200 candidates in 6 months for many different roles (developer, DBA, sysadmin, product, data). Mainly because interviewing was probably the most important thing I could be doing for the company and the developers. I'd be happy to go into more detail offline.

</comment></comment></comment><comment><USER5> I took a company from 2 people to 80 when we were at the height.

There have been a lot of attempts to crack that nut and most have been unsuccessful.

First you need to realize what is going on when you grow.

1) The more people you hire the more you erode the culture you had. Therefore be very mindful of what kind of people you hire and be quick to realize if they don't fit the culture (even though they might be good). I.e. hire slow, fire fast.

2) Have a set of principles that make you comfortable. If you don't like bullshit have a no bullshit rule, if you don't like agression have a be polite rule. The point is that you will need to be able to see yourself in those principles.

3) Always make it your failure that people are leaving and lear what you can do better next time. Even if it's a person who were really bad for the culture it's your failure. Even if they leave for a better job it's your failure that there is a better job. Find ways within your capabilities to deal with these failures.

4) Most importantly. Make sure people know they are there because they are good enough. I cannot tell you how important this and how many great cultures it has destroyed. Doubting leads to sub-optimale work. Instead of creating a competitive environment create an environment where people feel safe and cherished, that way they will perform much better, at least in my experience.

Last but no least. I rarely make book recommendations but Ed Catmulls (from Pixar) book "Creativity Inc" deals with this exact problem. I can't recommend this book enough. It's so filled with wisdom and perspective and as a bonus a surprisingly good mini Steve Jobs biography.

To give you some of the insights from the book I can recommend you listen to this talk he did [http://ecorner.stanford.edu/authorMaterialInfo.html?mid=3299](http://ecorner.stanford.edu/authorMaterialInfo.html?mid=3299)

That might give you some things to look for and see if you can find ways to address them whether you run the company or you work for it.

<comment><USER6> Good advice, but I think the OP is an employee at the company, not in charge of the growth himself (which your advice seems to be aimed at).

<comment><USER7> Individuals can make a huge difference from the bottom up. It's way more difficult, but it's possible. At the very least, make a lot of noise until someone savvy and powerful starts listening.

</comment></comment></comment><comment><USER8> _The HR manager scares me, although I am not sure why._

Job #1 of HR is to protect the company from its employees. The reason for hiring a HR professional (weirdly they never refer to _themselves_ as "resources") is that the owners or managers now feel that they need that protection. There's a gulf now between management and workers, that perhaps was a narrow stream before. You've instinctively grasped this, that's where your apprehension comes from.

<comment><USER9> I entirely disagree with this view. If you look at the period of employment, the need for protection takes up a minute moment.

It is more likely that the owners wanted to recruit great talent, have someone whos mission is to create a nice everyday environment, help spot and train leadership or any other number of things that the HR professionals, I've had the pleasure of meeting in my career, are great at and care about.

Between large evil corporations and tiny lean teams, there are variety of companies where a HR professional can help you make it or break it.

<comment><USER10> The actual situation may differ from company to company but from the perspective of an employee it is probably wise to assume that the HR people are not 'on your side'. This also differs (strongly) from one country to another.

<comment><USER11> This especially goes for complaints about bullying or discrimination. Get a lawyer and a recruiter if it comes to that, but stay well away from HR. Your expenses might be investigated for anomalies.

Workers' unions can also be risky. They have their own agenda, leverage over management, and will encourage you to speak up often without considering your own best interests.

</comment></comment></comment></comment><comment><USER10> Talk to your management, ask them what their view of the future of the company is. If you've been there since the beginning those lines should still be open. If you get concrete answers and you like the future view, relax, it'll be ok.

If you're being pushed away, if you don't like the future view, if you're being told to talk to someone else or that this is none of your business I'd weigh carefully if you still want to be a part of this company in the longer term and if you decide not to to start looking for an opportunity to jump ship on your terms with your current job as your fall-back plan in case nothing really interesting comes by soon enough.

Lastly, I'm not sure if it is 100% your problem. Some of it obviously is, the need to professionalize will be felt in any growing company, it's hard to take a company from 3 to 30 people without losing something in the process. But not all needs to be lost and to have buy-in of the old-timers and to communicate openly with them is super important in managing that transition gracefully and effectively and this may be where your management is currently not doing the best job they could (but there is too little information in your message to determine that with any accuracy).

Best of luck!

</comment><comment><USER12> Unfortunately, you are not going to be able to keep things weird (in this case). The only person who has complete control over the corporate culture is the CEO. And, even then, the CEO takes orders from the board and owners.

From your description of the recent changes, it appears that the CEO, board, and owners do not view unconventional culture as being important to the company's success. So, unless you or someone like you has great influence over the CEO (either directly or indirectly), this is not going to change. Trust me: there's no point in fighting it.

If an unconventional company culture is important to you, it's time to find a new workplace. If you have some time and patience, you can find a company that aims for the same goals as you.

1) corporations are the opposite of democracies,

2) those in leadership are not your friends (though they may be paid a lot to act that way),

3) things that appear to be 'for you' are always 'for the owners', first.

<comment><USER13> "The CEO is the only one who will change it, and clearly doesn't have interest in that, so give up or move on" feels at first like a bleak and defeatist answer.

I have found that it is entirely true.

A company I worked at before went through this. We spoke to one of our more seasoned investors, who had the same thing as the parent comment to say.

I spent a lot of time trying to find ways for this not to be true, but it is.

At a company, the CEO owns the culture. Even if they don't know they do. There are a lot of variables you can change, but that one's a constant.

</comment></comment><comment><USER14> Ask yourself why these new people have been hired - what was the (perceived) gap, what role do they play and why did this role become necessary to the company? Ask them if you can't figure it out - no better way to get to know these new people.

Then, ask yourself and them how you can help. A larger organization has more room for responsibilities and career growth. Others among the original 30 probably feel like you do; see if you can demonstrate leadership by identifying and resolving the conflicts that may arise.

If you don't already do this, start a brown bag series where old and new devs can talk about their work; or just do hack sessions together. It'll help identify mutual strengths and weaknesses. And when the CEO sees your name on the emails going out on this, I guarantee it'll go well for you.

If after your best efforts to evolve, you find that your CEO and exec team is among the 90% who can't manage and execute growth and life becomes hell, all of which will become obvious soon enough, then you quit. But make sure as many as possible of those new employees have good memories of you before you do that.

</comment><comment><USER15> It's not only your problem. Growth is almost always painful. I'd suggest you view this as an opportunity on several levels and give it your best! You can help your company a _lot_. Try driving the change! Sit down and have discussions with the leadership team, start reading about organizational models (from classical ones to modern ones) - a good book: [http://www.reinventingorganizations.com/](http://www.reinventingorganizations.com/) \- the most important point is to get everyone conscious about the changes and acknowledge that it takes both time and deliberate effort! Handle it as you'd handle any longer project. Have milestones, action items, retrospectives about it! Phrase your goals (e.g. keeping or working out culture can be one of them). I also find that sitting down together and finding out what's important to you helps a lot - e.g. explicitly stating company-wide values or writing a manifesto. Don't panic :) Realize the power is in your hands also.

</comment><comment><USER16> >I realize that all of this is my problem

Congrats! This is true wisdom and maturity.

Dive into what you find uncomfortable, try to adopt (or at least foster) new perspectives. Maybe even talk to these new people and share your feelings with them. Luckily for you they're in the soft-skills craft and may have the tools you're looking for at this uncomfortable time.

Your best bet for harmony and comfort is to adapt to the change rather than adhere to old ways. Because, in the end, flexibility is life skill we all need.

</comment><comment><USER17> This is not just your problem. Every company that you work in has an implicit social contract (e.g. we're quirky, we're obsessed ..). Often over time the culture changes, and at some point you re-examine the social contract, realise it has changed and then underperform/ quit. [this was a massive issue in big outsourcing deals in the last 10-20 yrs where Company A would take over Company B's employees and then wonder why they became worse at doing the same job].

I would be constructively explicit early about the things you are uncomfortable about and try and articulate them to get a story going about what is changing. This way either you can adapt, or find out if others share your feelings, or you can decide if there's still a fit. Culture is key - <USER2> the culture (often the engineering culture) goes/radically changes, it signifies big changes ahead. Also - for the new people (PMs especially) - <USER3> to them constructively to see if they can explain what they are bringing to the table, and also what they see as culturally valuable.

</comment><comment><USER18> There's a whole (short) chapter on changes in "Peopleware" [1].

I've just skimmed through it, here are the key points I've found:

1) Change is not a single step. It involves several stages, one of them being chaos.

2) Chaos implies that things look worse than they used to be. People feel less comfortable and want to go back to old ways. Their reactions are emotional, not rational.

3) "You never improve if you can't change at all"

I recommend entire book. If you work in software business, I think you should know it.

[1] [https://en.wikipedia.org/wiki/Peopleware:_Productive_Project...](https://en.wikipedia.org/wiki/Peopleware:_Productive_Projects_and_Teams)

</comment><comment><USER19> Real authority is granted, not imposed. You and your team can have 15 managers above you, but in the end, if you just act like they don't matter, _they will not matter_.

On the other hand, if these people bring real usefulness to the table (for example by freeing you from stuff you'd rather not do, like dealing with whiny and confused clients etc), then you should accept them and let them contribute as peers.

The other side of the coin is that the company is growing and clearly someone felt it lacked in some areas. If you're interested in those areas (i.e. you want to step up into management), you have an opportunity to do so.

<comment><USER20> Very well said and quite true! A managers job should be to facilitate, sadly many of them don't understand this, and breath down the developer's necks.

If you are one of those guys who gets the job done, then you shouldn't be giving a flying f __* about the managers /HR, their job is to make things easier for you so that you can focus on your core areas of expertise, if that's not happening, you can and should talk to your founders/owners about your concerns.

Remember, you were there before these guys even came into the picture, and you are responsible for the growth of this company which is now even able to afford new people, and I am sure the company owners do realize that.

<comment><USER21> ... and I am sure the company owners do realize that.

that's a very dangerous assumption. The company comes first for them. If you can't or won't fit into their vision then, thanks for everything and good luck.

</comment></comment></comment><comment><USER22> Change is usually unsettling. It would be probably be worse if suddenly the company removed that many positions when having them was the normal.

That said, there are certain sizes at which organizational structure needs to undergo quantum change. Thresholds I've heard are ~10 [two pizzas], ~30, ~200. This means that some of the change when an organizational structure hits one of these is more or less permanent. That doesn't make it bad. Just permanent.

Good luck.

<comment><USER23> 30 and 100 is a pretty substantial change organizationally.

<comment><USER24> I found ~20 - ~80 - ~200 in the many places I've worked or with. Roughly (1) hire people directly and know everyone (2) have people hire people and know only some (3) have no idea who is being hired. All of my direct experience failed at size 80. Each of these require a culture shift.

</comment></comment></comment><comment><USER25> Do not be held hostage by anything other than money.

Demand for engineers is still so high right now that unless you have some form of golden handcuffs you will be better off leaving if you don't like your current situation.

</comment><comment><USER26> When there are managers, things will be complex and there will be politics in the office. (I was one of the first 10 people of my first employer. It went to 400 people.)

I don't have golden suggestions for you. If you are a developer, stay focused on coding. If it still drives you mad, go find a better company.

</comment><comment><USER27> I ran into something similar to this roughly 6 years ago (PM, PR, team leads etc.). I recognize your discomfort. It might take time, it might suck at times, but in the long run it will be for the better.

> I just want advice on how to keep things weird while growing.

That one was easy: get everyone that is new involved in the weirdness. Culture isn't strictly policy, it's people and it's your job to make sure that the culture doesn't die. Involve new people in the culture. If the new management gets in the way of the culture it is your responsibility to communicate that risk.

> The HR manager scares me, although I am not sure why.

Have lunch with them. That HR manager is more scared than you are. They are coming into a company with close friends and a culture that they have no idea about. Be inviting and friendly.

</comment><comment><USER28> Give it time. I've gone through several growth and downsizing periods. Each time the people change and, therefore, the culture.

Afterwards, everyone is kinda feeling out everyone else, both professionally and personally.

The culture usually comes back, in my experience, but with different twists and personalities.

Worst-case scenario, the job starts to feel like one, the joy gets less and less, and you end up looking for another one (of really any size) that had a culture that fits your personality.

You're taking a healthy approach to this already, so let it play out before you back out.

Good luck!

</comment><comment><USER29> Biased: just quit my job (hypergrowth conssidered harmful). There is such a thing as a lost cause; don't wait too long to bail. You are in demand.

</comment><comment><USER30> I've been in this situation twice before as a developer. The first time, the devs bought nerf guns and scooters to counter the new corporate atmpsphere, and the second time everyone who wasn't part of the corporate in-crowd got systematically excluded from social events, and various dogmatic "managers" got brought in, who were friends with the CEO.

If you can, you should talk to your colleagues and the people in charge, to convince them that the company needs to be kept awesome and weird, while growing. Maybe suggest Open Allocation - Github and Valve do it, and I know people who work within that kind of structure and really enjoy it.

Be extremely wary of lies and corporate doublespeak that some CEOs and HR people often use to convince you that they care about your company's atmposphere, when they really just want you shut up and work. I've witnessed that far too often.

</comment><comment><USER31> It sounds like key 'organisational' people are being put in place so the organisation can transiton to something bigger. This is a good thing, they're there to support you, as you're the core purpose of the organisation.

Take this as an opportunity for yourself. If you have worked in a corporate environment before, you're probably familiar with policies, documentation (not code, organisational), etc. If not, then don't worry.

This is you're chance to shape that from the start.

If you're the owner of a product or part of a product, you have a lot of leverage and power, just don't use it recklessly.

For example: I joined a company with no job descriptions. When the expansion came, I got to write my job description. My department (me) had no Statement of Purpose, so I wrote the Statement of Purpose.

We also had a training course on RACI (basically, a simple way whenever undertaking a task to make sure who is Responsible, Accountable, who should be Consulted, and who should be Informed). It's a simple idea, but well worth keeping in mind whenever doing something because an expansion means the amount of people that need to be 'in the know' changes (in my case, from casual chatting and word-of-mouth) to making sure things were documented in emails. It was different, but it helped.

The good thing is, you're in expansion mode. That means a lot of stuff can flow to you if communication well.

Don't appear self-conceited (not saying you are, just don't appear like that) by getting withdrawn. Given your company was small, the boss or VP is probably close, so let your ambition (be it a specialist, manager of a product or part of a product, etc) be known to them.

Things can stay casual and personal, but with more and more people, things _will_ go wrong if issues don't get documented and followed-up more formally (from feature changes to un-communicated personal leave), simply as there's many more people who will be out-of-the-loop and uninformed of events.

The transition phase was the worse for me, as others just didn't get it. There'd be a face-to-face conversation I'd not be involved in, because others were used to the 'old way' and then things would escalate because someone key was out-of-the-loop and I'd get a question from the GM 'why was this not done?' It was a pain. But you can get through it sooner if you adapt sooner.]

</comment><comment><USER32> > The HR manager scares me, although I am not sure why.

I'll simply and very generally (so, don't take as advice, per se) say that you are not alone in this.

Generally speaking, HR works for the C suite, not you. _Always_. And, in my experience, the kind of people who tend to populate HR are much more about "resources" than "humans".

In particular, if you don't fit the convenient box they have in mind... you are a problem. The only question then is whether you are a problem they have to deal with now or accumulate "evidence" against for some anticipated future use.

</comment><comment><USER33> Hey Klunger,

Dharmesh Shah (Founder of Hubspot) actually gave a decent talk at Business of Software on this: [http://thebln.com/talk/lessons-from-the-trenches-in- scaling-...](http://thebln.com/talk/lessons-from-the-trenches-in-scaling- culture/)

I think he can say it far better than I could.

That being said, I think it's something alot of companies go through when growing. It's important though!

</comment><comment><USER34> I just wanted to say I reaped a ton of benefit from some of the comments here. Thanks bros.

<comment><USER35> Small nitpick, but not necessarily everyone here identifies as a man.

</comment></comment><comment><USER36> Why are people so obsessed with 'culture' and 'keeping things weird'? Be an adult, go to work. It isn't about weirdness (or stroking your perceived uniqueness and individuality concepts), it's about getting a job done.

If you are weird or unique, good for you. Not everyone wants in on 'silly hat and trousers' day.

Office 'culture' is a lie to keep you working harder, at the office longer, and people eat that shit up then wonder why most 'tech' people are unmarried young white men. Get married. You'll suddenly realize you don't give a shit about the office beer club. Grow as an individual into an adult, not a large- child.

You were very wise to realize it is a 'you' problem - that's a huge first step. Now see it for the crap it all is, and go to work anyway - or find a new place that thinks middle school 'in group cultural awareness' is still en vogue, and join their clique.

A better piece of advice? Join a club outside work. Get your individuality stroked there, and return to work refreshed and assured you are a beautiful and unique snowflake, just like everybody else.

<comment><USER7> "culture" with a small c is a lie, but "Culture" with a capital C is real.

Work should be real, meaningful, and authentic. It should be intrinsically motivating, and it should drive respect for people and a desire to do well. This type of culture amplifies productivity and 'joy in work' (as W. Edwards Deming called it) and is good for everyone. It is not happy hours, table tennis, foosball, or any of that fake stuff—it's feeling happy about the 'adult work' you're doing, and fulfilled by your contribution to a larger effort.

I think when people speak of 'culture going downhill,' they aren't talking about the trivial stuff that you'd get from clubs or 'silly hat and trousers' day. They're talking about the parts of work they enjoyed because they allowed the work itself to be meaningful.

This is why people are so obsessed with culture. If you aren't, you haven't bridged that gap yet, but keep looking for how to preserve that meaningful connection to the joy of work and how to drive it.

<comment><USER37> How is this anything but the individual's personal problem? You can't just make work meaningful all of a sudden, it's just work that the business needs to get done - you decide voluntarily if you want to do it in exchange for cash.

Not everything is going to be joyful/satisfying/life-affirming or whatever and I don't get this constant complaint that the company somehow needs to give you a reason to do your job.

Sure it can help at some basic HR/motivational level perhaps and some kinds of work truly have more impact but it's ridiculous to expect every job to be like this.

<comment><USER38> "How is this anything but the individual's personal problem?"

It is everybody's problem. Both the company leadership and the individual. Individuals need to be self-motivating and self-regulating and self-aware. But leadership needs to respect their workers, create an enjoyable workplace, and create an atmosphere that caters to the personality types they hire.

You may take issue with the "create an enjoyable workplace" part. But I would challenge that you don't have a wide enough variety of experience yet or you've been lucky. Personally I've been in environments where I've been treated like a "code monkey", expected to be at my desk typing for 8 to 10 hours a day, and expected to never socialize with my co-workers because socializing is seen as not productive. That was not enjoyable.

On the other hand, I've been in environments where programming is seen as a creative endeadvour, socializing and brainstorming is seen as lubricant for creativity, and the purpose of the job is seen not as pumping out code but solving problems and being creative. This one was clearly enjoyable.

Now as a manager/leader, I strive to create the second type of environment and the decisions I make and policies I put in place directly affect the outcome and the attitudes of my employees.

So aving been in both sides, and now being a leader who clearly sees his behaviour affecting it, I'll re-iterate:

Culture is contributed to by Everybody and leadership/management play a huge role; and it impacts the enjoyment and meaningfulness of work directly and clearly.

<comment><USER37> This I understand and agree with. I never said anything about not creating an enjoyable workspace. However this is completely different from what the parent was talking about re: "Work should be real, meaningful, and authentic."

That just sounds like random gibberish to me considering the realities of what most work entails. You can perhaps make the _environment_ more enjoyable and have better rules and practices but that doesn't change the basis of the work itself, only the surroundings. How "meaningful and authentic" something is, is completely up to you.

<comment><USER7> You're right that a lot of it is up to the individual.

My point was that people already want to do work that is good—whatever that means to you. Yes, it can be sophistic bull to call it all those lofty things, but in the end I think everyone wants a good job, doing something they consider valuable, that makes them feel like their time isn't being thrown away in exchange for a wage. Whether everyone can achieve this or not is more of an economic question, but it's something almost everyone strives for. Work that is real.

And jobs, companies, and organizations start out this way too. Of course they want to get things done and achieve common goals, and most importantly make a lot of money, but I promise you they also don't want to throw their time away. Even executives want their time and their lives to be meaningful, and they usually want that for their employees, too.

And most people realize—and it has been proven—that organizations that do this right, and find meaning and value in their work, whatever it may be—are also more successful, make more profit, are more competitive in the market, and have all kinds of other positive results. So it appears to be a no-brainer.

Problem is, things get complicated in complex organizations, and no one knows how to handle it. All of that stuff about work being meaningful and worth a damn goes out the window, and people just start doing their jobs for a paycheck. _That 's_ when big-C Culture gets destroyed.

It's not that people don't want that fluffy stuff about their work being worthwhile, it's that they can't see any path for achieving it. All of the structures of organizations are put in the way. My advice was to leaders: work on stripping the company of the barriers to people finding joy and worth in the work itself. You can't give people that stuff, but it sure is easy to take away—so start by not doing that.

There's a lot that's the individual worker's responsibility to self-motivate and find meaning in their own work, if they need it—but there's a ton of stuff in modern companies that also destroys their ability to do that. You need to tackle it from both sides, both the environment (and not just at the surface, but deep, deep down) and the individual.

And my personal opinion (and you might disagree with this) is that 90% of the potential for motivated, real, meaningful work has nothing to do with individual responsibility, but is the responsibility of managers and leaders. Individuals are always going to try their hardest to self-motivate and do their best—that's the easy part. Building an organizational environment that enables them to do that is the hard part, so it's where we (leaders, managers, executives) need to put in the work.

This reminds me of a story—a consultant tried to implement some of these organizational improvement ideas at a chick hatching farm. When he was interviewing one of the workers about how the workplace could be improved, the man said "Sir, we throw all the male baby chicks into grinders. I think that says everything." So, you're right. Regardless, that consultant was still able to improve even that dismal work so that the employees could do their jobs as well as possible and not be demeaned by both poor management _as well as_ the nature of the work.

So my response is, even supposedly horrible work can be meaningful, and it's almost always the unconscious organizational structures that get in the way, not how individual workers feel about their own job. The individual is such a small problem in comparison to the organization.

</comment></comment></comment></comment></comment></comment><comment><USER39> It's _your_ problem.

See it positive:

\- The company is growing

\- You guys do something right

\- The CEO is doing something right

\- Fast growth or just growth is never easy for an organization

\- But if everybody is proactive and empathic then you make it easier for the organization and all folks involved

=> Go out, see new opportunities and be proactive—growth brings always new opportunities for everyone

It's _you_ and your inner fear of change. You fear the loss of the good old times.

EDIT: Why do people downvote so fast on HN? I wrote a positive post and a get an instant downvote.

<comment><USER40> > I realize that all of this is my problem

> It's _your_ problem

He already knows this. He said so in the post. That's probably why you were downvoted.</comment></comment>


A year of Windows kernel font fuzzing #1: the results - <AUTHOR> https://googleprojectzero.blogspot.com/2016/06/a-year-of-windows-kernel-font-fuzzing-1_27.html <comment><USER2> Being not entirely up-to-date on current browser security, what's the risk of a webpage just including a CSS:

        @font-face { src: url("/fonts/evil-font.ttf"); ... }

And making use of these? Do current browsers even use windows libraries for font handling?

Edit: reading further, the article actually mentions two browser exploits, the first of which links to a proof-of-concept which is just a font file. So yes, it seems that just including a carefully-crafted font (an OTF in this case) could take your shellcode directly to the kernel.

<comment><USER3> Native font rendering is used on Windows, yes, though in theory a browser could run some sort of sanitizer on TTFs. Not sure offhand whether they do, but it's reasonable.

<comment><USER2> Regarding the question of whether browsers sanitize the fonts, I'm looking at the chromium issue linked to what the article calls a "weaponized exploit", and even though it's marked as fixed (obviously), it's not clear whether they marked it as such because windows released a security update or because chrome did with sanitation. While the idea of monkey-patching kernel bugs through sanitation is kind of ugly, it would be also be ugly to rely on windows updates, considering that many people are furiously/incorrectly disabling them because of the ridiculous windows 10 update behavior...

[https://bugs.chromium.org/p/project- zero/issues/detail?id=36...](https://bugs.chromium.org/p/project- zero/issues/detail?id=369)

<comment><USER4> It's marked fixed because Microsoft released a patch for it. However at the very least Chrome and Firefox have been doing font sanitization for quite some time now (several years+ I believe). I'm not sure for other browsers. Opera might since it's just a Chromium fork and OTS[1] is a part of the WTF (webkit tools framework).

[1] [https://github.com/khaledhosny/ots](https://github.com/khaledhosny/ots)

<comment><USER5> Wait, since when is Opera a Chromium fork? They've been around a lot longer than the Chrome project. Unless they had a radical change of heart recently that I haven't heard about yet?

<comment><USER6> Published on 12 February 2013: "300 Million Users and Move to WebKit"

[https://dev.opera.com/blog/300-million-users-and-move-to- web...](https://dev.opera.com/blog/300-million-users-and-move-to-webkit/)

"Opera sends 90 out the door"

"They were sacrificed for strategic choice to dump core technology, with Opera's proprietary engine Presto and JavaScript interpreter Carakan"

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

</comment></comment></comment></comment></comment></comment><comment><USER7> What is the main advantage of having font handling in the kernel?

<comment><USER8> The decision dates back to 1996, to improve performance by reducing context switches in Windows NT 4.0. See Microsoft's detailed rationale paper from that era: [https://technet.microsoft.com/en- us/library/cc750820.aspx#XS...](https://technet.microsoft.com/en- us/library/cc750820.aspx#XSLTsection124121120120)

The relevant ironic quote: "Due to the modular design of Windows NT moving Window Manager and GDI to kernel mode will make no difference to the security subsystem or to the overall security of the operating system."

This was, as these things often go, an expedient decision made in the '90s that wouldn't be fixed for nearly 20 years.

<comment><USER9> Pretty much all of GDI used to be in the kernel, the font stuff is one of the major parts still remaining, although the article says that Microsoft is moving it out as of Windows 10.

A few years ago there was a remote code execution exploit that had to do with decoding EMF/WMF images in the kernel: [https://www.symantec.com/security_response/vulnerability.jsp...](https://www.symantec.com/security_response/vulnerability.jsp?bid=34012)

I believe that one got at least partially fixed by moving some of the video code out of the kernel and into user-mode with Vista, but I don't recall exactly.

</comment></comment></comment><comment><USER10> Don't think for a moment this can't BSOD your system. A LibreOffice font caused a BSOD on Windows 7 SP1, and whilst I sent memory dumps to Microsoft they eventually never got back to me.

As far as I'm aware, I guess this can still occur.

[https://bugs.documentfoundation.org/show_bug.cgi?id=62764&re...](https://bugs.documentfoundation.org/show_bug.cgi?id=62764&redirected_from=fdo)

</comment><comment><USER11> So google paid to find 16 vulnerabilities in Microsoft's TrueType font engine. One of which was actively being exploited and sold to governments / any thugs with $$$ by Hacking Team. Am I the only one who finds it stunning that Microsoft is too lazy to do their own fuzzing?

<comment><USER12> Or MS has fuzzed it but hasn't devoted as many computational resources as Google has. They say that fuzzing-produced bugs have come out regularly over the years, so clearly no one else had before applied as many resources as Google did...

<comment><USER13> Or used a different fuzzer with different mutators, or did blackbox non- coverage non-tracing fuzzing, or fuzzed the entire program instead of individual methods, or simply missed a program/driver/???, or ...

EDIT: RTFAing, Google even mentions using longer runtimes:

> As shown in the table, the crashes were reported in three iterations: the > first one obviously contained the bulk of the issues, as the fuzzer was > hitting a lot of different states and code paths right from the start. The > second and third iterations were run for a longer time, in order to shake > out any crashes which might have been masked by other, more frequently > hitting bugchecks.

EDIT x2: Also, it looks like they moved it out of the Kernel in Windows 10, so that's good.

> It's also worth noting that while the elevation of privileges scenario is > mitigated in Windows 10 by the architectural shift to performing font > rasterization in a user-mode process with restricted privileges, an RCE in > the context of that process is still a viable option (although much more > limited than directly compromising the ring-0 security context).

<comment><USER2> Also RTFAing, the authors express their surprise at how easy some of the vulns/crashes were to find using very basic fuzzing. So while @x0x0 might be jumping to conclusions a bit harshly, saying that MS did little to no fuzzing on their font libraries is actually a reasonable guess.

<comment><USER12> That, however, contradicts their other assertion that past researchers have fuzzed the fonts and found many vulnerabilities. They can't both be easily true, so there must be something further going on.

<comment><USER2> Meh.

"it was trivial to discover with a dumb fuzzer, and it's surprising that such a bug could even survive until 2015, with so much work being _supposedly_ put into the security of font processing."

(Emphasis mine.) I suppose they might be underplaying the complexity of the steps required to reproduce their finds, but it really doesn't look like it. Honestly I'm not that surprised. At times like this I'm reminded of the sheer amount of security holes out there in the wild and I just want to chuck my computer in the lake.

<comment><USER14> Turns out lakes are security thru obscurity. They do not provide as much security as previously thought. Consider an active volcano next time.

<comment><USER13> DBAN all the disks, smash all the chips, degauss the scrap and ship straight to your nearest neutron star. Proceed to direct said neutron star into the nearest black hole. Accelerate said black hole to at least five 9s of c, along whichever vector is least convenient.

The backup tapes? I'm sure the trash is fine.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER15> How many of those vulnerabilities would have been caught earlier in a safe language like Rust?

<comment><USER16> How long would it take until a Rust reimplementation would be as mature as the current ones?

<comment><USER17> This "just rewrite in Rust to have it be secure" is the new "just rewrite everything in assembly to have it be fast" that is popular with newbie programmers, CS freshmen etc, when they first learn about the various languages, but don't yet appreciate or understand the broader ecosystem implications...

<comment><USER18> I agree that lets-ASM has been wrong in most cases. However misguided in many cases it may be, in this context it's serving a more pressing problem than the lets-ASM mentality because there is a real security problem with most code that can be solved with different language+tooling and is only insecure because of historical popularity reasons like the rise of C in the 1980s.</comment></comment></comment></comment>


Show HN: Yo, HyperNet internet-less file transfer and communication - <AUTHOR> http://www.wave.io/yo-download/ <comment><USER2> Reminds me of the Edgenet project from the late Pieter Hintjens: [https://content.cultureandempire.com/appendix1.html](https://content.cultureandempire.com/appendix1.html)</comment>


NASA to send 3D Google smartphones for robots to space station - <AUTHOR> http://news.yahoo.com/nasa-send-3d-google-smartphones-robots-space-station-140925254--finance.html

<comment><USER2> ... to teach nodejs for dinosaurs.

This title has a buzzword for pretty much everyone who ever clicked on anything on HN.</comment>


AWS for beginners: Hosting Front end production on AWS - <AUTHOR> https://www.netguru.com/codestories/aws-for-beginners-hosting-frontend-production-on-aws <comment><USER2> There are a number of tutorials that already go over the same exact process but this one is by far the most in-depth one. Good stuff.

I run the frontend for my company website ([https://makely.me](https://makely.me)) in the same way. It's super cheap. It's also relatively trivial to setup a basic CI/CD pipeline. The only thing I haven't perfected yet is the Cloudfront cache invalidations; I haven't figured out a programmatic way to detect which things I should be invalidating based on the changes I've pushed. I suspect there actually isn't a way to do it because of how I bundle things at the moment.</comment>


Red Sprites and Blue Jets Explained (Transient Luminous Events) [video] - <AUTHOR> https://youtu.be/tGPQ5kzJ9Tg <comment><AUTHOR> I just stumbled upon this on a random subreddit and was completely surprised that there was a whole class of lighting adjacent phenomena that I knew nothing about.</comment>


A viable replacement for rrd for storing timeseries data  - <AUTHOR>

rrd is an awesome tool but it causes data loss due to averaging . I am looking out for something that is almost as efficient as RRD and causes no dataloss with time . I am fine with disk space usage <comment><USER2> We've played around with:

OpenTSDB: <http://opentsdb.net/>

StatsD: <https://github.com/etsy/statsd/> (description here - [http://codeascraft.etsy.com/2011/02/15/measure-anything- meas...](http://codeascraft.etsy.com/2011/02/15/measure-anything-measure- everything/))

OpenTSDB and StatsD seemed great for getting TS data in and producing nice dashboards, but they didn't seem to fit our needs for performing custom analytics on the data.

At the moment, we're leaning towards leveraging Cassandra based on our scalability requirements. Check out [http://rubyscale.com/blog/2011/03/06/basic-time-series- with-...](http://rubyscale.com/blog/2011/03/06/basic-time-series-with- cassandra/) and [http://www.datastax.com/dev/blog/advanced-time-series- with-c...](http://www.datastax.com/dev/blog/advanced-time-series-with- cassandra) to get an idea on how cassandra can help.

<comment><AUTHOR> how you played around with mongodb

<comment><USER2> Actually, we started out using mongo to focus on the analysis instead of the schema, but we quickly ran into performance issues as the datasets grew. We were simply using mongoengine for Python, so we didn't spend a significant amount of time trying to optimize our schema or implement things like sharding.

Our performance issues with mongo largely stemmed from our poor use of indexes - we defined a lot of indexes because _how_ we needed to query was a very organic and undefined process as we got new analysis requirements. Because we would have to frequently go back and compute new feature vectors across the whole (or large parts of) the dataset, we weren't able to implement a lot of the aggregation capabilities you'll see implemented in many other time series schemas.

</comment></comment></comment><comment><AUTHOR> i have seen this ppt and it looks inspiring [http://www.slideshare.net/sky_jackson/time-series-data- stora...](http://www.slideshare.net/sky_jackson/time-series-data-storage-in- mongodb)</comment>


Ask HN: hacking a non-computer system (YC application question)? - <AUTHOR>

I'm struggling with the following question for my YC application:<p>'Please tell us about the time you, dirkdeman, most successfully hacked some (non-computer) system to your advantage.'<p>It must be the language barrier, but I have no grasp of the meaning of 'hacking a non-computer system'. What does this mean? A 'system' like taxes, governement, school or a company you work for? Or is it something more trivial, like making a beer cooler out of Lego? Does anyone has an example of this to put me in the right direction? <comment><USER2> It's about gaming the system, or using the rules to your advantage in a way that they weren't intended for.

For example - you might collect Air Miles and, having worked out that a particular promotion at the supermarket was worth more in miles than the product cost, got a first class round-the-world flight for less than an economy ticket to the next town.

</comment><comment><AUTHOR> Ah, right, the system as in 'THE SYSTEM'. Thanks for clarifying and the example!</comment>


Google app suite costs as much as $40 per phone under new EU Android deal - <AUTHOR> https://www.theverge.com/2018/10/19/17999366/google-eu-android-licensing-terms <comment><USER2> May be the OEMs can sell phones without Google apps for a lower price if they choose to increase the device price to include them. I'd buy one!

<comment><USER3> Impractical. You're a tech savvy individual. Regular folks will find it friction laden to install an app store via sideloading

<comment><USER4> The phone would still come with an app store; it just wouldn't be the Play Store. Amazon is probably calling all the phone vendors already. Carriers might also like to take back control of the store.

<comment><USER3> Amazon/other store is not a compelling sales pitch to the end user. I myself wouldn't recommend the average user anything outside Google play, as it's light years ahead in selection, security, UX ...

</comment></comment></comment></comment><comment><USER5> Why is this fee still with strings attached ? If they are going to charge for play services, just deliver play services for the fee. They want OEMs to bundle playstore, youtube, maps etc., still pay the 40 bucks, and end-user anyway has to pay with ads and personal data. So how is this helping anyone ?

<comment><USER4> It's helping other search engines which was the point. You might see phones with Bing instead of Google.

<comment><USER6> While people say that OEMs now have to pay up. The reality is that Bing will be paying.

The real trick is that Android has all the assistant features, which means that Android will be shipped crippled without them.

</comment></comment></comment><comment><USER7> I wonder will do Samsung and OEMs with Samsung RGBG Pentile displays? Previously they were artificially increasing their PPI for marketing purposes (compared to the "true" RGB display PPI) and now they will either continue to do so and pay more or declare lower correct PPI and pay less? Pride or wallet, who will win? :)

<comment><USER4> Not sure why this got downvoted; I've been wondering for years whether people can even tell the difference of these >400 PPI screes.

</comment></comment><comment><USER8> This will hurt OEMs in the short-term, but it will also incentivize them to get together and adopt some alternative solution, thus escaping Google's rule.

</comment><comment><USER9> Given average Android phone lifespan of 21 months, this leads to $2 per month charge for each Android user in EU. Not big deal for most users. However, interestingly all the fines and taxes on corporations are always passed on to customers. When will EU understand in their quest to tax and fine the shit out of tech companies?

</comment><comment><USER10> Not sure the EU commission will like that. They're still incentivizing Google Chrome and Google Search on Android devices with these discounts

<comment><USER11> This is pretty much exactly what the EU asked for—Google to unbundle so that handset makers could pay for what they want and Google would pay them for what Google wants (Chrome and Search), rather than just offering one take it or leave it package.

</comment></comment><comment><USER12> Tablet licenses are capped at $20. I wish I had the option of a supported Google app suite on an Amazon tablet. I'd pay a lot more than $20.</comment>