skysight-inc/HackerNews huggingface dataset:
Learn how to evaluate trade-offs. Not everything is black and white. Given two alternatives, both of which have advantages and flaws, learn how to decide which one is better (and why).

Learn a sense of... I want to say "taste", but it's more concrete than that. Learn what the bad ideas are, and why they're bad. Learn a sense of "that doesn't feel right" that's technical, not just aesthetic.

Learn what it's like to maintain a two-decade-old code base of a million lines or more. See what the problems are. Think about what you're doing when writing new code that's going to create some of those problems.

Learn to document what you're doing to an appropriate level of detail. Take the time to do so.
We throw people in jail far too often as it is, and you want to add to the prison population for something that didn't harm anyone? I honestly don't follow. If this were executives covering up the harmful effects of their product on humans, I'd agree.

The Government makes the vast majority of their money off corporate profits, so they have a vested interest in seeing them succeed.
"people who are not experts but are setting policies "

That seems to be the key issue.
What kind of sugar are you looking for? I'd like to have first-class comprehensions in any language I use, but having decent map/filter/reduce|fold implementations is good enough for the most part.

(1..100).map({ it + 10 })

Doesn't seem so bad.
well productivity in terms of reproduction. there wouldn't be as many cows or chickens or pigs, etc. without use breeding them, is what I meant. sorry for lack of clarity
To the outside world, it is the same person. On the inside, what if one consciousness ends and another one begins. What if you die each time and another you wakes up. Not you since you are dead. Just another person who will be you going forward. So now, the question is, does anyone even know that is what happens? New you remembers all of that and it is part of their history as a memory. Old you who actually experienced those things is unable to tell everyone that teleportation is deadly.

So I guess, to answer your question, are defined by who you are to the rest of the world or are you defined by the collection of thoughts and actions that make up your experience?
Get Realtime Authentication Events with Auth0 and Pusher
After about 26 years programming -- that is, since i was a little kid, this is what i wish i would knew, not only 4 years in, but also on my 1st year at doing actual paid work:

-1. That I should have jumped in straight into Lisp from day one.

0. That popular technology does not mean that said stuff is the best, great, good, or even acceptable. Example: PHP 4.

1. That the industry raves about a seriously, seriously crippled and flawed language (Java)

2. That "Design Patterns" are mostly workarounds for the problems introduced by flawed languages (again, Java and friends); not great ideas to be proselytized.

3. That Object-Oriented-Programming is not only done in the way of C++ or Java, but that there are much superior ways to do OOP. (i.e. Smalltalk, CLOS)

4. That if you want to solve complex problems in a productive way, you need a multi-paradigm language. Strict-OOP languages or Strictly-Functional languages will limit you, unless the problem is really suited to it.

5. That the "Blub paradox" is real. Programming languages are not equal.

6. Real world (i.e. commercial, production) software should always be done by experienced people, not by juniors.

7. A seasoned (say, 8+ experience) programmer can done things 8 times as fast as a junior (graduate) programmer. I've seen this firsthand.

8. Dilbert -as others have pointed out- is a documentary.
8.1 Corollary: Pointy-haired bosses are real.

9. The customers will always think everything has been done using Excel Macros.

10. The salesmen are very important to the health of the company, so don't make fun of them; rather, make friends with them and help them get aligned to what the technical team is able to do.
> A human in a small society might only speak with a few dozen individuals growing up, but they don't get confused when they meet a new person and hear a new voice.

It does seems pretty well established that some humans overfit on the particular aspects of verbal communication that we generally call "accent" (not to mention actual lects), even when given access to a much larger and more diverse set of individuals and their utterances to generalise from.
They are clarifying that they'll talk to everyone in the chain, so you don't think that only Google will hear about it just because your office email is hosted with Gmail.
By the sheer number of responses here, this is a testament to how personal each coder's experience is and how much they value it unto itself. Coders care about the work they do and especially in the beginning find their choices to equate to who they are, tending to find unwanted changes or revisions to their code by others' hands as annoying or encroaching upon their precious domain, at least for me.

To this day, I still get very annoyed when someone takes what I have done, completely reworks it or even throws it away, doing something else that IMO is more complex and difficult to work with. My values have shifted from doing the quick and custom style to moving more toward standards and TDD in a style that everyone can pickup easily and understand.

This has made my work so much more productive in getting to the final production quality by a factor of not less than 2. In my youth, I spent 99% of my time fixing code as it broke. Now, I unit test and in many cases, end-to-end test with TDD frameworks providing myself with a much higher probability of success when pushing to production.
I'm not sure we should expect anything differently, if recent graduates are less intelligent (as a cohort) than ever. [Difficult degree] enrollment is relatively flat because aptitude is flat, and grad jobs will reflect this.

I wrote a little about this framing it as a CS degree problem, but it seems true for a lot more than just CS.

> Can we prove aptitude is flat? Kinda. In 1970s 1-in-2 college grads aced Wordsum test. Today 1-in-6 do.[2] Using that as a proxy for IQ of the median college grad, in the 70’s it was ~112, now its ~100.

> In other words we have more people going to college than ever, but the “average grad” is less intelligent than ever. Degrees are increasingly diluted yet expensive. You can pay more money than ever to show that you are of average intelligence.

From: https://medium.com/@simon.sarris/why-is-computer-science-enr...
I read that.

Thank you for the rest of your comment as well (not taken as a personal attack): I think you have identified one source of my confusion. I closely relate the idea of valuation to share price.

I will read up to get a fuller understanding, but could I just ask one question before you go: do the terms "pre-money valuation" and "post-money valuation" or does the term "valuation", mean anything when you buy 100% of the company from me (without issuing any extra shares shares, and the company doesn't get any of your money) for a certain amount? If that amount is $500,000 then what is the pre-money and post-money valuation (if these terms apply).

This should clear up my confusion as in this case no extra stock is issued. I will read up on the rest. I want to know if these terms (pre-money valuation; post-money valuation; valuation) even apply in such a case!

Thank you for taking the time to understand some of my sources of confusion. Other than this one, I'll try to get a handle on the rest of my questions from other sources.
weird, basically everyone I know says it's the best in the series
Hey Sam, I'm glad you have so much money your every waking moment is not spent on just survival.
This is a constant issue: what is the safest course of action? You start by patching your shit first, then push it upstream, and then slowly broaden the disclosure circle. Large software vendors (RedHat, IBM, etc) and infrastructure operators (Amazon, Cloudflare, etc) get advanced notice. Only then is it distributed to the public.

This is the de-facto route for closed-source software, but Linus doesn't mark all security patches as such [0]. There are a lot of unpatched systems out there and Linus doesn't have the time to parse the exact ramifications of every security bug.

That being said, it's pretty clear that we need to invest in more robust software development methods.

[0]: http://yarchive.net/comp/linux/security_bugs.html
Still sounds like an interesting problem.

Perhaps a set of AI filters could be built, and Netlix or Pandora style whichever one a person agrees with more often is selected and more results from it are presented to them.

Or perhaps a Convolution Network trained to filter per person or something equally wasteful if the allocations of Etsy's budget actually match the article. But of course those GPUs would be locally sourced and powered by renewable hamster wheels and 100% organic hamsters.
That doesn't mean there can be no standards of acceptability.

Why do there need to be "standards of acceptability" at all? Seems to me the better world is one in which people don't interfere in other people's employment.
But, you know, if you saw something like, all your visible examples were like the strings

123 456
234567
345 678

and the program replies with something like what you wrote: “Remove the middle character from any 7-character strings to make them 6 characters in length”, it would actually take a programmer’s mind to be able to envision why this might in some cases be wrong. Most people who are not programmers would, I think, see this as equivalent to “Remove interior spaces from each item”. I suspect that the skill required to choose an algorithm correctly is the exact same skill required to actually being a programmer.

All this then buys you is that you don’t have to remember the function names.
Sexism? This is fundamental evolutionary psychology.

A male who takes greater risks has a chance to mate with many more partners and produce substantially more offspring. Women don't have the same sort of payoff opportunity. There's evolutionary pressure for men to take greater risk than women.

Think Genghis Khan or http://www.dailymail.co.uk/news/article-1358654/The-worlds-b....
>that management is a separate craft and someone who can manage a company selling beverages can sell computers just as well

Huh. I never heard it summed up so succinctly. I think you've hit the nail on the head - ignoring technical expertise in the field.
Also, a bit of what the BBC is talking about is either defamation (not something the police get involved with) or "misuse of company resources" - and BBC only wants to use this stick to prevent some of the vile trolling some of their employees have to put up with.
The SMM Balancing Act: Why Are Facebook Hashtags Falling Flat?
Don't ever do this. The interaction of different crypto algorithms can be counterintuitive (in the sense that you won't gain what you think you're gaining), it's extraordinarily expensive in ways unbalanced against defenders, and it introduces new implementation errors that can weaken the whole system.

If you're paranoid about AES, use Chapoly (or just use Chapoly because it's in many ways more convenient to use than AES). Don't build elaborate cascades (all cascades qualify), and don't randomize S-boxes.

It is hard enough getting these systems right when you're playing exactly by the book. If you're designing a cryptosystem and you're not a professional cryptographer, the list of things you should be worried about getting wrong is very long and very scary.
"Film" is the UK English word for the US word "movie" (which has a red squiggly because of my English (UK) spell-check). That's all it means.
2004!
The court treats the actions of individuals on a case by case basis. Your analogy breaks down when codified into a business contract. By stipulating a course of action that may cause real financial harm. Even if they were to stipulate fines or other remedies in response to perceived financial harm on their part the enforcement of such penalties is not their responsibility. They have taken enforcement powers away from the government.

Think of it like this: If I'm a web developer and I haven't received payment for my services I can withhold those services or even retain control of the product I am providing or use the courts to enforce the contract, but if I used the client's credit card info to enforce fines and pay myself I have broken the law regardless of whether I put it in the contract.
> I'm looking for something that's sufficiently technically challenging, where I can be surrounded by honest, friendly people, and make decent money.

This is very close to my real goal as well - but CRUD apps seem like the norm lately :(
U.S. Navy Program Guide 2014 [pdf]
First I was told that I am not eligible for trial. Google offered me $300 credit which lasted for 5 months because the total monthly cost is $59.00. Azure was expensive compared to Google Cloud. Their pricing was also complicated and full of jargons. Microsoft offering was also not appealing. They were offering less memory and less storage space.

Up to this day, I still don't understand why Google can offer services using Microsoft software cheaper than Microsoft itself. Maybe I am just not their target market.
Are you talking about Scorch CAD or something else?

If the former, then yeah - it's been around for a while, but the one thing I wish the developer would fix is the ability to switch between perspective projection and iso projection; right now, iso is all there is. Which is great when you want to check measurements without distortion, but sometimes you just want a regular 3D view.

Unless you know of another app?
I think you may have misunderstood me a little.

I'm not saying go use the Servlet API directly all the time but you damn well should know it since almost all the others build on top of it (including most of Jersey).

Particularly Servlet Filters. It seems like every framework has their own take on onion processing a request but servlet filters are actually easier to write then say some Spring framework "Advise".

As for Dropwizard... You do know its built on top of all the new JEE stuff like JAX-RS. I am willing to wager it will die and be replaced with something else... but those underlying javax specification stuff (like JAX-RS, servlet api, etc) are still going to be around.

You should know those underlying standard APIs.

The funny thing about you mentioning Dropwizard is it basically started as someones else stack built by mixing standard libraries.... something companies do all the time.

> I see no benefit, in 2017, to using servlets directly. It's certainly not going to be easier to teach a new hire through look-at-the-code or look-at-our-minimal-doc instead of pointing them at the existing documentation and examples of best-in-breed tooling.

Until shit breaks, or doesn't fit your exact requirements or the project dies, etc, etc, etc and believe me it does happen in which case you will need to know the lower level stuff. But yeah don't reinvent the wheel.
Lead-acid? Heavy, toxic, inefficient and pretty simple?
> Justification 3: 'Passwords would hang around in the clipboard'

Password managers could wipe the clipboard, if it still contains the password, after a defined amount of time, such as 60 seconds.

(If you think that's "confusing", show a notification that explains the behavior; "clipboard wiped" or something.)
I write software for 20 years, I use Linux and OS X as my primary development desktop OS, I have used Slackware Linux 1.0 back in 1995, I am a touch typist — but I just can't stay using Vim or Emacs, unless forced to (such as when I have to quickly edit something on a remote machine).

Yes, I might be a special snowflake — most developers don't have problems with vim or Emacs, expect for occasional flame wars between the two. But I do, even as I tried to make the switch like 20 or more times.
I'm not sure justification has ever really been a problem for him.
I assume this is a real quote from the early years:

Zuck: Yeah so if you ever need info about anyone at Harvard

Zuck: Just ask

Zuck: I have over 4,000 emails, pictures, addresses, SNS

[Redacted Friend's Name]: What? How'd you manage that one?

Zuck: People just submitted it.

Zuck: I don't know why.

Zuck: They "trust me"

Zuck: Dumb fucks
False so far, and I'm 55. I kick the rear end of fresh graduates. They can type a lot faster, turn out more lines of code per day. Great. I don't write the bugs that they write, so I don't have to take the time to find and fix them. I don't make the design mistakes that they make, so I don't have to fight the design flaws to get things done. They work harder; I get more done, and I get paid accordingly.

And if you think that the answer for "your brain stops working" is to go into management, all I can say is that I'm glad you're not my manager...
Because it shatters the meaning of what it means "to be." Am I a meatsack that houses consciousness or am I a complex stream of consciousness that controls a meatsack?

In which case, if consciousness can be streamed, can that consciousness be hijacked? Or do I stop existing the moment it's transported?

Too many uncertainties.
THIS!

Having run a publicly facing messageboard for many years (no auth, just plain old "write what you want (within reason"), we were able to effectively keep the level of spam and abuse off the site with cultural norms within the user base.

In one case, we had someone specifically trolling people on the site. We were able to track the poster back to a particular university in Ireland who we notified via their abuse channel (abuse@domain.xxx I think) with a very generic query:

"we're seeing someone from your network posting crap like this <link to content>. can you investigate?"

The behaviour stopped pretty quickly afterwards...

Turns out most network operators want to run a network that benefits all it's users. If you abuse that privilege, they have no qualms with disconnecting you!!
Yes. Most people forget these details and just hate on "Oh noes! Working from home was banned!!".
> The boundary between a beginner and a coding rockstar really isn't very great

I respectfully disagree. My experience says the difference between a beginner and a really good, experience coder, is HUGE, and not only on fields like "machine learning" but in everyday commercial systems.

Unless, of course, your platform is something like Java where everybody is crippled to an extreme degree.

That is, if you get 400 people on a room, tie their hands and their feet, they most likely dance with the same skill, their dancing experience notwithstanding ...
I had a really bad Uber ride. Can I give the driver one star?
Steve Yegge drops a blog post, and we all freak out :) He needs to get back on a regular scheudle so we can react like reasonable people to the next one.
He's not asking whether or not it's the wisest thing to do, but if there's precedent for this sort of thing (sneaking in fixes to fatal bugs in open source crypto-currencies). You seem to imply it has happened before; do you have any examples?

It's inherently problematic because you need to somehow get your users to upgrade their software without knowledge of exactly why they need to do this.

I know Bitcoin has had denial-of-service fixes sneaked in, but I'm not aware of anything of this nature.

One thing's for sure: the commit logs of crypto-currencies will be scrutinized a lot more by black hats from now on.
To reap the performance benefits of v8 and wasm for your numerical fortran routines? /S
Google has already started working on this to a degree.

https://en.wikipedia.org/wiki/Jasper_Solar_Energy_Project
You, your memories, your brain, your character, your acting and model of thinking is nothing more than set of chemical reactions in your brain. If they can persist chemical reaction, they can persist you.
Can you elaborate a bit more detail around a MVP-style architecture where the database isn't on the public internet?

I assume you're talking about something like a public facing load balancer that connects into a private network where the web servers and database server live, and you'd need a bastion host (or just the load balancer) to connect into the private network and access any of the machines.
Also, depending on threat model, a passwords.txt clear text file can be perfectly cromulent security that is better than many alternatives (password reuse, weak passwords). It's not going to stop people with physical access to your machine or attackers specifically targeting you looking for weaknesses in your documents. But vulnerability to some threat models is not vulnerability to all of them and it's okay to take a security stance with known vulnerabilities.

Similarly with Post-It Notes and physical written Notebooks of passwords. If your threat model isn't concerned about people with physical access to those notes, and you are comfortable with the physical security of those notes, that can be perfectly acceptable for you, and an overall better security stance from bad passwords.

"Don't write down your passwords", has always been bad advice, from that perspective. "If you write down your passwords, keep them safe" is slightly more accurate.
You're spot on. Compare theoretical with theoretical, actual with actual, damn it.
It'd be interesting to know what their rankings are. Is it just to pass the time at a weak level or do a lot of them become quite strong?
That's just not my experience at all. But clearly, it's been yours. Perhaps there are two very different sides to this field, in which case my advice is to keep looking if you find yourself on the wrong one.

From where I stand, software engineering has been an absolute boon. I have friends who are doctors, lawyers, consultants, traders, writers, salespeople, marketers... On nearly every metric -- pay per hour, amount of bullshit I deal with, variety and interest -- my job beats theirs. I started coding when I was 10 years old because I was a big nerd who wanted to make video games. I never, ever thought I'd make a top 3% salary 5 years out of college doing something I love. I'm tremendously grateful for that. I've been really successful by just being good at what I do, and that's mostly what I've seen other successful people do around me.

At the end of the day, unless you own your own labor, someone else will be profiting off of it. The lower down on the ladder you are, the bigger the gap between the value you produce and your income. But that being said, software is not such a bad place to be relative to other fields.
In Firefox you block them by going to about:config and changing dom.event.clipboardevents.enabled to false.
Really cool demo of using GraphQL!
Heh, quite the record of applications.
I'm curious what you mean by fully immutable data pipeline or DPL. Is this a data processing methodology or an actual technology?
I would argue (somewhat tongue in cheek) that people who don't have a taste [1] don't need a filter. The filter is for people who want to climb above the trash, not for those who willingly submerge themselves.

[1] https://www.etsy.com/shop/GrainyDayCreations,
https://www.etsy.com/shop/PurpleHeartUK, https://www.etsy.com/shop/BigSwigDesign, https://www.etsy.com/shop/CraftyMamaGifts, etc.
$20,000 to Crack RYO Crypto
The point is that foo+bar is a convention that many providers follow and not an actual rule of email, and therefore blocking that doesn't make sense because you'll block legitimate addresses too.

Similarly, mail providers can come up with all sorts of different conventions if they want. For example, when setting up a new domain in FastMail, it offers the ability to accept anything@user.dom.ain and turn that into user+anything@dom.ain, and it offers user@anything.dom.ain which it will deliver to user@dom.ain. So here we already have two new conventions that sites can't possibly detect as alternatives to the normal foo+bar@dom.ain.
It's really impressive to me that all that gear only weighs 60 lbs. That is so much stuff.