Sciter – Multiplatform HTML/CSS UI Engine for Desktop and Mobile Applications - <AUTHOR> https://sciter.com/ <comment><USER3> This has been posted a few times to HN [0] and I've looked into it superficially without actually trying it out. For the benefit of anyone interested, these are my tentative conclusions. Please correct me if I've misunderstood anything.

Sciter is a small company (single person ?) project, but the list of enterprise clients is an assurance.

Their flavor of Javascript (TIscript) diverged from ECMAScipt more than 10 years ago, so there would be syntax switching involved when developing in Sciter and doing normal web development in parallel. There are similar issues with the DOM and CSS. But the list of included libraries certainly look like it could compensate for some of that, with implementations that can mimic modern features like promises and CSS3 transitions. [1]

Also, as far as I can see it is not truly cross-platform, i.e. it can not easily be deployed to mobile.

Pricing (even if fair comparatively) and the closed source is also a roadblock (for me). There was a thread by the author on Reddit some time back that vented the idea of open-sourcing the library. That could tip the balance (for me). [2]

[0] [https://news.ycombinator.com/item?id=13057526](https://news.ycombinator.com/item?id=13057526)

[1] [https://sciter.com/download/](https://sciter.com/download/)

[2] [https://www.reddit.com/r/programming/comments/a8vkzm/scitern...](https://www.reddit.com/r/programming/comments/a8vkzm/sciternode_as_an_alternative_to_electron/)

<comment><USER4> Out of curiosity, do you use a rich editor or do you insert those links like that yourself?

<comment><USER5> Not GP, but I do that manually. Inline links often get in the way of the content, if you're using them as reference or support material. I still use inline links if it's central to the point of the comment.

</comment></comment></comment><comment> c-smile Sciter's author here.

Couple of words about "native UI" and on statements like: "I (a hard-core software developer) prefer gray boxes".

You (as a software developer), is one of 1% of UI users. But rest of us (99%, sic!) consume UI in form of Web sites, right?

So "Native UI" these days shall look closer to default Bootstrap theme then to something that OS provides. My wife (as an example) has Windows notebook, iPhone and Android based book reader - "native UI" for her is meaningless at best.

About desktop applications in general...

There are two major types of applications:

a) the ones used time to time / rarely; b) and productive applications used 24/7 - parts of job workflow.

The ones that used time to time (what I name as "one big red button applications") must have descriptive UI - e.g. hot-keys don't work there - <USER2> one is bothered to remember them. So the UI shall be self descriptive, pictographic, etc. 1 second looking on window to make decision what to use.

Such applications must follow modern UI trends - who will trust antivirus if it looks as dinosaur from prehistoric times? That's why AV vendors prefer to use CSS, just to minimize maintenance costs, see: [https://sciter.com/from- skeuomorph-to-flat-ui-evolution-of-o...](https://sciter.com/from-skeuomorph- to-flat-ui-evolution-of-one-application/)

Productive applications: MS Office, Adobe Suite, even IDEs like Visual Studio, JetBrain, SublimeText, VSCode, etc.

None of these are using "native UI" as you know. One of the reasons: "native UI" is not expressive enough. Another reason: these are complex UI systems with complex data model underneath and so complex update graphs. They prefer GC-able runtime environments for those reasons. Yet there are c), d) up until z) reasons why they do that, I can speak about that forever, e.g. Adobe Suite must be cross-platform, right?

So when you use "native UI" please take the above into consideration.

<comment><USER6> Native to the platform is the common meaning on HN. Native to users is a good point, though orthogonal to reasons HN users may prefer platform-native: lower memory and CPU usage, platform style, familiar shortcuts and behavior.

<comment> c-smile > orthogonal to reasons

That's my impression too. I suspect that those "gray boxes" talks (a.k.a. buttons a la turrets of Panzerkampfwagen VI Tiger) are orthogonal to GUI in general.

Yet "memory and CPU usage" is also orthogonal to HTML/CSS per se. One of strict requirements of AntiVirus applications is to to consume as low memory and CPU as possible. And most of AVs are using HTML/CSS UI these days. And so Sciter code works on 600 mln PCs and Macs as a part of these applications.

In fact the main motivator why Sciter started using GPU for UI rendering was R&D director of Norton Antivirus when high-res monitors started to arrive. Retina monitors have 9 times more pixels to rasterize than old 96 ppi monitors. GPU is the only option for the GUI at post-Moore era.

<comment><USER6> > And most of AVs are using HTML/CSS UI these days.

If AV background and scanner processes use those then that's yet another reason to drop them like a bad habit. (The other reason being they increase the attack surface area.)

<comment> c-smile No, AV scanning has nothing with UI layer other than posting events "something found - here are details". Even more, usually scans are done in separate processes/daemons.

</comment></comment></comment></comment></comment><comment><USER7> HTML/CSS based native interfaces are some of the hardest to use, least reliable, least accessible, least robust interfaces I encounter; The demo interfaces on their website all fit into the unusable pot.

I admit most/all of the interfaces I've personal used are using electron/webkit/ie to render which are all quite bloated. Is this different? It's not entirely clear and would be an important differentiator.

I still don't understand the draw though. The best native apps look and behave natively; using a platform like this prevents that or just makes it harder to accomplish. Using such a platform seems like it's entirely developer-focused and not-at-all user focused, which is a shame.

<comment><USER8> I had a similar discussion on reddit a long time ago, and posted this screenshot of various Linux music players compared to Spotify.

[https://i.imgur.com/K44tJ2Y.png](https://i.imgur.com/K44tJ2Y.png)

Lots of native UIs (especially from the past) tend to all have the same "grey boxes" look. I don't see how that's universally better.

Another example was this part of Slack UI [https://i.imgur.com/O71fdP5.png](https://i.imgur.com/O71fdP5.png) \- how would you even do something like that with a typical native library? It would certainly take a lot more effort if you had to build that from a limited set of pre-existing components, instead of relying on the more free-form "rectangles and text" building blocks of the web.

<comment><USER9> > Lots of native UIs (especially from the past) tend to all have the same > "grey boxes" look.

it's not "grey box", it's "uses the native theme of the user's desktop". e.g. I use strawberry music player, if I am on a computer with a dark theme it's dark.

Qt definitely allows slack-like look though if the developer opts-in to it - e.g. Telegram Desktop ([https://cdn2.nextinpact.com/images/bd/news/163843.jpeg](https://cdn2.nextinpact.com/images/bd/news/163843.jpeg)) is made with Qt Widgets.

Ripcord is another Qt app which is a discord / slack client made by a single guy, which goes more for the native look'n'feel : [https://cancel.fm/ripcord/](https://cancel.fm/ripcord/)

(contrast this with slack needing dozens of developers and being at their third rewrite of the app because of performance issue :-))

<comment><USER10> Interesting, I just assumed Telegram Desktop is electron app since it behaves similarly to one.

In the end I don't care how it's done as long as it works fine (which it does).

<comment><USER11> "behaves similarly" How?

<comment><USER10> Besides Telegram, I have also electron based Rocket Chat and Slack (different teams, different apps :/) and all these apps look and feel very similar.

Telegram uses this non-native visual language which is very common in electron apps.

</comment></comment></comment></comment></comment></comment><comment><USER12> > Various GUI frameworks offer different UI declaration and styling languages, > such as QML and XAML (Microsoft WPF). On the contrary, Sciter allows using > time proven, robust, and flexible HTML

What a remarkable piece of bullshit. QML and XAML have been designed from scratch right for UI mark-up, HTML is a legacy document mark-up language we are doomed to carry on together with gargantuan rendering engines and the whole pandemonium of frameworks while making UIs.

<comment> c-smile Each dinosaur was modern for its time.

And so was XAML. Time is passing and now it takes significant excavation effort to find out a project that uses it. Git-for-desktop used to be a XAML app, now it is an Electron app. And so on.

QML is a palliative or compromise if you wish: let's take existing widget- tree-based UI and add some declarativeness to it at least to compete somehow with the web tech stack flexibility and explosion of ideas. Desperate move I would say.

As an C++ UI developer and then UI architect I was working on one project that transitioned from pure desktop VB + native application to pure Web based app. So "I've been there, seen that" and many times since then, all pro et contra of all these.

At some point I've asked myself the question: "Ok, what would you add to Web UI stack so it will be really useful on desktop?"

So I took C++ again and made the Sciter. It is a modern engine that works as on modern high-res monitors and GPU hardware as on ancient XP machines. It supports as retained UI as immediate ones a la ImGUI. As C++, Go, Rust, Delphi as script. As Angular (data bound UI) and React UI (vDOM,JSX) approaches as classic direct element tree composition from native code.

Yes, all this is using HTML/CSS vocabulary because it is a) convenient and flexible, b) 90% of UI developers are Web developers these days and c) HTML/CSS are here now and for generations to come.

</comment></comment><comment><USER7> Using 'modern' to describe the platform doesn't communicate anything to me as a developer. Tell me what makes it modern. Tell me why its better. Is it lighter weight? is it easier to develop with? is it better for my users? is it less buggy than other frameworks?

</comment><comment><USER13> This looks quite good and pricing seems reasonable. I wonder why I've not come across it before. Anyone have experience of this vs Electron?

<comment><USER14> It's not aiming for 100% compatibility to web standards. More like a familiar way to create GUIs. Electron is a very up to date browser instance, and that is both its strength and weakness.

</comment></comment><comment><USER15> Assuming you want a very lightweight HTML/CSS UI engine, I think you can get 80% of the way by using webview[1].

It's very tiny (1200 lines single-header file).

I actually wouldn't be surprised if it used webview internally.

[1]: [https://github.com/zserge/webview](https://github.com/zserge/webview)

<comment> c-smile Sciter does not use webview or any other existing browser engine implementation. I did HTML/CSS and script engines by myself.

The only place where I intersected with WebKit and Gecko teams is at WHATWG and then HTML WG at W3C in design of HTML5 specification and portions of CSS3.

</comment></comment><comment><USER16> I got the impression that it runs "Script" instead of js. So porting web apps is not a goal (?)

Looks like something you'd use for UI in a native app.

</comment><comment><USER17> I have never used this but something better for GUI would be great even if commercial; what I miss (as a native GUI dev) with all(? if you know any besides framework7 which is basically only mobile) of these html/css frameworks is that there is no equivalent of a control library that can be rapidly used without using (bucketloads) of css. When you browse the examples you see that most have some desktop controls like menus etc; I don't want to 'make' those; I just want to start with a theme (Material) and (as backend dev) _never_ touch css while still being able to make something that looks ok and works like an actual GUI app instead of a web page. Like I can (and do) do in native tech all the time.

Is there anything with Electron-ish apps (Sciter is preferable it seems as it has less bloat)? I searched for instance for a desktop theme for Electron and only found a mac os x theme which indeed works like described above but I don't want everything to look like mac os x or windows or linux or ios or android; either it should look native-ish (nothing beats native though) on the platform it runs on , or it should look like something completely 'new'.

<comment><USER8> Another discussion from today (React Native Windows / Mac) [https://news.ycombinator.com/item?id=23160075](https://news.ycombinator.com/item?id=23160075)

Not web/HTML though, uses native widgets directly (mostly).

<comment><USER18> >I have never used this but something better for GUI would be great even if commercial; what I miss (as a native GUI dev) with all(? if you know any besides framework7 which is basically only mobile) of these html/css frameworks is that there is no equivalent of a control library that can be rapidly used without using (bucketloads) of css. When you browse the examples you see that most have some desktop controls like menus etc; I don't want to 'make' those; I just want to start with a theme (Material) and (as backend dev) never touch css while still being able to make something that looks ok and works like an actual GUI app instead of a web page. Like I can (and do) do in native tech all the time.

In this regard even Visual Basic was far ahead of most of today's client tech. HTML/CSS/JS are not even close to be called a serious GUI stack for applications despite they are used for that as the Web ate the world.

</comment></comment></comment><comment><USER19> I wonder why we see so many of these attempts at bringing html/css to native, while we (or at least I) see so few examples of the inverse.

I loved creating iOS apps with autolayout. Some parts of it were a bit frustrating, sure, but you could do things that were pretty hard with css. Why don't we see any lib for "make an app just as if you were making it for native, but now it runs on the web!"

<comment><USER20> Google Web Toolkit [1] does this.

[1] [http://www.gwtproject.org/](http://www.gwtproject.org/)

<comment><USER21> GWT hasn't had a new release since 2017: [http://www.gwtproject.org/release- notes.html](http://www.gwtproject.org/release-notes.html)

</comment></comment></comment><comment><USER4> So did they write their own layout and JS engine? Or does this use Blink / another dependency under the hood?

I found this [https://sciter.com/developers/engine- architecture/](https://sciter.com/developers/engine-architecture/) but it doesn't say if it's all written from scratch or using other libs.

<comment><USER22> It's completely written from scratch, and does not aim for compliance with web standards.

</comment></comment><comment><USER23> Using screenshots of Norton Internet Security is not good marketing.

<comment><USER24> The first time I saw that goofy symantec UI 10 or more years ago I named it the clownterface...

And quickly uninstalled it. A supposed "enterprise" application that makes your whole machine unstable.

</comment></comment><comment><USER25> Speaking of UI, please set a max-width on your text. My eyes shouldn't have to scan across my whole screen to read your intro blurb. I'm now using the Just Read addon to read your site.

</comment><comment><USER26> Does anyone know if there is any plan to port that on Mobile ( iOs / Android ) ? That would be a killer feature.

Even if I am not sure it would be even legal to port that to iOS with Apple's restrictions on the Web Engines they accept in the Store.

<comment> c-smile It works on Android: [https://sciter.com/sciter-lite-is- published/](https://sciter.com/sciter-lite-is-published/) and I have internal builds for iOS.

For the moment it is available only as a static lib to be linked into an application.

I am trying to come up with a runtime model that will allow to build applications as simple as

> sciter-build /ui/res/folder -platform="xxx"

</comment></comment><comment><USER27> My main concern with this would be the security and W3 standard support. Browser engines and whatnot do make your life easy, but they add a lot of attack vectors. Also the support for W3 standard is usually limited and incomplete. Also it seems that the engine itself is distributed as binary only? I can't find source anywhere. That's a -1 for security.

<comment><USER28> From browsing the docs, it looks like scripts can open sockets so it makes it much easier to jump from exploiting an app's Sciter frontend to attacking other targets

<comment> c-smile These functions are off by default, check: [https://sciter.com/security-in- sciter-based-applications/](https://sciter.com/security-in-sciter-based- applications/)

Even more, you can compile Sciter without them completely.</comment></comment></comment>


Ask HN: Do your grades really matter? - <AUTHOR>

A little background.
I'm now (going to be) a second year physics student at uWaterloo, and due to the fact that I was ill, I didn't do too well during my second semester, and a  couple of courses in my first semester. I still managed to pull off 80/90+ in all my core courses, and I'm now a bit worried as to whether I'll get a decent co-op job.
I have a pretty reasonable resume, a couple of github projects in C++ and python, a research internship in algorithms (with a paper on the way).
So, what I want to know from the HN community is, would you hire me for a good co-op position (whether in software or otherwise), or am I doomed to a job where I need to file papers all day? <comment><USER2> Coming from another UW student, it depends.

If you want to go into post graduate studies then yes grades matter. Some companies do look at grades, so it matters to them. But for the most part, especially if you are looking for employment in the software development sector, grades mean nothing. Well...they mean you have good learning skills but that too is subjective from person to person.

I have shitty grades myself, but I do have a kickass portfolio which is what lands me jobs. Simply put, if you have nothing to show for your skills, then people will look at your grades. Hence if you have an awesome portfolio, dont really worry too much about your grades, but do ensure you pass and clear your semesters :)

<comment><USER3> +1 for grad school, in particular if you ever think Law might be a potential.

It can help with the first job but rarely matters.

</comment></comment><comment><USER4> I'm a VP at start-up, spent 11+ years at big company hiring lots of folks out of college. I look at work experience first, if you actually did real stuff, got real results.

Good grades just validate what I see on experience, bad grades tell me something might be off - is it all smoke & mirrors.

And yes, it only matters for the first job. After that, I honestly hardly even look at what college you went to.

I'd suggest also breaking out your GPA for your major vs. overall. That tells me that you're really good at your major (probably related to the job you're applying for anyway) but that maybe you just are bad at liberal arts.

<comment><USER5> I second this. I am hiring for junior and senior developer roles currently. For candidates fresh out of university/college I will have a look at their grades. For anyone that has real work experience, I will focus on that and won't bother with grades or university/college.

Someone once told me that grades do not matter once you get your first job, after that you are only as good as your last job. In my personal experience I think this is rather accurate.

</comment></comment><comment><USER6> It will depend in the company, but in generally for internships/first jobs grades tend to be an important factor as there's little else distinguishing between most candidates.

Some companies might have minimum grade policies which means you'll get automatically filtered out. In some cases you can get around this by going a less conventional route (i.e. speaking to an employee and getting them to let you bypass the filter).

Most of the research in recruitment studies show that early impressions stick, so once they've decided "we (don't) want to interview this person" they'll likely stick with that position regardless of future information.

Hence for companies which don't pre-screen your best chance is making sure they see what makes you stand-out (personal projects, experience, etc.) before they see your grades. So make sure your CV skews in that direction.

<comment><USER7> I found this to be true as well. If you're coming in through the resume route, yes you'll be judged on GPA. My co-op job had a particular emphasis on GPA since we were a branch of the school, hired loads of co-ops from the school (lots of datapoints), had permanent hires from the school, and had enough people familiar with the courses in each subject to tell what the course was like.

If you're not going for that sort of job, then all you need is the GPA threshold, and no one is going to care afterwards. Get out of the square root club if you're there and pull up your GPA to where your target job wants it. So if their filter cutoff is 3.5, get a 3.51 and call it a day. If your target job cuts off at 3.0 then really that's all you need to get. It could reduce your stress level (not sure how bad UW is), and let you do other things that would help your chances of getting a job more (clubs, leadership positions, volunteering, networking, etc). Some people split up their GPA between "core GPA" and "cumulative GPA", which could help if you're doing bad in your chem classes but passing all your CS classes.

</comment></comment><comment><USER8> For the first job what really matters (and makes you different from other candidates) is your actual intelligence, ability to catch things fast and genuine interest to develop in the chosen field.

That's what smart employers are looking for. In case they set up a formal resume competition for grades, maybe that's not where you'd prefer to work?

</comment><comment><USER9> I've never been asked exactly what my GPA was for my internships/co ops, but many had something like "Above a 3.00 GPA required" in their job posting. None of the companies ever asked me about it in the interview or elsewhere, so I imagine it was just HR.

</comment><comment><USER10> Grades dont matter. But having a track record where you have sought to excel in some facet of your life matters. For a lot of people grades / school are a ready made environment where they seek excellence.

</comment><comment><USER11> It depends on who you ask. If you ask recent graduates, or college students they will say Yes. However, ask someone who graduated 6+ years ago, and they will just smirk, laugh, and say No.

</comment><comment><USER12> Well if you have a 3.0 you probably won't get an interview with Goldman Sachs. I think grades do matter especially with the bigger firms.

</comment><comment><USER13> No degree, I earn pretty much as web developer (above the average for my country).</comment>


Social Distancing on Websites - <AUTHOR> https://unsplash.com/ <comment><AUTHOR> Unsplash shows how social distancing should be. Scroll down on the website and you will see the pictures spreading out to maintain a safe distance.

<comment><USER2> I'm just landing on their homepage so</comment></comment>


Guardian Datablog - journalists publishing raw data as Google Spreadsheets - <AUTHOR> http://www.guardian.co.uk/news/datablog

<comment><AUTHOR> We've been running this for several months now. Some of the datasets published are the result of in-depth research by our journalists and researchers - <USER2> example, [http://www.guardian.co.uk/news/datablog/table/2009/jun/09/eu...](http://www.guardian.co.uk/news/datablog/table/2009/jun/09/european- elections-elections-2009) required calling 50 individual councils to obtain the local break-down results of the European elections (which are only officially published as aggregate totals).

You can see a full list of available datasets here: <http://www.guardian.co.uk/data-store>

We actively encourage people to use the data for their own mashups and visualisations. Some of the stuff people have done can be seen in the Flickr group: <http://www.flickr.com/groups/1115946@N24/>

<comment><USER3> this is terrific.

</comment></comment><comment><USER4> As long as the methodology behind the data collection is given as well, I think this is a huge step forward for journalism.

Some stories require hundreds of hours of research which is then distilled into 1000 words and a bar chart, what a shame.

thanks.</comment>


When to stop dating and settle down - <AUTHOR> https://www.washingtonpost.com/news/wonk/wp/2016/02/16/when-to-stop-dating-and-settle-down-according-to-math/ <comment><USER2> "Wait to long and all the good ones might be gone". The older I get, the more I see what a fallacy this kind of thinking is. A lot of the "good ones" often exit marriages and long-term relationships to better themselves. On the other hand, the "good ones" that stay often stop becoming "good ones" and settle. I found dating to be about concentrating on yourself and your own development, then things kind of took care of themselves.

<comment><USER3> Funny you say this.. A friend of mine basically is playing the long game with a few of his huge crushes (who are married). He stays in touch with him, remembers to send thoughtful emails on their b'day, Christmas hoping they'll divorce one day. And when they do, the first person they'll jump ship to will be him. That's his thinking... Although, he's married too currently, so there's that.

<comment><USER4> That is _messed up_ and if I was the current spouse on either side of that, there would be a major problem.

Further, divorces are horrible messes, even in the best of circumstances. To "hope" that for anyone else is even more messed up.

<comment><USER5> Well, clearly the kind of low self-esteem psychopath who keeps track of past crushes in the hopes of weaseling his way into an affair/relationship with women who have already proven they are less likely to make suitable partners than baseline, doesn't have much regard for what society has deemed "messed up".

<comment><USER6> Wait, how have the women proven they are less likely to make suitable partners than baseline?

Are you basing this off the assumption one of those women eventually divorces? Divorce doesn't necessarily mean someone is an unsuitable partner.

</comment></comment></comment></comment></comment><comment><USER7> The main flaw with this is that relationships aren't an ordered set. I don't even know how I'd rate my relationships in order. Either a relationship works or it doesn't. I married the first person I found where our relationship just never stopped working, even after a few years of living together.

edit: It also ignores the fact that you yourself are going to change as you date people. Some of the relationships that didn't work out for me, didn't work out because I was terrible at being in a relationship, and that doesn't factor into the equation at all. It sort of presumes you're some perfect relationship oracle.

(which isn't to say that the math isn't interesting, because it is, I just think anyone that takes the math as an actual model to use in their life is being silly).

<comment><USER8> The article addresses the unordered set problem. Did you really read the whole thing?

"There's the risk, for example, that the first person you date really is your perfect partner... If you follow the rule, you'll reject them anyway. And as you continue to date other people, no one will ever measure up to your first love, and you'll end up rejecting everyone, and end up alone with your cats."

"Another -- probably more realistic -- option is that you start your life with a string of really terrible boyfriends or girlfriends that give you super low expectations about the potential suitors out there... The next person you date is marginally better than the failures you dated in your past, and you end up marrying him. But he's still kind of a dud, and doesn't measure up to the great people you could have met in the future."

"So obviously there are ways this method can go wrong. But it still produces better results than any other formula you could follow, whether you're considering 10 suitors or 100."

<comment><USER9> Ordered set meaning you can compare them and come up with a "total ordering."

The point is that relationships can't be boiled down to a single number or objective metric.

</comment></comment></comment><comment><USER10> When I was in middle school a family friend (and Microsoft engineer) advised me to spend my teens and twenties dating as many people as possible and give every relationship a numerical rating, then settle down with the first person who exceeded two standard deviations above the average.

The advice was mostly in jest, but I think it says something interesting about how tech people look at the world.

<comment><USER11> [Edit] Suppose I should have read the article first since it's basically about exactly this.

Sounds like he was giving a high level explanation of the 'secretary problem'.

Since an alternate name for it is the marriage problem, I guess it's not too far off.

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

</comment></comment><comment><USER12> In 1968 I was a freshman at U.C. Berkeley with a part-time job at the Computer Center. I had dated since high school, but never had a steady girl friend. I met a young lady who was also a U.C. student and who also worked at the Computer Center. We found each other quite engaging, were married early in 1970, and are about to celebrate our 46th anniversary. We did not perform a mathematical analysis, but we felt a mutual attraction, affection, and desire to share our lives, and we are very glad we acted on it.

</comment><comment><USER13> I'm 26 and I've never even figured out how to _start_ dating. Why are y'all in such a hurry to stop?

<comment><USER14> I couldn't recommend Mars and Venus on a Date more highly. I know the sample size is ridiculously small, but 5 out of 5 people I've given this book to have gotten married within a year. (These were also people who were looking to find someone to marry)

<comment><USER10> It sounds like none of them were with their future spouses when you gave them the book. I may be cynical, but marrying after less than one to two years of dating doesn't seem like a good idea to me.

</comment></comment></comment><comment><USER15> Would like to see this adapted to angel investing...

Like the investor wants to invest $1m per year, and will look at n companies over the year. The investor only has short time to accept/reject any particular company - s/he can't wait until the end of the year to decide everything. So what's the rule for accepting/rejecting the ith company?

...and to make it more complicated, what fraction of the $1m should be invested in the ith company.

...furthermore after 5 years of experience, how much better can the investor pick. Maybe s/he should not invest the full $1m the first year, etc.

</comment><comment><USER16> I firmly believe that the only way the-general-we will get to the point that we are having better relationships is when we stop worrying about being in a relationship so much. People have a lot of anxiety over the idea of being single, and I think this makes people stay in bad relationships longer than they should. If you don't fear being single, it's easier to wait for The Right One.

</comment><comment><USER17> The math can't really tell you to settle down: it assumes future knowledge as to the number of people you are going to end up dating. Then in the same breath it suggests a strategy which will yield a stopping point that is less than the number of people you guessed you would end up dating.

If there are ten people you will end up dating as your guess as to how many you should date then apparently you now stop gathering information after dating about 4 people. Lets say the next person meets the criteria gained through the first 4 dates. Then this firth person is the stopping point. You have now dated five people.

So really according to the math you should have actually stopped gathering criteria at roughly two people. But then you could have settled for the third.

So in that case you would have only needed to date roughly one person to gather criteria. So now you could have ended up getting matched to the second person.

And if you were matched to the second person then the criteria would have been roughly one person.

Basically, the length of the data collection process and the resulting selection both depend on each other.

<comment><USER9> You're thinking about it slightly wrong.

You want to know the number of possible people you might date. These are "dateable candidates."

If that number is "n", then by the constraints given, you don't want to end up actually dating each and every one -- if the last one isn't a match, you're screwed.

We can try to ground this with an example. Suppose you're a female, and you know that you want to marry someone to conceive a child together. Now, [suppose] you have until you're ~40 years old to have a kid. Then you need to find your ideal suitor slightly before that.

So now, if you imagine you'll meet 10 "dateable candidates" per year, and you're just under 30, then you might estimate n to be 100.

Note, the method doesn't guarantee you'll stop shortly after the 37th dateable person you meet because it might take much longer until you find someone better than the first 37.

But at least you know that you've given yourself the best chance at finding the best person to have a kid with [under the dowry problem restrictions].

<comment><USER17> But then we are back to the initial problem: we are just guessing how many people we are going to date. So its still not really true that the math supports it when dating in actual reality. There is no reason to choose two, three, four, or any other number based on math alone.

There are other assumptions that this model of dating makes that also aren't well founded. For example, the probability distribution of the candidates probably isn't going to be uniform: a person who has dated one person versus someone who has dated fifty is going to have a lot of biases to the selection that the person who dated only one person didn't have at that time.

What I'm getting at here is that this isn't math giving an answer. There are many different places where a person has to make leaps of faith in order to accept this model. And a person also probably needs to make a definitively incorrect guess to start things off.

So if someone were to be wondering if they are being an idiot for not dumping the person they are with, who they like, for the sake of appeasing this math model? They could be prudent: and it wouldn't be going with what is supposedly going to give them a 37% shot at finding their best match. It would be not breaking up with the person they are dating.

<comment><USER9> It's a math problem. You make some assumptions, and then you solve the problem with respect to those assumptions.

Of course all models of the world are flawed. But some are useful. If you're wondering which restaurant you should stop at on your walk from a to b but aren't familiar with the area, you might assume you should pick the next place better than all previous after walking a third of the way home. That would be a reasonable application of this model.

Regarding your last point: I wouldn't base serious life decisions exclusively on an "optimal game theory" move. That would be nuts! This _obviously_ doesn't perfectly model reality, so why act like it does?

</comment></comment></comment></comment><comment><USER18> The limitation I see with applying this method is that you need to know the total number of potential suitors at the start. How can you accurately estimate this if you don't have any past experiences to base your estimate on?

</comment><comment><USER19> the Washington Post has really gone down hill since Bezos bought them

<comment><USER20> You must be single :(

</comment></comment><comment><USER21> 37% of what? equal what? did I miss the suggested number? I see that it's dependent on the number of people that you are considering, from 10 to 100, but that leaves a difference of between 4 and 40 people to date. How do we know how many people, total, we would date, when we are just starting?

I get the feeling that this article only has half the math.

As an aside, I've heard that the optimum number for this equation is in fact 12. So 12 is the 38%. But this article doesn't confirm that - as far as I can tell.

<comment><USER22> It probably depends on your starting age and how long before you really want to get married (women have biological restraints and unless you want a large age difference men do too), and how long you'd date before accurately rating.

12 is probably too high. That would mean you'd date over 30 people. People who are single their whole life don't seriously date that many people.

The article suggests 11 as the number of suitors (as an assumption, not conclusion). That's probably fair, maybe even too high.

So you should settle for the best partner (of any previous) after number 4. That could be 5 but it could also be 6 or 10.</comment></comment>


What We Learned About Scaling with Apache Storm - <AUTHOR> https://www.loggly.com/blog/what-we-learned-about-scaling-with-apache-storm/

<comment><USER2> It seems like an odd decision to invest in building your own framework to get around a 20% performance improvement on your existing system (80k -> 100k+). Was there really no way to get better performance by tuning the existing system, or throwing more hardware at the problem?

I'd love to read about what else was tried before the decision to abandon Storm was made.

</comment><comment><USER3> This is sorely lacking in details. Is that really all they did to try and tune storm? As in - nothing? I would be interested to see what other direction they could have gone in with Storm to scale it better for their workloads.

Additionally, it doesn't say much of anything about "what we learned about storm". It just says they stopped using it. There isn't really a good, generalized takeaway here about the system as a whole. This deserves more in- depth analysis.

<comment><USER4> I wonder, what the purpose of this article was. It looks like that it wasn't sharing of hands-on knowledge.</comment></comment>


Want Elon Musk to Hire You at Tesla? Work for Apple - <AUTHOR> http://www.bloomberg.com/news/articles/2015-02-05/want-elon-musk-to-hire-you-at-tesla-work-for-apple <comment><USER2> Seriously are $250,000 signing bonuses and 60% pay increases common in the valley. What level employee is this for. Clearly I'm doing something wrong or need to move to SV asap because I've never heard of that kind of pay here on the east coast outside of maybe NYC

<comment><USER3> Why do you think real estate is unaffordable is some parts of the Bay Area? Some people are getting sky high pay and bonuses.

<comment><USER4> As they say: It's not how much you make, it's how much you keep.

</comment></comment></comment><comment><USER5> "Automakers from around the world are rushing to set up offices in the Bay Area to tap the engineering talent. "

An honest question - is this really because of the talent, or simply because people there tend to work more?

When you have so many people competing for engineering jobs I expect that people, especially the ones with no kids, will work on average a lot more. Is that the case or am I wrong?

<comment> k-mcgrady I was under the impressions job supply was far higher than demand in the bay area (for engineers). Aren't people always complaining they can't get the talent? So I would guess that the hours you're willing to do above the standard don't matter as, if you're talented, you're in demand.

<comment><USER6> As much as I'd like to believe they are being genuine (as a developer who benefits from being in high demand) I've heard that this statement can really be re-written as "We can't get enough talent at the price we want to pay" thus the push to try to make it easier to bring engineers into the USA (One's they conveniently leave out will accept less for the same job). I'm not saying this is all fact but just that I'm not sure how much I believe that they really are scrambling for talent.

<comment><USER7> I would agree with this with one caveat. The way I read your comment was, "Large software firms want to hire you for as little as possible" but I think it's more "Large software firms want to hire the best talent for as little as possible."

I tend to believe that the throughput of the top 5-10% can be exponentially more than the next 5-10%. The objective for a lot of these firms is to get the top couple percent and get 4x as much value of out someone but paying 2x as much. As it relates to the parent comment, I think there is an incredibly high demand for the top 5-10% of tech talent and exponentially less demand for the subsequent talent. It's very similar in NYC for finance talent. I know people who work in SF and NYC both who work insane hours but they get paid SO MUCH MORE for it.

So, no one is scrambling for good engineers or good bankers or good consultants but they are scrambling for that tiny sliver of the market that they believe will generate exponential returns and turn into leaders of the company.

<comment><USER8> The 10x people thing is mostly a myth, or applies to vanishing view superstars -- not engineering employees at a large company. 10x producers are people who work on well structured and balanced teams with good management.

<comment><USER7> I completely agree with what you're saying about their needing to be context around those individuals. And I also agree that the 10x people are a myth. What I do know is that, in software, I have interviewed software engineers with VERY similar resumes, pedigrees, etc. and there are HUGE gaps when we've actually worked with them. Absolutely enormous gaps.

Perhaps this is simply too anecdotal and I've had a poor experiences, but I can say, in my personal experiences, most candidates we've talked with are doing 1x and there are other candidates doing 2x, 3x, or better. Perhaps not 10x, but I have definitely seen very similar people on paper deliver on VERY different levels.

</comment></comment></comment></comment></comment></comment><comment><USER9> The IT workers should form a union. I'm not a fan of unions (they seem to devolve towards corruption here in Australia), but I'd prefer that over arseholes like Jobs et al making wage "agreements". How scummy is that, they're raking in billions, and they decide to be tight on the people that make them their cash? Scumbags.

<comment><USER10> This is a colossally bad idea. As a Chicagoan I can tell you unions only cause more problems. They make damn sure that patronage and favor systems rule, not meritocracy. That you can't fire terrible people and that all promotions are done via just seniority. That's on top of the eventual corruption, dues, and worse outcomes and being run circles around by non-union shops.

> but I'd prefer that over arseholes like Jobs et al making wage "agreements".

Under existing law this is collusion and illegal. The real question is why the, ironically, union-friendly Obama administration didn't crack down on this with an iron fist? I think Obama's DOJ needs to be held accountable here. Its clear they let Jobs become an untouchable man and this attitude hurt a lot of people's lives, moreso than anything Gates did and he was nearly destroyed by Clinton.

<comment><USER11> Unions have their place, though they seem more suitable for situations where there isn't any potential for employees to accelerate their careers on the basis of merit.

The transportation sector is an especially good example of this. A cab driver, airline pilot, and train engineer are all expected to operate their respective vehicles safely and efficiently. The opportunity for rapid career advancement that creatives in the tech industry enjoy is simply not present.

Therefore, the meritocracy-breaking overhead often associated with unions isn't nearly as much of a concern as it would be in an industry that's heavily dependent on the meritocratic dynamic.

If unions somehow become a thing in Tech, I suspect it will have been due to their implementation being so radically different so as to resemble the traditional model in name only, if that.

</comment></comment></comment><comment><USER12> Any advice as to getting hired with SpaceX?

<comment><USER13> I would be happy to chat, get in touch: msorrenti at spacex dot com

That extends to any other HNers :)

<comment><USER14> HNers with US citizenship only I presume?

<comment><USER15> I guess so, every job listing at SpaceX I've seen is US citizen only. @mikesorrenti please prove me wrong :)

<comment><USER16> Would that not be illegal? Or is SpaceX required by law to do so?

 _The law prohibits employers from hiring only U.S. citizens or lawful permanent residents unless required to do so by law._

[http://www.eeoc.gov/laws/practices/inquiries_citizenship.cfm](http://www.eeoc.gov/laws/practices/inquiries_citizenship.cfm)

<comment><USER17> They are probably required to. Space launchers and intercontinental ballistic missiles are pretty much the same thing after all.

</comment></comment></comment></comment></comment></comment><comment><USER18> I'd be happy enough just working at Apple.

<comment><USER19> That "happy enough" feeling would eventually wear off. Like anywhere else, it is just a job.

<comment><USER18> Oh I'm sure it would, but it would be far better than my current situation.

<comment><USER19> Hopefully you can get out there and find something better then. Plus, Apple will work you 50+ hrs a week. You can make the same money or more somewhere else, working less hours.

<comment><USER18> I'm happily working towards that now.</comment></comment></comment></comment></comment>


The Fixer's Manifesto - <AUTHOR> http://sugru.com/manifesto

<comment><USER2> Sustainability is more than just a 'green' buzzword, it's good business. Also one of the reasons I love open-source products. Code (math) will outlast any company or developer, and it's better to take something good and improve it than to waste resources reinventing the wheel. Whether you call it continuous integration or Kaizen, here's to being a fixer!</comment>


Dressmaking Led Elizabeth Keckley from Slavery to the White House - <AUTHOR> https://www.racked.com/2018/2/26/17042586/elizabeth-keckley-dressmaker <comment><USER2> There is a novel about this, which in my opinion is not very good. If you are thinking of buying _Mrs. Lincoln 's Dressmaker_, flip through it in a bookstore before you buy it.</comment>


Hyperpublic Developer Challenge Stats and Recap - <AUTHOR> http://blog.dougpetkanics.com/hyperpublic-developer-challenge-stats-and-rec

<comment><USER2> It would be interesting to know the distribution of incorrect answers for the problems. Another interesting thing would be how many incorrect guesses people had for each puzzle (that is, how many people had >5 guesses and did not solve it and such up to how many solved it firs time).</comment>


Coreutils's ln will make symbolic links by default - <AUTHOR> https://lists.gnu.org/archive/html/coreutils/2017-03/msg00087.html <comment><AUTHOR> I already patched my coreutils on my development machine and I am way more productive now!</comment>


Codebabes.com | Learn Coding and Web Development the Fun Way - <AUTHOR> http://codebabes.com/ <comment><USER2> All: this post was killed by user flags. Although it seems like an elaborate troll, we've unkilled the post so those who find the discussion productive can continue it.

We're killing other posts from this domain as duplicates.

</comment><comment><AUTHOR> Please note, I am posting this with despair - it's little surprise that women are under-represented in our industry if this kind of thing can stand.

<comment><USER3> 100% agree. This is offensive and sexist. I'm a man and I'm offended, and can only imagine how women must find it.

<comment><USER4> And porn degrades women right?

Why are you offended? Do you really think this is a serious website? maybe the next Codecademy.

On a lighter note, its really funny how you think "women must find it" offensive, but not for a single second you even thought that same statement is really really sexist.

ps: About the website, on my scale between love it and hate it, its in the "who gives a f __*? " category. Daytime television if full of this cheesy type of stuff.

<comment><USER3> > And porn degrades women right?

Yes.

> On a lighter note, its really funny how you think "women must find it" > offensive, but not for a single second you even thought that same statement > is really really sexist.

I am aware, I spent 10 minutes before posting trying to find a way to phrase it without sounding like that. Either I removed it entirely and sounded without empathy, or I left it in and sounded patronising. What would be an improved way to say it? I'm listening and I would like to learn.

<comment><USER5> > What would be an improved way to say it?

Not say it. Don't just assume you know the experience of the Other because you read some Tumblr blogs.

</comment></comment></comment></comment></comment><comment><USER6> I am not going to speak for everyone. Porn isn't inherently bad, although the porn industry has a tendency to be incredibly manipulative and harmful to women.

This, however, is technical training. This says that programmers are people who want to look at models who are dressed like some board-driven abstract costume aimed to give straight 14 year olds get an erection. It says that programmers are male, and "men like babes", so therefore, men might want this.

This is harmful to our culture. This is harmful to women programmers, who now have further proof that they don't 'belong' here, that programming is 'for' them. This devalues what people think of me, and what I consider to be my craft.

This is C- misogynist garbage aimed at my community, and I don't fucking appreciate it.

</comment><comment><USER7> It's definitely tasteless, but for once, despite the theme, it has little to do with our industry, and actually very little with sexism unless you take the radical view that women should _never_ be portrait in such a way.

There's a fundamental difference between exploiting one aspect of women and bringing that exploitation where it doesn't belong or basing your entire attitude towards women on that one aspect.

This is just soft porn under a domain name that ends with "babes.com". Most of us are okay with the existence of such things (and that's an understatement), and somebody was bound to exploit this predominantly mail target audience.

It's just too bad it's now being associated with our industry when we really don't need that shit.

But please don't make this part of the narrative around the very real problem of sexism in our industry. This is just a red herring, and maybe just a troll.

</comment><comment><USER8> It has to be a joke, right? The video on the subscription page sounds like a total parody of an elevator pitch: [https://codebabes.com/user/register?destination=subscription](https://codebabes.com/user/register?destination=subscription) .. "leveraging sexual desire" .. having a woman take off an item of clothing each time you pass a quiz? If this had come out April 1st, it would have easily passed as a creative April Fools joke.

</comment><comment><USER9> The PHP Virgin QUIZ is full of wrong answers!

1\. To run PHP code it needs to be processed by a web server. They say TRUE. The answer is FALSE. \- php-cli is used a lot (composer/phpunit/etc...)

2\. If you inspect the source of a web page, will you ever see the PHP code? They Say YES. The Answer is FALSE \- I mean maybe if you enable phps (php source) in your web server, but in most usage never.

4.In the following code snippet, 'print' is what? <?php print("Hello beautiful world!"); ?> They say it s a variable. That might be true given that a variable can be a closure function, but the real answer is a function!

UGH!

<comment><USER10> False. print is a language construct

[http://uk1.php.net/manual/en/function.print.php](http://uk1.php.net/manual/en/function.print.php)

<comment><USER11> +1 - oddly enough, my first thought in reading someone's report on the 'incorrectness' of their answers, and yet, adding to the misinformation.

Hint: any php 'function' that can be called without parens, is a language construct. Some of our favorite impostor 'functions' in php: echo, unset, isset, die, include, require

</comment></comment></comment><comment><USER12> Female developer here! I feel like this _has_ to be click bait, right? No one is seriously positing this site as a serious way to learn to code. Right?

"So how did you get into development, Mr. Job Candidate?"

"It all started when I successfully completed every fap session at Codebabes.com..."

<comment><USER13> I suppose it might give one a leg up if they were applying for a job as webmaster for a porn site.

</comment></comment><comment><USER14> This is surely satire? I refuse to believe that they're actually doing this seriously.

<comment><USER15> I think it's real: [https://www.youtube.com/user/CodeBabes](https://www.youtube.com/user/CodeBabes)

</comment></comment><comment><USER16> I love the part where they teach about how ints and floats are primitives in JS. And that the answer to "In programming lingo what word means to put two things together?" is "Love" (after the first video).

</comment><comment><USER17> This is why we can't have nice things...

It's hard to believe that anyone in this industry - after everything that's gone down in recent years - would be ignorant enough to create this.

There's a direct link in "Our Philosophy" to [http://programming- motherfucker.com/](http://programming-motherfucker.com/) (which also seems terribly misguided) but I really hope - for Zed's sake - that he's not involved in this idiotic project.

I guess they're winning though, if they got on the front page of HN.

<comment><USER18> > It's hard to believe that anyone in this industry - after everything that's > gone down in recent years - would be ignorant enough to create this.

It's very easy to believe that someone with knowledge of this industry would believe that there is an audience for this, and its not surprising that someone in this industry would think that profiting from targeting such an audience is a good (for them) thing to do.

There's nothing about either the technical or business side of this industry that should give any reason to think that, _whatever they might know factually_ , people in this industry in any capacity are somehow especially more socially responsible (as opposed to narrowly self-interested) than the rest of the population.

Even if you believe that people in our industry are unusually intelligent on average, there's no reason to think there's a particularly strong correlation between intelligence and any particular moral orientation (though, for some reason, people seem to _want_ to believe that "intelligent" implies "shares my values".)

</comment></comment><comment><USER19> The first CSS video says "the property and value are separated by a colon (which she pronounces "colin") as the head of some guy shows up in that position, then the narrator says "no, not that Colin". I don't recognize the guy, but I'm really bad at recognizing celebrities. Who is that face, and is he somebody who would be well-recognized in the UK?

Direct link to the relevant video snippet: [http://youtu.be/HFmaW5WYxe0?t=1m1s](http://youtu.be/HFmaW5WYxe0?t=1m1s)

<comment><USER20> That's Colin Powell ([http://en.wikipedia.org/wiki/Colin_Powell](http://en.wikipedia.org/wiki/Colin_Powell)).

</comment></comment><comment><USER21> FYI: Its a Drupal7 site hosted on new jersey linode so they can't really be php haters - maybe self-haterz. Using TypeKit. Sophisticated enough to include a custom server header and a California specific Privacy Policy but a UK one (although it could be copied). Video by Wistia.

\-- HEADERS --

Server The Codebabes server

\-- Traceroute --

8 router3-fmt.linode.com (18.104.22.168) 14.891 ms 9.519 ms 14.410 ms

9 li679-236.members.linode.com (188.8.131.52) 10.002 ms 9.691 ms 9.229 ms

\----

</comment><comment><USER22> WTF?

As an industry are we incapable of learning anything from our past fuckups?

</comment><comment><USER23> Oh dear. Not again.

</comment><comment><USER24> I can't believe this is actually upsetting people.... it's just a softcore porn site that's coding themed. That's it.

</comment><comment><USER25> Some of the answers in the quizzes are deliberately wrong... interesting, purposely making it frustrating so people subscribe to skip.

</comment><comment><USER26> What the fuck? Do we really need this?

</comment><comment><USER10> This site and I share a very strong link.

Apparently neither of us consider PHP to be programming.

</comment><comment><USER27> Any idea who is behind this? Cause definitly this is made for making money.

</comment><comment><USER28> This is the definition of (s)exploitation.

Apologies for reacting without reading clearly.

<comment><AUTHOR> I'd suggest reading my comment first:

[https://news.ycombinator.com/item?id=7646303](https://news.ycombinator.com/item?id=7646303)

<comment><USER28> Many apologies. I sat through a conversation last night, the gist of which was, 'Women are not exploited by the tech industry'.

I didn't turn on my brain, and reacted. I'm sorry, Choult. Thanks for directing my attention to your comment.

<comment><AUTHOR> Hey, that's alright - right reaction, wrong target!

<comment><USER28> Thanks for being understanding. I'm going to have to reign in that impulse to shoot the messenger.

</comment></comment></comment></comment></comment><comment><USER29> Oh no

</comment><comment><USER30> They're just disrupting the established programming education institutions. Why all the hand-wringing?</comment>


I Turned My Dad's 1950s Morse Key into a USB Keyboard – Album on Imgur - <AUTHOR> https://imgur.com/gallery/lNAtQ <comment><USER2> Boy, that gave me memories of getting my novice class ham radio license. There was still a Morse code requirement at that time of five words per minute. I could barely do it after a lot of practice.

My grandfather, who had an advanced class license, could send and understand Morse code at 25 words per minute. He was really good at it. He used a fancier code key called a Vibroplex [1] that could make the dots automatically.

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

</comment><comment><USER3> "Converting the (VERY analogue) Morse key into a digital device was the next step."

Urm what? A morse key is either on or off, pushed or not pushed, morse code is an on-off keyed digital mode. It is not analogue under any circumstances.

<comment><USER4> A year or two ago, I started doing software for embedded hardware. It's terrifying how many things we software developer abstract away, actually behave far more strangely in the real world.

There could be nothing simpler than a button press, right? And yet in the real world it often enough bounces on and then off several times, quickly. An the tiny on/offs themselves change voltage for tiny bits of time as the current coming through bounces off other components in its new path before settling down. There's nothing that will shake your faith in binary logic as a simple hardware button.

</comment></comment><comment><USER5> Good by carpel-tunnel, hello glass arm. Looks like a fun project.

</comment><comment><USER6> USB3? Can you tap that fast?

<comment><USER7> Well, it IS definitely future proof though...</comment></comment>


Face Tracking Tech Powering Amazon's New 3D Smartphone - <AUTHOR> http://techcrunch.com/2014/06/05/amazons-3d-smartphone-is-powered-by-omrons-face-sensing-tech/

<comment><USER2> "According to Omron, the Okao software pack can also recognize faces and facial attributes to estimate a person's gender, age and ethnicity."

...and then send that information to third-party companies???

<comment><USER3> Isn't the whole stink about Amazon is that they keep the customers for themselves? Amazon knows how to profit from data without sending it anywhere, it would seem. They would have little motive in sharing that info with anyone. I can't see how that's a bad thing for privacy.

<comment><USER2> Ok, but I would still be creeped out by Amazon estimating details about me by using facial recognition techniques. I'm much more comfortable with them knowing about the products I choose to buy because I am aware of the information I am giving to them.

</comment></comment></comment><comment><USER4> What OS are they running?

<comment><USER5> "The phone runs Amazon's fork of Android, FireOS"</comment></comment>


A Statement About Mahbod's Annotations on Elliot Rodger's Manifesto - <AUTHOR> http://news.rapgenius.com/Lemon-a-statement-about-mahbods-annotations-on-elliot-rodgers-manifesto-annotated <comment><USER3> I can appreciate RG's leadership having the self-awareness to see the need to make an Adult Decision in this case, but I think it's probably a mistake for them to continue hosting the Rodgers diary.

Contrary to Moghadam's comments, the diary is not particularly well-written. It's long, repetitive, weirdly detailed (the author recounts meals eaten years ago), and studded with evidence of psychopathy.

RG's style of annotation works extremely well for some kinds of writing --- song lyrics, The Great Gatsby, TS Eliot poems. What I think those things have in common is that they're hospitable to "riffing" and cross-linking; for instance, the lyrics to the ICP song where they come out of the closet as religious are totally incongruous until RG annotations inform you that they're reprised lyrics from previous ICP songs.

But riffing on Rodgers diary doesn't serve the same purpose, at least so close to the event. It is instead a minefield; almost anything you can say risks diminishing the tragedy, or misapprehending how the mind of a deeply mentally ill person functions, or, god help us, using the output of that mind as a platform on which to build suggestions on changing our culture.

There may be some point at which RG annotations will add value to this terribly sad artifact of Elliot Rodgers, but it probably won't be in 2014.

<comment><USER4> _the diary is not particularly well-written_

depends on your standards. He's not a professional author but I think he's probably better than your average college grad.

 _studded with evidence of psychopathy_

genuinely interested. could you point to some of these. I've been skimming it and haven't really seen that.

in fact, this struck me as empathetic

 _James's mother, Kim Ellis, had just passed away from breast cancer. I cried for a bit. Kim was a very kind-hearted person, and the mother of my best friend. She had been suffering from breast cancer for several years, but I never thought she would die from it. I immediately thought of how James must be feeling. He just lost his own mother!Annotate It made me think of how horrible I would feel if the same thing happened to my own mother, just the thought alone filled me with pain._

<comment><USER3> Even if we stipulate that every paragraph in the diary should be taken at face value, psychopathy is not defined simply as the absence of empathy.

<comment><USER5> It's actually not really defined at all in terms of an actual medical illness. It's mostly an invention of the criminal justice system.

Sociopathy/Psycopathy is about as real as Drapetomania or hysteria. It's the modern day blasphemy, if you question the state or authority you are 'anti- social'

<comment><USER6> Psycopathy is a defined condition in the Diagnostic and Statistical Manual of Mental Disorders, which is published by the American Psychiatric Association. The criminal justice system had nothing to do with the creation of the term.

But you're right--it's not an "actual medical illness." Mental conditions are "disorders", not "medical illnesses" since they are chronic/permanent conditions.

<comment><USER5> Really? Can you point me to where in the DSM it defines 'psychopathy', if you find an edition that old you may want to look up another disorder that stems from criminology commonly referred to as 'homosexuality', ironically homosexuality used to be part of 'sociopathy' which was closely related to 'psychopathy'.

<comment><USER6> You need the DSM V, the newest edition. In prior editions, psychopathy was not distinguished from sociopathy. I imagine that you could find it by looking through the index, however I do not have a copy of the DSM V.

I'm not sure why you bring up the characterization of homosexuality in older, long-since discarded versions of the DSM. The DSM is merely a _reflection_ of the current state of consensus regarding psychological diagnoses. It's not an authoritative guide. As consensus changes, so does the DSM.

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> Context: [http://gawker.com/rap-genius-co-founders-creepy-comments- on-...](http://gawker.com/rap-genius-co-founders-creepy-comments-on-elliot- rodger-1581469310)

Mahbod compliments several of Rodger's sentences as "artful" and/or "beautifully written". That is okay, if ill-timed. One can make a stylistic statement about _Mein Kampf_ without endorsing its message.

He also, however, speculates that Rodger's "sister is smokin' hot." That is violently inappropriate, particularly given the misogynistic nature of Elliot's crimes.

<comment><USER8> There was, by the way, a german artist ([http://de.wikipedia.org/wiki/Serdar_Somuncu](http://de.wikipedia.org/wiki/Serdar_Somuncu)) who commented that actually reading Mein Kampf exposes it as a very bad and simple book and no one should be surprised of Hitlers actions later after reading. Also, one of his point is that it is terrible in style and mostly rambling.

He also went on a tour and actually read the book on > 1000 occasions and won multiple prices.

Now, imagine Serdar doing that in 1946. He would - for good reasons - <USER2> ostracized.

Mahbod, even if he were "only" commenting on stylistic things, shows that he is lacking something very important: tact and empathy. This is not a triviality and as such not "okay". He also didn't frame the comment in any way (e.g. "I am surprised to see such an artfully...").

He should have seen that coming. If he hadn't, he shouldn't be leading any community.

</comment></comment><comment><USER9> Personally, I think this is a long time coming. Like, Tom, I have nothing but respect for Maboo, but I think many, many people have raised the point that his, for lack of a better word, "antics" are holding the site back. I know a lot of people in the HN community have been sharply critical of him, and for good reason. Maybe that's the main driver here, and Maboo's absolutely inappropriate response is the catalyst.

<comment><USER10> I don't know much about RG's history, but I wonder if his antics are partly why the site was so successful initially? From the little I've seen of RG over the years it seems like they rely heavily on gimmicks and antics as a promotional tool (I guess that's sort of the MO for the music industry though).

<comment><USER9> I absolutely believe the site couldn't have gotten where it was today without Mahbod at its head. But I think that the way forward is, regrettably, without him for a while. I fully believe he can come back from this more mature and focused. But I think its going to require a bit of soul-searching.

<comment><USER10> I'm sure he will land on his feet quite well with his connections (and equity no doubt). Everybody goofs and the permanent and public nature of the internet can be very unforgiving. I wish him nothing but the best in the future with his health and career.

</comment></comment></comment></comment><comment><USER11> Mahbod has been fired (i.e. not "resigned") due to these comments.

[http://recode.net/2014/05/26/rap-genius-co-founder- moghadam-...](http://recode.net/2014/05/26/rap-genius-co-founder-moghadam- fired/)

<comment><USER9> That's literally what the OP says, from a primary source.

</comment></comment><comment><USER12> Apparently this guy had a brain tumor and this wasn't the first time he's publicly embarrassed the company. He tweeted from the RapGenius account "WARREN BUFFETT CAN SUCK MY DICK".

[http://www.fastcompany.com/3021564/most-creative- people/how-...](http://www.fastcompany.com/3021564/most-creative-people/how-a- brain-tumor-made-the-cofounder-of-rap-genius-rethink-business)

[http://www.slate.com/blogs/browbeat/2013/02/22/rap_genius_wa...](http://www.slate.com/blogs/browbeat/2013/02/22/rap_genius_warren_buffett_feud_why_does_mahbod_moghadam_hate_the_wizard.html)

<comment><USER11> The brain tumor was removed...and the public behavior was unchanged.

[http://valleywag.gawker.com/rap-genius-frontman-blames- brain...](http://valleywag.gawker.com/rap-genius-frontman-blames-brain-tumor- for-asshole-beha-1450872105)

<comment><USER13> Sad but the brain tumour could still be the reason for his behaviour.

We don't know nearly enough about the brain to argue that the removal must restore the previous personality.

<comment><USER14> Behavior like that is not acceptable for someone in a position of authority at a company no matter what the context. (It's not clear what Moghadam's specific role at Rap Genius was, but he did have a seat on the board of directors)

It's the same reason that we shouldn't let blind people fly commercial airliners. Flying requires vision. Running a company requires good judgement.

<comment><USER15> > _Behavior like that is not acceptable for someone in a position of authority > at a company no matter what the context._

Says who? It's not like the company is Disney. For some companies such antics are par for the course (e.g a gangsta rap record company).

<comment><USER14> Things that are "par for the course" aren't necessarily acceptable, as we all know.

<comment><USER15> Well, you have to define it then.

"Unaccetable" for running a company with profit, or "unaccptable" for your moral code? Because the former sure ain't the case.

</comment></comment></comment></comment></comment></comment></comment><comment><USER16> Obviously Mahbod's latest annotations were inappropriate. Based on his past behavior, these recent antics should not come as much of a surprise.

As an aside, it has always amazed me how many people over the years have failed to realize Rap Genius' gimmick is just that, a gimmick. It's their attempt at using an admittedly off-color flavor of comedy to build their brand. Said brand is heavily rooted in rap, which is one of the most politically incorrect and offensive mediums of pop culture in existence today.

It stands to reason that when the Rap Genius founders are _in character_ , their behavior should not be taken literally as a reflection of who they really are.

A good example of this is when they were featured on stage at TechCrunch Disrupt 2013:

[https://news.ycombinator.com/item?id=5773556](https://news.ycombinator.com/item?id=5773556)

Most people simply took them literally, became offended, and jumped on the revulsion bandwagon. Others understood that the RG guys were essentially mocking the startup scene and the rap scene at the same time, in effect making fun of themselves.

\---

In Mahbod's case specifically, it seemed like he was aiming for humor that went right up to the line but didn't cross it. Unfortunately, comedy is a hit- or-miss endeavor and some of the misses were bound to cross that line. Add to that his medical issues potentially adversely affecting his judgement, and it's no wonder.

Was what he said inappropriate? Absolutely.

Should he have been fired for it? Debatable.

Should we assume he's a terrible human being (as some other comments have implied)? Certainly not.

</comment><comment><USER15> > _but went beyond that into gleeful insensitivity and misogyny. All of which > is contrary to everything we're trying to accomplish at Rap Genius._

Yeah, because otherwise most rap is all about sensitivity and feminism. I mean, they'd never embrace Ice Cube's records there, right?

I just see corporate drones fearing for their dollars because of the backslash against this guy's annotations.

The noble thing to do would have been to stand behind their colleague. I'd take a "misogynist" over backstabbing people throwing their friends to the lions. At least a misogynist could either be joking or made to change his mind about women. But their actions are all for personal interests and their bottom line.

<comment><USER17> You're not going to find very many people in tech that are going to get within a million miles of seriously discussing that Rap Genius is filled with bigoted, racist, misogynist content.

The political correct world today is strictly about inflicting damage upon populist targets, while not targeting other bigots that don't qualify for the agenda. It's a deranged movement of convenient targets.

</comment></comment><comment><USER18> Who are RapGenius' investors? Who is bankrolling these people?

<comment><USER11> Andreessen Horowitz, to the tune of $15M. Rap Genius was also a part of YC S11.

[http://techcrunch.com/2012/10/03/andreessen-horowitz- iinvest...](http://techcrunch.com/2012/10/03/andreessen-horowitz- iinvests-15-million-in-rap-genius/)

[http://www.crunchbase.com/organization/rap- genius](http://www.crunchbase.com/organization/rap-genius)

<comment><USER19> The same people who bankroll(ed) GitHub. This is my shocked face.

<comment><USER3> That is a tired, cheap, superficial point that is beneath this site. If you want to build a case against valley startup culture --- and there sure are cases to be made --- try to do it without creating a caricature of everyone else who has concerns as well.

<comment><USER19> "Not all VC's."

<comment><USER3> Now you're making a joke out of "not all men". Are you sure you're helping?

<comment><USER20> Hmmm? "Not all men" _is_ usually presented as a joke. For example, [0]. Similar riffs can be found involving, for example, the Kool-Aid Man.

As an aside, your comment is very patronizing.

[0] [http://i.imgur.com/ZS87l6M.png](http://i.imgur.com/ZS87l6M.png)

</comment></comment></comment></comment></comment></comment></comment><comment><USER21> Sounds like somebody wanted to get rid of a co-founder and found a great opportunity to do it.

</comment><comment><USER22> I wish they had they shown the annotations that caused the firing. The Valleywag link elsewhere has one screenshot, but other than being in poor taste I'm not sure why this rates a firing/step down.

<comment><USER11> It's about context: the annotations were glorifying a manifesto that was the prelude to _mass murder_.

<comment><USER22> So, some parts clearly were, right, complimenting the writing style and whatnot (which, honestly, wasn't great, but whatever)?

That comment about his sister I viewed more as teasing/disparaging the author --your mileage may vary.

Reading a bit more about the dude from Rapgenius, though, he seems like kind of a gangsta-wannabe tool.

</comment></comment></comment><comment><USER23> If it was just the annotations I'd be surprised, but this is just another incident by Mahbod that has caused RapGenius bad press. It was the last straw.

</comment><comment><USER24> But they are still turning violence against women into page views.

<comment><USER25> What's the difference between this and any news outlet?

<comment><USER26> Nobody loves glorifying a murderous rampage quite like CNN et al.</comment></comment></comment>


Go in Debian - <AUTHOR> https://about.sourcegraph.com/go/gophercon-2018-go-in-debian <comment><USER2> Video is out now as well [https://www.youtube.com/watch?v=xQNWrFw2bQw](https://www.youtube.com/watch?v=xQNWrFw2bQw)

</comment><comment><USER3> > Debian Go packaging team — 64 volunteers. Anyone can contribute; no formal > status needed. Don't need to be a Debian project member, even.

As the team have abandoned the usual team set up for Debian, I wonder what effect that has upon the rigour of the packages they produce, and whether this informal arrangement can continue to scale as the call for more volunteers.

Is it successful only because of key players? Will it fall apart when they move on?

<comment><USER4> This is consistent with the usual Debian workflow nowadays. It's been a long time since only Debian developers could usefully contribute. Most new Debian developers these days have already contributed a bunch.

One can get a guest account on Debian's gitlab instance, salsa.debian.org, and be granted various rights. One's merge requests can find their way into packages. Eventually one can be granted permission to upload specific packages, and then later apply for full membership.

There are also non-uploading Debian developers with full access to participate in every other way - not everyone focuses on packaging.

Compared to when I became a Debian developer in 2001, the typical process to full membership is way more gradual, but the process to first contribution is much faster and simpler. Good tradeoff.

<comment><USER5> Can this apply for submitting new packages as well? The process (at least the old process) as dissuaded me from doing just that.

<comment><USER4> Mostly yes. For new packages, an existing Debian developer has to do the initial upload, after reviewing your work. Once the package is in the archive and they're confident enough with your work, you can receive package-specific permission for subsequent uploads.

There is a bit of bureaucracy the first time you want package-specific upload permission, but mainly to vouch for you in a lightweight way, to validate your identity, and to agree to Debian's various policies.

[https://wiki.debian.org/DebianMaintainer](https://wiki.debian.org/DebianMaintainer)

But proposing merge requests via salsa can happen without any of that even if your contributions will end up in new packages.</comment></comment></comment></comment>


Show HN: SkillMint – find your perfect activity partner - <AUTHOR> https://skillmint.com <comment><AUTHOR> I was having a hard time finding tennis and ping-pong partners with the skill level that would match mine in my area. Every single service or platform that I've found was either too old or not too compelling to use it. That's when SkillMint was born. It allows you to find a partner for any sports or music skills you have.

Any feedback is welcome. And hopefully you'll like it so much that you'd want to use it yourself :)</comment>


Ask HN: Any good note apps with IMAP support? - <AUTHOR> The new Apple Notes apps no longer support IMAP note syncing in favor of iCloud sync. However, I really love syncing my notes with Fastmail and using them on any device (non-Apple included).<p>Can anyone recommend a note-taking app that supports IMAP syncing? ( Mac/iOS/etc... ) <comment><USER2> Zapier can connect many services to IMAP, including Evernote: [https://zapier.com/zapbook/evernote/imap/](https://zapier.com/zapbook/evernote/imap/)</comment>


An interesting html5-animated clock - <AUTHOR> http://www.animaclock.com/viewfont?font=spinners3_clone&v=-1&clean=1&_mag=2 <comment><USER2> I like this one a lot more (SWF): [http://web.archive.org/web/20140604035431/http://lab.mathieu...](http://web.archive.org/web/20140604035431/http://lab.mathieu- badimon.com/)

2nd row, 2nd column in the tile grid menu.

Also, maybe kill the Archive header, for maximum effect.

That was a really really cool website design. (I just re-found it after last looking at it sometime circa ~2007. :D)

Definitely needs porting to HTML5 (ideally JS-driven CSS animation).

PS. The odd white thingies at the edges of the page are how it handles 3D (imperfectly - I think it's deliberately unloading objects in "pan/tilt/rotate mode" to lower system load)

</comment><comment><AUTHOR> another one on the site:

[http://www.animaclock.com/viewfont?font=mrcl_kk_ghost&clean=...](http://www.animaclock.com/viewfont?font=mrcl_kk_ghost&clean=1&_mag=1.5)

<comment><USER3> Much nicer animation, to my eyes. If I could buy a nicely built physical clock with this display I would. Tempted to look into making one myself.. but suspect I may not get around to it.

</comment></comment><comment><USER4> Javascript clock? You can get an entire animated 6502 CPU. Maybe it could be used to run a browser, to render the clock :-) [http://www.visual6502.org/JSSim/](http://www.visual6502.org/JSSim/) Stephen North</comment>


What Changed at Y Combinator After 7 Years - <AUTHOR> http://blog.yesgraph.com/changed-y-combinator-7-years/ <comment><USER2> Would you have done it again if you had no plans to raise funds?

<comment><AUTHOR> If you've never raised anything, then it doesn't shift your company to be on a startup growth-is-life go-big-or-go-home track. Any fundraising does that.

If you're asking whether removing the value of demo day changes things, yes I think it does. It diminishes the value. By how much is tough to say.

I think you should do it, if that is what you're wondering. I think your audience fits really well with their network and experience. From what I understand about what you're doing.

So if you want to have a bigger impact and make it more likely to win, then do it. Related from yesterday: [http://blog.yesgraph.com/is-yc-worth- it/](http://blog.yesgraph.com/is-yc-worth-it/) (read to the end)

<comment><USER2> Not asking about Starfighter, but have friends who have and/or might in the future consider applying, and while I have a very crisp answer for the ones that expect to raise, have less of one for the ones who don't.

For our part, we have our hands full just shipping. :)

<comment><AUTHOR> What is a typical reason people don't want to raise money?

My general advice is to apply if you want your startup to succeed.

<comment><USER2> Control over destiny (ie not wanting a board to report to), already have easy path to revenue, growth options other than "all in on best hockey stick bet we can find within 6 months", work/life balance, long term outlook (being for instance in a business you want to spend 20 years in, rather than 4), obvs. huge distraction of fundraising, elimination of a whole class of success outcomes for the company, not having a backstory that will secure good terms and/or good investors.

Different of these things for different companies, of course.

Re: your second sentence: -.-

I like YC! But come on.

<comment><AUTHOR> My case specific advice can differ. My general advice without knowing the context is to apply. I didn't mean it is for everyone.

Some of those reasons to not raise after YC would exclude taking money from YC at all. They are still investors that expect a return.

Let me give an example that sounds crazy to normal people. If you're only going to make $1M a year and won't ever sell your company, you shouldn't bother taking external funding from investors that expect a strong return.

<comment><USER2> I agree! I'll go you one further: I don't have a lot of sympathy for people who complain about how investors make it hard to run a slow-burn company, or to build a service that funds itself on subscription fees rather than ads/data.

I gave a long list of reasons though because I think there are reasons not to raise even if you're ambitious about growth.

It's very clear to me that if you think you might ever raise, YC is a no- brainer.

It's pretty clear to me that if you've never run a company before, even if you don't ever plan on raising, YC is a net positive.

After that, it's less clear to me --- not that I think it's a bad idea, just that I think it's something you'd have to think about, rather than automatically saying "of course yes yes!".

</comment></comment></comment></comment></comment></comment></comment><comment><USER3> The real question on my mind is why you would do YC twice?

If you already have the connections to get advice/mentoring, and the actual investment is pretty minimal... what exactly is the driver to do this twice?

<comment><USER4> At the very least, as Ivan says, Demo Day is an amazing forcing function for getting your shit presentable and pushing it out to investors. You know how everyone says the best way to pitch an investor is by getting a warm intro from someone who already invested? YC gives you 500+ of those intros on the same day.

That's not to say that YC is only good for fundraising, but that specific piece has about the same utility regardless of how many times you've done YC before.

<comment><USER2> It's probably important to understand how DD is a forcing function _for investors_. There are lots of ways to create forcing functions for operators, but not so many ways to deterministically create them for investors.

<comment><USER4> Yep, forgot that in my comment... 500+ warm intros means that if your pitch is compelling (not a given) then there will be a lot of competition to invest. This is naturally good for founders both in terms of pricing the round and getting it done as quickly as possible.

</comment></comment></comment></comment><comment><AUTHOR> This post is really long, but if there is something I've left out, feel free to ask in the comments here.

I didn't say it explicitly: you should do YC if you get the chance.

<comment><AUTHOR> I should have mentioned Sam Altman more. It is pretty incredibly how he has taken over the helm with so few problems and actually so much acceleration. BAMF

</comment></comment><comment><USER5> _> Paul Graham is a kind of stateless incisive advice machine._

Could you expand on this assessment?

<comment><USER4> We met with him for 15 minutes, he didn't know anything about our company going into it (the stateless part), but gave us amazing advice about how to position ourselves and present our ideas to investors. I heard the same thing from everyone else in the batch I talked to (the machine part).

<comment><USER6> This. The pearls are in the essays too. While some may not appreciate the tenor, the underlying wisdom is applicable in any setting. Despite that fact, many will find some reason to ignore the wisdom. I did. Only later did I learn, that in fact, he was right all along.

</comment></comment></comment><comment><USER7> Lots of interesting info.

I'm also interested in how the switch from 4 founding partners, to 20 partners has affected what kind of companies they accept. Seems to be far more B2B and marketplaces, whereas before there was more B2C.

Also seems to have been a strong shift toward later stage investing, now that the funding amount has increased beyond 20k.

<comment><AUTHOR> I think the interview process is really similar. They just have multiple tracks. There are 3 to 5 partners in the room. They've refined it, but in spirit it is really similar.

I think companies are getting later stage because YC's reputation is better.

<comment><USER7> I edited my comment. What I meant to say was the application acceptance step, not the interviews.

<comment><AUTHOR> There do seem to be a lot of B2B companies. There are certainly a broader range of companies. I should have written about this more. The number of biotech companies is staggering. I don't know anything about that tech, so they all look the same to me ¯\\_(ツ)_/¯

</comment></comment></comment></comment><comment><USER8> Thanks for sharing. I attended a miniconf recently and was blown away by the scale YC's grown to. For what it's worth, I liked the slop, too.</comment>


Groupon shares fall off a cliff, down 42 percent since IPO - <AUTHOR> http://news.cnet.com/8301-13506_3-57332720-17/groupon-shares-fall-off-a-cliff-down-42-percent-since-ipo/

<comment><USER2> Do we need another story about a Groupon half-price special?</comment>


Processor Will Flash Freeze Bristol Bay Salmon in the Round (2017) - <AUTHOR> https://www.fishermensnews.com/story/2017/08/01/features/processor-will-flash-freeze-bristol-bay-salmon-in-the-round-in-2018/484.html <comment><USER2> Meta: not being a native speaker, I stumbled a lot with "in the round" in this headline. Googling it was difficult, it seems to mean that this freezing is something that will happen on location, i.e. on the water, on board the fishing vessels?

<comment><USER3> Native speaker and I too didn't know the phrase. It sounded like a method to prep salmon from the way it was worded. I found online:

"Whole/In The Round: Whole fish or fish "in the round" are being sold completely intact, exactly as they were caught."

<comment><USER4> Interesting, thanks. As a native speaker my best guess was that it was some stage of processing, maybe sliced into round fish steaks of a sort or something.

<comment><USER5> Have never heard this phrase for fish, but guessing from elsewhere (sculpture?) thought it meant the whole fish, as opposed to fillets.

<comment><USER3> Looks like sculpture and theater both use the phrase in similar ways.

</comment></comment></comment></comment></comment><comment><USER6> This headline is like one of those sentences constructed to confound an AI.

</comment><comment><USER7> How is this on the frontpage? An article about fish processing, from August 2017. It's also about an non-European area (Alaska and the Bering Sea). I'd expect the page to be flooded by Europeans this time of the day. Interesting to say the least.

<comment><USER8> > Interesting to say the least.

Which is usually the criteria for what fits here.

</comment></comment><comment><USER9> It does look like they got it working apparently:

[https://www.northlineseafoods.com/our- project-1](https://www.northlineseafoods.com/our-project-1)

</comment><comment><USER10> "fishermensnews.com". Seems funny to me to imagine a fisherman in his garments looking at this webpage once a day to see what's up

<comment><USER11> Says the poster in "Hacker News"

<comment><USER12> I would imagine all of us have at one time fit the stereotype while reading this site

</comment></comment></comment><comment><USER13> What are the welfare implications of this? Fish have a notoriously bad time - not stunned like other farmed animals, and usually crushed to death by other fish or left to suffocate for hours. Flash freezing sounds marginally less cruel I suppose.

<comment><USER14> One of the prerequisites of flash freezing is that the fish are bled before hand - they are long dead by the time they get processed.

<comment><USER15> It seems these fish are not bled out

[https://news.ycombinator.com/item?id=21566176](https://news.ycombinator.com/item?id=21566176)

</comment></comment></comment><comment><USER16> I thought "Bristol Bay" was some Intel or AMD codename I wasn't aware of (especially with the "processor" word being in the same sentence.)</comment>


The space between theory and practice in distributed systems - <AUTHOR> http://brooker.co.za/blog/2014/08/10/the-space-between.html <comment><USER2> Yep, that's been a problem for decades, not just in distributed systems but perhaps _especially_ in distributed systems. I'm practically overjoyed to see things like "Formal methods at Amazon Web Services", because it means at least some kind of bridge between the two exists.

My suspicion, outside of johnparkerg's polarization, is that distributed systems in practice are particularly messy from a formal standpoint, in contrast to non-distributed systems, while in practice you can live with the messiness, if you can reduce it a sufficient number of 9's, which seems to be anathema to theoretical approaches.

For example, the proof of the CAP theorem is irrelevant in practice, specifically because no system I'm aware of makes the strong consistency assumptions that it requires. On the other hand, CAP _behavior_ is definitely a problem, once you reach a certain size.

<comment><USER3> There is a parallel divide in AI: "neats" vs "scruffies". Neats like systems that are provably perfect and formal, while scruffies do stuff like multiple superposed algorithms with fudge factors in between that are set by a genetic algorithm. Formalists run away screaming but it works "sometimes" where sometimes is the problem domain they are working within.

"But it's not mathematically stable!"

"It has been for the last month..."

</comment></comment><comment><USER4> _If FLP says consensus is impossible with one faulty process, and faults happen all the time in practice, how are real systems built with consensus?_

Good question. I think the answer is that you don't build large systems using consensus; you bootstrap large systems with very small systems using consensus. The very small systems are reasonably assumed to have no Byzantine faults (i.e. just like you more or less rely on a single database server not to have faults).

All the systems I know of that use consensus are meant to be small, e.g. run on 5 machines or so (and of course the membership is fixed). Google's Chubby, Yahoo's ZooKeeper, and similar systems like doozer and etcd all work like this.

Consensus doesn't "scale" anyway (the latency isn't bearable). If you only have 5 machines, the likelihood of Byzantine faults over a reasonably long time period is low. The main problem you will see is your own software bugs (i.e. not bugs due to faulty CPU, memory, disks, switches, etc.).

<comment><USER5> Apparently Marc is right about the need for more of this - the answer is that the kind of nasty timing of message losses that can render consensus impossible don't happen, by and large, for very long in practice. It's not necessary to have Byzantine failures to prevent consensus, it's a consequence of the arbitrary network behavior allowed in an asynchronous communications model.

I should add this question to one of my exams and see if my students get it right. I'll be a little grumpy if they don't, but it's a great question. :)

<comment><USER4> What's an example of "timing of message losses" that would make consensus impossible? I didn't think say Paxos depended on any such assumptions.

I suppose you can mathematically construct some kind of non-total message loss such that Paxos would never make progress. But that kind of message loss won't persist forever in a real system... it would basically be message loss with knowledge of the algorithm?

<comment><USER6> Racing proposers cause paxos to fail to converge.

A: Prepare(1)

B: Prepare(2)

A: Accept(1, Va) # fails.

A: Prepare(3)

B: Accept(2, Vb) # fails.

Etc... In practice randomized backoffs when this happens causes it to converge extremely fast, but the exact right situation COULD cause it to delay forever. Don't lose sleep over it though.

<comment><USER4> Yeah that is basically what I was imagining, but there's no failure condition that matches that in reality. You might get unlucky and fail to converge for 10 iterations, but not for say 10,000.

It is sort of Byzantine in that the "system" is inserting very specific message losses with knowledge of the algorithm.

</comment></comment></comment></comment></comment><comment><USER7> I think this is just a reflection of the gap between academia and the real world. One could argue that the problem is the lack of a 'trial and error' philosophy in 'theory and practice' or that scientists couldn't possibly develop so much if they were bothered with the real world.

I believe the true problem lies in our need to categorize people as either scientists and theoretical engineers or down-to-earth engineers, which only polarizes the spectrum.

</comment><comment><USER8> FLP/CAP merely illustrates the fundamental trade-off between "safety/consistency" and "liveliness/availability" of distributed systems.

There is a spectrum of design choices between strong consistency with best effort availability and best effort everything that make sense to many practical use cases.

</comment><comment><USER9> I think the middle ground between theory and practice has gaps in most areas of expertise. The problem may be that to create good content in those gaps one needs to have accomplished a certain level of skill in both areas, theory and practise. Very few people get around to actually step aside from their daily work (which usually is pure theory or pure practise) to achieve something on the other end, though.

</comment><comment><USER3> I would add a ninth fallacy to the eight: CPU is free. This is effectively true on desktops and possibly on servers if task priorities are used, but on mobile devices including laptops CPU eats battery life.</comment>


Ask HN: I got a nasty job letter - <AUTHOR> Hi HN,
I am a final year CS student and an open source enthusiast. Recently, I started looking for jobs and applied to a few. One of them responded with a job letter just after telephonic interview. The job offered to me was in a different company. I initially rejected but they convinced me saying that both companies have same owners. I did a lookup and discovered that they were right but I also found that they are just few months old and another different company exits with same address. The company was nowhere visible except government registry and google play. ( They have some apps ). While I respect their business ( which seems somewhat nasty to me ) and I just have to do the development part, I still have doubts on them.
So, My question is how should I tackle this situation ? <comment><USER2> Your first job out of college can potentially define the trajectory of the rest of your career. If you're not pressed for time and/or cash, reject the sketchy offer and move on.

Also, are you really going to be happy working for a company whose business seems nasty to you? Even if you are "just doing the development part", some part of you will always be aware that you don't like the work you are supporting, and in my experience nothing is more motivation-sapping.

<comment><AUTHOR> Looks like I got the answer. I definitely will not be happy. Thank you and everybody else in this thread.

</comment></comment><comment><USER3> The simplest solution to me seems to just speak with them, vocalize your doubts. In short - be honest with them and with yourself - you're after getting some responses. If they will try to not answering - you immediately know it's a red flag.

If they give you explanation - just do the research if their explanation makes sense.

</comment><comment><USER4> It was just one of them. Take it or leave it. You're still have some opportunities out there. But better to speak with them until it is no doubt for you to take / leave it. Good luck for your career!

</comment><comment><USER5> "If there is any doubt, then there is no doubt."

File that letter in the trash can and forget they ever existed.</comment>