cool! let's get together and talk about scaling it out... shoot me a mail (in profile)
HN user
rubyrescue
I still think Whisper has the biggest Phoenix deployment in terms of traffic. It's a huge part of what makes our web development easy because our backend is all Erlang. Thanks Chris and José (and everyone else) for such a great set of tools.
We just bought a SAAS business via FE International last month (http://talentdesk.com). Process was incredibly smooth. I'm happy to answer questions privately if anyone has any on what it's like on the buyer side.
"If you’re in a car, you see watches outside the car go slower. They only go a little slower, so you wouldn’t notice it in your normal life; it takes the best watches in the world to even tell that it’s happening. But it really does happen."
He said it backwards...
I have been asked that by a police officer and I find the best way to answer is "that's a good question!"
I've built dozens of Erlang apps and used ETS in every one. I've used Mnesia once, and it was not a pleasant experience. Most Erlang dev teams use ETS directly. It's possible to use Mnesia successfully but I see it far less often than ETS these days.
Rosetta Stone's DVD based revenue model is crumbling.
This type of use of H1-Bs is really frustrating for people that legitimately have developers who have a true need for the visa.
I've hosted FWD.us events, and I've applied for a number of H1-Bs (among other visas). It's hard to advocate for immigration reform when you see abuse like this.
I didn't say it wasn't complicated. What I said was most lift is due to angle of attack.
The fact is that the percentage of lift that is attributable to angle of attack is far greater than that due to reduction in air pressure across the curved part of the wing.
most lift is not generated above the wing but due to angle of attack which is the angle of the wing relative to the flight path.
anyone who has ever cloned the repo will have a full copy though.
If you don't want to build your own, the green egg is a really solid ceramic smoker/oven. expensive but the results are consistently good.
This is similar to http://wrttn.in, which a HN member created.
people still cook over an open fire. we call those people "campers".
One summer in France while I was a kid (from the states, visiting for 6 weeks), I wrote a spell checker in 6502 assembly in a notebook...as I had no access to a computer and my french was terrible, so I had more alone time than I should have had.
I then typed it into my Commodore 64, at home at the end of the summer.
It didn't compile at first (of course) but it was mind-expanding to have so much time to think about the algorithm.
I had totally forgotten this entire incident until this moment.
it's really easy to train someone on Erlang. And there are an increasing number of Erlang devs these days.
That's tough because purchasing is often difficult. It took me dozens of tries to get a flight booked to Cypress once, through 4 cities. I ended up deciding the onerous itinerary was not worth the nearly free ticket. That's common so you don't necessarily want to insert yourself into these transactions for people, it really wouldn't scale.
Totally not need-based. A buddy and I just bought them and we decided to just make a weekend of it, went to a few good restaurants, saw a show.
Those were all-in. The $0 Air Canada one they actually called me and said that technically there was no contract of carriage because there was no money exchanged, but they let me have it anyway. And actually I remember now, it was $200 to Romania, and we ended up paying $230 more to get to turkey on a standard ticket. The Bucharest ticket was surely supposed to be $2000.
I've flown from SEA-NYC for $1.86. I flew from YYV to Romania, and onto Turkey, for $200. I flew with my family of 5 in first class from SEA-YTO (Toronto) for $0, on Air Canada. Too many others to count. All from flyertalk. It's not as good as it used to be but there were times I've taken whole flights full of flyertalkers headed somewhere basically for free.
Key to success: Find some friends who also like to do this and who will wake you up in the middle of the night if they find a great deal (and won't complain if you reciprocate). It's hard to watch flyertalk all the time and the deals go quickly.
Whisper (Venice Beach, CA) - iOS/Android/DevOps. We have a very very small team of client devs and we're looking to grow our team.
The beach is one block away.
You can surf in the morning before work and keep your board and wetsuit in the office :)
We have 2 full-time iOS developers and 3 full-time Android Developers, so it's a big opportunity to join a tight-knit team building an app that our users love.
Email me (mail is in profile) or see the jobs here - https://whisper.sh/jobs
A former client was on Shark Tank. The pitch in-studio was 2.5 hours and of course only 7 minutes was aired. The interest it generated (in terms of downloads) was enormous. It nearly filled the Heroku database during the show - which we quickly upgraded after it aired.
A good metaphor for the negotiations before and after airing and the actual on-air pitch is an iceberg. 5% is visible on-air and 95% of the interactions with the sharks and their team is never public. What actually happens in terms of an investment may never be made public - from promise to make a deal that falls apart to an on-air rejection that is later turned around into an investment.
i believe that there is also a full node in Erlang, so it's not the first functional language client per the blog post. still, very cool!
Huge congrats Brian!
We have a team of data scientists that pretty much exclusively use python and a team of server devs that nearly exclusively use Erlang.
I could see a use for this, though I will say we've pretty much made separate services and these services communicate (in order of urgency) - via HTTP, Rabbit, or by rolling HBase tables on some schedule.
Because of that decoupling, this seems less necessary, but I could certainly see a place for it.
Congrats to the Mixpanel team. They have always been very supportive when we've had questions. When we had a problem with a particular statistic a few months back, they actually came on-site to diagnose.
No, I'm saying the whisper locations are made up per #3 above.
I'm the CTO of Whisper. This is really bad reporting. A few notes:
1. we use a legacy maxmind geoip database so we can put the whisper in a general location. that is so inaccurate as to be laughable. for instance, my current IP using our service says "USA", though I'm in Venice, CA. This is hardly a privacy violation, and it's really important for a bunch of reasons:
a) The whisper needs to actually appear in the app, and it won't appear without some general location. The % of all Whispers which are tagged as somewhere in the middle of Kansas because we don't really know where they are (but we know they are in the US) is very high. This is not a scandal.
b) We want to know where a user is in a general sense for things like tracking timezone so when we send pushes we know not to send pushes at 3 in the morning. you'd be surprised how often device timezone may not always match with physical location.
c) We use general location to determine things users may be interested in. folks who post in lower manhattan may see different results than people in College Station, TX, over time.
d) We have a lot of anti-spam technology, and what IP you posted from, and what country that IP is in, is important. I can't elaborate on this but it's incredibly logical why we would use that information for things like keeping the app from filling with spammy garbage.
e) We throw away the IP you used to create the whisper after a brief period of time.
2. We've been working with researchers at a local university to ensure the anonymity around location was such that they couldn't determine groups of whispers from the same user. They contributed to our randomization algorithms and provided suggestions around security.
3. We fuzz location even more than this on write and on reads. We randomize it based on the observer who asks for the location, and we randomize it BEFORE WE SAVE IT TO OUR DATABASE. In other words, we don't actually know where the user was once the whisper is saved, and we can't even tell later.
4. The guardian's reporting that we changed our terms of service in response to the article is beyond silly. I am happy to show a screenshot of the email chain between myself and our lawyers back in July. The entire point of updating the TOS was to make it clearer and easier to read, not to protect ourselves or give ourselves more rights to user data. It takes MONTHS to get things like TOS write for an app like Whisper, and we take it seriously.
5. Edited to add... We just don't have any personally identifiable information. Not name, email, phone number, etc. I can't tell you who a user is without them posting their actual personal information, and in that case, it would be a violation of our terms of service.
We had 50 servers reboot and 15... never came back. It was painful. 10 were in one AZ. We're putting servers in more AZs now, but preparing for a reboot and preparing to rebuild a redis slave, 2 zookeepers, 10 cassandras, and an API server are different things.
That can be tricky. Venture funded companies that are totally legit and run by competent people sometimes don't want to use a vendor's form. That's not really a red flag...