skysight-inc/HackerNews huggingface dataset:
The author's courage in admitting that she doesn't understand is admirable, although I think it would have added more to her story to talk about what made her more willing to put this level of effort into CS as opposed to her original major.

As an aside, I think hacker culture extends itself into university CS culture in the sense that it's pretty much mandated to figure out a problem on your own and RTFM before asking IRC/forums. I guess that kind of thing works on the internet but not so much in real life - I struggle from time to time at work to admit that I need help.
I'm not sure what you mean by "corruption of the government", but it is legal because your money belongs to you, not government, and you have full right to do with it whatever you please, including investing them in ways that generate less tax income from the government. Banning that would require implicit assumption that your money do belong to the government and you are restricted in using them only in ways that benefit the said government. That would be corruption to me.
(n)mh is the Unix ideal.

Once you are "inside" an app instead of your shell prompt, you are no conforming the Unix ideal.
Contributing to what
ChrisDutrow said, SO used to be great for asking questions. However, they retroactively changed their points value for asking questions. I found this to be a bit counter productive.

I realize that they are trying to "fight the people gaming the system." But I just felt like asking questions wasn't valued well enough. My participation dropped on SO like a rock after that.

I wrote an article about SO 4 years ago, and many of the points still remain and there are newer issues: https://theexceptioncatcher.com/blog/2012/09/stackoverflow-i...

My participation in SO now is primarily focused on asking questions only when I have something I've been struggling with for quite a while. By that time, I won't get an answer on the questions because it's so obscure.
when I had the idea for this project, I searched and found most of the emoji libraries had hosted on github, with their file names in written codepoint. so I wanted to just put the emoji in url and get the image for the emoji. also I wanted to resize the emoji images on the fly, where the others had hard coded sizes like 32,64,128
Which introduced a different issue allowing incidents such as the Germanwings and EgyptAir crashes and maybe even Malaysian MH-370.
Aspose.Newsletter April 2016: Powerful APIs for Working with 3D File Formats
I'd debate that a bit. Personally I hardly had to ask any questions when I was a beginner, and I'm not even particularly good with Google. Relevant vocabulary can be picked up from tutorials quite quickly.

Though Google does seem a little worse at programming queries now than it was circa 2009. :/
I took the same class at UMN and enjoyed it, especially now that I'm getting more into functional programming in my career, but I was very frustrated with the program overall because of the lack of real-world problems. That was back in 2000 so maybe it has changed, but I can confidently say I learned most of what I use on a day to day basis after college, not during.
I support $40 an hour minimum wage. This is because I also support robots doing all jobs.
The Litmus templates are really well made and look great in all email clients I've tried them in. https://litmus.com/resources/free-responsive-email-templates
This is one of the roots of the Middle East conflict: the British offered Hussein bin Ali, Sharif of Mecca Arab self governance if they would revolt against the Ottomans -- and gave them help in the person of T.E. Lawrence. Then agreed with their French buddies (Sykes-Picot) on how they will split up the region. The Syrian civil war can easily be traced back to this agreement. Then, to crown this all, the British issued the Balfour Declaration where they promised Palestine to the Zionist movement.
I think the point she was making was being very public about the fact she didn't understand. Stating it loudly, rather than sheepishly speaking with the TA and being ashamed.

Being upfront about it and basically letting everyone in the room know she was having a problem broke the ice. There can be a palpable pressure in social situations to conform, like being in a library... the silence of everyone almost has a presence of its own.

In a computer lab, it can be like that. Who knows why the TA changed their tune, maybe they were themselves shamed by their own lack of ability to convey understanding. But for the rest of the lab, once the taboo was broken, apparently the innate desire many people have to lend a hand surfaced.

I can't say why, I wasn't there, but in this case it worked out. People act differently in the anonymity of a crowd, and that is what you basically have in a hushed lab environment. Her plea for help / public admittance of vulnerability was apparently enough to shatter the crowd psychology and the innate desire of individuals to help other individuals came forward.
What's the reference point here? To my mind a lot of the advantages in Postgres are around it's mature tooling for backups and replication; autovacuum is more than sufficient for fairly complex workloads when it comes to data file maintenance, and really the only somewhat-sore point is horizontal scaling - but even there, a lot of the pain comes from there being multiple viable solutions in-the-wild, with none having decisive buy-in across the userbase, and as such no out-of-the-box solution in the standard DB (which is, happily, recognized by the developers and very much a focus of current development work).

But, I'm comparing with mostly MySQL(/it's myriad descendants) and the whole NoSQL ecosystem; for all I know the tools available for PG are hopelessly primitive for people coming from of Oracle/IBM/SQL Server/Ingres/Teradata(/others? I pretty regularly learn of new DBMS engines with shockingly large companies and engineering orgs behind that that I've just never heard of; I'm sure there's plenty more.)
Does the delta between lowering the cost of labor (assuming people will work for the lower wage) cover the tax increase?

Labor, in the service industry, is already handled like a variable cost. If you expect a rush, you increase the number of people on the shift and if you don't, you schedule the bar minimum. If there's mismatch between staffing and projected work - and say schedule too many people for what turns out to be a dead shift - they get sent home. Changing the minimum wage from $9/hr to $15/hr reduces the number of people you can run per shift and keep your costs the same (assuming all other inputs continue to cost the same). I.E. It costs me $30/hr to keep two waiters when I could run 3 for $27/hr so I cut back one waiter per shift.

Where the business gets in trouble, in terms of survival, is the price of fixed inputs. They need to buy goods and services that will fluctuate in price and if the cost of doing business goes up due to higher fixed costs in the form of taxes, those costs will reverberate through the chain. The food supplier will raise prices, the restaurant will need to raise its prices to afford the food, which will impact their ability to attract customers which impacts their ability to derive revenue to pay the food supplier, their tax bill, and so forth.

Similarly, if businesses are having to charge higher prices and wages are depressed due to UBI + <other wage>, will people have the money to afford goods and services at the higher rate?
Oculus Rift terms and conditions allow Facebook to use [data] for advertising
Well is it? Or isn't it? Why do you say, "according to [me]?"
Exactly, for a company like Walmart, they know that (a) small competitors are not as efficient has they are, (b) small competitors will not able to invest in large scale capital projects to ameliorate wage increases (eg. robotics, self-checkout, etc)

It is simply a game of eliminating competition.
That seems like a cop out to me. Textbooks are by far the best resource you have available for your class work and even though they take the most effort, they tell you exactly what you need to know enough to know what you don't know.
Sure. It depends on the program, definitely, but at my university, the CS curriculum was extremely abstract focusing more on logic, algorithms, compilers, basics of hardware processors, language design and software design theory than any practical implementation of the above.

In fact, outside of the introduction class, there was never actually a place where they sat down and said "here is where we teach you how to program". The professors mainly taught theory and had the assumption that we'd be able to put it into practice if needed.

Luckily we did have lab assignments, and multi-month group projects, so you would pick up some vestiges of professional programming within the 4 years you were there.
> "it's trivial duh"

I've learned to not ever say "this is easy" to anyone when I am teaching them something. That sounds perhaps like an encouragement -- like, "you are almost there" kind of thing. but it often ends up as an insult to their effort or intelligence.
Yup. I used it for a few years. It also had a Tk-based GUI. Every email message is a single file. "Folders" are directories. So you can use your usual text-processing commandline stuff: grep, sed, awk, etc.

http://rand-mh.sourceforge.net/book/mh/shomes.html#WeOBeYRe

Using MIME or GPG required a little configuration (mostly preset properly) which hooked external programs to preprocess before sending or displaying the message.
It's almost as if there are two separate types of people. People who learn by reading books and people who learn by asking questions. They do not always understand each other and maybe it's bad.

However, I can attest that reading books (also, googling these days) and never asking basic questions is a perfectly valid way to learn.
Full disclosure: I'm a working female software developer, blah blah blah...

> I want to be that girl who no one thought she could, who had all the odds against her, that everyone thought was dumb, and yet she becomes incredibly successful in computer science. Then I want to turn that success around and use it a pedestal to expose every wound, every failure, every painful vulnerability I have, even with my hands trembling, because that is what I believe is what motivates women and gives them the strength and personal recognition of ‘if she can do it, so can I’, which then lights the spark to explore the field and helps women find their inner-strength to go for it.

I think this is a great sentiment, but....and maybe I'm just not hanging out in the right parts of the internet or whatever...but I see women writing about these meta-topics of "being a female programmer" far, far more often than any actual technical aspect. Maybe they just aren't upvoted to the top of HN or r/programming, heh. I've had a hard time articulating why I feel so prickly about promoting specifically "getting more women into tech", because I feel like it's starting to become this giant show pony. I think it's great that this lady is going into this field, but I feel really weird about this characterization that CS is supposed to be so super scary and women need special hand-holding and encouragement to attempt it.

I started programming when I was a kid because I wanted to make stuff. Nobody told me it was supposed to be hard or supposed to be for boys or whatever. I think we're doing a huge disservice by promoting this idea that programming is some super elusive thing - if we want more women in programming, then let's talk about how cool it is to build stuff, instead of how we can be role models or whatever. Just the opinion of one "woman in tech", I don't speak for anyone else but myself.
I agree that is a problem. I suspect it's receding as the percentage of restaurant sales paid by credit card increase.

People who dine at restaurants that likely commit wage theft might tip for moral reasons, but to me, it makes more sense to boycott those restaurants and communicate to managers and owners the reason why.
I participate in a circle of people who e-mail new questions that we ask (and answers). If we think the question needs work, we make suggestions. If we like the question, we up-vote it.

The extra up-votes help with other people taking the question seriously and it actually getting good answers.

If you or anyone else wants to be included, shoot me an e-mail (its in my profile)
Yup. Nested labels like "top/med/bot" get flattened to "top-med-bot" for search, e.g. in:top-med-bot keyword
Sometimes that's true. But often it's enough to google the actual error message which is returned to you and people still don't do that. I don't think that's a case of beginner not knowing what to google for.

https://stackoverflow.com/search?q=%22NoneType+object+has+no... - ~900 cases of people spending time to upload their code to SO and waiting for answers with explanations, rather than trying to understand what the error means. (or even reading the first link that comes up in "Questions that may already have your answer")
In an academic environment, there is nothing special about CS that makes it different from any other subject as far as the experience of the OP is concerned.

In the field, however, I have found more than a few "computer professional" environments which are clearly hostile to beginners/newcomers. I suspect this is because people tend to think that the way they learned is the "best way" to learn a topic. In computer-related professions you have a lot of self-taught folks who got to where they are by hard knocks and constantly facing a profound lack of guidance. These same people often feel that newcomers should undergo the same suffering they did. It's human nature, but it doesn't have to be way.
for the sub domain part you can use a wild card sub domain

https://en.wikipedia.org/wiki/Wildcard_DNS_record
They are probably just using a quickstart file that has all of those things included as defaults.

I have a repo I clone for my one-off projects with all the boilerplate I could possibly need for a weekend project. None of the projects actually end up using all of that stuff, but I'm not bothered by the lack of professional optimization in my "for fun only" projects.
You're ignoring that R2P[1] exists. It's far too rarely acted upon but that's international politics.

[1]: https://en.wikipedia.org/wiki/Responsibility_to_protect
Ask HN: When vendoring for an OSS project, how do you handle licenses?
This question seems almost too simplistic to ask, but I wanted to check with HN what the current best practice was.

The context: I'm considering vendoring a couple of dependencies, both under the MIT License, in a project I intend to also publish under the MIT License.

One of the requirements of the MIT License is that the original licenses must be preserved and accompany all copies. Is it sufficient if I preserve them within the src/vendor/ folder? Or do I need to concatenate both their licenses to the LICENSE file in the root folder of my project?

I intend to deliver this project as a source download only, if that makes a difference.

Finally, how do people who vendor projects with different (and perhaps incompatible) licenses deal with it?
I can't compare, but I can comment on Sendy. I use it to send about to a list of about 5k.

It has never sent to completion on its own, it always requires me to monitor the queue so I can hit the 'retry' button once it times out which usually happens after about 100-150 emails have been sent. I've actually scripted this action - so now when I send, I hit the send button as well as fire off a shell script that spoofs the 'refresh' request. It takes about 10 minutes to complete the campaign.

I'll echo the other complaints about the quality of the code - it seems to suffer from a copy / paste syndrome as the database connection logic is repeated in every file, but it could also be that the author has obfuscated it as well. It does do a phone home and some other stuff via some base 64 encoded code. I've unwound it in an attempt to fix another issue I thought it was causing (it wasn't). Here it is if you are curious:

https://gist.github.com/fowkswe/20a7c4c03835de183ff68fe5ab1a...

I'll give Sendy credit for getting me this far, though I would like to replace it someday with something I feel I have more control over. Not sure the OP or the other suggestions listed here offer exactly what I'm looking for.
The TA assumed she had knowledge that she didn't actually have, and was basing responses off that faulty assumption - plenty of students are lazy and ask questions that they could answer themselves if they would just bother.

In my experience, if you ask questions and it's clear you're trying, most people will engage with you. But if it's a short form for getting a lazy, spoon-fed answer, that's when people disengage

My best brain-not-engaged story when I was a TA was a student who had to multiply 2 by 0.4. She reached for her calculator and I forbade her from using it (she was doing a major with a statistics component, so she could do this). She just stared dumbly at me until I couldn't bear it anymore and 'helped' her with "well, what's 2 by 4?". People like that will drain you until you don't care anymore. But a student who shows that they are trying, and you'll be more interested in going the extra mile.
I've often done this in situations where we're doing a lunch and learn, or another dev is demoing something to the team, etc.. Sometimes it's to make the presenter look smart, not yourself. Sometimes it's to know if next time you have a question about [product being explained that you know a little about] if the presenter is the person to ask, or the person to ask if you want to figure it out with.
See (n)mh:

http://rand-mh.sourceforge.net/book/mh/shomes.html
It's really about providing the appropriate forums and helping people identify them. It's not really appropriate to waste class time repeatedly explaining concepts that 95% of the class already understands. If a student is struggling with this, they need remedial help, which can be obtained by contacting the professor directly during office hours/after class/however it works at your school, contacting a tutor, finding a study group or downgrading to a lower-level course, among other options.

A stray "Wait, what does that mean again?" is no problem and actually probably helps a lot of people in the class who are too shy to speak up, but you can't let class time be monopolized by slow students. The slow students shouldn't be ashamed and should go get the help they need, they just need to be directed to the appropriate venue.

The same is true in programming generally. We need to make it easy to identify the appropriate forum for the issue one is having and then we need to encourage them to seek resolution there.

A way to improve SO would be to make it more obvious that the only questions that should be asked should be questions that are not Googleable, give a link to a "how to Google for programming help" guide, and when questions that violate this rule get added, include a direction to a helpful beginner's chat room or something along with the closure message.
climate activist, lol.
In theory, yes. In practice, it will be corrupted beyond that basic idea because there's no system/incentives to protect it from being corrupted.
Are you saying you're 100% comfortable sharing the details of all financial transactions you're a part of with "the world"?

Sure, your bank would probably want to inquire about the source of the cash if you were to bring a briefcase of cash to the branch for a deposit. But that would be private information sharing "channel" between you and your bank - both the source of your funds and the fact that you have them in your account is reasonably private compared to a wide open ledger sitting out there with all of the txs from day one.
Google Pulls Taliban Apps from Play Store
More than a few Lenovo (was Google, was Motorola) Mobility devices require Lenovo to maintain servers in order for some of the carrier apps, their apps and other phone features to work.

Sidekick (Microsoft, was Danger) also has an enormously creaky, brittle server infrastructure that no one enjoys supporting but it's needed for devices also.

Know the risks when purchasing from a startup, and more so with dependencies on other peoples' servers for a product to function, because it can easily become SaaS-like (HWaaS?), as in this case.
The Panama Papers
From experience, I can say that university is a place that creates an atmosphere of fear in asking questions.

Ask a question in a lecture? The 100+ other people in the room are now staring at you like you're an idiot, despite the fact that most probably have the same question.

Ask for clarification on something the lecturer said? You've interrupted their flow now, and want you to sit down, shut up and ask after class.

Go to ask after class? 12 other people have questions they were too afraid to ask during class or couldn't and the lecturer doesn't have time to attend to all of you, and tells you to send them an email they won't read.

Ask a TA? Most of them are overworked and underappreciated which leads to them having a very low tolerance for "I don't understand" questions, which can lead to a brush-off answer like "just re-read the lecture material."

Ask other students? They either don't know themselves or cannot explain it in an appropriate or correct manner, or simply cannot be bothered to help you because "this is too easy, why don't you get it!?"

Now of course, not every lecturer/TA is like this, and I had some wonderfully helpful and open teachers while I was in university, however, both myself and other people I know from across many different schools have had numerous experiences like this.

And here's the other thing, as a student I've been guilty of doing the exact things I describe above, either out of arrogance or simply down to the fact that I was slammed with other classes I just didn't have the time or patience to help others. Is it something I am proud of? Of course not, looking back now I can safely say I was a dick.

It gets even worse for women, when you differ from the majority of others in your class simply by genetics, it creates a feeling of not wanting to stand out or give other people a reason on top of their sub-conscious bias to think you "don't belong here" or "aren't as good as the rest of us."
One thing I like about UC Berkeley is that we have a CS 10 class which is open to anyone and is actually pre-CS. It teaches the very basic concepts of programming with Snap, a drag and drop programming language. That way people who haven't had that entry level stuff might catch up. A lot of it is reiterated in the first CS class too, in Python (a notably high level scripting language), but they also move on to some interesting things like recursion.
I'd be willing to assume that the instructor and authors of the curriculum, after many years of observing such phenomena in the wild, might've anticipated your exact assumptions, and designed against it.

But yeah, on the first day of school, children tend to puff up their egos and put on airs, and some people might've exuded a soon-to-be-deflated sense of overconfidence, when they weren't actually very experienced after all.

Both are possibilities. BTW, just as those supposedly inexperienced students found out, you know what happens when you assume... right?
As a teacher, a bigger problem that I have is not that people don't understand it, but that people don't care when they don't understand it. Many students seem to be just attending to a class because of peer pressure or something. They can just glide it when it doesn't click. If you feel sad when you don't understand something, I'd say you're already very motivated.

Very rarely, a teacher can press a student's button to make them actually interested in the subject (or anything related to the subject), but I feel this mostly happens only randomly.
Hats off for the gimp-architecture review

Being just a little bit hard-arsed about these things can pay off dramatically.