marcog1
marcog1 on Hacker News
This might not help you, but it might help someone earlier in their career.
I was born, raised and studied in South Africa. Living costs and salaries are cheaper. I worked in California. Instead of living a lavish lifestyle, I saved. In hindsight, I should have saved even more. The important thing I did was opting for cheaper housing. I worked hard, which opened doors. I landed up at a startup that's now doing really well.
I retired after just six years. Six more years later, I'm doing what I want. I've been cycling around Europe and Africa. Next week I'm flying to Canada to explore North America for the next two years. It's a pretty cheap lifestyle, but I get to experience life around the world in a way few people ever do. I'm working on building a presence on YouTube. I've met others who sustain their travels via YouTube. Even if I don't, I can keep going for quite some time living off of savings. I wouldn't be able to do this so easily if it weren't for stock.
I'm not advocating a travel lifestyle. Instead, I'm advocating for saving up while you're earning decent cash. Don't blow it all. Then hopefully you can leave for what you really want to do, and not be tied down due to finances.
You want to replicate as much as possible, but if we ran canary on the same machines we could have testing code bring down production. That's bad.
We actually have a traffic replica (dark client) setup for the new webserver architecture we are gradually migrating to. It likely would have caught this before deploying to users.
We have very comprehensive dashboards. Getting the perfect ones that help in all cases, while not being information overload (the problem here) and being discoverable is a hard, iterative process.
We have talked about it. It is unlikely to helped with an event like this, and I don't recall an event where it would have. It also has the downside of extending our deployment cycle by a lot. Notably, we do run a canary internally, and that had no issues, which actually through us off for a while because while the app was partially down for users it was working for us and that hasn't happened to us in a while.
When you do daily deployments, you can't QA every one much. You rely on automated tests and Internal users using the new code for a couple hours before the deployment. We were unlucky in this case with the number of bad releases. Each was relatively minor, and ironically one was to fix a bug with the code that caused this outage. We run a 5 whys for most of them.
We will never out individuals. The person who committed the code was innocent. We got him a fun gift as a sort of joke.
Every response from our users so far has been thanking is for the transparency. It also represents our internal transparency, and that has a real impact on recruiting.
We do, but it didn't help given the cause of the high cpu was our logging infrastructure (Amazon Kinesis) being overloaded by the webservers.
Correct. We don't roll out during peak load either.
This was the first time we had this class of outage. Many things were in a very bad state, and many of these symptoms were more familiar to us. So we spent time ruling them out before realising webserver CPU was closer to the root cause than the other symptoms.
We roll back by reverting to a previous release on the load balancers, which is usually pretty instant. The previous releases were bad and themselves rolled back, which is a rare situation for us. So there was a bit of scrambling to look into the chat logs to determine a safe (non-rolled back) release we could roll back to. Then the high CPU caused our roll back to be really, really slow. Then we still had old processes running the bad release running, and killing them on webservers with high CPU took a while to actually work. Then it took a bit of time for load to come down on its own. All of this took place within the 8:08-8:29 window reported in the post. And I'm still simplifying a lot.
Posted by
marcog1 on Saturday September 10, 2016 @01:18AM
from the blog.asana.com dept.
I work at Asana. There's no way we'll drop our free plan. It's too fundamental to our sales model. We are, however, thinking a lot more actively about what features to make premium. Largely new features we haven't released yet.
Perf is our #1 priority right now. We've had a big team tackle the fundamentals for the last two years, and we're rolling things out in the coming months. I'm personally leading the team that's rebuilding our API on top of this new infrastructure. We're still early in that process, early signs are that we can get perf down to around 100ms. The mobile apps are built on top of the API, so this would make them fast too.
I think it requires a company email? I can't recall. They also have a verification window, reviews don't post for a couple days.
That happened when someone noticed we were ranked #1 in the Bay Area and announced it to the company. Employees followed with more reviews.
Sam is investing personally, not YC.
Posted by
marcog1 on Friday February 05, 2016 @03:00AM
from the independent.co.uk dept.
Posted by
marcog1 on Monday December 21, 2015 @03:14AM
from the gamesradar.com dept.
At Asana, we've been beta testing Kinesis Firehose. It's been quite convenient not having to manage much, and having the data end up in S3. We're also using Kinesis streams, and have a simple KCL app to pull from streams and write to Firehose. We're looking forward to when streams can be as easy to manage, or when we KCL apps can read from Firehose.
Posted by
marcog1 on Thursday October 01, 2015 @03:03PM
from the medium.com dept.
They likely get a good deal, but either way their content licensing costs are huge in comparison and make their Amazon bill a drop in the ocean.
Posted by
marcog1 on Wednesday December 03, 2014 @01:49PM
from the blog.asana.com dept.
We did long ago, but ditched that idea because we get to use the tools of JS and we realised that effectively using a DSL embedded in another language allows the developer to break the rules of the DSL.
Posted by
marcog1 on Wednesday November 05, 2014 @03:02PM
from the eng.asana.com dept.
Asana engineer here. With such a large market size, we can scale the sales process to make it inexpensive. We only have a couple sales people. User operations, i.e. keeping customers, is larger but still in all less than 10.
That specific point was about Google. At Asana, we offer 1:1 and group Yoga sessions, and some people get together to meditate. A lot of people take it quite seriously, but it's in no way pushed on anyone.
Posted by
marcog1 on Sunday August 10, 2014 @03:23PM
from the medium.com dept.
Posted by
marcog1 on Tuesday July 29, 2014 @11:37AM
from the blog.asana.com dept.
"Member companies receive a license when the patents are transferred out of the LOT group. That means that companies retain their right to enforce a patent so long as they retain ownership of it. However, as soon as it is sold, a license to the other members becomes effective, protecting them from attacks by the troll to which the patent was sold."