Building your color palette - <AUTHOR> https://refactoringui.com/previews/building-your-color-palette/ <comment><USER2> Take this one step further and build the color palette into your stylesheets. If you're using Sass you can setup something like:

        $palettes: (
          blue: (
            lightest: hsl(201, 75%, 66%),
            lighter:  hsl(201, 75%, 61%),
            light:    hsl(201, 75%, 56%),
            base:     hsl(201, 75%, 51%),
            dark:     hsl(201, 75%, 46%),
            darker:   hsl(201, 75%, 41%),
            darkest:  hsl(201, 75%, 36%)
          ),
          red: (...),
          gray: (...)
        )

        @function palette($palette, $tone: 'base') {
          @return map-get(map-get($palettes, $palette), $tone);
        }

This ends up looking like: `background-color: palette(blue, "light")` in your codebase.

I typically use hsl instead of hex codes because it is easier to understand and modify. You can quickly build up a palette by just modifying the lightness scale on each color by a constant percentage. (This is where I disagree with the author, all of design is just math)

It is often useful to combine colors for your designs and Sass has you covered with the `mix` function. Using this setup you can call `mix(palette(blue), palette(gray))` to combine colors in your palette. You typically want to do this with text on a colored background to make it look more visually appealing.

This is the only way I've found to stay sane managing your colors in a big project. In my experience, everything else goes off the rails when you introduce multiple people into the picture. Please steal this idea, your projects will be better because of it.

<comment><USER3> > background-color: palette(blue, "light")

Having never used Sass, this syntax strikes me as odd.

Is there a CSS pre-processor similar to Sass but where you would instead write it as "background-color: palette.blue.light"?

<comment><USER4> You can use CSS variables, no preprocessor necessary for newer browsers:

      :root {
        --palette-blue-light: blue;
      }
      background-color: var(--palette-blue-light);

<comment><USER5> Great suggestion, but due to extremely poor support [0], it might be best to use a polyfill [1]

[0] [https://caniuse.com/#feat=css-variables](https://caniuse.com/#feat=css- variables) [1] [https://github.com/aaronbarker/css-variables- polyfill](https://github.com/aaronbarker/css-variables-polyfill) (or [https://github.com/jhildenbiddle/css-vars- ponyfill](https://github.com/jhildenbiddle/css-vars-ponyfill))

Personally, I don't like forcing JS to make things render properly on the client, but it depends on the project whether it's acceptable or not.

However, it kind of defeats the purpose, because if you're willing to use a polyfill, then you may as well use sass or less as a solution anyway (and get a range of benefits that they provide).

</comment></comment></comment></comment><comment><USER6> I've picked my fair share of colors for various businesses, and something that annoys me is that you pretty much always end up with green or blue being the main color.

I tried to figure out why, and I think it's a really dumb reason: like this article says, if you don't really know what you're doing with design, you want a spectrum of light-to-dark colors to choose from. Light green -> normal green -> dark green.

For some weird reason, we call light red "pink". And dark orange/yellow is "brown". If you pick one of those as your main color, it becomes much harder to just use lighter or darker shades without it becoming something else entirely. Great designers can make pink or brown work, but if you're a programmer who's just trying to find a "good enough" color scheme, it's way easier to go with green or blue.

I don't really have a good reason why we all think of pink as a different color from red, but we do.

<comment><USER7> Violet, Indigo and Red are different hues. Pink is not "light red". No adjustment of the saturation of red will ever make it pink. Brown is created with a low saturation of red, orange, yellow or green.

<comment><USER8> Pink is a "light tint of red", not a different hue. [https://en.wikipedia.org/wiki/Shades_of_red](https://en.wikipedia.org/wiki/Shades_of_red)

<comment><USER7> That is a purely semantic argument. It's also a contradictory one. That article says in the first sentence that they are considering adjusted hues as "shades" or "tints" of red. Using terminology beyond HSV only introduces semantic complexities to confuse the topic.

<comment><USER9> Wikipedia is a terrible source for this type of thing.

"Pink" was until recently a synonym for "light red".

However, when it became possible and fashionable to produce more bright purple-red colors, these were also called "pink" ("hot pink", etc.) by marketers, and now our late 20th/early 21st century concept of the denotation of the word "pink" is considerably broader than 50+ years ago.

</comment></comment></comment></comment></comment><comment><USER10> There actually is a science for this: it's called accessibility. WCAG guidelines would be extremely useful in determining how colors should be combined and applied to meet contrast guidelines.

It would also be useful to create usage contexts to guide additions to the palette. for example: text + background, ui (border, icon) + background, background + background.

These would help identify common situations and ensure that you're adding the colors you need and avoiding future bloat.

Since companies are now being sued over a11y issues, it's definitely something that should be incorporated into the design process from the beginning.

<comment><USER11> Yes WCAG guidelines are useful. But, for me as a novice empathic but still a novice, they are not easy to use. At the very least, finding definitive examples and such often eludes me.

That aside, thanks for mentioning accessibility and #A11Y.

<comment><USER12> Here is a tool that makes it easier to pick foreground and background colors with high enough contrast according to WCAG guidelines: [https://webaim.org/resources/contrastchecker/](https://webaim.org/resources/contrastchecker/)

</comment></comment></comment><comment><USER13> Kinda ironic that he starts the article by decrying fancy color palette generators that give you 5 hex codes centered around a primary color, and then ends it by choosing a base color and filling in the gaps with 5 (possibly 10) shades from light to dark. That's exactly what color palette generators do!

The mistake most people do is going hog-wild with color palette generators. The vast majority of the time, you want a monochromatic scheme with a complementary accent color. Adjacent, triad, and tetrad schemes are quite special purpose, and you use them differently. Think of Google - it's a tetrad scheme, but the base color for all Google sites is _white_ , and all 4 colors of the logo are used as accents. You want to KISS - if you do have a multicolor palette, use the colors sparingly and pick a neutral white or grey as the primary background color.

<comment><USER14> No, not ironic, that's precisely what he doesn't do; he says you probably need 5-9 shades of each colour group - Primary, Secondary, Highlight, Greys, etc.

He also says the reason you can't write a generator is because every colour looks different and needs to be judged by your eyes.

</comment></comment><comment><USER15> Light grey sans-serif body font means you hate your readers' eyes. At least they didn't make it tiny as well.

Also, the color advice is bad. The garish "calculated and scientific" example is _more readable_ than the "What you actually need" example.

\- - - -

Edit: The differences between people's eyes and between monitors' color output mean that you probably shouldn't spend more than an hour or two (or a couple of hundred bucks) picking out a dependable conservative color pallet. In fact, the time it took to read that article should be enough to pick a pallet, _unless you just want to play with colors, which is fine._

</comment><comment><USER16> > Ever used one of those fancy color palette generators? You know, the ones > where you pick a starting color, tweak some options that probably include > some musical jargon like "triad" or "major fourth", and are then bestowed > the five perfect color swatches you should use to build your website?

> This calculated and scientific approach to picking the perfect color scheme > is extremely seductive, but not very useful.

Just recently I wondered if there is any scientific basis behind these approaches. I skimmed all research papers that I could find but not a single one of them provided serious data based support. All justification for these methods I found were historical, i. e. artists used color wheels and different methods of color selection on the wheels for a long time.

My conclusion so far is: There is no science what so ever behind these color palette generators.

I only spent about a day on this research and I'm not an expert, so if anyone has some pointers to serious research in that direction I'd be happy to know.

<comment><USER17> I'm happy to give them the benefit of the doubt, and I think many colour pickers wanted to do the right thing.

HSL or HSV was a step up from RGB, so it made sense to use it to derive other colours quickly. Because if you're an underpaid freelance developer, the primary colour is usually set by the client, but they usually son't have a full colour scheme. Using a colour wheel based tool gave good enough results fast.

Not only are perceptual uniform models like CIE L _a_ b*, and the derived CIELCh or CIEHLC mindbending to understand and code, but monitor colour gamuts sucked, and so it was overkill.

So is it scientific? If what you wanted was an easy way to derive a number of colours, sort of. If you need them to "look good", well that's art, not science. So ultimately, IDK what answer you're looking for. Colour wheels have always just been a nice way to visualise hue.

<comment><USER16> > If you need them to "look good", well that's art, not science.

I'm not so much interested in "look good" but in "look pleasing or harmonious together" and I think that's a question science might have an answer to.

It's no coincidence that the palette generators borrow musical jargon. In music the definitions of _minor second_ and _perfect octave_ are completely uncontroversial. That these two intervals have different musical qualities, we call them dissonance and consonance, is uncontroversial too. Sure, some cultures use dissonant intervals heavily in their music but they still recognize the different qualities. Most importantly there has been a ton of research in this field.

Contrast this with the state of the art in color science: When it comes to color harmony there is not even a single universal definition of opposite or complementary. Look at the Wikipedia article about that topic [1]. It mixes up three completely separate topics:

1\. Colors that when mixed together give a neutral hue

2\. Colors that are opposite of each other on some wheel

3\. Colors that supposedly have a certain effect, like contrast or harmony, when perceived next to each other

Color wheels are a dime a dozen. There is no shortage of claims that this and that color go well together but there doesn't seem to be any serious research.

I wonder if that is just my impression because it's not my field, or if maybe color science really is just not developed enough to tackle these kind of questions.

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

<comment><USER18> >I wonder if that is just my impression because it's not my field, or if maybe color science really is just not developed enough to tackle these kind of questions.

I have wondered the same thing ( [https://ask.metafilter.com/245014/Help-me- understand-color-t...](https://ask.metafilter.com/245014/Help-me-understand- color-theory-from-a-mechanistic-perspective) ) and haven't found anything.

I've had some subsequent thoughts. We know that there is a characteristic of the human perception of scenes called "color constancy". That is that our visual perceptual abilities are surprisingly robust to changes in the character of light sources. We may be aware of the light source color, but we easily "factor it out" of what we see of the objects in the scene. It is as if color constancy takes the distribution of colors and applies some transformation to standardize that distribution.

My guess is that the mechanisms underlying color constancy contribute to the aesthetic feel of the scene. If a scene's colors lie along a single line (e.g. a grayscale image), there is a sort of cramped or confined feeling (at least, I experience this), as if the color constancy mechanism is attempting to make a gaussian sphere* out of the colors but there's not enough variance to make it work.

At the same time, if you make a palette out of the corners of the RGB cube, there's an unusually high amount of variance. The image might be very vivid but it gives me an impression of excessive busy-ness or energy. The sphere has spikes now!

Maybe harmonious color schemes are those in which the color constancy mechanism doesn't have to do too much work to make the color distribution into a standard shape _... maybe. I don 't have any evidence or anything.

_I don't think the "standard" distribution of colors that would feel neutral is actually going to be a sphere, but it's not going to be perfectly flat and it's not going to be a straight line. It is possible to visualize the color histograms of images as 3d point clouds to get some sense of what feeling is evoked by different color distributions (e.g. [http://opensource.graphics/visualizing-the-3d-point-cloud- of...](http://opensource.graphics/visualizing-the-3d-point-cloud-of-rgb- colors/) )

</comment></comment></comment></comment><comment><USER19> And make sure to use LAB color space!

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

In LAB space, the distance between two colors approximate perceptual distance (how different two colors look). Its not exact---it can't be, because the space isn't actually Euclidean---but it's close.

RGB, on the other hand, isn't close. Here's a visualization of RGB space embedded in LAB space:

[https://en.wikipedia.org/wiki/HSL_and_HSV#/media/File:Srgb-i...](https://en.wikipedia.org/wiki/HSL_and_HSV#/media/File:Srgb- in-cielab.png)

If RGB space corresponded to what our eyes saw, that would be a hexagon.

</comment><comment><USER20> Great article, I especially liked:

> the ones that make you think of Facebook as "blue", even though it's really > mostly grey.

which seems obvious in retrospect.

I'm colour-blind (mostly red-green, sometimes blue-green too, never pinned down exactly which type - or types - it is) so I have used those generators before, and I think they do have value for me or others that just think they don't have a good eye for colours that look good together.

The opening example shows a nauseous combination of colours, but actually what the article mainly addresses is the lightness of each - presumably one could get some good results with a 'palette generator', and then following the advice here with the generated palette as the 'base colours'.

</comment><comment><USER21> After reading this, I created a theme color picker in a single HTML file with no libraries. It's only tested in the latest Chrome.

[https://gist.github.com/steve- taylor/40f54b400785258b80d4792...](https://gist.github.com/steve- taylor/40f54b400785258b80d4792a1b540501)

<comment><USER22> Tested and working well with the latest Firefox (v63). Nice work, this is handy!

</comment></comment><comment><USER23> No mention of color blindness or a11y, which seem like important factors in color selection.

<comment><USER24> This simulates the effects of various types of color blindness on any webpage:

[https://www.toptal.com/designers/colorfilter](https://www.toptal.com/designers/colorfilter)

Something like that could even be part of automated testing for graphical applications and websites -- why not?

</comment></comment><comment><USER25> > There's no real science

> It's not a science

I preach and preach that to people on certain other forums who insist you need one of those palette generators or palette samplers, and everyone praises them, but it's ART not SCIENCE or MATH! It's why there are artists who design the look of things and not scientists or engineers.

<comment><USER24> I think a big thing but underrated thing is iteration. Giving things time to "simmer", looking at things with fresh eyes often, i.e. having multiple shorter sessions instead of few long ones, and simply playing around with and comparing various ways how things could look, can get you quite a long way.

Otherwise, you end up with "coder colors".

[http://www.pouet.net/prod.php?which=53631](http://www.pouet.net/prod.php?which=53631)

</comment></comment><comment><USER26> I think it's assumed you would still use grays and whites if you use one of those palette generators.

</comment><comment><USER24> It's a bunch of variables, so expose them to the users, and let them create and share color schemes. Pick some of those for the off-the-shelf selection, and it'll be better than any _single_ color scheme.

Even better would be a standard way for websites and browsers to negotiate color schemes, and for users to be able to set specific themes for sites, a theme for all sites, themes depending on the URL, enforce legibility with color blindness, and so on. It's 2018, yet we don't even trust people with selecting user stylesheets in the GUI anymore.

To me, how to make neat colors is a discussion normal users should have, that it's so much in the hand of web designers is a failure in and of itself.

</comment><comment><USER27> While there are no absolutes when it comes to taste.

One design language that I really like is the Atlassian/Bitbucket one.

[https://atlassian.design/guidelines/brand/color-1](https://atlassian.design/guidelines/brand/color-1)

I've generally really liked the changes to bitbucket over the last few years in terms of UI and UX.

They also have an impressive component archive.

[https://atlaskit.atlassian.com/packages](https://atlaskit.atlassian.com/packages)

A lot of the packages are under an Apache 2 license, I can't say all as I haven't looked but the master repo is Apache 2.0 as well.

<comment><USER28> Those colour names in the Atlassian palette are hilarious.

<comment><USER27> Every design needs more cowbell.

</comment></comment></comment><comment><USER29> I think the key is to build the palette from a mental model of relationships. You start with a base color, and choose "adjustments" down the line to describe accent colors, etc.

The other perk about this approach is that you can then adjust the base color, and everything referencing it usually looks pretty good or only needs slightly adjusted.

I've been working on a tool for this off and on since 2015 ([https://www.colorproducer.com/](https://www.colorproducer.com/)). The app has some really annoying issues, mainly around UI. I think the main thing I did wrong was to make it work on a per CSS selector/color property basis. Most websites will have 50+ unique selectors with color value, so it becomes a lot of work. I'm trying to address this, and have been thinking of a "mapping" step, where the user picks out what selectors are a primary color, accent color, etc., and then works solely with those groupings.

Hopefully this makes sense, I've been thinking about it a lot and may be a little too stuck in my own head/thoughts.

</comment><comment><USER30> I actually really love that first example. Wish more sites looked like that.

<comment><USER7> For people with blue-yellow color blindness that page is a nightmare.

<comment><USER31> If it makes you feel any better, it's also a nightmare when you can see blue- yellow.

</comment></comment></comment><comment><USER32> This was really helpful to see how the author thought through the palette's creation. In my experience, I came to similar results, but over a long period of time and rather haphazardly after endless tweaking.

I would add that often times it's helpful to define a "light on dark bg palette" and "dark on light bg palette."

</comment><comment><USER33> _This calculated and scientific approach to picking the perfect color scheme is extremely seductive, but not very useful.

Well, unless you want your site to look like this:_

There's a difference between picking maximally distinctive colours (which a lot of palette generators are designed to do) for graphs and such, and picking colours for UI.

Personally, I think less colour and higher contrast is better than the trend of barely-distinguishable shades of grey; and of course, for desktop apps, please use the platform's standard UI colours because the user may have customised them for his/her preference/colour-perception and expect your app to be too.

</comment><comment><USER34> Let's say I created a suitable color palette. What would be the best way to make sure the colors are used consistently? – Giving it names like primary_700 or accent_1_700 seems a bit too technical.

<comment><USER35> Use a css preprocessor, and define variables with the technical names but classes that end up in html should have descriptive names. Something like this:

      $accent_1_700: #e60000;
      $accent_2_900: #ff9999;

      @mixin button_border($color) {
        border: 1px solid $color;
      }

      .alert-button {
        background-color: $accent_2_900;
        @include button_border($accent_1_700);
      }

This makes your color palette defined explicitly and easy to change in one place, and makes which color on the palette you're using in a given context defined explicitly as well.

</comment></comment><comment><USER36> Strapless, a color library I built, automates a lot of this if you use LessCSS: [http://strapless.io/](http://strapless.io/)

<comment><USER37> Just tried it. Impressive. Thanks!

</comment></comment><comment><USER11> I'm not sure (read: very new tbought) what this would look like in terms of a broader theory, or mixins, but I would imagine it might be helpful, just like with music, to think of colors as having a key; that at the very least there's some way to automatically define the colors __not__ in the key.

Okay. It's a raw idea :) Maybe someone else here can flesh it out?

</comment><comment><USER38> Cool article, but isn't the point of a palette that you limit your options so it's easier to pick a color and the colors on your site are more consistent? This article suggests every palette should have 6 colors and 9 shades for each color, which doesn't really narrow things down...

</comment><comment><USER39> Awesome blog post, providing interesting approaches.

What I always struggle with is not the different shades, but finding suitable other colors which go along with a given one. Let's say your company already has a hex code for a blue. How do you find appropriate greens and reds to go along with it?

<comment><USER40> Here are some common techniques:

1\. Hue shift your complements towards the primary instead of trying to use the full range. This mimicks what we experience in different lighting conditions: under a red light, everything looks red.

2\. Create ramps of saturation within the palette. If you have a dark blue primary, add a grayish transition and pastels to complement.

3\. Make a larger palette than you need right now and then trim it down. When making palettes for pixel art(a great way to learn color), there's an iteration between making color ramps and making test images to spot the flexibility of the palette. You can do similarly for the site design: you don't want to have tons of colors, you want colors that can be used in many different roles.

</comment></comment><comment><USER41> Also, for palette design it can be a good idea to get a good monitor and have it calibrated.

</comment><comment><USER42> I use [https://www.colorhexa.com](https://www.colorhexa.com) for colors. It gives you schemes based on your chosen color, previews, and more. It even has a color blindness simulator.

</comment><comment><USER43> For years, I've been using [http://www.0to255.com](http://www.0to255.com) to come up my scales. For each hex, you're shown a monochromatic scale of 32 colors. I love that site!

</comment><comment><USER44> This is a great article. Anyone know of any articles that explain how to use a tool(say Sketch) to pick the different shades of colors that the article mentions?

</comment><comment><USER45> [http://colormind.io/bootstrap/](http://colormind.io/bootstrap/)

</comment><comment><USER46> I fear that this is exactly the kind of advice that makes websites all look the same.

<comment><USER47> And books all look the same. White background with black text. Even print magazines mostly all look the same. There is only so much variation you can introduce before the design starts to draw attention away from your content. Most websites designs should be comforting and ignorable.</comment></comment>


The desperate inequality behind global tax dodging - <AUTHOR> https://www.theguardian.com/commentisfree/2017/nov/08/tax-havens-dodging-theft-multinationals-avoiding-tax <comment><USER2> Here is a crazy idea - have a zero percent tax on corporations and make people pay taxes on income and investments?

If I own shares in a small, public company, they pay corporate income tax, then they pay dividends on which I have to pay income tax. Its fucking lame. Eventually people will want to take money out of the company, tax it then.

<comment><USER3> Agree. Why do companies pay massive taxes - do they use massive amounts of public services ? No!

Also the article calls not paying more taxes than you have to "theft".

Others may view getting the bejezuz taxed out of your corporation as the real theft that is going on.

In either event, the real issue is that countries compete with their tax rates for company HQ's - the USA has been very uncompetitive for a long time, while places like Ireland and Hong Kong ans Singapore have been very competitive. When you lose the competitive game, don't shout moral outrage, up your game.</comment></comment>


Ask HN: Ripley as a Service, any interest? - <AUTHOR> I was thinking: maybe it could be a good idea to create a software like Ripley as a service to insure all computers shut down in a certain location if a robbery is ongoing.
Do you guys think there would be any interest from the businesses for such a service ?
Reference: https://news.ycombinator.com/item?id=16154058 <comment><USER2> I think there would be interest, but I can't help but think most of the interest will be in avoiding legal issues. Robbers don't generally steal data off the computers.

In the case of legal issues I wonder about clientele you will attract, and your pricing strategy.

<comment><AUTHOR> For the pricing strategy, it could be as simple as "$x per month/year per workstation"

Or some discounted packages: $x 1-10 computers, $y 11-100, $z 101-1000.

<comment><USER2> yeah but if the clients will in reality turn out to only be people who want to avoid legal issues then they might be more trouble than you imagine, therefore need to charge more and then based on what you need to charge you might not be able to keep enough clients to make creating/maintaining service especially worthwhile.

<comment><AUTHOR> In that case, I'd go with:

      - package1 ($): Service as is.
      - package2 ($$): Self-hosted as is.
      - package3 ($$$): Self-hosted with support.</comment></comment></comment></comment>


Utah starting $2.5M debt forgiveness program for tech grads - <AUTHOR> https://www.ksl.com/article/46472407/utah-starting-25m-debt-forgiveness-program-for-tech-grads <comment><USER2> This is pretty interesting and exciting. Salt Lake City is a great and affordable city and it will be interesting what result this has on the number of startups and tech companies of the future.</comment>


Ask HN: Most Influential Experience? - <AUTHOR>

I know for a lot of people one experience, class, or person had such a profound effect that it radically changed their life's path or a significant part of it.
What was yours?
Here's mine: a programmer was willing to teach my home school co-op group programming. Before I took that class I wanted to "build" computers. (Basically, I wanted to be a tech.) Afterwards, I am looking at a career in programming. (Which, as you know, has a gigantically larger potential.) I doubt I'd be programming if it wasn't for that class. <comment><USER2> Mine was spending four days straight building a MS Windows style environment in x86 assembler. The assignment was Conway's Game of Life so I went a little overboard. It lead to a research job on parallel computers, access to amazing computer labs, a project for The Rolling Stones, and probably my first programming job. Thanks to friends that brought me food during the effort.

A close second was when my dad brought home an XT computer and Pascal books.

</comment><comment><USER3> I don't think it was profound but it totally changed the course of my life. Quitting college a week before it started to take a Web development job (in 1998). I was off to take law and math, so most likely would have gone to university and done "other things" had I not been lured away by the dot com era. I couldn't say whether it was for the better or not, though, especially as I'm now finally heading back to do a math degree..

</comment><comment><USER4> I got a full scholarship to study at high school in another country when I was fifteen. Total paradigm shift after that. Second paradigm shift came when I worked for a startup for the first time when I was nineteen, even before knowing that there was this thing called "startups."</comment>


Atlas-a high performance mysql proxy - <AUTHOR>

Atlas is a MySQL protocol-based database middleware project developed and maintained by infrastructure team of the Web platform Department in Qihoo 360 company. It fixed lots of bugs and added lot of new functions on the basis of MySQL-Proxy 0.8.2. Currently the project has been widely applied in 360 company, many MySQL business has connected to the Atlas platform. The number of read and write requests forwarded by Atlas has reached billions. github:https://github.com/Qihoo360/Atlas <comment><AUTHOR> more than 50 companies use Atlas in their production environment</comment>


The Blockchain Makes Headway in the Oil and Gas Industry - <AUTHOR> https://btcmanager.com/news/business/the-blockchain-makes-headway-in-the-oil-and-gas-industry/ <comment><USER2> tl;dr the blockchain does not make headway in the oil and gas industry.

The entire claim is a CEO saying: "I've seen sufficient bank presentations to believe the technology is there and it's solid." That's it. That's all.</comment>


Guessing the Teacher's Password - <AUTHOR> http://www.overcomingbias.com/2007/08/guessing-the-te.html

<comment><USER2> Someone should write a book like the little schemer but for physics. One of the best classes I took in college was somewhat like this. We measured the period of the pendulum using our heartbeats, and we also measured how long it took things to roll down differently sloped ramps. From this we derived the period of the pendulum and the relationship between slope and speed. Eventually we used this to derive the universal law of gravitation using the period of the moon's orbit as the only given. It was pretty cool because there was no math involved. Instead of using calculus to derive the equations, we instead found them inductively by iterating over a couple thousand lines in excel and then looking for the pattern. The idea of the class was to understand physics by deriving all the equations the same way the people who discovered them did. It was pretty cool.

<comment><USER3> What school/teacher? I'd be interested in finding a curriculum or any references about that. I have daughters and I'm dying to find a good way to present science to them.

<comment><USER2> Prof. Peter Stein at Cornell. The class is Physics 202. I can email you the class notes and problem sets if you'd like. I'll also email him and ask if he's thought about publishing the course materials online.

<comment><USER4> Can you just put them online somewhere?

<comment><USER2> <http://www.alexkrupp.com/Phys202.zip>

If you glance at my answers to problem sets 4, 5, and 8 then you'll get the general idea of what the course involves. The problem sets are really fun because you're forced to play with the numbers and really understand the material. It might not be as hard as a traditional physics course, but it's every bit as rigorous in the real sense of the word. It's brilliance is that it really stresses the fundamentals, probably more so than any other physics material in existence. This is important because, as one professional Go player said after observing a Japanese baseball game,

"In every confrontation with a real American professional team it seems that what we need to learn from them, besides their technique of course, is how uniformly faithful their players are to the fundamentals. Faithfulness to the fundamentals seems to be a common thread linking professionalism in all areas." (T. Kageyama)

<comment><USER5> Sounds like a great course. How exactly did that course fit into the Cornell curriculum? Was it an elective for most people or could it substitute for algebra/calc based physics?

<comment><USER2> Cornell has two sets of requirements. The requirements for your college within the university, and the requirements for your major. This course fulfilled the distribution requirements for the college I was in. However, it wouldn't necessarily count as one of the required science classes for your major. So, for example, if you were a physics student then it wouldn't count toward your major, so therefor it would make more sense to take another class that you could count toward both your major and your college distribution requirement. Sorry if this is unclear, it's kind of complicated.

<comment><USER5> Thanks, that made sense.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER6> I spend some of my time teaching at a private university. During a discussion with one student he said, "All I really know about Plato is that he thought the forms were transcendent whereas Aristotle thought the forms were immanent."

"Oh," said I, "that's interesting. What does it mean for a form to be transcendent or immanent?"

"I don't know, I just know that's what they thought."

We then had a discussion about whether or not he really knew that, and whether or not he was OK with paying over $25k a year to learn how to be a parrot.

The sad thing: he was OK with it, and probably rightly so. He realized that mostly what people want are parrots and you can get paid quite a decent amount of money for being a good parrot. Not a bad gig if you're fine being a cog. There are certain comforts it provides.

</comment><comment><USER7> This sadly is how the world works. In school, even in high school and college, the students who guess the teacher's password are rewarded. The (few) students who make an effort to discover and think through something on their own are criticized for wandering from the beaten path, even on the occasions when they're actually right.

High school science competitions (school science fairs, all the way upto Siemens-Westinghouse and Intel STS) particularly guilty of this.

<comment><USER6> "The (few) students who make an effort to discover and think through something on their own are criticized for wandering from the beaten path, even on the occasions when they're actually right."

I remember I just -couldn't- accept that we can't take square roots of negative numbers. I mean, sure, two negatives multiplied together is a positive, but...there HAS to be a way! Numbers, to my 6th grade mind, weren't arbitrarily going to deny your ability to manipulate them.

Fortunately for me, I happened to be reading a book on Mandlebrot and in the course of discussing his work the author introduces the concept of imaginary numbers. So the next day in class I asked: "Are you suuuure?"

"Yes, I'm sure."

"Well, I was reading in this book and so-and-so says you can take the square root of negative numbers, you get 'i' for the root of -1 and..."

"Why don't you go wait outside."

Where I got told that although I move to the beat of a different drummer, when I'm in her class, I really just need to be quiet. That's when public education and I had a falling out from which our relationship has never recovered.

All of that to say: I think part of the 'problem' is that kids who do try to think on their own are often in a situation where they're challenging accepted rules without the social grace to do so constructively. But rather than being taught the social skills, they're just shut down. Very sad, actually. They could be taught how to 'wander well'.

<comment><USER8> Isn't sqrt(-1) = i an axiom though, and not a theorem? In other words, if you just started with the integers and the basic rules of arithmetic, you will never run into the need for imaginary numbers. It's only after you posit their existence that a lot of cool results flow from it.

Am I wrong there?

<comment><USER6> I don't really know how to interpret your sentence. Complex numbers are a field in which you do 'basic rules of arithmetic'. You can't do the 'basic rules of arithmetic' on integers.

i is defined as sqrt(-1), if that answers your question.

<comment><USER8> I should have said "Real Numbers" instead of "Integers", sorry.

My point is that sqrt(-1) = i is an extra assumption that you don't need to make in order to derive the math you do in school. If you don't make that assumption, you can still derive a lot of math. If you do make that assumption, then you can also derive the theorems of complex analysis.

I think that's true, anyway. I could be wrong.

It just seems strange to me that someone would be bothered by the lack of negative square roots, since their existence is never derived, only assumed. But then again, people's minds work very differently, especially in Mathematics.

I was the opposite in Math class. I fought accepting "i" when they tried to teach it to us since it seemed so arbitrary and contrived to me. This was before I discovered that all Math is arbitrary and that there is no "real math", anyway.

<comment><USER9> As the "Road to Reality" explains, if you study Quantum mechanics, complex numbers become every bit as "real" as the integers or real numbers. You just can't explain some of the quantum mechanical phenomena or concepts without using complex numbers at all.

</comment></comment></comment></comment></comment></comment><comment><USER10> overcomingbias is one of those websites you should read every article in, like paul graham's essays

<comment><USER11> yeah, although you'd have a lot more work to do. Not only are there multiple posts a day but some of Elizer's have dependency trees reaching months back!

</comment></comment><comment><USER12> I remember the first time I got an F on an assignment even though I'd gotten the correct answer to every problem.

I hadn't reached my correct answers the "right" way.

<comment><USER13> If the teacher was teaching a process, and looking for evidence that you understood that process, it seems entirely reasonable to not count your work.

<comment><USER12> I had simply taken shortcuts I'd seen later in the book for factoring quadratics. They wanted to see it written exactly as it appeared in the current examples.

I realized that math in school was more like one of those simon games where you just mindlessly press the arbitrary sequence of lights you just saw, than actual mathematics. This analogy helped me suffer through "school math" while I perused real math on my own.

</comment></comment></comment><comment><USER13> I've been thinking along similar lines since I've been interviewing; far too many interviewers are only looking for the password.

</comment><comment><USER14> Only tangentially related, but years ago, in elementary school, I decided to guess the password after the school restricted access to SimCity. I got it right on the first try, it was just the school name, but I told everyone 'I hacked it', for major props.</comment>


Chrome 68 Released: HTTP Sites Marked as "Not Secure" - <AUTHOR> https://chromereleases.googleblog.com/2018/07/stable-channel-update-for-desktop.html <comment> Sol- Surely a good thing since marking HTTPS as "secure" was always a bit misleading and normal users didn't understand that you were still subject to phishing attempts and such even with an encrypted transport and authenticated servers.

Now it reflects the real world better: HTTPS is necessary but not sufficient for security, but with HTTP only you definitely don't have much security. I guess that's the best you can guarantee or communicate via the browser UI.

<comment><USER2> HTTPS is about securing the connection to the website and NOT about identifying the website. It is sufficient for ensuring that intermediaries (e.g. your ISP) cannot meddle with the content being served (i.e. it's a form of signing the content for publishers), it ensures that the browsing stays private (with new DNS developments, the domain name stays private too) and it secures the data being sent (e.g. passwords).

Nothing is sufficient for total security, but "HTTPS everywhere" is a vast improvement, going from zero security to almost sufficient security over night.

<comment><USER3> >HTTPS is about securing the connection to the website and NOT about identifying the website.

Unfortunately, it's both. Otherwise we would have had widespread encrypted connections decades ago. I'm not sure why browsers decided that no encryption is just fine, but encryption with a self-signed certificate triggers warnings that it's the end of the world.

<comment><USER4> Because negotiated encryption is useless if you can't be sure you're talking to the right person. If you are using a self-signed cert with an unknown thumbprint, how does the other side know you aren't a MITM attacker?

</comment></comment></comment></comment><comment><USER5> So has Google said how they expect router configuration pages, network printers, NAS boxes and other local-network-connected devices to deal with this?

I mean, I know Plex has an arrangement where they provide a dynamic DNS style record and they have a special deal with Digicert to issue loads of wildcard certificates [1] but that needs a bunch of infrastructure and a special deal with a CA, as well as precluding offline use and breaking if the supplier ever drops support.

And obviously, you can also use a self-signed certificate - but that means teaching users "Just click ignore on the invalid certificate warning" and I've heard people say we shouldn't train users to ignore invalid certificate warnings.

Is there some alternative solution Google is proposing?

[1] [https://blog.filippo.io/how-plex-is-doing-https-for-all- its-...](https://blog.filippo.io/how-plex-is-doing-https-for-all-its-users/)

<comment><USER6> Your devices can get letsencrypt certs just like before. Or users get notified about how the connection is in plaintext. Both are improvements to the previous situation.

<comment><USER7> > Your devices can get letsencrypt certs

I don't want all my internal network hosts exposed on a certificate transparency log.

I want my http connections to work without scary warnings in my local home network. Because if you show me scary warnings, and no meaningful way to implement the http connection securely, I will just start to ignore them. And if I ignore them in my lan, I will ignore them on the internet too. And that would be a net security loss.

So either use something else entirely inside a lan, like ToFU like ssh, or allow http connections without tls and without scary warnings. But I think deprecating http in local home lans with no meaningful way to make them secure is not a step in the right direction.

<comment><USER8> There are three options

1\. All your systems are provisioned to trust your CA, which can have any rules you like. This counts as "Secure". Almost certainly your rules are garbage, but I don't use your systems or trust your CA so I don't care

2\. Your local systems which you refuse to be transparent about are marked "Not Secure" because there's no reason for a client to have any confidence in their identity

3\. You offer transparency so that everyone (e.g. me) can see that there aren't any shenanigans with the global public systems we all trust.

The fact that you don't like any of these options doesn't mean there are no options, just that you didn't like them.

<comment><USER9> Removing the 4th option, do nothing, is the issue here. Action is being forced that has no impact to GP.

<comment><USER8> Your "Fourth option" is still there, but this universe has time's arrow, so you get the second outcome I described.

Because of time's arrow, it's mistake to assume that if you do nothing then nothing will happen, you're literally up against the Laws of Thermodynamics. The only people who think you might win that fight are crackpots building perpetual motion machines.

</comment></comment></comment></comment></comment></comment><comment><USER10> For anyone wondering exactly what the current plan is regarding these secure/not-secure indicators in upcoming releases, the Chromium Project has a detailed proposal and timeline: [https://www.chromium.org/Home/chromium- security/marking-http...](https://www.chromium.org/Home/chromium- security/marking-http-as-non-secure)

Basically it comes down to eventually removing "secure" indicators completely and only indicating when a page is considered "not secure".

As an aside, Let's Encrypt has been a godsend to me during this change.

<comment><USER11> "Let's Encrypt has been a godsend to me during this change."

I think that's what made Google push this, since they are on the board of advisors for the Let's encrypt certificate authority.

<comment><USER12> It's more likely that Google's support for HTTPS everywhere caused them to do both. It introduced HTTPS as a ranking signal in 2014, well before Let's Encrypt.

</comment></comment></comment><comment><USER13> Anyone else got stories like this?

JustHost, one of the hosts I have a few clients websites on for years, suddenly started to offer free Let's Encrypt SSL certs to protect users from this change (previously you had to pay for fixed IP, and the certificate itself) - what a great thing to happen.

All I had to do was change a few .htaccess files, a few DB entries and track down a few template files that had HTTP external JS references.

It was enough work that I had to invoice for the conversion (with the option of not bothering) - but annual fees are still the same, clients websites have SSL and _every_ client wanted the upgrade, rather than be marked "insecure".

I really think this is a breakthrough change!

<comment><USER14> OVH did the same thing silently in mid-2016 for shared hosting. GitHub Pages did that silently too earlier this year for custom domains, and made an announce in May.

That's awesome :)

<comment><USER15> My GitHub pages site is serving a certificate that expired in June though, any idea how to get that updated?

<comment><USER16> I had the same problem and it got fixed quickly after I contacted them. It's a bug in their auto-renewal script.

</comment></comment></comment></comment><comment><USER17> As somebody on the dev build train normally I've seen this change for quite a while now and my brain quickly stopped processing the warning on HTTP only sites.

I hope that flipping the switch now will cause enough of the remaining non- https sites to start looking into switching before Chrome feels the need to start adding "more prominent" warnings (for example using a modal dialog).

I agree that, yes, in general, we should all be using HTTPS on the internet, but non-secured HTTP still makes sense for example during development or for home routers and printers where traffic encryption is less important compared to the initial UX (my parents could probably set up a home router on their own if it's using non-encrypted HTTP but they would be totally unable to proceed if it's using a self-signed cert).

<comment><USER18> I think one solution would be to make the secure badge more prominent, thus when insecure your eye would be attracted to it. One solution would to be make the entire background color of the secure badge green and invert "Secure" text white.

<comment><USER19> That's basically the approach taken so far and it hasn't worked. Users don't notice these decorations.

Chrome wants to move away from the "Secure" wording because people don't understand what it means, for example, they think it means they can trust the site not to misuse their credit card details.

<comment><USER20> Well, it doesn't help that the text (when clicking on 'Secure') says:

 _Your information (for example, passwords and credit card numbers) is private when it is sent to this site._

To the layman this means: Chrome says it is safe to enter credentials on this site (and not that it just means that it is hard to eavesdrop on the connection), especially that because this does not say anything about the trustworthiness of the site.

<comment><USER12> How would you phrase it instead, that would communicate the nuances of the issue and allow the lay user to assess the risk?

</comment></comment></comment></comment></comment><comment><USER21> For all those that scream about local devices and HTTPS: if you really want HTTPS (and your printer/router supports HTTPS) you can get a certificate very easily from let's encrypt:

\- create an "internal" domain for your lan, e.g. home.example.com

\- make AWS Route53 handle that zone

\- create some AWS IAM credentials for Route53

\- create some hosts (e.g. router.home.example.com)

\- use certbot with the route53 dns option to get a certificate and private key. Certbot will automagically add some TXT records to verify hostname ownership and provide you with that.

NO NEED to expose anything on your public IPs, but mind you: your hostname will appear in public CT logs. No "greatnascontainingmypartnersnudephotos.home.example.com" hostnames!

<comment><USER22> This requires the device to be connected to the internet often which isn't always the case. If the device is the gateway you now have a circular dependency (one that will only cause problems rarely but it's still there.)

As long as http still works it's fine, I think a security warning about it is probably a good thing, but there definitely are places where "just use let's encrypt" isn't an acceptable solution.

</comment></comment><comment><USER23> In China, many mainstream websites are still HTTP-only. 99% of government websites are HTTP, including the ones you input very sensitive information into. No wonder black data market for any kind of records including medical, surveillance, tax etc. here is so well developed and cheap. Somehow, SSL certificates for CDNs cost around US$2000/year. Proprietary DNS extensions on Baidu, Alibaba, and Tencent clouds like 30x redirects do not work with HTTPS at all.

<comment><USER24> 1\. Besides making HTTPS non-mandatory, what else can businesses do to try and attain/maintain a viable presence if they think they have something to offer that may not be antagonistic to the Chinese government? Run on local servers? (By "viable presence", I mean the ability to reach a small level of success and not only be known by those who have figured out how to successfully consistently break through the GFW, or been deemed eligible for a waiver)

2\. I'm beginning to see the HTTPS thing as some kind of strategic war move on the part of the US, possibly 5 eyes, possibly other countries. I don't see it making things simpler, only more complicated (one example I can give is [https://news.ycombinator.com/item?id=17540111](https://news.ycombinator.com/item?id=17540111) \- it's a lot harder for me to analyze Web traffic within my own LAN now, I have to set up a machine capable of breaking HTTPS, then secure it well enough I'm still confident to do my banking/etc).

<comment><USER25> Re: China, just get an ICP. Aliyun will help you. You will need a Chinese business entity and some form of in country hosting but it's not onerous

</comment></comment></comment><comment><USER26> Not related to the 'not secure' marking, but on the page it says they fixed a medium severity security bug reported in _2014_.

> [$500][394518] Medium CVE-2018-6169: Permissions bypass in extension > installation . Reported by Sam P on 2014-07-16

And given the relatively low issue number (e.g. [http://crbug.com/394520](http://crbug.com/394520) is from 2014), it's not a typo.

<comment><USER24> That issue number is "Intermittently, first key stroke is missed". The two issues it links to also deal with keyboard input. I don't see anything security-related in there.

O.o

<comment><USER26> The actual issue is [http://crbug.com/394518](http://crbug.com/394518), which is not public.

</comment></comment></comment><comment><USER27> Now it's time to make local development environment also HTTPS. Make yourself a Certificate Authority CA and issues local certificates. This makes for no warnings in browsers and ensures a better development experience. A post from my colleague on how to do it. [https://reactpaths.com/how-to-get-https- working-in-localhost...](https://reactpaths.com/how-to-get-https-working-in- localhost-development-environment-f17de34af046)

</comment><comment><USER28> To play the devil's advocate and being very cynic (which is always fair game IMHO):

This change has the effect of pushing even mundane websites to use SSL, and so locking out corporate-level and other players from analysing web usage, or at least making them less effective, which enhances and increases the Google's "web scale" analysis dominant position even more.

<comment><USER29> Nani? What does https have to do with analyzing web usage? Whatever that means exactly.

<comment><USER28> ISPs (almost all of them) and lots of corporate (school, business, university) firewalls run analysers on websites and aggregate that data.

This data can provide a fair bit of powerful insight and intelligence into things like change of trends and growth of businesses.

</comment></comment></comment><comment><USER30> I'm surprised nobody's talking about the political implications here. This could do more damage to the open internet than revoking net neutrality.

Here's a link to hn.algolia.com for the search 'ssl revoked.'

[https://hn.algolia.com/?utm_source=opensearch&utm_medium=sea...](https://hn.algolia.com/?utm_source=opensearch&utm_medium=search&utm_campaign=opensearch&query=ssl%20revoked&sort=byPopularity&prefix&page=0&dateRange=all&type=story)

</comment><comment><USER3> Anyone have a screenshot of what the new warning looks like?

<comment><USER31> [https://security.googleblog.com/2018/02/a-secure-web-is- here...](https://security.googleblog.com/2018/02/a-secure-web-is-here-to- stay.html)

</comment></comment><comment><USER32> Bit silly for a blanket policy. Who cares if a read-only site is delivered over HTTP, HTTPS, or carrier pidgeon?

<comment><USER33> If you care at all what the site says, it should be important to you that you can verify who said it.

</comment></comment><comment><USER34> Goodbye chrome then. Basically corporate scumbags pushing their own agenda with just enough plausibility that the gullible will help push their agenda for them.

What happened to "do no evil". Seems to be all google do now.

<comment><USER35> What on earth are you talking about?

I've heard this nonsense over and over again, and not a single person has been able to provide a plausible explanation why this is a bad thing to do.

<comment><USER31> See [https://scotthelme.co.uk/https-anti- vaxxers/](https://scotthelme.co.uk/https-anti-vaxxers/)

</comment></comment></comment><comment><USER36> All legacy content heritage that is hosted using http protocol just became not secure in Chrome. What solution does google suggest? Who will pay to upgrade old infrastructure? Pandora box.

<comment><USER37> All legacy content that is hosted using http protocol is, in fact, not secure. It's definitely not a bad thing to warn people.

<comment><USER36> For general public 'not secure' imply something like 'not safe'.

<comment><USER38> That is exactly why Google's choice of wording is so poor. Far better would be 'encrypted/not encrypted' as that is all https really is. Safe can have far to many meanings and I won't be at all surprised when Google faces a class action when 'unsafe' things happen on a website they deem 'safe.'

Personally don't understand the heavy push to force https on everything and anything. The maintenance/time required to set up and maintain is not insignificant and is really quite pointless in many situations. Do you really need an encrypted connection to LOLCats?

<comment><USER37> You need an encrypted connection, period.

If you only use an encrypted connection when you need it, then one can know that, well, you need it.

You have nothing to hide... until you do.

</comment></comment></comment></comment></comment><comment><USER39> How about blogs that only work with JavaScript and external sources allowed? Those sites should be marked as "Not worth your time"

<comment><USER40> The link works well in links, suggesting your problem description is invalid. Are you allowing execution of some of the JS on the site perhaps?</comment></comment>


Show HN: A list of books recommended by Indie Hackers - <AUTHOR> https://www.ihbooks.com/ <comment><AUTHOR> Yesterday I've been hunted on Product Hunt: [https://www.producthunt.com/posts/ihbooks](https://www.producthunt.com/posts/ihbooks)

IHBOOKS has finished product number 5 of the day, that's really cool! If you go on [https://www.ihbooks.com/open](https://www.ihbooks.com/open), you will find some data about the traffic.

I advise you to check this page on desktop, easier to read.

</comment><comment><USER2> Why not make the Amazon links affiliate links? I don't think anyone would mind

<comment><AUTHOR> Yes I thought about it at the beginning.

But after reading the conditions of their program, I realize that I can't download the covers from Amazon if I want to use their program. Instead, I need to paste some code from them (inside this code you find the image, redirection...).

The problem is that I'm using a specific CMS, that allow me to dynamically showcase each book in an easy way, by using the downloaded covers. I could not do the same if I need to use their code.

I don't know if It's clear for you.

</comment></comment><comment><USER3> Wait.. they actually have time for Tony Robbins type books? Marissa Mayer?</comment>


Are there any startups applying to YC that are a man short? - <AUTHOR>

I'm 28, I'm from eastern Europe and I've been working with computers since I was a kid. When I was growing up server-side includes and CGI was how you did web. When I first saw FI I was amazed. I learned socket programming before I wrote my first line of Javascript.
Recently I've been working on my own as a developer-for-hire. I wrote my own compositing window manager for Linux, from scratch, in pure C. I'm working on a Mac OS X kernel driver for fun. I think Ruby is the next best thing after sliced bread and Common Lisp.
It's my belief that intuition, wide range of experience and persistence make better platform for a hacker than learning by rote.
What I lack is partners in crime. I remember working with my team at one of my ex-employers, when we pulled off amazing stunts to fix other teams' problems. We were united by our wish to put things right. We pulled all-nighters. We worked weekends. We moved mountains, and I was proud of them and the work we did together.
I'd like to work in a team like that again, but this time to work for myself, not for some faceless Company.
Does anyone think they could use my motivation, experience and love of technology? <comment><USER2> Hey Ivan! Ming from mrtweet here - we are building on our current app to do some (hopefully) super cool things with the real time data sets. If that is an area that you are interested in, let me know. email@example.com

thanks!

Ps: we are a ruby shop, and we have tonnes of server side code to write. ;)

</comment><comment><USER3> Dobar dan,

I am not in YC, but am geographically a bit closer.

I don't have One Big Idea that I'm working on right now, but if you ever wanted to come visit in Padova (or meet in Trieste or thereabouts), it'd be interesting to talk and see if we have something in common that we could work on.

</comment><comment><USER4> Hi ivan. Drop me a note if you're interested in mobile startups. We use a hybrid of back-end "cloud" services for the back-end: GAE (Python), Amazon SQS for message routing, and another server for push messaging (PHP). If you're curious, write to us: ryan [at] sayhiapp.com

</comment><comment><USER5> Hey ivan, I will be launching my startup at techcrunch50 this year, looking for someone to come on board with co-founder type equity prior to closing funding email me at sid dot Viswanathan at gmail if interested -sid

</comment><comment><USER6> Ivan, I am looking for a couple people:

<http://ycombinator-w10-cofounder-search.tumblr.com/>

Are you looking to relocate to the US?

</comment><comment><USER7> Ivan,

feel free to drop me en email at: email@example.com We will apply with our startup for YCombinator this year. We are 3 founders and located in London.

Would be great to hear from you.

Bastian

</comment><comment><USER8> You should put an email in your profile :-)

<comment><AUTHOR> Thanks for the suggestion. I added it to my about section of the profile!

</comment></comment><comment><AUTHOR> I'd like to thank everyone who contacted me! I've replied to most of you, and those that didn't get replies, I'm working on them!

I hope something good will come of this! :-)

</comment><comment><USER9> hey. send me a note. james at imaj.es.</comment>


Opus, the open codec for podcasts and Internet audio - <AUTHOR> https://auphonic.com/blog/2012/09/26/opus-revolutionary-open-audio-codec-podcasts-and-internet-audio/

<comment><AUTHOR> What makes Opus particularly attractive for podcasting is the fact that it unites the benefits of music- and speech-specific audio codecs - listen to the examples ;)

</comment><comment><USER2> What I really like about Opus is that it provides excellent sound quality even at very low bitrates - and at very low latencies as well. Those two things really distinguish it from other lossy codecs, such as MP3 or AAC.

<comment><USER3> well, i would be interested in aac examples, they only compare it to mp3 ...

</comment></comment><comment><USER4> I wonder if it's even possible to switch iTunes to this, from the legal perspective? Will major labels allow new format?

<comment><AUTHOR> If iTunes switches, then everyone will use it ...

They use a different technique than in other lossy codecs (mp3, acc, etc.) without a psychoacoustic model. And the algorithms are actually quite old and not patented anymore (as in aac, mp3) - so in theory it should work ;)

However, I think libopus should also compile on the iPhone, so it should be possible to play .opus files on i-devices.

<comment><USER4> No, I'm not at all concerned about tech details. It's just that a big part of itunes evolution was related to different label legal things

</comment></comment></comment><comment><USER5> Might be interesting if it's used on the mobile version of skype.

<comment><USER2> I think the Skype implementation is in fact complete, just not released yet.</comment></comment>


"Get Out of Jail Free" Cards - <AUTHOR> http://marginalrevolution.com/marginalrevolution/2018/01/get-jail-free-cards.html <comment><USER2> I was going to say "unbelievable" but more like "unsurprising".</comment>


Taiga, a new open source project management tool with focus on usability - <AUTHOR> http://opensource.com/business/14/10/taiga-open-source-project-management-tool

<comment><USER2> My favorite part is their cookie policy.

> Our site uses cookies, which our Oompa Loompas munch on to keep our site > running. Our lawyer, who is one tough cookie, and is himself obsessed with > cookies, wants you to know that Taiga uses cookies. He's a simple-minded > man, and requires obvious announcements like this. So here it is: our cookie > policy, which you can read more about by clicking here is best summarized by > the Cookie Monster himself: "C is for Cookie and Cookie is for me."

</comment><comment><USER3> I haven't completed the setup yet, but I'm already super impressed with the project. Providing a Vagrant so you can spool up a local instance of the app is just fantastic. And the docs. Wow, the docs. Directly from the docs:

"Because taiga is still a young project we consider it is currently in beta state."

Kudos to the team, because these docs are well ahead of many projects that are far more mature. Spotted a broken link here or there, but looking very good. Can't wait to try the product.

</comment><comment><USER4> I don't really understand the difference between kanban vs scrum. I guess both have a list of features to implement.

</comment><comment><USER5> Is this named after the anime character, or the Russian geographical region? If it is named after the former I'm not using it. Why do all software people have to be massive weebs?

</comment><comment><USER6> UI is pretty sweet!

<comment><USER7> This is always the subjective thing. For me, "easy-to-use drag and drop interface" is normally a deal-killer. The more you make me switch from keyboard to mouse, the less I am going to use the tool.

A project management tool should be able to glean everything it needs to know about what the developers are doing from the source control system. If I have to write a commit message AND update the task in some other system, I'm not likely to find the tool useful.

</comment></comment><comment><USER8> I am sorry if I am too frank here, but the landing page ([https://taiga.io/](https://taiga.io/)) is just really, really bad.

Not only do the elements not respect their visual boundaries, the whole layout is cluttered, the typography a mess, the color palette is rightout ugly. Shudder.

This is very much a case where less would be so much more. I really do hope the design is not an indicator of what I should expect when actually looking at your codebase.

<comment><USER9> Hi Taiga here. Thanks for your comments. We'll certainly talk about your thoughts seriously on our next monday morning developer team meeting. Please do loo at our code base (it's all on GitHub) would love to see what you think. Thanks.

<comment><USER10> Your company's website, kaleidos.net, is down with an "internal server error". I'm curious about companies established in Spain because I'm a Spaniard that moved to Germany 14 years ago and since becoming a freelancer three yeas ago I've considered moving back there, but each time I take a close look I get discouraged. In the page footer it says that Taiga is an LLC. Does it mean that you established it in the UK? How's your experience running such a business in Spain? Do you think it impacts your image wrt. reliability or quality in comparison with companies in other countries?

<comment><USER9> Hi. You are right, Spain is not the most agile place to set up a company. We keep hoping that the government will take a genuine look at all the bureaucratic barriers and tear them down. But we're not holding our breath. Taiga is a US Limited Liability Company (which took 20 min and $300 to set up).

In today's world location matters less and less. I wrote this article explaining what we are doing and why: [https://medium.com/@taigaio/how-to- launch-an-american-startu...](https://medium.com/@taigaio/how-to-launch-an- american-startup-9e40892b000f)</comment></comment></comment></comment>


Ask HN: Upvote if you want to stop seeing comments about downvoting - <AUTHOR>

It seems that lately all HN discussions have at least one comment asking why one comment has been down voted.
Of course almost always, by the time I'm reading the comments the situation is already resolved (later people up voted the comment), but that didn't stopped a huge distracting meta thread forming.
I for one down vote all comments that talk about the voting system outside "Ask HN" meta threads since the comments are 100% off topic.
I here propose the first and second rule of voting:
1. Don't talk about voting 2. Vote as you wish
Everything will usually resolve without the unnecessary distractions, and if things go out of hand for the bad, pg has show that he is observing and willing to make changes so that the community doesn't collapse.
Thoughts? <comment><USER2> HN has officially become reddit.</comment>


Our Man in Cambridge - <AUTHOR> https://taibbi.substack.com/p/our-man-in-cambridge-93f <comment><AUTHOR> Apologize for posting too early, didn't realize it's still paywalled!</comment>


Matrix Methods in Data Analysis, Signal Processing, and Machine Learning - <AUTHOR> https://ocw.mit.edu/courses/mathematics/18-065-matrix-methods-in-data-analysis-signal-processing-and-machine-learning-spring-2018/ <comment><USER2> Thanks for sharing this. It's based on his new book: [https://www.amazon.com/Linear-Algebra-Learning-Gilbert- Stran...](https://www.amazon.com/Linear-Algebra-Learning-Gilbert- Strang/dp/0692196382/)

<comment><USER3> Can anyone who has seen the book comment on how good it is?

There are just two reviews on Amazon, one 5* and one 1 _. The 1_ said "The book resembles a set of somewhat incomplete and somewhat disorganized lecture notes prepared by a course instructor as a rough outline of the content of his course."

That put me off buying it. So more data points would be helpful!

<comment><USER4> I have the book and I wish I didn't buy (it's an expensive book). You need to be already pretty good with Linear algebra and most of the material looked like cliff notes of various linear algebra and continuous optimization topics. I still plan to go through it but mildly disappointed.

<comment><USER5> Would you recommend to get "Introduction to Linear Algebra, Fifth Edition" by Dr. Strang instead?

<comment><USER4> It's a good book and actually serves as a good intro to this book. For Starngs learning from data book, you also need to know some convex optimization (not the difficult). Good luck!

</comment></comment></comment></comment></comment><comment><USER6> Playlist on Youtube [https://www.youtube.com/playlist?list=PLUl4u3cNGP63oMNUHXqIU...](https://www.youtube.com/playlist?list=PLUl4u3cNGP63oMNUHXqIUcrkS2PivhN3k)

<comment><USER7> Notable is Alan Edelman's tip using Julia at the 36th lecture.

</comment></comment><comment><USER8> 18.06 Linear Algebra was a fun class. Can't believe he is still teaching.

</comment><comment><USER9> Labs, although mentioned in the syllabus, are not in the OCW materials. This is the best I could find (4 labs in Julia, Julia notebooks, and Matlab): [https://github.com/dkout/18.065](https://github.com/dkout/18.065)

</comment><comment><USER10> Thanks for sharing. I hope at age 83 I can be as mentally sharp as Gilbert Strang is.

<comment><USER2> Depending on how old you are now, by the time you're 83, you could find yourself being a part of the new "middle aged" group :-) (i.e., we could end up inventing ways of increasing our lifespan dramatically).

<comment><USER11> or there could be nobody around to make the observation that there's nobody around, if any existential risks actualize

</comment></comment></comment><comment><USER12> You're doing SVD by lecture 3 (typically the last thing you do on a LA II course), so brace yourself. If you're not already VERY good at LA I'd wait until you are before attempting this.

<comment><USER13> Not trying to mock anyone, but linear algebra is basic university level math.

<comment><USER14> If you had the course. It was not in the engineering curriculum at my university. We got four semesters (effectively) of calculus instead.

</comment></comment></comment><comment><USER15> Looks like state variables and signal processing, now mature with LabView and MatLab plugins and standard VLSI solutions being deemphasized in favor of machine learning and data science.

</comment><comment><USER16> Ooh this is interesting. His Linear Algebra book was my favorite source on the topic back in college (though I hear people have alternate preferences).

<comment><USER17> I really like Axler's Linear Algebra Done Right. It's all conceptual (i.e., proofs), and doesn't focus on computation at all.

</comment></comment><comment><USER18> Thank you OP. This looks like a wonderful resource.

</comment><comment><USER19> Seems like an awesome course. Thanks for sharing</comment>


API Scene - <AUTHOR> http://apiscene.com/

<comment><USER2> Is this another case of using the generic term "API" to only refer to APIs related to accessing web data? I do some API-related work, but it has nothing to do with the network. However, I'm always interested in learning more about related APIs and how to write good APIs. This sounds interesting, but it also doesn't load for me.

</comment><comment><USER3> What is this? It doesn't load anything in my browser....

<comment><USER4> nothing here for me either

<comment><AUTHOR> Oups, seems like it got too much traffic because of HN Front. Realtime... I'm sending a message to the team responsible for this.

</comment></comment></comment><comment><USER5> For those wondering, it's a Meteor/Telescope ([http://telesc.pe/](http://telesc.pe/)) HN like forum with a focus on APIs.

I'm curious to know where you're hosting it (modulus, heroku, etc), how many servos/dynos you are using, and the # of connections that caused the app to become unresponsive?

<comment><USER6> Looks like it's sitting on DigitalOcean.</comment></comment>


The citizen hearing on disclosure (2013) - <AUTHOR> http://www.citizenhearing.org

<comment><AUTHOR> The Citizen Hearing on Disclosure (April 29 - May 3, 2013) brought 40+ researchers and government/agency witnesses to Washington DC to testify before six former members of the U.S. Congress on events and evidence supporting the truth of an extraterrestrial presence engaging the human race and a government policy to embargo that truth.

Also the videos from the event

[https://www.youtube.com/watch?v=zRQnM0SxvBY&list=PL3ukNWu0GE...](https://www.youtube.com/watch?v=zRQnM0SxvBY&list=PL3ukNWu0GE7rMuA6QYkqdQHbTYVHJJ9sT)

[https://www.youtube.com/watch?v=Yy_juuWhUho](https://www.youtube.com/watch?v=Yy_juuWhUho)</comment>


Overcoming Procrastination - <AUTHOR> http://en.wikibooks.org/wiki/Overcoming_Procrastination

<comment><USER2> I'll try to read this link later.</comment>


Ruby 2.0.0 in Detail - <AUTHOR> http://globaldev.co.uk/2013/03/ruby-2-0-0-in-detail/ <comment><USER2> Awesome write-up, thanks for putting the work in for everyone.

Looks like a solid release.

</comment><comment><USER3> Why was Array#bsearch and Range#bsearch not part of ruby stdlib for 20 years?

No, really. I want to know this one. It's almost like we want to encourage people writing slow code...

<comment><USER4> I did a quick [1] google around some of the most popular programming languages to see if their stdlibs had binary search:

Python: No Perl: No PHP: No Lua: No Java: Yes .NET: Yes Objective-C: Yes

Of course your point then becomes "Why haven't Ruby, Python, Perl, PHP and Lua added binary search".

[1] So it may be wrong. Please correct me if I am.

<comment><USER5> Part of it must be that binary search only works on a sorted array, and most arrays won't be sorted.

Followup question: are there other common array operations that only work on arrays in a particular state? Are any of these in or out of various standard libraries?

A long time ago... I implemented a wrapper around the Gnu Scientific Library matrix operations. I recall trying to be clever by mixing in some extra methods only after getting the LU decomposition (these extra methods required the matrix to be in a specific state). A little too dynamic for my current tastes. It's not a terrible idea perhaps, but this sort of thing tends to kill performance.

<comment><USER6> A good example of an array operation only appropriate for specific states is Python's treatment of heaps:

<http://docs.python.org/2/library/heapq.html>

You need to heapify(your_array) in place before, e.g., calling nsmallest(your_array). Not saying that it's good style, but...

</comment></comment></comment></comment><comment><USER7> Refinements look exactly like C# Extension Methods.

</comment><comment><USER8> The colors of the site are _terrible_ on the eyes!

<comment><USER4> It also uses -webkit-text-size-adjust: none; which means you can't zoom in to make the text bigger (I've emailed them about this)

<comment><AUTHOR> Fixed. Sorry about that.

<comment><USER9> And please join <http://contrastrebellion.com/> and do

        $('article p').css('color','#222')

so we can read the article.

bgcolor is now #717171, which is just crazy. Anything below #444 is just harmful for the eyes.</comment></comment></comment></comment>