Ask HN: How does unlimited vacation policy work in your company? - <AUTHOR> I've been reading about this, but I would value an honest opinions from employees working on companies where this policy exist. Do you take more time than you would on another company? What the average feeling? As there a lot of abuse? Does it work as good as advertised? <comment><USER3> I usually wait about a week before activating my unlimited vacation. This frees me up to look for my next job, which must also offer an unlimited vacation policy. I've been doing this for about thirteen months. I project my annual income this year will be around $1.7 million. So far, it has worked very well and I would recommend the arrangement to anyone.

<comment><USER4> Have you considered outsourcing? Hire a few more more smart people to activate their unlimited vacations. Split the winnings. Imagine the cash if you did it recursively!

<comment><USER5> "What do you do for work?" "We're on vacations."

</comment></comment></comment><comment><USER6> "Unlimited Vacation" is sometimes used to mean "no vacation" or "very limited vacation". But I don't think that's actually the way many employers think about it.

It's more often a way to say "no accrued vacation". That's important in California, when you leave a job, your employer has to pay out unused and accrued vacation. That can be a big liability to keep on the books, so you can remove it with an unlimited vacation policy.

So it's just an accounting thing.

<comment><USER7> Just a fuck over the employee for 4% of their earnings thing.

<comment><USER8> Pretty much this. I always keep about 7 days of vacation banked as a insurance policy. One of my friends was laid off with about half his company, and everyone got "paid through the end of the week." He had a 5 day vacation planned the next week, and they weren't going to pay him for the vacation he had notified them of months in advance. I have an emergency fund, but I'd prefer to save that money and get an actual paycheck if anything happens.

On top of that, banked vacation is a way to have some funemployment if you get an extra week between leaving on job and starting another. It's basically like taking a vacation anyways.

</comment></comment></comment><comment><USER9> I like our unlimited vacation policy.

\- It's not used to push us to work more, I don't feel pressure not to take holiday.

\- The founders set the example by each taking 2x 2 week holidays a year, plus other days/long weekends here and there.

\- Most of the office shuts down for the 1.5-2 weeks over Christmas.

\- I've noticed a few people who take a bit more holiday than others, but I don't think they are over-stepping what's reasonable.

\- I get much more benefit out of our policy being _flexible_ than _unlimited_. I've taken holiday at a day's notice before.

<comment><USER10> Have you worked at any other employer where you needed more than N days notice for an N day long vacation? I've found both vacation policies to be the same: I get as much vacation as my manager will approve (sometimes with an upper- limit). The limit doesn't seem to affect flexibility.

</comment></comment><comment><USER11> We have an unlimited policy. People seem to take 3-4 weeks on avg by my guess, although I'd love to see hard numbers on that as I suspect it is higher, however we don't track it.

There have been situations where it was abused, and those people tend to not last long. In general if your work is getting done well, nobody cares. If you start dropping the ball it becomes a discussion around performance expectations.

As a type A person, it has been hard for me to learn that it is OK, and in fact important, for me to take time off.

What has worked better for me is to use it more as a gradual thing. I might take a day off or work a short day a few times a month. It helps me fit life in, get more rest, and manage stress better because I'm releasing that pressure more frequently than if I waited several months to take a week off.

I still might take longer stretches off, but don't feel any where approaching what I can only describe as desperation for a break I felt at previous jobs.

As a result I'm sure my productivity is higher, and I'm much less interested in fielding the frequent recruiter pitches I get because most of the time I know the companies they are pitching could never offer me something comparable.

If you find a company that implements this policy well, it quickly becomes one of the most valuable parts of your comp package. At a certain point in life the value you place on your free time increases dramatically. So a benefit like this grows in value at the rate for which the value you place on your time increases.

</comment><comment><USER12> The only company I had offer this used it as a lever to pressure us to work more and longer. Then encouraged peer shaming if we took a day much less a week off. At that job I had two weeks off in two years.

To be a tiny bit fair, this was a tiny company with 3 engineers doing the whole lean startup thing.

I'd say the situation was valuable to learn from because it was apparent (in hindsight) from the first interview how bad the company culture was. So the lesson was if the company seems to be informal and unstructured, one person wearing five hats, Project Manager is also your designer or lead coder etc... (and I realize I just describe a huge number of startups. Use your best judgement).

tl;dr its more likely to be abused by the company than the employee

</comment><comment><USER13> From this thread:

>> a few people who take a bit more holiday than others, but I don't think they are over-stepping what's reasonable

>> as long as you're being reasonable, and you communicate your intention early enough for deadlines

>> If it is being abused your manager will speak to you about it.

Maybe it is just me but I miss the "unlimited" part of the "unlimited vacation policy". Unlimited is not always reasonable, non-abusive, manager-happy- making. It is unlimited.

For example at my last job I took over a process where my predecessor struggled getting things done and missed deadlines regularly. I am not a genius but too lazy so I automated the hell out of the process so that I only needed 3-4 days a month to accomplish everything on time. With an "unlimited vacation policy" I just could have taken the other 16 days of the month off. But seriously, does this actually happen to anyone? Only if is your business and you are your own boss.

[edit] Hier in Germany it is common to have 30 days holiday a year. Nobody would call it "unlimited" but "not enough".

<comment><USER14> Is this how it works for startups as well? Which part of Germany are you referring to?

<comment><USER13> It is common for big corps. Here in Bavaria some employers give you only 27 days of holiday because we have 3 more days of christian holidays. In the car industry you have additionally only a 35-38 hour work week.

Biased subjective opinion: no sane person having any other option would work for a start-up. Therefore the start-up employees have worse conditions. My ex- GF had 24 holidays and a 40+8 hour work week (+8 hours for unpaid overtime if necessary).

</comment></comment></comment><comment><USER15> I work for a company that doesn't advertise unlimited vacation, and instead phrases it as "we don't have a formal vacation policy, it's all up to your supervisors discretion."

Basically, as long as you're being reasonable, and you communicate your intention early enough for deadlines and staffing to be adjusted accordingly, they're cool with it.

The entire company culture supports a healthy work/life balance and leadership constantly drills it into everyone's head that what's important are results and not work. They also lead by example... my supervisor just took a three week vacation, where he was almost completely out of contact. His projects all slowed down and he had a lot of stuff to catch up on when he got back, but it definitely wasn't frowned upon. If anything, it was encouraged.

</comment><comment><USER16> The catch is if you leave the company you do not get paid out for the vacation time you did not take.

<comment><USER17> IIRC, not all states require unused vacation time to be paid out.

</comment></comment><comment><USER18> I think taking 4-5weeks off spread out throughout the year is the best way to do it. If it is being abused your manager will speak to you about it. The best thing about unlimited vacation policy is that all your days off are PAID. Most companies will only give you 2weeks PTO. But imagine getting 4-5weeks off PTO. Thats how I see it.

It is as good as advertised if used correctly.

<comment><USER19> _It is as good as advertised if used correctly._

They say the same thing about birth control. Yet, real world stats consistently differ markedly from "if used correctly" stats.

</comment></comment><comment><USER20> I've worked at three weeks,5 weeks and unlimited. The reality is that I like 5 weeks more than Unlimited. When I was working unlimited I actually was able to take as much time as I wanted, but it was obvious that different employees had different trust levels in the vacation system. No one would stand in my way, but it was very apparent that certain people were just not comfortable either with me leaving or with taking the time they need themselves. Additionally having unlimited time off means that you do not earn that value when you quit. I have used the money from saved up vacation to sponsor my next job search. This gives me enough time 2 develop new interests and gain traction on a new project.

When I was working at 5 weeks, I generally average using four weeks a year

</comment><comment><USER21> I've taken 6 weeks so far this year, and I'll take another week by the end of the year. I got married this year, then I went on a honeymoon. I was also in 8 other weddings over the past four months, each of which required a couple of days off for travel. My boss has been extremely understanding, and I don't think it's hurt me professionally at all. When I get back from my vacation, I work a little harder for a similar amount of time. That said, I've completed all my official tasks (and then some), so there's little to complain about, I think.

</comment><comment><USER22> Where I am now, it depends a lot on your individual initiative and your immediate manager.

We have some departments where everyone takes 4-6 weeks per year, and others where I'm pretty sure only a couple people have been out for longer than a sick day here and there. That's down to the individual managers, I think, and an example of a good way for an unlimited vacation policy to fail. Top brass certainly sets an example of taking plenty of time.

My manager has been on my case lately, _encouraging_ me to take more PTO (I've probably already taken 15 days so far this year, and it'll be close to 25 by Dec 31). The guy who sits on one side of me takes 3-4 day weekends every couple weeks all summer so he can go camping and hiking with his girlfriend. The guy who sits on the other side took two weeks mid-year and that's it. A guy who regularly showed up about 2-3 times per week and worked half days when he did (despite being hired as a full-time employee) was let go.

For me it's better than the last place. 10 days combined PTO minus a medical or family event and one bad cold doesn't even leave you with enough time to take a full week vacation, let alone an additional mental health day here and there. Perfect recipe for burnout.

Here, at the end of a particularly rough stretch, I've learned not to feel the least bit guilty about taking an extra day to recover, or even to do so multiple times in a month. I come back motivated and focused instead of exhausted and resentful, and get more done in 4 good days than I would in 5 miserable ones.

</comment><comment><USER23> I worked for an established software company (~3000 employees) that had unlimited vacation.

How much vacation people really took varied greatly by managers and which part of the organization you were in.

There were no minimums and no real philosophy or best practices around vacation. The core engineering groups had good managers and people took 4 - <USER2> weeks (spread over the year) and would completely disconnect from work during their vacations. People could take 2-3 weeks in a row without much fuss being made.

With exception of support, if you were in a customer facing role your manager was probably a workaholic and made it very difficult to take a vacation or even enjoy vacation when you took it. However, they would constantly trot out unlimited vacation as a perk and act like it was your fault for not taking vacation. I knew people who disconnected for a week for the birth of their baby and felt completely unprotected and overwhelmed with backload of work by the time they came back.

I'm never going back to a company with "unlimited" vacation again unless I know the group I report into strongly protects and encourages at least 3+ weeks of vacation

</comment><comment><USER24> I worked in one place where the policy changed while I was there. In my experience, people don't take any more time than they did under the prior 'limited' vacation policy. The only beneficiary was the company, which wiped accrued vacation (a liability) from it's balance sheet, making it look more attractive as an acquisition target.

</comment><comment><USER25> Unlimited Vacation Works at my Company

\- because people talk about their trips and vacations

\- because people are motivated to work ( example, somebody traveling for a month teleworked for a week to not be way out of the loop

\- most people take a long weekend, week, and more rarely, 2 weeks at a time.

The biggest concern from Management is that employees feel guilty, aren't taking enough vacation (there isn't a lot of abuse.) Management actively encouraged one of my 2 week vacations to set an example to show people to take vacations.

Does it work as well as it is advertised? From an accounting perspective, yes. From a not worrying about managing people's vacation time yes. From a team management for meetings / projects - not always - more/better notice could work better. From a people perspective? the same people who overwork themselves tend to not take vacations - so not the best for keeping stress down.

</comment><comment><USER26> My company is cool in that it has unlimited vacation, but you are mandated to take one week off per quarter.

I would be lying if I said that even that gets everybody taking 4 weeks off, but the founders have made themselves very clear, so I feel quite safe following the rules and then some.

The development team actually has come up with an (internal to the team) target of 6 weeks. I'll probably be successful in hitting it by the end of the year.

In addition we have most of the holidays off that you'd expect.

</comment><comment><USER27> Where I currently work, we have vacation time around 4 weeks every year. On first year I dont think I ever took any vacations, just a day off from time to time. Now I've been taking vacations 2 weeks in summer and 2 weeks in winter, more or less. Its also more flexible and I can take a day off if I just ask on a timely manner. I dont actually do that very often, I work a lot, but its just a great feeling - knowing that you can take a break sometimes. That feeling alone can kinda motivate you to work and be more productive.

</comment><comment><USER28> Previous -

Ask HN: Are open vacation policies a scam? [https://news.ycombinator.com/item?id=12334926](https://news.ycombinator.com/item?id=12334926)

</comment><comment><USER29> In practise, it means that holidays days are simply not accounted for.

Otherwise, it's like usual, tell your team in advance and write the days on the calendar.

There is no abuse. If anything, most people don't take enough because it's not accounted for && there is noone to remind them of "you gotta take 10 days before January [or your current quota be lost][and you're gonna burn out because you work too hard]"

</comment><comment><USER30> At Reflect ([https://reflect.io](https://reflect.io)), we have an unlimited policy with a required minimum.

<comment><USER31> Can a Reflect employee take 6 months vacation?

<comment><USER30> If we hired someone who wants 6 months off, we'be made a mistake elsewhere.

</comment></comment></comment><comment><USER32> I have unlimited vacation time - I'm a private contractor. But when I take a day off, its just 'not getting paid'. So I have to be careful, try to get some hours in every day.

</comment><comment><USER33> Had it in a start-up a few years ago. It felt like it wasn't real. Not a clear culture about taking it and exactly what we needed to do to cover for ourselves when there are so few people in the company overall.

</comment><comment><USER34> we have unlimited vacation, and a formal month long sabbatical every X years.

So far, its been great. Vacation approval is up to your manager. Ive never had or heard of a request getting denied. People are responsible; it works.

I do wish there was a 2 week minimum policy just on principle, but it wouldn't really change anything.</comment>


ShoCard Is a Digital Identity Card on the Blockchain - mr-ron http://techcrunch.com/2015/05/05/shocard-is-a-digital-identity-card-on-the-blockchain/ <comment><AUTHOR> The team behind this app is comprised of two marketing execs (very successful ones, mind you). Successfully implementing blockchains require extensive crypto, game theory, and security capabilities. Is there something I missing here?

EDIT: On a more productive note, I assume this is something a team like Ethereum is going to tackle or already is tackling, no? [https://blog.ethereum.org/2015/04/13/visions-part-1-the- valu...](https://blog.ethereum.org/2015/04/13/visions-part-1-the-value-of- blockchain-technology/)

</comment><comment><USER2> Sure, associating a large number of assertions about personal information with a blockchain-held identity is possible. However, this still doesn't solve the question of "who put it there", "do i trust them" and "to what degree was this information vetted?"

Currently, identification documents are defacto vetted by various portions of government, legal threats thereof and (partly) the incovenience cost (re: physical presence, wait time, overall hoop jumping) of actually going to get a new drivers license / passport / etc.

By removing that inconvenience you basically make it cheap to create fakes unless you have some overwhelmingly new approach to identity verification.

Unfortunately that's unlikely.

Finally, if we observe one of the key properties of the current-era systems as absolute national segmentation within identity verification systems, this startup seems to actually be more interested in providing a heavily US-centric solution on an international blockchain, which doesn't strike me as a good fit.

</comment><comment><USER3> So if your identity is the private key, why do you need the blockchain at all?

<comment><USER4> Because blockchain.

But seriously, public keys are not memorable and thus are subject to spoofing. Blockchain-based systems (e.g. Namecoin) can more or less solve Zooko's Triangle by creating a "fair" registration system for human-readable names.</comment></comment>


Ask HN: How to pay contractor per GitHub issue solved? - <AUTHOR> I have a small llc which develops a software solution for a certain company. In the same time there is an older product already in their production systems which needs support: bug fixing, little new features, etc. This older product was almost entirely made by me during the time I was an employee (only recently I switched to my own llc).
I would like to "hire" someone for taking care of this older product. The amount of work needed would suit a part time job but because of varying load I would like another form of payment instead of monthly salary. This person, being a friend, would work remote and I would like to find a fair form of payment somehow based on fee/price per github issue.
Have you experienced this kind of employer/employee contract? What are some pieces of advice which can help? <comment><USER2> The idea 'what gets measured is what gets done' suggests that paying per issue closed or per feature developed incentivizes work on the easiest issues and most trivial features. Likewise it disincentivizes work on the thorniest issues and development of features that require significant work.

One way to handle this is time and materials. Simply pay the subcontractor for their time and reimburse their expenses, then add your overhead and profit on top of the subcontractor's invoice when invoicing your client.

To put it another way, the important way for contractors to make money is invoicing their clients. Adding overhead and profit to the subcontractor's invoice means that the more the subcontractor charges, the larger your gross profit, more work gets done on the code base, and solving hard problems is economically tenable.

Some people might say that this is 'nickel and diming' the client. They are right, nickel and diming is what contractors do.

Good luck.

<comment><AUTHOR> 'Simply pay the subcontractor for their time'

I had previously experiences where I paid for their time. And in turned out that having the monthly salary and working remote it's not enough to keep a minimum pace on advancing through tickets. I want to avoid this situation.

<comment><USER2> Curious if the previous experiences were working with a friend. This seems more like a case where just paying your friend's professional rate, and invoicing the client for that work [after markup] is a better fit for the relationship.

I mean, the goal isn't to profit at the expense of your friend.

</comment></comment></comment><comment><USER3> My piece of advice is go with a "normal" method of payment of either fixed- pricing style or hourly/daily payments or salary.

Unusual payment arrangements don't work well.</comment>


Ask HN: What extensions or userscripts do you feel are musts to browse HN? - <AUTHOR> I've been a heavy user of the Reddit Enhancement Suite for a few years, but only a lurker on HN. I've decided to become more active, but I was surprised to see no one had made a comprehensive tool suite.
I put something together by finding a collection of Firefox addons, and some Greasemonkey user scripts. Here's what I'm using: QoL improvements: * My HN Special: https://addons.mozilla.org/en-US/firefox/addon/my-hn-special/ An all-in-one kind of addon, that enables infinite scrolling, dark mode, open in new tab. I like that things can be toggled. * Hackers New: https://addons.mozilla.org/en-US/firefox/addon/hackers-new/ Includes content from /new on the front page.
Really nitpicky: * Hacker News Night Mode: https://addons.mozilla.org/en-US/firefox/addon/hacker-news-night-mode/ It's made somewhat redundant by My HN Special, but when I use the dark mode from both, it makes a the body and background have a different dark tone, which makes it easier to focus. * HN-Collapse: https://addons.mozilla.org/en-US/firefox/addon/hn-collapse/ Super nitpicky. It adds a second collapse button, but this one is on the left of the comment rather than on the right. I like that it's aligned and easier to find.
I feel I'm still missing keyboard navigation, but it's a good start. What's your setup? Is there anything you can't live without? <comment><USER2> Only this one:

[https://addons.mozilla.org/nl/firefox/addon/hacker-news- watc...](https://addons.mozilla.org/nl/firefox/addon/hacker-news-watcher/)

[https://chrome.google.com/webstore/detail/hacker-news- watche...](https://chrome.google.com/webstore/detail/hacker-news- watcher/ojkdgdapoebjekbklfpfjlccifecjeoo)

Simply the best :)</comment>


Twilio Support is Awesome - <AUTHOR> https://gist.github.com/dsyang/5347504

<comment><USER2> Sounds good. Although, my experience with service isn't very happy. I guess probably because I am trying to use twilio outside the US. In fact, I sent two mails to the sales team and no answer. And, I just opened a ticket an hour ago so they can help me verify my no US number. I am still using the free plan to integrate their service with my web app.</comment>


Partial commits in GitHub for Windows - <AUTHOR> https://github.com/blog/1940-partial-commits-in-github-for-windows

<comment><USER2> Oh.

For a moment I thought that Microsoft was committing Windows source code to GitHub.

LOL.

<comment><AUTHOR> Now that would be a funny situation</comment></comment>


Apple's website in 1998 - <AUTHOR> http://www.openuniversity.edu/sites/www.openuniversity.edu/files/apple-90s-website.gif

<comment><USER2> Interesting that this actually looks pretty similar to how it looks today. The large "headline" graphic, the smaller graphics in a row below it and then extra stuff at the bottom. Even the news page looks fairly similar to the default Safari page I recall when I first got my mac (with it's column style with stories on one side and important links on the other).

EDIT: Geez, it's still called "Hot News" and it's still a 2 column layout. That's actually a remarkable consistent design over 17 years.

</comment><comment><USER3> I can't wait to look back on the language we use to describe the web today and have a good laugh in 2032.

</comment><comment><USER4> Anyone knows why the url isn't changing in the gif?

<comment><AUTHOR> Probably the same reason the Netscape logo isn't animated when the pages load. Cropped out of the capture.

</comment></comment><comment><USER5> I guess it's not surprising, but I was super impressed by their copy on the website. "The most original Macintosh since the original Macintosh" holds up really well 17 years later.

I'm looking forward to the iPhone 8 being advertised as "The most original iPhone since the original iPhone".

</comment><comment><USER6> [https://web.archive.org/web/19980509035420/http://www.apple....](https://web.archive.org/web/19980509035420/http://www.apple.com/)

<comment><USER7> And many of the links still point to active pages.

But I miss ftp.apple.com (or was it ftp.info.apple.com? The later still exists though I can't remember any URLs and the root is 404.) They had all their technical documents online going back to the Apple II. Free developer tools and OS disk images. And private directories for employees to show off what they were working on at the time.

</comment></comment><comment><USER8> It still looks cool. That's cool

</comment><comment><USER9> loads fast :)

</comment><comment><USER10> I would have loved to manage that!</comment>


Demasking Google Users with a Timing Attack - <AUTHOR> http://blog.andrewcantino.com/blog/2014/09/04/demasking-google-users-with-a-timing-attack/?hn

<comment><AUTHOR> Some previous Google security research I worked on (and got paid for): [http://blog.andrewcantino.com/blog/2011/12/14/hacking- google...](http://blog.andrewcantino.com/blog/2011/12/14/hacking-google-for- fun-and-profit/)

</comment><comment><USER2> Can you put images in Google Drive, so that successful accesses wouldn't just be faster, but also display differently (and not fire the onError)?</comment>


Security releases issued for django-hijack - <AUTHOR>

Today we released a security update for django-hijack that fixes a security vulnerability in the admin (HTML escaping issue). We recommend to update your projects ASAP. You can get the latest version (1.0.7) from the Github project's release page https://github.com/arteria/django-hijack/releases/tag/v1.0.7 or from PyPI. <comment><AUTHOR> [https://github.com/arteria/django- hijack/releases/tag/v1.0.7](https://github.com/arteria/django- hijack/releases/tag/v1.0.7)</comment>


Python 3.7.0 is now available - <AUTHOR> https://firstname.lastname@example.com/msg08356.html <comment><USER2> Oh crap, now we're going to be stuck on python 3.7 until python 4 comes out.</comment>


Show HN: Redis Dashboard - <AUTHOR> https://github.com/kumarnitin/RedisLive#readme

<comment><USER2> Great output, but IMHO the data source should change to be just INFO and not MONITOR: with Redis 2.4 you can't show top-commands. With 2.6 INFO has enough data about this (see INFO commandstats).

About top-keys, no way to show this without MONITOR, but it's not the most important bit of the visualization IMHO.

So very cool but a tool like this should not try to capture the stream of the commands executed by instead rely on what the system can provide as already aggregated stats.

<comment><AUTHOR> agreed on MONITOR command, i rather just use INFO however on our deployment, top keys and commands are usually the most important information i'm looking for and with 2.4 there is currently no way.

<comment><USER2> When full monitoring is needed (like for the top keys) but still the analysis must be run continuously on a production instance, maybe in the next version of MONITOR (already planned) we could say to it "give me N items and return back in normal mode", or a similar thing but with time (for instance 1 millisecond), so that it is possible to perform some kind of polling that has no serious impacts on the server. Well I'll think about this when I'll reimplement monitoring :)

<comment><AUTHOR> In redislive, the monitoring duration is configurable via command line argument, the idea is to schedule it as a cron job and monitor every 6 hrs for 1-2 minutes, that's enough to build the trend for analytics.

</comment></comment></comment></comment><comment><USER3> Worth browsing the code just to see some very well organized source for a tornado+redis+backbone stack, which is pretty popular I think on the real-time web.

<comment><AUTHOR> thanks, i think the javascripts can use some bundling love.

</comment></comment><comment><USER4> When I see these things I always wonder, what is the best way to integrate these monitoring stuff into your existing stack.

So server restarts and failures are just okay.

Anyone used similar monitoring utilities in production?

</comment><comment><USER5> This is the first one I've seen that uses Python as a backend.

Since Python is all I use in my shop, you've earned yourself my dearest thanks and a new follower.

</comment><comment><USER6> I noticed you're using tornado but appear to be using the standard (non- evented?) python redis library. Does using this library block tornado's event loop? Did you look at other tools like brukva[1]?

[1] <https://github.com/evilkost/brukva>

<comment><AUTHOR> brukva looks interesting, i'll check it out. thnx.

</comment></comment><comment><USER7> The text for the upper boxes is easy to read on the full sized png, but difficult when scaled when showing in the github page. If the smaller size is the default it could be an issue.

I also think you should make scales for "Used Memory" and "Memory Consumption" the same.

Looks good though.

<comment><AUTHOR> the screenshot has been resized, the text is much larger otherwise.

agreed on the scales.

</comment></comment><comment><USER8> Looks somewhat similar to something a wrote a few months back. <http://steelthread.github.com/redmon/>. Your solution looks good, well done.

<comment><AUTHOR> cool, i like the CLI interface - i was thinking of doing a similar widget too. are you still actively working on that project?

</comment></comment><comment><USER9> sorry for not just digging through the source, but what are you using for the charts?

Are you storing metric data? or is it all in the browser? (e.g. do you get the full screen you just showed when you first open it up, or is it like a process mon where it's all 0 until you look at it)?

<comment><AUTHOR> Using Google Charts.

For storing the data i have a sqlite implementation and a redis implementation. sqlite works out of the box by default, but i prefer the redis implementation, much faster. [https://github.com/kumarnitin/RedisLive/blob/master/src/data...](https://github.com/kumarnitin/RedisLive/blob/master/src/dataprovider/redisprovider.py)

</comment></comment><comment><USER10> Nice! I've been looking for something to give me a better feel for what's going on.

</comment><comment><USER11> This looks awesome. Anyone know of a similar project for MongoDB?

<comment><AUTHOR> we can easily extend this for MongoDB, if you are interested lets connect.

<comment><USER11> Unfortunately my free time is a bit swamped with some side projects right now - will definitely get in touch when things die down.</comment></comment></comment>


How a Supercomputer Helps Fight Flies That Ravage Crops for 700M People - <AUTHOR> http://gizmodo.com/how-a-supercomputer-helps-fight-flies-that-ravage-crops-1736813111 <comment><USER2> I'm puzzled why you'd need a supercomputer to build a phylogenetic tree. The economical speedups for phylogenetic tree generation on supercomputers are limited to about 64 cores, which doesn't justify using a supercomputer. Further supercomputers usually have deep queues because they're so heavily oversubscribed. Instead, you'd just buy some time on a cloud machine with a ton of cores and RAM and use it when you wanted and shut it down when you didn't need it.

<comment><USER3> Oversubscription is not a technical hurdle, and your "cloud machine with a ton of cores" is just a supercomputer with a shitty interconnect.

I'd be interested in how you arrived at a 64 core threshold. There's more than one way to skin that particular cat.

<comment><USER2> Sure, oversubscription is not a technical hurdle; it's a practical consequence that supercomputers have to run at close to 100% utilization to justify their expenditure. If you can wangle a higher priority so your jobs run faster, but that just means somebody else has to suffer.

As for the 64 core threshold, I'm referring to the publications for MPI phylogenetic codes (I'm inferring this is what they ran, as I can't find their experimental details) because supercomputer groups don't normally let people run embarrassingly parallel codes on fast interconnect boxes).

Phylogenetic tree generation doesn't need a fast interconnect - the best methods use coarse-grained parallelism, meaning you can trivially scale the tree evaluation.

<comment><USER3> Sounds like none of these are reasons to avoid a supercomputer, if you've got the grant to provide the compute time. You're kind of arguing both sides of the same coin here -- both that there's no reason to run the job wide, and that it's hard to run wide jobs on public-science installations.

Reading her past publications, she seems to hold her jobs to reasonable levels (around 10k cores in her latest publication). I can see using <30% of the system for such a short run (less than a week) as something that would be challenging for, say, an early-career researcher to lock in. But as you said, this is a job that lends itself extremely well to being broken up into smaller batches of jobs, so that should be something easy to do -- especially as more and more supercomputer-class platforms open up at more and more computational science departments.

She seems strangely fond of Aries, incidentally, so _she_ , at least, thinks the interconnect is important. I personally don't (in this specific task) but I'd be interested in knowing why she does. Her TED talk is, sadly and unsurprisingly, light on technical information.

<comment><USER2> I checked, the code they're running is ExaBayes.

In my experience, centers like this are under pressure to find biologists to justify their systems, but most of the bio user don't have codes that scale very much. THe "supercomputer" she's running on isn't very super.

Anyway, I used to be in the class of user, but I found that supercomputers never had the throughput to carry out real science. After arguing with DOE that they spent too much money on interconnect (and not really being able to run my codes because they "only" scaled to 1K cores) I moved to Google and built a system called Exacycle which runs embarassingly parallel codes (of which phylo tree generation is an instance; it's basically metropolis monte carlo sampling, although the MPI versions typically do some clever tricks to create long MC chains efficiently). Personally, I think our approach is far superior for all but the most tightly coupled codes- for example, our work doing huge collections MD simulations of proteins generated far more useful data to analyze than if you'd run just one long trajectory (this is a long- running argument in the MD field, but I think we pretty much nailed it in our paper, [http://www.ncbi.nlm.nih.gov/pubmed/24345941](http://www.ncbi.nlm.nih.gov/pubmed/24345941)

Frankly I don't see many computational science depts making more supercomputer-like services. It's hard to run these systems, they cost a bunch, and they are hard to keep utilized at a rate that is justifying their expense. Commercial clouds are eating away at them- as you say they are basically computers with shitty interconnect. But the reality is that their interconnect is "good enough" for nearly all bio codes I know of. It's far easier for a PI these days to pull out their credit card and pay for grad student cloud use out of pocket than spend time applying for and using supercomputers.

<comment><USER3> I'm glad Exacycle exists, but the tasks at which it excels are indeed not tasks for which supercomputers are usually employed. The things that are easy for a PI to pay for with Visa are generally not the things that are interesting to do with supercomputers. I see where you're coming from with the DOE stuff, though; those guys are all about high-visibility "status" computing, and I don't really find that scene appealing either.

I'm not sure what you consider a supercomputer, if you don't consider a petaflops machine with a 3PB filesystem and >50Gb/s i/o "supercomputing." I guess we'll just have to disagree.

<comment><USER2> I used to work for NERSC when they ran Seaborg. Before that, i ran my PhD simulations on the T3E Mjolnir (PSC) and the other one, at SDSC whose name I forget. Back in those days, those were supercomputers, but a single cloud machine replaces one of those now.

The only thing I consider a supercomputer is a device designed for capability computing where the capability is ability to run codes that exhibit strong scaling due to their interconnect. The petaflops you quote are calculated by the strong scaling of LINPACK due to its design. I think you need a large amount of petaflops these days to really be considered a supercomputer. And those petaflops come from having a combination of low latency and high bandwidth-- you couldn't just point at Exacycle and say "that's a supercomputer".

The 3PB filesystem and 50Gb/s IO (you didn't say if that was per-node, or the bisection bandwidth of the central switch, or what) aren't particularly "super".

In some sense this is just arguing about the definition of a supercomputer which isn't super interesting; I have a preconceived notion of what one is. If Amazon put a bunch of machines on an MPI switch (IIRC they actually have) and scored well in Top500, and you could buy time on it, and it scaled your code, they'd have one too.</comment></comment></comment></comment></comment></comment></comment>


How to see into the future - <AUTHOR> http://www.ft.com/cms/s/2/3950604a-33bc-11e4-ba62-00144feabdc0.html#axzz3ClFR6nj1

<comment><AUTHOR> This isn't a new topic -- prediction markets have been poster here before. However, this article also discusses some important issues about how people _fail_ to see into the future. For example, pundits often use their prediction as a method to present their world view in a way that would "otherwise be impossible to explain."

Here is a good quote from the article: "This is because our predictions are about the future only in the most superficial way. They are really advertisements, conversation pieces, declarations of tribal loyalty – or, as with Irving Fisher, statements of profound conviction about the logical structure of the world. As Roger Babson explained, not without sympathy, Fisher had failed because "he thinks the world is ruled by figures instead of feelings, or by theories instead of styles".

This emotional/social aspect is fascinating as it goes against my programmer- engineer mindset, and it explains a lot about the world. I'd love to hear what HN has to say about the non-prediction market aspect of this article.</comment>


Event Driven Programming in Clojure - <AUTHOR> http://www.infoq.com/presentations/Event-Driven-Programming-in-Clojure/

<comment><AUTHOR> I found this a thought provoking talk at Strange Loop by the author of Lamina (async in Clojure) and Aleph (async networking in Clojure, built on Lamina).</comment>


UpFor: built by Twitter employees to "change the way you hang out with friends" - <AUTHOR> http://www.upfor.com

<comment><USER2> Pretty skeezy but amazingly efficient. I signed up, they got all my facebook information. I just walked out to my car and it's already placarded with UpFor stickers.

</comment><comment><USER3> Anyone have a description of this service? I hate signing up for something just to find out I don't want it and I don't want them to have any information about me.

</comment><comment><USER4> I love lean startup methodologies and all but cmon... not even a small description of how? Not a single screen shot? How do we know it is even by twitter employees?

</comment><comment><USER5> Guys - Your Typekit CSS is being served up insecurely and is throwing up a mixed mode issue in Chrome 11.0.696.68.

May want to change it to serve over https instead.

<http://use.typekit.com/k/meo5ntk-d.css>?

And a little bit of insight on what exactly the service does / plans to do before forcing us to hit that Connect with FB button would really help.

</comment><comment><USER6> "We'll email you at apps+.....@proxymail.facebook.com when we're ready to launch on your device" is what you see after FBconnect and chose your mobile device

</comment><comment><USER7> Built by Twitter employees... with Facebook Connect!

<comment><USER8> So what? Facebook is a bigger network than Twitter.

</comment></comment><comment><USER9> Huh, after I signed up with Facebook they had my real email address. I haven't worked with the Facebook API for a couple years but they didn't used to give third parties access to the real email.

<comment><USER10> The permissions popup when connecting with an app explains this and gives you an opportunity to send a proxied email address. Albeit its designed for you not to see it, in small fonts.

<comment><USER11> Thanks for the bit about the proxy address. I had no idea that option existed.

</comment></comment></comment><comment><USER12> So what... if it's made by twitter employees it's supposed to be cool?

</comment><comment><USER13> After logging in via FB, it asks, "WHAT'S IN YOUR POCKET?." Clicking on any of these mobile icons doesn't seem to do anything.

<comment><USER11> It should give you a confirmation message stating that they'll let you know when UpFor is ready for whichever device you selected. Might be your browser? I'm using Chrome 12.0.742.60 and didn't have any issues.

<comment><USER13> Chromium 13.0.768.0 (85572). Sounds like it may be a issue with this build

</comment></comment></comment><comment><USER14> Sounds like a straight ripoff of David Weekly's Up For Stuff.

</comment><comment><USER15> hmmmm, it's just a page with no info, no way in hell am I signing up. I'm quite happy with how I hang out with friends thanks

</comment><comment><USER16> Doesn't work in Chrome dev. Insecure media access?

</comment><comment><USER17> WhereBerry?

</comment><comment><USER18> Any hints?

</comment><comment><USER19> Who else thought the "designed in SF, CA" slogan at the end was a pathetic echo of Apple's "designed in CA"?

<comment><USER20> no comment here on it being pathetic, but it seems to be the signature line for this guy: <http://vlourenco.com/></comment></comment>


Ask HN: Best option to collect contact information from about 800 websites - <AUTHOR>

I have a list of about 800 websites, worldwide, and so many of them are by default in different languages though they may have english version or perhaps google can translate.
I need to collect the contact information on those sites, in particular the contact email and address. Also a copy of their About page would be nice but is not mandatory.
What is the best option for this? I'm considering MTurk (Amazon Mechanical Turk) but wanted to ask if there are other, potentially better, options.
Also, for folks who may have used MTurk, how much would this roughly cost? <comment><USER2> I would probably hire a freelancer on ODesk. Pay $3-$5 an hour, probably get it knocked over in a couple of days. Hire two at once if you want to confirm the entries.</comment>


Drug Resistance: Worse, and Still a Lot to Learn - <AUTHOR> http://phenomena.nationalgeographic.com/2015/11/16/amr-weeks/ <comment><USER2> Related: [https://news.ycombinator.com/item?id=10578937](https://news.ycombinator.com/item?id=10578937)</comment>


Searching 20 GB/sec: Systems Engineering Before Algorithms (2014) - <AUTHOR> http://blog.scalyr.com/2014/05/searching-20-gbsec-systems-engineering-before-algorithms/ <comment><USER2> This reminded me of another, related task that comes up a lot in machine learning and IR: searching by vectors (rather than keywords). Aka k-NN ( _k_ nearest neighbors) search.

Just as with fulltext search, there's no shortage of clever approximate algorithms for kNN vector search (with the additional caveat of the "curse of dimensionality").

And just as here, without careful tuning, a well-optimized brute force search blows most "clever", widely popular kNN implementations out of the water on large datasets [1]. There's certainly something to be said for simplicity and good "systems engineering".

[1] [http://rare-technologies.com/performance-shootout-of- nearest...](http://rare-technologies.com/performance-shootout-of-nearest- neighbours-contestants/)

<comment><USER3> Your linked blog post was a really good read, but I'm not totally sure if the correct takeaway was that brute force outperforms "clever" algorithms. Unless I misinterpreted the results, FLANN and Annoy (which implement hierarchical k-means and a binary space partitioning algorithm, respectively) both ran about 100x faster than brute force.

Were you referring to the number of libraries the author couldn't get to work? This certainly might be a failure of over complicated algos, but it seemed more like an engineering failure than a performance failure to me.

<comment><USER2> Well, complex algos and engineering failures go hand in hand :-)

The approximative kNNs are superior if done well, no doubt about that. It's just that "doing them well" is a major challenge, even for well-established and well thought out tools, such as scikit-learn. So many things can go wrong, and despite the increased complexity & settling for approximative results, you can end up with worse runtime performance than O(n) brute force...

The performance of brute force is pleasantly predictable and stable. I just found the parallels with OP's article (which is on fulltext search, a mostly unrelated field) interesting, that's all.

</comment></comment></comment><comment><USER4> I think it's astounding how "easy" we can get away with stuff these days. But how does this scale to larger datasets? Say, capturing all signalling traffic for a telco. It's not hard to have 100s of GB a day - that's only a couple 10s of Mbps. Suddenly 20GB/sec means 5-10s queries just for that day.

They can also leverage the bulk speed to reduce the size of posting lists. Just index each term to a chunk of, say, 1-5GB. And don't even index full terms, just hash them - a 64-bit hash gives you enough room for around 10 billion unique terms without causing much problems with collisions. New data in the last hour can be brute forced while the index is being generated.

OTOH they seem successful so I suppose it's working quite fine.

<comment><USER5> Having worked at a telco where our tools would take a minute or more for results to come back, 5-10 second queries that we only do a few (or even a few dozen) times a day is _fine_.

<comment><USER4> I was thinking more along the lines of SIP tracing for customers, which happens much more frequently for tech support roles, at least in my experience. With a quad core and a single 1TB drive I was able to service 100s of GB a day of SIP with ~1s response times. Use a mix of brute force (for temporary log) then index in background.

The interactivity shifts quite a bit when you get close to "instant". Though I know some companies that are content with even 30s query times, but that's gotta limit flexibility.

<comment><USER6> I guess its an interesting difference right - what say a developer would consider "instant" (lets say <10ms) and what the end user is satisfied with as instant (maybe <1min)...it's interesting the tradeoffs you can make when you loosen your latency requirements.

<comment><USER7> Thinking like this leads to products like Rational Doors, a requirements database where searching is dog slow and you need to know where to look if you want to find anything.

<comment><USER6> Really? I've no idea what that product is but I hardly think it's a "thinking" problem, more a managing expectation or shit requirements gathering problem. If it was necessary to search in a certian way over a certain size in a certain time, you could make the appropriate trade off. Sounds like you just wanted to bitch out about a particular product pal.

<comment><USER7> I admit I like bitching about slow software. But if you don't put speed as one of your top requirements, over time your software will become slower and slower. Having one operation that takes 100ms instead of 10ms is fine until two years later when somebody else who doesn't bother to read your code uses it to implement something that now takes one second instead of 100ms, which is incidentally used a hundred times to complete some query that now takes minutes instead of seconds. Now imagine you're a company like IBM or SAP that works on the same code base for decades and the cruft keeps layering and layering until even finding out which part of the code needs to be tuned becomes too expensive to explain to your customers.

There is [http://accidentallyquadratic.tumblr.com](http://accidentallyquadratic.tumblr.com) with a nice collection of "it was fast enough at the time" code.

<comment><USER8> Why would it be difficult to profile and find the bottleneck after a few decades? It should actually be even easier with better profiling tools and practices.

<comment><USER7> Uniformly shitty code is hard to profile. See for example what Chandler has to say about writing good code

[https://www.youtube.com/watch?v=fHNmRkzxHWs](https://www.youtube.com/watch?v=fHNmRkzxHWs)

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> Also, see the follow-up post:

[http://blog.scalyr.com/2014/07/impossible-problems-often- are...](http://blog.scalyr.com/2014/07/impossible-problems-often-arent/)

In the end, they did have to do some pre-computes (which is better than indexing, but still not 100% on-the-fly resolution).

</comment><comment><USER10> Searching at several times memory bandwidth is definitely possible on reasonably modern hardware:

[http://www.codeproject.com/Articles/250566/Fastest-strstr- li...](http://www.codeproject.com/Articles/250566/Fastest-strstr-like- function-in-C)

The trick is that the CPU isn't actually reading all those bytes, as the longer the string is to be sought, the more bytes can be skipped over if the last character doesn't match.

I wouldn't call this "brute force" though - it's nowhere near as complex as indexing, but what I consider "brute force" is more like strcmp() in a loop.

<comment><USER11> Your needles (search terms) need to be quite long if you want to save on memory traffic: cache lines are 64-128 bytes and random access to standard DRAM is slower than sequential access. It can help if your data is in-cache though. (Or if you have an unusual system where memory is faster than what CPU can keep up with).

<comment><USER12> The high cost of random access to DRAM comes from jumping between rows (blocks of consecutive few -to- few tens of kB).

If you read sequentially with gaps, you only have to open each row at most once. So it's like normal sequential reading, except that you may end up skipping few rows here and there and you may end up not transferring some parts of the rows you opened.

So the time to completion can only be shorter, even if average throughput is lower.

</comment></comment></comment><comment><USER13> Deciding to do things this way is a tradeoff. Writing data into a search index is maybe 10x more expensive than writing it into a log. But doing actual search typically happens in something like log(n) time. Even for pathological queries, they're still far more efficient than scans.

From a cost perspective, this system is a bet that most data it writes is rarely or never read from.

<comment><USER14> The articles also discusses that it makes more complicated queries much easier to process. For instance, allowing regular expressions, or special character aware searches.

<comment><USER15> It is possible to index content and then retrieve it with (simple) regular expressions, see ([https://swtch.com/~rsc/regexp/regexp4.html](https://swtch.com/~rsc/regexp/regexp4.html)). The trick is that each regular expressions can be seen as a tree where leaves are n-grams to be searched for, and nodes are AND and OR logical operations of n-grams and intermediate nodes.

So, a regexp like /banana/ can be seen as a search for the trigrams "ban" and "ana" and "nan" and "ana", all in that order. A regexp like /ca[tp]/ can be seen as a search for "cat" or "cap". Once you have simple n-grams like that it's trivial to index content on the way in (note that what you index doesn't actually need to interpret content, all you need is to split every n characters) and use that index to restrict potential matches.

<comment><USER16> This quickly falls down for searches like:

/a[0-9][0-9][0-9]k[0-9][0-9][0-9]c

</comment></comment></comment></comment><comment><USER17> What does 20 GB/sec mean in the context of a search?

<comment><USER18> The article [1] was about a log search/parsing service, so 20 GB of log files/second. Log files are usually text.

[1] [http://blog.scalyr.com/2014/05/searching-20-gbsec-systems- en...](http://blog.scalyr.com/2014/05/searching-20-gbsec-systems-engineering- before-algorithms/)

<comment><USER19> Every few years I stay in CS I see something crazy. I hope that the next crazy thing I see is a log file that isn't text.

I can't imagine who would think that would have been useful to program IF it does exist.

<comment><USER20> Why would you want your log files purely as text? It tends to take up a lot more space when you're storing a useful amount of readable information.

Category prefixes and time stamps alone take up enough space that you could benefit from having them stored concisely. Indentation actually takes up space. The lines are delimited, not counted (you can have a trailing count). And so on. Space will always be a bottleneck, and generating the data will always take time; no reason to make that worse. The average log byte will be written once and then never looked at by a human.

Producing ASCII text also requires a lot more code. Entire articles have been written on the correct way to print a float as decimal digits... or, you could memcpy 4 bytes into a buffer, while knowing ahead of time exactly how much space you'll need (and the value will round trip perfectly). Something similar goes for integers (using something like LEB128 encoding). In both cases the encoded data will likely take up less space than most useful text representations, even taking into account any control bytes, while being a lot quicker to produce. "But what if there's a bug?"... well, you'll probably find it in one of your first tests, when you write the first thing that sprang to mind. There's not much space for bugs to sneak in.

People don't like this because we have crappy tools. If `cat' supported this kind of encoding as-is, nobody would complain about the idea. You can tell by the popularity of gzip... who complains about gzip? But good luck trying to read a gzip file without the right tools.

<comment><USER21> The right tools for a gzipped log file is: less (courtesy of lesspipe).

And/or zgrep. In the worst case scenario, you pipe the output of a gunzip through whatever tools you really want to use.

The same tools work on compressed and uncompressed logs, and all of that "wasted space" compresses really well. Nothing like watching gigs of log files compress down to a few megs. It's even supported automatically in most Linux operating systems via logrotate.

</comment></comment></comment></comment></comment><comment><USER22> Um, what if their logs grow exponentially or faster..? Will they not struggle using that approach? The article reads like an advertisement to me.

<comment><USER23> In what circumstances would logs grow exponentially? I imagine any approach would have trouble with logs that grew in size that quickly.</comment></comment>


Show HN: NetCommons – Our Neighbourhood, Our ISP - <AUTHOR> http://ideas.chest-project.eu/?q=node/3412

<comment><AUTHOR> This is my proposal for EUR 6,000 in project funding from the European Union's CHEST/FP7 programm. Call 1 "will support projects that seek to explore the technical feasibility, social impact potential or commercial viability of an idea." [1]

The work is going to be not-for-profit, and the idea is described in very broad terms because I simply don't know yet which particular social group I wanna work with in the beginning. I don't even want that name, but I had to name the project in order to apply. It's very likely that I'll collaborate with the Freifunk Berlin and Project Meshnet communities.

What I do know, though, is which software/hardware combination I wanna explore: cjdns for routing on an end-to-end encrypted IPv6 network, Smallest Federated Wiki as an example of a federated web app, local file sharing as an example of local services, as well as something for Voice-over-IP.

Right now I'm preparing two small TP-Link TL-MR3020 routers (25 euros each) that won't provide internet access directly, but instead serve a splash page with instructions and packages for the installation of cjdns on Linux and Android devices. The MR3020s run cjdns as well, and the devices will automatically peer on the Ethernet layer, without the need for traditional DHCP/IPv4. The routers have one USB port each, one will get a 3G stick for peering into cjdns' test network Hyperboria (via the Internet), and one will get a harddisk for file storage.

I also got my hands on a Medion Life NAS drive [2] which now runs OpenWRT and provides 2 TB of storage to any cjdns network that it gets plugged into.

I'd appreciate feedback regarding the application. For this call, the number of characters was strictly limited, but Call 3 (for 60,000 euros) will have a couple more detailed questions. I'm sure I can find good answers to them but this application is what I already wrote and of course I'd like to know what people think about it.

Also, please do vote for it, so that I actually have a chance of getting this money ;) After logging in with email or FB/Tw, a little voting form appears below the applications. Your data is subject to european data protection laws.

1: [http://www.chest-project.eu/calls-for-proposals/](http://www.chest- project.eu/calls-for-proposals/)

2: [http://zyxel.nas-central.org/wiki/Category:NSA-212](http://zyxel.nas- central.org/wiki/Category:NSA-212)</comment>


Obama Says Sony 'Made a Mistake' Canceling Film - <AUTHOR> http://www.wsj.com/articles/obama-says-sony-made-a-mistake-canceling-film-1419017168?mod=WSJ_hp_LEFTTopStories

<comment><USER2> >"They caused a lot of damage and we will respond. We will respond proportionately and we will respond in a place and time and manner we choose," the president said.

So I'm just going to ask, is the Sony hack going to be an excuse for us to intervene in NK?

</comment><comment><USER3> Curious, is it possible to have a cyber sanction against NK? Block all Internet access in/out of the country.

<comment><USER4> It is possible but would it be effective? Not likely, several countries tried to do this to prevent the citizen uprising and it didn't work.

NK could just sent agents outside of the country, hack the data, and bring it back in. They can launch satcubes to create micro-nets to hook into the network.

The Internet is meant to be resilient against these type of blockages.

</comment></comment><comment><USER5> Wow I actually agree with Obama.</comment>


The dockless scooter industry is going after a repossessor and a bike shop owner - <AUTHOR> https://www.theverge.com/2019/7/24/20696405/dockless-scooters-share-repo-men-repossessor-lawsuit-tow-yard-lime-bird-lyft-uber-razor <comment><USER2> > they've recently caught juicers breaking into a ScootScoop impound storage > unit, going after the Lime scooters specifically. The juicers allegedly > became violent when confronted

> they [juicers] had broken into his storage unit and were holding scooters, > he says. Heinkel confronted them, trying to grab the scooters back. He says > that one of the workers, a man who towered over Heinkel, punched him a few > times. Then he got on the scooter and started riding it toward Heinkel

That read like some kind of a Mad Max scene. It's just so bizarre.

</comment><comment><USER3> Scooters should have docks or designated parking areas.

The concept is cool but, like dockless bikeshare, the execution has been a mess resulting in littering all over public sidewalks and also apparently over private property.

I'm not sure I trust repo guys and tow companies not to fraudulently tow the scooters though.

<comment><USER4> "Scooters should have docks or designated parking areas."

Why only designated parking areas? Why not allow scooters (and bicycles) to park anywhere that cars can?

<comment><USER5> Well that would still technically be a designated parking area - if an overlapping one. Cars have them as well.

The main reason why not is if there are other non-disruptive locations for it they should be parked there first. Better to have bikes on bike racks before they start taking street spaces for instance.

<comment><USER6> Why non-disruptive? Cars take up massive amounts of space. They can stand to be inconvenienced a tiny amount.

<comment><USER7> Because more often than not only a small amount of organization is actually needed to stop scooters and bikes from being in way of people using the sidewalk?

<comment><USER6> If that was actually the case, we should see huge amounts of space devoted to bicycles at this point. We do not. If you've ever ridden in the city and had the only three bike rings for a full block taken up, you share the frustration.

</comment></comment></comment></comment></comment></comment><comment><USER8> "When I call them in July, Heinkel and Borelli say that they recently celebrated impounding their 10,360th scooter with some donuts and large coffees from 7/11."

Assuming that they win in court, and companies won't pay the "ransoms", they have at least a Million Dollar Inventory.

</comment><comment><USER9> The GPS logs should show if this tow company has removed from public property.

<comment><USER10> And using that the companies should possibly also be able to charge costumers that leave the scooter in bad places an extra fee. Or maybe do that after a complaint is made to the scooter company.

</comment></comment><comment><USER11> Cheers to the repo man in this case. The scooters are left like trash everywhere. The scooter companies know they're left everywhere like trash. The public and semi-public places are being used as free storage by the scooter companies. They abuse the public resources to make money. If their junk is left on private property, then repo it. If they're going to argue under the vehicle code the scooters can't be repo'd, I'd like to know when you can't tow a car parked on your business's sidewalk.

</comment><comment><USER12> In the US, the towing industry is a racket on its own. I'm not sure if it's good that one public nuisance is trying to get the upper-hand on another public nuisance.

</comment><comment><USER13> I assume the endgame for the scooter companies is to get big enough before regulation kicks in and they're forced to add docks of some kind, but so are potential competitors. That would be a nice little moat for them.

I wonder therefore how long it takes before one of the companies thinks they can gain an advantage by getting first dibs on dock locations.

</comment><comment><USER14> The scooters have GPS, have the companies required by law to send out representatives to clean up any scooter on private property that hasn't explicitly given permission for them to be there, and allow the city to mark of any public area they want as forbidden as well.

</comment><comment><USER15> At the end of the day, I'm surprised cities have embraced these scooters with open arms.

<comment><USER16> Most haven't actually. The modus operandi of the scooter companies seems to be:

1\. Drop a load of scooters around town in the middle of the night

2\. Wait for the city to take notice

3\. Apply for permit after the fact

They're very much in the "Easier to ask forgiveness than permission" game right now.

</comment></comment><comment><USER17> Good, we need more folks like these in every other city these obnoxious things had been unleashed upon.</comment>


Feedback: Automating adding value to your network - <AUTHOR> Hey guys!
I'm Armando, Co-founder of Bluup. We believe that the best way to keep professional relationships is by constantly adding value to the other person. However, due that we all have busy lives, we neglect to do it. Therefore, we lose the relationship.
We automate this task. Startup founders or other super busy people register the interests of their mentors/future investors. We scrape the web for news, podcast, and papers. Our users will get the link of the content that adds the most value to each of her contacts, and they can forward them to them.
Our website is www.bluup.co
Could you give us feedback? <comment><USER2> 1) > REGISTER YOUR CONTACTS

> Tell us about what you talked about, their interests and where they work.

That's going to be a no from me. I wouldn't want anyone from my network to input my details in there either.

2) The whole premise of "sending links" = "adding value" is flawed beyond repair.

3) In your form where it says "Amount of contacts" it should be "Number of contacts" instead.

4) Even if some people would pay for this (I wouldn't), $1 per contact is way too high.

<comment><AUTHOR> Thanks for your feedback!</comment></comment>


Stop Vomiting - <AUTHOR> http://thesearchforsense.tumblr.com/post/stop_vomiting

<comment><USER2> "The irony is, I really enjoyed the original post. Upon reflection, I believe there is something to be learnt there." -- Care to expand on that a tad?

I wholeheartedly agree with the part of the original post about love and ownership, but not so much about sex and intimacy.

Regarding vomiting - I'm not entirely convinced it's always from a complete lack of thinking on the poster's part. I feel like people are genuinely afraid of putting themselves out there, though they want to, and so try to be cryptic and vague. Perhaps that's from a lack of introspection, but I don't think that's always the case.

<comment><AUTHOR>
        "The irony is, I really enjoyed the original post. Upon reflection, I believe there is something to be learnt there." -- Care to expand on that a tad?

The way I see the world, what parades as 'love' between two people is actually 'attachment', that is, a selfish modification of love -- love of oneself.

Thence arises the two of the three dichotomies mentioned: commitment/exclusivity and love/ownership (although I would argue that perhaps love is used here in the context of a feeling rather than the more metaphysical 'recognition of oneness (identity) with another' that I prefer).

The apparent jarring presence of sex/intimacy (which you noticed) is what propelled me to ask the question of the OP originally.

        Regarding vomiting - I'm not entirely convinced it's always from a complete lack of thinking on the poster's part. I feel like people are genuinely afraid of putting themselves out there, though they want to, and so try to be cryptic and vague. Perhaps that's from a lack of introspection, but I don't think that's always the case.

By making a post you are 'putting yourself out there'. If you are not confident about the idea that that post represents, then why are you making it public in the first place?</comment></comment>


U.S. denying passports to American citizens along Mexico border - <AUTHOR> https://www.washingtonpost.com/world/the_americas/us-is-denying-passports-to-americans-along-the-border-throwing-their-citizenship-into-question/2018/08/29/1d630e84-a0da-11e8-a3dd-2a1991f075d5_story.html?noredirect=on&utm_term=.03e54150be90 <comment><USER2> No person can assert their citizenship as fact, it's the state issuing the birth certificate that asserts it as fact. And it is the U.S. State Department questioning the veracity of the issuing state. Upon being born a person isn't even sentient, they learn of their citizenship over decades through indoctrination and then accept it as an established fact. And then, the state department issued a passport at one time means they at one time accepted the veracity of the birth certificate as issued by the state government.

I'm not a lawyer but I'd ask a court to rule the burden of proof is on the state department. Not the individual.

And shame on any issuing state that doesn't come to the defense of someone they claim is one of their citizens.

<comment><USER3> The problem is that the system doesn't work like that at all. If you have the money to hire an immigration lawyer, then you can probably get this sorted out. However, Texas and other states wouldn't have the ability to directly intervene in an individual case because the Constitution doesn't allow them to have a say in foreign affairs. They can sue the US government to get them to stop certain actions, but the Attorney General for that state is the one who makes the call here, and that is always a political consideration.

Basically, the laws are written under the assumption that the people running these Departments would have a strong interest in protecting US citizens and wouldn't use their power to do massive discrimination. So you're left with getting either Congress or the Courts to intervene which takes time.

</comment></comment><comment><USER4> Damn, that is messed up. Born in America, served in the U.S. Army, and is just as much a citizen as anyway else... but suddenly doomed because his name is "Juan" and is Hispanic. That's gotta be depressing as hell to give so much to a country to get turned away on a whim like that.

<comment><USER5> "turned away" fundamentally misapprehends the travesty of justice here.

</comment></comment><comment><USER6> How hard is it to forge a birth certificate? I was under the impression it was quite difficult. Maybe with today's technology you could produce some convincing frauds, but I'm kind of skeptical this was happening at any kind of scale back then.

<comment><USER7> This is not about forging a birth certificate. This is about denying birth certificates issued be the US government are actually valid.

<comment><USER6> I think I took the word "fraudulent" a little too all encompassing then. Still ... I think my point remains. How does one go about obtaining a legitimately produced US birth certificate and then assign it to someone not born here? I imagine this would have to be a tightly controlled process at hospitals. So how do midwives get them?

<comment><USER7> Depends on the state, but it's fairly common for people to be born outside of hospitals, even just at the side of the road etc.

[https://www.cdph.ca.gov/Programs/CHSI/CDPH%20Document%20Libr...](https://www.cdph.ca.gov/Programs/CHSI/CDPH%20Document%20Library/ADA_Out- of-Hospital%20Birth%20Pamphlet%20\(01-18\).pdf)

</comment></comment></comment></comment><comment><USER8> you have to understand how difficult it is for the Border Patrol to determine that a birth cert is not fraud...

We have 50 states, sever US non states and on top of that the numerous Native American Reseverations and every one of them issues a birth cert...

<comment><USER9> Most crimes have a statute of limitations. If someone spends their whole life believing they are a US citizen it makes no sense to throw them out at the age of 40. Or even weirder - keep them inside but deny a passport.

They aren't morally responsible for whatever crime was committed at the time of their birth - assuming one was even committed. Requiring proof of innocence is near impossible and ridiculous.</comment></comment>


Continuations: Programming Without Programmers? Aka Software - <AUTHOR> http://continuations.com/post/149417761835/programming-without-programmers-aka-software <comment><USER2> Is having "Continuations" in the title the HN way of making the post more click-baity?

(Only teasing, I was personally disappointed when I saw the post had nothing to do with continuations.)</comment>


Why you should never, ever, ever use MongoDB - <AUTHOR> http://cryto.net/~joepie91/blog/2015/07/19/why-you-should-never-ever-ever-use-mongodb/ <comment><USER2> I've had multiple instances of production data corruption with MongoDB. One of them unrecoverable using normal tools (as in, exporting data or attempting to replicate it just outright failed). Luckily that was a non-critical system, but if it hadn't been, it would have been a disaster. Hundreds of gigabytes of documents were unrecoverable, at least by our database folks.

The bigger issue I've seen was that some major ORMs were relying on some (apparently undefined?) behavior regarding the positional operator with nested collections of documents, and that behavior changed with a minor version. It's harder to blame MongoDB for that one, but the data corruption was cancerous – it multiplied on every document save.

</comment><comment><USER3> I was surprised to learn that MongoDB can have multiple of the same key in the same document. So you might have a "map" that looks like this:

{"a": 1, "a": 2, "b": 3}

"a" maps to 2 different values in this case. Depending on how your languages driver works it's often difficult to see this is happening. In some languages you'll get "a" mapped to 1, and other languages will show "a" mapped to 2.

</comment><comment><USER4> This article is very old (in internet years) and Mongo moves very fast. So most of the things in the article are way, way out of date. Very smart people working at Mongo understand where they need to get and how to get there, and they are well along the path. Bad old code is being replaced with better new code, limited mainly by backward compatibility bother.

It is still the case (and will remain for a long time -- also internet years) that to get reliable behavior, you need to use non-default options. Queries need a variety of extra flags that say, "please make this write durable", or "please be sure to give me the right answer". And, when you use the flags, they reliably make the DB slower. If you use enough of them to get ACIDy distributed reliability, it's hardly faster than other DBs.

So, in another two or three years, it will be an OK choice. In the meantime, PostgreSQL is arguably the better choice. And, of course, PG is not sitting still, so may still be a better choice in two or three years.

But most people using MongoDB don't care, because the overwhelming majority of uses of data storage just don't matter very much. When you see the list "people who bought this gewgaw also looked at this lot" on the bottom of a page, chances are that's Mongo telling you, and who cares if it's right? What matters is you didn't have to wait an extra ten seconds for the stupid page to load.

Still! Every time you order from Cisco, the order goes through a Mongo store. Since they have been using Mongo for a long time, they either make durability in their application code -- which, dangerous secret, is much easier than doing it in the DB -- or just aren't too arsed about it. (I'm betting it's the latter.)

<comment><USER5> I guess I just don't get why you'd use this over Postgres if it has such a heritage of unreliable behavior and _still_ doesn't give you actual performance benefits. If you need a document store use Couchbase, CouchDB 2.0 or Postgres blobs. If you need a cache use memcache. Why Mongo, especially after the latest licensing headache?

</comment></comment><comment><USER6> If you need a document-based approach there are a few options you might want to consider (and certainly not table-based relational db). I've migrated part of our project to Couchbase (not CouchDB or others) and beside a technical comparison... I've appreciated the ease of onboarding for new hires to this technology, scalability and maintainability... all aspects that become critical in the long run. If your project involves mobile clients, I'm sure your devs will appreciate the easy to use SDKs packaged with features (I personally loved the fine grained offline sync with backend and/or between two local DBs)

A technical comparison is here, but it's on the couchbase site so it could be biased [https://www.couchbase.com/comparing-couchbase-vs- mongodb](https://www.couchbase.com/comparing-couchbase-vs-mongodb)

</comment><comment><USER7> > ... is not ACID-compliant

All the other points are interesting, but I'm really tired of people bringing up this fact as a slam against NoSQL databases. Not everyone needs ACID compliance.

<comment><USER8> Not being that is one thing, but (at least in the past?) they implemented updates as non-atomic delete and insert, which is just crazy bad. It's one thing not to be ACID but having a query not return some entry at all because it's being concurrently updated is... an interesting design choice.

Edit: link [https://blog.meteor.com/-654b6594a827](https://blog.meteor.com/-654b6594a827)

<comment><USER5> Hence why CouchDB's append-only approach had always been the better choice. Why Mongo ever became more popular still boggles my mind.

<comment><USER7> I think that's because MongoDB makes far more claims around performance around big data than CouchDB does. CouchDB has always focused a lot more on features like having a built in REST-like API, replication, Fauxton, fault-tolerance, etc. There was also a lull where CouchDB wasn't seeing very much development, but that's changed since before the arrival of version 2.0. I wish CouchDB would see a little more popularity than it has, as I've found it(along with PouchDB) to be handy in a lot of projects.

</comment></comment></comment></comment><comment><USER9> I'd definitely recommend Couchbase, I feel it's a more robust and feature complete NoSQL document store for most use cases. It's easier to set up, and write performance is much higher than MongoDB in most configurations due to the master-master architecture. The N1QL query language is the most robust NoSQL query language out there, and it's SQL based so very easy to use. Additionally, in the last year, Couchbase has added a complete Full-Text Search system as well as Analytics, which is SQL-based MPP analytics querying with no ETL (think built-in Hive/Hadoop on JSON documents).

</comment><comment><USER10> Has anyone had any success migrating from MongoDB over to Postgres? My team and I decided to try out MongoDB for a new app we wrote because the data model seemed to fit the idea of a schema-less document quite well. But many months later, Mongo has caused a few more headaches than its been worth and we are slowly leaning towards using a more traditional data model.

I was thinking that one approach might be first to just keep the schema-less data model and move over to using Postgres JSON. Once that is stable, then think about how we would move over to using schemas. Any thoughts on whether that is a plausible approach?

<comment><USER11> Would recommend straight into schema if you have the time- but if you must do it incrementally, then yea this will work. The JSONB columns are extremely powerful.

</comment></comment><comment><USER12> I actually evaluated MongoDB before I decided to go with Couchbase. Mainly because of the following reasons. 1\. It was a pain to manage the shards and the 'mongos' processes would be hotspots and SPOFs in the system. No wonder there were ways around it, but Couchbase did it right. With Couchbase, sharding was maintenance free and the client was aware of the cluster topology and which shards lived where. Rebalancing was a breeze and you could even pause and resume it if required.

2\. We didn't want to introduce MongoDB and then having to setup a separate cache like Redis in the front. That would be too many moving parts. With Couchbase we got a built in cache that was managed as part of the solution, a huge plus point for us.

3\. Couchbase offered a great road map, at the time we ran the evaluation N1QL wasn't GA yet, but it offered great promise and look where it has come today.

4\. The official Kuberbetes operator offers a great way to run and scale Couchbase on any public or private cloud. It encompasses a lot of operational knowledge about the product and is a massive plus.

4\. The cluster management for Couchbase is totally based on a REST API that is open. The standard web UI makes use of it too. The REST API offers the best way to automate administrative tasks and allows you to create your own customized monitoring arrangements.

So, above is a brief roundup of why we made an educated decision not to use MongoDB in favor of Couchbase.

<comment><USER13> 1\. Managing shards and the mongos router layer should not be dubious, IMHO. Additionally - there should not be a SPOF if you've designed the architecture to leverage the native scalability aspects of MongoDB. That said, if you struggle with management, you can certainly leverage an online service that greatly simplifies not only scalability but security, manageability, and availability as well.

2\. I don't know the read/write profile of your app but based on the hundreds of apps I've helped to configure and size, I'd be inclined to suggest that you don't need a Redis cache if you're configured properly.

3\. Interested in that roadmap... haven't seen it... what specifically interested you?

4\. MongoDB has similar available... happy to share that with you.

You're certainly free to choose whatever solution you believe works best for your use case. However, the points you've made don't appear to provide compelling arguments for Couchbase over MongoDB.

<comment><USER12> Precisely, you made my point when you acknowledged that MongoDB allows me to get a critical thing so wrong. And if I get it wrong, the pain afterwards is so intense when you go back to fixing it. Thanks.

I forgot to mention, Couchbase also guards me against the rogue DBA situation by ensuring field level encryption under application control. A huge plus.

</comment></comment></comment><comment><USER14> This is from 2015.

<comment><USER15> Are you saying things have changed, or just that it should be labeled 2015?

<comment><USER16> Personally I wonder if data loss was addressed with the WiredTiger engine.

<comment><USER17> No. Replication still had corruption when I was dealing with WiredTiger at scale. They kept claiming to have fixed the corruption problems in each release. After that a few times, I wasn't willing to trust the claims, so I wouldn't use Mongo anywhere that I couldn't just as well use a JSON file as my data store.

</comment></comment></comment></comment><comment><USER18> TLDR All databases corrupt data, and mongodb is reasonably performant, and also easier to scale than most.

I have had instances of data corruption in production servers with both OracleSQL and MySQL. Several sql databases take forever to fix bugs (e.g. the crappy handshake in MySQL took 5y to get fixed).

MongoDB is actually the best database I have ever used in production, in question of both performance AND scalability. So I call your bluff there, no data, no fact.

</comment><comment><USER19> 200% return since MDB went public. Should I sell or go longer?

<comment><USER4> Go long until the (imminent) next stock market crash. Then, sell before it happens.

</comment></comment><comment><USER20> > .. has an atrociously poor response time to security issues - it took them > two years to patch an insecure default configuration that would expose all > of your data to anybody who asked, without authentication

I think that points a little unfair, yes a lot of users were compromised but none of them bothered to RTFM.

When I was learning Mongo and got a link to access the database, the literal first thing I asked was well how do I secure it? Taking the time to actually learn the fundamentals of a (then) new technology is never wasted!

<comment><USER21> Yes, I'm sure this "blame the user" attitude is how they justified not fixing the issue for so long.</comment></comment>