The surprising benefits of a mid-career break - <AUTHOR> http://www.bbc.com/capital/story/20160325-the-surprising-benefits-of-a-mid-career-break <comment><USER3> I never had a career, but I took a break anyway after 14 years as a plastics factory worker. Mine stretched to 2.5 years since I could afford it. I'm now in my second month as a junior Java developer. This makes more sense than the sabbatical, since I had no skills or connections to get stale.

I have to say the benefits really did make me a better deal as an employee. I basically went from someone who did things because he had to, just fitting everything in around work, to someone who pursued his own goals. Now that I'm back at work, I don't constantly lose sleep till I have to rush to work at the last minute; I schedule things so I don't have to, and I got my sleep habits under control. I don't bike to work just because I need some way to keep from getting fat; I sought out active, fun hobbies I can still engage in, like ice skating. I don't beat myself up all the time for being lazy; I have my own strategies now for getting myself to put in time on the right projects and not let things slip away. I also used to have trouble just getting basic things done like phone calls and finding a tailor; with my time off, I got things done and gained confidence that I could get any errand done.

I also feel so much more independent now. Google Maps plus free time to explore means I found so many wilderness sites and activities. Internet reading about joints plus time to work on the exercises mean any ache or pain that comes up is something I can solve. Compared to the time I tore a back muscle falling into a railcar, when all I could do is try to reduce the activities that caused me nerve damage and hope I got better, I'm so much better equipped to take care of my own health.

tl;dr Having full responsibility for yourself is great. I did a lot of things it would have been too late for in retirement, and the best part is the habits I learned when I had time are now ingrained enough I can do them even while working full time.

<comment><USER4> Are you also getting paid more in your new job? If so, how much of the change in your life is due to this. E.g. you might be able to buy time with money when previously you just had to rush.

<comment><USER5> It's a shame that we have built a society where time is something you have to buy instead of a plentiful resource that everyone shares in. (I suppose you could say the same for food, shelter, and clean water.)

<comment><USER6> Except in this case, it means a salaried worker who guarantees a certain amount of labor for a certain amount of pay, "buying" back their labor commitment by returning some of that salary.

Why is it a shame that food, shelter and clean water have to be bought? They are cheap (well, shelter can differ) isn't that enough?

<comment><USER4> It can mean that, but I primarily meant other things: you can buy back your time by hiring a house cleaner, or eating out more often, or buying labour saving gadgets, and probably in various other ways.

</comment></comment></comment></comment></comment><comment><USER7> In 2013, I quit a 10-year job in the HFT/trading systems industry and went to work for small non-profit that developed web/mobile systems for humanitarian and human rights agencies. One of the best the things I ever did. What came out of it:

1\. Completely upgraded my outdated skill set - from C++/Oracle to ES6/React/Redux/Node.js etc.

2\. Completed a life-long dream of writing a full length science fiction novel (not yet published, sadly)

3\. Developed computational psychology model (pet interest) that might one day be the basis of a paper

4\. Learned proper leadership skills, public speaking skills and people management skills

5\. Much better health - exercised, got plenty of leisure time (worked only 30hrs/week)

6\. Networked through pro-bono consulting

It was financially punishing for me, but ultimately it was more than worth it. Last year I returned to the industry full time (a different industry this time). The additional skills/experience in the resume opened up a lot more higher level opportunities that I would never have been able to pursue 3 years ago. Right now I'm in a management level position doing exactly the kind of work I want to do, and I doubt if I'll ever have to worry about finding a job...

By the way, for anyone who asks, those 2 years were easily the happiest in my life.

Edit: cons: be ready to be poorer!

<comment><USER8> That sounds amazing! I would love to know which industry you returned to, how the exactly the experiences you had in the break contributed to finding higher level opportunities, and the impact on personal finances...

<comment><USER7> 1\. The food services industry

2\. My previous job was 10 years of mostly proprietary tech. Had no time to pursue other things seriously. Dealing with the newer technologies in a production setting (in the non-profit) helped more than any other learning process would have. Also, going from a small fish in a very big corporate pond to a big fish in a very small pond meant having to take a lot more responsibilities for product, delivery, strategy and HR. It was like a mini skill incubator. I also had enough time to do some serious consulting work, which opened up a lot of opportunities.

3\. Quite bad. Savings are quite low currently. My living standard is still somewhat lower than my peers. But opportunities within the next 2-5 years are huge. Had I remained in my old industry, I'd have been a technological fossil by the time I'm 40 (I'm 37 now).

</comment></comment></comment><comment><USER9> I took 5 years off of programming, to go with my family to China, where my wife could pursue her ESL career. I taught high school part-time and was a house-husband. We came back this summer, about 3 months ago. I'm 45 and managed to find decent employment.

I was pretty nervous about coming back to software development, but it turned out fine. I'm not very ambitious career-wise, but I can support my family. I'm doing web development (there was some catching up to do!) and servers & ops on AWS, which I was able to jump right back into. Linux hasn't changed much!

I tried to find work in the US from China, but nobody took me very seriously, so I came back in late April, interviewed in a few places, partly while on a road trip, got 3 offers in 3 different cities, on a spectrum of interesting to well-paid, and all ethical, and accepted one in June (the middle one -- reasonably well-paid, reasonably interesting, in a low-cost-of-living location).

It helped having support of people in the US (my parents, who gave me a home base, and friends in various cities who I could stay with) and being not-very- ambitious -- I'm happy to just be a software engineer / ops guy. I don't need to be very high up the food chain. Companies seem hungry for people who are professional and skilled and get along with people.

I definitely sacrificed something professionally by spending those 5 years in China. It was an expensive sojourn. But I am happy we did it. We were very lucky to (1) all be healthy, (2) have enough money saved to make the leap, even though we knew it would be temporary, and (3) have at least one of us employable in the US (me, the programmer) and abroad (my wife, the ESL teacher). It was a monetary loss for sure! But I learned a lot about life and not worrying about every little detail, and it was an experience that strongly shaped our three children, both for better and for worse. And I think it helped bring the US and China together a little, on a personal level, in the friends that we made and the things we learned.

<comment><USER10> Can I ask how you feel it negatively impacted your children?

<comment><USER11> I'm not the OP but I'm guessing that being uprooted from one country to the other, and back, is somewhat challenging for a child's social development.

<comment><USER12> I went through this - it definitely affected me, but I wouldn't call it a negative.

It wasn't so much the living away from home (we were overseas for 2 years when I was 10 years old) it was the return - the shocking disparity between how I now saw the world, and how my peers (who were frozen in time in my memory) saw things. It forever separated me from them in ways they could not understand.

In hindsight, it was one of the best things my parents did for me - <USER2> to most of my home-grown peers, I adapted faster to new situations and had little difficulty adapting to life as an independent adult - in my opinion, thanks to the expanded perspective I gained when I was younger.

YMMV, but IMO, calling it "challenging for a child's social development" implies a negative, but it really depends on what your goals for that child's development are. It's certainly an experience I'd like to repeat for my own children if I can make it happen.

<comment><USER13> This study also suggests that it could also depend on whether or not the child is extraverted. [https://www.apa.org/pubs/journals/releases/psp-98-6-980.pdf](https://www.apa.org/pubs/journals/releases/psp-98-6-980.pdf)

I've seen other research with similar findings. Having moved cities/provinces three times in my childhood (granted within one country) I have to say that it doesn't seem it was tough on me, but I know people who say they wish they hadn't been moved so much. Another part of it for me is that I really like where I ended up; and importantly, I gained all of my social skills after moving to my final childhood municipality, so I associate it with social success.

<comment><USER9> Yes! Thank you for linking that.

Our children's experience was very much tied to their extraversion. The most extraverted is doing the best, and the least extraverted has had the biggest net negative outcome, in my opinion.

</comment></comment></comment></comment></comment></comment><comment><USER14> I'm currently on a trip around the world, going over 1 year at the moment and loving life, I wouldn't trade it for anything.

I've met countless 20-somethings doing the same, and a surprising number of mid-career professionals, and they're all European.

I have yet to meet a single person in almost 2 years of international travel that is from the US and was willing to take a break in their career.

I hope this American culture shifts towards Europe in the future. Americans are left out of this experience and cultural exchange, and seen as choosing to rather stay at home to toil over their bank accounts. The professional and personal benefits are more than adding 1 more year of your working life will ever get you, and besides, I want to see the change because I have a vested interest in finding a job when I come back.

<comment><USER15> The vast, _vast_ majority of Americans simply cannot afford to take extended time off to travel internationally, and of those who can, the current job market is such that for those that return, the prospects outside of the tech industry are not good. Employers here generally do not look favorably on large employment gaps, and the social safety net is pretty sparse if you come back and need time to get situated again. Comparing European workers and American workers in this context is not very fair - the situations for each are quite different.

<comment><USER16> I think your other points are good, but I disagree here:

> The vast, vast majority of Americans simply cannot afford to take extended > time off to travel internationally

It can be done very economically; students with almost no money do it, staying in hostels, taking trains, etc. I know one guy who worked his way through, at least to some extent. If you have kids and a mortgage, that's a different story.

<comment><USER17> It's actually very possible for Americans if they plan correctly. From what I've seen, only the salaries near London approach anything close to the typical six figure rates seen in the US.

It should be pretty easy for any developer in the US to sock away several hundred thousand dollars by mid 30s. I did it.

Simply continuing to live as I always have, regardless of raises, has made the most difference. Granted, children and marriage are two things that I'm very unlikely to do anytime soon, as I feel it is simply too risky in the US as a man.

But yes there is something in our culture that impedes travel and long vacations like this. I have visited many places off the beaten path, and one thing I've noticed is that Europeans (especially Germans) really seem to get around the world - they prioritize it, while in the US I've only recently taken my first vacation in many years where I did not bring my work alone with me. I think the lack of job stability really makes Americans feel anxious about employment. One can lose their job here and be out the door in 30 minutes, no warning. There is absolutely no safety net for males in US society, and one trip to the ER without health insurance can screw you over financially.

But like I said, salaries in the US seem really high, so it can certainly be done. In fact, I prefer this to the EU system as I am in full control of my life, and by saving more money that isn't taxed as much, it's possible to retire far earlier than engineers in the EU or elsewhere.

<comment><USER18> "... to the typical six figure rates seen in the US."

You need to get your news from more than one source. HN is not a representative sample. I can't overstate this.

I can tell you that having lived in the US and Europe it is MUCH easier to travel as a European resident:

* 21 days of vacation every year, by law, that people actually use. 6 weeks for some places, like Germany (how do you think it is they travel so much??) In the US if you get vacation it's common to be shamed by your coworkers and bosses if you use more than a few days. A friend of mine works for a company with "unlimited vacation". He just visited Morocco and Portugal for a few weeks and was chided by colleagues for it. He is an incredibly talented and in-demand engineer, though, so he can tell them to shove it. Most people cannot.

* You can leave your job and not be stuck with terrible health insurance (Obamacare is a start, but when you're a footloose 20 something what the hell good is a plan that costs $150 a month and has a $6000 deductible?)

* If you have student loans at all, they're generally quite small.

* The social safety net is stronger; jobseeker's allowance, the dole, etc. are not as hard to qualify for as unemployment is in the US. Think to yourself - in the US, the worst possible consequence of taking a vacation is that you'll be sleeping in gutters after you get back and your boss fires you to set an example. In much of Europe you collect benefit (modest, but still something) and live with roommates.

* Cars - it's a lot harder to save when you're basically forced to spend $250-$600 a month for basic transportation. You might point out that there are alternatives, and there are, but in the US it means paying a TON for rent in order to live in one of the few nice neighbourhoods in the country.

* Most of all, not everyone is a developer. Perhaps people who make $30k a year should be able to take some time off, even for a modest vacation near home, without being in abject terror of seeing their lives ruined for it?

<comment><USER19> > * Cars - it's a lot harder to save when you're basically forced to spend > $250-$600 a month for basic transportation. You might point out that there > are alternatives, and there are, but in the US it means paying a TON for > rent in order to live in one of the few nice neighbourhoods in the country.

As a soon-to-be resident of the NYC metro area, I was shocked to discover that the monthly costs of those alternatives effectively added up to a car payment.

<comment><USER20> Perhaps the car payment, but consider: fuel, depreciation cost (almost always overlooked), insurance, parking, and maintenance.

If you can live without a dedicated car (taxi, Uber, car-share, rentals), it's often a surprisingly affordable option. The critical loss is in the flexibility of auto-based transport, though again, that hinges greatly on the alternatives offered by the location.

Humans existed without cars for nearly 200,000 years.

<comment><USER19> > Perhaps the car payment, but consider: fuel, depreciation cost (almost > always overlooked), insurance, parking, and maintenance.

Well, depreciation is irrelevant if I consider the entire car payment a sunk cost. Anything I get for selling the car is a bonus. Otherwise yes, there are additional costs.

> If you can live without a dedicated car (taxi, Uber, car-share, rentals), > it's often a surprisingly affordable option.

That is the part that hinges on location and the trade-off between transportation costs and domicile costs.

> Humans existed without cars for nearly 200,000 years.

Humans existed without _cities_ for about 197,000 of those years, but I'd rather not go back to that.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER21> Get on the property ladder before you take your sabbatical.

I recently took an 18 month sabbatical from my banking software development job and it was well worth the risk. I had been working for 11 years. I ended up getting my old job back when I returned because I did not leave on bad terms. I probably would not have if I had stayed there any longer as work and London life was turning me into an angry selfish person in general.

My only regret is that I didn't buy a flat or house just before I took the break. Whilst employers are more than open to the idea of a long sabbatical in my industry, lenders are not. Right now I am earning just as much as I used to but I am struggling to get a home loan despite having an excellent credit rating. They see that hole in your work history and it gives them the jitters. I should have bought a place and rented it out before I went traveling.

<comment><USER22> In the US I often see well paid friends struggle financially after buying a house (I do live in a high cost area in the US). And most landlords (again, US) will accept a bank statement with 12-14 months rent in lieu of a salary check. You can prepay 12 months to avoid any questions whatsoever.

I would personally avoid buying a house before jumping off as that would occupy my mind instead of freeing it. My 2c.

<comment><USER21> Right now, in London and if you have a 15% deposit, its cheaper to buy a place than to rent from month to month so I guess it depends where you live. I always thought it was better to keep my savings liquid for startup capital but I found myself going back to work because I did not like spending it on rent. I figured that I would continue my project at a slower pace in the evenings and weekends and cover my expenses in the meantime. This is not a good recipe for swiftly setting up a startup.

<comment><USER22> Good to know. One difference may be buying a flat in a multi-family building, so the costs of major repairs (roofs and such) is shared and can be handled by a management company for a fixed monthly cost / subcontracted / insured against. That (I think) makes total cost easily predictable.

My observations are from US where more than one family I know bought a house (old house, expensive because of the good school district, which is why they bought it), assumed low maintenance costs, then got hit with some sizeable repairs (as the house is old). Not trying to generalize, that's just what I saw.

</comment></comment></comment></comment><comment><USER23> > _One of Smith's clients pointed out to their manager how much money they > could save in the budget for that year by not having to pay their salary, > yet not sacrificing the investment they had made in training them over the > years._

When an organization can operate without your presence for over 300 days, your role may not be very necessary.

The surprising costs of a mid-career break involve falling far enough behind industry trends and methods, that it would be faster to train a new person than retrain you. The article is very optimistic about the rate of change in any workplace, and also an employer's willingness to support this kind of extended vacation.

<comment><USER24> >The surprising costs of a mid-career break involve falling far enough behind industry trends and methods, that it would be faster to train a new person than retrain you.

In programming -- and, I think, perhaps in most industries -- more people fall behind in learning _because_ of their job than because they're out of the daily grind. Any large-scale enterprise is chock-full of devs who have plenty of experience developing inside Websphere, Liferay, Sitecore and so on, but who haven't had the time between work, family and sleep to gain knowledge and experience in SPA development, CI, CD, microservices, and so on, let alone more outre topics like ML or NLP. Giving knowledge workers the opportunity to sabbatical out and build new expertise would benefit both them and their employers.

<comment><USER25> Except if their employers need people maintaining the legacy systems using the legacy technology. Then having people there who know nothing else is highly beneficial, since they're unlikely to quit.

</comment></comment></comment><comment><USER26> I'm a few months into a mid-career break. I'm exercising, playing with kids, writing, studying, and sleeping (8 hours/night!). I'm also depleting savings, but not as quickly as I projected. Now that I have time, I fix broken things rather than replace them. I take time to research things really well before purchasing, so make few mistakes and get good deals. Each dollar I spend is a few minutes sooner that I need to return to employment (if the projects I'm tinkering with aren't yet revenue-generating), which motivates frugality.

We lowered our costs significantly right before I left work. We moved to a small but adequate house in the far suburbs. My mortgage is about one-eight the mortgage of peers in my profession at my level, even when I include the rent I pay now for a tiny personal office nearby.

Chen, featured in the article, was one inspiration to take the plunge. I found his LinkedIn CV, which describes that period: "Father and Husband, Sabbatical, September 2011 - August 2012. We took a year off from our life in Boston and lived on a remote island in Norway just north of the Arctic Circle." I liked that. Ideally I emerge from this period with a sustainable business of my own, but even if I return to working for others, as long as I have an interesting, compelling story about what I was up to during my time off, and how it made me better - which I will - I doubt the period will cost me much (if anything) in interview terms, and it may benefit me.

Glad to read the experiences of others here who did this and didn't regret it. If there are people who took time off and did regret it or have advice about how (not) to spend the time, would love to read that too.

<comment><USER27> > I found his LinkedIn CV, which describes that period: "Father and Husband, > Sabbatical, September 2011 - August 2012. We took a year off from our life > in Boston and lived on a remote island in Norway just north of the Arctic > Circle."

Honestly it sounds more along the lines of a usual stay at home dad, the location notwithstanding. The only reason they moved there was wife's origin and offer of employment.

If you reverse the genders it happens all the time, just that no one would call that 'sabbatical'.

<comment><USER28> > If you reverse the genders it happens all the time, just that no one would > call that 'sabbatical'.

Because a sabbatical means that _for a limited time_ you will do something different that you always wanted to do and go back to the job afterwards. Not cultivating a new hobby which will distract you from your job for the next, say, 15 years.

<comment><USER27> That would be a lot more convincing if his sabbatical wasn't around the in- laws. There's nothing wrong with paternity leave, maybe that's a stigma on resume in the States though?

</comment></comment></comment></comment><comment><USER29> I took a 1 year career break in 2011, travelled around Asia, learnt some new life and professional skills and got an excellent new job in Australia (I'm British) via sponsorship.

Im convinced that I got the job because my energy and enthusiasm levels were completely reset after my time away from working.

In August this year I left that job and I've been living in Thailand for the last 2.5 months, and already I feel completely reset and ready for new challenges.

The most important part of a career break is to use the time wiseley to either work on yourself, or work on your skills, or both. If you just sit around on your backside playing XBox and doing the same shit you did while you were working, then you're probably not going to benefit from it.

Yes this path may not be available to friends who went down the family/mortgage path but they have benefits in their life which I don't have. Different people, different priorities I guess.

</comment><comment><USER30> I did this a few years ago, taking 1 year off. I was a bit nervous being in my 40s, but it did such immense help for me, I recommend it for anyone who is willing to work hard during their time off. I pivoted from enterprise software to backend development for various online companies and I'm very, very happy.

</comment><comment><USER31> While a sabbatical year might be very beneficial for the person taking it (for the multitude of reasons mentioned in the article), it can be detrimental for the organization. For example, if the person taking the sabbatical is in charge of (or playing a lead role in) a project that is time sensitive, then this is a big setback for the project. Similarly, if the person is mentoring someone else (who is dependent in some way on his presence), then taking a sabbatical is unfair to that mentee.

This is why it is important to plan the sabbatical year so that it is personally beneficial and also not detrimental to the organization and its people.

<comment><USER32> I'd say that it is just as important to an organization to learn how to deal with people leaving. It's better to have someone leaving under good terms than bad, and if you're totally reliant upon a single person doing a single role, you're not displaying too much 'organizing' in your organization.

</comment></comment><comment><USER33> Can anyone in this thread speak to how it would impact a software engineers career in the USA? I've considered doing this for a while, just afraid to give up all I've worked for

</comment><comment><USER34> I worked 7 years for one company and had the feeling it wouldn't go anywhere.

So I quit and went Funemployed for 1.5 years. Doing some game development etc.

Went self-employed afterwards and got to work from home and make much more money.

I learned much and even tried to finish my masters degree, but the new job prevented me from getting the thesis done, haha. But maybe next year.

</comment><comment><USER35> Oh, another "Isn't it cool that people can quit their jobs to go do $EXPENSIVE_THING" humblebrag article! File this along with the "Exploring Africa in my custom jeep" and "Traveling the country in a solar powered van I built" pieces. Unfortunately, this option is not available to the 99.99% of readers who need to pay their mortgages, health insurance, child care expenses, student loan payments, and other realities of normal life.

If you're one of those lucky enough to be able to just jaunt off to a faraway land for a "career break" then congratulations! But these articles claiming it's something that you, the reader, can do, are pretty silly.

<comment><USER36> Just for the hell of it I went over to my wife and proposed taking a sabbatical. She raised an eyebrow: "Are you high? Man up & do what needs to be done!"

Seriously though, until universal basic income is a thing, those of us who must work for a living will continue to work for a living. This is capitalism in action.

<comment><USER37> Can only talk about my wife and our situation. We both work, but all ways make sure that either partner can hold a full time job and pay all our commitments. This goes for car loan, mortgage, shopping. It takes the stress of either partner that they can just take 6 to 12 months off when things get really tough.

</comment></comment></comment><comment><USER38> It sounds like lots of people here have taken breaks, but have any of you taken actual sabbaticals (i.e. with explicit employer permission and with the intention of coming back afterwards)? How did you negotiate it and how did it go for you?

<comment><USER39> We have a program that grants a short (4 week) sabbatical every 5 years. You can add an additional 2 weeks of PTO to get to a 6 week break.

It's not an academic's typical sabbatical, but it's a nice perk to disconnect as well as force us to not be excessively dependent on a long-time veteran for daily ops.

To your last question, it's a company perk, so wasn't negotiated; my first one went very well; I caught up on some hobbies that I'd let slide and did some fun travel and am looking forward to my second one.

<comment><USER40> > We have a program that grants a short (4 week) sabbatical every 5 years. You > can add an additional 2 weeks of PTO to get to a 6 week break.

That's not a sabbatical, that's a normal summer vacation in Europe :)

</comment></comment></comment><comment><USER41> I did this last year by accident, after a layoff from a high intensity but failing startup. Easily one of the most productive, eye opening, bucket list kicking experiences of my life. I ended up doing 6 months, traveling, starting a company, got CELTA certified, met a woman who turned my perspective on dating upsidedown, and generally was much happier.

Oddly though, all of my personal coding projects went almost immediately into the bin. I didn't have the motivation to push them when I was employed and lost _all_ motivation when I didn't touch the field on a daily basis.

</comment><comment><USER42> A consultant that just started working for our company wrote this post a few days ago: "He who dares"... Why moving from a corporate to a start-up could be the best move you ever make… Might be of interest [http://blog.thisisbud.com/he-who-dares-why-moving-from-a- cor...](http://blog.thisisbud.com/he-who-dares-why-moving-from-a-corporate-to- a-start-up-could-be-the-best-move-you-ever-make/)

</comment><comment><USER43> Question for all you guys who took a break (ie travel for 1 yr+) and came back to another job. How did you show in your resume?

<comment><USER44> My resume just looks something like:

      Job A: 2007-2009
      Job B: 2010-2014
      ...etc

No one ever asks.

</comment></comment><comment><USER45> As much as the break and benefits itself seem alluring, most of the world can't afford this kind of lull in their careers. This applies to both work- oriented countries like Japan and USA as well as third world countries.

</comment><comment><USER46> Did BBC just clickbait me?

</comment><comment><USER47> Non-white people do this too. They just call it being laid off. The holistic, "I just feel so fulfilled!" crap just irks me at some visceral level that I can't fully explain. There's just something so entitled and lazy about this way of existing.

<comment><USER48> You sound like you need a sabbatical.</comment></comment>


Ask HN: Which functional language has the best ecosystem for a web backend? - <AUTHOR> <comment><USER2> I have been using Elixir for the past more than 2 years and got say that it has an awesome ecosystem for overall web development, I've been using and writing open source libraries and they are looking pretty solid as well. The company I work for also uses it as its main backend for the past almost 3 years and it has been working nicely since then. Hiring also got way easier, not only because of the existing developers using it already but also because the interest on it has increased.

<comment><USER3> I second that Elixir's ecosystem is exceptionally great for such a young language. I love working with it.

That said, I'd wager it can hardly be called a functional language. Sure, you can't write for loops, but every Elixir process encapsulates a little piece of mutable state. Elixir and its ecosystem allow and encourage you to have (very) many processes, and thus many global singleton-like pockets of mutable state. It's a powerful and pragmatic concept, it works very well, but it doesn't really feel very functional.

The most extreme example of this design philosophy is a Elixir standard library module called "Agent", which is just a cute name for "global mutable variable". When used with care it's a very handy tool but, well, functional? Nah :-)

<comment><USER4> While I don't disagree entirely, I find that Elixir is actually quite functional. Using processes for state as if they're objects is generally considered bad practice.

I can highly recommend this article (also just in general for people curious about Elixir): [http://theerlangelist.com/article/spawn_or_not](http://theerlangelist.com/article/spawn_or_not)

A quote:

> But before starting, since this is going to be a long article, I want to > immediately share my main points:

> Use functions and modules to separate thought concerns.

> Use processes to separate runtime concerns.

> Do not use processes (not even agents) to separate thought concerns.

> The construct "thought concern" here refers to ideas which exist in our > mind, such as order, order item, and product for example. If those concepts > are more complex, it's worth implementing them in separate modules and > functions to separate different concerns and keep each part of our code > focused and concise.

> Using processes (e.g. agents) for this is a mistake I see people make > frequently. Such approach essentially sidesteps the functional part of > Elixir, and instead attempts to simulate objects with processes.

</comment></comment></comment><comment><USER5> Clojure! the thing I like most about a lot of the libraries is how they seem to blend so seamlessly. I don't know if it's an artefact of just being a lisp or just a lot of the developers sharing a mindset, but the whole experience feels less janky.

<comment><USER6> agree. Once I discovered Clojure, it's all kinds of fun to write in! The community is great. The ecosystem now has plenty of robust libraries to handle most any heavy-lifting task(s).

If you want to play around with getting up and running with a functional clojure backend, I put up this:

[https://github.com/tuddman/moarweba](https://github.com/tuddman/moarweba)

feedback welcome

<comment><AUTHOR> Did you ever try F#? I've tried both Clojure and F# and I honestly prefer the latter.

</comment></comment></comment><comment><USER7> Well, IMHO It's F#. F# is really good due to it's better tooling and you have access to the plethora of libraries and framework of the .NET Ecosystem. Unlike Scala or Kotlin, F# retains a lot from it's functional roots like \- Automatic Currying \- ML Type System

Plus it adds some really innovative features like \- Type Providers which allows you to lazily/automatically generate Types for real world data/systems which is pretty cool.

Ultimately it boils down to the Runtime/Tools/Ecosystem which is also true for Scala and Kotlin but it retains a lot from it's OCAML Heritage which makes it lean more towards FP than it contemporaries

PS - I didn't mention clojure as I don't consider dynamic languages a good fit for building large codebase backend systems

</comment><comment><USER8> We at Crowded ([https://crowded.co](https://crowded.co)) have had some very good successes with running F# on .NET Core, both with giraffe and just bare ASP.NET Core. The ecosystem has no shortage of good tooling and libraries, all well maintained by knowledgeable authors. Application performance and our development productivity is excellent, osx/linux tooling took a while to mature but is only getting better than ever now.

The choice we made when .NET Core was still in development (pre 1.0) for it to become our main stack is definitely paying off!

</comment><comment><USER9> Elixir/Erlang are one among best functional programming languages for web today. Phoenix is a very performant and productive web framework. You can build a typical web app really fast using Phoenix and Elixir.

<comment><USER10> You mentioned Erlang, where do you normally use it?

<comment><USER9> Well, the erlang vm is what runs Elixir apps. Elixir runs on the erlang VM (called BEAM) similar to how scala/clojure run on the JVM. However, while writing a lot of elixir code you end up using the erlang standard library for things which are not available in Elixir, :crypto is a module which comes to mind. Elixir apps at the end of the day are erlang apps.

</comment></comment></comment><comment><USER11> I find .NET Core (particularly ASP.NET Core with F# via Giraffe - [https://github.com/giraffe-fsharp/Giraffe](https://github.com/giraffe- fsharp/Giraffe)) extremely good since Microsoft went all open source. I have multiple backends running in a GCloud Kubernetes cluster and develop all my stuff from a non Windows environment. Couldn't be more happy and the speed of ASP.NET Core with Giraffe is fantastic (~100K r/s).

<comment><USER11> I'd like to add that with F# you get all the benefits of an extremely mature web stack with asp.net core and a huge eco system of very high quality libraries. Frameworks like Giraffe, Suave or Freya make it all possible to write your backend in a functional idiomatic way. Also a big plus for F# is the choice of top notch tooling. You've got Visual studio which works on Windows and Mac, then JetBrains Rider which is awesome and Visual studio code with the Ionide extension. I'd highly recommend anyone to go and check it all out!

<comment><AUTHOR> I am also leaning towards F#. What do you use for json serialisation? Any guide which describes basic steps to put together a web api.

<comment><USER12> JSON.NET is the standard library for handling JSON on the .NET platform, and to my knowledge it's available for both .NET Core and for use with F# collections.

I've never used F# on .NET Core, but I'd be surprised if it didn't work.

<comment><USER13> Yep F#, the language, works all right in .NET Core 2.0. Some libraries, particularly, type providers, not yet, but they are working, on it. And JSON.Net also works fine on .NET Core.

<comment><USER14> As I understand it type providers work with dotnet core code, provided you build the providers in mono. But yeah that's not exactly ideal.

</comment></comment></comment></comment></comment></comment><comment><USER15> Haskell's Yesod framework has a pretty solid ecosystem. It even comes with a free book:

[https://www.yesodweb.com/book](https://www.yesodweb.com/book)

</comment><comment><USER13> F#, first because its ecosystem is the whole .NET Framework world of libraries, utils, etc. Second, because it's got its own set of very functional libraries like suave.io for web apps/services, FSharp.Data for consuming data of diverse sources/natures, Fable.io an elegant JavaScript transpiler. Finally, with very demanding production projects like jet.com it already has proved that it can process massive amounts of transactions.

</comment><comment><USER16> Today I would say Java/Scala mostly because of jvm access to huge numbers of libraries. But also because of things like Akka.

There may be other options depending on whether you consider JavaScript or Go to be a functional language.

<comment><USER17> Scala has a number of good HTTP frameworks, Play, spray/akka-http and Lift come to mind.

Spring boot (Java) is also very decent, and Play and akka-http have both first-class Java and Scala API's.

Kotlin has the same JVM advantage.

<comment><USER18> The OP specifically asked for a functional language, though. Java and Kotlin have adopted some ideas from functional languages, but they aren't themselves functional languages, and their HTTP frameworks certainly aren't designed along functional lines.

Scala is, amongst other things, a functional language. How much to its HTTP frameworks embrace that?

<comment><USER19> [https://github.com/http4s/http4s](https://github.com/http4s/http4s) Is a a good example of a HTTP Framework in Scala providing idiomatic FP interfaces

</comment></comment></comment></comment><comment><USER20> Some would say that Rust is a functional language.

[http://science.raphael.poss.name/rust-for-functional- program...](http://science.raphael.poss.name/rust-for-functional- programmers.html)

Rust has an ecosystem for building web backends.

[http://www.arewewebyet.org/](http://www.arewewebyet.org/)

Does Rust have the _best_ ecosystem for a web backend, though? I think that will depend on who you ask and what you are looking for specifically.

<comment><USER21> Third party resources can be sort of out of date; your first link is from 2014, and therefore has a bunch of inaccuracies. Your second was last updated last Octoboer, so not so much, but is still missing out on stuff.

<comment><USER22> Do you have a source that isn't missing stuff, or you could you mention some of the important bits?

<comment><USER21> Some examples:

* the h2 crate was released last week, which adds http2 support to the ecosystem

* the frameworks page is missing, off the top of my head, shio and actix. It also includes pencil, which has been abandoned for a long time.

* It includes nothing about Rust's fairly recent wasm support and all of the crates that let you work with that

In general, this is an extremely active area, with few "winners" so far, and crates.io is adding roughly 23 crates a day, though obviously not all web- related. There's just so much stuff all the time that keeping a curated resource like this up-to-date is a lot of work.

</comment></comment></comment></comment><comment><USER23> For backend you'd have Scala on the JVM side and F# on the .NET side.

<comment><USER24> I second F#. You have access to the full .NET Standard library as well as all of the open source libraries available. I personally found it more of a joy to use than Scala, but that may be due to my knowledge of and experience with .NET.

F# on .NET Core is stable and there are templates for an F# web application.

<comment><USER25> I'm an experienced Scala dev but after reading the "fun and profit" ebook F# looked really interesting. Naturally I tried to take the next step of creating a small webapp with it on a Linux dev machine. Unfortunately I ran into a lot of problems identifying and setting up the needed tools and frameworks on Linux and eventually gave up. My assumption was that the tooling+frameworks were likely "not quite there yet" (late 2017) for Linux but I'd love to be proven wrong. Any suggestions for an up-to-date tutorial on "web development using F# on Linux"?

<comment><USER13> For a from zero to "Hello world!" no frills installation try [https://medium.com/@edgarsanchezg/four-easy-steps-for- instal...](https://medium.com/@edgarsanchezg/four-easy-steps-for-installing-f- in-ubuntu-linux-88122323f12b). Then, you can go on to [https://www.demystifyfp.com/FsApplied2/](https://www.demystifyfp.com/FsApplied2/) great e-book (not free, but really inexpensive) on building F# webapps with suave.io

<comment><USER25> Thanks for the pointers, I will definitely check both of these out. In my last attempt I got to the "can compile 'Hello World' from the command line and even debug it in VSCode" stage but after that things quickly went off the rails IDE-wise. I even tried MonoDevelop (did some C# work with it long ago) but IIRC the Xamarin stuff was barfing on one or more asp.net dependencies. Hopefully one of your links will be to an "Idiot's guide to F# on Linux" and then I'll be in good shape. :-)

</comment></comment></comment></comment></comment><comment><USER26> This completely depends on what you want out of your web backend!

Do you need some sort of rest-like HTTP API? Highly suggest Haskell and the Servant framework! It's amazing.

</comment><comment><USER27> Been using F# in a web-backend capacity for about two years now. Language is great, hits a very sweet spot when it comes to productivity, tooling (F# has some of the best dev tools out there), etc. Interop with the rest of .NET is pretty much seamless, so there's no lack of good libraries.

</comment><comment><USER28> I'd say that in terms of ecosystem, anything running on the JVM is probably going to be the broadest; that is, you'll have the most choices (mostly Java libs and frameworks) to decide from. In terms of functional libs/frameworks, that number will drop a lot, but in practice you'll probably have what you need.

If the JVM or Scala/Clojure doesn't sound like a good time, F# is a good option (I'm biased as I work on it). The ecosystem is similar in that most libs/frameworks on NuGet are for C# developers, but in practice you really won't need them for a web service. Giraffe, Suave, and Freya are three choices that will run on .NET Core today.

<comment><AUTHOR> Out of these 3 (Giraffe, Suave, and Freya) which one do you recommend to a F# newbie?

<comment><USER28> Giraffe and Suave are _likely_ to be easier for a newbie, and both have the "Suave programming model" for API routing, so you'll find the way to set things up is very similar (despite a few different names, such as _WebPart_ and _HttpFunc_ ). Both run on .NET Core as well. The main difference is that Giraffe sits atop the Kestrel HTTP server which ASP.NET Core is built on, whereas Suave has its own web server implementation.

I wrote a blog post about using Giraffe here: [https://blogs.msdn.microsoft.com/dotnet/2017/09/26/build- a-w...](https://blogs.msdn.microsoft.com/dotnet/2017/09/26/build-a-web- service-with-f-and-net-core-2-0/)

</comment></comment></comment><comment><USER29> Eco-system-wise you might want to try compiling from a functional language to JS and target Node.js -- Bucklescript or GHCJS would be my choices. That way you get access to all of the libraries on NPM.

<comment><USER11> I like Fable [https://github.com/fable- compiler/Fable](https://github.com/fable-compiler/Fable)

</comment></comment><comment><USER30> I've been using Clojure on the backend for about 5 years now and find it an absolute joy to work with, having come from a Java background. You get full access to the masses of Java libraries out there as it's on the JVM. Great community support, too.

As an addition, there's also ClojureScript for the front-end. It's come a long way recently, and I've been using it for the last couple of years in production (check out reagent and re-frame if you're interested).

</comment><comment><USER31> I wouldn't call its ecosystem great, but if you like complex type hackery and don't need to do anything very complicated, Ur/Web can get you quite far.

It's very hard to learn, especially if you're not that familiar with Haskell and SML/OCaml, but once you grok it writing CRUD apps is a breeze. Just be prepared to spend a lot of time looking at the standard library's signature files.

</comment><comment><USER32> Do note, that some functional languages have good out-of-the-box support for both backend and frontend. An this is not negligible. I'm using F# which in combination with Fable (F#->.js transpiler) lets me really quickly share code, datastructures and serialization with frontend code.

Now, I'm a primarily a backend developer. But sometimes it is just really convenient to be able to hack together an in-house real-time data-analysis or reporting service and render statistics as webpages rather than .csv documents.

If your frontend team is functional as well, then the benefits of sharing the language could be even bigger.

Sure, not everything is perfect in the F# world. However having the possibility to share code with frontend saves me more time than I spend in fighting with the F# ecosystem. And also: programming in F# is just fun joyful. And productive.

</comment><comment><USER33> I'm surprised nobody mentioned good-old Common Lisp. With quicklisp you get access to a ton of libraries.

For example you might be interested in: [http://8arrow.org/caveman/](http://8arrow.org/caveman/)

Lisp ecosystem is really mature and gives you a lot of freedom.

Dynamic typing, interpeted language, homoiconity, tons of great battle-tested libraries etc., Lisp is truly a great language for backend web development.

Even this very site runs on a homebrew lisp dialect (Arc) running on Dr. Racket (Scheme). If even that bizarre setup (sorry PG :)) can handle this much traffic on a single server, you shouldn't worry about speed or scalibility if you opt for Common Lisp.

<comment><USER34> Interpreted language? Common Lisp is typically compiled. Besides which, why is interpreted a particular advantage? e.g. Python was interpreted 10 years ago when I was using it, but Common Lisp felt far more flexible and powerful, because you can compile single functions with a key press in SLIME and seamlessly load them into your running (compiled) image... shortest feedback loop I've ever experienced. Maybe Python has caught up in the mean time, I haven't used it seriously for a long time though, so I don't know.

<comment><USER33> I instinctively used the "interpreted" term, because mainly you can execute instructions on the fly in an interpreter the language ships with. Whether it's compiled to bytecode and then executed from there is IMHO an implementation detail. With compiled languages (following this logic) such as Java or Go or C, you need to write your program pass it through a compiler to get an output.

With languages like Javascript, Lisp, Python, Ruby etc. you can write your programs incrementally, going back and forth between the REPL.

Sorry if my terminology has caused you trouble. I regard dynamically typed languages that ship with an interpreter as interpreted languages. For optimization reasons the implementation probably uses some sort of compilation but you can still use the built-in interpreter on all of these "interpreted" languages.

I should probably have used the term "ships with an interpreter" :)

BTW the current python-mode in Emacs also allows SLIME-like behaviour. You can open a python process with C-c C-p and then send the buffer, functions, marked areas, lines etc. to the python session.

<comment><USER34> Well, SBCL does not ship with an interpreter, for example. Expressions entered at the REPL get compiled directly to machine code, so there's no difference in performance for a function entered at the REPL (or via SLIME C-c C-c) and one built as part of a batch compile.

Contrast that to Haskell's ghci interpreter, which is slower (last time I checked) than the same code built on the command line with ghc, the compiler. But I would still consider Haskell a compiled language, not an interpreted one, since you never run code in production under ghci, you always ship your binaries.

I suppose it's about perception. To me "interpreter" refers to a language implementation strategy. It's fuzzy, I know, since there is some continuum between interpreting an AST directly, compiling the AST to bytecode and running the bytecode on a VM, JIT compiling the bytecode to machine code on the fly, and compiling offline direct to machine code (like C/Go/Rust). To some ears, "interpreted" can sound synonymous with "slow", which is I guess what prompted my comment.

Finally, to me the place where you can enter expressions to try out your program interactively is the REPL, not the interpreter.

Anyway, thanks for explaining your position to me. (Also, good to know Python dev environments have improved, but I guess it's to be expected, 10 years is a long time :-) .)

</comment></comment></comment></comment><comment><USER4> I got excited by both Elixir and Clojure, but vastly prefer Elixir. That said, Clojure would probably be my second choice and one major advantage is that ClojureScript would allow you to also build out the front-end in the same language. As far as I know Elixir's equivalent, ElixirScript, is nowhere near ready enough for that.

</comment><comment><USER35> js actually supports functional paradigm. So, node.js has the most mature ecosystem for web i guess.

<comment><USER36> There's a huge difference between being a functional language and supporting functional paradigms.

Nearly every major language does the latter, but if you consider immutability a key functional feature, for example, you'll sorely miss it when the language doesn't really support it.

<comment><USER37> You don't need the language to enforce immutability. If the project is small enough, you can enforce it yourself with a linter or by hand.

<comment><USER38> Or use something like Immutable.js, but enforcing immutability on anything but a tiny project is likely to go awry. Takes a lot of discipline from everyone involved.

</comment></comment></comment></comment><comment><USER17> Define "ecosystem for webbackend". If all you want to do is put up a decent HTTP/REST-ish API all large languages have multiple good options.

</comment><comment><USER39> Elixir is a good bet

</comment><comment><USER40> Idris with Idris4Web is a very basic framework

</comment><comment><USER41> Arc?

</comment><comment><USER42> elixir or scala + akka

</comment><comment><USER43> JavaScript.

If you want purely functional, both haskell and clojure do have a good backend community and quite a few good tools.

<comment><USER44> I'd rather recommend TypeScript

<comment><USER45> Have they sorted the differences with async/await? I'd be using if it wasn't from the different implementation meaning you need to use typescript to babel.

<comment><USER46> Sorted already. Transpiles async/await natively.

</comment></comment></comment></comment><comment><USER47> OCaml with Ocsigen</comment>


'Intelligent' embedded devices will be driven by Java, say analysts - <AUTHOR> http://jaxenter.com/intelligent-embedded-devices-will-be-driven-by-java-say-analysts-45593.html

<comment><USER3> Maybe for high end, non battery powered and non mission critical stuff. Java is completely inappropriate for stuff that has to run predictably and reliably, mostly because of the memory management model.

And it's a resource hog in the domain of sub-MMU chips (like Cortex-M), so it's out of the question for cheap or very low power stuff.

And the embedded focus on hardware interfaces means these program won't be portable, either.

It's bullshit. Clearly, embedded software has to catch on with times, but this is not the way.

</comment><comment><USER4> You mean to tell me that Oracle think that embedded devices will run Java? Heavens, I'm shocked.

"Embedded devices" is such a broad term now, that they need to scope it a little better. An ATM running Windows is considered embedded by some definition, which is kind of what I suspect they're talking about here - <USER2> resource-constrained devices like Arduino boards, as inferred by the image at the top of the article.

<comment><USER5> "...embedded devices... will be driven by Java, according to two recent Oracle-commissioned white papers."

lol

<comment><USER6> It gets even funnier when they mention 'security considerations' as a major benefit of using Java for said 'intelligent embedded devices', and that Java was 'originally designed and conceived to run in embedded devices [and] was precisely focused on the portability and productivity problems faced by embedded developers'.

Last few times I read about widespread cross-platform malware that affected Windows, Linux, OS X and even Android, sometimes all at the same time, these exploits were based on Java security holes :-S

<comment><USER7> The security problems came by way of the browser plugin, a different beast entirely.

</comment></comment></comment></comment><comment><USER8> And WHY are we still quoting "analysts" in articles? When whatever conclusions they have apparently arrived at are so obviously sponsored by corporate interests?

</comment><comment><USER9> That's hilarious. There's hardly anyone who runs java on a Raspberry Pi and popular platforms like Arduino don't even support it. The dream of cheap devices that run Java natively never really materialised and now that embedded devices are becoming hot again, there are plenty of other languages available. Arduino has a Java/C-like language that compiles to machine code for its micro-controller and most tutorials for programming on the Raspberry Pi are in Python or Ruby.

<comment><USER10> I wish the OLPC would have succeeded with a machine that was Python "all the way down." Maybe PyPy is a means to this end?

</comment></comment><comment><USER11> Whitepapers funded by Oracle proclaim java the future for embedded programming. Shocking! Surprising!

</comment><comment><USER12> Instead of making snippy comments can someone please explain why java will not be used on embedded devices? There is big demand for java interfaces on wireless sensor networks for instance

<comment><USER9> A good start would be to have a JIT compiler so it actually runs acceptably fast: [http://raspberrypi.stackexchange.com/questions/91/is- there-a...](http://raspberrypi.stackexchange.com/questions/91/is-there-a-jdk- with-a-jit-compiler-available)

</comment></comment><comment><USER13> Actually, Oracle JVM does NOT work natively on the Raspberry PI at all!

It needs a special kernel with (slower) floating point ABI operations, called soft-float [1].

This article is poorly disguised PR paid by Oracle to get its foot back in the closing door of embedded systems market.

[1]<http://www.raspberrypi.org/downloads>

</comment><comment><USER14> Reminds me of a joke:

Knock knock? Who's there? [thirty second pause] Java.

</comment><comment><USER15> "according to two recent Oracle-commissioned white papers."

</comment><comment><USER16> Exception in thread "main" java.lang.OutOfMemoryError:

        at com.embedded.AutoPilot.flight(AutoPilot.java:1240)

</comment><comment><USER17> Wasn't that the reason Java was created in the first place? Like 20 years ago. It was marketed as the software for intelligent toasters.

<comment><USER10> _> Wasn't that the reason Java was created in the first place?_

Set top boxes.

</comment></comment><comment><USER18> I'd comment further on this, bu-- OutOfMemoryError: PermGen space

</comment><comment><USER19> Over a nibble ago, when I was going through my Java love affair I remember a book I was reading, it prophesied Java in taosters. I Believed it back then because I was 11.</comment>


Why 5G will disappoint everyone - <AUTHOR> https://www.itworld.com/article/3310067/mobile-wireless/why-5g-will-disappoint-everyone.html <comment><USER2> 5G does not just enable the use of very high frequencies.

It's also enables cheaper to operate cell sites in low frequency and low energy consumption. You can also have private networks not run by mobile network operator.

5G phone can use 5G features as an anchor for services that go trough 4G network, Wi-Fi when 5G NR is not present.</comment>


Old iPod cables magically works with iPhones and iPad now.  Was it just me? - <AUTHOR>

One of the things that pissed me off when I got my 3GS was that I couldn't reuse my old iPod cables so I had to rebuy new sets of cables for the car, office, etc.
Yesterday, I was about throw these old cables away but, out of sheer boredom, decided to plug them in to see if they would work.  Voila!  3GS and iPad works with the old cables now.
Is this happening for others as well? <comment><USER2> How old an iPod? I have an iPod Nano (the almost squarish version with video, not the long one, I don't remember the generation) and the cable was almost the same as my iPod Touch's (it just had clipping, I don't know why).

<comment><AUTHOR> 1st gen Ipod Video

</comment></comment><comment><USER3> Some women at the airport asked me to charge her new ipod with my 5 yo cable and it fit right in. I was pretty shocked.</comment>


Guide To Start With Application Development - <AUTHOR> http://www.gotchacode.com/2013/02/guide-to-start-with-application.html

<comment><USER2> If you want to build your application from ground than you can go with client side script. there are many framework available for client side like - BackboneJs, EmberJs, AngularJs etc. i like backboneJs because its simplicity, community and it have a good documentation.

For server side i will suggest to pick either ruby on rails or nodeJs. Now a day i am full stack nodeJs developer and i feel great working on it.

and for database you can select whatever you feel good working with them so if you wana to choose NoSql database than MongoDb and radis ara good options Or u can use mysql.</comment>


Show HN: Find members of Congress with similar voting records - <AUTHOR> http://www.congressbuddies.com/static/start.html

<comment><USER4> It's not symmetric! None of Henry Waxman's friends are friending him back, but they're mostly in a clique with each other.

Lonely little CA-33, nobody understands you...

<comment><USER5> I'm not sure I get how it couldn't be symmetric? Is there an explanation or I guess I don't get the definition of like.

<comment><USER6> It's based on how similar someone is to someone else and some people have closer matches than others. Fictitious Example where your listing top 5:

      Adam and Bob are a 80% match.
      Bob and Ted are a 90% match.
      Adam has 1 match better than 75%, but Bob has 5 matches better than 85%.

Thus Adam links to Bob as his #1, but Bob does not link to Adam in his top 5.

<comment><USER7> yep! for a great example, try out Rush Holt ([http://www.congressbuddies.com/?name=Rush%20Holt](http://www.congressbuddies.com/?name=Rush%20Holt))

None of his top-5 "buddies" have him anywhere in their own top-5 lists, which is pretty unusual.

</comment></comment></comment></comment><comment><USER8> Cool! I would love to be able to "vote" on a couple (dozen) bills and see who I vote like.

</comment><comment><USER9> This is fantastic. We need more sites like this. There are so many simple / enlightening / controversial patterns that are just waiting to have some light shed.

I've always thought we need a Congressperson "report card" that just summarizes their voting history. I mean it's really the only thing that matters about them.

Say there are some important arching issue "dimensions":

      - Collective bargaining
      - <USER2>
      - <USER3>
      - Gun Control
      - Civil Rights
      - Same-Sex Marraige
      - Finance Industry Protection
      - Tort Reform
      - Raise Taxes on Rich
      - Raise Taxes on Middle Class
      - Lower Taxes on Rich
      - ...

Each dimension has it's own scale, _[strongly pro, pro, neutral, anti, strongly anti]_

If each bill in Congress is tagged with relevant dimensions and placed somewhere for each, then a Congressperson's record can be grouped on issues... That's what I want. I think the only thing stopping anyone from doing this is having this schema and maintaining the record of where each bill stands on all the important issues. Figuring out how to collate that information is a challenge, but it's definitely doable. In fact I think there are a lot of trustworthy people and orgs willing to pitch in on that. Personally I wouldn't even care about bills very far into the past if we were only capturing this sort of schema for forward-looking data so it can be useful in the future.

I wonder what Taubere / Govtrack.us thinks about that sort of information and how it can be organized. I'm sure he has ideas about it and could give insight. Obviously any analysis beyond yae/nay records has an inherent partisanship, if even slight, which I assume is part of the reason isn't on Govtrack, but he has to have thought about how those kind of data fit to the govtrack schema.

<comment><USER10> Awesome idea: Let's make it pleasant and fun to understand how your congress reps really vote!

Historically, these kinds of things don't get much interest because of the lack of money that can be generated.

That's why crowd funding is exciting. I'd love to see this project as a kickstarter.

A quick search doesn't show any sorts of projects like these already existing. I wonder the reason.

Edit: while kickstarter doesn't have these projects (against the rules?), indiegogo seems to.

For instance, an app that allows you to vote alongside your congressman.

[http://www.indiegogo.com/projects/capitol-bells-mobile- congr...](http://www.indiegogo.com/projects/capitol-bells-mobile-congress- real-democracy)

</comment></comment><comment><USER11> I took a Coursera course this summer on linear algebra which showed how to compute this in one of the labs. It gives you a data file with each of the votes of each of the senators in the 109th congress, and you use vectors and dot product for determining most/least similar voting, mean dem/repub voting, bitter rivals, and whether John McCain is really a maverick.

This was probably one of the most fun labs in any course I've ever taken. The course materials are still online: [https://spark- public.s3.amazonaws.com/matrix/politics_lab.zi...](https://spark- public.s3.amazonaws.com/matrix/politics_lab.zip)

EDIT: Forgot to mention the course material is all in python. It's worth checking out.

</comment><comment><USER12> I get a 500 Internal Server Error on Congressman Raúl R. Labrador (R-ID).

<comment><USER13> Looks like it's a unicode problem, because, if I manually fix the URL to eliminate the accented character, it works:

[http://www.congressbuddies.com/?name=Raul%20Labrador](http://www.congressbuddies.com/?name=Raul%20Labrador)

</comment></comment><comment><USER14> Cool idea, it would be nice if you could provide a little bit more information about why the results are the way they are, or the percentage that they match, maybe recent bills that they agreed on. As someone from Canada I have no idea who these people are or why the relationship would be expected/unusual.

<comment><AUTHOR> Thanks for the feedback. We plan to add a relative index to represent how closely a congressperson votes with respect to one another. The main idea of the map is to show geographic voting trends among congress members. In the future we want to expand on the recent bills idea you gave and provide an in- depth analysis of the different bills people voted on.

</comment></comment><comment><USER15> I'm additionally interested in who never vote together. Do some Congressmen just never agree? Are there aggregate patterns here that change over time [e.g. partisanship]? I believe there's a ton of interesting data in this area, and this is a good starting point.

<comment><AUTHOR> Thanks for the comment. I agree it's a good starting point but theres a lot that can be done. One plan we wanted to implement was a filter to match congressman based on different topics they voted on. Ex funding, etc. For aggregate patterns we would have to look at prior voting records as well, but it seems like a great idea. All our code is on github, and we'll slowly list all the features we want to add on the wiki there.

<comment><USER16> Implementing what I wrote in comment [https://news.ycombinator.com/item?id=6575348](https://news.ycombinator.com/item?id=6575348) would give great insight too. I'm sure a lot is blatantly obvious, but visualizing data is always helpful to reenforce it in someone's mind.

</comment></comment></comment><comment><USER17> Cool tool, but the search interface could use a little work. Some sort of autocomplete would make it easier to find congressmen by name (I typed "Bernie Sanders" when I had to put in "Bernard Sanders").

</comment><comment><USER18> I'd like to see a principal components projection. Are there clusters? The buddies are interesting, but it seems like there's more here! :-)

</comment><comment><USER19> my feeble mind does not understand "See who votes like who in congress". there is no explanation of the site other than those few words.

</comment><comment><USER20> You guys finished it! Come a long way since the FB hackathon.

P.S. Love the title

<comment><USER7> thanks! Yea it's gotten a lot better looking (and hopefully more stable) since then.</comment></comment>


The Valuation Trap - <AUTHOR> http://avc.com/2014/05/the-valuation-trap/ <comment><USER2> I've talked to many founders who seem to forget the basic "economic laws of the universe". You have to create more value (if you're feeling pessimistic, more perceived value) than you take to get something out. It's crazy how many founders get excited about how much they've raised, or at what valuation, while forgetting that basic fact. Every dollar you raise is one you need to put to work more effectively than the general market. A high valuation is basically a "discount" applied to any value you create, the higher the discount the more value you need to create to make the equation balance. It's scary to see founders that have significant exits (>$100m) walk away with very little, because they didn't manage to make that fundamental equation balance.

</comment><comment><USER3> Hard not to respect someone who you starting reading and are saying "Yeah, but you are conflicted..." then hit:

 _Epilogue: I am a VC. I am talking my book here. I don't like to pay sky high valuations. And I like to argue against them. So understand this post in that context. But I am also an investor in companies that have found, and may or will find themselves in the valuation trap. I have lived it, felt it, and suffered from it. It is a real issue_

</comment><comment><USER4> I saw Orion Henry (Heroku) talk about this last year: they got so big they had to make a choice to IPO or accept Salesforce's offer as maybe the last chance to get bought out. Once they got past a certain size suddenly the options shrank.

Seems like a sensible thing to talk about in advance: do you want to become the CEO of a public company, or do you want to get bought out and walk away?

<comment><USER5> What about the third option: be sole owner of a (hopefully profitable) private company?

<comment><USER6> But that isn't VC. When you have outside investors, you have an obligation to give them an opportunity to cash out. If you can bootstrap and own 100%, then you have maximum flexibility.

<comment><USER7> > When you have outside investors, you have an obligation to give them an > opportunity to cash out.

A moral obligation perhaps, but no legal obligation. As long as you control the board, nothing prevents you from taking investors money and essentially pocketing it as long as you can find enough suckers. In fact, one could view the public market as the suckers of last resort, particularly for companies that don't pay dividends and have two-tiered stock structures (e.g. Google and Facebook).

<comment><USER8> In a world where you could get a VC to sign any deal, sure, but realistically any VC investing on a large enough scale will require provisions for a trigger they can pull to get their money back out if their investment survives long enough without liquidity. I'm sure someone can provide more detail but if I recall correctly they tend to be about 10 years out and require that the companies go public or allow the VCs to sell there shares (possibly back to the company) at some certain value.

<comment><USER9> Profitable company's can just get a loan to buy those shares based on a reasonable valuation of the companies value. IPO's are only nessisarily if you _need_ to rase money or are overvalued. Bonds, private equity, institional investors, and plenty of other options exist when you don't need a greater fool.

<comment><USER10> Debt for equity swaps are only of use up to a point. The issue is the ration of one to the other. Which will be proportionate to cash flow and not to paid- in capital (or a multiple therof).

</comment></comment></comment></comment></comment></comment></comment><comment><USER11> I'm generally a fan of Fred's posts, but this one is odd. At least he calls it out at the bottom.

For starters, he's neither an investor in Square nor Box. There is zero evidence that Square was even prepping their IPO. As far as I'm aware, and I keep my ear to the ground, Square hasn't selected any bankers. They are far from even getting ready.

And Box will have no trouble attracting capital. Their valuation is a fraction of Dropbox's.

I'm not sure Fred is really in an authoritative position to write this post. He lacks facts about the two examples he cites. Linking to other news stories that are talking about rumors isn't helping tell a realistic story, it just perpetuates the echo chamber, which is not something he generally does.

<comment><USER12> Good criticism. I saw an opportunity to make a point I've been wanting to make and jumped on it

<comment><USER13> If there was an 'ethical VC' award I'd be happy to nominate you, there are several occasions now that you've managed to make me note you in this respect. Off the top of my head: caring about where LPs get their cash, listing your conflicts of interest up front and admitting mistakes gracefully. Upvote gladly given, I wished I could give more of them.

</comment></comment></comment><comment><USER14> If you ever negotiate with a VC on valuation, you'll hear some variation of this story. It's one of their favorite ones to tell. They all love to warn of the risks of taking too high a valuation. There's some truth to it of course, but what you won't hear are the stories of founders who give away too much of their companies and ended up with a tiny share of their company when they exited. Sure, sometimes you can get hurt by having too high of a valuation, but I know a lot more entrepreneurs who worked their asses off only to walk away with a token amount when they sold their company.

</comment><comment><AUTHOR> I'm skeptical Box can course-correct.

They are in a hyper-competitive space with margin pressure and also seem to have pretty poor SaaS fundamentals (high Customer acquisition costs and illusory LTV)

Fred felt they could slash their cash burn to put the company on better footing but that kills the growth story that they were pitching to public market investors.

The good news in all of this is that it counters to some degree the notion of a bubble as companies with crappy fundamentals are not able to IPO.

<comment><USER15> It's possible you could argue that the pre IPO markets are or were in a bubble phase and the postponement of the IPO is being caused by the broader market rejecting the hyped valuation as the broader economy isn't in a bubble (unlike dotcom bubble where companies were IPOing at hyper valuation). I'm not convinced I buy that, but it is one way of reading the numbers.

<comment><USER16> TL;DR In the broader economy: "Almost every asset is overvalued,"

For those of you that followed the hashtag #2014GC last week you saw this:

"The quantitative easing and the excess money and the low interest rates have driven pricing up of almost all financial assets to beyond what their intrinsic value might be," Joshua Harris, co-founder and chief investment officer of $161 billion private equity firm Apollo Global Management, said Monday at the Milken Institute's Global Conference in Los Angeles.

"So even though we can all chat about the benevolent growth environment that exists in the U.S. and to a lesser extent globally, the ability to make money and invest wisely on that is very, very challenging right now because you're starting at a point in the valuation cycle that is very, very aggressive." Harris added that it's a "time to be cautious" and that Apollo is still looking for investments in sectors that are still relatively depressed. "Almost every asset is overvalued," he said.

Source: [http://www.cnbc.com/id/101620735](http://www.cnbc.com/id/101620735)

Tweet: [https://twitter.com/ldelevingne/statuses/460800459972681728](https://twitter.com/ldelevingne/statuses/460800459972681728)

</comment></comment></comment><comment><USER17> If your company is losing money every month, then _any_ valuation can present a valuation trap. Founders and investors are both speculating that there will be profits down the road. Sometimes they are right. Sometimes they aren't.

</comment><comment><USER18> The trap exposes the dirty little secret: you're not building a product to sell to customers, you're building a product to sell to investors.

The exit is the massage.

<comment><USER19> True but in business that is still a model. The idea in business is to make money. Just like in sports the idea is to win the game. Which is not the same as saying "at all possible costs" but nothing really inherently wrong with playing the game this way. Imo of course.

For all the stories that you read about business success you never know what happens behind the scenes. But you also don't know about those that played, say, a fairer game, didn't make it (a lot of money that is) and that you've never heard of either.

<comment><USER18> I agree it's a business model. Unfortunately I don't think many of the startup participants are aware they are the product.

</comment></comment></comment><comment><USER20> It is interesting to see that both Google and Microsoft were profitable before going public.

The ratio from cash raised/revenue at IPO is something investors should look at before buying stock.

A company should not go public while loosing money, that is what venture capital exists for.

<comment><USER21> But, on the other hand, Amazon lost money for _years_ after it went public.

</comment></comment><comment><USER22> TIL Facebook had a down round:

[http://avc.com/2014/05/the-valuation- trap/#comment-136902035...](http://avc.com/2014/05/the-valuation- trap/#comment-1369020357)

<comment><USER23> This was mostly due to macro-economics and the fact that the down round was after the Microsoft investment which valued Facebook at 15 Billion.

[http://www.businessinsider.com/2008/12/facebook-get-ready- fo...](http://www.businessinsider.com/2008/12/facebook-get-ready-for-a-down- round#!IkZMf)

</comment></comment><comment><USER24> When a company is the size of Square and Box, why not just raise a down round—a round of financing that values the company at less than the previous round?

Valuations are lower than they were three months ago. Companies that were once worth billions of dollars now find themselves with lower valuations.

Prices will always fluctuate as a result of market forces.

<comment><USER25> Companies are usually reluctant to raise a down round due to anti-dilution provisions:

[http://www.businessweek.com/smallbiz/content/jan2009/sb20090...](http://www.businessweek.com/smallbiz/content/jan2009/sb20090123_008974.htm)

<comment><USER26> Even if there are not anti dilutive preferences, both management and existing investors are likely to leave a down round as their last resort, simply because of the dilutive impact it would have.

</comment></comment></comment><comment><USER27> My view on this is only take on a crazy sky high valuation if it leaves you with tons of cash on hand so that you then have years for runway left. The converse is don't take tons of money, if you then immediately turn around and start spending at an even crazier rate than before.

The positive example that immediately comes to mind is Github's $100M investment from Andreesen Horowitz. Of course, perhaps all that money led to some other problems down the road (that are now only coming to light.)

To troll, Mr. Horowitz a bit: "Mo Money Mo Problems" \--Notorious B.I.G.

</comment><comment><USER28> When you raise money, you are taking a gamble on the future. You expect that your current situation will be improved with an inflow of cash that allows you to pursue an opportunity higher hurdle rate. If any of those assumptions were wrong at any point including general macroeconomic issues (like beta), then you are stuck. If an investor has faith that those false assumptions could be reversed or are irrelevant, then you get additional funding. Valuations are just what everyone is willing to cope with.

</comment><comment><USER29> Downrounds are not a tragedy though. If you can take the money without giving up too much equity (which a high valuation is tantamount to), I would think carefully before considering any other option.

</comment><comment><USER30> Yes, although founders and early employees of companies at this stage can often exit by selling on the secondary market. For individuals the trap is somewhat porous.</comment>


Cell phones more sophisticated than guidance systems on some nukes - <AUTHOR> http://blogs.knoxnews.com/munger/2010/10/corker_if_every_american_knew.html

<comment><USER2> Sophisticated != good, necessarily.

I trust solid-state electronics (or whatever those old tracking systems are using) as long as our military does. What I would be more worried about is components deteriorating. However, I'll take an older but less error prone unit over a newer more sophisticated but more error prone unit any day.

Voyager 1 was older and less sophisticated. Launched September 5, 1977 and still going, reporting useful data back at least as recently as December 2004.

Mars Climate Orbiter was newer and more sophisticated. Launched December 11, 1998 and crashed September 23, 1999. Software failure.</comment>


Why consistency in icons is important and how to achieve it - <AUTHOR> http://blog.scoutzie.com/post/36068395929/consistency-in-icon-design <comment><USER2> Most consumer products that use icons to represent user actions would communicate more clearly by simply labeling the controls in English. Yes, even in parts of the world where English is not the main language spoken at home, it is a lot easier to look up what an English word means than to look up what an icon means. (Have you ever tried to use any online search service to visually look up what an icon means? When you ask your friends about an unfamiliar icon on a website or on a tangible consumer product, do they readily know what it means?)

<comment><USER3> Case in point: the gmail action icons. Oh god, why? They used to be simple text labels, and now every time I use them I have to hover over every icon looking at the text popups to find the one I want.

<comment><USER4> After the first 20-30 times where I had to take a few seconds to work out the difference between the select and archive icons, I just started using the keyboard shortcuts exclusively. Archive is 'y', it has always been 'y'. Fortunately they haven't managed to break the keyboard interface.

Google are famously data-driven, but I really can't imagine how they're finding empirical support for the idea that abstract monochrome icons are more effective than clear text labels.

<comment><USER5> Archive is "e", canonically, and I'm not sure what logic is munging the purpose of "y" to remove label(s).

<comment><USER6> "y" means "remove from current view", to be exact.

So if you click a message from the "Work" label, it removes the "Work" label. And if you click a message from Inbox and hit "y", it removes it from Inbox (i.e. archives it).

</comment></comment></comment></comment></comment><comment><USER7> I'd hate to see icons disappear in favor of textual labels. Then my phone's app drawer would just be a page of words, which would blend themselves into a giant morass of meaningless letters, making it difficult indeed to find the app I'm seeking. Likewise, I'd hate to see labels disappear in favor of icons --I'd never figure out what some of these things are. What's that tri-colored Slow Moving Vehicle sign supposed to mean? Oh! it's Google Drive! Of course!

I depend on the labels when I've just installed a new app on my phone. After a while, when I've learned to visually associate the icon with the app, I depend on the icon to locate the app more quickly than scanning the labels. The app's position within the app drawer changes frequently, so eidetic memory doesn't serve me well there.

I'd say there should be a setting within every app that allows you to display or hide the label, but even as I consider that, I reject it, because it gives the app drawer an inconsistent look. And if I stop using an app for a while, I might forget what its icon looks like, and have to fall back on the labels again.

</comment><comment><USER8> My main problem with icon design is that I see people spend tons of time on their look and feel, and then they fail to label them, either due of lack of UX experience or arrogance (or both).

<comment><AUTHOR> Actually, a good icon doesn't need a label. If it is properly designed, it would be intuitive enough to explain to the user its purpose.

For example, an airplane taking off, that is an icon that clearly shows departures at the airport. Trash can, as we are all familiar with it now, is an obvious way to throw something away ...etc.

You can have labels, where possible, if you're using icons, chances are you are already tight on space.

<comment><USER8> That is assuming the user is familiar with both the application and the skeuomorph you're using.

For example: My android phone has a loupe icon in the corner of the screen. It's arguably an universally well known skeuomorph. And yet, what does it do? Zoom? Search? Search what? My apps? The web?

<comment><USER9> I don't think anyone is expected to automatically understand what the icon does when they see it for the first time. Rather, with good icon design the number of times they tap it before they internalize what it does is minimized.

</comment></comment></comment></comment><comment><USER10> His criticism seems reasonable.

However, I would like to see this combined with a discussion of how to achieve something better (despite the post's title, it is just a short discussion of some icon's problems sans any discussion of what to do about this). As a non- designer occasionally having to pick or create icons, I find extremely hard to find _any_ symbol that effectively _symbolizes_ the action/object I want it to. And drawing such a thing in limited space is obviously a problem too. How do you that _and_ avoid problems of uneven abstraction level, uneven stroke level and so-forth. I've seen icon sets with very even stroke level but which had the even more deadly problem that you couldn't tell what a substantial portion of the icons _were_. That's much worse than uneven design in the end, I'd say.

</comment><comment><USER11> I felt that the inconsistency this post talks about was a good way to emphasize the difference between the "launch an app" icons and the "perform an operation" icons.

</comment><comment><USER12> Good to see I wasn't the only one to find the icons on iOS 6 share button _atrocious_.

</comment><comment><USER13> This is an interesting discussion along these lines >

[http://blogs.adobe.com/brandexperience/2012/05/16/the- cs6-de...](http://blogs.adobe.com/brandexperience/2012/05/16/the-cs6-desktop- brand-system/)

</comment><comment><USER14> I must not be cool enough; I think the icons look fine.

</comment><comment><USER15> tooltips and hover... Most apps have both, localized tooltips in the user's language. people don't look up icons, they look at the tooltip/hover text and learn to associate the visual reference with the action. Just like they do the bathroom signs.

<comment><USER16> How does tooltip and hover work on an iphone/ipad app?

</comment></comment><comment><USER17> Two additional tips: 1) use a grid to keep proportions honest. 2) read and follow these two guides if you target apple platforms.

[http://developer.apple.com/library/ios/ipad/#documentation/u...](http://developer.apple.com/library/ios/ipad/#documentation/userexperience/conceptual/mobilehig/IconsImages/IconsImages.html)

[http://developer.apple.com/library/mac/ipad/#documentation/u...](http://developer.apple.com/library/mac/ipad/#documentation/userexperience/conceptual/applehiguidelines/IconsImages/IconsImages.html)</comment>


Startup with Steve Wozniak as chief scientist fails after raising $100M - <AUTHOR> https://www.bizjournals.com/sanjose/news/2018/01/22/startup-with-steve-wozniak-as-chief-scientist.html?ana=fbk <comment><USER2> The role "Chief Scientist" sounds fishy to me. A smart investor might wonder what exactly that means. I recently decided to avoid purchasing from a high- end audio equipment company (Sweetwater Sound) where commissioned sales reps have the title "Sales Engineer".

</comment><comment><USER3> Another in Steve Wozniak's long list of failures. Which all started with his fateful decision to leave Apple. One of the biggest mistakes of all time, I'd say. But I guess he's happy, he took his shares and then stopped contributing anything to the world.

<comment><USER4> Yeah, his previous stint at Fusion-io went public and reached only a $2 billion evaluation. _Loser_!

(That's not to credit him specifically with any if its success, but hanging a "failure" tag on him is just odd.)

<comment><USER5> [Fusion had issues under Woz]([http://www.businessinsider.com/fusion-io- reports-loss-cfo-le...](http://www.businessinsider.com/fusion-io-reports-loss- cfo-leaves-2013-10))

Woz's [Wheels of Zeus (Woz!)]([https://en.wikipedia.org/wiki/Wheels_of_Zeus](https://en.wikipedia.org/wiki/Wheels_of_Zeus)) didn't do well either.

Neither of these less-than-glowing experiences redeem him from walking away from Apple before it's prime. Many share-holders kick themselves for doubting Apple in this era. Woz should be no different. Except he says unusual things to the media that exacerbates the more ignorant type of nerd you come across now and then.</comment></comment></comment>


200 TB of 1000 genomes data on Amazon S3 as a public dataset - <AUTHOR> http://aws.typepad.com/aws/2012/03/the-1000-genomes-project.html <comment><USER2> I know very little about genomics and biology and would love it if someone who knows more could answer my silly questions to help me understand this more:

\- This has genome data from 1,700 people. In theory could a company build a machine that read one of these "files" as input and made a baby as output?

\- It says the dataset is 200TB. If 1 person has 3 billion dna bases(which I understand can be 1 of 4 values or 2 bits), it seems that even uncompressed the dataset would be 6billion bits (<1GB per person) and so only ~ 1.7TB uncompressed for 1,700 people. What am I missing?

<comment><USER3> Maybe some of the people contributing answers to this comment thread could also suggest some literature on bioinformatics? (specifically for Software Engineers with limited biology backgrounds)

<comment><USER4> More specifics about what you're interested in? I work in the space (human genetics - we analyse the output of 1000 Genomes) and happy to help, but "bioinformatics" is pretty broad.

I'll also note so much of the human genetics space is so new that most knowledge is still couped up in academic papers - there aren't very good resources for the general public. A colleague helped edit a textbook in 2007 on genetic analysis (which would still be considered "new" in textbook space), and none of the tools in that book can be used with 1000 genomes data.

<comment><USER3> Maybe some broad-sweeping entry level books or literature reviews would be good. For me (and possibly many others on hn), the extent of my knowledge in the field as a whole is pretty small so I think some introductory resources geared towards someone coming from a strong software or math background would be best.

<comment><USER4> (The following are all for genetics, others can chime in on other areas or bioinformatics in general.)

\-- I'm bias, but I think the best entry level book is still from 1998 - Genome by Matt Ridley [1]. It's what got me interested in genomics as a CS undergrad (I read it in 2009). Another decent one is The $1000 Genome [2], it gives a good cross section of genetics in 2010.

\-- Our group has a series of intro lecture videos from last academic year [3]. They are fairly up to date, and this year's videos will probably be posted soon.

\-- Genomes Unzipped is great if you prefer a blog [4]

\-- I think the best way to actually learn this stuff is to just play with the software tools. They all point to open data in the tutorials. Biopython's tutorial is particularly good - just google the biological terms as you go. Bioconductor has some good (though more targeted) tutorials too.

\-- Going to talks can be a great way to get a broad overview of the space. Drop me a note if you happen to be located in Boston.

\-- Finally, this goes without saying, but don't take articles in the mainstream media at face value. (Including, and in fact in particular, the NYT.) Every time I get together with relatives I have to argue against the latest grand prediction.

[1] [http://www.amazon.com/Genome-The-Autobiography-Species- Chapt...](http://www.amazon.com/Genome-The-Autobiography-Species- Chapters/dp/0060932902)

[2] [http://www.amazon.com/The-000-Genome-Revolution- Personalized...](http://www.amazon.com/The-000-Genome-Revolution- Personalized/dp/1416569596)

[3] [http://www.broadinstitute.org/scientific- community/science/p...](http://www.broadinstitute.org/scientific- community/science/programs/medical-and-population-genetics/primers/primer- medical-and-pop)

[4] <http://www.genomesunzipped.org/>

<comment><USER5> Thanks a lot for these - been looking for a solid set of resources on this for a while.

</comment></comment></comment></comment></comment></comment><comment><USER4> The best dataset for this audience is probably the most recent curated set of variant calls on 1000genomes.org. (Incidentally, the data access links appear down at the moment...)

This provides data in VCF format [1], which I would argue is the lowest level you want to go with this data unless you are doing variant calling methods development.

One tool you can use to analyze these data is PLINK/SEQ [2] (disclaimer: I work on the project). If any C++ devs are interested in contributing, let me know. (We'll have the source on Github soon...still pushing my group to learn Git :)

[1] <http://www.1000genomes.org/node/101>

[2] atgu.mgh.harvard.edu/plinkseq/

<comment><USER6> Since you are involved with PLINK/SEQ, you might be able to answer this.. Can you recommend any reading for learning how to perform admixture analysis/visualization? I'm interested in seeing the workflow behind starting with raw genomes and producing visualizations similar to Dodecad.

</comment></comment><comment><USER7> The burden has shifted from the bio to the informatics. We need to be able to sort through this much data without needing access to university-scale computer facilities.

<comment><USER8> At Ion Torrent we are working this problem as well. We are always hiring too <http://iontorrent.com> All of our software is open source <http://github.com/iontorrent>

<comment><USER9> which language the software is written in?

<comment><USER10> This is a question you can answer yourself by simply clicking on their github link. Their four public repositories are in C, Lisp, C++, and Java.

</comment></comment></comment></comment><comment><USER11> I'm still not 100% sold on these big sequencing projects. Sure, you get the genomes of a bunch of individuals, and then you do a bunch of GWAS on it to see if you can find some mutations that are linked to any phenotypes. It just doesn't seem very exciting. I love the idea that if you're working on any cell line/individual, you can just get it sequenced for decreasing amounts of money, but I'd love to be sold on some big picture stuff as to why 1000 genomes matters (and if GWAS actually has lived up to its promise).

That said, I've got a paper coming out real soon now that looked at the relationship between mutations across individual strains of Arabidopsis, and how (surprise surprise) you have fewer mutations in areas of proteins that potentially carry function, so I do think it's somewhat useful!

<comment><USER12> > why 1000 genomes matters

Gotta start somewhere. And 1000 data points is more than enough to get some statistically significant results.

<comment><USER13> Unfortunately, as far as I know there is very little useful phenotypic data along with these genomes to work with. I would rather have fewer genome sequences with better phenotypic information. Even with just 35 genome sequences of "individual" yeast genomes I could do a lot more interesting analysis because they are well studied in turns of phenotypes.

<comment><USER14> The point is to look at genomic variations across the entirety of the human genome, not so much to match genomic variation to phenotype. What you're saying makes sense, but I think that is more a next step.

</comment></comment></comment></comment><comment><USER15> I dig this. However, unless I'm understanding S3 usage improperly, to use it you essentially have to clone that entire S3 bucket and pay for the monthly usage yourself of 200TB- correct?

Not the biggest deal in the world if you're seriously crunching on it... but something to consider.

<comment><AUTHOR> The 1000 genomes bucket is open to the public, so you don't need to clone it for your own purposes. Any data you generate will need to be in your own bucket.

<comment><USER11> And that bucket that you put your intermediate data in will be by itself pretty large. Or any processing that you do on this data will be computationally expensive. Either way, Amazon is attracting some new customers.

</comment></comment></comment><comment><USER16> Has anyone tried writing a life emulator that could read this gene code and then virtually generate a baby? This would be really cool for injecting one's self into an MMRPG, at least one where you could be a baby.

</comment><comment><USER17> Similar to other questions, but can anyone explain what exactly this data is and what analysis is being done on it?

<comment><USER14> <http://en.wikipedia.org/wiki/1000_Genomes_Project>

Here's the project explanation, but the data itself is 1000 complete (hopefully!) genome sequences. The hope is to find the variants, be it single nucleotide differences, copy number difference, etc. Where I work we use it to help figure out SNP (single nucleotide polymorphisms) to see if something we sequenced is a mutation or just a variant with no effect.

</comment></comment><comment><USER18> I would be interested in how much this dataset costs to run every month. Anyone able to shed some light on this?</comment>


Why we have our best ideas in the shower: The science of creativity - <AUTHOR> http://blog.bufferapp.com/why-we-have-our-best-ideas-in-the-shower-the-science-of-creativity

<comment><USER2> I always have good ideas in the shower or walking to get somewhere.

I think lack of distraction is a huge part of it. When I'm showering, there is nothing else I can reasonably be doing. There's no email to check. No twitter to read. Just me and my thoughts.

</comment><comment><USER3> A show is like a dream. There are so many images, so many ideas that cross my mind during a shower. But they can be just as easily forgotten as a dream if you don't deliberately memorize them after the shower.</comment>