skysight-inc/HackerNews huggingface dataset:
Someone did this on a project I work on (C#).

Utter nightmare. Loads of repeated code as new programmers didn't know methods existed, loads of extraneous DTO objects, lots of nested single line methods, massive code bloat. Hard to find what actually does stuff, hard to use built in editor functionality.

It's really not a good tactic imo.

I'm undoing it as I go, at one point after having worked on it nearly 4 months according to git I'd still had a net negative on total lines of code, having added a ton of new functionality.

Admittedly, it's one of those projects which has had a bunch of freelancers/contractors work on it, but I personally really don't see what it added to move the methods off the classes apart from confusion, code duplication and code bloat.

I see the need for something, on the startup + enterprisey projects I work on you always seem to end up with at least one mega class that ends up being a beast, the Order, Person, Customer, Job or Project objects are usual culprits, but most other classes don't need much past a few basic methods. I'm just not convinced this programming tactic is it having now seen it in the wild.
This is the sort of thing the mouse is actually rather good for. Though you're probably better using Ctrl+B to embolden than you are the toolbar or menu.
Jealous Air Force personnel kills his soldier girlfriend
npm advantage (or disadvantage depending on who you asked) is the project owner has direct control over release cycle. The owner can decide when to push an update and it will be available to everyone immediately regardless of their operating system.
I think I would sweat bullets if I knew there were an enter key on my mouse, but to each his own.
Sounds like a good argument to not let even one of them in.
Funny, the first MDs were the town barbers.
Yes, you can take any context and think about it as the inverse of any other topic. What you get out of this approach is insight through connection, and considering Saharan sand as the inverse of the US doesn't offer any meaningful insights.

In fact I came to the realization last night after I worked on that comment, that searching for a thing's converse only really makes sense when the thing has some form of agency. You could perhaps consider the inverse to be "ideas" as America is an idea. You might consider all the different ideas that constitute America, such as individual freedom, meritocracy over hierarchy.

Where you get when you go down this road enough times with enough topics, as I did, is that the alternative considerations all belong in the topic's inverse. You get a deep sense for the dividing lines between contexts. Contextual spaces are vast. Perhaps you can find some old apocrypha tying America to an Aztec deity, say Jefferson wrote a reference to one in some legal opinion or whatnot.

That would be enough to put Aztec deities into America's inverse. But it wouldn't be very relevant. As I kept working with this, I realized that you need a sense of importance. You're driving towards an insight, and every insight is additive. What you're looking for is classes of things. The history of America, the culture of America, everything you can think about that America is, goes in the inverse.

All that combined make up the whole.
This is almost impossible to listen to. If one must have background music in a video, use some god damn sidechain compression. Or even better, drop the music. /rant

Aside from that - awesome.
> Additionally, the tech industry, in my opinion, innovates at a significantly faster pace than the licensed engineering disciplines. Perhaps these are correlated in some way.

I think you're right. Regulation stifles innovation.

Even in a narrow sense, thinking software alone, everyone knows the saying "Standard library is where modules go to die", meaning that there are stricter requirements to make it to the standard library in the first place and stricter still to update them once they've made it in.
We have regulations. I deal with the data protection act, if you use medical records there's lots of regulation around that. I'd argue that there's plenty of engineering that doesn't have regulation as well.

I think engineering is less about adhering to regulations, and more about solving problems in a wider context.
I think we can be charitable here; I'm 99% sure most of us would agree with the intent of the OP.
Glue a push pin on each mouse button, pointy side up.

Cheap, very fast learning guaranteed.
Pretty much the same here in Canada. In order to use the title 'Engineer' you need to 1) have completed your studies for an engineering degree at an accredited university 2) become part of your province's Engineering group with all this entails (exams,continuing education..)

Mind you, many who studied Computer/Software engineering do become accredited Engineers (as per the legal term in Canada). But even if you completed your studies, it doesn't automatically give you the legal right to present yourself as an 'Engineer'. You can choose or not to become a 'legal' engineer, but in the case of software it's usually not necessary. Of course, the case is different for people building bridges and infrastructures, they pretty much have to become 'legal' engineers to be able to be on such projects.

I find it's mostly in the US that the term seems to be used loosely. I might be wrong.
> No they won't. The losses will be sure to actually "trickle down". Think pension funds

Well, in that sense, the gains already have trickled down, because more than 50% of the gains are held by IRAs and the like (including pension funds).
> democratic nature of the internet

Democracy assumes 1 person has 1 vote. This is not the case here necessarily.
The Internet also has to make money at some point, which means there's usually a corporate entity in the chain, one whose money (for better or worse) eventually touches Western banks.

So yes, the Internet never forgets (things it can make a buck off of).
Turbid: A High-Entropy Random Generator
The fact John Gruber created Markdown is completely unrelated to the issue of the quality and/or bias of his blog.

Also I don't see anything in the post you replied to that shows any disrespect to John.
Uncalendar Review
Most planes crash because of something else than software... Most casualties in the medical domain are not caused by software... to say nothing about war casualties.

It's not sand in the oil, it's the lack of a filter, that cause a crash. It's not human error, it's badly designed UI. It's not aging, it's improper material choice. It's not a manufacturing problem, it's a design problem with the manufacturing process.

Software is just yet another imperfect engineering domain.

It's too easy to point to software engineering as fundamentally flawed without looking at all the flaws in engineering(TM)...
I need 50,000 comments on a government website. – The Oatmeal
I added a parenthetical to clarify. But to play devil's advocate, it's hard to argue that PMs and managers aren't 'developing' software, at least in the plain English sense of the word. (Although clearly you need to draw the line somewhere.)
Interestingly that terminology fits in the building trades and we can only dream of making large scale software projects as predictable and reliable and human safe as large skyscrapers. That is a truly excellent analogy.
Because spending $200/m hits you more than just the thought of future illness.

I don't support this bill, I do want this idea explored / discussed - as in, why should healthy people subsidize costs of insurance for the unhealthy? (as in, is not fair is it?)
Agreed. And I work on a CRUD web app mostly, but I try to bring the same spirit into my work there. It's not the same, but I strongly believe programming can be done in a pragmatically rigorous and repeatable way.
> income evenly distributed to all workers?

Tobin tax

> More taxation for those who earn more than the average ?

Progressive taxation is a good thing.

> Central economic planning so everyone get's the same information regarding where the profits are?

no. but tax subsidized effective public services where a natural monopoly is exploited by the market for private profit gains. public infrastructure. free good education. universal health care with access to mental health and addiction help, no private prisons.

This is beeing paid for with higher taxes on higher incomes or small taxes on market transfers. In the long run this pay for itself due less crime, lower health costs and more productive workers.

> Frankly, sometimes some people need to take a refreshing trip into North Korea instead of perpetually complaining about the downsides of capitalism.

There a lot of countries that look, not without some substance at the USA and think of a third world country in how it treats ports of their citizens. They could be turned into productive elements of society instead of beeing permanently marginalized.

Looks like short term profit won over longterm planning. Maybe the competition avoids these mistakes.
I think there's another way to look at this. Right now the DOM is exposed to the browser in a way that makes Javascript the most natural way to manipulate browser elements.

There is a movement towards a more elegant way of expressing UI, where functional languages and imperative languages with functional features can both be used, but these currently require often large and complicated frameworks or even comete language runtimes.

Ultimately these also require some kind of Javascript bridge which leads us back to it being central to web programming. You either use Javascript or you go to great lengths to hide it.

The solution, which is slowly emerging in a de-facto manner, is to expose to any chosen language whether implemented in Javascript, wasm, or some new JIT compiled bytecode with dynamic features, a transactional, IPC-based API for rendering, diffing, and merging web content.

JQuery inspired the selector APIs (querySelector*) which in turn improved the efficiency of, then mostly obviated, JQuery itself.

I imagine the same thing could happen with React-like frameworks and things like Elm.
Get a broker account in the country you are living in, then buy Vanguard index funds, e.g. VOO (or local version thereof).
I think it's one of these dogma that just get around by word-of-mouth.

Personally, I need the slight downtime of using a mouse when compiling a program, a short moment to pause and clear my head. Without a mouse I'd probably be less productive.
>The term is probably a shortening of “software engineer,” but its use betrays a secret: “Engineer” is an aspirational title in software development. Traditional engineers are regulated, certified, and subject to apprenticeship and continuing education. Engineering claims an explicit responsibility to public safety and reliability, even if it doesn’t always deliver.

Well, at least in the UK, software engineers are uphold by the BCS code of conduct [1]. Our first responsibility is (at least should be) safety.

Like "traditional" engineers, we build the bridges and structures of the virtual world, but the impact on what we do can still have real life changing consequences. The fact that we aren't certified and regulated is a result of us being self-regulating, meaning that we can move quicker in our industry. Many other industries have this arrangement, such as advertising.

I would say that we are not as bound to delivering a fully reliable product, as long as there is enough in place to make it fit for purpose and safe. This is the same as engineering. Lifts regularly break down at our local library, but never do they suddenly plummet several stories. A bank App can crash, but never can it leak information.

[1] http://www.bcs.org/upload/pdf/conduct.pdf
I appreciate your answer on this. No offense, but I don't believe you. Would you mind supplying more information beyond simply a statement? Do you have expertise in this area? (Are you a lawyer?) I know this is a big ask because we are all busy people, but you did answer this in a rather authoritative response...

I'm not trying to be adversarial, it's just that this answer doesn't provide anything but a "proof by anonymous internet authority" vague kind of answer.
Exactly! Where do I get the JS Ninja diploma?
This isn't JavaScript fatigue; this is CoolScript fatigue.

Major Key: Avoid compile steps as long as possible.

No Babel, no Webpack, no browserify, no JSX. You can use React without any of them. You'll get to them when you really need them eventually. Maybe. Only one of the above I use is browserify.

Why?

As a developer, your key job is keeping complexity down. Doesn't matter if everyone else implicitly gets it. If it's complex to you, don't feel forced to use it. If you can get by without it, do so. When you eventually get it, it wouldn't be that much of a struggle.

You'll still need to look up apis, function args and options, but that's just forgetting how to tell the computer what you want. Very different from not understanding why you need each piece or how to put them together.
> it makes the execution times of your binary extremely unstable and high-variance.

Not necessarily, it depends on your allocation patterns. The same can be said for using malloc.

> Not to mention, it has no idea how your program uses memory, such that it is bound to use a generic approach

Ditto for malloc.

> with manual management, you can get real and high performance.

Using a GC does not mean you can't manually manage allocations. E.g. say you are allocating and deallocating a lot of Point objects. You keep a free list of Point objects that you can recycle. If you need a Point, you first see if there are any in the free list. If so, you pop the first one off the list and reuse it. Otherwise you allocate a new one. When you're done with a Point, you push it on the free list.
So many "all"s used for a single sentence. They can have a free headline+summary feed, or a paid daily digest, or paid columns+digest and rest gratis. Monetising content is more honest, more predictable and better for the users' privacy and their bandwidth than ads, and I'm telling that I'd buy if they'd supply. At the end of the day, collecting, verifying, editing and publishing news is not free for the news agencies, it's not produced for free and need not be free at all.
This is awesome! The battle system is original too. Well done...
I agree with your view. Most of the programming language constructs and ideologies are simply design patterns that been extracted into a single unit and given a particular name.
The only legitimate authority is that which it is granted by the people over which it is exercised. Thus, a democracy is only legitimate to the extent that people choose to participate in it. By restricting migration, you effectively eliminate people's choice (at least at the national level), and what you end up with is subjugation in a pretty package.
Combining Angular2 and React
One thing I find myself reaching for contextual logic a lot is in analyzing film and other creative output. You can think of a stage / screen as a whole, where each individual element you see on the screen is a topic to analyze. The reverse of the elements are all the things the filmmaker could have put into the film but chose not to.

You can work out all manner of insights about a film this way. Works well with comic fandoms, legal concepts, anywhere where there's significant amounts of hidden context to uncover, you can use context logic to quickly sketch out an outline of how it all hangs together, and fit all the information you read into fleshing out that model.

I noticed the human mind doesn't tend to be able to work consciously with inverse / obverse. For example, humor tends to leave the scene when you start analyzing a joke. I call these "core" contexts. A lot of insights can be mined out of what you're not seeing. If the inverse is hard to find, maybe it's like that for a reason.
I had to look up the phrase "expert beginner" as I was unfamiliar with it. I found it interesting. This was a good read for anyone else who might be unfamiliar with the term:

http://www.daedtech.com/how-developers-stop-learning-rise-of...
I don't agree that is the definition of the word identical. I think the common understanding of the word is irrespective of position in space time. If that weren't it's meaning, it would be a pretty useless word.
I tend to look as the ratio between agreement[1] and force to implement their beliefs. It helps clear out the whole left / right thing that starts people categorizing instead of analyzing.

1) in the freedom of choice way
I think this would constrain the vision of Beaker. I can't point to any concrete examples (like, where the extension API doesn't support something beaker does), but I can imagine wanting a less sandboxed environment when developing the platform for distributed web apps.
I've used JS enough to find that it's more like a nuclear powered .50 cal Gatling gun.
It sounds like roughly the best case for the mouse and roughly the worst case for the keyboard.
Congress is going backwards! How could they even consider this bill?

It's legalized genetic discrimination, and no protections on how the data can be used (or who it can be sold to).
>Was object-oriented programming a failure?

Only ignoring the fact that almost ALL programs we care about, from OSes (Windows, OS X) to Games, and from Office applications (MS Office, Open Office) to graphics apps (Photoshop, etc) to NLEs (Premiere, FCPX, Avid), to IDEs (Eclipse, IDEA, Visual Studio), to major compilers, JITs and runtimes (LLVM, Oracle HotSpot, MS CLR) etc, including all major browsers people browse the web through (Explorer, Safari, Chrome, Firefox) and all major Javascript engines that power the web are written in an Object-Oriented way, and usually in the way C++ defines it.
Urban areas in California, where most of the people live, such as the Silicon Valley have extremely high home ownership and apartment rental costs. The article notes this briefly and somewhat obliquely, but it is worth emphasizing.

The median home price in San Jose, CA is about $850,000 at present (March 12, 2017) according to Zillow.

The average rent for a one bedroom apartment in San Jose is about $2473 per month (https://www.rentjungle.com/average-rent-in-san-jose-rent-tre...)

The US Census lists a median home price for the United States as a whole of $221,800 in 2010 (https://www.census.gov/const/uspriceann.pdf)

Median monthly gross residential rent in the United States was $934 in 2014 according to the Census ACS survey. (http://www.deptofnumbers.com/rent/us/)

Other living expenses are often 10-25 percent higher in the major urban areas in California where most people live than other parts of the United States. (personal experience)

It is housing and rental costs that dominate the disparity with much of the country however.
Already posted:

https://news.ycombinator.com/item?id=13848599
>Consider web frameworks. Given a choice I select React and similar functional frameworks than OOP based ones. They are just more productive and scale better.

That's because there are no decent OO based web UIs, because the web development experience and stack is a total mess to begin with.
I disagree.

Titles exist to provide an assurance to people that the services they get from title-holders will be above a certain standard, with the threat of a serious penalty if the work is sloppy.

This is the social expectation in many societies.

If I find that a doctor doesn't sterilize needles or wash hands, they should face a penalty (regardless of whether it actually caused damage). We shouldn't have to specify up-front in some contract that we want them to follow $RULES as a set of deliverables. This stuff is therefore regulated.

I used to think differently, but now I feel that software engineers should be similarly regulated. That doesn't mean everyone will now have to follow a ton of regulations to slap together the next nodejs app, those people can still be called developers. But whoever is an "engineer" should ensure that the work is well thought-out and should stop the developers they supervise from moving fast and breaking things.

It's time the industry "grew up" as a whole. If "software is eating the world", we need to be damn sure it's not sloppy.
That might be for the English term. On romance languages, ingeniero/ingegnere/ingénieur is based on the "ingenio" root, so an engineer is someone who uses their wit to build/solve something.
Look at people who need an organ transplant.

Before transplant they have low quality of life. Their treatment is very expensive. They struggle to get an organ. They go through extensive support to help them realise that after the new organ they'll need to take meds for the rest of their life.

They have a very expensive operation that usually requires someone else to die and donate an organ.

After the surgery they need to take medication for the rest of their life.

This medication is the thing that prevents their new organ from being rejected; the thing that stops them going back to that expensive and painful life with a failed organ.

Currently the biggest caused of failure in transplanted organs is that people do not continue to take the meds.

This is the case in the UK where people don't pay for the surgery, and it's the case in the US where people pay considerable amounts for the surgery.

The money that people pay or the consequences for non-compliance don't seem to do much to change behaviour.
This is ancidotal, but there are a stupid amount of homeless in California. Virtually none of those immigrated here recently.

There is literally a second City of tents in Oakland under the freeway that stretches for miles. San Francisco has a similar problem, although it isn't as clear.

LA, San Diego, and other south west coast cities have beech bums and equal homeless problems. The fact is, homeless can survive here, where they wouldn't survive in Chicago, DC, New York, because it simply doesn't get too cold there.
As much as some of us might feel some misguided excitement over the idea of being some kind of tech savvy Hannibal Lecter, the reality is that there is no real correlation between psychopathy and intelligence (perhaps even a negative correlation.)

https://www.ncbi.nlm.nih.gov/pubmed/16178679

https://www.ncbi.nlm.nih.gov/pubmed/23551975

http://www.soc.iastate.edu/staff/delisi/Hannibal%20Lecter%20...

In other words, psychopathic people aren't necessarily smarter. In fact, contrary to the Hollywood idea of the "super-intelligent serial killer", most actual serial killers were basically kind of idiots who got caught in stupid ways, with a few notable exceptions.

It's also hard to read anything Einstein (an actual genius) wrote and conclude the man was bereft of warmth and empathy.
All? Are people that work in music studios (Sound Engineers) regulated? I have know people that have gone to Full Sail (one of those 40,000 for-profit schools) That have gone on to be "Engineers". Engineer simply means "one who engineers things".... or drives a train.
Choosing a Wine Gift – Red versus White
Right, my current title is "solutions architect" which has no meaning outside of the context of software. If someone, non-IT asks me, I'm a software developer.
Isn't this exactly the premise of the movie Gattaca? Great movie, BTW.
>Admittedly, it's one of those projects which has had a bunch of freelancers/contractors work on it, but I personally really don't see what it added to move the methods off the classes apart from confusion, code duplication and code bloat.

Moving the methods off the classes would actually lead to less code duplication -- as now different data that need the same treatment can be handled with the same methods.

"Loads of repeated code as new programmers didn't know methods existed" seems like a bigger issue here...
It's $7.99 on my version of the Kindle store. Where do you see $.25?