List of oldest companies: Before 1300 - <AUTHOR> https://en.wikipedia.org/wiki/List_of_oldest_companies#Before_1300 <comment><USER3> I've had the amazing opportunity to stay at Hoshi Inn (4th oldest on the list)! I keep the card on my desk ([https://i.imgur.com/AyWUGhg.png](https://i.imgur.com/AyWUGhg.png) :-)

The courtyard garden the inn is built around is absolutely stunning, and the hot springs were the best out of all the ryokans we stayed at in Japan. The best part though is the hotel is actively managed and operated by the family - these wonderful people will meet you at the door.

There is concern about the future of the hotel, as the son who was assumed to take on ownership of the inn passed away suddenly, leaving the responsibility to the adult daughter. She's seems exceptionally capable (not to mention is incredibly pleasant), but she is unmarried/childless and seems unsure of her desire to marry or assume ownership of the inn. Clearly it would not be the same if the business continued on operated by someone outside the family.

I highly recommend watching this short film about the situation: [https://vimeo.com/114879061](https://vimeo.com/114879061)

edit: replaced "bloodline" with "family" as I've been told Japanese culture resolves bloodline continuity issues via adult adoption.

<comment><USER4> It is traditional in Japan to adopt people into family firms.

eg see [http://www.independent.co.uk/life-style/japanese-adoption- ra...](http://www.independent.co.uk/life-style/japanese-adoption-rates- majority-adult-men-a7524301.html)

<comment><USER3> Well that's an interesting solution! Japanese culture is not without its faults, but it is just so damn fascinating. Sigh... I need to go back.

<comment><USER5> [https://en.wikipedia.org/wiki/Adoption_in_ancient_Rome](https://en.wikipedia.org/wiki/Adoption_in_ancient_Rome)

interesting similarity between Japan and ancient Rome, there.

<comment><USER6> It's a rather common arrangement in many cultures where things are organized around families (which is most of them, at some development stage).

</comment></comment></comment></comment></comment><comment><USER7> The oldest name on this list that stood out to me is Weihenstephan brewery, founded in 1040 in Bavaria, Germany. They have some of the finest lagers I have ever tried. If you enjoy crisp, refreshing lager beers, I highly recommend their beers. My favorite one is probably the Weihenstephaner Hefeweissbier, followed by the Hefeweissbier Dunkel.

Note: I am not affiliated in any way with the company, I just highly enjoy their beers.

<comment><USER8> Beer nazi here... Hefeweizen/weissbier is not a lager. Lagers are cold bottom- fermented beers. Hefeweizen is warm top-fermented beer.

<comment><USER9> >Beer nazi

You may want to reconsider this phrasing.

<comment><USER10> When I write this minikites is downvoted for no good reason.

As much as I support freedom of speech I also think it's unwise to normalize nazism.

Reminding people not to normalize nazism isn't something one should be downvoted for in my book.

<comment><USER11> Just as an alternative point of view, they're debasing and ridiculing the term, whereas you're helping to inflate its importance by trying to keep it a taboo.

As an aside, here's an interview with the Jewish actor who played the Soup Nazi: [http://uproxx.com/tv/soup-nazi-interview-seinfeld- apartment/](http://uproxx.com/tv/soup-nazi-interview-seinfeld-apartment/)

<comment><USER10> Well, I give you an upvote for that.

Good answer but I don't agree.

<comment><USER12> Taking offense at "beer Nazi" could lead someone to infer that you believe the term Nazi must only be used in a dignified context. Who is normalizing what is in the eye of the beholder, as people have been belittling Nazis since the 1930s.

<comment><USER10> Ok. Let me argue a bit further:

Whatever we've done lately obviously hasn't worked. Seinfeld has been sent again and again and yet we see nazis marching proudly in Charlotteville and elsewhere.

The world should not forget what nazism caused, what communism caused, what nationalism caused, what racism caused etc.

I'd be tempted to say: learn kids to hate those things but I'm not a fan of big words.

But I certainly think more focus on history lessons would be a good thing.

Or maybe we need something similar to this, only for thoughts: [https://www.damninteresting.com/this-place-is-not-a-place- of...](https://www.damninteresting.com/this-place-is-not-a-place-of-honor/)

<comment><USER13> A bit of an orthogonal argument: the problem isn't Nazis _per se_ , it's what Nazis believed. Treating the idea of Nazis as too serious to make fun of and treating the idea of making fun of Nazis as a noble goal both have the fallacy that the thing we're saying "Never again" to is people with swastikas and straight-arm salutes. Now, yes, there were a few of those people at Charlottesville. But there are a lot more people who have the same ideology as Nazis - that ethnic minorities are the cause of the ethnic majority's economic anxiety, that a special police force to put ethnic minorities in concentration camps is totally fine as long as there are valid laws supporting that, that local opposition to this police force is illegitimate and treasonous, that the sexually "deviant" are ruining the integrity of our culture, that we have more of a duty to the well-being of our own race than to the survival of other races, etc. - without having any of the visible trappings of Nazis. The more that we say that the thing we object to (either by avoidance or reappropriation) is "Nazis," the more we make room for people with the same beliefs to prosper under different names.

(Side argument: putting the focus on "Nazis" also seems to invent distance between the man on the street in 1930s Germany, who just wanted a good life for his family, a prosperous economy for his country, and success for his nation's troops, and us in our own countries today, because that man lived in Nazi Germany and voted for the Nazi Party. It explains away the fact that an entire country like any other Western country suddenly went along with the Nazi agenda because that country was, somehow, full of Nazis, who are, somehow, different from us.)

I have seen lots of people make the argument that "Nazi" is a bad descriptor for anti-Muslim beliefs/policies that closely resemble historic Nazi anti- Jewish policies, because they're anti-Muslim and not anti-Jewish. (Usually this comes with some sort of argument about "Judeo-Christian values," or about how Islam is _different_ , or something - and when I point out that the same sorts of attitudes were prevalent at the time against Jews and Judaism, they seem to think it's an answer that those people were wrong and they're right.) I think that's a sign that we've failed badly to teach "Never again" in a meaningful way, in a way that realizes that the problem is not to make sure it's never 1930s Germany again - of course it never will be. It will be somewhere else, someplace else, and some other people.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER14> I think it's hard to argue it's the same company in some cases. The breweries in particular used to be _a_ brewery in said city (the city had right to have a brewery). Different owners, different locations, later different legal companies, periods of inactivity, etc.. The continuity is lost beyond "there was a brewery in this town 600 year ago".

<comment><USER15> The list is interesting entertainment but I am skeptical about how they determine oldest other than what a wikipedia page says in some cases.

It's not like we are talking about dates which have been certified by experts at auction houses for personal property.

<comment><USER16> I'll just throw in here that faking contracts and certificates has been a huge business in the last ~1200 years or so in Europe. Many cities who claimed to have been founded a thousand years ago (or whatever) had to cede those claims since the historical papers were faked (usually hundreds of years ago).

</comment></comment></comment><comment><USER13> Wow, this web page looks like it hasn't been updated since 1439: [http://www.luebeckaltstadthotel.de/](http://www.luebeckaltstadthotel.de/)

<comment><USER17> * Loads instantly

* Provides all relevant information at a glance

Needs more Javascript?

<comment><USER18> And doesn't work as they intended, the links behind the picture isn't actually click-able.

<comment><USER19> Yea, same here on Vivaldi. It probably looks correct in Netscape Navigator.

Sites like this are pretty cool to stumble upon though. They are a snapshot in time. It's not even /that/ old. It takes you back to a simpler era where pages loaded on dialup.

</comment></comment></comment></comment><comment><USER20> Equally interesting would a list of companies that lasted for 500, 750, or a 1000 years but then failed.

Imagine being the last person to run a 1000 year old company.

<comment><USER21> Well the oldest company on that list was bought and now only exists as a subsidiary. Imagine being the person behind that decision. To end a 1500 year old dynasty with the stroke of a pen.

</comment></comment><comment><USER22> I felt quite sad to read the fate of the top of that list

> Kongō Gumi Co., Ltd. (株式会社金剛組 Kabushiki Gaisha Kongō Gumi) is a Japanese > construction company which was the world's oldest continuously ongoing > independent company, operating for over 1,400 years until it was absorbed as > a subsidiary of Takamatsu in 2006.

<comment><USER3> The future of Hoshi Inn (#4 on list) is uncertain as well, see my other comment for details [https://news.ycombinator.com/item?id=16187837](https://news.ycombinator.com/item?id=16187837)

</comment></comment><comment><USER23> One take away from this list is that no software firms have survived. I would recommend hotels or booze if you want a business to last.

<comment><USER24> Serve an eternal need and you'll have an eternal business

</comment></comment><comment><USER25> I had a fun run-in with this q couple of years ago. We had a field in company profile fkr the year of founding whose validator was '4 digits'.

<comment><USER26> I laughed, but this reminds me of an article that was posted here a while ago: [http://infiniteundo.com/post/25326999628/falsehoods- programm...](http://infiniteundo.com/post/25326999628/falsehoods-programmers- believe-about-time)

It's very easy to get dates wrong.

</comment></comment><comment><USER27> The oldest restaurant in Europe is in Wroclaw: [https://en.wikipedia.org/wiki/Piwnica_Świdnicka](https://en.wikipedia.org/wiki/Piwnica_Świdnicka)

I once went there without knowing the fact, and it amazed me. It feels so different to sit between those old walls, trying to imagine how the place used to be before or during WWII, or in the 13th century...

<comment><USER28> Stiftskeller St. Peter is much older, according to this list: before 803.

<comment><USER29> Maybe the difference is that Stiftskeller offered rooms so it's not technically a restaurant?

</comment></comment></comment><comment><USER30> Weihenstephan is still one of my fav breweries. Would be nice to see articles regarding how some of these companies managed to keep going for this long.

<comment><USER31> "Be in a timeless industry" seems to have heavy weighting :-)

Most are hospitality or alcohol production, it looks like.

<comment><USER32> "Be in a timeless industry" - then there should be at least one brothel in the list..

<comment><USER33> I have a hunch that brothels are rarely a family business.. so that might be a reason why there is none. :)

</comment></comment></comment></comment><comment><USER34> The older tiers of this list seem to be heavily dominated by Japan, Germany, and Switzerland. Is that reflective of something other than the demographics of non-"New World" contributors to Wikipedia?

<comment><USER35> The US were founded in 1787, Columbus reached America in 1492, so how do you expect to find companies there older than that?

<comment><USER34> Right, _obviously_ they're not going to be in the New World. The question is why _those_ countries, of all the ones in the Old World? There's very little in France, the UK, Norway, Albania, India, Syria, and a heck of a lot of other places with thousands of years of history.

<comment><USER36> > France

Two total wars (WW1 and WW2, plus numerous other invasions and revolutions).

> the UK,

has 10 of the list, not sure how many you're expecting

> Norway,

Population only 5 million. Considerable famine in 1690s.

> Albania

Italian occupation in WW2.

> India

British occupation

> Syria

French then British occupation, then Ba'ath, with coups.

> and a heck of a lot of other places with thousands of years of history.

Mostly lots of invasions. Britain hasn't been invaded since 1066. Japan has had plenty of wars but no serious land occupation since the Mongols.

<comment><USER34> But by that logic, Germany makes zero sense.

</comment></comment></comment></comment></comment><comment><USER37> It's really incredible to see something like this. I was disheartened to see that Kongō Gumi was acquired in 2006 after 1,400+ years in business. It's just hard to wrap your mind around. But to see hotels and wineries that have existed for over a millennia is really quite amazing.

</comment><comment><USER38> I hate to rain on the parade, but many of the ancient Japanese inn entries are a bit dubious. They're mostly based on traveler's reports that there was an inn at X/a new hot spring was found at X in year Y being conflated with the fact that there's an inn at X now: they may well be the same, but it's hardly ironclad proof of continuous operation.

<comment><USER39> _> >but it's hardly ironclad proof of continuous operation._

Beats the rest of the evidence, no? Also, we're not betting our lives in this...

</comment></comment><comment><USER40> There sure is alot of pub and accommodation entries, but then that is one area that technology and indeed, industrialization and the other progressive phases in society have not impacted as much as other industries.

On a positive and encourage note - not one single manufacturer of weapons listed at all.

<comment><USER35> Sorry to disappoint you:

1526 Beretta Italy Firearms

1578 Klett Germany Firearms

1674 Sabatti Italy Firearms

<comment><USER40> Ah, darn, I missed those somehow, oh well. Appreciate the correction - <USER2> more from being wrong.

</comment></comment></comment><comment><USER41> Hirter beer still sucks, even if it has been around since 1270.

<comment><USER42> Funny, i actually really like Hirter - specially their more traditional red beers

</comment></comment><comment><USER43> StoraEnso is marked as Finland, but that is due to a recent merger and the location of the HQ of the current company. The company Stora Kopparberg operated a mine in Falun, Sweden from which company shares exist from 1288.

</comment><comment><USER44> Missing this?

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

<comment><USER45> Zildjian is on the list, it's just not from before 1300.

</comment></comment><comment><USER46> Interestingly, the list lower on the page that has companies from 1300 to 1399 is twice as long. Does anyone know if something significant happened in the world that leaves so many more companies from that century around?

</comment><comment><USER47> Should not the church be on top of this list?

<comment><USER48> I was thinking there would be a very good case for the Vatican to occupy the number one spot.

Whether seen solely as the papal organisation , or as a kind of continuation of the (Western) Roman Empire, these guys have been in day to day business for at least close to two thousand years. And have the archives to prove it. Wanna check up on some royal correspondance from the year 500? They may well have the actual letters stashed away somewhere.

Also: I don't _really_ think the for-profit filter disqualifies them here.

<comment> maze-le Another interesting tidbit to add here: one of the official titles of the pope, pontifex maximux (high priest), has its origins in the kingdom of Rome, well before the Republic was established (509 BC). Though written records don't exist of that time period, its inception is traditionally accounted to the second king of Rome, Numa (rulership ~715 – ~673 BC). This makes it one of the oldest titles, if not the oldest official title still in use.

<comment><USER49> 2700 Years is nothing. At my synagogue in Southern California we have a couple dozen Kohens, a title in continuous use (with varying and evolving responsibilities to be sure) for at least 4000 years.

</comment></comment></comment></comment><comment><USER50> Something I can't help but notice: all of the countries on the list are currently wealthy, advanced economies.

Cause or effect?

<comment><USER51> Both? Most likely it's because those countries have strong traditions of record keeping and have been fairly stable culturally.

<comment><USER50> Maybe it's a reflection of a sort of long term, virtuous loop. Stability brings wealth, wealth reinforces the need for stability. Shocks can occur (e.g. Japan and Germany most recently) but note how quickly they're right back where they were, at least on multi-generational timescale.

</comment></comment></comment><comment><USER52> it's incredible to realize that there still exists (technically) a company that was a _thousand_ years old in _1500s_.

</comment><comment><USER53> Fascinating. Is it Japanese culture to maintain the family business?

<comment><USER54> I believe that it is tradition for the founding family to adopt the next generation head of the business.

[https://en.wikipedia.org/wiki/Japanese_adult_adoption#Econom...](https://en.wikipedia.org/wiki/Japanese_adult_adoption#Economic_impact)

<comment><USER55> That seems like cheating.

<comment><USER56> Roman political families regularly adopted heirs as well. Rome's first emperor Augustus was the adopted heir of Julius Casaer.

<comment><USER57> And to further the argument, the fact that one decided to put his blood son as emperor (Marcus Aurelius) is often seen has one of the early cause of roman decline. [https://www.realclearhistory.com/2017/03/16/commodus_and_the...](https://www.realclearhistory.com/2017/03/16/commodus_and_the_decline_of_roman_empire_1814.html)

</comment></comment></comment></comment></comment><comment><USER58> "...excluding associations and educational, government, or religious organizations."

And yet it lists "government owned institution" Monnaie de Paris, "government- owned" Royal Mint, et cetera...

Ignoring those rule-breakers, 7 of Europe's top 10 are alcohol-related, while Japan holds the top 5 with primarily Hotel and Construction companies.

</comment><comment><USER59> Don't recognize most of them but the other day I learned Nokia was incorporated in 1871 and it is still around.

<comment><USER37> I just noticed that Stella Artois is 650 years old!

<comment><USER59> and still doing good...Here's their superbowl ad: [http://adage.com/article/special-report-super-bowl/stella- ar...](http://adage.com/article/special-report-super-bowl/stella-artois-super- bowl-ad-starring-matt-damon/311945/)

</comment></comment></comment><comment><USER60> If you squint your eyes just right you could consider the Latin Catholic Church to be one of these.

<comment><USER61> Well, religious institutions are expressly excluded, so, no, neither the Roman Catholic Church nor the (dominant) subset thereof known as the Latin Rite (either of which might be want is intended by "Latin Catholic Church") would qualify.

</comment></comment><comment><USER62> I was very surprised to see a pub (Sean's) owned by Boy George on this list!

<comment><USER63> Bought it probably for its history. He always seemed a genuine good person behind the flashy persona.

<comment><USER3> It's probably worth mentioning that his drug use has led to some pretty abhorrent behavior. That said I'm a believer that people should be judged on the sum of all their actions not reduced to their worst moments.

[https://en.wikipedia.org/wiki/Boy_George#Conviction](https://en.wikipedia.org/wiki/Boy_George#Conviction)

</comment></comment></comment><comment><USER64> [https://en.wikipedia.org/wiki/Bianyifang](https://en.wikipedia.org/wiki/Bianyifang) in 1416 is the first Chinese Restaurant

<comment><USER65> The history says that restaurant was established in 1850s when the owners hired a chef from the original Bianyifang, and that the name was common amongst several restaurants. Sounds like a separate business to me.

</comment></comment><comment><USER66> Surprise! The oldest company in Ireland is a pub.

<comment><USER67> Well, what did you expect, a potato farm? :D

</comment></comment><comment><USER32> Given that prostitution often claims to be the oldest game in town, it's surprising that there are no brothels in this list.

<comment><USER37> I suspect that's because pretty much every country/civilization in the past 2,000 years at some point or another has banned prostitution as a matter of law/force.

<comment><USER68> Things changed a bit since Babylon days, about 3,000 years ago.

</comment></comment></comment><comment><USER69> As a history buff I would love to see a similar list of these companies filtered down to the ones that are still using the original building. It is so rare that you see centuries-old organizations/businesses/anything that still use the same buildings that they were created with

</comment><comment><USER70> This list looks very suspicious when the largest company ever, the VOC founded 1602 [https://en.wikipedia.org/wiki/Dutch_East_India_Company](https://en.wikipedia.org/wiki/Dutch_East_India_Company) founded is not listed there. Apparently only small family companies are listed, not the big ones.

The 2nd biggest company of those times, the Fugger copper mining company founded 1494, dissolved 1657 [https://en.wikipedia.org/wiki/Fugger](https://en.wikipedia.org/wiki/Fugger) is also not listed, neither the 3rd largest, the Welser banking and merchant companies. Welsersche Handelsgesellschaft 1490 and ... [https://en.wikipedia.org/wiki/Welser](https://en.wikipedia.org/wiki/Welser)

<comment><USER71> I suppose that the company has to be functioning in the present too.

<comment><USER70> Yes, that's the purpose. Oldest still existing companies. But I didn't like that the biggest ones, bigger than today's Amazon or Google are not in it.

<comment><USER72> I suppose that the company has to be old too

</comment></comment></comment></comment><comment><USER73> The theme here appears to be food and shelter.

I'd also wager that some students in Japan were given an assignment to research an old company or business and then place it on the list.

<comment><USER65> So you see that in the edit history - like 30 users from Japan all adding new entries on the same day?

</comment></comment><comment><USER74> There are world religions younger than Kongō Gumi.

</comment><comment><USER75> Wow Japan totally dominates the lists! I wonder how they do that.

</comment><comment><USER76> Why is there no East India Company in this list?

<comment><USER77> It's not currently in operation and hasn't been since the 19C. Also it wasn't set up till the 17C so is a whippersnapper in comparison to this list.

</comment></comment><comment><USER78> Great list of potential startup names too!

</comment><comment><USER79> Universities aren't included?

<comment><USER80> If you listed universities, it seems like you'd have to list churches as well, and then they would dominate the list. They're not really "companies", more like organizations.

The page even says "excluding associations and educational, government, or religious organizations."

</comment></comment><comment><USER81> So many breweries!</comment>


The Mathematics Autodidact's Aid (2005) [pdf] - <AUTHOR> http://www.ams.org/notices/200510/comm-fowler.pdf <comment><USER2> maybe i am just stupid, but I find that many texts in mathematics like to skip over details, or I get stuck because there is an ambiguity in the text and there is no one to ask about it.. What do we do in this kind of situation?

<comment><USER3> One approach is to look at a few different but overlapping primers on the same matter and do the exercises. If one treatment doesn't click, another might. And for well-known subjects, topics are often covered in roughly the same order. Maybe not for graduate classes, not sure, but linear algebra, set theory, group theory, analysis it's generally the case.

Unless you can afford a tutor to teach it several different ways until it clicks, which is functionally similar.

<comment><USER4> I can verify this approach works for me. The other thing I suggest is use "getting stuck" as a way to identify gaps - go look for books that fill those gaps.

Recently I cracked open Principle of Analysis by Rudin. I got stuck pretty much straight away and looked it up - I saw a few suggestions for a bridge between high school maths and the rigor required by that book. I'm now reading another book that took inspiration from the previously mentioned book but gives a bit shallower a slope towards the rigor required.

<comment><USER5> Pugh, by any chance?

<comment><USER4> Krantz. Seems to be at a decent pace. No idea if it's any good though - problem of not having a mentor!

<comment><USER6> That book got good reviews. /r/math has lots of threads on this, recommend Abbott, Tao, Pugh, Spivak etc

[https://www.reddit.com/r/math/comments/50m4ib/what_are_the_m...](https://www.reddit.com/r/math/comments/50m4ib/what_are_the_main_differences_between_rudin_and/)

[https://www.reddit.com/r/math/comments/4jopme/is_it_prematur...](https://www.reddit.com/r/math/comments/4jopme/is_it_premature_for_me_to_start_reading_baby_rudin/)

[https://www.reddit.com/r/math/comments/512p2p/analysis_text_...](https://www.reddit.com/r/math/comments/512p2p/analysis_text_for_selfstudy/)

<comment><USER4> Thank you :) I'm currently reading Calculus by Spivak too. Fantastic book.

I find getting a taste and moving forward breadth-first keeps things fresh.

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> I've also found these to be helpful:

The Language and Grammar of Mathematics, from The Princeton Companion to Mathematics, by James Gowers: [http://press.princeton.edu/chapters/gowers/gowers_I_2.pdf](http://press.princeton.edu/chapters/gowers/gowers_I_2.pdf)

Reading Mathematics, by John Hamal Hubbard: [http://www.math.cornell.edu/~hubbard/readingmath.pdf](http://www.math.cornell.edu/~hubbard/readingmath.pdf)

<comment><USER8> I don't mean to be that person, but it's Timothy Gowers, not James.

<comment><USER7> My bad, thank you for the correction!

</comment></comment></comment><comment><USER9> I'd like to see a list like this that included the field of mathematical logic. For whatever reason mathematical logic no longer seems to be a "popular" area of research, despite its deep connection to theoretical computer science. But there are distinction in study, as computer scientist tend not to go deeply into computability theory like a traditional mathematician would.

<comment><USER10> What exactly are you trying to learn? Mathematical logic is a huge field in its own right, with plenty of topics that are of historical interest and a lot of active research areas.

If you want to learn modern mathematical logic you're in for a rough time, since you'll basically have to learn category theory in order to understand the few really excellent textbooks which exist (e.g. Sketches of An Elephant). If you are interested in type theory you should try reading the Homotopy Type Theory book, which is (mostly) self contained.

<comment><USER9> I'm mostly interested in "modern" mathematical logic then. I'm very interested in learning category theory and its connections to programming language theory. I already know a little bit of category theory, but am open to any good beginner sources. I'm also interested in classic recursion theory and a bit of proof theory with its connections to CS. I don't know many people doing any of this and it doesn't seem that popular in math departments.

<comment><USER11> Category theory is not logic.

</comment></comment></comment></comment><comment><USER8> I enjoy a mathematics textbook as much as the next person, but what annoys me is the lack of solutions to the problems in so many of the books I've skimmed outside of classes.

<comment><USER12> I prefer solutions to some, but not all problems. Being able to independently and confidently verify your own solutions is an important skill to develop.

<comment><USER13> This is absolutely a crucial skill. One of the most valuable exercises I had to do in college was during my introductory physics courses. Before solving any problem, we had to write what we expected the solution to look like, then after solving the problem, we had to write whether our solution seemed plausible. Did it fit our initial expectation? I not, could we explain the disparity? If we applied this value or equation to something else, would we get reasonable results (say, if the problem were estimating the gravitational force of the sun, what would this value give us for the length of the earth's year). Note that we'd get credit for this part even if our solution was wrong, as long as we recognized that it was in fact wrong.

It was a huuuge pain at the time and often took longer than the initial problem took to solve, but it did force me into the habit of critically evaluating my work, and its been one of the most valuable life skills I learned in college. It also helped develop my intuition, and significantly improved my teaching and presentation skills.

</comment></comment></comment><comment><USER14> For another list of recommendations by topic, check out this (very popular) list:

[https://github.com/ystael/chicago-ug-math- bib](https://github.com/ystael/chicago-ug-math-bib)

<comment><USER6> I think the guy who wrote that original U of C list has stated that it's mainly of historical interest, given the many omissions noted, and that the lists by Baez and Univ. Cambridge that i pushed there are better starting points, or this one: [https://www.reddit.com/r/math/wiki/faq](https://www.reddit.com/r/math/wiki/faq)

There's lot sof other lists of recommended texts after calc3, [https://www.math.ucla.edu/ugrad/courses/math/](https://www.math.ucla.edu/ugrad/courses/math/) and

[https://math.berkeley.edu/courses/archives/announcements/fal...](https://math.berkeley.edu/courses/archives/announcements/fall-2011-textbooks)

and [http://mathoverflow.net/questions/761/undergraduate-level- ma...](http://mathoverflow.net/questions/761/undergraduate-level-math-books)

</comment></comment><comment><USER15> In the area of numerical analysis, I'd recommend works by LeVeque and Trefethen.

<comment><USER16> Trefethen & Bau's "Numerical Linear Algebra" is a pretty good primer, though the last few chapters I remember being a bit lacking (it's been about 6 years though).

<comment><USER15> This book helped me to visualize Krylov space methods better than any other resource I have seen. It got me through my numerical analysis qualifying exam. I do agree that the last chapters are lacking in depth. I also recommend his book "Pseudo-spectral Methods in Matlab" for a thorough and very visual look at things like Gibb's phenomenon and spectral convergence.

</comment></comment></comment><comment><USER17> Note that the Mathematical Atlas was supposed to have been moved to [http://www.math-atlas.org/](http://www.math-atlas.org/) in 2016, but that has not happened yet. Latest snapshot from the Wayback Machine is from April 2015: [https://web-beta.archive.org/web/20150424120057/http://www.m...](https://web- beta.archive.org/web/20150424120057/http://www.math.niu.edu:80/~rusin/known- math/)

</comment><comment><USER18> one day I woke up and realized the mathematics curriculum is almost completely arbitrary. there is no reason to teach algebra, geometry, trigonometry __in that order __

by the middle of graduate school everyone is self-teaching and you may know more than a professor from time to time about a given topic. And certainly about the basics since professors forget to do basic integrals at the board.

any good study group has to retain momentum and keep the discussion moving forward.

</comment><comment><USER19> How long would it take to _study_ the books recommended here? Answer: years. Does it ever make sense to condense a comprehensive summary of mathematics into five page document? Perhaps, perhaps not.

I do know one thing: this was published in 2005, three years before the release of the _Princeton Companion to Mathematics_. I simply can't overstate how helpful owning a copy of the PCtM will be to any budding mathematican. Princeton University Press made a beautiful book which is worth its price several times over. (Don't think you can get by with Wikipedia! At over 1000 pages, the PCtM is stunning in its clarity and breadth of coverage.)

As for the paper, there are still a lot of gems here, which are worth considering, assuming you really are serious about teaching yourself mathematics _and_ have purchased the PCtM. I studied mathematics in university but have always been an autodidact and something of a bibliophile, and I can say that most of the recommendations made here are the one's I would make as well. If nothing else, this list should save you a lot of time on Amazon and in the library chasing recommendations and references.

However, I do think it would be a strange thing indeed to hand this list over to somebody expecting to go out and buy a subset of it, and expect to be on his or her way to becoming a mathematician.

One of the reasons I recommended the PCtM instead is that there are clearly some missing perspectives that inevitably resulted from compressing all of mathematics into a short five page summary. The librarian who compiled this list did a fine job overall, but I think this list really bites off more than it can chew, in the sense that it would be impossible to convey all the different and conflicting perspectives that would need to inform a comprehensive summary of mathematics.

I would take each section of her paper as a starting point that ought to be supplemented by additional sources (or better yet, supplemented by reading the relevant section in the PCtM). As it stands, the list is overly academic and not sufficiently pedagogical, and too quickly jumps into advanced territory to be too useful to undergraduates. In particular, logic, geometry, representation theory, and physics are all incredibly important topics that can invigorate the subject, but the paper does not give them the attention they deserve. The author does mention Arnold's ODE book as an alternative that emphasizes "geometric ideas", which quite frankly is short shrift. (Look at the Mathoverflow [1] thread which discusses the topic of choosing an undergraduate text on differential equations, and you will see Arnold's ODE book mentioned several times over.)

I also feel the need to point out a complete absence of anything written by Michael Spivak, which is a crying shame. I would have expected to see at least his beautiful _Calculus_ , to say nothing of his encyclopedic and highly pedagogical works on differential geometry. Also notably missing are books written by John Hubbard and Charles Pugh.

[1] [http://mathoverflow.net/questions/28721/good-differential- eq...](http://mathoverflow.net/questions/28721/good-differential-equations- text-for-undergraduates-who-want-to-become-pure-math)</comment>


Show HN: Make money interviewing candidates - <AUTHOR> https://gatekeeper-frontend.herokuapp.com/ <comment><USER2> Questions:

1\. How do. you vet the vetters (or make sure they are any good)? 2\. How do you assure that they actually vet? (I see how one could just always reject/accept candidates without really thinking about it and get $80 for effort of just clicking yes/no.)

<comment><AUTHOR> I was thinking this too as a chicken and egg issue.

My propose solution is having "guildmasters" who somewhat manages each role. Making sure they are not scamming. These people I would know/vet in the beginning as people willing to do this initial work. Also implementing reviews for a vetter so that the vetter is held accountable.

Another solution is having the ability to hire multiple vetters to get multiple vet layers. Still will be cheaper than hiring an agency.

</comment></comment><comment><USER3> Despite the other commenters, I think it's a great service (with some competitors already existing) and there's a market for it.

You can probably find your first few customers if you fix your landing page. (Fix the spelling mistakes, get a real domain.)

</comment><comment><USER4> This already exists, it is called a job agency

</comment><comment><USER5> I like the domain</comment>


A Linotyper for Life - <AUTHOR> https://printinghistory.org/a-linotyper-for-life/ <comment><USER2> Great short film on the end of the Linotype at the New York times in 1978: [https://vimeo.com/127605643](https://vimeo.com/127605643)

Edit: you can see Linotypes in action at the International Printing Museum in Carson, CA (south of Los Angeles).

</comment><comment><USER3> I remember seeing linotypers at work, a bit over forty years ago. The Linotypes (or Intertypes) were a very nifty bit of technology. But if the editor had forty column inches set in 10 pt. Spartan and then decided that it just looked too small, the only option was to have it reset from the beginning.

</comment><comment><USER4> My uncle worked for Merganthaler. He always had mis-formed type to give to us kids at Christmas. Really got me into mechanical things and eventually electro-mechanical as a field.

<comment><USER5> Nice lead toys to play with..</comment></comment>


Ask HN: How do you manage newly found knowledge? - <AUTHOR> Through the day I very often find non-trivial amount of insights/information/knowledge about certain specific topic. May it be articles, tutorials, links or even tweets.
Problem is that I'm super afraid that I'll forget about it and not "use" it.
I'm usually trying to solve this by saving images to folders, having short text snippets in notes or using bookmarks. This has several problems. First, different type of data (image, text, link, etc) are at different places (folder, notes, bookmark, etc). Second, data is not indexed so search is impossible.<p>How do you handle this? <comment><USER2> Badly. I have notebooks for information that i know I'll definitely need later on, and save a lot of links with an online service. I've thought about finding or building a service that will make an archive.org version of every link i save, and also make it possible to search all of it. I have added that idea to the notebook.

</comment><comment><USER3> I fit it into my existing mental structures about how the world works and then move on with my day, confident that if I forget the details I can look them up again later.

</comment><comment><USER4> Emacs org-mode. Everything in one place (even one FILE if you'd like), all indexed, searchable, extensible, and organized hierarchical and/or with tags.

</comment><comment><USER4> But you will pay for this tool in blood, tears, and lost marriages! A bit of a learning curve ball.</comment>


Ask HN: Unfixed responsible disclosure for 6 months - <AUTHOR>

Hi HN, so I'm a "security researcher" in my part time, finding bugs here and there (mostly XSS stuff, so no actual researcher, just a junior dev finding obvious issues)
Going to start working at a big company soon after enjoing startup life.
After signing the employment contract I took a look at their website and discovered multiple XSS vulns. I can basically inject arbitrary HTML into the page, so display different content, redirecting, everything possible.
I reported it through their responsible disclosure form, got no reply, followed up 1 month (!) later, they said they got the email, but now almost 6 months later it's still not fixed. It feels ridiculous and really makes me question the company (XSS for so fucking long, this must be a joke. Startup I used to work at fixed issues within 20 minutes - 1 day).
So HN, what would you recommend to do in this situation. Escalating further seems a bit risky, considering they could terminate me, but 6 months feels like a joke/insulting. Or all moral obligations dealt with after making them aware of the issue? <comment><USER2> Hmmm...that's troubling. Are you sure they understand the ramifications of the bug? Let's assume they're rational actors and for some reason have made the decision that this particular bug is lower priority than whatever-else they're working on. I think your challenge is to thoroughly/patiently explain why this bug is important and actually worth looking into.

But I doubt it's worth losing your job over, so once you've asked twice, I'd probably drop the issue. If the vulnerability ever gets used by an attacker your multiple disclosures will come to light, and hopefully they'll pay more attention to you next time. Some people would rather learn lessons the hard way, and it's not always your responsibility to save them from themselves, ya know?

</comment><comment><USER3> submit a pull request? find the dev who wrote it and ask if you can help get it patched? file an bug? same thing as finding any other type of bug, really. Just avoid sounding like an ass and you might make traction.

As a corollary: consider creating a better PoC for the bug.

<comment><AUTHOR> Yeah if I would be working there it would be easy, have filed a lot of vuln reports/PR'd in the past at the startups I worked at. But the employment contract was signed months ago and I'm not starting until soon, so can't file a bug report/contact a developer/create a PR.

The PoC is literally a URL, you open it and it shows arbitrary content injected by me through a query parameter. No user interaction required, no fields to enter, no login. They just forgot to sanitize their output, which seems quite easy to detect and fix.

Thanks for your reply though.</comment></comment>


Microsoft to Implement HTML5 Canvas? - <AUTHOR> http://processingjs.org/blog/?p=30 I got in touch with Pete LePage, a Project Manager for the Internet Explorer team and asked him whether we could expect to see the Canvas in IE9. Here is what he said: http://processingjs.org/blog/?p=30 <comment><USER2> 26 steps? Typical of Microsoft, and anyone who isn't really interested in listening.

Thanks, but I hope IE just dies and we can get on with our lives. It's already becoming irrelevant, and that's just fine by me.

<comment><USER3> This is the second day in a row I can use the same comment! Products with >50% market-share are not irrelevant; they are VERY relevant. And as much as you might hate it, IE is not just going to die.

<comment><USER4> On the other hand, irrelevant products with disproportiate marketshare inevitably lose marketshare eventually. And the more marketshare you have, the less you can gain and the more you can lose.

</comment></comment></comment><comment><USER5> WOW! The author links to a Microsoft community feed-back page where people can vote on web standards they want Microsoft to implement/comply-with! And the author says "It worked with True Type", meaning TT fonts where added after community outcry?

Why on bloody earth wasn't this exploited? why can't Microsoft take the pulse of the web developer community and .. do the right thing on its own without having to be told?

</comment><comment><USER6> The title is a little bit misleading, better title, "Microsoft rep responds with boiler-plate about how you can go through some byzantine process to put a comment on a forum about a situation that everyone is well aware of."

</comment><comment><USER7> Does it really take _26 steps_ to suggest a feature for Internet Explorer?

</comment><comment><USER8> It would be interesting to not just track % of browser marketshare, but also track the derivatives of marketshare. With this data web developers could more accurately determine how much they should invest in making a web application work with older browsers.

Does anybody know if this data exists somewhere already?

</comment><comment><USER9> How long until somebody creates a wrapper that automates this into a neat 1 step process? :-)</comment>


How to Write a Video Player in Less Than 1000 Lines - <AUTHOR> http://dranger.com/ffmpeg/ <comment><USER2> How to write a video player in 2 lines:

        #! /bin/sh
        vlc "$1"

In all seriousness though, if you are using libraries to implement almost all of the complex functionality, then the "less than 1000 lines" comment is not very relevant.

<comment><USER3> The problem is not limited to this article. For example in the Windows demo- scene world, it's trivial to do 4k/64k demos by using all the DirectX libraries available in the OS. So that the size of the actual demo is completely relevant since you benefit from massive system libraries.

<comment><USER2> To be fair, many old school demos are calling out to specialized hardware in their demos, for example the C64 SID chip, or Amiga graphics chipset. The API for accessing this hardware is not as high-level as DirectX, but it still serves as an external library of sorts for performing graphics/audio operations. All the software-based graphics routines these demo coders created are very impressive, don't get me wrong, but in the end there's still a large part of the pipeline that the coder relies on that they did not create themselves, and isn't factored into the overall code size.

Additionally, current OSes make it really hard, if not impossible, to get down to this level of bare hardware. There's many layers on top that you're forced to go through, closed graphics command stream, closed graphics driver, closed kernel, closed userspace libraries, and the hardware is much more complex. Really DirectX does serve as the lowest level standard way on Windows to access graphics card hardware.

<comment><USER4> calling out hardware != using software libraries

<comment><USER5> It is the same issue, just moved around to a different component. In today's world, most of the time "calling out hardware" means just triggering some piece of software on a separate chip.

Nevertheless, I do think that the demo scene is impressive - for a different reason.

I believe this is not about the absolute code size, but the _relative_ code size: Within each demo category, all demos run on almost the same hardware architecture and same software platform. Yet, some of them manage to create effects in 4k which most other programmers wouldn't manage to create in 64k.

It is not about where the limits are (4k, 64k, 32 bytes, ...), but that there are limits at all. This inspires creativity, pushing the border of what people believe is doable within these limits.

</comment></comment></comment></comment></comment><comment><USER6> Title is misleading. It's like writing a guide on how to instantiate a webview and calling it "how to write a web browser in less than 100 lines".

<comment><USER7> Agree, and it's a pity because this tutorial looks great. A better title would be:

"Write your own video player with SDL and ffmpeg!"

Or something along those lines, anyway.

<comment><AUTHOR> Sorry about the clickbaity (although semi-accurate) title.

I would change it, but the post got revived from yesterday, so the edit button's gone.

Is it really that bad a title, though? Few people actually write their own video decoder or display code anymore...

<comment><USER8> It's not that bad, it's just the "how to write a ..." bit seems to imply that you're actually implementing one, not just loading a library to play one. Maybe "How to play a video in less than 1000 lines"?

</comment></comment></comment></comment><comment><USER9> Ths tutorial is mostly about learning how to use FFMPEG&SDL.

While SDL has pretty good docs, FFMPEG(the library, not the command line tool) has terrible one.

This is probably the best source of information about FFMPEG(beside the actual code).

<comment><USER10> Yeah, Totally agree. But FFMpeg code is pretty easy to read. I created a video player with it for an embedded device, also implemented hardware accelerated YUV->RGB in it.

</comment></comment><comment><USER10> Before 8 years, I followed this tutorial and created a production video player for an e-learning device. FFMpeg gives much better performance ( and less flexibility ) than GStreamer.

</comment><comment><USER11> Great tutorial, the information on AV syncing is a little out of date. If the audio gets ahead of the video, then the video doesn't instantaneously skip to catch up, it continuously renders frames at full rate.

IIRC, I also don't think their mapping from SDL audio channels to ffmpeg channels is surjective (to say nothing of planar/non-planar audio).

I would suggest reading the ffplay.c example code.

</comment><comment><USER12> So, my first thought on reading the title was "Good, someone has (re) discovered APL (or J, K, Q or another array language)." Could be a good algorithmic dive into mpeg. Mpeg decode and a simple player seems like a reasonable sub-1000 line APL project. I include mp3 audio decode, of course.

Complete disappointment -- I learn nothing.

</comment><comment><USER11> CAREFUL with ffmpeg!

Their license is DRACONIAN, and they are nasty about enforcing it.

Their legal page even suggests (or should I say, demands) additional provisions above and beyond what the LGPL asks for (i.e. "There are also a few items that are not really related to LGPL compliance but are good ideas anyway"):

[https://www.ffmpeg.org/legal.html](https://www.ffmpeg.org/legal.html)

If they catch you violating their LGPL license, they act very antagonistically to you -- as in, they are completely unwilling to work with you by taking the hard line stance that the only way you can appease them and comply with their license is to release your source code.

They even once had a Hall of Shame where they publicly called out offenders: [https://www.reddit.com/comments/9e25a/hall_of_shame_a_list_o...](https://www.reddit.com/comments/9e25a/hall_of_shame_a_list_of_projects_or_companies/)

LGPL means no static linking, so using ffmpeg in your closed source Android/iOS apps is already completely ruled out of the picture.

I mean, it's well within their rights to impose whatever license they want on their software, but you shouldn't think that using ffmpeg in any closed source or commercial software is a good idea.

EDIT: I think it's worth mentioning that none of this comes from personal experience. :)

<comment><USER13> > Their license is DRACONIAN, and they are nasty about enforcing it.

The license is not draconian in the usual sense of the word. The requirements of the LGPL are modest (frankly they require you to grant end users just about the minimum rights that users should always get for any library that was used in a program, IMO), and the license is well known and well understood.

> Their legal page even suggests (or should I say, demands) additional > provisions above and beyond what the LGPL asks for (i.e. "There are also a > few items that are not really related to LGPL compliance but are good ideas > anyway"):

They explicitly say "It is not the only way to comply with the license, but we think it is the easiest."

> If they catch you violating their LGPL license, they act very > antagonistically to you -- as in, they are completely unwilling to work with > you by taking the hard line stance that the only way you can appease them > and comply with their license is to release your source code. > They even > once had a Hall of Shame where they publicly called out offenders: > [https://www.reddit.com/comments/9e25a/hall_of_shame_a_list_o...](https://www.reddit.com/comments/9e25a/hall_of_shame_a_list_o..).

You're talking about using stuff in closed source or commercial software? Do you imagine a commercial company who you licensed a library from and then proceeded to violate that license would be friendlier than that? Never mind hall of shame, you'll be looking at demands for thousands of dollars. They could be nicer about it but if they believe closed source software is inherently harmful to its users I can understand their position, and it's not their job to give you free legal advice.

> LGPL means no static linking, so using ffmpeg in your closed source > Android/iOS apps is already completely ruled out of the picture.

I've used android apps that use it by allowing you to place the ffmpeg DLL in their folder. It's more work (which is a problem with Android that should be improved on) but it's the only way I can see to make sure that end users don't get stuck with an old version. For exceedingly complex C code like video codecs, security flaws are basically guaranteed (and sadly for the moment C seems to be regarded necessary for performance - I've seen some OCaml/Haskell video codecs but nothing like the wide format support of ffmpeg), and video players are often used on untrusted files from the internet. So if you were ever to stop developing your app - or even if the play store refused updates for whatever means - it's absolutely vital to your end users' security that they be able to upgrade the version of ffmpeg that the app uses, and this kind of license is the only way to enforce that.

<comment><USER14> > I've used android apps that use it by allowing you to place the ffmpeg DLL > in their folder

That's a ridiculously user hostile behaviour.

<comment><USER13> I've seen an app offer a link to a recommended version - one button first time you run - and you then just have to "open" it with the app (and it'll use the DLL from the "Downloads" folder). That's not seamless, but it's pretty close.

The fact that android doesn't offer any native way to have apps depend on dynamic libraries is ridiculously user hostile on its part.

<comment><USER11> Wow, does non-rooted Android let apps load libraries from the Downloads folder?

Seems like that could create some pretty big security issues.

<comment><USER13> Hmm, you're right. That's the way I remember it working but maybe I'm getting confused.</comment></comment></comment></comment></comment></comment>


WWII Bombe operator Ruth Bourne: I'd never heard of Enigma until after the war - <AUTHOR> https://www.theregister.co.uk/2018/09/25/bletchley_bombe_operator_interview/ <comment><USER2> Brilliant timing - I visited the National Museum of Computing (the computer museum that's next to the actual Bletchley Park house) 2 weeks ago as Ruth Bourne was giving a talk while stood at the reconstructed Bombe. It was incredible to hear firsthand from someone who had been a part of this war effort.

She couldn't even tell her mother what she worked on as the news would be "all round town within minutes".

<comment><USER3> Gee, that sounds like an interesting visit. And it looks like it opened in 2007. I'd bet the US' most notable computer museum is the CHM in California. It would be nice if we had a public museum for computing like the UK's. Although I suppose there might not be much difference in practice.

<comment> valiant-comma The National Cryptologic Museum[1] next to Fort Meade has an extensive collection of code-breaking devices and computers from various time periods, plus a library.

[1] [https://www.nsa.gov/about/cryptologic- heritage/museum/](https://www.nsa.gov/about/cryptologic-heritage/museum/)

</comment></comment></comment><comment><USER4> After I watched _The Imitation Game_ lately I read about the Polish efforts, almost totally ignored in that movie and everything I'd read, as if the British invented the whole thing, possibly Turing single-handedly. The article says "based partly on an earlier Polish design" but doesn't say

 _Up to July 25, 1939, the Poles had been breaking Enigma messages for over six and a half years ..._

 _The Poles ' gift of Enigma decryption to their Western allies, five weeks before the outbreak of World War II, came not a moment too soon .. Gordon Welchman, head of Bletchley Park's Hut 6...writes: "Hut 6 Ultra would never have gotten off the ground if we had not learned from the Poles, in the nick of time, the details both of the German military version of the commercial Enigma machine, and of the operating procedures that were in use."_

 _..French and British military intelligence,...had been unable to make any headway against Enigma. This Polish intelligence-and-technology transfer would give the Allies an unprecedented advantage (Ultra) in their ultimately victorious prosecution of World War II._

Also the name _bombe_ is explained:

 _The first machine was built by the Poles and was a hand operated multiple enigma machine. When a possible solution was reached a part would fall off the machine onto the floor with a loud noise. Hence the name "bombe"._

There is a Polish movie about that story, _Sekret Enigmy_ (1979), but I haven't been able to get hold of it yet.

[https://en.wikipedia.org/wiki/Bomba_(cryptography)](https://en.wikipedia.org/wiki/Bomba_\(cryptography\))

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

[https://en.wikipedia.org/wiki/Biuro_Szyfr%C3%B3w](https://en.wikipedia.org/wiki/Biuro_Szyfr%C3%B3w)

 _Sekret Enigmy_ : [https://www.imdb.com/title/tt0079878/](https://www.imdb.com/title/tt0079878/)

<comment><USER5> What was it about the Poles that let them break Enigma while other countries couldn't? Mathematics talent? Mechanical talent? Luck? A desire to not be invaded and overrun by Germany?

<comment><USER6> I'm not a historian, but from what I can tell:

1\. The Poles won a decisive victory in the Polish–Soviet War (1921) a war in which the Soviet's had a clear advantage because the Polish forces were able to intercept and read Soviet communication during the Battle of Warsaw [0]. This reinforced the value of such intelligence to the Polish government.

2\. Poland understood it was only a matter of time before Germany or the Soviets/Russia attempted to occupy them again. They made the breaking of German and Soviet codes and ciphers a priority.

3\. The Polish cryptographers understood the importance of their work. They had the shared national trauma of Germany and Russia's many attempts at exterminating Polish culture during over several hundreds years of foreign occupation. They were the best cryptanalysis in the world and they had the full support of the government and intelligence services and were dedicated to their mission

The wikipedia article on the Cipher Bureau "Biuro Szyfrów" [1] is worth reading.

>During this period, until the collapse of France in June 1940, ultimately 83 percent of the Enigma keys that were found, were solved at Bletchley Park, the remaining 17 percent at PC Bruno. Rejewski commented: "How could it be otherwise, when there were three of us [Polish cryptologists] and [there were] at least several hundred British cryptologists, since about 10,000 people worked in Bletchley... Besides, recovery of keys also depended on the amount of intercepted cipher material, and that amount was far greater on the British side than on the French side. Finally, in France (by contrast with the work in Poland) we ourselves not only sought for the daily keys, but after finding the key also read the messages.... One can only be surprised that the Poles had as many as 17 percent of the keys to their credit"

{0]: [https://en.wikipedia.org/wiki/Polish%E2%80%93Soviet_War#Batt...](https://en.wikipedia.org/wiki/Polish%E2%80%93Soviet_War#Battle_of_Warsaw)

[1]: [https://en.wikipedia.org/wiki/Biuro_Szyfr%C3%B3w](https://en.wikipedia.org/wiki/Biuro_Szyfr%C3%B3w)

<comment><USER7> The Poles set up a cryptography program for mathematics students at Poznań University in 1929[1]. I believe Marian Rejewski, Henryk Zygalski and Jerzy Różycki we're all associated with that program.

[1]: [https://en.m.wikipedia.org/wiki/Zdzis%C5%82aw_Krygowski](https://en.m.wikipedia.org/wiki/Zdzis%C5%82aw_Krygowski)

</comment></comment></comment></comment><comment><USER8> Not to take away anything from Allied codebreaking efforts, I find that _Axis_ codebreaking efforts (against the Allies) before and during WW2 are underdocumented. I suspect some of this underdocumentation may be due to the Allies continuing to use WW2 cipher equipment into the Korean War.

TL;DR The Germans also built their own cipher analysis machines and were able to decode a substantial amount of Allied message traffic.

[1] [https://en.wikipedia.org/wiki/German_code_breaking_in_World_...](https://en.wikipedia.org/wiki/German_code_breaking_in_World_War_II) [2] [https://en.wikipedia.org/wiki/Cipher_Department_of_the_High_...](https://en.wikipedia.org/wiki/Cipher_Department_of_the_High_Command_of_the_Wehrmacht#Rapid_analytic_machinery) [3] [http://www.ibiblio.org/hyperwar/ETO/Ultra/SRH-009/SRH009-6.h...](http://www.ibiblio.org/hyperwar/ETO/Ultra/SRH-009/SRH009-6.html)

<comment><USER9> The thing the allies did know and the Germans largely ignored was the fact that their Ciphers could be vulnerable. They tested them. Despite some pockets of dissent the Germans thought enigma was totally secure and never subjected it to proper analysis from their side. Also the German hierarchy during the war made it difficult for dissenting voices from the ranks to be heard on these topics.

Donitz was one exception. He suspected the allies were breaking enigma and hence the security of the naval enigma's was increased. I believe he advocated for more changes but was stopped or ran out of time.

After the war the allies sent in teams of intelligence operatives to assess how much the Germans knew about allied codebreaking and intelligence efforts. What they found was that the secrecy of Ultra worked and held throughout the war.

James

</comment></comment><comment><AUTHOR> Those interested in knowing more about the role of the Polish mathematicians / cryptographers in the breaking of Enigma may want to check out a new book: "X, Y & Z: The Real Story of How Enigma Was Broken" by Dermot Turing (Alan Turing's nephew), published by The History Press (2018).

Here's a review of the book at Nature News and Comment [1]

[1] [https://www.nature.com/articles/d41586-018-06149-y](https://www.nature.com/articles/d41586-018-06149-y)

</comment><comment><USER10> Coincidentally, this article came up while I'm listening to the audio book Cryptonomicon where they are talking about Turing's bike with a bent spoke and weak link in the chain, and relating it to how the Enigma works, while they're taking a bike ride at Bletchley Park. My fourth time through the book, this time with my daughter reading it.

<comment><USER11> I wouldn't want to listen to the sex scenes in Cryptonomicon with any potential future daughters.

<comment><USER10> Not so much "with", but she's reading it also. She prefers and has time for reading where I mostly listen. But, yeah, it can be a little weird some of the books I want to share with the kiddos. No better are the books she's reading in school that I'm following, like The Secret to Lying...

But, she's gone through the OWL training a number of times, which helps prepare her for life.

I really want to share Diamond Age with her, but think she needs a couple years. Not because of the sex, but because of the abusive parents Nell has.

</comment></comment></comment><comment><USER12> If you're in or around Chicago and want to see an Enigma, we have one at the U505 exhibit: [https://www.msichicago.org/explore/whats- here/exhibits/u-505...](https://www.msichicago.org/explore/whats- here/exhibits/u-505-submarine/)

They captured a Uboat without the Germans finding out and kept the sailors hidden away in prison camps so the Nazis didn't know we'd captured an Enigma and codebooks for it. Another fascinating story about how all Allies came together to defeat the Axis.</comment>


Oh Jerry, It [Yahoo!] is No Longer Your Baby! - <AUTHOR> http://www.nytimes.com/2008/06/14/business/14nocera.html?partner=rssnyt&emc=rss

<comment><USER2> Jerry's decisions have definitely had a bad impact on Yahoo's shareholder, but in my opinion it had a good impact on FOSS.

As individuals who are pro FOSS we should encourage and support and if possible finance throught the stock market, companies that are pro FOSS

And we should also do the opposite for companies that aren't ... like MS

Yahoo developed, supported and used several FOSS project, merging with MS, would have most likely ended or constrained this support.

I think, that Jerry intentionally by supporting FOSS inside Yahoo and (probably non-intentionally) by ruining this MS take over deal have done good to FOSS, and it would not be a terrible thing to support him! even if merely morally

.. Go Yahoo! Go Jerry!

</comment><comment><USER3> Best line from the article after describing the direction Yahoo! is taking:

"Well, good luck with that."</comment>


Show HN: Free React template that makes "Admin Dashboards" easy - <AUTHOR> https://mdbootstrap.com/previews/free-templates/react-admin-dashboard/ <comment><USER2> This looks to be a pretty straight grab of Creative Tim's material/bootstrap admin theme with some other packages thrown on:

[https://www.creative-tim.com/product/material- dashboard](https://www.creative-tim.com/product/material-dashboard)

Or did this happen the other way around?

It's within the rules of engagement of open source, but it still feels weird.

Edit: (Removed some extra information that was here because I was personally mixed up about the maintenance / ownership boundaries of various packages)

<comment><USER3> Yes, it seems like it is ripped and then mangled. Some of it looks good, but overall I do not like it. It looks awkward to me - but perhaps it's just me.

</comment></comment><comment><USER4> There are quite a few visual glitches and inconsistencies that would make me skip over this project right away when evaluating options. I kinda enjoy spotting such issues in UIs, so here we go:

\- Roboto font is being loaded, but a local font is used; I'd definitely prefer Roboto

\- The search box on the dashboard is vertically misaligned next to the button and the space between the placeholder and bottom line is way too big

\- The dashboard grid view is not ideal, a masonry would be great or some other strategy to avoid so much blank space

\- The progress bars on the bottom of the dashboard look glitched when compared to the top of the dashboard

\- The labels on the side bar buttons with the icons should be aligned i.e. the icons should have the same width

\- Text on the (secondary?) pink color on the tables pages should be white, otherwise the contrast is too low

\- The footer is floating in the air when the content isn't long enough

\- The resizing effect of the top bar is useless and distracting, it should probably only be used when the bar position is fixed

\- The navigation sidebar does simply not exist in a narrow browser window making the site impossible to use

</comment><comment><USER5> I have build a lot of admin dashboards in my career, and I've always wondered if any of the designers of these templates actually build or even used a dashboard before.

What you need in 99% of the cases are just grids and forms, which need to be controllable without a mouse.

Admin dashboards are used to manage data (basically just a GUI around the DB), and to perform day-to-day tasks (basically buttons to trigger certain actions). In practice, the eye-candy graphs are almost never looked at by the user. If you really need fancy graphs, you're probably much better of using something like grafana.

Ask any experienced worker who actually use these dashboards for 8 hours a day, and they will always tell you the prefer their old AS/400 or DOS terminals over webforms, just because it's so much more usable.

\- Don't spend your time on building graphs, give your users the ability to export CSV or give them SQL access. They will learn.

\- Don't use paging, you need search. Paging is an anti-pattern that just indicates users can't find the relevant data.

\- Forms with loads of whitespace and animated labels don't add anything useful for the user. Focus on accessibility and feedback instead.

</comment><comment><USER6> It looks really beautiful. Well done!

We use react-admin ([https://github.com/marmelab/react- admin/](https://github.com/marmelab/react-admin/)) and it was a total life saver to create a backoffice for our app in less than 2 weeks.

Hope this takes off and you can provide some code example for how to use this project for that purpose.

<comment><USER7> My gripe with react-admin and to a lesser extent Semantic UI is their idea of also writing a full REST api layer. Just give me a good front end tool and let me handle my data layer!

</comment></comment><comment><USER8> Reminds me of a mixture between Bootstrap 2 and Windows 10

</comment><comment><USER9> Semi-off-topic: There's a really strange shaking effect when scrolling down one notch with the header bar just in view.

<comment><USER10> I can also replicate this issue, Windows Chrome latest.

</comment></comment><comment><USER11> Very nice - nice, clean... just what's needed</comment>


A year of going cashless – and where it hasn't worked - <AUTHOR> https://shkspr.mobi/blog/2020/01/a-year-of-going-cashless-and-where-it-hasnt-worked/ <comment><USER2> > Maybe I'm complicit in bringing forth a dystopia - but I place a high value > on convenience.

Sums up modern society, pretty much.</comment>


Remove Firefox Replay - <AUTHOR> https://bugzilla.mozilla.org/show_bug.cgi?id=1609815 <comment><USER2> This seems to be one of the effects of Mozilla laying off 70 people last week. [https://news.ycombinator.com/item?id=22057737](https://news.ycombinator.com/item?id=22057737)

</comment><comment><AUTHOR> Title slightly editorialized because the name "Firefox Replay" showed up in previous HN discussion at [https://news.ycombinator.com/item?id=21655958](https://news.ycombinator.com/item?id=21655958) (1596 points)</comment>


Is Your Neighbor a Democrat? Obama Has an App for That - <AUTHOR> http://www.propublica.org/article/is-your-neighbor-a-democrat-obama-has-an-app-for-that

<comment><USER2> >> Asked about the privacy aspects of the new app, a spokesperson for the Obama campaign wrote that "anyone familiar with the political process in America knows this information about registered voters is available and easily accessible to the public."

I think this is a cop-out. The information may be available to the public, but having it accessible on a map interface like this, by an app that can be downloaded by anyone, is a different ballgame. Especially in today's political atmosphere, it would make me very uneasy.

Sucks that it's opt-out, too.</comment>


Mocks: The lurking disaster in your codebase - <AUTHOR> http://www.stefankendall.com/2013/01/mocks-lurking-disaster-in-your-code-base.html

<comment><USER2> You're misunderstanding the problem and so attributing it to the wrong thing. If you can change the core interaction of the mock and that doesn't make any unit tests fail, then you're not writing the right unit tests. Fix that and this problem goes away.</comment>


Observations on the testing culture of test-driven development - <AUTHOR> https://medium.freecodecamp.org/8-observations-on-test-driven-development-a9b5144f868 <comment><USER2> Disclaimer: I work in statically typed languages.

I've studied and practiced TDD for years. I've even written articles to help beginners.

I now only practice it sparingly. Sometimes it makes more sense to write the test first and other times I already know exactly what I want and I know how to make it testable.

An even bigger issue I have is the huge reliance on mocking which leads to completely brittle tests and code that can withstand no change without all hell breaking lose.

Lately I spend more time on acceptance tests, which I do often write first. I use unit testing for non-trival logic.

<comment><USER3> > Lately I spend more time on acceptance tests, which I do often write first. > I use unit testing for non-trival logic.

What's the difference between acceptance tests and integration tests?

<comment><USER4> It depends on where you work, but to me acceptance tests run on a browser (e.g.: automate site testing with puppeteer, selenium), while integration tests I would say tests running an API call that's allowed to hit a data store

At some places, the only acceptance testing that exists is user acceptance testing, where a user manually interacts with the application to sign off on updates after verifying that it meets the business requirements

<comment><USER5> You're right. The definitions of boundaries between acceptance vs. integration tests is fluid and depends upon the team context.

In our team, we define the terms less by _tactics_ and more by _intent_.

It's our belief that you can generalize your idea on what acceptance testing means. The intent of an acceptance test is to verify that -- no matter how it's exercised -- the implementation performs the work and outputs the result I expected. Now, you can exercise this implementation with _any interface_. Of which, a browser is just one interface to your application layer. An HTTP API is yet another interface; a command-line utility is another; etc.

We actually have separate acceptance tests at the UI level and the API level. Sometimes even at the _feature_ level, in that it exercises a multi-step multi-result pathway through the application.

The engineer responsible for developing a unit of work may or may not implement API level acceptance tests (it's recommended); the reviewing engineer usually writes an automated API level acceptance test that must pass for the merge request to pass from code review -> QA/QC; then the QA/QC engineer implements and runs UI level acceptance tests that must pass to move from QA/QC -> Done.

We've found this process to be very effective in reducing our defect rate and improving the quality of our product.

</comment></comment></comment></comment><comment><USER6> As always, the truth is somewhere in the middle. There are certain stages in the lifetime of a project where TDD can work execptionally well, but it is by no means a panacea. Things can and will sometimes emerge organically, but most of the times a [lot of] though has to be put into the arhitecture of the software we build. Domain knowledge and understanding the tradeoffs that are being made also help a lot.

As for Uncle Bob, the gut feeling I get whenever I hear him speak is "snakeoil salesman". You need to understand that he is in the business of selling you something (his books, training, etc). And that's okay - what's not okay is flat out attacking everyone that has a different opinion/disagrees with him. Who gave you the authority to dictate what's good and wrong? It's sad because he could make money from his [mostly good] ideas without attacking anyone.

</comment><comment><USER7> Uncle Bob is a menace to TDD. Nothing more effectively or immediately turns people off than being told that they are, in fact, unprofessional and by extension unethical.

As for myself: I am not sure that TDD can really be learned effectively from a book alone. I read Kent Beck's book and my reaction was "well this is concisely-stated bullshit". Then I went to work for Pivotal Labs and I now I understand the fuss.

<comment><USER8> Absolutely, I mean I'm pretty sure Linus isn't using TDD to develop the linux kernel, or git.

My problem is that Uncle Bob's dogmatism, is then cargo culted by mostly 'weak' developers as a shield behind which to create an illusion of competence.

Just repeat outrageous things like everything must be TDD, we must have 100% code coverage, and avoid those tricky decisions called software engineering.

<comment><USER9> It could be that Linus, the people he chose to be his "captains", the design and code review process, and the sheer amount of linux usage anywhere maybe enough. The linux kernel might be the most analyzed (by people and machines) piece of software there was.

But then a lot of business-logic software is out there just to support client-A able to do rpc calls to your service, and usually one or two engineers implement it, few more look at it, gets deployed, and it's expected to run flawlessly for long time.

Then someone else modifies it later, and the original "developers" are gone (another project, company, retired, etc.)... Definitely not the case with Linux.

So my take is that such software needs TDD to hold on it's own, such that it could be developed further by complete strangers.

</comment></comment></comment><comment><USER10> Great article! We want better code and we want to foster a culture that values quality work. We want to sleep at night knowing our codebase is under our control and won't wake us up for PagerDuty. I observe that testing first is a great way to express our team's commitment to quality.

There's often a lot of negativity in TDD threads like this. But please limit the FUD because some of us are actually trying to improve and would appreciate encouragement for ourselves and our peers who are on the fence about rigorous testing.

Also, I don't doubt there are better routes to improving our software quality than TDD, I'd just like to hear what those are for people.

</comment><comment> rooam-dev I always wonder why so many "TDD or not TDD" discussions. TDD is based on some guidelines (like "Agile"), it works for some, it doesn't for others. It depends on many things: tech stack, tooling, team, company culture, etc... just to name a few.

Once you get the discipline to follow your version of TDD, then you can focus on more important stuff. You don't spend time on deciding if something has to be tested or not. Having different devs with different level of experience will lead to inconsistent coverage levels. Similar to following traffic/safety rules, you just do it without 2nd guesses.

I don't know if I do TDD, but I do write a lot of tests (unit and integration), during code writing. Easy way of mocking components is a huge advantage (e.g. groovy mocking), after all tests is code that needs maintainance.

There are multiple reasons to write tests. To me, to get most out of them is TDD or something close to it. Adding tests later, reduces their value, simply because using tests during development is more efficient development (especially in complex systems) than after the fact.

All the above is simple IMHO of course.

<comment><USER11> > Easy way of mocking components is a huge advantage

Any language that enables dependency injection (e.g. all OOPL's) would help with this.

</comment></comment><comment><USER12> Personally, I hate writing unit tests, especially if they require complex mocking of deeply nested dependencies.

On the other hand, I love refactoring and/or updating well-tested code much more, so I usually force myself to write tests -- up front as much as I can, but also after the code is written and functionality clearly defined.</comment>


Some thoughts on "Up or Out" - <AUTHOR> http://brucefwebster.com/2008/04/29/some-thoughts-on-up-or-out/

<comment><USER2> I worked for McKinsey for 4 years and I actually really liked the up or out process. Yes, it puts you under pressure but not much more than the pressure young competitive people tend to put themselves under anyway. Nearly everyone there wanted to be challenged and get fast promotion. At the same time the process was very open, feedback was fair and when people didn't make it there wasn't much stigma attached (it just didn't work for them).

The flip side of up or out is that if you are any good you get promoted very quickly. I couldn't think of anything worse than waiting around for your boss to retire or move on.

</comment><comment><USER3> _I have proposed before to organizations that they implement a non-management technical track all the way to the CxO level, because it's a lot cheaper to keep your best people on salary than to hire them (or their equivalents) back as consultants at 2x to 6x their salaries. Such a track might look like this: Associate Engineer - > Engineer -> Senior Engineer -> Technical Officer -> Senior Technical Officer -> Executive Technical Officer -> Chief Technical Officer (only one of these). The ranks from Technical Officer and up would have salaries, perks, and benefits equivalent to progressing through management (VP, Senior VP, Executive VP), but without actual management/head count responsibilities._

I like this idea a lot. It certainly sounds like a reason to continue working for one company.</comment>


Dumb Software Isn't Dumb - <AUTHOR> http://www.markbernstein.org/Sep09/DumbSoftwareIsntDumb.html <comment><USER2> As a general principle, I guess that I want my software to be smart and make _suggestions_ in an unobtrusive way. It shouldn't make the _decisions_ \- just show me what it thinks I might want to do and make it easy for me to accept that suggestion.

<comment><USER3> Yes, software we use should make smart _suggestions_ based on our basic usage patterns, but not _decisions_. Good point.

Bernstein misunderstands Seth's calendar example: _defaulting_ to PM when I select 2 o'clock is definitely _not_ the same thing as changing my 2AM entry to 2PM automatically. In that straw man example, the "smart" feature is actually a bug.

What I took from Seth's post is not that software should be able to read our minds, but that opportunities to delight our users abound, especially in features/functions that we would consider trivial.

</comment></comment><comment><USER4> _In fact, server-side developers are likely to be short on CPU, so lots of clever inductive strategies that are viable on the desktop won't work in Web apps. Well, they'll work in beta, and for the press briefing when the system has maybe ten users. Once things get built out? Fail whale._

Sigh, that is a _vast_ oversimplification. I love it when non-programmers debate each other over programming.

Counterexample: Google Search. My desktop does not have enough CPU or disk to analyze the entire Internet and suggest spelling corrections for me. But Google does.

<comment><AUTHOR> Mark Bernstien is definitely a programmer: <http://www.eastgate.com/Tinderbox/>

</comment></comment><comment><USER5> Well yes, probably everyone on HN is computer-savvy enough that when they type some input into a general consumer application, they damn well mean what they said, not what the application thinks they meant.

I wonder if there's cases where this has degenerated into a game of "guess two-thirds of the average": your app starts out with a level of automatic input cleaning which is not enough to catch all the mistakes of the least savvy 1/3 of your users, is mildly helpful to the next 1/3, but annoys the top 1/3 enough that they switch to another product. Then the least savvy users are half of your userbase, so you lower the focus of your product to account for them ... (this assumes that the least savvy users don't know how to switch products, since if they knew that much they wouldn't belong in the "least savvy" category).

</comment><comment><USER6> The so-called "smart" features in office suites annoy me so much, that the first thing I do on any fresh install is ensure to switch all of them off.

Basically Seth was saying the software needs to read his mind..

</comment><comment><USER7> _...machine learning is hard..._

Hard is relative. I remember Seth's post and pretty much agreed with all of it. Nothing in it struck me as particularly difficult or unusual. We routinely do these things all the time:

      - provide options in most likely order
      - default to the most likely option
      - auto-complete based on indexed options
      - auto updating software
      - auto maintaining databases

Users don't necessarily want more "features". They just want their software to work the way they do. The developer's job is to find that out and make it work, no matter "hard" it is to do.</comment>


Ask HN: Would a list of books recommended by founders and makers be interesting? - <AUTHOR> <comment><USER2> I'd be very interested. This is actually one of the things I like to ask entrepreneurs when we first meet. I'd tell you what I've found, but it would get me kicked off HN again.

<comment><USER3> Well now I need to know...

<comment><USER2> I was specifically looking for religious related answers. Reason being, I think a lot of management decisions are made based on religious relationships inside the office (e.g. I go to church with this person so I'll support their projects more). I've asked dozens of people in leadership positions what book they recommend. Some of my favorites I've gotten Maxwell Leadership, and The Bible, and I was surprised to hear Arnold's Bodyshaping for Women made a huge difference in one person's life and approach to physical health. I will continue to ask people this throughout Linkedin and Facebook.

</comment></comment></comment><comment><USER4> I'd recommend the book "Coders at Work," it features lots of industry veterans and candid interviews with them. I remember not being able to put the book down while reading the chapter interviewing the founder of LiveJournal.

</comment><comment><AUTHOR> I created a quick landing page to feel if people are interested in it......[https://bbfounders.carrd.co/](https://bbfounders.carrd.co/)

<comment><USER5> It provides zero value. It just asks for our email.

Here's a useful page: [https://medium.com/startup-library/marc-andressen- bookshelf-...](https://medium.com/startup-library/marc-andressen-bookshelf- db20dd9309c9)

<comment><AUTHOR> How would you think it'd be good to test the idea before launch it? More information on the landing page? Some kind of prototype? I'm just learning to launch and would love to hear feedback.

<comment><USER5> What do you mean by "launch", exactly?

The easiest way to see if people find a list of book recommendations useful or not is to just compile it, put it online and share it! Better yet, do this several times with different formats or recommendations from different people and your page traffic will let you know what is and isn't valued. Asking in the abstract is very, very difficult to get good intel from.

One somewhat related success model is Maria Popova, who has built a massive site called Brain Pickings from reading and writing summaries of books herself. There was no sudden launch to fanfare. She learnt what worked by creating and listening to her audience over time.</comment></comment></comment></comment>


Google+ invite window open all day, you're invited now - <AUTHOR> http://www.beatweek.com/news/8749-unlimited-plus-google-invite-window-open-all-day-youre-invited-now/

<comment><AUTHOR> Been trying to get on Google+ for a few days now, today it finally worked.</comment>