A Guide to Employee Equity - <AUTHOR> http://themacro.com/articles/2016/08/a-guide-to-employee-equity/ <comment><USER2> As an ex-Gusto employee, let me provide another side.

Gusto also has a company bylaw where they can veto any employee sale. Not Right of First Refusal, but can flat out veto an employee selling stock to buy a home, pay off student loans, start a company, etc.

This isn't covered at the time of hiring, nor present in the option agreement provided to employees.

As an early ZenPayroll (now Gusto) employee and a leader of the culture up to 70 employees, I'm honestly embarrassed by the company's stance here. It's hypocritical (in my opinion) to the values talked about by the company.

Employees should benefit from the success of the company they worked hard to build. As a current founder, believe me I understand why founders get a much larger share. But at least be transparent.

You can read about our approach to equity, and everything else, here: [https://octopoedi.gitbooks.io/employee- handbook/content/](https://octopoedi.gitbooks.io/employee-handbook/content/)

<comment><USER3> It should be presented transparently, but that's a pretty standard term and there's a good reason for it. Those so-called secondary sales put more owners onto the cap table which can cause accounting and investor-relations headaches for small companies. Things like information rights, control issues, regulatory responsibilities. At a pre-IPO stage, it can be good for the company (including option-holders) to control who they invite in to own it.

Basically Facebook and a few others tried allowing secondary sales, had problems, and since then the industry has retreated from that idea.

<comment><USER4> In the case @tyre mentioned above, the number of owners on the cap table would have actually been reduced during the sale, not increased.

The problem is not with the spirit under which that clause was added to the company's bylaws--the problem is the knee-jerk reaction by which they halted any discussion of sales (and didn't try to find a solution that worked), whether or not the proposed sale actually had a material effect on the cap table. Not to mention that ROFRs exist to eliminate cap table problems altogether.

Employees are unaware of these "veto" clauses, and continuing to hide them is acting in bad faith. But of course companies don't want employees to be aware of these clauses--it would become crystal clear how absolutely worthless equity is for the vast majority of employees at startups (even at Valley darlings like Gusto).

<comment><USER5> As a preface, I'm as employee friendly as it comes for options and I've been through the ringer on this whole option process.

I don't think it is fair for an employee of a private company to be upset that they can't sell their shares whenever they want. There are more than just issues of the cap table. If one person wants to sell shares then isn't it only fair that everybody get the opportunity? So now it becomes a process. If the company endorses the process, then it can potentially affect the 409A valuation in addition to being a pretty big distraction and time sink.

So you can't just say because Employee X wants to sell shares and has a buyer lined up, the company shouldn't get in the way. The most fair thing for everybody might be to block the sale.

As a caveat to this, I believe that if founders sell shares then they should also give employees a right to sell shares, and not doing so is reason to get upset. However, if the founders aren't selling shares then I don't think it is wrong for them to make everybody wait for an IPO, acquisition or a other structured stock sale.

<comment><USER2> The founders of Gusto did sell shares, without a broader option for employees (they hand picked some employees that they wanted to allow to sell shares.)

Regardless I think employees should be able to sell shares. We (Seneca Systems) have a right of first refusal where we can choose to buy the shares. In that case, we do get to choose the investors, indirectly, because we can raise money to pay for it.

It really comes down to how you balance power between the two groups. Personally, we believe that founders and investors have enough rights with a RFR. We shouldn't have veto power over major life events for our employees.

Is it more inconvenient? No, not really. But it is a big deal for employees that have worked their asses off to make our company what it is.

<comment><USER6> It is sad founders and employees are considered different groups here.

<comment><USER7> Why shouldn't they be? Founders put in the initial blood sweat and tears for below market rates. Some guy hired at year 3 for market rate? Just an employee.

<comment><USER8> Because 95% of the time it's not market rate because the employee thinks his equity is worth something, and founders never disabuse them of this notion. And many owners pretend like the equity is some form of employee ownership. Then they never inform them of the multitude of clauses that shift all possible risk away from the company, founders, and investor onto the backs of the employees.

Again I want to reiterate that all of this is great if the the company is upfront with possible employees about how the deal is structured, and that the employee is just an employee with a few lottery tickets so they might as well be working at AmaGooBookSoft for twice as much money. And upfront the owners told the employee that they definitely should not put in their blood, sweat, tears, and family time into the startup because they're not a part owner, they are "Just an employee".

<comment><USER7> Oh 100% agree, many startups abuse employees with fake kool aid and pretend dreams. Not just startups, trading companies do this, sure other markets do too. Talk a lot about the awesome that will happen down the road, but nothing in writing (or writing that contradicts claims). Feel bad for people that sign up for such bum deals...

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER3> Hi, thanks for the lucid interview. Why the 3 year minimum service period to extend the exercise window?

 _> The main point is that if someone decides to not exercise and/or is not able to exercise and they leave the company, their options typically have a three-month expiration. So, unless the person exercises them within three months after leaving, they lose those options, which is kind of crazy to think about because the person has already invested time, already contributed to the company, already meaningfully helped the business._

 _> So at Gusto... everyone that has stayed here at least three years, their expiration changes from three months to ten years._

Doesn't everything just said about it being "crazy" to lose your options apply if you leave at 2.5 years? You've "already invested time, already contributed..." Why should you lose vested options, ever?

I asked Adam D'Angelo about minimum service periods and he responded that it'd be more transparent to have a longer cliff. My perspective is that backloaded vesting would be closer to the probable intended effect here (a barrier to leaving early, but you don't lose everything).

Put another way... Aren't "minimum service periods" exploiting opaqueness to make them seem like friendlier terms than longer cliffs or backloaded vesting?

<comment><USER9> This is a really tough policy to get right because there is a continuum of cases. At one end, someone has vested shares and is pushed out for being harmful to the company. At the other you have a valued loyal employee that is going to business school for two years and hopefully coming back. It is a no- brainer that the employee going to school should get the exercise period extended--but if the toxic employee doesn't want to risk cash, why should the staying employees take dilution on what was probably unhelpful service?

It is really hard to make a contract that fully reflects what's fair.

I think the thing that gets missed a lot in these discussions is that just because default docs are super company favorable (i.e. assuming the former rather than the latter), in the opposite case one can make an exception.

<comment><USER10> > It is a no-brainer that the employee going to school should get the exercise > period extended--but if the toxic employee doesn't want to risk cash, why > should the staying employees take dilution on what was probably unhelpful > service?

Because in both cases, they earned their options. You can't take back their salary compensation, why should you be able to take back their options?

> It is really hard to make a contract that fully reflects what's fair.

No, it isn't. If you've earned your compensation, you have earned it. Unless you mean its difficult to write a contract where a company can weasel out of their obligations when its suits their purposes; I would agree with that.

<comment><USER11> > they earned their options

Yes, and that option expires in 3 months after departing... In the same way that publicly traded stock options (ie calls) typically have expiration dates.

Part of the conflict here is that "options" aren't "shares" \-- the option, including all terms (such as execution windows) are what is earned. Everything is known upfront. If you wanted comp to be around shares, then just issue shares via RSPA and deal with the cap table consequences and extra legal wrangling.

This entire "problem" is caused by tax code: you owe the IRS on gains from option conversion, even though the underlying asset is entirely illiquid and frequently non-transferrable. Sounds like a "real" solution is to lobby for tax code changes.

EDIT: to be clear... I'm not saying I agree with short expirations after departure. But there needs to be a clear distinction between shares, options, and 'intent'. Clearly the existing two ways of comp are lacking since there are either tax consequences (options) or out of pocket employee expenses to purchase (shares).

<comment><USER9> And there really isn't any free lunch. Extended exercise periods have a real cost to everyone that stays (the people who are increasing the value of the option) at no cost to the departed person.

<comment><USER12> Right but the person who left was their earlier, during a riskier time, then probability of failure was greater. So they jumped in when others might have thought twice (remember most startups fail). Aren't those options a reward for that?

</comment></comment></comment></comment></comment></comment><comment><USER13> Gusto (people being interviewed) formerly known as ZenPayroll, fired an acquaintance about a week before their options vested.

Now they are trying to educate people on equity? You would need a full- semester class to explain the many ways in which VCs and their "startup" cronies can screw you out of compensation (e.g, dilution, selling at a low price and then using staying bonuses to kick in liquidation preference, 30 day exercise windows making it financially prohibitive to exercise, etc). Do companies even IPO anymore? If Uber still hasn't gone public, when do you think Gusto is?

If these companies actually wanted us to value their equity, they would reimburse independent corporate lawyers to review the contract.

Higher profile people like Zach Holman are already speaking up. It's going to take a while, but I already see programmers realizing that the smart move is either being a founder or going to work for GoogMicroAppleSoft. It's still to be determined whether the VCs will finally realize their inability to hire is their own damn fault and fix equity.

Only the naive and the financially illiterate accept these equity offers as worth anything.

<comment><USER14> > If Uber still hasn't gone public, when do you think Gusto is?

IPO is only one of the exit strategies available, acquisitions being another one (selling to the private market being another one, etc). A company doesn't necessarily have to IPO in order to return a value to its shareholders.

<comment><USER15> Unfortunately, an acquisition isn't necessarily all that valuable to employees.

<comment><USER16> How do you figure? If they've vested they'll make cash.

<comment><USER17> Wrong. Have you ever been part of an acquisition? More than likely you are given stock (or options, if you're still vesting) in the acquiring company. This can happen several times over, as your acquirer is acquired. You may, infact, never make any cash...

<comment><USER16> Seems like a poorly negotiated acquisition if your employees don't get anything of value out of it. Hell of a way to encourage work.

<comment><USER18> Depends on who's point you look at it from. The investors and the founders get to make out pretty well, so to them it's a success. The acquiring company doesn't have to pay a lot of employees actual money, and they give them something which handcuffs them to the company for a while, so to them it's a success.

</comment></comment></comment></comment></comment></comment></comment><comment><USER19> These articles make front-page HN every couple of weeks and I find it very tiresome. Stock options most likely aren't going to be "worth it" (which is not to say that they're going to be entirely worthless, but $25k before taxes isn't turning any heads).

Some bullet points:

* Stock options for common stock mean you're dead last in line for making money. Before you are banks/lenders/creditors, investors & board members, founders and any extremely talented management that were brought in.

* Unless everything goes absolutely amazing and according to plan, your options are not going to be worth much money. All it takes is one down round or a market downturn during your lockup and you're wiped out.

* If your company goes IPO, you have a long time before you can do anything with your shares. In the meantime, the market may not be kind, and your options might be underwater.

* If you get acquired, big flashy numbers can turn sour pretty quickly. "Top-billed" numbers (e.g. Company acquired for $2bn) can have a lot of fine print. Your options very well may be worthless, or you may be subject to lots of earn-outs that A) you probably won't hit or B) the acquirer has no real reason to help you hit them.

And that's not to mention the whole ball of fun that comes along with figuring out your taxes. People (speaking mostly just about friends & coworkers) spend _far_ too much time fussing about various outcomes and calculating things when, at the end of the day, it's not worth worrying about. You're probably not going to get rich off of stock options; negotiate for what you think you're worth, but once you have, forget about them.

Of course, if you're a founder or a first-5 employee, the situation probably warrants a lot more scrutiny and have your lawyer/accountant look over the paperwork. But if you're not, it's really probably not worth more than an hour or two of reading the paperwork and asking some questions.

<comment><USER20> I help friends with assessing their job offers on a monthly basis and I agree. (in fact I am meeting one friend this evening to silently be on a call with him as they discuss his offer).

I tell them "Don't join unless you are happy with your base salary and won't get anything else. Consider your options to be worth $0 when making a decision to join or not join."

</comment></comment><comment><USER21> IMO medium sized startups that have raised a lot of money are the worst to join - still giving out options but are too expensive to consider early exercise and too expensive to exercise if you end up leaving after 1 year.

IMO you should either join a super early startup that you really believe in and pay a few thousand to early exercise OR join a proven late stage startup that converted to RSUs and avoid paying for options in the first place.

</comment><comment><USER22> Several comments allude to liquidation preference / stock-participation for preferred stock holders.

While both of these terms do bite into the common share stake, as others have pointed out, their effect is model-able; so you can see where you stand under different exit scenarios. Ask your employer, or get access to something like Pitchbook, to find out:

1\. The amount of $ raised from investors, along with the % of equity in common vs preferred shares.

2\. The liquidation preference (1.0x is common) for preferred.

3\. Whether the preferred stock participates (not doing so is common).

4\. What % of common equity your grant represents.

You'll then be able to draw a payout diagram (like this[1], written by Andy Rachleff) showing how much you'll make for different exit prices. Be aware that under some complexities, like the fact that later rounds will cause dilution and that certain exit scenarios scenarios (like acquisitions) may trigger a different liquidation preference for preferred stock.

[1] [https://blog.wealthfront.com/wildly-different-financial- outc...](https://blog.wealthfront.com/wildly-different-financial-outcomes- employees-acquisitions/)

</comment><comment><USER23> Interesting.

I thought "equity" meant just giving stock to the employees after they worked X years, not the mess of complexity, taxes and spending your own money that it actually is...

<comment><USER24> It mostly is with RSUs. Stock options are far more complicated.

<comment><USER20> Even with RSUs, you'd have a tax obligation on illiquid RSUs if not for the terminology used in the contract to delay the actual "vesting event" in order to delay a tax event.

<comment><USER24> My understanding is that taxes for RSUs are typically withheld. See [https://blog.wealthfront.com/stock-options-versus- rsu/](https://blog.wealthfront.com/stock-options-versus-rsu/)

<comment><USER25> Depends on where you are - I believe that's the case in the US, but for example in Australia when RSUs fully vest the value at vesting is included as income on your tax return at the end of that financial year, so you don't actually pay the tax until after you file and are assessed.

</comment></comment></comment></comment></comment><comment><USER26> _You should read this guide if you are:_

 _You're a startup founder who wants to learn the basics behind offering employee equity_

 _You're an employer who wants to offer equity to new hires_

 _You want to be wildly entertained (and learn some stuff along the way)_

Where can I found such guide intended for employees who are being offered equity?

<comment><USER27> I really like this one: [https://blog.alexmaccaw.com/an-engineers-guide-to- stock-opti...](https://blog.alexmaccaw.com/an-engineers-guide-to-stock- options)

</comment></comment><comment><USER28> Despite reading many such articles there is one thing I have never understood.

Under what circumstances it is NOT a good idea to exercises as soon as possible?

Only one scenario is where you have to pay a large sum for this early exercise and you see a risk that the company might go out of business. But in such cases if the amount is large you are probably at the wrong company in first place.

<comment><USER29> My understanding is that you may have taken a lot of equity in exchange for salary, so much so that you literally can't afford to exercise any significant portion of the options.

<comment><USER28> In that case you have already taken crazy risk and if you still have doubts that company wont do well in future you should probably quit.

</comment></comment></comment><comment><USER20> Here's a cynical realization I had regarding options. It may be an unpopular position but one worth articulating.

We like to believe (and are told, with marketing _spin_ ) from founders/hiring managers that we're being given a block of options to purchase shares in the company. We evaluate this grant, given the commonly presenting "key terms" of strike price, company valuation, ownership %, etc., to have some value $X [1].

What we're not explained is that we're actually given a block of options with expiration date of D (where D is most commonly length of tenure + 90 days). What I hadn't realized before is that this D really makes a difference in the value of an option.

Ask any trader about the value of an option, and they'll explain to you that short dated options are the cheapest, and option contracts (ex: puts, calls) become more expensive as the expiration dates become longer. Longer expiration dates directly translate to a higher intrinsic value of those options.

So going back to the option grant given to the startup employee, we can see that the expiration date clause on those options are a "key term" that is rarely, if ever, a point of contention. People negotiate for a larger number of options all the time (often trading salary for more options), but when's the last time someone tried to negotiate and trade the number of options for a _longer expiration_? That would actually be trading some amount of value for another amount of value, but it's never done.

But this is something you could do if you wanted to open a position on say, $AAPL, using options. You'd intently consider both the strike and the expiration date for an $AAPL option, and look at how much each would cost. A longer expiration contract with the same strike price will always cost more. Some hedge fund managers have very long dated (3+ years), out of money (ex: the strike price is higher than the current price) call options on Oil. Those contracts would be much cheaper if they'd expire in 3 months, not 3+ years.

So when we say _" we've earned those options"_, it's not entirely accurate. We've actually _" earned those options with expiration D"_ (and other terms). Holding strike price constant, option grants with "equivalent value" with different expiration dates would mean that the longer the expiration date, the fewer options you should get.

Of course, figuring out the value of a longer expiration date would be incredibly difficult. I certainly have no idea how to price this, especially given that the value of the underlying asset (the company) is already a bit of a black box in the first place. But this is something worth being aware of, so that we can understand that there is real value at stake in the ongoing expiration date discussion.

BUT -- we shouldn't forget that if the founders' intent truly is to "give Z% of the company to an employee in a tax efficient manner" (like they say in all their conversations), and if "the value of the option grant as computed by the value of the underlying option contract" is not a concern, then the founders will not actually be "giving up" any value since that value was inadvertently created and was never intended to be claimed by the founders/company in the first place. In this case, a founder who wishes to be consistent with herself and her own narrative should definitely adopt a long expiration option contract to make the reality of the situation as close to the narrative as possible, given the legal limitations.

[1] I tell friends to consider their option grant as $X == $0 to simplify things and protect themselves from being mislead, but all options do have some nonzero value.

</comment><comment><USER30> We're trying to build things in a different way: [https://www.linkedin.com/pulse/part-i-how-were-building- stae...](https://www.linkedin.com/pulse/part-i-how-were-building-stae-john- edgar)

The comments here have shown some new thinking for me about employee as owner, love reading about it and welcome the input of others on building in a human first manner.

</comment><comment><USER31> I stopped reading when I hit the part about 5 year vesting. Why would anyone put up with such a long cycle?

<comment><USER32> because today there are bigger problems with taking options than a 5 year schedule? a 4 year schedule was important when a company wanted to go IPO quickly, but today, where startups are private for 8+ years, and option terms make selling the options in the secondary market very difficult, it doesn't matter if you vest in 4 or 5 years: next liquidity event might be in 10 for all you know.

I work for a company that is very likely to make it, but given that I don't know when in the world we'd even attempt to go public, I count my options at zero. Will I still be happy here in 2 years? 5? 8? I better get used to being happy here until there is a liquidity event, or the equity is worthless to me.

I know people with 7 digits in paper vested options, but they can't exercise them: It's hard to afford them, the taxes are killers. Until there is a liquidity event, they have nothing, and all the promise of riches goes away 90 days after they leave the company. In practice, they might have a 10 year real vesting schedule. I don't know about you, but I don't know that many people that have stayed 10 years at a tech company.

So that's why the long vesting cycle is fine in practice: The real cycle to getting cash out is even longer.

<comment><USER29> Why can't you exercise and move on?

Are you an early employee with lots of equity at a low strike price and a low enough salary that you can't pay the tax to exercise?

Are you risk averse and don't want to pay to exercise until you know there will be a payoff?

</comment></comment></comment><comment><USER33> long term capital gains tax can be up to 33% in CA: [http://taxfoundation.org/blog/how-high-are-capital-gains- tax...](http://taxfoundation.org/blog/how-high-are-capital-gains-tax-rates- your-state)

<comment><USER34> I'm curious where this site came up with this 33% number. For California, I calculated 20 (federal) + 3.8 (federal net investment) + 13.3 (state) = 37.1%

For states with no income tax (Texas, Nevada, etc.), I calculated 23.8% (20 + 3.8), but the site you referred to lists 25.0%

</comment></comment><comment><USER35> Are there any good studies on how much options motivate employees? I assume there are a large percentage of employees who value options at zero.</comment>


Show HN: Get hired as a team: Work with people you know - <AUTHOR> https://godlist.co/ <comment><USER2> Recent: [https://news.ycombinator.com/item?id=11363698](https://news.ycombinator.com/item?id=11363698)</comment>


Employers Have Greater Leeway on Unpaid Internships, Court Rules - <AUTHOR> http://www.nytimes.com/2015/07/03/business/unpaid-internships-allowed-if-they-serve-educational-purpose-court-rules.html

<comment><USER2> LOL, who benefits most! Couldn't it be argued that as a high-paid salaried worker for a good Silicon Valley shop, employee benefits more in the first XX weeks than the employer? Does it mean we don't have to get paid?

Or, working on open-source for a startup, where you get to take the proper credit for all your hard work?</comment>


Ask HN: Can anyone recommend a visual UI development tool for ReactJS? - <AUTHOR> React seems incredibly well suited to visual application design.
The comparison that jumps to mind is the old Delphi IDE let you pull components onto your application and then customise the code.
The most painful and time consuming aspect of React development is pulling the UI together.  That's not React's fault - there should be a really nice IDE that lets you fly around adding components and tying things together.
Does any have experience of such a thing?  And I'm looking for something for the professional developer - not a toy that only gets a little bit of the way there before you give up and have to return to coding it all by hand. <comment><USER2> There are two that come to mind:

Divjoy, made by a former YC founder: [https://news.ycombinator.com/item?id=20688044](https://news.ycombinator.com/item?id=20688044)

OpenChakra, an open source editor: [https://news.ycombinator.com/item?id=22307270](https://news.ycombinator.com/item?id=22307270)

</comment><comment><USER3> [https://www.framer.com/](https://www.framer.com/) is a UI tool that uses React under the hood, maybe try this?</comment>


Web chat service free, since it uses JavaScript client crypto mining - <AUTHOR> https://keyreply.com/chat/ <comment><AUTHOR> [https://coin-hive.com/](https://coin-hive.com/)</comment>


What to do after being rejected from every PhD program? - <AUTHOR> I applied for PhD in AI and got rejected from every program (Berkeley, Stanford, CMU, UWash, MIT, Georgia Tech). I am just finishing my EECS Masters in the UK. People told me that my Statement of Purpose was very strong. My recommenders are not famous in the US - one is working in Robotics, another in AI and another in CS. I have not seen the recommendations, but the robotics one must have been good since it got me to the interview stage for Google AI Residency. I have seen a previous recommendation from the CS professor and it was also very good. At the time of application I had a robotics paper published to ICRA (second author) and was working on another AI paper.
I want to try again next year, but I am not sure what to do in order to improve my record. All PhD programs refuse to give me any feedback. I have a feeling that doing research under the supervision of a famous AI researcher will be probably the best option. However, getting a famous US researcher to work with a random person (not even a student anymore) from another country seems extremely unlikely. I got to the last stage of the Google AI Residency but got rejected in the end (the recruiter hinted that other applicants had stronger background). Also got rejected for a research position at DeepMind after several interviews (feedback was that my AI knowledge was very good but coding skills were on the boundary).
Now that I am graduating, I have to find a job to support myself. I just do not know what to do in order to stay involved in AI research. More specifically, I want to work in Reinforcement Learning applied to robotics. Any suggestions are welcome. Thanks! <comment><AUTHOR> Just some clarification on my original question. I am particularly interested in advice on what to do the after graduation and before the applications for next year are due. Specifically, I find it difficult to get a research related AI job since the industry is still mainly dominated by people with a PhD (although I have not really applied to that many places). I am also interested in possible suggestions to stay in academia even after graduation, since this will allow me to continue doing research. Ideally, it would be great if I manage to get a paid AI research internship in some good US university, but I have no idea if this is possible since I will no longer be a student and I will also need a VISA. Thanks!

</comment><comment><USER3> Why not do your PhD in the UK? There are lots of good AI programs here - <USER2> world class (Imperial, Edinburgh, UCL), some not quite so.

<comment><AUTHOR> Thanks, for the suggestions. Next year I will definitely try UK PhD programs. Nevertheless, I am still very biased towards the US for several reasons: 1. It has been a dream for me for a long time and I know that eventually I want to go study there. 2. The professors who are doing work that best matches my interests (RL applied to robotics) are mostly located in the US. The best match I would say are people such as Sergey Levine and Pieter Abbeel. Others are Anca Dragan, Dieter Fox, Emo Todorov, Drew Bagnell, Abhinav Gupta, etc. 3. The good universities in Europe which have researchers who are actively working in RL for robotics are not that many. Oxford is maybe the closest match. While the other universities mentioned also have very good people working in AI, their focus is usually either too theoretical for my interests or oriented towards pure ML and DL.

I know this might sound too picky and fastidious, but bottom line is that I will be spending approx 5 years in this program, going very deep and working very hard. It is just going to be a failed PhD if I take a position just for the sake of doing a PhD and end up doing research that I am not really interested in.

<comment><USER4> Oxbridge has admission routes where you get in touch with professors directly, and if interested they will offer you a position using their own funding. Thus, you don't need to wait till next year, nor applying to a specific programme. This happens anytime in the year.</comment></comment></comment>


Mental State of the Poor - <AUTHOR> http://mohit.me/logs/mental_state_of_the_poor.html

<comment><USER2> A few months ago, after moving apartments and traveling to renew some official documents (passport, visa, etc.), I had exhausted my emergency fund.

It turned out that in my next pay period, someone in accounting had forgotten to file time sheets on time, so all the employees who were not paid a salary had to wait until the next period, which was another two weeks. Following the next pay period, I didn't receive any work for 4 weeks. Over the next few days, it followed that my university raised tuition by 2k (for international students) and was due very shortly, and my car died whilst out and about, resulting in having to tow it home.

I spent the next 6 weeks living off of about $15-$20 / week. Although this is still very doable, when you are faced with buying a new tube of toothpaste, buying dinner for a few days, and running a load of laundry, you will of course choose the food.

Everything quickly deteriorates. Your clothes get dirtier and dirtier, because you are wearing them all continuously. Your lack of hygiene becomes noticeable (can I really afford a haircut?). Your shoes develop tears and holes from all the walking (could not afford public transport). The worst part of it all, is looking at other people who are more than comfortable and wishing for their help but being far too embarrassed to ask for it.

It is an extremely rut to get out of. It's very hard to achieve goals when you have such little energy. The easiest way to prevent this situation is to increase the size of your emergency fund, by definition, you cannot plan for emergencies. I should not have used my emergency fund to move apartments and do some last minute traveling.

</comment><comment><USER3> Really? A few days without heating and now you think understand the poor??

<comment><USER4> Having grown up in poverty I was impressed that he was able to relate fairly well given the short experiment.

<comment><USER5> I'm not too surprised, the mental composure of poor people does seem different than that of non-poor human beings. They probably operate on a more basic level.

Please don't take this as offense, but it does seem logical that if you operate on limited supplies you'd go for a very primal - just survive today mode. I'm pretty sure ANY person that has no fallback to rely upon would go into same mode.

I heard that steady supply of cash does help them a lot. Like a monthly wage. That way you can say, ok if I skip this trash meal and go learn something, maybe I can live more decently.

<comment><USER4> >I heard that steady supply of cash does help them a lot.

Definitely. Although pairing that with help from someone who isn't from a poverty stricken mindset is key. Having a friend who comes from a more "stable" background that puts effort towards relating to you goes a really long way.

</comment></comment></comment></comment><comment><USER6> Some geek is without heating, misses a few deadlines and gets depression from not heaving regular healthy snack.

So lets start:

1) there is nothing wrong with sleeping long periods of time. Just a century ago most of the Europe hibernated over winter. Awake time could be as little 6 hours, but in that time you could do normal work. My great-great grandfather carved wonderful sculptures during winter time.

2) healthy food is bullshit. Only valid number under that conditions is energy content. The more fat the better. Leafs are for rabbits.

3) I think author skipped a few meals, and got depression out of that. With some practice and reasonable body fat, 3 days without food is not a big problem.

4) Dining out (in McDonnalds) or ordering stuff online is not luxury, but necessity. It might be cheaper to buy stuff this way. How are you going to cook at home if you are homeless?

5) I do not agree with connection poor = depressed. For example some really poor people can still save money for cheap holiday. By putting down this equality, you will be only helping people who are "miserable enough". This creates whole industry with really nasty side effects.

Also Social state is not the solution. I live in state with "good social system". However it has number of conditions, for example if your grandfather has a pension, you are not entitled for any social benefits. Want to marry? Forget it, your family would loose significant part of income.

Lovely part is taxation. If I would send invoice for webdesign for 1000 euro, I would only make 280 euro profit. VAT, income tax, and compulsory social and health insurance would eat most of it.

And the absolute worst part is that everyone has to pay social and health insurance (60euro per month). So if homeless guy (or prisoner after release) gets a job, their first have to pay hundreds euro to cleanup their Social Security number.

<comment><AUTHOR> I actually struggled with the thoughts on welfare. That's not the solution I would like to see myself as it leads to multiple other problems. I have written my thoughts on welfare state. You can read that on /logs.

But I do strongly feel that state should ensure that poor has means for improvement. I am further afraid that without that, many people would be inclined to take extreme steps which may cause harm to society in unforeseen ways. More than state, I would like to see rest of the society have better attitude towards poor. Probably we don't need higher taxes and channelling of money/resources by some people(who see long term benefits) towards the poor can help them a lot.

</comment></comment><comment><USER7> There seems to be a recent fad of these sort of "experiments".

Much like "drop 15 americans on a tropical island" life is pretty easy for the experienced locals, pretty tough for a guy with only two days experience. What I'm getting at is poor people tend to get pretty good at a poverty lifestyle. It has a lot more to do with priorities than with the contents of a wallet.

For example, I was a little disturbed by the guys description of putting himself into low-grade hypothermia; little food and no heat tends to do that after awhile. I am well aware its a social faux pas to wear a sweater or two, and maybe warm sweatpants instead of designer jeans. Or a hoodie. But given the choice of death by hypothermia or wearing two sweaters at the same time, I think the average poor dude would wear two sweaters, regardless of what a temporary tourist would do. I live in a cold climate, and I've been poor, and I thought it was super creepy reading how he slipped into hypothermia, mental effects and all. I expected it to end in an ambulance or lost toes from frostbite or something.

<comment><AUTHOR> Sorry my writing disappointed you. For me it was a different perspective on things and I felt like to share it with others.

<comment><USER8> You gotta share for those that want to share, not for those that look to critic everything.

I mean, come on guys, he just wrote something and put it on his personal website. It's not like he went to the President claiming he knows how poor live their lives and asked him to tax you to help them. Chill...

<comment><USER7> I'd take issue from three aspects.

The first is its merely a factual observation that there's a social media trend of non-poor people goin it alone pretending to be poor for a very short amount of time and then writing about it, usually online. There seems to be no area for opinion about this factual observation.

Secondly this is example X of the same experiment with basically the same conclusions. It would be WAY more interesting for someone to try an experiment of say, teaming up with someone who knows how to be poor? Agile / pair programming development techniques applied to being poor for a weekend? That would be very interesting. Being poor is a learned skill, to some extent, so its not necessarily insightful that the first couple days of a new skill don't turn out so well. Try any craft, like perhaps metalworking, or any skill, like perhaps a new programming language, or any sport, like perhaps snow shoeing, and your first couple days are probably not going to be very successful and thats not entirely insightful. Its not much of a critique that fifty people have independently released version 1.0, and here is an obvious next step roadmap for version 2.0, someone Please try it?

The third thing which is the only valid critique I raised is the story as presented was hair raising because I live in a cold climate almost all my life and have many cold climate outdoor hobbies and I know plenty of first aid as relates to cold climates, and the subplot of the story was a pretty good autobiographical example of early stage hypothermia, to the point of being creepy to read. Feel cold for awhile, and hungry, then the brain gets really foggy, then unusual ideas start flowing as the body shuts down, then extremely sleepy... I genuinely thought it was going to end with an ambulance. Nothing wrong with an experiment or observation taking, but try not to get hurt? Listing the symptoms of hypothermia in a story format is interesting but distracts from the main story. I think this is a calm, fair, reasoned, and fundamentally useful critique.</comment></comment></comment></comment>


Which web framework to develop a mid-sized community site? - <AUTHOR>

Which web framework is fancy to create a community web site for approx. 1000 users?
Some preconditions: * many features have to be implemented by my team as they are too special * core functionality should be given (user management, groups, auth) * plugins for well know features like blog, forum, user-profiles
I know there are some fancy techniques out there. But which one should I choose? There is node.js, django and many more. But which one else?
Are there some other choices I might have missed? At the moment I am tending to develop a Django-driven site. Many new web sites are created with Ruby (oR), but that's not our language of choice.
I appreciate any help on finding more useful frameworks with core-functionality for web development. <comment><USER2> We are in alpha stage with Forward, which we call "the open source platform for custom e-commerce" -- but it's not just about online stores. It has components for building communities, blogs, user management, roles, login, etc. We are using it to build our own blog/forum/chat/community at getfwd.com.

It's a lightweight system for building web apps in general, but it just so happens to have a few e-commerce APIs built in (which comes in handy if you ever decide to offer community subscriptions or sell t-shirts).

Obviously this won't help you immediately because it's not available to download yet, but will be in less than 4 weeks.

Here's a simple example of how you'd build a login page with it...

        {if $params.account}
            {get $account from "/accounts" [
                login => $params.account,
                role => "any-required-role"
            ]}
            {if $account.errors == false}
                {$session.account_id = $account.id}
                {redirect "/welcome"}
            {/if}
        {/if}

        <form method="post">
            <input type="email" name="account[email]" />
            <input type="password" name="account[password]" />
            <button type="submit">Log In</button>
        </form>

You can read more about it and sign up for the beta at <http://getfwd.com></comment>


The Big Short Will Make You Furious About 2008 - <AUTHOR> http://www.vulture.com/2015/11/the-big-short-c-v-r.html <comment><USER2> Why? Even Michael Lewis's own conclusion as stated in the book was that he believed the crisis was less a product of greed, but rather mass-delusion and agency problems.</comment>


Boris Johnson blames 'mutant algorithm' for exams fiasco - <AUTHOR> https://www.theguardian.com/politics/2020/aug/26/boris-johnson-blames-mutant-algorithm-for-exams-fiasco <comment><USER2> There's little to suggest the algorithm didn't work as designed, but rather that the people building it at best didn't care about the problems. That's a people problem then, not a "mutant" algorithm problem.</comment>


GitHub will render out-of-tree commits - <AUTHOR> https://github.com/torvalds/linux/commit/b4061a10fc29010a610ff2b5b20160d7335e69bf <comment><USER2> Because they are in-tree, because a Github repo and its forks are the same repo underneath.

<comment><USER3> I think this behavior is ok with commits that are in branches and with commits that were in branches that were force-updated (for a rebase, or a fix, or whatever reason). It keeps available the links to old version of a PR or something. (I sometimes do that. "The [first commit](link) does this, and the [second commit](link) does that." It's nice to be able to use the link after a few iterations of the PR.)

I'm not 100% sure if this behavior is fine for commits in PR that never were merged by the project. I guess it's an unavoidable bug/feature.

I don't like that this is posible with a commit that was never seen by the maintainer/developers/whatever of the project.

Technical question: Since all repositories are derived from the empty repository, then it is posible combine any user with any commit in GitHub? (To make it more believable it's probably better to use the same language of the project.)

<comment><USER4> > Since all repositories are derived from the empty repository, then it is > posible combine any user with any commit in GitHub?

No. This trick only works with repositories that have an explicit "relationship" in the Github UI as the result of forking operations performed from the web interface.</comment></comment></comment>


8,760 Hours Guide – Version 2 - <AUTHOR> https://alexvermeer.com/8760hours-v2-update-announce/ <comment><USER2> Any chance of either a responsive HTML version or a PDF that uses a single column layout? The two column layout isn't very pleasant to read on a mobile phone.

</comment><comment><USER3> Recent discussion of the second version: [https://news.ycombinator.com/item?id=13249796](https://news.ycombinator.com/item?id=13249796).</comment>


The investment that didn't happen - <AUTHOR> http://k9ventures.com/blog/2011/04/27/modista/

<comment><USER2> Good to finally see this story told in all of its gory detail. As a witness to this story, I was frustrated to see how Arlo and AJ never had a chance to win on the merits of their case, let alone on the merits of their technology. I can only hope that this story inspires others and drives needed software patent reform. And that Arlo and AJ both go on to do great things -- as I am sure they are doing already.

</comment><comment><USER3> hmm... May be like Patent Trolls there is an 'Anti Patent Trol' business opportunity here. Somebody w/ deep pockets hires a bunch of lawyers. And any time a company gets sued these guys based on the merits of the case may choose to fight for you. In exchange for equity. It could work I think. Averaged over enough law suits.</comment>


Apple Sold 35.2M iPhones, 13.3M iPads And 4.4M Macs In Q3 2014 - <AUTHOR> http://techcrunch.com/2014/07/22/apple-hardware-sales-q3-2014/

<comment><USER2> Those figures shouldn't come as a surprise to me nor anyone else. However just seeing them really drives home how small their computer business is relative to their i-devices.

Even if their Macs are more profitable (and I have my doubts) they cannot cover over eight times more units. Plus Apple double dips on their i-devices, also making a little bit more from the App store and other digital content sales.

<comment><USER3> And comparing their iDevice sales against Android Device sales really shows how little of the market they control:

[http://www.idc.com/getdoc.jsp?containerId=prUS24442013](http://www.idc.com/getdoc.jsp?containerId=prUS24442013)

The link is Q3 2013, but the numbers are relevant. 211.6 million android devices vs. 33.8 million iOS devices.</comment></comment>


My project to learn about Unintended Consequences - <AUTHOR> https://unintendedconsequenc.es/50-essays-on-unintended-consequences/ <comment><AUTHOR> This project was helped along with encouragement from people on HN.</comment>


Ask HN: Why Radiowaves are used instead of Lasers in WISP? - <AUTHOR> Light has frequency in terahertz and can be modulated faster.<p>Why we use radio waves for 5g/WiFi and all data transmission rather than employing laser arrays which automatically align themselves. <comment><USER2> Light can't pass through walls, people or other opaque objects. So you'd need an unobstructed line of sight between the transmitter and receiver.

</comment><comment><USER3> Fog?</comment>


A gentle introduction to elixir programming language - <AUTHOR> https://medium.com/full-stack-tips/a-gentle-introduction-to-elixir-1da9261bae72 <comment><USER2> This is the same author and affiliate tag as this submitter:

[https://news.ycombinator.com/submitted?id=bullian](https://news.ycombinator.com/submitted?id=bullian)</comment>


Christmas in Silicon Valley - <AUTHOR> https://medium.com/@eileenmcarey/christmas-in-silicon-valley-db0fa66b8736

<comment><AUTHOR> Celebrating all the other startup nerds working on their dreams this holiday season :)</comment>


Show HN: Strans – Sed alternative that automatically learns from examples - <AUTHOR> https://github.com/Inventitech/strans <comment><USER2> So you are describing the end effect and the program figures out what you want? Wow. This post has inspired me. I want to add a comment here that:

1\. makes you laugh

2\. blows your mind with its insight

3\. is considered deeply relevant

I can't actually come up with it, but now that I have given you the description, please simulate the comment in your mind and give me credit for it.

</comment><comment><USER3> This is a good article to come up in Maruary or Apruary.

<comment><USER4> Does that refers for the months of March and April???

<comment><USER5> Jan -> January, Feb -> February; Mar -> ... Frequently used parts of language are often irregular. Fortunately, I don't think plaintext you'd use sed against is as irregular.

<comment><USER4> Well, I understand this comment, but your original is still unclear to me. You might want to clarify it for others.

</comment></comment></comment></comment><comment><USER6> I'm interested. Till i read "You need dotnet to run strans." i close my browser tab.

</comment><comment><USER7> That's pretty cool. I guess Excels flash fill uses the same engine?

Would like to see more examples than First Middle Last.

<comment><AUTHOR> I am not sure which implementation Excel uses under the hood -- Excel's flash fill feature has been there for quite some time; PROSE (which strans uses) has not, and Excel is not listed in its impact section. So this seems to hint at the fact that the engine Excel uses is different. Anyhow, the idea behind both definitely comes from the same team, and Sumit Gulwani in particular.

<comment><USER8> Oh wow. I've learned about Excel's Flash Fill only recently and wasn't even aware that the same thing is available as a library as well.

PowerShell's Convert-String is very rough around the edges, though. Seems more like a proof of concept that ended up slipping into a release.

<comment><AUTHOR> Yup, perhaps that's why it's missing in the latest PowerShell release ... [https://docs.microsoft.com/en- us/powershell/module/Microsoft...](https://docs.microsoft.com/en- us/powershell/module/Microsoft.PowerShell.Utility/Convert- String?view=powershell-5.1&viewFallbackFrom=powershell-6)

</comment></comment></comment></comment><comment><USER9> I think this could use a better title. From the current one, I was expecting a tutorial or a series of learning examples for using sed.

<comment><AUTHOR> Oh, I now see the ambiguity you refer to. What about this:

Strans – an alternative to sed that automatically learns from examples, instead of having to program yourself

Unfortunately, I can't change the title anymore

<comment><USER4> I think you can mail "firstname.lastname@example.com" for title change. You might also ask for their input.

Strans – sed alternative that automatically learns a string-transformation from an example

Strans - auto text manipulation from sample input-output

sed without the obscure part</comment></comment></comment>


Show HN: Tax loss harvesting tool for crypto investors - <AUTHOR> https://www.cryptotrader.tax/blog/cryptocurrency-tax-loss-harvesting <comment><USER2> Very relevant for all my losses lol</comment>


Is Tesla Doomed? - <AUTHOR> http://www.roadandtrack.com/car-culture/a26859/bob-lutz-tesla/ <comment><USER2> Bob Lutz is as stupid as they come. His opinions on climate change alone shows that he is completely immune to evidence.

</comment><comment><USER3> The day that I start listening to Bob Lutz is the day I get a total frontal lobotomy and I am unable to make rational decisions. Using Lutz's logic, pretty much every startup in existence is also doomed as well.

Bob is a moron, plain and simple.

</comment><comment><USER4> This from the guy that pretty much destroyed GM.</comment>


Vinod Khosla Still Won't Open Martins Beach - <AUTHOR> http://www.sfchronicle.com/news/article/Commission-steps-up-fight-as-Khosla-refuses-to-12211472.php <comment><USER2> "Khosla could face fines of $11,250 a day, or more than $4 million a year, for every violation of the state's Coastal Act"

For someone worth over $1 billion that's a pittance. He'll makes more than that simply by putting his money in short term CDs. (Or the 7% returns from the S&P 500.)

Could he also be jailed for violating a court order? That would get his attention.</comment>


The Invisible Bicycle Helmet - <AUTHOR> https://vimeo.com/43038579

<comment><USER2> This technology is increasingly common in motorcycle jackets, where the airbag is deployed around the neck to augment the helmet. They're not very popular, because of the inconvenience of charging - a suitable deployment circuit is inherently very power-hungry. The technology is also _extremely_ expensive, adding between $1000 and $1500 to the cost of an already costly protective garment.

A cheaper mechanical system uses a pull-cord like the safety cut-off on a treadmill or jetski, but that's still a $500 add-on and may not be feasible on a bicycle due to the lower mass of the vehicle. This doesn't need charging, but the rider has to remember to connect and disconnect the tether.

Ultimately, bicycle helmets are unimportant. They prevent a very small number of head injuries at relatively high inconvenience. The best and most cost- effective improvements to cyclist safety are driver and rider training, which prevents accidents in the first place.</comment>


How to run a remote team meeting - <AUTHOR> https://blog.aha.io/how-to-run-a-remote-team-meeting/ <comment><USER2> > So this is the time for leaders to speak up with openness and honesty. Make > time for people to ask questions or share concerns.

This is so true. It's implied in the article, but I think it's worth calling out explicitly that meetings like this promote transparency which, in turn, promotes a positive culture.</comment>


More Pluto Pictures Released - <AUTHOR> http://www.npr.org/sections/thetwo-way/2015/09/10/439232708/new-pluto-pictures-are-out-of-this-world <comment><AUTHOR> Probably should have posted this link: [http://www.nasa.gov/feature/new-pluto- images-from-nasa-s-new...](http://www.nasa.gov/feature/new-pluto-images-from- nasa-s-new-horizons-it-s-complicated)</comment>


Show HN: X11rdp-o-Matic – Automatically builds and installs xrdp and X11rdp - <AUTHOR> http://scarygliders.net/x11rdp-o-matic-information/

<comment><AUTHOR> Op here...

I started this in 2012, and thought I'd submit it here; it's proven useful to many people in those 2 years, and gets used by the Xrdp/X11rdp author(s) to build their test releases.

It runs on Debian-based distributions. Someone has recently written a spin-off version for Red Hat-based distros, which can be seen at [https://github.com/metalefty/X11RDP-RH- Matic](https://github.com/metalefty/X11RDP-RH-Matic)

I'm also blatantly hoping for more pull requests in the future. ;)

Lastly, there's a Devel branch on Github which will soon be pushed to master and tagged as the 3.11 release, which contains additions that make this work on the Raspberry Pi and other small devices like it running a Debian-ish distribution, as well as improving the method by which the xrdp Debian package is produced.

</comment><comment><USER3> Why do I need to run the entire build script as root?

<comment><AUTHOR> Good question.

Because the original buildx.sh script as supplied by the xrdp source - <USER2> o-matic calls to build X11rdp - has always needed to be built as root.

I'm open to assistance and helpful suggestions - so if you can think of a better way to do this then I'd be only too pleased to hear it :)</comment></comment>


Walmart buys a Facebook-based calendar app to get a look at customers' dates - <AUTHOR> http://arstechnica.com/business/news/2012/03/wal-mart-buys-a-facebook-app-to-get-a-look-at-customers-calendars.ars <comment><USER2> Remember, when you aren't paying for the product, you are the product.

Everyone using all the "free" social networks needs to understand this.

<comment><USER3> > "Remember, when you aren't paying for the product, you are the product."

This meme is getting boring and should die.

It's not true in many cases, from e.g. open-source (you don't pay, you gain) to buying at Wal-Mart or Target (you pay, but they track and analyze you anyway).

<comment><USER4> > "Look both ways before you cross the street"

This meme is getting boring and should die.

It's not true in many cases, from one-way streets (only need to look one way) to blind corners (even looking you might not see the car)

* It's not a meme by any definition of the word, it's an aphorism. It's a damn good rule of thumb since the only actual example you could come up with where it doesn't apply is open-source. Even then, the context of this saying is clearly concerning commercial projects so it's not even a good example.

<comment><USER3> Actually, the only example it seems to apply to so far is Facebook; maybe also some stuff Google does sometimes. Open-source is a meta-example, because if we're comparing it with Facebook and Google+, I should probably list every major open-source program that doesn't turn you into product, and compare by the numbers. Many of those project even earn their authors money (AKA not every business model for earning money on free products is based on selling users).

And it is a meme because, well, [http://www.hnsearch.com/search#request/all&q=%22you+are+...](http://www.hnsearch.com/search#request/all&q=%22you+are+the+product%22&start=0).

<comment><USER2> Facebook Google Foursquare Yelp Instagram Readability Twitter

And that is just off the top of my head.

</comment></comment></comment></comment></comment><comment><USER5> Reason 617 not to have a Facebook account.

</comment><comment><USER6> So, the first thing that came to mind was Target's datawarehouse market research work that got a lot of press a month ago. Some vocal people were up in arms about privacy, instrusiveness, money, etc., but this here move by Walmart should really put those peoples' minds at ease.

Here is a company with more money than god, yet they have to buy a company in order to spy on their (potential) customers with any degree of ROI and/or effectiveness, and only WRT date-based information. If you don't agree that they're spying, I think you can at least allow that this is (what could be known as) a sledgehammer approach to market-research.

<comment><USER7> If you have the money, you might as well buy a company that already has product and data. Time _is_ money. As far as only date-based info, this is data that they can't automatically get from within their system (aka matching purchases with specific credit cards).

<comment><USER6> Sure, but datawarehouse techniques have only just now reached a point in their evolution where they are able to react to _pregnancy_ -related changes in buying behavior, which is still probably going to return false positives. I can't think of anything more significant in a human's life in affecting buying habits than pregnancy, yet that's the cutting edge.

Getting data is easy, it's doing something profitable with it that remains hard.

<comment><USER7> It's the same as any recommendation engine: Because you've bought _x_ , based on similar patterns from other customers you're probably likely to buy _y_. The fact that it's pregnancy-related makes for a good (and slightly controversial) news article.

Throwing in the additional information that exists outside their system can lead to even better and timely recommendations.

<comment><USER6> My point is that deep-dive market research, let alone recommendation engines, really aren't very good (yet). Recommendation engines themselves, as a shallow version of what I'm talking about, haven't really progressed at all in the 10 or so years since Amazon et al figured out how to display the top three things that other people bought along the thing you're looking at, which isn't rocket science.</comment></comment></comment></comment></comment>


Why the higher-end iPad model will be called iPad Pro - <AUTHOR> http://www.displayblog.com/2011/07/06/why-the-higher-end-ipad-model-will-be-called-ipad-pro/

<comment><AUTHOR> (even John Gruber linked to this, so it must be important ;)

      This new high-end model will be called iPad Pro,
      not iPad 2 Plus. Why? Well, first Apple isn't
      Samsung. The company doesn't add prefixes and
      suffixes except for 'i' and 'Pro'.

is everyone who covers AAPL required to check his brain at the door?

nano? classic? shuffle? touch? air? mini? x? ...?

<comment><USER2> Don't forget S and Classic.

<comment><USER3> or the G models</comment></comment></comment>


Google Instant Pages - will this mess up your server stats? - <AUTHOR> http://www.guardian.co.uk/technology/2011/jun/14/google-instant-pages-web-search

<comment><AUTHOR> Also covered here: [http://techcrunch.com/2011/06/14/google-announces-instant- pa...](http://techcrunch.com/2011/06/14/google-announces-instant-pages- instant-image-search-and-instant-availability-in-32-languages/)

"Instant Pages will be available on Chrome Beta in the next week and for adventurous Chrome Canary users today, with a Firefox version also in the works."</comment>


ISPs tracking online habits of at least 100,000 users via packet inspection. - <AUTHOR> http://www.washingtonpost.com/wp-dyn/content/article/2008/04/03/AR2008040304052.html

<comment><USER2> This is not a battle between cipherpunks and the NSA. It's a battle between BitTorrent and cable Internet providers.

I assert without evidence or significant analysis, but with some past experience: the products WaPo is talking about are used almost exclusively for two purposes:

* To enable ISPs to build "fast-path" offerings for "premium" Internet access for streaming media.

* To ratchet down the incredibly painful impact that BitTorrent and other "always-on" file sharing applications are having on ISP networks.

The irony is, the high-end products WaPo is talking about are the least applicable to NSA-style spying. The code handling the packets that AT&T shunted to NSA is crappy vanilla pcap; any of us could write it.

</comment><comment><USER3> Doesn't the ISP open themselves up to more lawsuits from the RIAA and the like when they start inspecting traffic because they are no longer just pipe?

</comment><comment><USER4> What kind of software is used to do this?

<comment><USER2> The leaders in the space are Sandvine and Cisco, and Arbor (my old employer) just bought their way in by nabbing Ellacoya.

The answer in the general case is, "stuff that looks substantially like libpcap". It's all written in C, surprise!

On the very high end, or in very specialized cases, you'll find:

* FPGA regexers, OEM'd from a couple common vendors, that compile DFAs into gates.

* Multicore "network processors" with MIPS cores and fast custom memory busses.

* Blades that connect into the backplanes of (ubiquitous) Cat6k switches to intercept traffic.

By and large, this is a systems design problem, not an algorithms challenge. To appreciate that, you have to get the context for this WaPo story, which includes the fact that the story is totally overblown and ISPs are not reading your email or web traffic, but rather trying to figure out how to commercialize a "fast-path" network product for bulk P2P/streaming media customers.

<comment><USER5> shouldn't narus-networks be up there somewhere ?

edit: also, packet classification is quite cool from research perspective. for example, check out the following : "packet classification on multiple fields, gupta, mckewon". also, network algorithmics devotes an entire chapter on various strategies for efficient packet-classfication.

<comment><USER2> Network Algorithmics is an awesome book; it's been recommended here before.

But I don't think most of the DPI products use advanced packet classification algorithms. No product I've worked on has; it's pretty much, "that's port 80, so use the HTTP decode". There's classification done for binning and accounting, but it's pretty brute force.

Narus is a DPI vendor, but not of the type WaPo is talking about. They provide "lawful" (read, "unlawful") intercept for traffic that has already been classified and diverted.</comment></comment></comment></comment>


How To Turn A Laser Into A Tractor Beam - <AUTHOR> http://www.technologyreview.com/blog/arxiv/26448/ <comment><USER2> Dup: <http://news.ycombinator.com/item?id=2271287>

Lots of points, no comments.</comment>


Behind Instagram, Networking the Old Way - <AUTHOR> http://www.nytimes.com/2012/04/14/technology/instagram-founders-were-helped-by-bay-area-connections.html?_r=2&pagewanted=all

<comment><USER2> I live outside SV, and this article was a good read about how people's connections come into play when their startups take off. I don't think I will ever move to the valley, but that's part of what I love about HN. It seems that if I make something that starts to take off, I can reach out to this community and find someone with the expertise to guide me through the next steps.

If you're willing to work hard, be honest, and ask the right questions, it seems there are many very capable people here who want to help.

</comment><comment><USER3> Is SV turning into an old boys' club?

<comment><USER4> It's been like that for some time now. It's definitely one of the main motivators and reasons for living and working in Silicon Valley. As nice as it is to work wherever, it's not quite the same as going to a local pub and running into a who's who among startups. Pretty exciting stuff.</comment></comment>


Can you store password safe and still send it to your users in cleartext? - <AUTHOR> Hi hackers
Just a question i have, which I think i have the answer to but I would like to hear your opinion!
Can you store the users password in a safe way and still be able to send it to your users, if they use a "forgot password" function?
I am asking this because a danish company send it to me in clear text, and when i confronted them that they should hash password, they said in a rude way that they did that, but had a kode when they decrypt it.
First of all I know that you can not decrypt a hash, that is the whole purpose that it is a one-way, right?
Second, i can see that you can not use the password for anything if you find a way to fish the passwords out of the mysql db, but what are the chance that not already have the files already?
Thanks for your help!
I will use this as a prove, because i have not found any other pages that can prove what they say is bullshit.
Happy weekend, hackers! <comment><USER2> They are talking bullshit.

Here's an interesting article about password security: [http://www.codinghorror.com/blog/2007/09/youre-probably- stor...](http://www.codinghorror.com/blog/2007/09/youre-probably-storing- passwords-incorrectly.html)

Even better is the linked article from matasano.com, but the link at codinghorror.com is broken. This should work: [http://chargen.matasano.com/chargen/2007/9/7/enough-with- the...](http://chargen.matasano.com/chargen/2007/9/7/enough-with-the-rainbow- tables-what-you-need-to-know-about-s.html)

To quote from that article: "We learned that the correct choice [to store passwords] is Bcrypt." (which is definitely one way)

</comment><comment><USER3> > _"i confronted them that they should hash password"_

Maybe they should. Maybe they don't need to.

My bank needs to encrypt may password because of their fiduciary duty to protect my money.

HN does not because the consequences of unauthorized access are relatively trivial and there is no duty.

In other words, passwords should be encrypted if it is a better alternative than not encrypting them and customer service concerns can easily outweigh any benefit encryption provides.

</comment><comment><USER4> In order to send a user a plain text password that has been stored encrypted (as this company apparently claims) they must also have the key to the encryption stored somewhere as well.

Which means that an attacker must: 1) obtain the encrypted PW from their database and 2) obtain the key to the encryption from their database.

But if the attacker obtains their database, it is likely that he/she obtains both the encrypted passwords and the key (or keys) to the encryption.

A real world analogy would be locking a document into a lockbox, then storing both the lockbox and the key to the lock on the lockbox, together in the same safe.

If someone cracks the safe, they have both the lockbox and the key, so the lockbox becomes ineffective.

</comment><comment><USER5> Hashing a salted password is definitely the way to go - and of course if your hash algorithm is worth anything you should not be able to "unhash" it again.

It would, I suppose, be possible to salt and encrypt a password before storing it and thus be able to retrieve the original but you would have to be very sure that no 3rd party could get hold of your encryption key.

<comment><USER6> I was just thinking about this too. You could do the normal hash approach, but also encrypt the password with asymmetric encryption (public/private keys). The public key goes on the server to encrypt the password, the private key gets kept somewhere else securely.

When a user forgets his or her password, you use the private key to decrypt it and give it to them. Depending on how securely you keep the private key (say, on a USB key, kept in a lock box), it might be a hassle, but I'm pretty sure it'd be a secure way to still have access to the cleartext passwords.</comment></comment>


End to End Learning for Self-Driving Cars [pdf] - <AUTHOR> http://images.nvidia.com/content/tegra/automotive/images/2016/solutions/pdf/end-to-end-dl-using-px.pdf <comment><USER2> One problem with training a neural network end-to-end this way is that the system is susceptible to unpredictable glitches: The same principle that lets people trick a NN into [thinking a panda is a vulture]([https://codewords.recurse.com/issues/five/why-do-neural- netw...](https://codewords.recurse.com/issues/five/why-do-neural-networks- think-a-panda-is-a-vulture)) can happen randomly just by differing lighting/shadow conditions, sun glare, or who knows.

One can always train the network with more and more scenarios, but how do you know when to stop? How good is good enough in this regard?

<comment><USER3> For the "thinking a panda is a vulture" problem, don't humans fail in similar ways? The analogous examples for us are camouflage, optical illusions, logical fallacies, etc.

It doesn't really have to be perfect as long as it doesn't fail in common scenarios.

<comment><AUTHOR> It should never fail since any failure could potentially create a fatal scenario. People usually accept fatalities because of human error but they won't accept death because of algorithmic failure.

<comment><USER4> I suspect that it won't take long for people to come to terms with it in the same way we now "accept" industrial accidents. "Accept" in this case simply means that the industry in question is allowed to continue doing business.

</comment></comment></comment></comment><comment><USER5> With just 72 hours of training data, this is an extremely impressive result, scientifically speaking. However, in terms of quality control/best practices in automotive, it's simply unacceptable to trust human lives with a monolithic black-box system. The reason to have modular building blocks in a production system is not necessarily better performance, but the must-have ability to test, troubleshoot, debug, fix and replace things by reducing the degrees of freedom - it's the ABC of engineering even in much less sensitive industries. So while N2N is going to be very useful for rapid prototyping, and perhaps setting the performance bar for other method, I doubt it will ever be used in production.

<comment><USER6> Can be used as additional system for taking decisions.

<comment><USER7> This is a great point. Reminds me of how airplanes have redundant flight computers and compare the outputs of the computers to determine if one might be faulty. [https://en.wikipedia.org/wiki/Fly-by- wire#Redundancy](https://en.wikipedia.org/wiki/Fly-by-wire#Redundancy) The output of different self driving models could be compared to handle more difficult driving situations -- I never thought of that.

<comment><USER8> This reminds me of ensemble. Most machine learning techniques benefit in accuracy and precision by ensembling different methods. More different the methods are (variance) better improvement you get.

</comment></comment></comment></comment><comment><USER2> Another obvious problem with having the neural network map from vision to steering is that you can't make it take decisions based on what it hasn't seen yet, but will see. E.g. changing lanes because to reach your destination you'll have to make a right turn. The authors note that E2E learning makes for a better smaller system, on account of being free from human-imposed concepts. That's fine if that's your only goal. But I think it's essential for autonomous cars to be able to reason in terms of those human concepts.

<comment><USER9> This doesn't describe the (very basic prototype) system in the paper, but there is no theoretical reason there cannot be a recurrent net that plans ahead (obviously developing such a system is extremely difficult)

<comment><USER2> What would you give it as an input, though? Real-time screen captures of Google Maps in navigation mode?

</comment></comment></comment><comment><USER10> This is really interesting, but I'd want autonomous cars to be better than humans at driving, not to emulate them.

<comment><USER11> I've read that one of the problems with Google's self-driving cars has been that other cars tend to run into them because the self-driving cars drive extremely conservatively and violate other driver's expectations of how a typical California driver is expected to behave.

I think this sort of thing is something developers are going to have to find ways of dealing with; a car can be technically driving in a safe, legal way but if it's too different from how a human would drive, they are going to be a safety hazard.

Of course, standard driving behavior varies dramatically from place to place. For instance, in the United States, everyone is expected to get out of the way of whichever car has the right-of-way in that situation. In Indonesia, the car that has the right-of-way is expected to slow down, stop, or move over to accommodate other cars that do things like pull out in front of them in an intersection or pass on a two-lane road with oncoming traffic. A self-driving car in Jakarta would need to be trained very differently than a self-driving car in Seattle or Paris. Not just because the traffic laws are different, but because drivers have very different expectations about what is normal behavior.

<comment><USER12> Self driving cars must do significantly better safety wise otherwise the adoption will be hampered.

Plus, the whole point here I think is to save lives. Google self driving cars arent really a hazard they're more just very annoying because they are overly cautious.

<comment><USER13> I feel like people just assume that they are annoying to drive around, but very few people actually have experience driving around google's cars. The times that I'm around them (a few mornings a week), they are never in any way weird or annoying. In fact, they are extremely predictable, and therefor, if anything, less annoying to drive around.

<comment><USER14> I think the fear is that they'll drive the speed limit on the freeway, even when no one else is.

<comment><USER15> Actually what would speed up adoption would be if they were able to drive over the speed limit legally. If they are significantly safer then this should be a win-win for everyone other than those issuing speeding tickets.

</comment></comment></comment></comment></comment></comment><comment><USER16> Here is a great, very accessible video where the CTO of MobileEye (which provides some of the components for Tesla's "autopilot") explains his views on the challenges of end-to-end learning for autonomous vehicles, and why it's preferable to decompose the problem instead (still using deep learning for the decomposed modules). [https://www.youtube.com/watch?v=GCMXXXmxG-I](https://www.youtube.com/watch?v=GCMXXXmxG-I)

I'm inclined to agree, especially because it helps in 1) providing diagnostic information (such as the great driving visualizations shown in the video), and 2) makes it easier to incorporate algorithms and sensors (like with Google's cars) as a redundancy in case the neural network hits a crazy edge case.

<comment><USER17> Engineers are going to break down the problem into many subsystems and test the heck out of them.

Maybe the system can still be globally optimized, though, as long as individual subsystems are still verifiably correctly trained. i.e. lane detection, pedestrian detection could share some of the same convolutional layers and still be tested separately.

My personal prediction is that all of this 2D convolutional network stuff will be extended to 3D within a few years. The front-end will do a full 3D scene reconstruction from first principles, and then some sort of 3D features will be learned on ~that data.

</comment></comment><comment><USER18> Url changed from [https://blogs.nvidia.com/blog/2016/05/06/self-driving- cars-3...](https://blogs.nvidia.com/blog/2016/05/06/self-driving-cars-3/) to the paper it points to.

<comment><AUTHOR> Thanks.

</comment></comment><comment><USER19> Cool trivia: the building is in Holmdel, NJ and is really nice but sat abandoned for years. Companies can rent coworking space now, they're rebranding as "Bell Works" ([http://bell.works](http://bell.works))

[https://en.wikipedia.org/wiki/Bell_Labs_Holmdel_Complex](https://en.wikipedia.org/wiki/Bell_Labs_Holmdel_Complex)

</comment><comment><USER20> An Nvidia self-driving car. Impressive...but can it run Crysis?

In all seriousness though I'm really enjoying the number of corps exploring the space of self-driving cars. It can only make the reality of a road full of autonomous cars come all the sooner. (Though with the rate at which I see Google's self driving cars around Austin you'd think they were already out for public consumption.)

</comment><comment><USER21> The machine learning, no model approach is kind of scary. It's likely to do the right thing most of the time, and something really bogus on rare occasions. There needs to be more than just a model trained from successful driving. Some kind of recognition of "this is bad" is needed.

<comment><AUTHOR> Yup, like a near collision scenario to teach it to drive off the road instead of head on collision ...

</comment></comment><comment><USER22> In aeronautics, we were able to increase safety to an insane level by understanding the physics of the environment, formally proving and certifying algorithms, using Robust control theories that allow to formally deal with uncertainty. The power of mathematical modeling together with robust software testing and a limited/controlled use of learning algorithms is - in my opinion - likelier to bring safety to such systems rather than such an opaque use of CNNs. And I'm not even talking about human machine interaction or liability issue that would emerge from such extreme approaches (which node of the net or which training sample will be blamed?). I guess CNNs allow a lot of wannabe engineers to play with real world problems and dream that their 10 lines python code would match semantic models if fed with more training data, but I'm pretty sure Aircraft/Car manufacturers will/should not replace formally certified controls algorithms and redundant architectures built on the top of hundreds years of analytical results with a rack of NVIDIA GPUs.

</comment><comment><AUTHOR> Its amazing how the characteristics defined in ([https://en.wikipedia.org/wiki/Contextual_learning](https://en.wikipedia.org/wiki/Contextual_learning)) apply directly to this scenario. (Learning from a master )

</comment><comment><USER23> It's mind-blowing to me that they did raw image mapping to steering angle, without any manual feature extraction whatsoever. This is just revolutionary.

</comment><comment><USER24> Wow I guess having a self driving car is the new thing next we'll have self driving sli, can drive two cars if they are joined together with a proprietary cable :-)

More seriously, this is amazing work, I am really impressed, I just wonder if we can't get something more topical like training lasers on mosquitoes or something. I feel like I did when 3D graphics was the new thing, every day it felt like there was a new advance, now the same tech is doing the same thing to machine learning.

</comment><comment><USER25> In case you missed it, the ninth reference is a good video of the system in action:

[https://drive.google.com/file/d/0B9raQzOpizn1TkRIa241ZnBEcjQ...](https://drive.google.com/file/d/0B9raQzOpizn1TkRIa241ZnBEcjQ/view)

</comment><comment><USER26> Seems very similar to the GeoHot self driving car experiment.

</comment><comment><USER27> Does anyone know which camera they were using?

</comment><comment><USER28> Nvidia is one of the main reasons my computers, I do not want this true of my cars as well.

Edit - Is a joke really worth this many downvotes? I mean who hasn't had occasional trouble with Nvidia drivers and games?

<comment><USER29> "Nvidia is one of the main reasons my computers, I do not want this true of my cars as well." If this was a joke I think the grammatical error led to confusion?

<comment><USER30> I think they accidentally a word. (My guess would be 'main reasons my computers _crash_ ' :P )

<comment><USER28> Dammit, totally. How did I not see that!?</comment></comment></comment></comment>


Let's build an entire programming environment around Brainfuck - <AUTHOR> http://malone.cc/posts/lhbs_1.html

<comment><USER3> He's 27... As someone who's 47, I'd like to say: take that energy and try to build a company, join a few start-ups, try to change the world, travel a lot, drink in some far away land, etc. This place is a lot of fun :-): <http://www.cafenose.com/>

<comment><USER4> Your comment really hit a nerve with me, probably because I'm the same age as the OP and playing around with programming language implementations is a bit of a hobby for me, so I'll apologize for my reaction ahead of time, I tried to tone down what follows from the screed I initially wrote.

Your comment comes off as a little bit condescending and presumptuous. There's this underlying judgement about the relative worth of writing a Brainfuck interpreter and environment versus drinking in some bar in Guatemala or starting a company, like the latter is obviously a better use of time and energy. Aside from the fact that doing the things you mention aren't mutually exclusive with this little project, it's really tiring to hear (older) people constantly beat the drum of "you're young! go travel! drink!" on top of the "start your own company!" startup mantra. Maybe you wish you did more of those things when you were younger, or maybe you wish you were doing more of them now, and maybe I will wish the same thing when I'm older...

But they are absolutely not for everyone. I think it's disingenuous to just throw out "take that energy and try to build a company" as an alternative. Not everyone has it in them to do all the schlep work required to succeed at their own startup, so why assume this person hasn't considered it and chosen not to follow that path? Furthermore, I would personally prefer to tinker with a Brainfuck implementation than spend any amount of time in any bar, even it's in Guatemala or Colombia. I usually find them noisy and unpleasant, and I would find "partying the night away" to be a boring waste of time. But I would never suggest someone _else_ shouldn't spend their time that way because that would be assuming a great deal about what's important to them.

Maybe this was just a little flip remark on your behalf, not meant to be taken seriously. I'm probably projecting a little bit, and reacting to something you may not have intended to imply. For that, I apologize again.

<comment><USER5> That's not at all what I heard in the parent comment. It's not that tinkering with programming languages is bad at all. Rather, what OP proposes is a veritable shitton of work, and really won't be as much fun as he imagines right now; it'll be work. Hard, hard work, with tons of organizational overhead. If OP wants to do work of this caliber, the parent comment suggests that OP first seek out more productive, equally exciting and technically challenging ways to channel that energy.

That's my interpretation, anyway. Not that hobbies are bad, but that this is gonna be a life-consuming hobby, will likely detract from other pursuits, and may not pay off as well as OP thinks it will.

<comment><AUTHOR> You assume that:

a) I'm going to be doing this "work" (which, okay yeah it is) full-time or even constantly, when I'm probably just going to hack on it for the next few months or years; whenever I've got a coding itch. I doubt I'll ever go into crunch mode on this or get "burned out". I'll just put it aside for a while and do something else.

b) That I can't just say "Whelp, it was fun but I'm done" at some point during the project and find something else to do. There's no hardcore commitment here; like all projects, everything beyond the first step is a pipe dream.

I get what you're saying though and it could definitely be a shitton of work that's probably not usable IRL. But it's still a fun plaything.

</comment></comment></comment></comment><comment><USER6> Blog entry describing my 100-line x86-64 Brainfuck JIT (built on DynASM): [http://blog.reverberate.org/2012/12/hello-jit-world-joy- of-s...](http://blog.reverberate.org/2012/12/hello-jit-world-joy-of-simple- jits.html)

(Direct link to the code: <https://github.com/haberman/jitdemo/blob/master/jit3.dasc>)

<comment><USER7> I've been looking for a DynASM tutorial for ages, and wanted to use it to make a fast BF interpreter-- this is great!

I added some optimizations using Flex to identify patterns, and got a 3.8x speedup on the Mandelbrot benchmark -- <https://github.com/rmmh/beefit>

<comment><USER6> Very nice! I wouldn't have thought to use flex to recognize optimizable patterns. :) It crashes for me on OS X but I'll have to try it on Linux.

You may have tried this already, but where you have:

        mov al, byte [PTR]

Usually you want to write this instead to avoid a partial register stall (also in case there's junk sitting in the register).

        movzx  eax, byte [PTR]

<comment><USER7> Hm, the OSX crash is probably because they have a different ABI from Linux -- Google "osx ia32 abi" for details-- I'm probably violating stack alignment.

Partial register stalls are where you write part of the register, then read the full register:

        mov al, byte [PTR]
        add ebx, eax

But I am emitting this:

        mov al, byte [PTR]
        add byte [PTR+3], al

So there's no stall.

I got jit4 about as far as is reasonable for a single-pass compiler, but I intend to implement a proper BF->IR->ASM compiler to implement some more complex multi-pass optimizations I have in mind.

<comment><USER6> Yes, I have encountered the problem before that OS X crashes on incorrect stack alignment even where other platforms tolerate it.

Good point about the stall -- I always thought that partial register stall happened at the point that you do the partial write, since the logical contents of the register now depend on its previous contents. I didn't realize that the dependency logic was sophisticated enough to allow the partial read without depending on the entire register's value.

</comment></comment></comment></comment></comment><comment><USER8> Sounds like fun, but maybe you should wait with submitting it until you have something going? In case you lose interest for some reason.

<comment><USER9> It does sound cool, and it's no small undertaking. A high-level language like a Lisp requires GC, for one example.

It'll be neat to see what he comes up with.

<comment><USER10> GC doesn't have to be terribly complex: <https://gist.github.com/JohnEarnest/4522067>

</comment></comment></comment><comment><USER11> ++++++++++[ > +++++ +++ > +++++ +++++ << \- ] > \-- . > +++++ . \----- - . ++ . > +++++ +++++ .

<comment><USER12> <http://fatiherikli.github.io/brainfuck-visualizer/>

<comment><USER11> Wow thats a cool tool… Makes sense also, after all not many operators to worry about :)

</comment></comment></comment><comment><USER13> I think there real questions here are:

1) How long have you been insane?

2) Static or Dynamic typing?

<comment><USER14> 3) Generics?

<comment><USER13> 4) Iterators?

5) ???

6) Web framework?

<comment><AUTHOR> 4) Already got 'em. A Brainfuck iterator is just a bracket loop with an ascend command before the closer.

5) !!!

6) I am but a mere mortal, sir.

</comment></comment></comment></comment><comment><USER15> <http://reinventingthewheel.github.com> (2011)

<comment><USER16> The name of that project is horribly relevant.

<comment><USER17> I feel pretty safe in assuming that it is intentionally ironic.

</comment></comment></comment><comment><USER18> I wrote some kind of assembler on top of Brainfuck: Basically tweaked a Brainfuck interpreter that I wrote in C.

So instead of: +++++++. You would write 7+. or something similar... can't remember now.

</comment><comment><USER19> I started writing a simple parser/interpreter to convert a C-like language to brainfuck[1]. Simple sample code with a loop at [2] and result code [3]

I never quite got around to functions, but there is basic support for arithmetic, for loops and rand()

[1] <https://github.com/qix/c2brainfuck> [2] [https://github.com/qix/c2brainfuck/blob/master/samples/beer....](https://github.com/qix/c2brainfuck/blob/master/samples/beer.c) [3] [https://github.com/qix/c2brainfuck/blob/master/samples/beer....](https://github.com/qix/c2brainfuck/blob/master/samples/beer.bf)

</comment><comment><USER20> Interesting project ... but what about hardware?

It would be pretty trivial to create a uP out of high-speed logic that would execute each instruction in a single clock cycle. Add a PIC uC to actually load the program memory and you could have a nice little console machine.

As a side note, I've spent most of my career building uC systems that communicate via RS-232 or RS-485 (if they communicated with the outside world at all), so imagine my surprise to find I couldn't buy a laptop with a serial port. It's like the end of an era (yes ... I know about USB-to-serial adapters).

<comment><USER21> Is there a place where embedded systems job listings tend to be posted?

<comment><USER20> The industry rag is "Embedded" ( <http://www.embedded.com/> ) which replaced the print version published as "Embedded Systems Programming". There used to be three to four pages of "Help Wanted" ads near the back of each issue and that was the best place to find embedded systems jobs. The reality is that most job boards have these listings now (and they're usually cross-listed) but you often have to search for embedded related topics to find them. Try PIC, Microchip, ARM, uC, uP, etc.

</comment></comment></comment><comment><USER22> brainfuck is a wonderful toy language. it is so simple - the entire language fits easily in your head, even though it is difficult to do anything useful with it.

more generally, compilers are fun to learn about. i found Jack Crenshaw's "Let's build a compiler" series a good starting reference and source of inspiration [1].

i built a brainfuck to GNU assembly compiler in brainfuck. to be able to write that compiler, i first built a higher-level macro language that could target brainfuck, and wrote a compiler for that. the macro language was implemented as a horrible DSL in python [2].

later i built an implementation in haskell that could parse and compile the macro DSL to brainfuck, so things ended up entirely python-free [3]. Haskell's Parsec parser combinator library was fun to learn about too [4].

[1] <http://compilers.iecc.com/crenshaw/>

[2] <https://github.com/fcostin/abfc>

[3] <https://github.com/fcostin/abfc_hs>

[4] <http://www.haskell.org/haskellwiki/Parsec>

</comment><comment><USER23> Some time ago I tried writing an extended Brainfuck interpreter (m4bf - <USER2> brainfuck)[1] .

In addition to the basic language it had a stack and, with a bit of c preprocessor trickery, i devised a hackish way to have macros (despite the cpp man page saying not to use this for anything but as a c preprocessor).

[1] <https://github.com/federicoculloca/m4bf/>

</comment><comment><USER24> Why not just write an LLVM to brainfuck compiler ?

<comment><USER25> Like this: <https://github.com/jeremyroman/llvm-brainfuck> ?

<comment><USER26> This looks like brainfuck compiler (frontend, as in, it takes brainfuck and makes executable), not brainfuck to llvm (backend) compiler.

</comment></comment></comment><comment><USER27> You could write (or re-use) a RPython brainfuck interpreter, so you'd get a JIT for free :)

</comment><comment><USER28> There is a tutorial on how to add JIT to the interpreter written in RPython (if CPython 3 happens to be slow) [http://morepypy.blogspot.ru/2011/04/tutorial- part-2-adding-j...](http://morepypy.blogspot.ru/2011/04/tutorial- part-2-adding-jit.html)

</comment><comment><USER29> Before this goes any further, can we change the name of the language to something inoffensive. The name makes it impossible to mention it in many environments. Some alternatives I can think of is BrainF, Brainfreeze, Brainscrew.

<comment><USER27> Nothing wrong with Brainfuck, or fuck for that matter. If anything, it'll get the people that are bothered by it desensitised :)

</comment></comment><comment><USER30> This reminds me of Urbit: <https://github.com/cgyarvin/urbit>

Which is at least as weird, more serious, further along, and orders of magnitude more ambitious.

</comment><comment><USER31> Here's an interpreter of mine made in Lisp: <https://github.com/fabriceleal/Brainfuck>

<comment><USER32> In the same vein, here's my JS interpreter: <https://github.com/mgoeppner/brainfuck.js>

</comment></comment><comment><USER33> Lisp on top? Why not Perl 6?

<comment><USER34> Relevant xkcd: <http://xkcd.com/224/>

</comment></comment><comment><USER35> Announcing things that will never get finished. How exciting.

</comment><comment><USER9> OP, this seems cool and might be of use to you when you include functions: <http://en.wikipedia.org/wiki/Binary_lambda_calculus>

</comment><comment><USER36> craziness

</comment><comment><USER37> What good does a body if a soul makes a soul?

</comment><comment><USER38> Let's not. The offensive name, suitable only for inside jokes. Slow as hell. No chance to achieve any usable insights.</comment>


The Blob - <AUTHOR> https://deep-throat-ipo.blogspot.bg/2017/11/the-blob.html?m=1 <comment><AUTHOR> This is a financial analysis of Alibaba (posted on a financial blog called "Deep Throat").

I posted the title as-is, but wanted to note the topic for clarity.</comment>


How Bitcoin Works Under the Hood - <AUTHOR> http://www.youtube.com/watch?v=Lx9zgZCMqXE

<comment><USER2> why I made this video: A lot of the videos and explanations I read about Bitcoin were vague and mystical sounding. Or, alternately, super long and rambling. This is my effort to explain it in as concise a manner as possible.

I'm relatively new to Bitcoin, so any critical feedback would be very much appreciated, especially regarding my explanations for the rationale behind the block chain, and potential security risks posed by large "mining pools."

After doing all my research, the craziest part to me is that the point of all the mining is just to sort transactions. If this is correct, then it seems like there's got to be a cheaper way to do this... maybe ripple's digital currency?</comment>


Show HN: Codetree – Lightweight project management for GitHub issues - <AUTHOR> http://blog.codetree.com/articles/announcing-codetree.html <comment><USER2> Seems down?

        We're sorry, but something went wrong.

        If you are the application owner check the logs for more information.

<comment><AUTHOR> Sorry about that, servers have been under high load today.

</comment></comment><comment><USER2> Seems down?

        We're sorry, but something went wrong.

        If you are the application owner check the logs for more information.

</comment><comment><USER2> Seems down?

        We're sorry, but something went wrong.

        If you are the application owner check the logs for more information.

</comment><comment><USER2>
        We're sorry, but something went wrong.

        If you are the application owner check the logs for more information.

</comment><comment><USER2>
        We're sorry, but something went wrong.

        If you are the application owner check the logs for more information.

</comment><comment><USER2> Your main site seems to be down.</comment>


No Text (Messages) Please, We're Japanese - <AUTHOR> http://blogs.wsj.com/japanrealtime/2010/10/08/no-text-messages-please-were-japanese/ <comment><USER2> The interesting thing is that emails come at no extra cost whereas SMS will typically cost you if you go outside of network.

I have some expat friends here (Japan) who are so used to sending SMS in the states that they continue to send them here, accumulating extra-charges left and right.</comment>