jkeisling/hacker-news-corpus-2007-2022 huggingface dataset:
As a CS major (junior), I often find that when I think assignments/exams are uncomfortably hard I tend to pour my energy into other hobbies that are seemingly less stressful at the time and convince myself that this new fleeting hobby is my new passion (like the time I decided to write the first ten chapters of my great new novel in the middle of a 24hr coding exam).
Moral of the story: Coding is hard, and just because it comes easily to someone at first doesn't mean that there aren't going to be those days when it's frustratingly, nail bitingly difficult. The reason I say this is because you sound as if you're inclined to give up or cease to try when things get difficult. If coding really is your passion, the best advice I can give you is to find a project you love and obsess over making it perfect every single day, even when you run into a problem that is seemingly impossible to solve.

As for technical advice, I would suggest you familiarize yourself with as many languages as you can. I started coding in C, and while I rarely use it for anything other than assignments it has definitely helped me in terms of understanding concepts and constructs for other languages. I've never used RoR, but I'm assuming that you've at least learned the basics of deploying a web app. Try learning Python/Django, JSP (I hate it, but lots of small businesses in my area use it and it's great to throw on the resume), PHP, etc. You'll find that there are a lot of similar concepts.

I'm in the job hunt myself and every single recruiter I've met has said that the best thing you can do is to expand your programming skill set. If you've even so much as finished a basic tutorial in a language, list it on the resume. Build up your portfolio with as many completed projects as you can. Don't listen to what you're "supposed" to do - I was "supposed" to be an English major because I got an 800 on the SAT verbal. The point of CS is that you take the rules and bend them beyond the point of recognition, and the sooner you start thinking this way the better.

Anyway, good luck and I can only hope that the passion you have for coding now stays with you during those tough moments ^.^
(Oh, and don't worry too much about familiarizing yourself with TDD, Agile, etc. There are a ton of books on safari on the subject - read those, familiarize yourself with tools like git, trac, or any version control system, and you can get by)
To be fair, if someone really does produce useful code that none of their peers or coworkers can understand, I wouldn't dismiss the notion that they are somehow "different."

I know you're railing against the Linus Torvalds man-child types, and I agree that I wouldn't really enjoy working with a person like that. The parent comment wasn't really about excusing poor treatment of others though, it was just describing the isolation that can be felt.

What makes you think it would be easier for that person to develop the social skills than for their peers to learn to understand their work? Maybe those people just neglected to develop their reasoning/coding skills? Or maybe people's brains actually can work in profoundly different ways.
> I have a very intense dread of losing myself in the necessary mundanity of life; I am more financially comfortable than ever, but I also feel less like myself than I ever have. Going to meetings, making dinner, creating to-do lists — these don’t fit my personality at all, but I have to do them because they need to be done.

You just articulated my worst fear, occasionally some aspect of it creeps into my life when society demands some "busy work" from me... each time it makes me feel like wanting to retreat into the wilderness to escape from society and enjoy nature and do things I actually find interesting.
That was meant as an eye roll, as in “if Amazon Seattle already considers this high-visibility project as being an arms-length away, then perhaps it’s not as important as they make it”
yeah, what the fuck. Maybe they are counting on the inevitable lawsuit to raise their profile before changing their name or something?
Sorry for being toxic but would that mean saying we shouldn't tell people to stop using Facebook will fall on deaf ears as well?

Ideally they would stop using Facebook but if people can just be aware of the horrors involved they can stop using it in full ignorance.
>There's nothing irresponsible about buying ice cream or anything else in a grocery store

That's a debatable point when you consider the context that these people, many of whom are perfectly capable of working, are living exclusively off of the labor of others, perhaps not entirely with the laborer's consent. Is it just to force someone to work without benefit for someone else else's survival? What about for someone else else's comfort?

Some reservations over such handouts are entirely justified. You have no right to force others to toil for your pleasure, that's a form of oppression.
Good point, though I tend to get too distracted on AlternativeTo. Not sure if it's the design or just too many options and not enough votes. Measuring alternatives on specific dimensions related to the problems with Facebook could be interesting!
It's great to see this blog post get published. Evan is one of the most creative engineers I've gotten to work with.

Go's structural interfaces are often harped on, but this is exactly a case where they are very useful. Perhaps an approach is to use named interfaces for variance in implementation strategy, and structural directives for usages as described in the blog post. I wouldn't discount how often this pattern comes up.
That's quite curious, because previously I thought the average intelligence was rising, to the point where the IQ had to be renormalized regularly for the mean to stay at 100.

This source [0] seems to agree with that view. What's the deal here?

[0]: https://ourworldindata.org/intelligence
Not like "extends" or "implements".

If a class implements all the methods of the interface (as seen at compile-time - same method name, arguments, returns) then that's it, period. Compiler will allow you to use it. Beyond that the interface doesn't "know" about the class and the class doesn't "know" about the interface.

So it doesn't matter the interface didn't even exist when that class was written.
If you're building a web app that absolutely requires a mobile component that can't be delivered via HTML5, then yes.

Simultaneously, mobile distribution platforms like the App Store have created an massive opportunity for creative developers out there.
I finished http://instantsprite.com. It's not really a startup, but it is an app that I was motivated by the startup sprint posts to finish.

I submitted it a few days ago, and got a few comments: http://news.ycombinator.com/item?id=1922845
Yowza.

([05]|[16][16]*[05]|([27]|[16][16]*[27])([27]|[16][16]*[27])*([05]|[16][16]*[05])|([38]|[16][16]*[38]|([27]|[16][16]*[27])([27]|[16][16]*[27])*([38]|[16][16]*[38]))([38]|[16][16]*[38]|([27]|[16][16]*[27])([27]|[16][16]*[27])*([38]|[16][16]*[38]))*([05]|[16][16]*[05]|([27]|[16][16]*[27])([27]|[16][16]*[27])*([05]|[16][16]*[05]))|([49]|[16][16]*[49]|([27]|[16][16]*[27])([27]|[16][16]*[27])*([49]|[16][16]*[49])|([38]|[16][16]*[38]|([27]|[16][16]*[27])([27]|[16][16]*[27])*([38]|[16][16]*[38]))([38]|[16][16]*[38]|([27]|[16][16]*[27])([27]|[16][16]*[27])*([38]|[16][16]*[38]))*([49]|[16][16]*[49]|([27]|[16][16]*[27])([27]|[16][16]*[27])*([49]|[16][16]*[49])))([49]|[16][16]*[49]|([27]|[16][16]*[27])([27]|[16][16]*[27])*([49]|[16][16]*[49])|([38]|[16][16]*[38]|([27]|[16][16]*[27])([27]|[16][16]*[27])*([38]|[16][16]*[38]))([38]|[16][16]*[38]|([27]|[16][16]*[27])([27]|[16][16]*[27])*([38]|[16][16]*[38]))*([49]|[16][16]*[49]|([27]|[16][16]*[27])([27]|[16][16]*[27])*([49]|[16][16]*[49])))*([05]|[16][16]*[05]|([27]|[16][16]*[27])([27]|[16][16]*[27])*([05]|[16][16]*[05])|([38]|[16][16]*[38]|([27]|[16][16]*[27])([27]|[16][16]*[27])*([38]|[16][16]*[38]))([38]|[16][16]*[38]|([27]|[16][16]*[27])([27]|[16][16]*[27])*([38]|[16][16]*[38]))*([05]|[16][16]*[05]|([27]|[16][16]*[27])([27]|[16][16]*[27])*([05]|[16][16]*[05]))))*

More easily calculated as:

/(0|5)$/

(divisible by 5 in base 10)

Interestingly... doesn't seem to work. Attempting it in JS, .test(input) always returns true, but .exec(input)[0] is not "" if it is divisible. Usually. "106" returns ["10", "10", undef...]. Anyone care to test in another engine? `/...theregex.../ =~ input` in irb is always returning 0, though mine works fine...
Your view attributes much rationality to how people are acting.

My view of it is that humans routinely miscalculate risk and behave quite irrationally from a risk-minimization perspective. At the same time, a public that is largely apathetic about politics in general is easily moved by fear-mongering, us-vs-them rhetoric, etc. -- like any fad, terrorism simply captures the imagination of some people.

Attempts to stop the overreaction suffer from the typical challenge: the majority who don't care about terrorism care about the issue less than the vocal minority for whom it's a very big (as in scary or as in profitable) deal.

Also, due to the government's habit of paying for terrorism prevention, the typical corruption/overspending problems happen far more easily than they would in a decentralized system. And, due to the political nature of terrorism prevention, our leaders work to minimize the extent to which they would likely be blamed for an attack rather than working to make us feel/be safer.
This is destructuring (a new feature in ES6, the upcoming version of JavaScript). There's a great in-depth read on how it works here: http://www.2ality.com/2015/01/es6-destructuring.html
I see you've grabbed some examples to show the simplicity. Having to write the insertion sort algorithm to sort your basic types is not simple.

Having to tell the standard library how to swap data in a slice and to obtain a slices length is simple... why doesn't the standard library know how to work with basic types? This way I don't end up writing by accident:

func (a ByAge) Swap(i, j int) { a[i], a[j] = a[j], a[j] }
Having never seen any of these videos, that video is weirdly engaging. It has something logical to it, but its way more abstract than a true story. Its actually really fascinating that there is some thread to follow along with and a certain amount of surprise even if it is largely meaningless. It makes me think that once you've memorized all the narrative and visual tropes of western media, your bog standard reality TV is probably as intellectually engaging as videos like these. Which isn't to say its okay for kids, but that you probably shouldn't be watching daytime TV any time soon if you value your own brain as much as you value your kids'.
Because the other end in E2E is your friend's phone, not a server. We call end-to-server encryption "in-flight" encryption.
Once I un-subscribed from all the defaults and main stream subs, content got wildly better for me. I still appreciate being able to pick what subreddits I see, instead of a big prediction engine pulling from different subs I may like.

Huge ones like /r/askreddit are like tabloids. Same with any big /r/*advice. Niche subreddits are so good though.

Ex: https://www.reddit.com/r/cyberDeck/
The main argument of the article seems to be that some runners get more benefit from new shoe technology than others (which may be true, and may or may not be mitigated by other companies developing different variants). However it makes me wonder whether this hasn’t always been the case... if shoes had been banned in the sport entirely then probably other people would have been successful?

Also the comparison with tennis is a bit silly... you won’t get far in tennis without a racket that costs a whole lot more than any Nike shoe...
You're like the fourth person to tell me that. Maybe I should listen...
Can somebody explain the advantage of Streamlit over sharing a Jupiter notebook with interactive widgets? Are data scientists sharing models and data a relevant use case?
That's why I love Buddy (buddy.works), you build your CI pipelines with a UI, all the config and logic is all easily configurable without having to know the magic config key/value combination. Need to add a secrets file or private key; just add it to the "filesystem" and it'l be available during the run, no awkwardly base64ing contents into an environment string. Unfortunately I have to use github actions/CircleCi for my iOS deployments still, but I read MacOS container support is coming soon.
Been doing this a long time. The device is the compromise.
I'm a bit worried about my trip to the US in the spring. I'm going to make a point of having a hair cut, not carrying any suspicious books, cultivate a super submissive nature against authority figures (of which I carry a well-deserved suspicion) and practive my TSA-smile.

Shouldn't have to be that way, but I really don't want to give any indication I am anything but White Bread.
Life's short.

Fuck it. I'll do what's fun.

I get the point, if the end goal is the reason, don't get caught up in hype. But I won't lie, my job is not a end goal, as a employer never believe this.

Plus there's complicated issues like a bored worker is a bad worker.
I read about QuickChck over 10 years ago in Uni, I was just reintroduced to property based testing this week in HelsinkiJS meetup and now this Python implementation hit Hacker News.

Question: most of my backend code is rather dull CRUD and business logic code. Are there good tutorials about randomly generating objects with a few of fields and relationships between them and testing business logic using hypothesis?
When I play blackjack it's for a basic bet of $10 or $20. That way even after a few splits and double downs I'm not "betting the house". Couldn't you find a way to still enjoy gambling w/o betting thousands of dollars on a hand?

So I guess it depends on how much $HOUSE_MAX was. Around here the Indian casinos are atwitter at $100 bets. In Vegas I could be playing with a bunch of $10 players and nobody bats an eye if someone walks by and, in the middle of a deck, bets $1000 on a single hand, and then goes on his way.
My hypothesis about no-patch is that there is no incentive. You can't report an audio problem like you report a software bug. I can't imagine a situation where the kind of audio problem described by the author is show-stopping.

Audio problems are also subject to subjective judgement. What one considers a problem might go completely unnoticed by other people. Heck, the content creator may even argue that it's part of their creative output.

In some cases, there is less ambiguity. e.g. you really shouldn't hear any voice when the track says "instrumental", but does any consumer protection law care about that? Like, in Hong Kong, we have "Trade Description" laws that protect consumers against merchandises or services that don't match the advertised descriptions, although I have no idea if those laws would help here. What judge would not roll their eyes and tell you to just settle out of court? But if you settle out of court, I'd bet their laywer would try to add gag terms to the settlement. Are you really gonna allow yourself to be silenced in order to get a 10.99 USD refund?

Maybe we could create incentives if 1) audio hosting platforms actually allow listeners to report audio problems in a _systematic_, _publicly visible_ way, like you would file bug issues on GitHub, 2) leaving the problems unfixed will lead to demonetization of the content.

Also note that the performance of art seems to become perversed when (big) money becomes the incentive. If you know where to look on the web, there are groups who fansub anime and who will go out of their way to re-encode original bluray releases because they think the audio is out-of-sync, or because they think the picture of the original looks like shit in terms of colour temperature/lightness/saturation/gamma. And they seem to do it out of the passion of sharing the joy of watching anime.

While fansubbers have total freedom to decide when to do a patch or re-release, your professional audio engineer working for Warner Bros (again, hypothetical) doesn't have that freedom. If they report a problem about something already released, the first question they get asked by their boss would be "does this hurt our bottomline?" And probably overwhelmingly often, the answer is "no" because we don't have a system that builds the right incentives.
I’m in charge of my teams dockerfile which literally runs all our crap locally for our developers. I was too lazy to care so just put in our O&M budget docker desktop (our dumb IT doesn’t let us run Linux. Half WSL. Half macOS (bleh)). Now I’m wondering if it’s worth the effort to switch. But it’s also hard to say we run podman on the desktop but docker in prod. Anyone run podman on gcp? Is that a thing?
Agreed. You can apply most of it.

- Speaking = Power
- You influence people by speaking for them to listen.
- Knowledge = Expressing it
- Non-sense speak = Non-sense thoughts
- You speak because they are important.
I believe it means actually having to do work.
Completely agree with this. I've been trying to set something up with the Trello API all weekend and it's been a nightmare.
After posting about Linkwok on HN a few months ago, we received tons of feedback, mostly directed at clarifying its workflow and UI. So with that in mind, please welcome the new and improved Linkwok: A complete Search to Conclusion package.

Linkwok is designed to save you considerable time, effort and often money in conducting your research either as an individual or a team.

Use the FREE web app, and its accompanying Chrome extension to move efficiently through your research by seeing what others have found useful, organising individual elements on a canvas and presenting it over Powerpoint.

We are a very small team of dedicated developers trying to create something that is useful and free. We believe that we've come far, but have a long way to go Please help us with any feedback that will help us make Linkwok work better for you.

PS: We're hard at work creating a better video to help explain everything better :p
PANARCHY
The top 10% already pay 65% of the federal tax burden. I'd prefer to see a less "punishment" motivated approach and make up the difference needed with strategic budget cuts.

I'd also prefer to see a move away from the divisive progressive income tax towards a tiered national sales tax. We should be taxing luxury items the way Singapore taxes automobiles.

This would allow low income earners to keep their entire paycheck, encourage thrift for the middle income earners and destroy the tax evasion mechanisms high income earners employ.
This is why I do not shed any tears for the decline of most newspapers and TV news.

Even the "good" ones tend to be hit or miss, or not call out BS when it is so obvious. The Economist seems to be one of few publications that I can consistently read without getting frustrated by emotional journalism or poor logic.
I work with some people in the static analysis industry, and I'm told that Toyota did have static analysis tools that would have identified a number of these issues; as a particular example, recursive functions, which are verboten under the MISRA rules they should have been following.

I heard to a less reliable degree that the tools had been used, and results ignored.
Author here!

If you have any requests about what you'd like me to cover, or any parts of pycharm that you find hard to understand, please don't hesitate to leave a comment :)
BMW at $260,000 as Singapore Tax Keeps Cars for Rich: http://www.bloomberg.com/news/2011-02-16/bmw-3-series-costs-...
In Java, you can think of lambdas as sugar for anonymous classes. All problems and benefits that are present with anon classes should manifest with lambdas as well.

However, one clear advantage of lambdas is that they reduce verbosity of anon classes.
the big difference here, as a few others have pointed out, is that the guy who stole this chips is an outlaw pursued by the police and the casino is aware that these chips were stolen.

the laundering thing you described actually worked on a large scale for the MIT blackjack team (at least according to "bringing down the house"), but that's because the casino was unaware that these chips were illicit (it also helps, of course, that the MIT blackjack team members were operating within the law - there's a huge different between the casinos wanting to bar you and the feds wanting to arrest you, a fairly major point lost in the movie adaptation).
I was thinking exact same thing since I would love to sell NASA an awesome web2.0 smart-phone-enabled awesome calendar.
I've heard this kind of quine called an "ouroboros program". This one goes through 11 generations it is said:

http://asiajin.com/blog/2009/09/22/uroboros-programming-with...
Hey Rich, good luck on your move to the Bay Area and thanks for starting a blog to provide more insight into your mindset. One quick question, how are you getting the expenses down to $148/month, that will barely cover utilities at any 1-bedroom apt. in the city.
Is there even a demo I can try for free? Sorry, but chances are just as high that the library costs me time - time I invest to understand it, only to eventually find that it probably won't do what I need, and I can't easily fix it or extend it. (Playing devil's advocate here).

Even if it does what I need now, who knows if it does what I need in two years? If it were open source, somebody could pick it up and keep developing it. Now if the commercial dev just abandons it, my investment in learning "impact" was wasted.
We were planning to add webcam support, good thing to see it'd add value.
Sure you do. Easy to confirm, just fire up a console on github.com and enter document.cookie. What runs there can run on the page in injected code.

Sess cookie for github is km_ai
It's "motherfucker," but said in a joyous way. The name was inspired by a David Blaine documentary marathon. After blowing getting his mind blown a magic trick, some dude called David Blaine a "magical motherfucker."
The awk command

cat sales.csv | awk -F',' '{print $1}' | sort | uniq

can even be further simplified to

cut -d, -f1 sales.csv | sort -u
Something similar happened to me during interview:

The interviewer said something like: "What are your prospects for the future?"

My response was something along the lines of coding until I die, since I love coding.

His response to my answer still baffles me to this day: "Nah, you will end up as a manager sooner or later." He said this with such a conviction, as if it was the ultimate goal of being a code monkey.

Thanks but no thanks, I think I will keep coding.
"""I always think if your site can't be host by GAE, then it's probably not very scalable at the first place. I"""

Well, your site is basically one static page. Do you really feel qualified discussing GAE?
The implicit assumption behind the article is the premise that users with insufficiently advanced devices can be ignored.

How do you right-click on a single-touch touchscreen?
The New Yorker predates its issues, as they might theoretically take until Nov 29 to arrive in some people's houses (over here in brazil it takes longer than that, usually). It's an odd practice, but most magazines do it in some way.
I wrote code to do this in python for a project. The biggest problem I ran into was that if you wanted the full history of X/Y/Z.json to contain the full history of Z.json, even if it had been moved, it ended up requiring two parallel structures. One structure with directories for the tree data, one for the raw data of that node.

My intent was to use it in a document system using Operational Transforms, which side-stepped the issue of concurrent access; only the canonical representation of client data would need to be written, so it was serial writing