skysight-inc/HackerNews huggingface dataset:
The best insurance against age is to find some domain, and excel at that. At 40, it's not so good if your top claim in CV is "I know C++ in an out".

"I was part of a team delivering product X, Y and Z which produced this much revenue for our company and which provided this and this value to our clients. I'm experienced contributor in domain W, and am comfortable in providing value using technologies A and B." is much better.

That is, in corporate-ese, where it's all about value and revenue. Learn to explain your value, and forge a career that you can explain in terms of value. As an engineer you create value, but no one else is going to help you capture slices of that value financially - you need to do it yourself. It's not 'selling out', it's about being smart with your finances. Your skills are an asset, and if you don't know how to capture value from your output someone else will.

At 37, a software engineer, I'm pretty sure my career is more or less secure. I do things which I find interesting, but I make sure as well that I can explain my contributions in economic terms, should the need arise to find new employment. I'm not very wealthy, but neither do I need to stress out about money.
That's fine as long as the ones deciding on the balance have to take a large share of the risk of injury. Be the first to work in the same conditions you expose others to. Otherwise, you're just a hypocrite and a monster.
Just another data point: I've been running my own mail for more than 6 years and I've never had a problem with receivers.

Hosted on a cheap Strato VServer in Germany, I've never cared for the technical details, could not explain right now what DKIM and SPF are (and they're not configured), and only recently installed a self-signed SSL certificate in my Exim configuration to be able to use it with a Desktop client for submission (pretty sure outbound traffic still runs unencrypted).
This is cool. For those who may have seen Smalltalk before and are wondering where all the colons went in the example code snippets: The language discussed in these articles appears to be Smalltalk-72. Modern Smalltalks are based on Smalltalk-80, which is quite different in some respects.

In particular, modern Smalltalks use call-by-value, while these early Smalltalks used something more like call-by-name. Message arguments were passed in as unevaluated structures and parsed by the method. This allows some syntactic tricks that may look more natural than modern Smalltalk. For example, you could write "size increase by x" rather than the modern "size increaseBy: x" because the "increase" message could check for the presence of the word "by" and ignore it.

So this was kind of like using Lisp macros to define DSLs like the LOOP macro, but it was all evaluated at runtime.
>That feels better than being a ad target at Gmail.

I believe they stopped this recently.

But you could have always become a paying customer of Google.
I don't think that I'm inherently biased against promising candidates with no skills. Heck, I used to be one myself. Perhaps it's just that in the fields and company types I've worked at most (startups) that's not usually what you look for. The promising recent-graduate scenario is much more common in big corporations where people plan for long, linear careers. In the startup world the average time for someone to be at the company is 2~3 years, and the roles usually get filled only when there's a burning need to get the job done right now. So it could be that I'm not aware of what the correct proportions between the different tracks are.
Humility is the opposite of arrogance, but that doesn't mean you don't have a fixed vision of your goals and will stick to your guns to achieve them. It just means you don't try to show everyone just how good you are at achieving them.
I'm over 50 and coding in Node & Java, + related modern technologies. I am very happy where I am, reasonably well paid, and wouldn't want to move.

If circumstances change however, and I am forced to move for some reason, I would worry about landing something equivalent. I have already seen reluctance from recruiters about placing me.

I think I would probably move into contracting. I feel it's a more honest way of earning a living in the software dev world atm.
Maybe...

These remind my of walled off fields in Bolivia.

https://goo.gl/maps/xpnX311AH592

These seemed to be used both at fields for growing crops if the soil was still good. Or as pens/grazing areas for lama's if not. Bolivia's attempt at land reform was kinda disastrous with resulting over farming, over grazing and subsequent soil loss. Over just 50 years.

If someone claimed that there used to be thin volcanic soil that later blew away, would not be surprised.
Yes.

Network bandwidth is not the problem.

The problem is disruption of effective communications channels.

I have three layers of anti-spam technology on my e-mail addresses, and still much of the traffic I get is spam.
> Wikipedia is not a reliable source on politically controversial issues

I can't imagine it's less reliable than, say, the field of sociology. At any rate, the claims in the wikipedia article are well-sourced, so if they are false, it should be trivial to demonstrate as much.

> it's not evidence. That's just one incident in among claims by millions of people that have been going on for generations.

What you describe is evidence. It isn't proof. But your broader point stands--we need more data about this to know how prevalent it is. My only point is that it's not unprecedented for communities to lie--specifically your refutation ("it's been going on for generations") supports my pet theory, which is that a lot of historical oppression by police has turned many black communities against police, driving uncharitable interpretations of police behavior at best and outright slander (as in the Ferguson case) at worst. Note that these communities can be lying and not necessarily be bad people--slander is morally wrong, but it's also an understandable (though unjust, misguided, etc) response to oppression. Compassion and honesty aren't mutually exclusive, as we are often tempted to believe.
https://www.indiehackers.com/
From that perspective I'm mostly hopeful, but I find less tolerance in millennials in other ways. There seems to be less willingness or ability to put political or ideological differences aside when it's appropriate. Maybe in a more long-tail world, there's less practice in compartmentalizing and tolerance (i.e., putting up with things you don't like).
Yeah I wouldn’t want to do it now. I worked for a major pollster about 10 years ago and they had monumental problems back then just sending invites out that people had actually signed up for.
That's problematic, thanks to golang choosing to have always-nullable reference types. "option T*" would therefore be a tristate type, unless it was somehow specialised into representing nullability (obviously a major breaking change).
Not sure why this is down voted. It is an important consideration, unless you don't plan to live a long and meaningful life.
Oh really - It has been proven that it does not work for me personally exactly as i wrote?

I didn’t see the researcher team coming through my door...

I didn’t say it works for everyone, but only report how it turns out for me.

Interesting that some find a personal report enough reason to downvote...

How do we know the research you point at is not sponsored by those with an interest in selling more expensive stuff?
A few of Seattle's neighborhoods seem to flow together, such as Wallingford and Ravenna being so overrrun with students that they feel like extensions of the University District. Others, like West Seattle, feel more like the small cities of White Center and Seatac that neighbor it.
I haven't tried closure but I can believe so. I observe the same phenomenon with Python. Whatever I have to do is just easier to first express in Python then translate for me. I guess there are just some languages that are closer than others to the way we think.

It's quite probable that this language changes from dev to dev, depending of habits, type of problems and skills with said language. However I suspect some languages are just better at it by nature as well.
It seems like compared to 3.6, the featureset is much less exciting. This isn't necessarily a bad thing, but I was hoping for more from a front-page HN post. :/
Would you like to owe one of those phone or the iphone 1 now ?
You should try parinfer for your editor, that should help with the parens
Venezuelans Use Bitcoin Mining to Escape Inflation
I agree. Especially since there are so few new features listed yet. This article is useless right now. The first beta is out, but a lot of work remains unmerged. Wait a bit.
>"there are plenty of examples of genuine cures developed and marketed by pharma."

Name one.
Addressing one of your own delusions from above:

> Homoiconicity is practically useless

So many libraries in Clojure that lead to serious productivity benefits rely on macros, which in turn are possible because of homoiconicity. It's more than useful, it's a key ingredient in the power of the language. You can extend and embed the language or sub-languages or quickly write a particularly potent DSL in just a few lines of code in Clojure thanks to this feature.

Compare this to language that offer macros but without homoiconicity and the benefits are clear. The two different ways to write macros in C and C++ involve language semantics and syntax that are quite different from the regular syntax. In Clojure, the language is identical, you can actually control the compilation process using the same regular Clojure code that you use everywhere else. It's really quite amazing how far this gets you.
Maybe but the OP link has links to both of those and summarizes quite neatly what this is IMO.
I know banking offers that kind of salary, in the Netherlands. But it's the higher tier of the bucket though.
Ah, indeed!
Ask HN: Are there any monastery-like environments for tech?
I've been looking at religious monastery design lately. They are designed to be completely free from distractions - no possessions, no members of the opposite sex, food and physical security taken care of. All you have to do is meditate and concentrate on religion and existence, without distraction.

It occurs to me that this total immersion is also perfect for training the mind in intellectual pursuits, whether it's academia or engineering. It's the kind of environment that Bill Gates started in. Something where you don't have to worry about food, shelter, or promotions.

What would be the closest thing to a tech monastery in the real world?
Be more cooperative, more trusting, and more trustworthy, see the best in people, etc. Of course I don't know you so please don't take this as meaning that you personally are not trustworthy.

My point is that, in the UK for instance, there seems to be an air of distrust in some English speaking communities that seems not to exist in Norway, at least not to the same degree. I doubt it has much to do with the language. I was born in and grew up in the UK (1955 to 1985) and I'm quite sure that the town where I grew up was then much more similar to the place I now live in than it is now. The country has changed.

Of course, I have been outside the flow of things in the UK for thirty years so my view of the current situation probably owes a little too much to the media than it should, so take the specifics with a pinch of salt.
The influenza vaccine has to be administered every year, and employers & individuals do choose to pay for it.
I don't think you should use a very large dose of zinc. There's actually research on this, you could look it up. E.g., [1,2].

Some OTC products already contain vitC and zinc in proper amounts, e.g. Sambucol (not affiliated).

[1] https://en.m.wikipedia.org/wiki/Zinc_and_the_common_cold

[2] https://www.ncbi.nlm.nih.gov/pubmed/23775705
Profesional = real world, paid apps?
I think there are plenty of things to learn throughout a career. I don't see why technical growth should get capped after 20 years of experience.

I do believe career growth stalls out at a certain point, though. But I chalk that up to organizational culture, not something inherent to tech work itself. There aren't clearly defined career paths where one would start out making bigger and bigger technical decisions as they gained more experience. You do see that career trajectory in management tracks, as one would manage more people and bigger budgets.
Being a man I'm afraid I forgot to check that. It does take me longer to clean off shampoo, so in theory that might make them shinier.
also at 0:48
> Edit: prove it otherwise.

> Edit2: it's not me who needs to prove lisp is useful. At least, be honest with yourselves.

This is one of the great fallacies among the naive in their logic.

For example: I know for a fact that you never wear underwear. I don't have to prove this, because it is a fact. If you don't agree, then it is up to you to prove otherwise.

See how that reasoning works?

Thank goodness the criminal justice system in most Western nations doesn't rely on that logic.
Virtualmin looks pretty cool, that looks like a great option.

Yeah thanks for the feedback, I need to get around to self-hosting my blog as well. I set up blogger a few years ago and I never got around to changing it.
I agreed with some of your more abstract posts on this topic, but I really can't buy into that assumption that just being a little less fearful would reduce costs by half. You wave that second bid around as if they had actually done the same work, at the lower price, with a known quantity of bloodshed. But that is only a hypothetical, That second bid might have had even bigger cost overruns, we don't know. The winning bid might actually have terrible safety standards while being lucky, we don't know. There is no simple, isolated safety/cost tradeoff that you can dial in at will and get the expected results. On the contrary, a contractor that is sloppy with safety will often also be sloppy with other things, causing costs to increase, not to sink.
Can someone help me understand why it has to look like this?

for(var i=0;i<9;i++){for(var k=0;k<i;k++){for(var m=0;m<k;m++){
for(var j=0;j<9;j++){if(i!=j && k!=j && m!=j){for(var l=0;l<j;l++){if(i!=l && k!=l && m!=l){for(var n=0;n<l;n++){if(i!=n && k!=n && m!=n){
pos=""
dummy_moves=Array()
for(var a=0;a<9;a++){
if(a==i || a==k || a==m){
pos+="1"
dummy_moves.push(0)
} else if(a==j || a==l || a==n){
pos+="2"
dummy_moves.push(0)
} else {
pos+="0"
dummy_moves.push(s[3])
}
}
add_box(pos,dummy_moves)
}}} }}}}}}
If mostly everyone uses Option instead of `nil`, the problem approaches a vanishing point. Not perfect, but still a massive improvement. Of course, generics won't be added until Go 2 anyway, at which point the community is free to make a breaking change, though I doubt they'll ditch `nil`.
> It's nice that you think all this stuff. The reality is

No need to get snarky. I do run a personal mail server myself so I'm reasonably sure I know what reality is like.
I can almost get serial working:

printf 'memdev = $386.sys /p\r\n' > config.sys
printf 'device = pcterm.sys\r\n' >> config.sys
printf 'device = $serial.sys /ad=03f8,in=4,hs=x,ib=2048,ob=2048\r\n' >> config.sys
printf 'smpsize = 80k\r\n' >> config.sys
printf 'buffers = 40\r\n' >> config.sys
touch -mt 9311171533 config.sys
mcopy -n -o -i a.img -m config.sys ::

printf 'addtask 300k,1,,user01,pcterm,1,19200\r\n' > autoexec.bat
touch -mt 9311171533 autoexec.bat
mcopy -n -o -i a.img -m autoexec.bat ::

qemu-system-i386 -fda a.img -chardev socket,server,host=127.0.0.1,port=4555,id=com1 -serial chardev:com1 -rtc base=1994-06-17T16:01:21

(then in another window)

nc localhost 4555
Austin is full. Go away.

;)
The first time I read your post, I completely misunderstood it, probably because my idea of comfort is diametrically opposite to how you put it.

To me, the harshness of life is that there are different languages in existence, and that people are in no hurry to converge on one. And the discomfort is the necessity to translate between languages, or to learn multiple languages, or to get in communicative situations when either you or your interlocutor are not particularly fluent in the language you are trying to communicate in. For me, the less discomfort of such kind the better, even if it means that multiple cultures will become inaccessible to non-scholars. I do not believe we (common folks, I mean) are terribly missing the Roman, or the Ancient Greek, or the Mayan culture, etc.
This website doesn’t seem to work on iOS.
Echoing to other's thoughts that hosting a server on your own would probably flag you in spam and just be a very tiresome process.

A reasonably good and cheap service I could not recommend enough is https://www.migadu.com . They allow you to use unlimited email domains, storage, addresses with the only limit being on total daily outgoing emails. The mini plan allows 100 outgoing emails a day which is more than sufficient for most of my purposes.
Very good reputation, though a little 'posh' if that bothers you. It has a good college system and social life, though the town itself is very small and I imagine that the student life can become a bit of a bubble.

If you interested in other universities then I'd recommend Edinburgh University. It has an incredible Computer Science program (referred to as Informatics) and the university is world-class. The city is awesome and you have a great mix of student life and regular life in Scotland's capital.

Drop me an email (in profile) if you want more info on it :)
> Setting up is easy, maintaining and responding to all the blocks you may get is ongoing and simply cumbersome.

The only real issues I had were with Gmail for a few months, until they got used to the IP address sending legit email. You have to instruct people to look in their spam folder (of which Gmail hides the existence, an evil thing in itself) until people marked like 10 emails as being non-spam over the course of a few months. Hardly had any trouble otherwise, and I don't even use DKIM nor a reverse DNS for all domains (only SPF because that was easy to do, and with 1 IP address I can do only 1 reverse DNS, and only v4 at that).

It helps that I've got a static address, and it might also help that XS4ALL (ISP) has a good abuse team that probably keeps the netblock quite clean. I don't know to what degree this affected my experience.
What is your field? What textbook says that "microwave" and "radio" are different? I've been citing a lot of sources here. Just this one from you would be appreciated.
Or you do nothing wrong on your server, but another user using your mail server ends up with a compromised password, or reuses the same username/password from elsewhere as their mail login. You wake up and see thousands of outgoing emails in your mail queue, all from the spammer, followed by other users who can't send outgoing emails.

You could attempt to limit the outgoing emails per account per hour, however if that's set too low then you end up with other users who can't send out emails to their "mailing lists" consisting of hundreds of contacts, instead of using a real mailing list to manage it.

The effort just isn't worth it.
How Fairpixels Acquires Customers
Try gradually lowering the temperature of your water over say a month or two. What helped me, perhaps, is that I started during hot summer and the tap water got cold gradually till winter allowing me to adopt to it.
Some people might enjoy the work they do so much that it feels better to keep doing that in their spare time rather then having a hobby, time with friends, partner, errands (specially those), etc.

It's not healthy in the long term but I can see why someone would choose that path and it doesn't have to mean this person "doesn't have a life".
I hadn't heard of that. Thanks.
I had the same feeling, and then i tried to implement the same solution in swift (which has more evolved constructs for enums and option sets), but it's actually not easy to do as well, if you want to handle all those constraints at the same time:

1/ a potentially big number of options, without creating functions with a huge list of parameters

2/ options with associated values (revision: int)

3/ reusable options between different operations, with type safety preventing wrong combination.

=> 1/ prevents you from using function overloading and default parameters

=> 2/ prevents you from using optionset (they're just bit masks)

and

=> 3/ prevents you from using regular sets or arrays as operation parameter.

I haven't spent more than half an hour trying to find a solution, so maybe there's a smart trick that would work, but it won't be an obvious solution either.
No, in my extremely limited experience with email deliverability, this happens. I'd imagine a person that actually does this stuff day-to-day sees it a lot more than I do.

You can do "everything right" rolling your own email, but you are still relying on the receiving parties to do their job and implement sane spam prevention policies. This is far from what actually happens.

I lead development on a project that sends a lot of (legitimate, user-requested, transactional) email to many mailboxes belonging to a certain government department. I used Amazon SES as they have a pretty good track record. The receiving mail servers were configured to use a few overzealous blacklists that were causing my email to be silently swallowed (and reported as delivered). This was based on an IP black-level ban. Simply Googling the names of these blacklists showed report after report after report of them being completely useless, with many seasoned sysadmins saying that nobody worth their salt should pay any attention to them.

This was extremely hard to troubleshoot as this department was not a direct client and was of limited helpfulness. It became apparent that using SES's newly-launched dedicated IP functionality wouldn't have helped. I made full use of my AWS Business Support, the multiple people I talked to made it clear that SES put a great deal of effort into ensuring their IP ranges are "clean" - but there are some spam lists that do not play ball. The most important takeaway was that I was doing everything right. I was using a reputable mail provider who have very stringent spam prevention controls. I utilised SPF and DKIM. The content of my mail shouldn't have (and didn't) trigger a content-based spam detector. It was because the people on the other side weren't doing their job to an acceptable standard. When I was eventually able to open a channel of contact with the receiving department, they confirmed it was an IP range-based ban.

The fact that I was doing everything in my power to do the right thing had no effect on the situation. I still wasn't getting mail to customers. Saying "darm, these sysadmins really aren't doing their job properly!" had no effect on the situation at all.

We still live in the age of almost-but-not-quite-plug-and-play email solutions like Exchange that can be configured by people that probably shouldn't be configuring mail servers. For all I know, there was a list of blacklists on some Hosted Outlook control panel and the person in charge ticked all of them because more is better. As long as this is the reality I live in, I'm going to do all I can to play ball and succumb to the black magic. I can imagine my experience would've been a lot worse if I had been operating a mail server out of a dirtier IP range (generic cloud hosting provider, retail ISP customer IP range.etc). If I recall correctly, AWS severely limits sending mail from EC2 instances because they don't want their IP addresses / IP ranges to end up on mail blacklists.