Ask HN: What are your views on India based development agencies? - <AUTHOR> We are a mobile development agency based in India I understand there are plenty of us on various platforms.<p>How do we work on changing customer's perspective? <comment><USER2> I've used large (Wipro/TCS) and small firms, and poor code quality is common amongst them all. What's more apparent is their lack of ability to innovate or think on their feet. If I give them a "familiar" problem to solve, they're generally okay, but anything that requires them to think outside of the box, they tend to overcomplicate and the result is often terrible. Also, I no longer find them to be cost effective, especially when they charge by the day, and can't get things right even on the fourth attempt...

<comment><USER3> Is there a connection between native speaking language and code quality? Since computer languages are logically constructed, do people who speak more logically constructed languages fare better?

I see a lot of over complication in the code that our Indian developers produce. Lots of copy and pasting code around instead of wrapping in a common function and calling that. They setup weird data structures when simple arrays would suffice. Lots of redundant logic. They don't negate if statements, they use the else block and leave the if blank. It's just weird. It's not even laziness, there's way lazier solutions to the ones they provide. I'm tempted to think that Indian languages beget a certain style of thinking that produces this kind of code.

<comment><USER4> Wow! That's a big generalization. Silicon Valley is full of top notch developers with Indian origin. Similarly, you can find plenty of mediocre non- Indian developers everywhere. If I've to blame anything, I'd blame lack of systems, than entire language family.

</comment></comment></comment><comment><USER5> The core problem is that companies from US or Europe contracting Indian agencies do it because of price. It's always more convenient to contract a local agency, in the same timezone.

For that reason, most Indian companies focus on getting the cheapest price and do so at the price of quality.

If you want to do quality work, you'll have to hire more expensive developers and you'll be more expensive. You need to figure out a good positioning because you'll be more expensive that your local competitor, and less convenient than firms closer to your clients. Add to that the low quality image that won't go away until all your competitors start going for high quality development.

<comment><USER6> I agree with you 100%. I think it is difficult to change the image.

</comment></comment><comment><USER7> I'm in the project which is currently being transited to the team in Pune, India. Means I hand over all my stuff to them and quit. They will take care for the project. Thus my view might be a bit biased (I hope it's not).

I'm just back from 3 weeks trip to their office. Here are my impressions:

* just a few of them (new team is about 40 people) are skilled enough to do the project work

* most of them never heard that people can google errors and check for solutions in the internet (I mean really, how can even a junior come with questions like "I've got an error X. please help me, I don't know what to do")

* they do not dig around. they were told to do X, they will do their best to do X. if it turns out that it obviously will break Y (and it can be seen from the beginning, or something similar might happen) they don't care. They have to do X.

* code quality is not high at all. sometimes they try to fit multiple workarounds to fix some consequences instead of digging around and fixing the root cause

* they stick to their hierarchical structure and rules. if manager told to do X, they will not doubt it for a second, even if it's something I would argue about (however I saw some rare exceptions)

* not all speak good English. some need quite a while to find the right word. * if they will not change something in their workflow, I'm pretty sure they will completely screw the project quite soon after we quit.

This is my experience with new team. In the same time I would like to mention, that there are some good engineers over there and I had a good talks with them when I visited there another company for a day there, but not many of them. I can really feel the lack of qualified people.

PS. I enjoyed the trip a lot (even the kitchen sometimes). Most people in India are really kind and helpful. I managed to visit some interesting places and now have some nice pictures :)

</comment><comment><USER8> I have experienced working with two different Indian development teams and both of my experiences were characterized the same:

1) Over-communication to a fault

2) Low code quality

I don't know how can you change my perspective, but I would suggest not trying to change the perspective of Indian agencies as a whole - but rather why you are different than the stereotypical Indian agency.

<comment><USER9> What do you mean by over communication? Do you mean that essential communication is repeated without additional effect? Or that unnecessary details are relayed?

<comment><USER8> Yeah, it's a little hard to explain. Unnecessary details are relayed, very detailed descriptions of even minor things that were accomplished, etc.

<comment><USER10> To expand on this:

detailed descriptions of even minor things; to distract from the fact of very little being achieved.

Unnecessary details are relayed; implying little comprehension of task meaning and/or importance.

</comment></comment></comment></comment><comment><USER11> I worked with only one, the one my partner foolishly chosen before I've joined him. Issues we faced:

\- Developers were almost completely illiterate when it came to basic things, like http vs https, using git, encryption vs encoding. That's just something I wasn't ready for

\- Using old technologies, i.e. Eclipse for Android development when almost everyone is on Android Studio, having libraries which haven't been maintained since 2010 as dependencies

\- Communication was horrible, I had to write 10-20 emails before I could get any answer

<comment><USER12> I was working as a remote developer on frontend. I literally had to explain what is difference between get and post requests in REST apis to the android guy. When I checked his profile, he had mentioned he was working from three years as Android developer. :/

</comment></comment><comment><USER13> Have tried a lot of times ( 8 times to be exact), the only one that worked is now doing his own projects and launches a SAAS. The CEO was involved in every project. Every project took a very long time though and deadlines were not met.

Other experience, estimates are wrong, filling in more hours than actually worked and they always say yes. But what they mean is we can't or don't understand what your mean and we will stall the project.

<comment><USER14> "they always say yes." OMG this is by FAR the most annoying thing with them. But I think It's a cultural thing.. They say yes, not because they know how to actually do it, but rather that they understood what you said (English is a second language for them so I think they just mean "yes, I understood that part").

<comment><USER15> Me: Can you blah blah blah?

Them: Yes

Me: Ok, and would you be able to blah blah blah?

Them: Yes

Me: Great, and do you think that will be ready by blah blah?

Them: Yes

Me: Fantastic. What approach do you intend to use?

Them: Yes

Me: _mutes phone, curses, unmutes phone, goes back to start_

I've occasionally worked with some excellent individuals, but the aggregate has been poor.

My most recent experience with a team of this type repeatedly involved requests for documentation at a level of detail where automating the task would be less effort.

The biggest problems are cultural, but the perception is going to be hard to overcome.

<comment><USER16> This has come up on HN and other places. If you want to avoid this issue, phrase your questions differently (e.g. as non-binary agree/disagree questions).

I'll let one of our Indian colleagues suggest the best alternative here, as I'm sure they know more about the relevant Indian cultural points than I.

But even something like "Tell me how you will accomplish X?" or "Do you have any worries about doing Y?" tend to produce better India-US communication.

<comment><USER15> I completely agree and these days I follow exactly that strategy, to good effect. However I think it's still, in general, damaging to general perception.

Another factor is that most of my encounters with such groups has been while working for organisations looking for a cheap option. I strongly suspect that this is common and results in hiring low quality groups with mediocre people - again tainting popular _perception_.

</comment></comment></comment></comment></comment><comment><USER17> Having worked with Indian companies and for Indian companies the last 20 years here is my advice.

1) Learn to say 'no' or 'we need to understand this better before we can give you a quote or a deadline — too often, way-way too often Indian outsourcing companies oversell their capabilities. Learn to say, 'this can be done, this can't be done' within the timeframe/budget etc.

2) Increase your prices, get more senior developers (increase their salaries). For most western companies even a 100 increase in price is still many times cheaper than what they can get and if you get better developers because you can pay more you will be able to better meet your deadlines.

3) Invest heavily in proper frontend people. Give them extra training if needed so they know how to write optimized code. There is a world of difference between solving the problem and solving it elegantly. All too often what you get back works but is useless because it's too slow.

4) Hire western project managers. Don't get me wrong I have worked with some really great Indian managers but understanding the western culture and expectations and being able to understand western expectations would remove 90% of the confusion that happens today.

5) Did I say, increase your prices and your salaries?

6) Be better at writing PRD's and set expectations, make sure you can meet those expectations and don't be afraid to push back on what's possible to deliver early on. The sooner a client knows there will be delays or the sooner they know their timeline expectations can't be met in time the better. That allows them to plan accordingly.

7) Did I say, Learn to say 'no' or 'we will have to look some more into this'

Ping me if you want more concrete advice, it's an area I care about a lot because I worked with Indian companies a lot.

Solving the quality, expectations and honest feedback would increase any Indian development house directly into a top-tier partner for me.

</comment><comment><USER18> You need to compete and market based on quality and knowledge, by just price.

I have a competitor of yours trying to get a meeting with me. Their pitch is that I can have 10 programmers at $20/hr each, a 75% savings based on US programmers!

The problem is I want solutions, not man-hours!

<comment><USER19> What you said reminds me of that old comment: "If one woman takes 9 months to have a child, how long is it for 9 women?"

</comment></comment><comment><USER20> Basically, in my experience, and the experience of others I've spoken to, you need to do almost exactly the opposite of everything the India dev agency industry does. The sector as a whole it completely trashed and discredited in the UK, from what I can see, and if I interview somewhere and they have an Indian agency on-board somewhere, it's a major red flag that something very, very bad is probably happening somewhere.

That's because every single Indian dev agency experience I've had, has resulted in a net negative outcome, sometimes so bad we've thrown away _everything_ they've touched and started again.

A couple of ideas that might make everything "nicer":

1\. Increase code quality. Commit to it. Understand technical debt and commit to reducing it. Refactor. Code reviews. Cite and apply industry standard texts like _Clean Code_ or language-specific texts (e.g. _POODR_ for Ruby). Test coverage, great documentation, highly readable code: they're not optional any more.

2\. Go agile and lean. Don't expect BUFD. Realise the client is learning as they go too.

3\. Don't take specs from a client and develop code that meets them. Develop the spec _with the customer_. Use BDD properly.

4\. Realise there are many things that go outside the spec. Pre-empt. Don't wait to be told. Realise that functional requirements are less than 20% of what is needed to successfully ship a product. There are many things I would "just expect" a developer to do, but every time I've worked with an Indian dev agency I got exactly what I asked for, no more, no less, no common sense applied. Do I really need to tell you the "password" field should be encrypted at rest, and which crypto scheme to use? No, you should do that because it's basic common sense, and tell me what crypto you chose, and why...

5\. Say "no" more. Say "I don't know" more. Say "we made a mistake" early when it's obvious you made a mistake. Don't pretend you/your colleagues are an "expert" in something if you've read one or two books or developed a couple of projects: you're still novices until you have 3-5 years experience of doing that thing. Embrace that, be honest about it, it's OK. Price yourself accordingly.

6\. The sector tries to compete on price. Try and compete on speed or quality instead.

</comment><comment><USER21> I had a positive experience a few years back with a small agency located in Bhubaneswar in Odisha.

Our company started working with them because we needed a mass-production job done quickly: we needed a whole mess of paper health-care forms converted to Acrobat (pdf) forms.

We quickly discovered that this particular agency assigned a staff member who worked to really understand the forms and imagine the workflow of the people using them. The forms (PDF forms really are programs) we got back were excellent. They actually made the work of filling them out faster than the old paper forms.

So we inquired whether they could do other development work for us. That turned into a good relationship.

We went into the relationship not thinking "how do we get the cheapest possible programming labor?" but rather "how do we add to our company's capacity to get all these @##*% forms converted?". We started assigning low- risk tasks. And, after three years or so they were great colleagues.

We gave them good references and they got other work partly as a result.

We did daily "scrum" calls, early in the morning US time and at the end of their workday India time. Somebody went to visit them once a year. In other words, we treated them like colleagues. It's all about people and relationships.

I believe classic cost-driven "outsourcing" contract deals -- the kind of stuff that's driven by finance executives -- have contributed to India-based agencies' struggles with reputation. Would you hire a kid fresh out of Carnegie Mellon and tell him "you have your job because you're cheaper than our other developers?" No. So why would you say that to a kid fresh out of an excellent Indian university?

I believe the Odisha location was helpful, because turnover was lower than it might have been in Bengaluru or Mumbai.

Plus, Odisha is a really cool place to visit.

That's one story.

<comment><USER22> Being originally from Odisha I am curious to know the name of the company.

</comment></comment><comment><USER23> Number one thing: highlight the people in your team. Problem with working with Indian agencies is that the programmers are hidden behind the project managers. That is not effective way of working in iterative work.

</comment><comment><USER24> I see a lot of comments here about increasing code quality, work with your customer on the spec, don't play the lower price game, etc. These are all symptoms of a larger systemic, cultural issue. I'm not referring to the different cultures between regions, I'm talking about the developer culture.

Successful agencies in the west pride themselves on being engineering focused and treating developers right. Treating them right means they are the cherished role in the organization, probably amongst the highest paid in the organization and roles are sought after by junior developers.

A common trend I suspect is cultural in India is that developer roles and most importantly senior developer roles are not prestigious enough. Titles seem to matter more and I witnessed many times competent developers are motivated to 'move up' into PM or manager roles either because of prestige or money.

Address this by creating a culture that attracts developers that want to be senior and grow within the role instead of simply a stopping point on their way (in their minds) to a CxO position that has the prestige.

If you can create a culture in your company where developers are cherished and highly paid, you will likely have higher quality as an output. Sure your price will have to be higher but maybe after a while you can beat your regional competitors on time too. Make sure this culture is actually in place and working before adding it to marketing materials.

<comment><USER25> Wow, this is so accurate. I used to do a lot tech interviews in my previous organisation and 90% of the time, would wind up with a person whose near future goal is to be a manager or who would boast of having managed x number of people, apparently that profile being of a more prestige value than someone who purely codes. In due of course of that experience, I could also derive that this attitude kind of stems from difference in our approach to getting in computer science itself.. most folks who get into a particular engineering stream (computer science/ electronics/ IT etc.) in India don't do it out of an interest in that particular stream but rather out of the prestige that the stream has because people with higher grades in the engineering entrance exams are "supposed to" join these streams rather than mechanical or chemical streams, in which they might have more interest. This is again associated with the employment opportunities and social standing offered by that employment in a developing economy like India.

</comment></comment><comment><USER26> I guess most comments in this thread already show you the general perception you'll have to deal with. Here's my take at the three key issues as someone with deep roots in India:

First of all, excel at communications with potential and existing clients. Have at least one person on the team to speak English on a native level. In your description, there are already quite a few mistakes and when freelancers and agencies apply to my gigs, I filter the initial messages out brutally. I don't even look at applications that feature spelling and grammatical mistakes and miss details I specifically asked for. Also, have a person on the team who has been exposed to the culture(s) of the region you want to sell to the most, in order to be able to e.g. say "no" more often and to also admit when you messed up.

Second, never approach a client with an opening line like: "Trust me Sir we are best developers we will do best work and give you cheapest price." You have no idea how many of these I get on a daily basis. You simply don't get the best people at the cheapest price. Define your target group and either sell yourself as a cheap, low-quality sweatshop or continuously invest in great people and training and sell yourself as one of the few exceptional agencies in India that actually delivers great quality.

Third, stop chasing short term profits. This is the worst aspect of doing business in India - most freelancers and agencies rather deliver bad work and get some money, then really putting hard work into in and building great relationships that will create lasting value.

Happy to give you more feedback, just ping me via the e-mail in my profile.

</comment><comment><USER27> I am from India, there is no doubt that devs/IT professionals generally are highly talented but

\- The whole education system is totally messed up here, Things are changing slowly. the professors/lectures have no idea what is going on from rest of the world. the students are preparing for exams only in the last day. the exams are purely memory based. I did "Rote learning" during my school days.

\- The interview process is highly questionable in most IT shops. Even Bill Gates can't get job here. (hint: its memory based interview process, it can be easily cleared by students who are well on it)

\- There are lot of politics going on any IT firm (thats the worst thing)

\- Most of the CEO do not listen. you have to follow their instructions.

\- It was 2002, I applied my first job, friends who referred me for the job told me to change my resume to fit the requirement, instead of including my real skill set.

\- It was 2005, my first interview in US, An interviewer who called me "how much US experience you have?" I told her "I do not have any US experience", I got lot of anger, what is going here?, I am doing coding for few years, now it has no value? latter I realized the purpose of the question.

\- 90% of the students who are coming to IT industry are from poor/middle class families, they have lot of focus to improving their family, standards of life, unfortunately their skills/focus are not properly unleashed.

\- Most IT people in India spending more time on traffic rather than coding.

\- the list goes on. I do not see any use of listing/discussing these here.

</comment><comment><USER28> it's a little different but when I look at my experience with developers from Xteam or TopTal (very positive experiences) vs other agencies (some in India) that I've worked with I see a set of clear differences. One is quality in code. I'm very rarely having to correct work, whereas other agencies we will receive a project and it often way off base. The work might meet the spec but not of quality and certainly can't be built upon. In another post, you mention team augmentation and I think that is a great idea. I would also echo concerns about autonomy and ability to innovate. Again with X-teamers/TopTal devs they usually want to help drive technology decisions and want to help to own a project. They then build trust by executing successfully on those ideas. I think if you differentiate on quality, augmenting teams, and autonomy, you will be able to rise above stereotypes that have been built up. That likely means charging more and spending more time screening potential hires. Smart companies will recognize that it's worth paying more so they don't have to pay several times over to fix what was done by a lower quality team.

</comment><comment><USER29> >> How do we work on changing customer's perspective?

What perspective are you trying to change here? This question is broad.

Rather if you are more specific and give one or two broad examples of what exactly happened vs what was expected by your clients and how to address them etc., you might get more useful answers.

Remember Indian IT companies vary from small boutique shops to mid-size to giants like Tatas. Company culture/ operating practices vary based on size and skill base.

The industry is quite mature and you may want to provide a little bit more information about your size/ context /problems faced, to get specific answers or recommendations.

</comment><comment><USER30> I've done a lot of work with Indian development teams and agencies as a client in both the US and the UK.

I've had varied levels of success but the most consistently successful model has been a leverage model. By this I mean that there is one person in the agency whose primary (often sole) job is to manage the communication with the client. This person is representing the customer to the development team. The key skill that this person needs is that they are familiar with and can navigate the culture of the client as well as the culture of the development agency.

For Indian teams this usually has been someone Indian who has worked for a number of years in the US, the UK or Aus but it doesn't have to be. Note, I have generally worked for US or UK companies so YMMV.

Ideally, the go between is physically located with the client. This really helps in the US as the timezone headaches become an internal agency issue to deal with. If they're not co-located with the client then this can still work but the go between has to be really, really good.

</comment><comment><USER31> I've worked with two companies Blue Star Infotech and Hubspire (some of team in the USA including CEO).

My experience is that given clear instruction they deliver against those. We just had call this morning on commenting among other things. In any case, Hubspire has been a valuable resource. Don't believe there are tremendous cost savings though -- more about not finding resource in NYC.

</comment><comment><USER32> I taught a dozen or so as part of our outsourcing years ago at <omit> Consultancy in Vashi Mumbai, all except one turned out to be useless (this one guy was awesome though, I always wonder what happened to him against useless peers), and these were apparently the cream of the crop. All stereotypes turned out to be true, shit code, slow progress, no straight answers, record high hours recorded, frustration with the loose neck and yes man responses,in end outsourcing was canned. Hospitality was great though, nice people, musuems, awesome food, kingfishers, trips to Goa, Id do again if against a more generous expense package.

</comment><comment><USER33> From the US the time difference is a major problem. You can never discuss anything during normal work hours and any issue will have a one day turnaround. Or you stay up late all the time and then it takes over your personal life. We have some devs now in Costa Rica which is much easier to manage because you can discuss things on the phone during the day.

<comment><AUTHOR> I agree with most of the comments. Clients & development teams can manage the time difference diligently -

a.) Picking good Project management tools (We use BaseCamp + Wunderlist, Asana + Skype, Slack + Trello, Jira + Skype)

b.) Most of the time we required Standup calls with project owner to discuss status & work ahead

c.) Proper documentation & project planning reduces time spent on phone calls & constant bugging

d.) Slack is considered to be distraction to your productive hours

<comment><USER33> This is fine and good but you are creating a lot of process to work around a fundamental problem. Direct face to face communication during working hours is hard to beat.

</comment></comment></comment><comment><USER34> I've worked on two projects this year originally developed by developers from India.

These projects have been an ongoing effort to upgrade, resolve bugs and add new features.

The 'legacy' code just causes ongoing problems.

The main issue is everything is overly complex. They use 10x the amount of code that is needed for everything.

They also attack problems in really complex ways.

And they like to create really complex functions that are multi-use instead of clean functions that meet a specific purpose. It's not even really code-reuse or modular as they will pass a value to a function and then run it through a myriad of if statements to figure out what model it is and what should be done with it.

They also don't include much if any error checking, checking for objects before using them, etc so if anything unexpected happens a fatal error occurs.

I have contacted the original development shop, and contracted out some revisions to them. They do have one top notch guy, but he hands off work to other developers that aren't as talented, that's were the trouble creeps in.

To change perspective I would focus on writing cleaner code that is more bulletproof.

</comment><comment><USER35> My view is that its hard to form a generalised opinion on a entire sector. Especially when that sector is in a country with 1.3 billion people.

</comment><comment><USER36> Focus on something in demand and sell yourself as experts in it. The problem of many agencies is that they offer to do everything and anything and because of that appear desperate and not serious. When you're one of the best in a specific area it's much easier to sell your services, and also easier to expand your focus later when you're established and recognised.

</comment><comment><USER37> I can only speak from my own individual experience with one such company (Readybytes). It was, and still is - great. I believe it all sums up to the personality and leadership of the CEO, which in this case assumes total responsibility and demands high dedication from his employees, which he personally picks one by one. My projects are for PHP web applications and we continue to develop it together. By "together" I don't mean it's a partnership, but that the ideas come many times from the developers themselves. I find it enriching. I would also suggest anyone who wants to work with an agency abroad on a large scale project to simply go there, meet the people, sit and work with them in the same room, dine together, participate in social events etc. Not only does it create bonds, but it improves the communication at all levels for the benefit of all sides

</comment><comment><USER38> I'm convinced there are schools over there that print Masters degrees in computer science with only 6 weeks of training. I'm only half joking.

</comment><comment><USER39> I am working in a Startup, we have outsourced some jobs to third party team. I can't tell you how horrible Code they write. Just to give a context they will store values in JSON inside the DB, just to lower the effort of converting them later

I totally agree that the quality of work is way to low. I think that it's up to the developer how well they write the code and develop themselves nothing to do with what majors they had in School. It's all about handling the minutest details well and this is what differentiates a good Dev. It's like carefully selecting the proper screws while building a drawer even though the screws might not be visible to the user.

<comment><USER40> I am not sure about your context, but even the relational databases like postgresql support json as the first class citizen because sometimes you have to store non relational data into your db

</comment></comment><comment><USER4> If I were you, I'd work on setting a good image of my own self, or of my agency, instead of attempting to change image of an entire country.

I'd work hard to sharpen my skills. I'd find some way so let the world know about my skills. It could be through blogging, or through contributing in open source software, or any other way. When looking for clients, I'd find good clients who appreciate quality work (not every client cares about quality and not price). I'd work hard to build good work relationships with those clients. One good relationship goes a long way.

</comment><comment><USER41> In my last company we were burned by these "IT firms".

It is basically impossible to get any meaningful work done unless you have a person on site with the dev team.

You also need to write very very very detailed design docs and feature requirements.

If you absolutely must use services of these companies, try to get them work on peripheral features, instead of core application logic. You'll be minimizing long term technical debt damage risk to the project that way.

</comment><comment><USER42> Nobody gives a damn about wipro/tcs/infosys. India's best developers and designers are in a company called Directi. They compete w/ likes of google to get the best talent, pay them huge and groom talent. Most of their ex employees either land in Google or Facebook. Look it up for yourself.

They are not a service based company, so this is not a cheap plug promoting them.

</comment><comment><USER43> India is a big place. To me that is like saying, "what are your views on development agencies based in the world?"

<comment><USER44> That is true. However, there are cultural differences in different parts of the world. These differences affect in interaction between groups of people that are not from the same part of the world.

I see this question asking about what it's like working with India-based dev agencies, taking into consideration cultural differences.

It would be just as valid if asked about other parts of the world.

</comment></comment><comment><USER45> I kind of get what you're saying. I live and work in Germany where there is the stereotype of a very high standard that we carry around on all our products i.e. there are companies that would not do business with us if they did not get the "Made in Germany" stamp from our exported goods/services. This is an image - whether correct or not - that was acquired over a long period of time where many companies (BMW, Bosch, Siemens, BASF, Bayer, etc) provided high quality goods/services and built up an international image.

Anyway, this is a positive perspective customers have, and I admittedly benefit from it when doing business. In a lot of ways, the opposite can be said in terms of stereotypes for India, and so that's tough and I suppose what your question is about.

The thing is, even if perhaps I get an initial project in part due to a positive stereotype, that customer will not recommend me or use me again if I don't perform excellently for him i.e. making him better off through the interaction.

So that's what I focus on. And if you do that, in my experience, stereotypes won't matter at all. You won't be an "Indian Agency" but "Insert your company name" who does great work.

Some things I do to keep/maintain customers are: having very high standards of quality i.e. if a customer uses me I want them to remember me as the best contractor they ever used, they should be impressed at how clean/well- executed/designed/on-time the software delivery was. I also keep things professional, succinct and timely, and goal oriented and expect the same from the get go. Also if anything is not clear to me I make sure we clarify it and get on the same page immediately. Clients and you both hate wasted time/effort.

Finally, on the personal side I try to constantly self-improve and hone my areas of expertise so I can get things done more efficiently and be quicker on my feet and more creative/innovative with my solutions for customers. This is actually really big. Most (good) clients really really want someone who can think for themselves, is creative, and takes a problem and brings back an amazing solution. This can be difficult, I know, since a lot of clients won't give you enough information or even attempt to think their own problems through, etc. But with some you can help (being upfront, asking well-formed precise questions), and with the worser ones you can usually recognize them very quickly even in the initial project discussion and my advice is always walk away.

If you do these things, you will have absolutely no problems finding customers who love you and recommend you to everyone regardless of where you come from (at least IMH experience).

Best of luck.

<comment><AUTHOR> This is by far the best advice I have received. Thank you.

</comment></comment><comment><USER46> How can you show someone you are good mobile developers? I would focus on communicating how have done amazing work for previous customers, and try to earn referral business. Also, do amazing work!

<comment><AUTHOR> That's exactly we have done so far. 80% of our business is either referral customer or repeat customer.

10 to 20% of times we have failed miserably to satisfy customers needs.

<comment><USER46> Maybe I'm wrong, but a 10% to 20% failure rate could be pretty good. A lot of projects were never going to be successful no matter who tried to implement them. If you please everyone, you're probably doing easy work.

</comment></comment></comment><comment><USER47> I've worked with 4 different ones now (in Bangalore and New Delhi).

You want fixed price, fixed DETAILED spec, fixed timelines and assume that you don't want to maintain the product afterwards. That's worked well when we've had quant calculators that just need to done one thing. Expect there to be a high management cost on your side.

Outside that, my experience has been pretty terrible and it comes down to a cultural desire to be positive all the time. Saying Yes all the time is a disaster, especially when dealing with non-technical business people. I'll give a couple of examples:

1\. I've tech-Lead a large group (40+ but I interviewed more) of offshorers, the manager on the Bangalore side helped the devs through their coding interviews by recording my questions, working out the answers and handing them round. When I realised what was happening, I invented easy questions off the cuff and found the interviewees (on the other end of the phone) would pause and then give an answer they couldn't explain. I could even hear one guy typing in the question as I asked it. When we approached the Bangalore manager to sit in on the interviews, he said that he didn't see a problem, claiming over and over that he'd chosen the very best developers.

The CEO still went with the agency and I found that the few good developers that agency had moved on because they were offered more elsewhere, leaving with the knowledge I'd trained them with.

2\. We expanded our team by bringing in an offshore team. The Indian provider sent 6 to 8 (can't remember) "senior c# .NET developers" over for us to train on the system. One of the developers didn't know how to open a solution in Visual Studio and asked me where the "Run" button was. When I showed him the CV that had been sent over for him, he agreed that it was his and confirmed that he had 6 years .NET experience. How you can code in any framework for 6 years and not know how to press F5 is staggering (this was back in the day when VS was your only choice).

None of the companies or managers I've worked with before would ever go offshore (outside of Europe) again.

> How do we work on changing customer's perspective?

A lot of this is cultural. What appears to be of acceptable quality to an Indian agency isn't OK where I am in the UK. Also, there needs to be balance between being positive while at the same time realistic. "Bending the truth" is part of the back-and-forth of Indian business but in Europe (and especially in software development), that's a disaster.

The best you can do is act more like a Western business and how their perspective changes of your single company.

</comment><comment><USER48> Which customers? What perspective? What platforms?

You'll need to be clearer in what you're asking. Are you asking for opinions, or advice?

</comment><comment><USER49> hello and thank you for your comments from the America but our code top made cheap prices super communicate.

</comment><comment><USER50> Stay away from it, other then tax advantages you should stay away from it. Nothing but horrible experiences.

<comment><USER6> I agree, but how to improve it? What issues did you face with them? It would be interesting to read your experience.

<comment><USER50> First communication, the mean no but say yes. All meetings has to be done in English, not a big deal but for a dutch company a lot of extra effort is needed. Their lack of skills, they say they are senior, you find out they are on learning level, hidden behind two better programmers. Time difference always bites you in the back. If you just wanna hire 10 or 15, hire 5 good people in your own country. If you need more then a hundred hands and can afford to place some people over there, give it a try.

</comment></comment></comment><comment><USER51> Does your agency have any public GIT repository? To be more specific.

<comment><AUTHOR> yes, we do have public git repo.

We also organize a monthly developer conference and emphasis on development practices + development tools on iOS.

</comment></comment><comment><USER52> Low quality, mediocre delivery to spec, frustrating communication, but cheap.</comment>


How do you practice programming? - <AUTHOR> http://www.allourideas.org/practiceforprogrammers

<comment><AUTHOR> Someone added "I hate your choices" to the list. Awesome. The beauty of the All Our Ideas platform is that you can add your own ideas. They'll be rotated into the choices and will be eligible for voting.</comment>


Beautiful Assembly (LuaJIT) - <AUTHOR> http://article.gmane.org/gmane.comp.lang.lua.general/81280 <comment><USER2> luajit's author on this post: [http://www.reddit.com/r/programming/comments/iup0m/beautiful...](http://www.reddit.com/r/programming/comments/iup0m/beautiful_assembly_luajit/c26sg7f)

<comment><USER3> Yup, Mike is right about that, but I'm still impressed with what it generated.</comment></comment>


BBC Newsnight online 'chat' with Lulz Security hacking group - <AUTHOR> http://www.bbc.co.uk/news/technology-13912836 <comment><USER2> Their persistent implications that the antisec movement is their original idea are laughable, and immediately discredit them. It's been around for over a decade.

See <http://en.wikipedia.org/wiki/Antisec_Movement>

</comment><comment><USER3> _We weren't able to talk to Whirlpool in person, but met in cyberspace in a private online chat room. In those circumstances it's almost impossible to verify with absolute certainty who you are speaking to, but Newsnight was able to verify that this person had access to the @Lulzsec Twitter feed._

Telephones have the exact same issues, but somehow "meeting" in "cyberspace" seems stranger than a conference call.

<comment><USER4> It's stranger because you only receive words instead of both words and tones. Communication is 7% words, 38% tone, 55% body language [1]. With the phone, you get 45%. With chat, only 7%.

[1] [http://www.bodylanguageexpert.co.uk/communication-what- perce...](http://www.bodylanguageexpert.co.uk/communication-what-percentage- body-language.html)

</comment></comment><comment><USER5> ...</comment>


We Tried Slack and We Deeply Regretted It (2015) - <AUTHOR> https://medium.freecodecamp.com/so-yeah-we-tried-slack-and-we-deeply-regretted-it-391bcc714c81#.jr3zva5v8 <comment><USER2> The author's expectations just seem wildly unrealistic, I can't find much sympathy. Signed up for a pay service with a clear limit on the trial, yet was surprised by the limit, even though he knew how many Slack users he had and knew or should have known how many messages per day they were already sending. Put his community (customers) of thousands on the Slack team, even though the advertising and economics only make sense for internal teams. He is trying so hard to make his own mistake sound like Slack's fault.

Also, previous discussion: [https://news.ycombinator.com/item?id=9754626](https://news.ycombinator.com/item?id=9754626)

<comment><USER3> You appear to be confusing the message archive limits with the number of user limits. The first is (loudly) disclosed. The second, apparently not.

<comment><USER2> You appear to have not read the article. The very first complaint is about the 10k message limit warnings. The author then complains "Slack would aggressively archive messages, sometimes only minutes after they were sent." He's lucky the messages even went through. He asked Slack for guarantees, after the fact, on the free plan with no intention of paying Slack's rates. Even the user limit problem is silly. It's called a team and marketed for internal use, not as something you 're-sell' or offer customers. It's obvious that putting your users on a single Slack team is not going to scale to tens of thousands of people, as soon as you start using Slack. My point here is that the author did not do his homework before he moved his thousands of users to Slack, and your point falls squarely under this lack of effort.

<comment><USER4> His point, which you have missed, is that although the archive thing was a problem, it may been their own fault. However, the number of users allowed was not, plus paying for the service wouldn't change that the cap exists.

<comment><USER2> My point, which you have missed, is that the author should have uncovered this cap _before_ moving his community. It was clearly on sketchy ground before he did it. You can't say anything about what paying would have done, because he had no intention to pay. And if he had paid the 0.5 million, I'd be willing to bet that Slack would attend to his needs. But none of that happened, so it's a straw man.

<comment><USER5> Please share your method of uncovering, in advance, undocumented limits inherent in software; it's desperately needed.

The guy left a free trial for another free trial; if he's at fault we're all at fault every time we change our go-to software. The lesson might be that "there be dragons" \- you should guess that any "better" program or SaaS out there is less that half of what it says once unknown limits have been discovered.

<comment><USER2> It's called "due diligence", and people do it all the time.

He didn't change his own personal go-to software, we're not talking about a trial of a video game here. He changed the software for thousands of his users. He put thousands of people on a free trial for something that was not obviously going to work.

You do have the option to investigate before you make that kind of move. If you choose not to exercise it, you don't have that much ground to stand on when things don't work out.

<comment><USER6> The due diligence in this case would have been researching the user limits which (as others have pointed out) were not published or advertised anywhere.

<comment><USER2> There's a reason it's called "diligence", because it typically involves _trying_. Personally, I don't count reading a company's ad copy on their own web page as being even remotely diligent or doing much research. Normally 'due diligence' involves talking to the party you intend to engage with, as well as talking to others who have experience with that party. The author didn't mention any of that.

Other users here also pointed out that there is a known specific API error message for the user limit. That kind of thing could be uncovered with a little diligence. Author could also have setup a fake team and tried to add many users before putting 8k real users on the team and just hoping.

He did finally start talking directly to Slack only after he started having trouble, and they responded and disclosed the existence of a team size limit. This obviously could have happened before hitting the limit.

The author expressed incredulity at what would be a $500k price tag, and yet completely fails to see why that is a massive glaring red flag. That alone should have been enough signal that his plan was skating on thin ice, but instead he drove right past all the warning signs and then blamed Slack for it.

<comment><USER5> Trying a huge number of users? How without migrating?

He could have asked innumerable questions all of which contradicted the description of what he was getting. He couldn't have known which was the right question. I very rarely query in person before a purchase; I did recently and was given a flatly wrong answer on one question, and then a very positive answer that wasn't logically coherent (strongly suggesting a no, in truth) on a second question. I'm buying anyway, but unless you can phone a corporate head, querying customer support for arcane technical information is rarely a great way to get the right answer, in my experience (sorry to say.) UNLESS you already have a proven fail, of course - which he did.

If it were my program there'd be an error message in there no matter what the upper limit was; I assume others are as competent.

I also don't follow your logic re the high price tag somehow logically entailing a _secret_ limit on the free product - unless you're implying that it's a trap, a way of phishing for phools. (In my country, an illegal bait and switch, actually.) That's something that doesn't work too well when you're peddling to corporations, the pool is small and word gets around too fast.

<comment><USER2> > I very rarely query in person before a purchase

Yeah me too, for things I buy for myself. But it's absolutely the norm for software purchases of $500k. That's what _everyone_ does, it's extremely common practice for any org purchase of software for over 100 people.

If the author were actually looking to spend $500k, he definitely would have called first and done a bunch of research. Nobody spends that much without talking to someone. The only reason he didn't have that dialogue is because he thought he'd get the whole thing -- apparently a $500k value -- for free.

That's what I mean about the price tag being a signal. It should have signaled a phone call, at the very least.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> There's a perfect alternative:

* Free

* Handles thousands of users seamlessly

* Archived via bot same as free Slack

* No noticeable performance hit for high user volumes

* Wide variety of interfaces and integration bots to choose from

* Widely deployed and trusted across tech communities

It's called IRC.

Edit: I can tell more people are encountering challenges using Slack these days. In the past, a suggestion to use IRC would have been downvoted to hell and back!

A lot of people seem hung up on the history, file sharing, or some other feature that Slack has, so I thought I'd take a moment to expand on my ideal setup and how they translate from Slack:

* Long-lived documentation and important team knowledge: Wiki pages (which I prefer even when using Slack and pins or history search are available). Full history of edits is visible and it's easy to access/search.

* Discussions involving a large number of stakeholders: Email. Threads and the async nature of the protocol make it well-suited to discussions when users aren't all online at the same time and the discussion is more thoughtful and isn't moving quickly. Slack threads suck replies aren't very visible and history scrolls quickly in active channels.

* Discussions involving outages, current tasks, and other immediate needs: IRC. It's real time, cross-platform, etc. History can be archived for later searching, but CHAT HISOTRY != DOCUMENTATION. Post-mortems and that sort of thing should end up in a wiki or similar.

* File sharing can be done via some other service with a link pasted into chat. One extra step to paste the link manually isn't a big deal.

<comment><USER8> There are drawbacks, though:

* no built-in file uploads

* a bot is _required_ for archiving

* a bot is _required_ for notifications

* no native scrollback/history - IRC bouncers solve this problem, but it's not a plausible solution for most non-techies

* the last two issues also mean that mobile solutions are going to be lacking.

It's possible to have IRC as fully featured as slack, but it does mean either rolling your own solution, or using a lot of other software to accommodate everything and everyone.

<comment><USER9> * file uploads in your chat client are misplaced at best, and "rich" environments with formatting and images are 99.999% distractions

* channel services can provide archiving and notifications.

* scrollback can be handled by a bouncer, yes, but it's up to the IT dept to set it up per-user

* there are plenty of usable irc clients for mobile, web, and desktop to satisfy this need.

source: Started using telegram/slack but productivity went down so work launched an internal ircd (inspircd). Internal wiki, git, and sharepoint for documentation/files/code where it belongs. Not the chat client.

<comment><USER10> > * file uploads in your chat client are misplaced at best, and "rich" > environments with formatting and images are 99.999% distractions

Nope. They're extremely useful. Just offhand I can think of tons of times we've (a) pasted metric graphs, (b) pasted annotated screengrabs, (c) pasted snippets of code, (d) pasted snippets of test output. None of this is easy in IRC.

<comment><USER7> But once they're pasted in there, they can only be used there. It's barely harder to upload a file to any myriad of file sharing/hosting services and paste a link which most graphical IRC clients can be configured to auto-expand (and users who don't care/don't want a bunch of images can choose to handle links differently)

<comment><USER10> I want the text snippets to be shown inline. I'm fine with Slack owning the image assets, because I don't have to worry about permissions the way I would if I uploaded them somewhere else (unless it was to some other internal tool).

I've been on IRC since 1993, and I'm an accomplished programmer. I still find setting up and configuring ZNC and an IRC client complicated, error-error prone, and confusing. And it doesn't always work - sometimes it quits working for no reason and I have to restart things.

<comment><USER10> In particular, there are many settings that mention security, encryption, and certificates. It's unclear what combinations are sensible, supported, or necessary.

</comment></comment></comment></comment></comment></comment></comment><comment><USER11> Sounds like most of the issues were due to not paying for the product. Which is fair given Slack's freemium model but I wonder if they were throttling free users after a certain point, causing performance issues. If I was this guy I would've reached out to Slack's sales team and explained the situation to see if they could offer a compelling deal. They might've seen a huge discount as worthwhile given it would get 5000+ coders using Slack regularly, many of whom would then promote in other companies.

<comment><USER12> If you read the article, it's clear the user limit was a technical limit and not a freemium limit. So even if they did pay, Slack would still not have been able to accommodate all their users.

Which leads me to my old-timer question: What's wrong with IRC?

<comment><USER13> There's nothing wrong with IRC except for the fact that the user experience in an IRC client is generally horrible. They're not pretty, there's no good account system so users can easily spoof being someone else, the logging isn't great by default, sharing files is hard, and whether or not you can do media embedding depends on the channel setup.

There's a reason why companies like Slack have built billion dollar businesses doing ostensibly the same thing as IRC, and it's because IRC doesn't offer enough value _even if it 's free_.

<comment><USER14> > They're not pretty

It's an open protocol. Check out Kiwiirc, it's pretty good looking! A decent front-end team could build a nice interface.

> There's no good account system so users can easily spoof being someone else.

I believe that NickServ takes care of this.

As far as logging, and file-sharing. Yeah you're onto something. IRC isn't as bad as people make it out to be :/

<comment><USER13> _Check out Kiwiirc, it 's pretty good looking! A decent front-end team could build a nice interface._

Of course. But they haven't. Kiwi isn't bad for an IRC client, but it's way behind Slack.

 _I believe that NickServ takes care of this._

Nickserv is hard for a typical user to understand. The number of times someone thinks they've registered a name when they actually haven't demonstrates that. Ghosting makes it harder too.

I used IRC for about a decade. I used even more esoteric online chat services like telnet talkers and MUSHs too. They're great if you learn how to use them. But that's the key difference - you don't need to learn Slack. It works how you'd expect it to work. A user can just pick it up and do things with it. That's a _massive_ difference, and possibly the main reason why Slack can charge a decent price for their product.

</comment></comment></comment></comment></comment><comment><USER15> 8,462 users on a free plan with no intention of upgrading to paid.

<comment><USER16> He never said he had no intention, I just think he didn't want to pay half a million dollars for slack.

<comment><USER17> He wouldn't have paid $50,000 per year either. It's pretty obvious he signed up with the full intention of staying on the free version forever.

<comment><USER4> Paying would not have helped him anyway.

</comment></comment></comment></comment><comment><USER5> Like the author, I'm always "that guy" who plays a game or uses a program in a way that seems reasonable, or optimal to me (and often is very efficient) but is so unusual that the program eventually "falls off the edge of the world" and starts crashing all over the place because none of the beta-testers ever did anything quite like what I'm doing with the program.

Like this guy, I usually don't know at first just what is so unusual about my behavior, and often I never do find out. My favorite game (not yet a decade old) crashes every several minutes for me, playing the way I like. I just save extremely frequently and keep right on playing it.

The moral: Where business is concerned: "Be a smart herder" \- don't make any false moves, or adopt odd implementations or uses of key software products (or software controlled products) because the minute your behavior is similar to only 1/1000 users (sometimes 1/100 users), _you are using the equivalent of an alpha or beta product_ , and you should count on getting zero product support. Your complaints will, likely, not even be properly comprehended or will be understood, but labeled "impossible" and abruptly closed (I'm looking at you Open Office.)

</comment><comment><USER18> Speaking of Slack, what's an alternative with a different pricing model?

We have a core team that's always around, and for that Slack pricing is fine, but we have a significant number of "drive by" users that aren't worth paying $60 per year.

We're generally happy with Slack's features, so which are the similar services that charge something different than per-user?

<comment><USER19> Mattermost is a complete replacement for Slack. I really don't understand why people use Slack if they don't use the integrations, which in my opinion are quite unnecessary in many cases.

</comment></comment><comment><USER20> Hm. Well, that made me a bit concerned to start, as I'm working on a Slack- based hack-and-slash RPG [1] that I'm planning on running entirely on their free tier, but I'm pretty sure that their use cases differ from mine significantly. I'm not worried about message archives (as it's just game history), and I have @here/@all locked down significantly.

The "max user size" thing is a bit worrisome, but MMOs have a history of sharding to solve that problem anyway, so hopefully that shouldn't be a problem either. (Players will be able to chat together in a shared Discourse forum, so sharding shouldn't really hurt community-building.)

I wonder if any progress has been made since then to support larger teams, though? It's been quite a while, and Slack's engineering team has been cranking out a lot of great features and improvements lately.

[1] [http://www.slackandslash.com](http://www.slackandslash.com)

<comment><USER21> Are you planning on trying to make money with this? If so, you're in some amount of trouble, depending on how much you're looking at trying to make.

If you're not trying to make money, you still should check the agreements for Slack; this may constitute abuse.

You should also take a look at your architecture, too. You've got a clear message bus where you send things to and receive things from Slack. You may notice that where those messages go matters less to your code than you may think. If you find you can't go with slack, it may not be all that hard to simply set up a web site that plays your text-based game by shimming the message flow in and out, in which case you can do whatever you like, at whatever rate you like. Despite the slick name, you may not need Slack at all. You'd still have the conceit of the chatbot experience, which will definitely appeal to a certain niche, just as MUDs did.

(And that name _may_ be too slick. I don't know how nasty Slack is inclined to be, but directly referencing brand names in your name like that is dangerous from a trademark perspective.)

<comment><USER20> I don't think I trip up the agreements anywhere, I've checked over them a few times and also emailed Slack to ask if it was cool if I made a game on their platform before I started. I didn't share too many specifics (I said it was MUD-like and was going to use their buttons), but they told me to go for it, so I think I'm in the clear there.

Also, while I haven't figured out monetization, I don't think there should be any real problems with that either. Other people charge for their slack bots and integrations, so unless they specifically have a problem with a game-style slackbot charging money, there shouldn't be anything preventing me from charging for stuff.

You very well may be right about the name, though. I've just registered "chatandslash.com" as a backup that I can switch to before too much marketing has gone forward, and I've already emailed Slack again to show them what I've come up with and for further confirmation that what I'm up to is fine and dandy before progressing any further.

Oh, and you're totally right about shimming out Slack with my own frontend. It's in the backlog of stuff to do some day potentially, but I think there's a lot to be gained in the meantime by explicitly staying with Slack in the meantime. "An RPG you play in Slack" is a lot more interesting than "An RPG that looks kinda like chat, I guess".

Thanks for the advice!

</comment></comment></comment><comment><USER22> * Enterprise Grid || [https://slack.com/enterprise](https://slack.com/enterprise)

Worth noting that 1) the author's expectations were wildly unrealistic. 2) Slack has since come out with better tools to manage large teams.

</comment><comment><USER23> Sounds like a manifestation of the 6 p's: Proper Preparation Prevents Piss Poor Performance.

</comment><comment><USER24> I switched over a large group of friends from using a gazillion hangouts to slack and it's mostly been an improvement. That being said, there's a lot less of us: around 30.

I'm definitely disappointed to hear about this. The pricing model sucks for us as well since it means $60 a head to add someone to the friend group if we wanted to pay for slack. If we could pay a fixed price and get a slightly better message history and more integrations, I'd gladly pay it, but per-head is just ridiculous.

We also use Discord for online gaming since it's easier to invite people outside the group. It's been absolutely fantastic, but we had issues with some people not having access at work.

<comment><USER25> Slack isn't intended for "friends". Their business model is clearly aimed at supporting teams inside businesses. $60 per head is absurd for a tool to chat with friends but pretty reasonable for a business that gets real value from the tool.

<comment><USER24> They clearly indicate otherwise. Slack is certainly meant as a productivity tool, but they make several claims:

\+ For all kinds of "Work"

\+ For teams of all types and sizes

\+ Bringing people together to make them productive

Compare that to the messaging for say Hipchat:

\+ "Team chat built for business"

\+ Enterprise features

\+ Loved by your IT team

(Edit - Formatting)

<comment><USER25> I think you're selectively reading what you want to see. Slack's title line is "Where Work Happens". Work, teams, and productivity normally are not terms you use to describe chatting with friends.

</comment></comment></comment></comment><comment><USER26> This was very similar to the Reactiflux move to Discord:

[https://facebook.github.io/react/blog/2015/10/19/reactiflux-...](https://facebook.github.io/react/blog/2015/10/19/reactiflux- is-moving-to-discord.html) (October 2015)

To be fair, Slack never really said it was made to support that many users. Even in my team of less than 20 on the free tier, we hit the 10,000 message limit really quickly. I can't imagine how that must have been with 8 thousand users.

</comment><comment><USER27> This has been a sore point for many communities (see the Digital Nomads + React communities).

But if Slack were smart about it, they'll realise that there's an opportunity here. They are a very well-funded company and it wouldn't hurt to spend some resources to beef up their current code/infrastructure or to even spin up a separate product that they can profit from.

</comment><comment><USER28> I'm generally a slack fan, but isn't that just plain ol' illegal false advertising?

<comment><USER29> It sounds like more of an engineering issue. I'd imagine that unlimited-up-to- the-capacity-our-system-can-handle is reasonable.

The biggest takeaway from this should be: if you _think_ you might be pushing a system, you should probably talk to a human first to get confirmation on how it will work for your specific scenario, and not just use their sales page.

Particularly when that tool is so important to your operations.

<comment><USER28> >> The biggest takeaway from this should be: if you think you might be pushing a system, you should probably talk to a human first

Two things: a) I wouldn't blink at 10k if my line in the sand was "Unlimited number of people" (would I similarly ask a human if Amharic glyphs are supported if the advertisement suggested "chat in all languages"?) b) It may behoove me to verify claims before jumping in, but it is absolutely 100% the responsibility of the _organization_ to set expectations in line with what it can deliver

</comment></comment></comment><comment><USER30> TL; DR: Slack costs money and that's why we didn't like it.

<comment><USER31> You missed where they said that Slack's actual infrastructure couldn't handle it

</comment></comment><comment><USER32> Perhaps put the year of posting in the title? Has anything changed since this has been published?

</comment><comment><USER33> How to view Medium pages on Safari Mavericks without crashing the browser? It's been happening for weeks.

<comment><USER34> Try blocking Javascript for medium.com? I'm sure there's a plugin for that, but use Firefox for general browsing on all platforms where it's a thing, so can't make a specific recommendation. I do have the same problem in Safari on iOS 9.3.5, but I suppose that must have tab isolation, since the whole browser doesn't go down.

<comment><USER6> Ublock's advanced features are pretty nice + handy for selective script enabling/disabling. It does it by origin rather than kind of course, but if you're looking for a quick toggle you might already have one in your toolbar :)

</comment></comment></comment><comment><USER19> This could have been completely avoided if they had used Mattermost.

<comment><USER35> Do you know if there is any mattermost installation with over 5000 users.

<comment><USER36> Mattermost team here. Yes, there are multiple Mattermost deployments over 5000 users within enterprises.

<comment><USER35> Good to know that mattermost works for that large team size!

</comment></comment></comment></comment><comment><USER37> So wait, you abused a free service to the extreme and you're complaining about the service not meeting your expectations? Grow up.

<comment><USER38> It's not abuse if they were well within the terms laid out for the free service</comment></comment>