skysight-inc/HackerNews huggingface dataset:
IntelliJ is an awesome IDE, but it's not necessary. Part of it is Kotlin as well though, that's definitely as immature (as in age and mindshare, not attitude) of an ecosystem as there is with Java.

The thing with Java is the amount of boilerplate, but the thing with Java is that all of that is ridiculously well documented or demonstrated ad nauseum. Are you building a jar with Maven? Your folder structure looks like this. War? It looks like that. Before Yeoman or any other generators even existed Maven has had archetypes that do the exact same thing.

If you compare Maven, heck, even Gradle to Webpack + Babel for even fairly trivial projects, there's no way that it's more complicated. The tools for Java are truly portable, I can't even recall the hell we used to have to go through when we had to run gulp builds on Windows because developers of various libraries had hard coded *nix style paths, etc.

Most importantly, Maven and Java really aren't a moving target. 9 months from now I'm not going to have to overhaul my entire build process because a wide swath of my plugins have completely changed directions. Stability is how you wind up with the time to make things run smoother in production. It's how you wind up with repeatable patterns and better instrumentation. You get a chance to take a breath and formulate an honest to goodness process vs. literally sprinting as fast as you can to simply keep up with the changes.
Why you don't read?

The estimated price per unit is in the hundreds of dollars.
> C has type inference!

This is only one-way type deduction (similar to C++ `auto` keyword) which isn't really proper two-way type inference. It just copies the type of the right hand side to the left hand side.

E.g. given the following code:

x = less_than(a, b) ? (a+1) : b;

A proper type inference algorithm can deduce the types of less_than ((int, int) -> bool) and a (int because a+1) and b (int because it must match the other side of the conditional) and x (int). C++ auto could only defer the type of x given the types of less_than, a and b.

And by "proper type inference" I mean the text book Hindley-Milner unification algorithm from the 1970's, not a more modern variant with traits or type classes and whatnot.
You are absolutely right and for a founder whose truly committed to his/her business should only consider these rejections as a bump on the road.
However i still disagree with how YC select the startup for the interview. I mean the founders who really needs their support are mostly rejected by them while founders who already has raised a million dollar round (or enjoying revenues) are welcomed and signed by the YC team.
I think YC has now become more of a Standard tool for businesses rather providing actual support to founders who need them badly.
I'm from India and i personally know at least 10 founders here who already had raised so much of amount before getting into YC.
This doesn't makes sense to me as to why the heck would someone get into an incubator/accelerator who's already enjoying the business with healthy unit economics.
Startup incubators have now lost their vision and are now more into what i think has just restricted to the investment game.
Multiple techniques:

- take some time off

- work out

- do free expression exercises

- meditate
That is a nice example of why the free market is not neccessarily the guarantor of efficiency.
Do you earn a developer salary?
Extending Ruby on Rails with Service Objects
Mexico’s Revenge
The classic Model-View-Controller (MVC) method generally asks the programmer to put business logic in the model. This is sound advice for a small-to-medium size project, allowing a modicum of clarity and relative ease of testing, compared to business logic spread across controllers. However, as the number of problems your business tackles increases, bloating of the model is inevitable.

The service object pattern allieviates this with a back-to-the-roots approach, asking you to encapsulate different pieces of business logic in its own little container - each easy to understand, test, use, and re-use.
Oh, I've seen those. They're a limited selection of ETFs/Mutual Funds though. I thought you were referring to brokers who had unlimited free ETF trading.
I'm happy to hear that! I think it's more off a personal luck with the same. How YC partners take in you is totally dependent upon the partners only.
Good luck with the interview.
Shit code doesn't have nationality. But in general outsourcing works only if you have strong technical leadership onshore. And this job sucks. I managed Infy's onshore/offshore team and it was decent but it was hard due to our management being dickheads and Indians being shielded by their management so basically our comms were filtered by two layers of nonsense and 1-2 days of time difference. Onshore guys were great but I always felt for them not being treated nicely by Infy and being pretty powerless in the process. Actually this is why the project was outsourced first place as us locals just ask too many questions and often say WHY and NO to stupid requirements.
No one cares how you wrote 6 years ago, today the way to do it (as I've been told by many people who write NodeJS applications all the time) is to use transpilers. And:

> most ES6 features

Most. Ugly word. Really ugly word.
>For large production systems that need to be supported and maintained, it's awful

I don't think it's changing as quickly as you say, especially over the time since ES6 released/acquired first-class support, but you are right, this has been an issue.

>Javascript itself basically has objects that are just JSON objects. When you're passing them back and forth, you get the irresistible urge to add "optional" fields...

You use classes incorrectly / refuse to use classes and then complain when they don't behave like classes?

And then you blame the language?

Honestly, your two points preceding this were pretty reasonable. But I really think your bias starts to show yourself in the next ones.

>Libraries are often half-baked

You're really going to need to flesh this one out. React is half-baked, and so is the create-react-app surrounding it? Express is half-baked? Loopback is half-baked?

I won't deny shitty packages exist; Javascript has a low barrier to entry, and things can be mildly functional and kinda broken pretty easily. But I mean, it's obvious which packages don't suck if you just look at the amount they've been downloaded off npm and their issue lists on github.

>I can't stand NPM. A lot of times, two libraries that you want to include will depend on incompatible versions of another, shared library

In the last 18 months of developing in Node.js, I have not run into this issue once. Before that, sure, but I don't really see that as an issue lately.

>It's very difficult to reason about code

Promises or async/await fix all those issues. Again, this seems like a complaint 18 months out of date

There's issues with JS as a backend, to be certain. It's not nearly as performant as Java/Go/whatever language you fancy is capable of and it's single-threaded.

However, I don't think it's changing as rapidly as you think lately. I honestly must say that you sound like you had the issues of 2 years ago that have been improved on a lot by ES6 and a little maturation of the ecosystem.

The language is very flexible, and that definitely lent itself to a rapidly changing ecosystem at first. But if you want to take that flexibility and see how far you can bend it, then complain when it breaks, it's not a good look for a criticism of the language.

Anyways, this is a strangely impassioned defence, which I guess stemmed from the fact that your first two points resonated with me, but then your following points came up a bit short. I think you maybe haven't looked on the language with fresh eyes for a while, and will find it is not quite as easy to criticize these days.
It sounds like you're advocating vetting of immigrants. Was your father vetted before he came?

I too followed a similar path with parents migrating from South Asia.

What seems clear to me is that behaviour is a function of environment.

The same Bangladeshi that needs a bribe to put in the phone line isn't going to be demanding one when he sets it up for you in New Jersey.

(I don't think you even disagree with that)
Optional Trackpad too, I like my X201's cleanliness without one.
First rule of technology:

Scratch your own itch.

Badum-tisch!
You are correct - that is what I meant.
Thats a pretty nice project you got there. Worth checking out!
Atlassian hires tons of graduates.

> I spent 2+ fruitless years searching for more IT work,
>I didn't get invited to a single interview

If you didn't get a single interview in two years of looking either you are vastly overestimating your capabilities compared to your CV or your CV is junk. How many different CVs did you try during that time? What are you skilled in? You say IT work but are you a programmer, ops, support? What are you business skills like? How does ageism factor in when you didn't even make it to the interviews for them to be able to tell your age?
I mean, when you put your "scum-bag profit or nothing boss" thinking hat on, it makes so much sense.

You can hire these people, and they'll accept extremely noncompetitive wages (lowers wages), over-saturates the labour market (lowers wages), AND gives a nice boost to PR because on the outside it seems like this company is "diversely hiring from all backgrounds".

Great!
I wish System 76 the best of luck, and it appears as they're now the main developer/sponsor of RedoxOS, which really excites me, but for some reason this blog post reads to me to have a healthy dose of naivety to it. It seems like they want to have their cake and eat it too. They talk about "robots and automation!" but do they actually know how to run a modern factory? Can the demand for desktop Linux systems actually support what they want to build? This is going to take a huge amount of scaling and hiring, and I hope this means that they're taking in significant VC funding.
Hahaha! Bravo!
As a matter of fact, in India, engineers mostly avoid service based Indian companies like Infosys, CTS, TCS unless otherwise they are in the extreme bottom end of the funnel (they just need a job) or at the extreme top end (disproportionate high pay).

These firms are notorious for their carrot (probable on-site opportunities) and stick (mindless work hours clocking among others) approach, and their typical workplace is full of discontent and frustration. Just for an example, I have known people working there who were trying to game the clocking system by finding a bug that allowed them to leave early provided they clock before midnight from any of the offices which would increase their clocking hours.

That aside, these firms are just a small part of the actual tech scene in India, except they have sheer numbers when it comes to the H1B process, which kind of projects these firms as representative entities of Indian engineers.
I am referring to the potential collapse of the EU after a Le Pen French exit; the pendulum will need to swing very hard to left to reconstitute the EU if it ever crumbles.
A roundup of the latest mobile application testing trends for 2017
All bodies of water are not created equal.

The specific, and level of, solutes in the water determines the temperature at which it freezes. Fish are not perfectly permeable membranes, thus the internal freezing point of fish could be higher than the external freezing point of the water.

Fish are also cold-blooded and are at the mercy of their surroundings.
> For one thing, it goes out of its way to paint fairly ordinary things (the use of regional carriers, and the fact that there are many regional carriers, and many of them have contracts with multiple mainline carriers) as "deceptive" (and implying that code-sharing among partner airlines is also "deceptive").

This process of subcontracting was something that I (as a reasonably regular traveller) did not know. Yes I'm aware of flights being handled by an alternate airline, but if I book a flight with Virgin Atlantic, it's because I want the level of service I get from Virgin Atlantic.

There being factors that affect the service you get on a flight that are not obvious to the consumer DOES feel like deception to me.

> Which says right off the bat that this is someone who doesn't know how airlines really work
I think we can assume from the level of detail in the article that he does know how airlines work, he just has a very different opinion to you about how significant some of that is.
$60k is probably not a good estimate.

In the US, a pilot's wages are determined almost exclusively by seniority with the airline. And working at a regional means you're at the very bottom of the bottom of the seniority scale. Starting pay at a regional have clocked in under $30k/year for quite a while. A lot of this is because crews aren't paid for all the hours they spend working -- they're usually only paid for the time from closing the door of the flight they're operating to opening it at the other end. On the junior end of the scale, pilots sometimes go days without sitting behind the controls of a plane because their duties consist of sitting on standby in an airport in case some other pilot can't make a flight.

Throw in the inconsistent flight hours when they do fly, the fact that they usually come in with six figures of debt from flight school, and have limited mobility since switching airlines kicks them right back down to the bottom of the seniority ladder, and you're talking about effectively poverty-level living conditions for the first few years of a pilot's time with an airline.

This is where the alleged "pilot shortage" in the US came from: airlines mistreated their junior ranks so badly, for so long, that they started running out of people willing to put up with it. There are some signs of adjustment at the regionals, but they run on such razor-thin margins that it's not clear they'll really be able to fix this.
I've met a few brilliant Indian engineers. I asked one of them why he was different to his peers.

He explained that most of his peers don't enjoy or like what they are doing. They chose to become a developer, because it's a potential path to become a 'manager', which has a higher status in the eyes of their parents, friends and family.

Edit: But we have to be careful not to stereo type. I think a comment made here is pretty good 'Shit code doesn't have nationality'. We just need to understand the motivators for people to become an engineer and if the joy of creating something with code isn't up there and it's mainly about money or a stepping stone to higher status, then code quality will suffer as it seems.
How Big Data Is Reshaping the Fashion Industry
How do you know it was the same fish?
I was never a big fan of Wunderlist, it was too much eye-candy and too few features for me. But it was the best todo app the whole family could use. Support for all platforms, simple list sharing, and the ability to set custom backgrounds and colors..

Not sure what will replace it. Almost certainly not Microsoft To-Do, though. Seems too opinionated for a todo system and lacks critical features.
Seems like a great move for Google. Block all ads except theirs (and, most people won't install another ad blocker if there is one built-in), so that publishers will be forced to use Google ads if they want to target customers.
It was a pretty interesting company:

http://chadfowler.com

https://en.wikipedia.org/wiki/Wunderlist
What a joke.
PDF Files Manipulation WITHOUT Adobe Acrobat
Really sad! One of the few web to-do applications that I use daily and really enjoyed.
Please stop saying that algorithms let us solve problems or do day to day tasks. It is just wrong. An algorithm tells you how to find the solution to an instance of a computation problem. Cooking etc are not computation problems. People should understand what a computation problem is before trying to learn what an algorithm is. This whole idea that algorithm is just "how to do something" leads to many misconceptions.
Thank you for the happy nostalgic reminiscence of my youth. I also remember the computer mags that had several pages devoted to BBS phone number listings (just before the program listings you could type in)
If they didn't want a corporate owned shill why did they elect a corporate shill?

>where low cost workers from overseas work at every single Tim Hortons.

This isn't reality I think you need to check your information sources.
I actually wonder why we still have pilots on board in 2017.
I wonder why they didn't just rebrand Wunderlist like they did Accompli (into mobile Outlook).
Biztalk Online Training – Biztalk Online Course
The article mentions the angles (120 horizontal, 35 vertical), but not the distance covered. This might explain why the interviewee does not believe the solid-state lidar will replace the current tech.
I'm not sure what you mean by "what the deal is with Qaunergy". Does this article [1] answer your query?

[1] "Quanergy Announces $250 Solid-State LIDAR for Cars, Robots, and More" (Jan 2016) [ http://spectrum.ieee.org/cars-that-think/transportation/sens... ]
So you didn't read the article? Perhaps you skimmed past the closing section.
my eyes literally rolled so hard my head exploded reading that.

I could care less what you think of my grammar.
Eh, I think they say something similar in the book. The other side of it was that they wanted a software engineering approach to systems administration (which completely depends on your opinions of the respective professions)
If any other news site would submit this article it would be marked as "blog spam" and replaced with the original announcement, which is here: https://blogs.office.com/2017/04/19/introducing-microsoft-to...
If there is even just a whiff of that, Google will be in very big trouble with competition authorities.

So if - and that is a big if - Google goes ahead with this plan, they will have to make absolutely sure that any blocking is based on objective and simple to understand quality criteria.
It's nice to see this - I'm definitely interested in seeing computers built and designed for Linux.

I must say, however, I don't see that need for desktops. Custom desktops are relatively easy to build, even for customers.

A well designed linux laptop, with no driver issues, good build quality, that doesn't sacrifice performance for thinness? That's what I'm missing.
It's more that he seizes on this "well I bet you didn't know the airline is DECEIVING you" to spin a whole sinister thing and it just destroys his credibility. Every industry has commonplace things that can be made to look bad, and usually the people who try to take advantage of that are quacks.
Ask HN: Anyone else feeling that applying to YC is like gambling
I have applied to YC a couple of times, and I found that I have a strange relationship with the application process. It's as if I absolutely knew that there was no way I could get in (solo founder, super early stage, don't manage to explain the product I'm building clearly). But for some reason, I try it anyway. And then on the day of the invite, I still know there's no way I can get in, but somehow still hope I might. When my wife asked me why I was excited while I knew that I was not going to cut it, it hit me: it's like buying a lottery ticket: you know you're not winning, but you get excited by the draw anyway.

Now that I realized this, I am starting to wonder if I am just drawn to the startup idea like a card player to a poker table. It kind of frightens me.

Anyone else feeling the same? How can I keep a cool head and making sound decision if I behave like a gambler?
That's answered in the Velodyne press release [1] linked from the article: "The new Velarray LiDAR sensor uses Velodyne’s proprietary ASICs (Application Specific Integrated Circuits) to achieve superior performance metrics in a small package size of 125mm x 50mm x 55mm that can be embedded into the front, sides, and corners of vehicles. It provides up to a 120-degree horizontal and 35-degree vertical field-of-view, with a 200-meter range even for low-reflectivity objects. With an automotive integrity safety level rating of ASIL B, Velarray will not only ensure safe operation in L4 and L5 autonomous vehicles but also in ADAS-enabled cars. It has a target price in the hundreds of dollars when produced in mass volumes."

[1] [ http://www.businesswire.com/news/home/20170419005516/en/Velo... ]
Nice, isn't this 'lil bit expensive?
To me it seems pattern matching without possibility to actually enforce that all cases are matched seems to miss the most useful scenario:

What I want to do is create proper sum types. For some reason most OO languages were designed around the idea that being "open for extension" was a good thing. Normally if I make a base class, I want a closed and known set of sub classes. E.g. if I make a payment method then I want to make a Credit or Invoice kind where one requires Credit Card details and the other requires an address. In F# that's a simple sum type. In C# making a sum type is a convoluted mess of making an outer base class and private nested sub classes.

Here a sum type with the two cases plus an exhaustive pattern matching switch would have solved in 10 lines what takes me 300 lines to do in C#. I think the concept of "fixed" or "closed" hierarchies is foreign enough to OO that it probably needs to be a completely separate concept from the normal types. F# shows that it can be implemented as sugar on top of the regular CLR type system. All that's needed is that some keyword such as "enum class" is converted into a sealed hierarchy of plain record classes with no methods on them. The switch statement we already have can then treat these "enum classes" specially by checking that all cases are matched.

A sketch solution for C# could look like

enum class PaymentMethod
{
CreditCard(CrediCardDetails cc),
Invoice(Address billingAddress),
}

// later
switch (paymentMethod)
{
case CreditCard(ccdetails):
Console.WriteLine($"Creditcard expiring {ccdetails.ExpiryDate}");
case Invoice(addr):
Console.WriteLine($"Bill to {addr.Name}");
}

Writing the above in current C# would require significantly more boilerplate.
This isn't the best pattern to use in all situations: but in many cases when the types are merely data carriers it doesn't make sense to put the logic in the class as OO prescribes, so the FP recipe works much better.
اهمیت وجود اتوماسیون در اتاق سرور
I guess they want to use NIR, similar to this-

http://www.opnwatr.io
Microsoft employees that aren't Microsoft employees..
Well, I have no issues building a desktop, but if somebody asked me about what (modern) components to choose for no driver issues, I wouldn't know.
Avoiding issues and getting support could certainly be worth something.
Does it have a public API?
Goddammit, first Sunrise Calendar and now Wunderlist? :(

I feel like I'll just go back to Reminders again, and try to stick with standard clients for these things...
Sad news, Wunderlist was very handy.

Does anyone have a recommendation for a similar app with shared lists? To-Do doesn't handle this (or a bunch of WL functionality for that matter)
> V8 is a world class compiler. Compared to ruby, Python, Erlang, php and that ilk it is lightning quick.

Not to nitpick details, but V8 is a runtime, not a compiler.

A compiler checks your code and tells you if it contains errors before you run it. V8 does not.
The previous model of the Retina Macbook Pro 15" (the one without the touchbar) had a 99 watt hour battery, which is right at the limit for what they'll allow you to take on a plane. The new one with the touchbar is 76 watt hours.

I have a pre-touchbar model and it's more than thin enough. It can be done. To my mind, the question is can a company that doesn't have Apple's resources manufacture on the same level as Apple? I'm not sure.
This is awesome, thanks for sharing. For yet more nostalgia, I recommend you check out the /r/bbs Reddit, or for EVEN MORE nostalgia, take a look at ENiGMA BBS - it's BBS software developed in Node and can be spun up on any Linux box - https://github.com/NuSkooler/enigma-bbs/.

Thanks again, enjoyed this thread!