What Do Happy Teens Do? - <AUTHOR> https://www.psychologytoday.com/us/blog/our-changing-culture/201808/what-do-happy-teens-do <comment><USER2> I find two problems with these kinds of studies:

(1) How are you defining "happiness"? If you define happiness as social interaction, obviously the introverts will be "unhappy". Here, this study seems to define it as "psychological well-being (measured by self-esteem, life satisfaction, and happiness)". Is being unsatisfied bad? I would argue that it is not necessarily true. Unsatisfied people tend to bring change to society. So what are we trying to optimize for? You improve what you measure. Are we measuring the right metric? If having high levels of dopamine is happiness, is it ok to inject everyone with dopamine to make them "happy"?

(2) Are these activities symptoms of unhappiness or causes? I think they are just symptoms. The more I study about this, the more I feel that "unhappiness" is more of a trait. Mostly genes and internal hormones and chemistry and biology. This constant push to be "happy" makes life worse for the "sad" people.

<comment><USER3> To be satisfied means having one's own needs or desires met. What we are optimizing for, in this case, is people's self-reported evaluation of their own value function.

That being said, I think there is merit to your second point, although I don't believe we have enough evidence to know.

<comment><USER4> > _That being said, I think there is merit to your second point, although I > don't believe we have enough evidence to know._

There was a nice research summary posted on LessWrong some long time ago:

[https://www.lesswrong.com/posts/ZbgCx2ntD5eu8Cno9/how-to- be-...](https://www.lesswrong.com/posts/ZbgCx2ntD5eu8Cno9/how-to-be-happy)

It mentions various "factors that correlate with subjective well-being (individuals' own assessments of their happiness and life satisfaction)". Quoting from it: <<<

Factors that don't correlate much with happiness include: age[7], gender[8], parenthood[9], intelligence[10], physical attractiveness[11], and money[12] (as long as you're above the poverty line). Factors that correlate moderately with happiness include: health[13], social activity[14], and religiosity[15]. Factors that correlate strongly with happiness include: genetics[16], love and relationship satisfaction[17], and work satisfaction[18].

(...)

Genes account for about 50% of the variance in happiness[19]. Even lottery winners and newly-made quadriplegics do not see as much of a change in happiness as you would expect[20]. Presumably, genes shape your happiness by shaping your personality, which is known to be quite heritable[21].

So which personality traits tend to correlate most with happiness? Extroversion is among the best predictors of happiness[22], as are conscientiousness, agreeableness, self-esteem, and optimism[23].

>>>

Numbers I put in square brackets in the quote above are all references to papers. The article goes on to discuss how those correlates suggest effective ways of improving your own happiness.

I'm not in the field so I won't judge the quality of the referenced research, or how much results have changed since 2011, but still, it seems that we do know quite a lot about this.

(Also note that, despite it being very unpopular fact, genes seem to pop up as strong - even leading - predictor in very many personal traits, including intelligence.)

</comment></comment></comment><comment><USER5> This is a good and simple thing to focus on. My working theory—-as a parent of a soon-to-be teenager—was that teens are missing out on any true responsibility. No one expects them to do anything that actually is crucial to the family or community. That said, I don't yet know what that will be for my kids. Maybe some kind of service thing weekly, or maybe it's some critical chores.

<comment><USER6> I have much younger kids, and we also think this is very important. It seems like everything in a kid's life is so nerfed. For us it starts with letting the kids do things on the playground with an actual risk of injury (obviously we're trying to avoid actual serious injury, but we think the kids need agency).

It also involves letting them make decisions that can have bad outcomes that are largely harmless when they're young, like getting a stomach ache from too much candy, and clearly connecting the act to the consequence. So far it's worked pretty well, our kids have a good idea of what's healthy and what's not.

We're also going to do something like set up Etsy stores for the kids so that they get experience with buying supplies and making a product that's good enough for a stranger to buy, manipulating the web page (and eventually we'll move on to them making making their own Shopify or Wordpress sites), and running social media accounts for the businesses and what not. We're already getting one store started for our five year old who's really interested in making money (for now).

We're doing a lot of it now, but we're planning on having them take on more and more responsibility as they get older. Instead of doing chores (or in addition), they'll be actually interacting with the world in a way that's analagous to adulthood. Who knows how it will play out, but we're excited to see what happens.

<comment> crooked-v Another 'real world' skill your kids will really thank you for eventually is cooking a full meal from scratch, including knowledge of meat temperatures, spices to use, timing different dishes, and being able to calmly handle the inevitable 'the kitchen is filled with smoke and all the fire alarms in the house are going off' cooking mistakes.

Another (and related) field would be basic first aid, and more importantly being able to handle injuries more-or-less calmly even when you've cut your hand open or dumped a bunch of very hot water on yourself.

<comment><USER7> I had to cook dinner once a week from when I was about 13 years old, so by the time I left home at 18 I was pretty confident in cooking.

I was shocked at how may people at university were completely incapable of cooking. Boiling water was about the most complex cooking skill they had. I have a colleague who's a fresh graduate and still lives at home, she admitted to me that she has literally no idea how to cook. Like even something as simple as spaghetti Bolognese (i.e. the stuff from a jar, just add ground meat and pasta) would be beyond her.

<comment><USER8> I find it even more troubling that people like this apparently cannot read instructions and follow them.

There's a simple stepwise list of instructions on the box/can/jar. They're making it as easy as humanly possible, short of actually providing a person to cook for you, and yet some people still can't do it.

<comment><USER9> I resent the smug tone of this post. I have ADHD; I am neither lazy nor stupid, but cooking is an ordeal for me. I cannot follow cooking instructions, at least not reliably. I'll look at the list of ingredients and get the amounts wrong (mix up one line for the line below/above it), or do the steps out of order. I've forgotten to put the flavor packet in the pot when making Hamburger Helper. I've put chocolate chips into a cookie dough mix too early, meticulously picked them out, then _dumped them right back in again_.

Congratulations for you that cooking is simple and easy. It isn't for everybody.

<comment><USER7> I understand that it may be difficult for you, but the people we're talking about don't have ADHD, they're just lacking in basic life skills.

A lot of people spend their first 18 years with no responsibilities, they always had a parent or someone else to do things for them. They are then rudely awakened when they leave home and have to fend for themselves.

A lot of the skills that they were missing were things that I had been doing for years, because I was fortunate enough to have parents who taught me how to do things rather than just doing it for me. I disliked it at the time, having to do my own work, but it was important to learn.

Often the skills that my friends were lacking were just basic life skills, such as being able to sew on a button or a patch, how to operate a washing machine properly, how to change a car tyre or their oil (or at least check their oil), how to iron a shirt, etc. etc.

They were also lacking in more important life skills, like being able to budget properly and look after their money. I knew a group of girls in one house who ended up spending hundreds of dollars a month for electricity in winter, because they were running heaters in every room 24/7 to try and keep their uninsulated house warm, they just didn't even think of what their power bill would be and were shocked when they received it. I can't remember exactly what it was, but it was more than double what me and my housemates were paying.

<comment><USER8> I think part of the problem is that a lot of people refuse to even try, maybe because something is not immediately obvious to them, or because they're afraid to fail.

They're simply lacking in basic curiosity and cannot accept that sometimes you have to fail, in order to learn.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER10> For some reason it jumped out at me that they considered time in religious services as a measurable component of how an ordinary person might spend their time. I can see how it might be relevant to the topic at hand but it's quite uncommon for me to encounter a normative discussion of religious activity as an unremarkable thing.

Is it common (i.e. do I live in a bubble) or is it a marker of something about this article that I am missing? I pretty much only encounter mention of religion in the news headlines and am not sure I even know anyone who attends any kind of religious service more than two or three times a year.

It may be quite common and I might live in a bubble, but then is it mentioned routinely?

<comment><USER11> I think it depends on where you are.

I lived in Indiana the first 35 years of life, generally in towns with 3000-70,000 people. It was quite common for folks to go to church. Single? Want friends? and so on? You needed church. It was really, really common. To the point that folks weren't as willing to be openly athiest or customers at a retail place to assume that since employees were nice, they must all be good Christians. It was definitely mentioned, and wasn't uncommon for folks to ask where others went to church.

I always got the impression that larger cities or different areas were more free with this sort of thing.

I now live in Norway, and I know very few folks that spend a lot of time at church. There definitely aren't nearly as many of them here in town, and I think half the churches are as much of a tourist attraction as they are places for congregation. There is also more activities that aren't connected with any sort of religion here as well - organized volunteer work, for example, with no affiliation with religion.

<comment><USER10> > I always got the impression that larger cities or different areas were more > free with this sort of thing.

Historically that's been one of the points of cities: if you don't like the rules where you live you go to a city where there are too many people for that sort of conformism. Of course some cities become large enough that they can have self-selected pockets similar to smaller conurbations. Interesting that the 70K town you lived in (not much bigger than Palo Alto) also exhibited this culture, though presumably less intensely.

</comment></comment></comment><comment><USER12> My hypothesis for which I have only anecdotal evidence is that us evolved monkeys still thrive with face to face social activity. We need body language, voice, faces, and even touch. A sense of community. If you look at the chart, pretty much all activities correlated with happines are social. I'm an atheist and I interpret positive effects of religion on wellbeing is that churches gathering places, and prayer is close to meditation. And social media so down on the list... it's a SUBSTITUTE of normal interaction.

<comment><USER13> Your hypothesis is supported to some extent by this: [https://stpauls.vxcommunity.com/Issue/Us-Experiment-On- Infan...](https://stpauls.vxcommunity.com/Issue/Us-Experiment-On-Infants- Withholding-Affection/13213)

TL;DR if you feed new born babies but don't give them any human affection they die.

(I heard about this a long time ago but have never found the actual research so there's a chance this isn't true.)

<comment><USER14> Not exactly this but close enough IMHO: Romanian orphanages during dictatorship [https://amp.livescience.com/21778-early-neglect-alters- kids-...](https://amp.livescience.com/21778-early-neglect-alters-kids- brains.html)

</comment></comment></comment><comment><USER15> The basic thesis _might_ be true in general, but the bias in treatment is so apparent:

> Instead, [listening to music] often means a teen who has shut himself in his > room or used her earbuds as an armor against social interaction.

And that's what garbage journalism looks like, kids.

<comment> nv-vn The fact that TV news is so highly correlated with happiness basically reveals that something significant is wrong with the data.

</comment></comment><comment><USER16> I think the screen time-happiness causation might be backwards. When I was a miserable, angsty teen, messing around on the computer was the only time I could focus on something and distract myself from being extremely emotional. Being around my friends generally made me anxious and depressed. I was drawn to the computer because I consciously knew it was relief from unhappiness.

</comment><comment><USER17> Based on my (arguably hazy, at this point) childhood memories, maybe what's making teens unhappy isn't so much smartphone use, but better networking with other teens.

<comment><USER11> Based on my own memories, smartphone use would have been a bonus. I went through times with literally zero friends. It upped to a small group of 3-5, and after we moved I only really had 1 friend for a few years.

That time with no friends: For a few preteen years, I didn't do my homework, which meant I got lunch detention. I had loose friendships with some kids I knew in elementary school, but we didn't speak in school. Then we moved when I was 13. I got labeled lesbian and people ignored me for the rest of the year. (I'm bisexual, but didn't really realize I was looking at the time) I made a few friends from other middle schools the first year of high school, hence the small group of friends.

I remember getting AOL my last year of high school - for a short time, anyway, until I ran up the bill due to the hourly billing. It was wonderful to simply talk to other folks my age, one of which also got snail mail for a while. I felt less lonely.

It makes it really hard for me to understand the internet making folks lonely or unhappy - it has always enhanced my life to this day when I've had regular accesss (I'm 40 now). I even met my spouse playing a text-based MMORPG, so I wouldn't even have my life without it.

Maybe this is different for kids that are more "normal" than I ever was.

</comment></comment><comment><USER18> I first read this as a condemnation of phone use, but that may just have been a bias. On a second reading, I found that it was very careful in specifying that all observations were correlations:

>Because this analysis is correlational, we can't tell if these activities cause happiness, happiness causes teens to engage in these activities more, or if the same type of teens do both.

I'd be very interested in seeing a randomized trial to find causations, but the ethical implications get in the way one again.

</comment><comment><USER19> Is psychologytoday considered an authority in the psychology space?

This isn't specifically about this article but I have read a number of psychologytoday articles recently and they feel like their are opinion pieces loosely backed by studies. This article seems like pretty sound advice, but sometimes I worry that some articles get presented as cold hard scientific facts when they are really just one model or theory.

<comment><USER20> The replication crisis in psychology started by selecting high impact papers published in reputable psychological journals. Cold hard scientific facts and psychology simply do not go together. And that's not necessarily a condemnation of the field, but rather just a statement that it should be viewed as observations with proposed explanations rather than 'cold hard scientific fact.' For instance I think this little article does a good job of making clear to the reader that what they're discussing is entirely a correlation. There might be reasons for this, or it could just be entirely spurious.

<comment><USER21> No one should really be considered an authority in the field of psychology. Sure they can get things right sometimes but it's not rigorous enough fundamentally to add much validity. It's their bread and butter to spam NHST at the data until something sticks.

</comment></comment></comment><comment><USER22> They _sing_ while they're playing and/or working at the computer.

<comment><USER23> "But mom, I'm trying to show my Minecraft castle to my uncle!"

</comment></comment><comment><USER24> This seems obvious...as the author says, face-to-face interaction leads to happier (people) teens (bar sleep). People with friends seem to spend more time face-to-face with other people.

This seems like a no-brainer.

<comment><USER25> The simple and traditional "introversion = evil extroversion = good" meme is tempting, but alternative explanations are possible.

For the majority, which are introverted, possibly "everything must be social on smartphones" combined with non-face-to-face interaction means phone-time means they never get that alone time to recharge and feel better, can never quite get away from the dreaded notification pull-down drawer.

Imagine a world where cultural pressure combined with advanced social media technology makes meditation and introspection and privacy and serenity impossible; for some people that would be heaven, others, hell, regardless which, its certainly what we have now.

Another interesting theory, possibly even accurate: kid-only interaction is inherently bad, in the "Lord of the Flies" sense. Adult interaction might be good, Cross-age tribal interaction might be good. Possibly all kid-only interaction is bad and has always been bad; its certainly very artificial and non-evolutionary and pre-social media there have been critiques of the culture produced by kids interacting solely with other kids. If that theory is correct, then a hand-held device that pumps more of something that can only be poisonous would likely make most kids more unhappy on average. If a culture of "Lord of the Flies" sucked, then "Lord of the Flies, now as a social phone app" is merely going to suck more.

<comment><USER17> When I was a kid, I generally avoided other kids. With a few exceptions. Because, as you say, "Lord of the Flies" bullshit. And damn, I like that: social media = "Lord of the Flies" :)

</comment></comment></comment><comment><USER26> I did and still do a lot of the 'unhappy' activities and few of the 'happy' activities. I seem fine. What gives?

</comment><comment><USER27> I'm very happy developing mobile solutions....

</comment><comment><USER28> Obviously it's beyond the purview of the study, but I have to imagine the correlations aren't too far off for adults either.

</comment><comment><USER29> I'll take the down votes, but when I saw the title in my RSS feed, my initial answer was "Eachother.

</comment><comment><USER23> Hang out with friends, goto the mall or other hangouts, play Minecraft, watch Youtube and Twitch and Vine and try to make their own videos, ride bicycles, and argue with their parents.

A few things have changed, but teen-age is largely the same as it was for us.

<comment><USER30> No its not. Read the authors book, igen. Crucial difference - kids are more depressed and lonely

<comment><USER23> These are what my happy nieces do.

What is the author's source? A paywalled summarizing study that analyzed data from other studies: [http://psycnet.apa.org/doiLanding?doi=10.1037%2Femo0000403](http://psycnet.apa.org/doiLanding?doi=10.1037%2Femo0000403)

\- Was any primary research conducted? You'll have to pay $12 to find out.

<comment><USER17> Damn :(

        sci-hub
        •• Search for a proxy to download an article ••

        Decreases in Psychological Well-Being Among American
        Adolescents After 2012 and Links to Screen Time During
        the Rise of Smartphone Technology.

        Twenge 2018

        10.1037 / emo0000403
        no suitable proxies found

</comment></comment></comment></comment><comment><USER31> How come that video arcades are in that list? I know that in some countries they still exist, but as relevant part of teenage culture? Hard to believe.

</comment><comment><USER32> Sleep and exercise are king?

</comment><comment><USER33> Is there anything more stereotypical for a depressed teenager to do than listen to music? That's a mystery that solves itself. Sitting alone, staring into a wall while listening to music is not a thing most healthy people do. For most, music is a secondary activity.

Anyway, I don't think the screen matters much per se. Being social in person is good. Not being so is bad.

<comment><USER34> > For most, music is a secondary activity.

This is strange to me. It seems like a modern change -- is it? Mostly today I see people listening to music while doing something else, or hearing it as background for movies/TV/games/commercials/stores.

In the past, we didn't think it was strange to just listen to a record. That was how we heard music. It wasn't a sign of depression. (Before 2005, the most I ever did to music was drive a car.) Music used to be a more social activity due to technological limitations, but one consequence is that it was more often a primary activity.

I suspect that I have some condition (hidden hearing loss, perhaps), as I _can 't_ just listen to music while doing something else. If there's music playing, my brain can't ignore it, or background it. Maybe these people who listen to music in private simply aren't physically able to appreciate it the way most others are. The constant noise of modern life causes anxiety for me, too.

Concerts may be more social but they're also a _lot_ more expensive. Bumbershoot was $10 in 1997, $35 in 2007, and $130 this year. You can't blame teens for choosing to listen to music in private. I don't know how any teens could afford to go to concerts today.

<comment><USER8> Ticket prices for bigger bands have definitely gone way up.

I'm very happy that the genres I listen to are still rather niche and out of the mainstream. The most expensive concert tickets I've ever bought were less than $100, and that was an arena show with two fairly big local bands.</comment></comment></comment>


Carl Sagan and Ann Druyan on Science Friday in 1992 - <AUTHOR> http://www.sciencefriday.com/segments/two-cosmic-explorers-investigate-the-world-within-us/ <comment><AUTHOR> There's a Federation of American Scientists?! Sounds like Star Trek! :-)

[https://fas.org/](https://fas.org/)</comment>


Byte: The Smalltalk Issue (1981) [pdf] - <AUTHOR> https://ia601506.us.archive.org/12/items/byte-magazine-1981-08/1981_08_BYTE_06-08_Smalltalk.pdf

<comment><USER2> In the "Letters" section, page 32, Stephen Hain of the MIT Logo laboratory writes about how his implementation of the Logo programming language for the Apple computer which he was writing at MIT, with the initial understanding that it would be placed in the public domain, has been shelved indefinitely by MIT, withheld from the public. Why? Because Texas Instruments sells a version of Logo which was not as good, (for its TI-99/4 computer), and Texas Instruments essentially influenced MIT to scrap the program instead of releasing it in any form.

It is 1981; it will be a few years still before Richard Stallman quits his job at MIT and starts the GNU project. I wonder if he knew about this.

</comment><comment><USER3> The visual language grammar starting on page 40 is fascinating.

<comment><AUTHOR> [https://www.google.com/search?q=railroad+diagram&ie=UTF-8&oe...](https://www.google.com/search?q=railroad+diagram&ie=UTF-8&oe=UTF-8&hl=en&client=safari)

<comment><USER3> I had no idea. Thanks for the link!

<comment><AUTHOR> Not a problem at all.

I first came across them in The Good Parts: [http://www.oreillynet.com/pub/a/javascript/excerpts/javascri...](http://www.oreillynet.com/pub/a/javascript/excerpts/javascript- good-parts/syntax-diagrams.html)

<comment><USER4> they are also up front in json.org

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

</comment></comment></comment></comment></comment><comment><USER5> It was a great experience diving into Smalltalk via VisualWorks in the mid-90's at the university.

Then the following year, Java was announced to the world...

</comment><comment><USER6> This is one of the few paper issues of Byte I've saved for all these years, actually.

That magazine, along with 80 Micro, got me through grade school.

</comment><comment><USER7> The amount of advertising puts even Wired to shame. Holy cow.

<comment><AUTHOR> but it is more than 400 pages though

<comment><USER6> And back then it was devoured, greedily, by essentially anybody who was interested in computing. We had BBSs but no internet; information dissemination was radically different than today.

Hobbyist computer magazines in those days were what we had, except for user groups.

<comment><USER5> Who could afford BBSs?

In Portugal it meant long distance calls to Lisbon or Porto, into systems that were time limited and with up to 10 connections.</comment></comment></comment></comment>


Reelevant, the mass mailing killer - <AUTHOR> http://www.reelevant.com <comment><AUTHOR> Reelevant is the live email intelligence technology that analyzes the context of opening and the behavior of each recipient to deliver the message at the best time and display the most relevant content in real time.

<comment><USER2> This might make a good "Show HN:".

Guidelines: [https://news.ycombinator.com/showhn.html](https://news.ycombinator.com/showhn.html)</comment></comment>


What are the minimum things I need to know to become a successful web developer? - <AUTHOR> Every time I want to begin learning WebDev, I hear all about HTML, CSS, JS, Python, Ruby, Java, ASP.NET, SQL, ...
What makes me frightened is that each of those has multiple variations, frameworks, libraries, idioms and best practices, etc.
For example, JS in Front-end has so many frameworks, and in the Back-end it has Node.js runtime and other stuff as well.
My question is: What are the minimum things required to learn in order to become a successful web developer (preferably freelancing)? <comment><USER2> HTML, CSS, and JS.

That said, it depends on what kind of web developer you want to be. Simple sites require simple skills. Complex sites demand complex skills.

Sites for some companies require skills that fit into that company's ecosystem.

If you're freelancing you'll also need to be able to do design and UX work, and communicate that design work to the client. This is harder than you may be aware of.

If you want a maintainable, highly-interactive site, you'll likely want to focus on a particular framework. Which one is largely arbitrary--they all have good and bad points. Despite current trends you can go a long way with a relatively small skillset, but again: it depends entirely on what the site requirements are.

It's also worth pointing out there's ES5 vs ES6. Most modern sites are using ES6 and transpiling to ES5 via Babel. This introduces a lot of complexity (e.g., Babel, Webpack, or equivalents). If you're doing a lot of JS dev you'll probably also want to look at npm or yarn and node so you can re-use JS libraries others have created.

Much of what you mention are back-end skills, e.g., if you want to save data off the browser. Sometimes that's unnecessary and you can keep all the data locally. There are many ways to do this.

If you want any sort of collaboration, access control, etc. you'll likely want something on the server side. That's when databases (RDBMS, NoSQL, etc) come in to play. You don't _strictly_ need to know SQL, but you'll want to know at least the basics. E.g., Rails has a layer that abstracts simple SQL away, but when things go wrong, or you need something non-trivial, you'll be sad if you don't have a handle on it. The NoSQL story is similar: you can abstract it away, but you still need to understand how things work.

Back-end languages abound. If you want to keep the language-itself learning curve down you could stick with JS via NodeJS. But there's stuff to learn there as well, primarily its asynchronous nature (you'll have the same issues on the client side, but not necessarily as deep, depending on what you're doing). I'd argue that when starting out, NodeJS on the back end isn't the greatest choice, but that's preference. Rails has great tutorials and it's easy to stand something up--but comes with its own set of tradeoffs.

I could go on, but won't bother. This is an incredibly broad question. There are reasons why there are hundreds of books covering the answers.

<comment><AUTHOR> I must thank you for your thorough answer. It really helped. I guess there needs to be a book about WebDev roadmap. Most books I see on the Internet cover specific sets of skills, only few give a better big picture and a general understanding of state-of-the-art technologies used in modern websites.

<comment><USER2> The books that cover JS-heavy dev cover most of what you need on the client side. Back- and front-end dev is quite different; a book that covered them all is probably a bit heavy.</comment></comment></comment>


Music Hack Paris: hackathon weekend around music by Google and Joshfire - <AUTHOR> http://www.musichackparis.org/

<comment><USER2> will be there! see you guys!</comment>


I want to disrupt the auto parts industry, where do i start? - <AUTHOR>

I had an idea of creating an auto parts price comparison site for warehouse distributors but after doing some research, i found too many sites all competing on price, and came to the conclusion that there is no value add there. So where do i start with the daunting task of finding a niche in the auto parts industry? <comment><USER2> My family used to own a used auto parts shop for over 20 years. Sold it about a year ago. From what I know, almost 100% of the auto salvage places link into the same database. So if you come looking for a part, I can get it for you. If you call, come in x amount of days and I will have it, if its not already in the yard. Works pretty well, but shipping can get expensive.

As for new parts, the database also allows you to order those, it works out pretty well. There is also a very standard 30 day warranty on parts. I used to mess with people and tell them to up their warranty like the rest of the industry...

At any rate, I would learn some more stuff and then go for it. Definitely lots of room for improvement IMHO. The only thing is there are a crap ton of parts. And some of the compatibility can get confusing.

<comment><AUTHOR> From what i understand paper catalogs are much more reliable to determine part compatibility. what other areas do you see that needs improvement ?

</comment></comment><comment><USER3> Why a niche? Why not just set the professional standard for auto parts price searching to include an array of all models old and new. It sounds daunting, but can be done. Unless of course someone else has already done it.

Then your course of action would be to find statistical data on auto parts that have a high volume of demand, and begin there.

<comment><AUTHOR> Thanks for the input, will have to research more to see if this already exists.

</comment></comment><comment><USER4> <http://octopart.com/> has been successful in the electronic parts arena. Study writings about them to see if there are any things that would be insightful.</comment>


Bugs 101: free online university course teaches why insects matter - <AUTHOR> https://www.cbc.ca/news/canada/edmonton/insect-online-course-university-of-alberta-1.5200395 <comment><AUTHOR> Article didn't link the course!

[https://www.ualberta.ca/admissions-programs/online- courses/b...](https://www.ualberta.ca/admissions-programs/online- courses/bugs-101)</comment>


Ask HN: What does it mean to be passionate about an idea? - <AUTHOR>

(In context of a starting to work on an startup idea) How do you know if you are "really" passionate about doing something? Is it possible to grow passion for anything? Was every successful entrepreneur passionate about what they did? Is passion overrated? Are we mixing passion with interest and/or  abilities? <comment><USER3> I've adopted the belief that very, very few people in the startup world were born with a passion, or at least developed one at a very young age. Even those who claimed to have developed such strong interests from a young age that later influenced their success, I find hard to believe. It's easy to romanticize the past and connect the dots in hindsight.

Here's what I think: You can develop passions when you realize that the problem you're onto is a meaningful one. I think when you truly believe that the solution you're trying to provide genuinely helps people, you grow a passion not for the specific domain your startup is working in, but rather for the idea of solving a big problem. Growing a deep interest in how a particular domain works is secondary and required in your pursuit to solve a problem.

I don't think anyone at Stripe has a genuine passion for the technicalities of online money transactions, but I do believe that they know they're addressing a huge pain-point that many, many people have been forced to deal with. They know their solution will be meaningful, and so they'll try to dig as deep as they can into that specific domain so that their product is better tailored for their given problem. I could be wrong. I think pg's recent essay on Schlep Blindness touches on this as well. If you develop a passion for solving problems, you might open your eyes to many, many more opportunities, versus if you directed your attention on finding that one domain that really sets your candle aflame.

But, I do struggle with that question on an almost daily basis. While what I stated should provide encouragement in that passions and deep interests can be developed, I can't say I'm not jealous of others I see who have seemed to genuinely take a liking to a specific subject, so much so that, startup or not, they'll chase their dream and be happy doing it.

</comment><comment><USER4> Someone said that passion is "love and anger together". Passion originally meant _to suffer_. It seems that passion (motivation) causes action, but it happens the other way too. You act, making some progress, and _then_ you feel motivated. Any worthwhile accomplishment involves suffering and sacrifice. Maybe passion isn't the only way. Maybe even _deciding_ to suffer doesn't matter, provided you do it.

Every moment we do not spend ourselves in a worthy cause is simply a moment not spent in a worthy clause. Each moment we are given, we get for free. It is up to us how we spend it. Throughout our lives, no matter how we spend it, we are given another in the very next instant.

Some startups weren't based on a specific idea. e.g. Woz and Jobs first had a go at blue boxes. HP and Sony began trying a few different products. The motivation was more like: to make something cool, make a business work. If you like, the "idea" had a wider scope than a specific product. I think it's fair to say they were passionate - as in crazy motivated - about that. e.g. Woz loved making cool electronic stuff; Jobs loved making a business out of that. It's not a specific idea; though I suppose you could say they were passionate about each specific idea in a general class.

I feel there are two parts to my own passion: (1) that there's an opportunity (problem, need, cool new idea) that would make a difference; and (2) that _I_ could do it. That second one is very important. If I don't think it's within my reach, I won't feel excited. Maybe I'll even feel a little depressed and inadequate. That's why confidence (aka faith, hope, courage) is so important. pg noted a few times that not knowing how hard it is can be a blessing - <USER2> some very capable founders would have thought their achievement was beyond their ability if they knew the obstacles involved.

</comment><comment><USER5> Usually I'm excited about something at first and then it dies down over time. Very rarely it goes the other way.

I think you can get better at predicting what you will and won't like over time. You learn what you do and don't like about different types of projects.

One obvious trick for startups it to solve a problem you have yourself that you _truly and deeply_ want fixed.

When Zuck started Facebook he wasn't deeply passionate about "making the world a more open and connected place" neither was Larry Page about "organizing the world's information". Their passion grew into a grand vision out of a small kernel of interest. It's hard to predict in advance how big an idea can grow.

</comment><comment><USER6> > How do you know if you are "really" passionate about doing something? Does > it keep you up late at night? If it does not keep you up at night, is it all > you can think about during the day? If I'm writing notes all over the place > unable to focus on other tasks for very long, and I'm able to work through > till 4am with no concern about more programming at my day job in the > morning, then I know I feel passionately about something. Everything else I > want to think I'm passionate about I can't be sure until it consumes me. In > that regard, I suspect it's probably possible to grow a passion for > something. For example, having not taught myself how to work with certain > aspects of a scripting language, I would have never stumbled upon an idea > that kept me up working all weekend. I'm sure there's mixed opinions on > whether or not passion is overrated, but my vote is no, it's not overrated, > and I make sure to look for it at every corner I turn.</comment>


Facebook Blog - <AUTHOR> http://blog.facebook.com/blog.php?post=10150378701937131

<comment><USER2> Did you submit this without remembering to give it a title?

<comment><AUTHOR> Yes. Sorry.</comment></comment>


Famed Trader Joe Lewis Backs Bitcoin - <AUTHOR> http://online.wsj.com/article/SB10001424127887323997004578644491403250124.html

<comment><USER2> Holy Jesus that's a lot of money. Has anyone credible ever done any market sizing of the btc services or hardware markets? At first blush it is hard for me not to estimate the btc specific hardware market as being less than 200MM even when you add up everyone's revenue since the dawn of time. It looks like avalon's total sales so far has been less than $10MM.

I assume this has to be about inventory - some kind of line of credit that allows them to offer customer financing, shift away from their pre-order system, or some kind of upfront cost associated with a process upgrade.

It's hard to believe there is much money to be spent on R&D for asic hashing, or that they would gain much via some big marketing campaign.

<comment><USER3> Asic is used to basically print money in the bitcoin world. So they might want to run the miners themself.

</comment></comment><comment><USER4> Fake. [https://twitter.com/ScottWapnerCNBC/statuses/364370798892421...](https://twitter.com/ScottWapnerCNBC/statuses/364370798892421120)

</comment><comment><USER5> Speculation: Guys like Joe Lewis typically have multiple angles to a deal which ultimately have some quid pro quo, and it appears that Taiwan Semiconductor Manufacturing Co. (A multi-billion dollar semiconductor company) stands to gain a lot of this investment. It would be interesting to know whether or not Mr. Lewis's investment is a bet more for bitcoin, or for TSM's stock to increase (with their newly gained cash infusion and distribution channel)

</comment><comment><USER6> A lot more details about Joe Lewis' investment fund in the Bitcoin company Bitsyncom: [http://bitcoinexaminer.org/avalon-might-be- getting-a-200-mil...](http://bitcoinexaminer.org/avalon-might-be- getting-a-200-million-investment-and-20nm-technology-to-become-the-leader-of- the-mining-market/)

</comment><comment><USER7> Speculation that some part of this story is fishy -

[http://www.feld.com/wp/archives/2011/01/avalon-ventures- rais...](http://www.feld.com/wp/archives/2011/01/avalon-ventures-raises-a- new-200-million-fund-and-gets-a-new-website.html) (2011)

<comment><USER8> I can buy that the story sounds fishy, but why does this link suggest it? Just that the fund was really created 2 years ago?

</comment></comment><comment><USER9> only available to subscribers...

<comment><USER10> By HARRIET AGNEW Joe Lewis, a billionaire foreign-exchange trader who teamed up with hedge-fund manager George Soros in 1992 to bet against the Bank of England, is the latest high-profile financier to throw his weight behind the virtual currency called bitcoin.

Mr. Lewis leads the Phoenix Fund, a Zurich-based private-equity fund that on Tuesday plans to invest $200 million in Avalon, a company that makes computer servers aimed at creating bitcoins, according to people familiar with the situation.

Bitcoin is a virtual currency that exists online and isn't backed by any government or central bank. Bitcoins were invented in 2008 by a computer programmer who goes by the pseudonym Satoshi Nakamoto, who describes it as a peer-to-peer electronic cash system.

The Phoenix Fund's investment in Avalon reflects the growing popularity of virtual currencies, which are also coming under scrutiny from regulators. Other bitcoin enthusiasts include Cameron and Tyler Winklevoss, who are best known for their role in the creation of Facebook Inc. FB +1.50% They have proposed an exchange-traded fund that is tied to bitcoins.

Bitcoins are created through a process called mining, in which computers solve complex mathematical algorithms to earn the bitcoins. The total number of bitcoins that can be mined is limited to 21 million. There are now about 11.5 million bitcoins in circulation, according to Blockchain, a website that monitors bitcoin transactions.

The Phoenix deal will also involve Taiwanese microchip maker Taiwan Semiconductor Manufacturing Co., 2330.TW 0.00% which is set to supply the state-of-the-art microchips that will power the hardware.

The Phoenix Fund was set up this year to invest in bitcoin mining-hardware companies. It looked at several of Avalon's rivals in the sector, including Butterfly Labs and KnCMiner but decided against investing, according to a person familiar with the private-equity firm's strategy.

Investors in the Phoenix Fund, which includes a small number of individuals who made their fortunes in currency trading, believe that the currency will become more stable and popular if more parties are involved in the mining process, this person said.

Mr. Lewis moved into currency trading in the 1980s and 1990s. In September 1992, Mr. Lewis teamed up with Mr. Soros to bet on sterling crashing out of the European Exchange Rate Mechanism, an event that was later named "Black Wednesday." Mr. Lewis didn't respond to a request for comment.

Mr. Lewis had big losses investing in U.S. brokerage firm Bear Stearns Cos, in which he began amassing a stake during 2007, The Wall Street Journal reported at the time.

Mr. Lewis is the main investor in an unlisted company called Tavistock Group, which has investments in more than 200 companies across the globe.

Tavistock Group includes ENIC Group, which has a Bahamas-registered subsidiary called ENIC International Ltd., through which Mr. Lewis owns 85% of the shares in U.K. soccer club Tottenham Hotspur.

The Phoenix Fund is independent of Tavistock.

The bitcoin deal was put together by Andrew Laurus, a former government-bonds salesman at Lehman Brothers who is also an investor in the fund. Avalon was set up by Yifu Guo, a pioneer in the bitcoin-mining industry. He was part of the team that developed the first ASIC bitcoin mining hardware. ASIC stands for application-specific integrated circuit, a type of custom-designed microchip. Mr. Guo couldn't be reached for comment.

Separately, Coinflash, a company that planned to set up kiosks for bitcoin enthusiasts to buy the virtual currency, is shutting down before it even opened its doors. "Due to an unforeseen change in our personal circumstances, we've made the difficult decision to suspend Coinflash's services indefinitely," the San Diego-based company said in an email statement.

Coinflash was established earlier this year and had planned to open the bitcoin kiosks in California and New York this summer.

As part of the deal, Avalon will gain access to TSMC microchips based on 20-nanometer processes, which are much faster than other chips. TSMC recently won a contract to supply chips to Apple. The increased processing power should give Avalon an edge in solving the algorithms that control the supply of bitcoins.

<comment><USER11> Not to be a wet blanket, but isn't posting that copyright infringement?

<comment><USER12> There's a link at the bottom of the page: [https://news.ycombinator.com/dmca.html](https://news.ycombinator.com/dmca.html)

I wonder how much it actually gets used. I doubt HN is a serious competitor to sites like WSJ.com.

<comment><USER13> Hardly at all:

 _If you believe that content residing or accessible on or through the our website ("Services") infringes a copyright, please send a written notice (by fax or regular mail) to the Designated Agent at the address below. You may not communicate the information specified below by email._</comment></comment></comment></comment></comment>


Improving HTML5 Canvas Performance - <AUTHOR> http://www.html5rocks.com/en/tutorials/canvas/performance/

<comment><USER2> Another way: use the canvas2d implemented on WebGL[1], which is hardware accelerated. The biggest drawback is that canvas2d is far more supported than canvas3d.

[1] <https://github.com/corbanbrook/webgl-2d>

<comment><USER3> Canvas 2D is hardware accelerated in Chrome, Firefox and IE9, is it not? But I think what you're saying is that WebGL can still be much faster. Google demo- ed at I/O this year, how when an animation is done in WebGL it can be 10x faster than in Canvas 2D.

I believe Angry Birds is done in WebGL, but also falls back to Canvas 2D for browsers (or computers) that don't support WebGL.

<comment><USER2> Chrome has it a bit hidden[1] as it seems to be a bit buggy. I haven't seen Firefox/Opera with this currently supported. But I believe it is a matter of time until all major browsers fully support hardware accelerated canvas2d by default.

I like that with projects like this you don't have to wait 2/3 months: you can use it now.

[1] [http://www.browserscene.com/2011/05/google-chrome-adds- optio...](http://www.browserscene.com/2011/05/google-chrome-adds-option-to- enable.html)

</comment></comment></comment><comment><USER4> Is it bothering anyone else that the graphs seem to indicate performance regressions with newer versions of Firefox/Chrome?

</comment><comment><USER5> requestAnimationFrame() is new to me. Sort of a setTimeout() but with the time being "when it is appropriate to draw a new frame". A much more polite way to handle animation in the browser, especially when there are multiple independent animations running.

A little article with shim code: [http://paulirish.com/2011/requestanimationframe-for-smart- an...](http://paulirish.com/2011/requestanimationframe-for-smart-animating/)

Draft: <http://webstuff.nfshost.com/anim-timing/Overview.html>

<comment><USER6> I find it surprising to introduce a function intended for animation callback that doesn't seem to provide facilities for time handling. That is, the callback doesn't seem to be provided with the current time, and requestAnimationFrame() does not take a desired FPS as a parameter.

.. Sorry the spec does say the callback should be provided the time as an argument. It's just not being used in these examples.

</comment></comment><comment><USER7> The data here is a little odd to me. Sometimes Chrome 13 is much faster than Chrome 14, and vice versa. The same happens when comparing different browsers.

I guess it's possible there are such huge differences, but it's surprising to me.

<comment><USER8> My understanding is that between Chrome 13 and Chrome 14, they switched canvas backends. The new backend was a partial (perhaps even complete) rewrite that introduced some bugs and changed performance characteristics. I think the purpose of it was to introduce more pervasive hardware acceleration. They were originally going to roll out the new backend in Chrome 13, but they had to turn it off because it was too buggy.</comment></comment>


Practical attacks against 4G (LTE) access network protocols - <AUTHOR> http://secure-systems-aalto.blogspot.com/2015/10/lte-attacks-2015.html <comment><USER2> tldr:

1) LTE uses broadcast messages to do push notifications. These are unencrypted and unauthenticated. Researchers can trigger them silently by spamming you on Facebook, and triangulate your location since the LTE network only sends the pages to the geographic location you are in.

2) LTE supports crash reports that can potentially include your GPS coords. A rouge base station can request these from your phone without setting up an encrypted channel due to shitty baseband implementations.

3) something about denial of service

the excellent paper is here: [http://arxiv.org/pdf/1510.07563v1.pdf](http://arxiv.org/pdf/1510.07563v1.pdf)

<comment><USER3> I'd like to add a few things:

1) This is really a fundamental limitation of all encryption: It hides what you are sending, but not the fact that you are sending something. Paging in mobile networks is a broadcast message that basically just says "Device with ID XXXX, please wake up and check in with the network". If you can cause pages (by calling, texting or with Facebook messages) then you can see in what area the pageing is sent, and you can find out the ID (TMSI) of the device.

2) It is not a crash report, but a connection failure report.

3) During the initial connection, before encryption is started, an rogue transmitter can send a connection rejection message to the phone, pretending to be the network. The phone will not try 4G/3G again and downgrade to 2G. The attacker can then break the weak 2G authentication and make the phone believe that it is a real base station. The last part is what an IMSI catcher / Stingray device does.

<comment><USER4> 1) but you can hide who it is sent to, such that only timing attacks are plausible (see Tor and every VPN)

</comment></comment></comment><comment><USER5> Paper says they are leveraging GNU Radio hardware (USRP) and using parts of this SDR LTE implementation: [https://github.com/srsLTE/srsLTE](https://github.com/srsLTE/srsLTE)

Pretty cool.

I wonder how much of "some assembly required" there is to get this kind of experiment up and running.

</comment><comment><USER6> The LTE hack when it was first announced made me a little ill.

[http://www.zdnet.com/article/at-t-t-mobile-verizon- vulnerabl...](http://www.zdnet.com/article/at-t-t-mobile-verizon-vulnerable- to-several-lte-flaws/)

I always avoid wifi thinking cell data is safer but apparently not at all.

Sometimes I wish phones/tablets had ethernet ports.

<comment><USER7> What's "safer" (or less safe) about different transport protocols, when you're carrying Internet traffic?

<comment><USER8> It take a somewhat more privileged network position to MITM a 4G connection from your phone than "some guy with a wifi pineapple" impersonating some wifi base station your phone already trusts. It's easy enough to set up a wifi radio which says: "You wanna connect to 'Netgear'? Or 'Starbucks Free Wifi'? Sure - I can be that for you!". At least if I'm using 4G at Starbucks you'd need to be sitting on a backbone or in front of redtube^h^h^h^h^h^h^h wikipedia.com's servers to MITM me...

</comment></comment></comment><comment><USER9> On a related note, Google still hasn't added TLS to blogspot.com...

<comment><USER10> It's available to be turned on for individual blogs:

[https://support.google.com/blogger/answer/6284029?hl=en](https://support.google.com/blogger/answer/6284029?hl=en)</comment></comment>


Some ancient narratives contain remarkably reliable records of real events - <AUTHOR> https://www.sapiens.org/language/oral-tradition/ <comment><USER2> Going to go out on a personal opinion limb here, but I think we dismiss far too much in archaeology and ancient recorded history, even with the evidence all around us. I predict one day there will be a great revival in archaeology as we start to cast off our erroneous assumptions about native peoples stories of their history.

A few Examples that have really stuck in my mind:

The recorded history of the Egyptians says their dynasties go back FAR longer than is accepted by modern Egyptology, yet we dismiss it. The water erosion on the sphynx, as well as the change in flow of the Nile away from some of thier earlier cities, backs up their claim. Techniques to "carbon date" stone have been dismissed largely because they tell us some structures are much older than we think. Not possible therefore the science must be wrong... but what if its the other way around?

Plato describes Atlantis in great detail, which was passed down to him from his elders. We actually know of a site that matches his description exactly in Mauritania, deep in the Sahara, which would have been an island 12 thousand years ago when seas were higher. It has all the exact dimensions he described correct and geography correct, has the same stone color as he described their buildings, has the springs on the central island, is beyond the straits of Gibraltar, and has plenty of artifacts strewn everywhere, yet we still dismiss it as a tall tale and no one will dig there:

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

You don't have to be a conspiracy theorist to take this stuff seriously. More than likely they were just a civilization advanced for their time (maybe Roman era advanced) but something happened to them. The Richat is likely a natural volcanic anomaly that they simply built on.

Plenty more where that came from that challenge our recorded history:

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

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

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

And to top it all off, I think most likely the Younger Dryas Impact Event described by Randal Carlson (great Joe Rogan Podcast about this out there) is the "Flood" event recorded by multiple cultures and responsible for wiping out traces of civilization past 12,000 years ago. This 12,000 year number recurs over an over when we talk about these sites that defy the narrative that it all started in Mesopotamia:

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

Again, personal opinion here, but it sure as hell all lines up.

<comment><USER3> You definitely have to be a conspiracy theorist to buy any of the myriad contemporary Atlantis myths and the veracity of Plato's claims. The history podcast Our Fake History has an excellent three episode arc about Atlantis, including Plato's account.

[https://ourfakehistory.com/index.php/season-2/](https://ourfakehistory.com/index.php/season-2/)

The upshot is that his account does _not_ match up with any real world location, unless you are willing to engage in cherry-picking and an extremely generous interpretation of various things, and there is no credible explain of how he alone could have gained such detailed knowledge of a civilisation that existed thousands of years before his birth. One which no other historical writer mentioned.

In reality, Plato's description of "Atlantis" was considered as plainly allegorical by his contemporaries and subsequent scholars. A situation that continued for hundreds of years, and only began to change in the relatively recent past, with the rise of pseudo-history and conspiracy theorists.

<comment><USER2> Would you have said the same of Troy right up until they found it a few years ago?

Can you point me to where in those podcast they discredit that the Richat structure in Africa does not fit the description of Atlantis?

This documentary is pretty sober and not at all fanciful, lays out how the Richat matches Plato's description exactly:

[https://visitingatlantis.com/](https://visitingatlantis.com/)

You absolutely don't need to buy into the fanciful myths of Atlantis to speculate that is probably was an ancient bronze age city located at the Richat.

</comment></comment></comment><comment><USER4> It always amazes me why historians and researchers start with the assumption that any tale from the past is fanciful until proven otherwise. We have little to no proof that our very distant ancestors sat around making up stories for the fun of it and then passing them on to future generations, when they'd surely be more likely to pass on useful information that keeps the tribe alive. Yes there will be embelishments, but we seem to treat everything from before the last couple if hundred years as total lies.

<comment><USER5> What I was taught is that ancient peoples did not look at history the way we look at it. When I open a book by a modern historian, I assume the book will be about things that actually happened, how they actually happened, why they actually happened, the correct order in which they actually happened, etc. I expect the historian will tell me when there is ambiguity or uncertainty.

Ancient historians would think this is nonsense. The point of writing history is not the events themselves, it is not to get down on paper what actually happened. What kind of idiot would want something like that? No, the point of writing history is to share a message. Often they would draw parallels between two events to explain something. Now they might need to greatly fudge, exaggerate, change the order, etc. of those two events in order to make everything to fit, but that is fine. The actual events that happened is not important, it is the truth (i.e., the point the historian is trying to get across) that is what is important. The events themselves are not the message, the message is served by the telling of the events, even if the telling is not 100% accurate (as we would see it).

<comment><USER6> When the only means of preserving your history is to speak it truthfully, that's what you do.

<comment><USER5> That might be the main difference. They would have considered the idea of "preserving your history" to be not worth considering. It didn't seem to be something they valued (at least in the sense we understand it).

<comment><USER6> That's entirely the cultural bias of treating other humans as savage and primitive and not listening to a word they say.

<comment><USER5> They were hardly primitive, they just valued things differently than we do. Having a different value system doesn't make them savages.

</comment></comment></comment></comment></comment></comment><comment><USER7> Much younger than the examples in the article, but rather a lot of Beowulf seems to describe real events. I think the Finnburgh Episode, told as a story inside the story, even gets the names right of the actual people involved.

</comment><comment><USER8> Ancient writers who estimated population size (sizes of cities/regions/armies/soldiers list in battle) are almost always wrong and almost certainly impossible to have been real. I'm often amazed at is credulous modern people are though when it comes to those ancient estimates (unless it bolsters a modern prejudice).

</comment><comment><USER9> Some of these seem like, leaps, e.g. is knowledge passed down for 15 millennia really the most likely explanation compared to say, meanings of words changing (like the name of the island used to refer to a promontory on the island before changing in meaning to refer to the island itself)

</comment><comment><USER10> Even if the general narrative were completely false in a story, some level of 'realism' is an almost absolute requirement for a story to be enjoyed and retold.

Just yesterday, I told my two year old a story about how he was playing in the playground with his best friend T-Rex, collecting acorns, and a family of talking squirrels came down and asked if they could have some, then they invited them up to their treehouse to play.

An absurd story, to be sure, but also — the playground was real, acorns are real, squirrels are real, the fact that my son likes to collect acorns is real. There's lots of true information available in even deeply silly stories.

<comment><USER11> Wait -- talking squirrels are real? I knew it!

<comment><USER12> Maybe analogous to the talking snake in the story of Adam and Eve. Some guy prob got kicked out of a nice place for sleeping with a lady he wasn't suppose to lol.

</comment></comment></comment><comment><USER13> These stories are fascinating and I don't doubt there are seeds of very ancient facts preserved for thousands of years in oral traditions.

That said, if we don't have a reliable way of picking these facts out from the rest of the oral tradition, how useful is this knowledge? Its not like we can go through the rest of the dreamtime corpus and select out other long-lost facts.

Which also raises the question - given a big enough oral tradition (assuming for the moment the stories are ALL made up) - what are the chances of finding stories that inadvertently line up with reality?

</comment><comment><USER14> Would be cool if they provided other examples. The Aboriginal's of australia have the strongest and oldest oral tradition of any culture that I am aware of, so it would be nice to see some other, less obvious, examples.

<comment><USER15> From the third paragraph of the article: Another such oral history surrounds the Klamath people of Oregon, in the western U.S.

</comment></comment><comment><USER16> really good related article: [http://web.archive.org/web/20161006142042/https://www.scient...](http://web.archive.org/web/20161006142042/https://www.scientificamerican.com/article/scientists- trace-society-s-myths-to-primordial-origins/)

"Analyzing how stories change in the retelling down through the generations sheds light on the history of human migration going as far back as the Paleolithic period"

archive.org because of the paywall</comment>


Launch HN: Noteworthy, If Tailscale and Kubernetes had baby - <AUTHOR> https://noteworthy.tech/start/ <comment><AUTHOR> Noteworthy is an open-source personal networking framework and API with a novel architecture that puts users in control of their data and the online services they depend on by making it easy to replicate the benefits of the cloud collaboratively with friends and family.</comment>


The Baseline Interpreter: A Faster JavaScript Interpreter in Firefox 70 - <AUTHOR> https://hacks.mozilla.org/2019/08/the-baseline-interpreter-a-faster-js-interpreter-in-firefox-70/ <comment><USER2> The Mozilla tech blogs are always a good read.

Informative and easy to digest. I can only think of one other company blogging with similar consistency/quality: Cloudflare.

Firefox performance has seen tremendous gains since their Project Quantum efforts.

It mostly feels on par with Chrome for me pretty much everywhere.

There is one glaring omission though: a single company where I have problems with FF on multiple apps - Google.

Gmail was still dog-slow the last time I tried, Youtube can send my fan into a frenzy and Docs is also regularly problematic. (on Linux)

<comment> chao- I have the opposite experience with YouTube.

With an AMD GPU on Linux, Chrome churns, drops frames, and stutters horribly on even 1080p videos at 30fps. Firefox, meanwhile, handles 1440p60 video with no problem. Even two such videos simultaneously, on separate monitors.

Chrome became inexplicably better for parts of early 2019 (I did not note which versions), but starting 2 or 3 months ago Chrome returned to being unusable for YouTube beyond 720p videos.

Before anyone asks, this is on an AMD RX 580 with Mesa 18.0.

<comment><USER3> Hey, I'm on the chromium videostack team, would you mind filing a bug report for what you see happening with youtube? [https://bugs.chromium.org/p/chromium/issues/entry](https://bugs.chromium.org/p/chromium/issues/entry)

<comment><USER4> Fixing this would be like eight steps forward: [https://bugs.chromium.org/p/chromium/issues/detail?id=137247](https://bugs.chromium.org/p/chromium/issues/detail?id=137247)

The annoying part is that hardware acceleration works on chrome OS, so we know the support is buried in there somewhere.

<comment><USER5> Google closed that as Won't Fix, they are very opinionated and steadfast in their opinion as an organization.

I doubt they will take Linux outside their own walled gardens seruously, Google has already shown their indifference to us Linux users.

<comment><USER6> They _opened_ it as Won't Fix, which appears to be their way of saying that they'll accept work but it has a priority of less than zero.

</comment></comment></comment></comment></comment></comment><comment><USER7> Worth noting that this basically means that all of the JS engines are converging on what JavaScriptCore pioneered:

\- More than just two tiers (JSC has four, and I guess Moz has four too now; I guess it's just a matter of time before V8 follows).

\- Bottom tiers must include a fast interpreter that uses JIT ABI and collects types (Ignition and this Moz interpreter smells a lot like JSC's LLInt, which pioneered exactly this for JS).

It's weird that they kept the C++ interpreter. But not too weird, if the IC logic in the new interpreter is costly. In the LLInt, the IC/type logic is either a win (ICs are always a win) or neutral (value profiling and case flag profiling costs nothing in LLInt).

Also worth noting that this architecture - a JIT ABI interpreter that collects types as a bottom tier - is older than any JS engine. I learned it from HotSpot, and I guess that design was based on a Strongtalk VM.

This is the current state of the art of JSC's bottom interpreter tier FWIW: [https://webkit.org/blog/9329/a-new-bytecode-format-for- javas...](https://webkit.org/blog/9329/a-new-bytecode-format-for- javascriptcore/)

<comment><USER8> Are there any solid benchmarck comparing JSC vs v8?

<comment><USER7> JSC has had a set of large metabenchmarks like JetStream2 for a while. We have been the fastest for a while but V8 is gaining, so the current advantage is significant but not earth shattering.

The last time V8 had their own benchmark, they retired it right after we beat them on it and made a post saying that benchmarks are bad because people cheat on them.

Around that time I stopped seeing google.com claim that I should switch to Chrome "because it's faster".

So basically JSC is fast enough to have made V8 ragequit benchmarking. Hope that answers your question!

<comment><USER9> I've always wished I could actually benefit from JSC without dropping a couple thousand dollars on a macbook and having to put up with the world's worst keyboard, because your browser team kicks ass :)

At least you're pressuring Mozilla and Google to step up their game on runtimes!

<comment><USER10> it's not Mac exclusive. WebKitGTK uses JSC too

</comment></comment></comment></comment></comment><comment><USER11> Something I'm curious about is why JS developers don't have the option to send along some of this information themselves; type information, JS bytecode, etc. Given that we often have it on hand already (TypeScript) or could integrate it into our build process (webpack). Obviously plain JS needs to still work without all that, but it could be a compelling point of optimization for large-scale apps. Perhaps the JS bytecode just isn't standardized across browsers?

<comment><USER12> JS tried to add (optional) type hints in the ES4 standard that was never adopted (outside of tangential things like ActionScript 3).

It would be great if Typescript hints could pass right along to the JITs as useful optimization factors, but it currently sounds like TC39 would prefer not to recreate the disasters of ES4 and are staying out of type hints for the forseeable future.

(Well-typed code should prevent most JIT bailouts, at least. Typescript linters could possibly give even better "shape" warnings than they currently do, such as catching the issue the React team recently found of bailouts in the V8 engine due to "shapes" being built with "small integers" being reallocated to doubles at runtime. However, such lint warnings would probably be JIT engine specific, and maybe premature optimization in 90%+ of usages.)

<comment><USER11> Yeah it's probably not worth it to add types to JS the language, but what if you could ship standard metadata files similar to source-maps that only included type information, which browsers could leverage to speed up compilation?

<comment><USER13> Sounds good in theory, but it seems like rich territory for mismatched types in the source and map files.

<comment><USER11> I don't see why that would happen; you wouldn't be writing these by hand

</comment></comment></comment></comment></comment><comment><USER14> > Baseline JIT compilation is fast, but modern web applications like Google > Docs or Gmail execute so much JavaScript code that we could spend quite some > time in the Baseline compiler, compiling thousands of functions.

Good read. The above mentioned web apps are my biggest pain point at the moment with Firefox. I still use Gmail in Firefox, but it's much slower than running it on chromium. I just accept that, since Google makes all of that.

However, with Google Docs I actually switch over to a chromium browser, even the new Edge beta, because it is simply too slow in Firefox.

It looks like they've taken notice of that and are tackling it head on. Excellent work!

</comment><comment><USER15> One thing that wasn't clear to me from this post is why they still need the C++ interpreter at all. I assume there is some non-obvious cost that makes it not worth it for the coldest of code, but I'm having a hard time guessing what it may be.

<comment><USER16> > One thing that wasn't clear to me from this post is why they still need the > C++ interpreter at all.

A lot of code on the web is very cold (executed once or twice) and for such code the Baseline Interpreter would add some overhead (requires allocating a JitScript storing the IC data for example and we would then spend more time in IC code as well). It's possible this could be mitigated or fixed with additional work, but we need to keep the C++ interpreter anyway (not all platforms have a JIT backend and it's useful for differential testing) so it's not a priority right now.

<comment><USER17> Can you run the baseline interpreter with the costly parts disabled? Even if the code then runs approx. the same speed (and at same cost) of the C++ interpreter, you'd save maintaining a bunch of code. I assume implementing the missing backends offsets maintenance costs in the long term.

</comment></comment></comment><comment><USER18> I'm waiting to hear about when they start to rewrite their JS interpreter in Rust. It will make things kind of interesting, especially if it becomes a stand-alone capable JS inrepreter.

<comment><USER19> To be fair i think this is an exercize in vanity and why not say it, stupidity.

Javascript VM´s these days are fairly complex beasts with huge amount of man- hour and expertise. Also technically this would be a inferior solution as compared to what V8 did with its interpreter in Turbofan (and SpiderMonkey are doing now as presented in the article), by generating pure assembly through the turbofan backend (the same technique used by LuaJIT before with great success).

By the way lets not forget we are talking about Mozilla here, were a couple of more misguided projects could mean the abrupt end of the organization who is suffering to keep its market share in the browser wars.

There are a couple of things that could take some advantage for being re-coded in Rust, but modern super-powered javascript VM´s are hardly one of those things.

Of course, if in the sidelines someone craft a JS VM in Rust, and after IDK, 4 years, you have a mature enough JIT VM, maybe there will be a reason to move, but Mozilla itself investing its unsustainable, limited and in the brink of extinction funds on something that will require a lot of money and that in the end will get you basically the same perfomance as the old C++ jit, its a pretty bad move.

<comment><USER18> There's already a JIT for JS coded in Rust:

[https://blog.mozilla.org/javascript/2017/10/20/holyjit-a- new...](https://blog.mozilla.org/javascript/2017/10/20/holyjit-a-new-hope/)

The overall goal is to have Firefox recoded in Rust, why would a JavaScript interpreter be left out?

[https://wiki.mozilla.org/Oxidation](https://wiki.mozilla.org/Oxidation)

That's the whole point of Oxidation.

<comment><USER19> Of course they can do it. I just dont think is a clever move for them to do it.

Firefox is having a hard time to compete with Chrome, and they took too long pursuing other goals, and just remembering one key feature they took a lot of time to implement, was making Firefox a the multi-process browser as Chrome.

I mean, you would be ditching all this effort, rewriting it in Rust, spending key resources only to have some parity with the same browser you already had in C++, spending years, and loosing more market share, as Chrome can spend this time in optimization and features.

For the record, i think Rust is what will save Mozilla, but it must reinvent itself. Do the best they can with the firefox codebase they have, and use Rust for new projects.

Like, creating Cloud, backend system software, and reinvent itself like Ubuntu is doing right now.

They have to be very strategic and pragmatic right now. Two big moonshots, Firefox OS and Rust, and only one of them has paid out their time and resources.

If they want to bet in more moonshots, great, but they must do it in "blue ocean" places, being more innovative on where they should use Rust, were Rust can shine.

I just think that from a strategic (and even technical) point of view, they are just spending precious resources, while at the same time eroding even more their browser market share.

<comment><USER18> I see, I think we agree with each other, we are looking at things from a different angle is all. Thanks for the clarification, I do want Mozilla to succeed, we need other similar orgs to come out and be willing to compete with tech giants like Google as well, maybe Apache, but they're too busy being a giant corporate project dumping ground I suppose.

</comment></comment></comment></comment></comment><comment><USER20> I've switched to Firefox 3 times in the last 2 years, and each time I've been forced back to Chrome by horrendously (2-3x worse) bad battery life on my MacBook, caused by some variant of this bug which Mozilla seems determined not to fix. [https://bugzilla.mozilla.org/show_bug.cgi?id=1404042](https://bugzilla.mozilla.org/show_bug.cgi?id=1404042)

<comment><USER21> What makes you think they're determined not to fix it? A commit that significantly improves the situation landed in nightly a week ago.

[https://bugzilla.mozilla.org/show_bug.cgi?id=1429522](https://bugzilla.mozilla.org/show_bug.cgi?id=1429522)

<comment><USER20> the fact that they've not fixed it for literally years, despite having hundreds or thousands of reports?

I'll believe they have a fix when I see it with my own eyes, which probably won't be for another 6 months because switching my browser workflow isn't something I want to do every couple of weeks to try out a new nightly with big promises.

</comment></comment></comment><comment><USER22> The idea of generating an interpreter from the compiler is really neat.

What I missed in this article is _why_ the Baseline Interpreter is faster than the C++ interpreter. The code snippet for the load zero instruction looks like what a compiler should produce for a straightforward C++ switch case for that instruction. _Except_ that the code uses a push instruction to store the value directly on the system stack, whereas the C++ interpreter would presumably use a more general store instruction into an array (in the heap, maybe) treated as the interpreter stack.

Is that the difference, or am I missing something else?

<comment><USER16> > Is that the difference, or am I missing something else?

That's part of it. The generated interpreter should be a bit faster for simple instructions because of the reason you give (also: things like debugger breakpoints have more overhead in the C++ Interpreter).

However, the bigger speedups are because the generated interpreter can use Inline Caches like the Baseline JIT. The C++ Interpreter does not have ICs.

<comment><USER22> Ah, yes, inline caching probably explains it. Thanks!

</comment></comment></comment><comment><USER23> I'm using Firefox for pretty much everything including Google apps, but the one thing I do wish Firefox had is support for casting via Chromecast. In my experience, Chromecast support has been sorta spotty even on Chromium-based browsers like Vivaldi or Brave, forcing me to keep Chrome proper installed on my PC for when I want to cast a YouTube video onto a bigger screen. Is this bit of functionality too proprietary or entrenched enough that it cannot be ported to any non-Chromium browser?

<comment><USER24> You can use VLC to Chromecast, it is a little bit fiddly but it works most of the time.

</comment></comment><comment><USER25> That sounds like the opposite of what graal+truffle is doing. With truffle you write an interpreter and graal specializes it into a JIT.

</comment><comment><USER8> Would be nice to see benchmarck comparing v8 vs new spidermonkey!

<comment><USER26> Equally interesting would be a side-by-side architecture comparison.

</comment></comment><comment><USER27> Awesome. I love the direction Firefox is heading now that Chrome is a pain to use.

<comment><USER28> I was perfectly fine with Chrome's usability until I started getting a `Hold Command + Q` to quit` prompt on my Mac. Before then, I hadn't even considered the possibility that an application could block me from quickly and easily quitting out of it. Now I have to hold the key combo or double tap it to quit Chrome, and it is the _only_ application I have to do that for. It's so annoying.

<comment><USER29> I'm surprised that functionality isn't possible to disable, but tbh I really like it. Too many times a finger slip turns Cmd+W into Cmd+Q and suddenly I'm lost a whole pile of tab state, possibly even half-submitted forms. Yuck.

<comment><USER30> Surely that can be restored? In firefox, if you accidentally close a window, there's a "Recently closed windows" thing in the history menu you can use that brings back all the tabs.

<comment><USER29> It can, and things are better than ever as far as preserving (most) form state, sessions, and scroll positions, but it's not perfect. Just as one example, pages opened on one network (eg at work) won't be able to reload elsewhere unless I take the extra step of connecting to the VPN. This is not the end of the world, but it's an annoying detour when I really just wanted to close that one tab.

And it's so rare that I shut down the whole browser anyway, so it makes sense to me to make it hard to do accidentally.

</comment></comment></comment></comment></comment><comment><USER31> Javascript engines gave up on interpreters too quickly. JITs have been a huge source of security holes, and the language is so huge now that verifying the correctness of JS optimizations is extremely hard. JS was never meant to be a high performance language. Plus all the heroic work on exotic optimization has just resulted in induced demand. Web pages have just grown to contain so much Javascript that they're even slower than they were when JS was slow.

Browser vendors should agree to make JS slow and safe again like it used to be, forcing web developers to make their pages smaller and better for users. For the unusual cases like browser-based games, WebAssembly is ok (it's much easier to verify the correctness of a WASM compiler), and it should be behind a dialog box that says something like "This web page would like to use extra battery power to play a game, is that ok?"

<comment><USER32> > JITs have been a huge source of security holes, and the language is so huge > now that verifying the correctness of JS optimizations is extremely hard.

Do you have numbers to back that up?

There certainly have been 1 or more security holes in JITs, but AFAICT most of the browser vulnerabilities have more to with bad (new) APIs.

The level where a JIT operates really has nothing to do with the surface syntax of JS, so adding "syntactic sugar" features to JS should have very little impact on JITs. (I'm thinking of things like the class syntax, lexical scope for function literals, etc. Maybe there's a class of additions that I'm missing.)

<comment><USER31> > Do you have numbers to back that up?

Hm hard to come up with a number that shows JS optimizations are hard, but you can peruse a collection of Javascript engine CVEs: [https://github.com/tunz/js-vuln-db](https://github.com/tunz/js-vuln-db)

Notice how many are JIT or optimization issues, or are in esoteric features like async generators or the spread operator.

<comment><USER32> That's fair and I now know more. I'm not convinced that this is the biggest issue with JS engines/browsers, but I certainly have more evidence against me :).

It's interesting how many of those are labeled OOB. Does that mean that we're talking JIT flaws that allow OOB access to memory? Is it's actually tricking the JIT itself into allowing OOB access, or is it actually OOB'ing the JIT?

I wonder what the performance impact of _all_ JIT code being forced to do bounds-checking would be...

<comment><USER33> > Is it's actually tricking the JIT itself into allowing OOB access, or is it > actually OOB'ing the JIT?

What's the difference between the two? Many JavaScript exploits abuse the interaction between strange features of the language to get around bounds checks (often, because a length was checked but invalidated by later JavaScript executing in an unexpected way, or a bound not forseen as needing a check) leading to an out-of-bounds. And I'm assuming many of these are heap corruptions where someone messes with a length that lets them get out-of- bounds.

<comment><USER32> It's not much of a difference in terms of consequences, but always-on bounds checking could alleviate OOB'ing the JIT at least.

</comment></comment></comment></comment></comment></comment><comment><USER34> So would this be one of the Futamura projections [http://blog.sigfpe.com/2009/05/three-projections-of- doctor-f...](http://blog.sigfpe.com/2009/05/three-projections-of-doctor- futamura.html) ?

</comment><comment><USER35> What's a good way to diagnose optimzation/deoptimization performance issues? The Z80 emulator I use for [http://8bitworkshop.com/](http://8bitworkshop.com/) has some long pauses while it's spinning up. It uses a huge generated switch statement, which I'd assume is hard to optimize if type info isn't complete. (I'm replacing it with a simpler emulator which works much better though)

<comment><USER36> I have written a single javascript program in my life, and it was an emulator for an 8080-based machine. I used [https://bluishcoder.co.nz/js8080/](https://bluishcoder.co.nz/js8080/) for that part of the emulator, though I had to make some changes to it.

I found the emulator ran 4x faster on firefox than on chrome. The culprit was the main dispatch loop, a 256-entry switch statement. Chrome used a slow fall- back path because there were too many cases. The fix was to have "if (opcode < 128) { switch for first 128 cases} else { switch for other 128 cases }". It made FF a little bit slower, but greatly sped up on Chrome.

I also tried generating 256 functions and then dispatch to the right sub based on an array of function pointers, but it wasn't any faster than the switch statement.

But that was five year ago, and I'm sure the landscape is different now.

</comment></comment><comment><USER37> I'm seeing a lot of people saying gmail and youtube are slow in Firefox. This may not sound like a good answer, but consider using a dedicated video player such as mpv for youtube, and an email client instead of webmail.

Web browsers are some of the worst-performing software we have today. Asking them to do more than display documents and web pages never seems to go well.

</comment><comment><USER38> I'm sorry, I do not understand from the article what the Baseline Interpreter is or does. It keeps the Baseline Compiler from having to compile so many functions by turning some sections into bytecode first?

<comment><USER39> Everything is turned into bytecode anyway. The Baseline Interpreter interprets the bytecode faster than the C++ interpreter, which allowed them to send less code to the JIT compiler.

</comment></comment><comment><USER40> I wouldn't be surprised if improvements in Javascript execution will make webassembly obsolete.

It already has a slim advantage of being 2x faster.

And Javascript has so many advantages in terms of handling. No compilation step needed at all. And since it has modules widely supported now, it is a joy to code in native Javascript without any libraries like React&Co.

Just look at how beautifully you can dynamically load code when it is needed in modern Javascript:

        let calendar = await import('/modules/calendar.js');
        calendar.askUserForDay("Checkin Date");

<comment><USER41> You are possibly right, but it would be sad if we our choices for writing programs with a UI are: write in javascript or compile to javascript. There are many languages out there, webASM would allow them to work without the massive pain of cross-compilation.

I guess I am just an idealist screaming about how packet switched networks are unreliable and we should all use circuit switched networks.

<comment><USER40> If you want to use a different language, why would you care about the compile target?

Compiling is done by the compiler. So to the developer it is the same. No matter if it comiles to Javascript or Webassembly.

In the end, I don't think writing code for the web in languages other then Javascript will take off. Simply because Javascript will always evolve to fit this specific environment. And therefore will always be the best choice. While other languages will evolve to be the best fit for their niche.

<comment><USER41> Cross compilation always comes at a performance cost. Moreover, it is another compilation target your compiler needs to support. When that compilation target is a high-level language, supporting it is harder. This means java- script as a compilation target is less likely to be added.

</comment></comment></comment></comment><comment><USER42> I love those elemental animal names of their projects...

</comment><comment><USER43> Had no idea their interpreter was C++ under the hood. Excellent article fro the Mozilla team as always.

</comment><comment><USER44> I can't help but think that regardless what different browser vendors do there's no competition with v8. Like any language there is a standard library, or environment around it. V8 is to JavaScript what CPython is to python.

At least in python you can use other versions and it's a very similiar environment. But if you want to use mozillas spidermonkey without Firefox, it's hoops and bounds worse experience. I'd argue that v8 is far less of a lock in by comparison.

Given all that, why are we still creating entirely separate engines that are made differently, yet do the same.

<comment><USER2> Diversity and multiple implementations are essential for the web IMO.

V8/Blink/Chromium are not independent community projects, but firmly in the hands of Google. Chromium being the only viable implementation would put too much control in the hands of a single company (regardless of which company that is, Firefox being the only implementation would be just as bad).

It's redundant effort, but it also enforces consensus building and exchange of ideas.

EG Google would have happily stuck with PNacl, but (afaik) Mozilla pretty much forced their hand - with the result being Webassembly, a much better design.

<comment><USER45> Also a much slower one - on PDFTron's benchmark, WASM is half as fast as PNacl for me: [https://www.pdftron.com/benchmarks/pnacl-vs- wasm/](https://www.pdftron.com/benchmarks/pnacl-vs-wasm/).

<comment><USER2> Their very own blog post goes into plenty of detail about this: [https://www.pdftron.com/blog/wasm/wasm-vs- pnacl/](https://www.pdftron.com/blog/wasm/wasm-vs-pnacl/)

It's nothing fundamental about WASM; in fact they state that the actual computations are slightly faster.</comment></comment></comment></comment>


CSS3 Box Model behaviour - <AUTHOR> http://crypt.codemancers.com/posts/2013-11-17-box-model-behaviour/

<comment><USER2> Paul Irish also discusses this in his blog post from Feb. 2012:

[http://www.paulirish.com/2012/box-sizing-border-box- ftw/](http://www.paulirish.com/2012/box-sizing-border-box-ftw/)

</comment><comment><USER3> Modded up, but I really hope most frontend folk on HN already know about border-box.

Short ver: float two 50% widths beside each other. Change padding as you like later and not have stuff break.

I have been doing this for a year now, it's godlike especially for in-browser design.

<comment><USER4> Border box is also a godsend when dealing with nicely laid out form inputs because unlike elements like divs you can't get away with nesting child elements to get the desired effect, and you typically have borders on those fields. Need a textarea to fill a certain space? Set it to 100% and forget it.

<comment><USER5> From my understanding most browser use border-box on form elements by default anyway. That's why they often look different from other elements with the same styling.

<comment><USER4> I don't think so. There are endless blog articles online that have addressed this, e.g. [http://davidwalsh.name/textarea- width](http://davidwalsh.name/textarea-width)

<comment><USER5> I was going by this, [http://www.paulirish.com/wp-content/uploads/2011/gplus- boxsi...](http://www.paulirish.com/wp-content/uploads/2011/gplus- boxsizing.html), which I believe doesn't include textarea as one of the elements involved.

</comment></comment></comment></comment></comment><comment><USER6> What I've been trying to figure out for years is when/why content-box would be a desirable state of affairs.

Most of the time, you know the border-box width (and probably the padding and border) want the browser to figure out the content-width, which is why the standard box model always seemed like a pain, because it makes you do that instead (assuming you're using units where that's even possible).

I'm trying to think of a situation where that'd be useful -- where it'd be helpful from a layout perspective to start with content-width -- so I could figure out what the w3 folks were thinking, but I've always had trouble with that. Has anybody figured this out?

<comment><USER4> I'm guessing some of that could be due to taking the wrong path initially then leaving things the way they are. Platforms like WPF/Silverlight fixed these headaches years ago right from their conception.

</comment></comment><comment><USER7> Legacy IE got few things right, this was one of them.

</comment><comment><USER8> For those of you who don't know, Bootstrap 3 uses border-box for everything by default. Anyone who has worked with front end design a bit has probably cringed many times at the thought of having to assign the full dimensions of the box you want to an outer div, then create an inner div with padding in order to achieve the same result that border-box solves. Didn't IE also invent @font-face?

</comment><comment><USER9> Pretty surprised that this basic, well known style rule is front page. I guess it's not as well known as I thought.</comment>


Ask HN: What's the Best Tool to Create Slides Using a Markup Language - <AUTHOR> Something like revealjs, but maybe richer or easier for someone who doesn't know much CSS <comment><USER2> Similar in approach (in that it can use Markdown) but Deckset.app for OSX also incorporates a GUI, I don't think you'd need to know any CSS.

</comment><comment><USER3> Rather than using reveal.js, perhaps consider the GUI version at slides.com?

Beamer is a great tool as well, there are some really nice themes for it. My favourite is Metropolis: [https://github.com/matze/mtheme](https://github.com/matze/mtheme) The markup is Latex, so you'll need a latex toolchain for that.

</comment><comment><USER4> Please check [https://mark.show/](https://mark.show/)

You can:

Write markdown in editor

or

Upload a markdown file

or

Import direct from URL of markdown file.

PS: I am creator of the service.

<comment><AUTHOR> Pretty interesting, thanks! Is there a way to run this locally?

Apart from that, I find what really stops me from using such tools is the lack of control over the layout of slides. Just saying use CSS isn't really enough for me! I found gitpitch to offer pretty good layout options, but the service is too commercial for my taste.

</comment></comment><comment><USER5> For simpler ones with markdown I found marp very easy to work with : [https://github.com/yhatt/marp](https://github.com/yhatt/marp)</comment>


Dynatable.js: HTML5+JSON interactive table plugin - <AUTHOR> https://github.com/JangoSteve/jquery-dynatable

<comment><USER2> Hey, author here. I've been working on this on and off for a couple years and finally just released it this past week with new documentation. Please let me know what you think and if you have any questions or feedback.

<comment><USER3> Sweet! Looking to angularize it?

<comment><USER2> Sure! One of the things I've been trying to do with dynatable is to make it play nicely with other libraries by keeping the internals modular and opening a lot of the internal API to the outside. Someone on Reddit has already opened an issue on Github for Knockout support that I'm working with. If you could open an issue, I'll take a look.

</comment></comment></comment><comment><USER4> The first thing I usually look for on projects like these is a "Click here for demo"

<comment><USER5> It's there, scroll down on [http://www.dynatable.com/](http://www.dynatable.com/), which is linked to from the github page.

</comment></comment><comment><USER6> Hey, this looks great -- thanks for releasing it.

Can you explain the benefits (and drawbacks) of this compared to List.js and/or DataTables.net (if you have any experience with those)?</comment>