skysight-inc/HackerNews huggingface dataset:
That's absurd. The government can guarantee equal speech instead of allowing some speech to dominate everyone else.

How can the 1st Amendment be protecting the voice of the poor if they have no avenue of expression? And when their views are beaten down by the few rich. That is not at all in the spirit of the first amendment or of democracy.
Linus Torvalds had a meltdown over a pull request
As a follow-up on the discussion from last week regarding the purchase of the Weather Company by IBM, IBM has released the first API service based on the data from Weather Company.

From the documentation:
"The pricing model is based on daily calls to the Insights for Weather APIs that are charged to the client monthly. You can test the weather data in your applications for any geographic area, forecast type, or time series observations with only a restriction on number of calls. The Free, Base, and Premium plans can be purchased without a contract. These plans allow your app to make 500, 5,000, or 50,000 API calls per day respectively."
In my similarly long experience, I have discovered that it's OK if the tools that you use nearly every day are "arcane", whether they have a GUI or not. Any time invested in getting to learn the tools will be paid back in efficiency later down the road.

As a simple example; an avid gimp user will not click through menus for most of the common actions, but will rather use keyboard shortcuts. It is no different for any CLI environment where you need to memorize a bunch of programs.

It certainly would be nice if your very first early start would focus more on the actual programming, and less on the weird abstract environment that most of us work in. But once you're hooked on programming, and that probably happens quite fast if you are into it, I find it hard to believe that you would not be willing to spend time to optimize your tool usage. The CLI does not get in your way there at all IMHO. The old unix philosophy of having a bunch of very simple tools that do one thing well and can be combined, is very useful in the day to day working environment.
Right or wrong, I usually start the year off by having the students install the OS on their lab workstations. It is a hassle, but I think it helps. Some people need more help than others, some hit the ground running having had prior experience. They'll install Python libs, various software packages, various types of software packages (from OS repo, Java, WINE, github, etc.) I try to cover the most common cases. They install Windows in a VM x2 (XP and Win7), and then install some flaky old Windows software that only likes to run in XP (PLC software), then they'll make the hardware work through the VM. Nearly everything we do could be done from the CL or from a GUI, but disseminating the instructions is accomplished most quickly using the command line.
Life-work balance is important until you retire.
I have a small anecdote about this.

In the last couple of years I've had few people ask me 'how can I write a program with a GUI.' And I give the advice, 'Download the free version of Microsoft Visual Studio for C# and select new project, windows forms' and then start mucking around.

All of them were convinced by others to use qt and C++
All of them gave up after a week or two of no progress.
I think you have it backwards. Someone has pre-anticipated 99% of everything you will ever do with a computer, no matter who you are. And if you don't take the time to learn the things that let you do these things in one minute flat each:

comm -13 <(./foo | sort) <(sed 's/ //' < bar | sort ) > foos-not-in-bar
awk 'BEGIN {while (getline < "/home/ubuntu/foo/bar" > 0) {sym[$1]=1}} ($2 in sym) {print $0}' sizes | sort -rn
join -v2 <(cat ../foo ../bar | sort) <(sort ../baz) > quux
zgrep -n " XYZ," /foo/bar.out.gz | awk '{print $0} END {print NR}'
./configure && make

...then you are going to spend an hour writing each one of them in Java or C++ or some nonsense like that and then debugging it. With Python you'll get it down to fifteen minutes each, maybe.

Now, I'm not going to claim that the command line is the only way to do these things (except for the last one). SQL or Excel or probably REXX would work too. But take advantage of the massive body of software that's already out there that can solve the 99% of your problems you have in common with everybody else, so you can spend your time mostly on the 1% that is your research.
Sort of. I taught middle-school students programming using Scratch (and a whiteboard) for three summers, and found that its interface of dragging and dropping blocks of code worked well for teaching programming fundamentals (conditionals, loops, functions, events, etc) without the hassle of a command-line.
Maybe.

But if you can explain how overturning Citizen's United wouldn't run into that problem while this idea I'd find that helpful.

OTOH, Libel in the US is already a thing. I'm saying extending those laws to make "the American people" a group that has standing, and falsehoods something that has harm. There is some existing precedent for that under libel.
Microsoft: OneDrive storage no longer unlimited
> It collapsed two countries and nearly got a third

So that's nothing, now?
The women I've known who "attempted" suicide weren't really trying to kill themselves. It was either attention seeking behavior or an attempt to punish people in their social circle. IMO it's more a question of intent than method.
What is the typical behavior (behavior in terms of market dynamics, and impact on orderbooks) of market makers in up trending markets? General question, not specific to bitcoin.
In general you're totally right!

In this particular case though, note the title of the article. Wouldn't it be much more convincing as "A Superior Alternative to Slack (Which Happens to be Open Source)"?

EDIT: You're second point definitely does apply here though.
I may not have been clear in my earlier reply, but I am not really talking about inflation.

Rather, I am providing an example that demonstrates the futility of expansionary monetary policy when an economy hits the liquidity trap.

I agree that Japan's economy is not deregulated in the sense that there is a high degree of nepotism between politically-connected families (especially those that have ties to organized crime or right-wing nationalist groups) and elected officials.
Damn... This is A W E S O M E! Congratz to the team! Feedback: It should be easier to change between apis. Doing this using <select> is terrible for the user. It really should be a sidebar or something like this.
man pages are horrible.

I think git ( all version control, really ) would be conceptually easier to grasp with a visual representation.
It still too tricky to do things that make people, that don't know much about computers, excited about programming. Things like the C64, DOS or Qbasic were much "simpler" and of course the expectations were already lower. I would recommend something like Scratch or Processing instead.
Bragi Dash – more than just wireless headphones?
Is there a layman's guide to this whole. Does Cortana sends only explicitly told to it or everything I speak in vicinity of computer. Also, if I create a text file notepad that uploaded. My email, contacts, photo, messaging all already live in cloud. I am ok with Cortana having some access as long as I am aware of what it is.
I've always had people who wanted to learn programming become so bogged down in the tools around programming

Bogged down in an editor and a compiler?

When first starting out, there are two tools.
How much if any of this is just bike shedding?

I'm all for not pulling in useless broken code, but why the public rant?
SEEKING WORK - Remote

Highly skilled at:

* Django and full-stack web development (8+ years)

* System administration (Debian Developer, etc.)

* Almost any open source work (see https://chris-lamb.co.uk/posts/free-software-activities-in-o... for examples)

If you are in search of a reputable software developer with a track record of producing high-quality and maintainable code, please get in touch to discuss your needs. As former Technical Architect at Thread.com (YC S12) and Playfire.com I was responsible for two major Django codebases, receiving acclaim from my peers for scaling both the site and the codebase in a maintainable and reliable manner whilst still delivering features at an extremely fast pace.

In addition to significant development on the products themselves, I was sole system administrator, deploying servers and performing low-level diagnostics to investigate performance, security and configuration issues. I also introduced quality assurance tools such as configuration management (Ansible, Salt, cdist), continuous integration/deployment (Jenkins) and code review to detect mistakes and regressions as early as possible.

As a freelancer, I have debugged, designed, and implemented projects in C, C++, Python, Java, Bash/POSIX shell, etc., and I also have assisted technical teams with their infrastructure and architecture so they can deliver better results faster. Native English speaker.

Github: https://github.com/lamby

My open source projects: https://chris-lamb.co.uk/projects

Homepage/writing/about, etc.: https://chris-lamb.co.uk/

Contact: chris (at) chris-lamb.co.uk
I strongly disagree with the author's position. I think it betrays bias in favor of computer science as opposed to software engineering. The stereotypical computer scientist operates in a an abstracted world. The physical limitations of computing only stands in the way of perfection. The stereotypical software engineer delights in maintaining real-world systems. The imperfect messiness of the world---its onslaught on all things man-made presents a beautiful challenge in itself.

I'll give you an example. A colleague of mine was stuck debugging a fairly complicated piece of Python Pandas data sciency code. In trying to help him, I realized he does not understand the difference between absolute and relative paths. In fact, I don't think he understood what a file is.

Now, you can say such details are bullshit. Who needs to know about paths? They should just work. I want to do data science, not poke around some arcane legacy operating system standards. I am an artist and a mathematician, dang it! Yet the greatest generation of computer scientists and software engineers always did both. People like Donald Knuth and Brian Kernighan made their own "bullshit" which continues to run our machines. For me, to encounter that history is to understand the delicate compromise between theory and practice. To become a great architect, one cannot bypass gaining intimate knowledge of building materials.

We are lucky that our systems contain the trace of their history. We should study it closely, instead of calling it bullshit. Without that history, our students and our colleagues are bound to play with prefabricated toys, while the true polymaths write their own compilers and operating systems.
Okay, a trivial and meaningless nitpick but a technically accurate one. Every general purpose computing machine that you can interact with and reprogram can be done by command line. Sometimes you have to plug another machine and use ITS command line to send communications to the original machine. I'll agree with you that microwaves do not have command line interfaces but calling them "computers" is quite a stretch.
I prefer to live in both of these worlds.

For example, when necessary, I'll do git stuff on the command line, but far prefer to do it in IntelliJ - with side-by-side merge conflicting, it is much better than anything on the command line. Seriously - blame, history, branching, diffs, etc are far easier in a graphical UI.

On the other hand, sometimes you need to drop down into the command line when (a) s@&t hits the fan or (b) you need to do something unique or complex that the UI doesn't handle. It definitely is worthwhile knowing (or being able to learn) sed, awk, tar, find, scp, rsync, ssh, dd, df, grep, egrep, bash, mv, cd, ls, and [fill in your favorite] *nix commands.

<tangent>In fact, I don't really understand how Windows developers do anything without installing cygwin.</tangent>

Net-net, I think a good developer/engineer has the ability to read and grok a man page, but the wisdom to use a simpler UI or IDE when it gets the job done.
it was indeed a piece of shitty code. Linus has right to protect his baby.
Some of the APIs solve very complex problems indeed, which require constant maintenance and development on our part. However, this is the accumulation of about 15 years of software development across various projects and programming languages. The underlying API functions are already battle hardened so to speak
if (overflow_usub(mtu, hlen + sizeof(struct frag_hdr), &mtu) || mtu <= 7)
goto fail_toobig;

Any code which relies on the short-circuiting behavior of a logical operator in such an obscure way is bad code. Linus may have gone a bit overboard in his critique, but, again, it was almost all criticism of the code, not the person. The only criticism of people is him calling people who like that code "out to lunch".

In short, I'm not seeing a meltdown.
> Can you tell me what all the flags of `tar -xvzf` do? Do you think you would ever discover that combination on your own from reading the man pages?

Is this some kind of sad joke? Of course. The tar man page is 8 pages long. You can read it in its entirety in ten minutes. I agree that it's far from ideal, since you ought to be able to figure out how to use a command immediately instead of after thirty minutes of rereading a man page over and over again, but "ever"? "Do you think you would ever discover that combination"? What is wrong with you?
If you think that's a meltdown, this must be the first Linus thread you've read.
Yes, simplicity... what a concept. Something the software engineering discipline seems to either loathe, be afraid of, or just want to avoid at any cost.

For example, why something as simple as 'git pull' has had so much confusion and discussion. Why there are millions of views on S.O. on just the differences between pull and fetch?

http://stackoverflow.com/questions/292357/what-are-the-diffe... ==> Viewed: 1080104 times

Good code doesn't just pass unit tests. It should be know-able, think-able, make some level of sense and generally be easily understandable.
> Politicians rarely lie outright; it's too easy to catch. They usually use equivocating language, or phrase statements that make you believe that they're committing to one thing when in reality they are committing to a much narrower band of truth.

Even then, if you look closely, there's still quite often a clear and outright lie, just cushioned in "equivocating language" (nice term, btw). It's just that all the cushioning tends to make pointing out the lie within seem like a petty thing to do. And in the case of politician-to-politicians they tend not to do that to each other because they recognize the game being played and rather not risk getting theirs in turn. If it does happen, it gets ugly fast, and both parties are worse off.

BTW I don't disagree that there's also a large amount of "equivocating language" going on, without any outright lies in the middle of it. Maybe that's even more common. Doesn't mean they don't lie, quite a lot more than people whose career doesn't depend on it.

Also (but this is just opinion) if "equivocating language" is used to deliberately give people / the public a wrong idea, that's not far from lying either. Even if it's "technically" true.

And then there's still quite a large number of politicians, on all sides of the spectrum, left/right, popular or not, powerful or not, that I have seen knowingly speaking some pretty damn big lies, and not seeing any consequences for it.
Docker is looking better and better... I recently decided to use Python 3.5 and Flask for a project. I didn't have time to learn them and Docker so I used a regular OS X setup. I thought the setup wasn't that bad until I had to share my setup with other team members... It took me 25 minutes to write up a wiki page on just the local environment setup. Pyenv, homebrew, pyenv-virtualenv switcher thing, setting python version, setting environment variables... After reviewing the instructions and going through this with two team members, I am realizing more and more that this is a major barrier to jumping in and out of different technologies easily for teams.

We take for granted our environment setups, until you need to have someone else jump into what you're doing. After I get this shipped I'm going to circle back and get it up and running inside Docker. If the promise holds true, one or two commands and you should be up and running for any environment... we'll see.
Oh I still like E. What I mean is, I'm disappointed that UI experimentation and development on Linux seems to have stalled. I'm having trouble thinking of the last time I saw something that suprised/impressed me there, maybe Compiz?
"BREAKING: Young woman called 'brave' for tearing down walls she alone put up"
This feels like a weird post to me, because it's got all this discussion about discounts and bundles and so forth but the part that the title indicates is its main thrust -- deciding what price is going to be "full price" for your game -- basically just says "make it $15 or $20, because that's what people charge these days."

Which, OK, but this feels like a subject that could use a lot more investigation. Why is $15-20 what people are charging these days? Does it vary based on genre, platform, theme, depth (hours of expected playtime), art style, phase of the moon? Does a high initial list price that you discount steeply later pay out better than a low initial list price with less dramatic discounting? There's so many angles you could attack this question from beyond just throwing a dart.

It's an especially interesting question given that Spiderweb's games appeal to a relatively small but quite passionate audience, so you wonder if he'd be better off charging higher-than-market prices at launch (when those passionate audience members, who are probably less price-sensitive, will be buying) and then moving quickly to deeper discounts once the hard-core fan base has tapped out.
I would certainly pay for an in-depth break down of a popular open source JavaScript app/library.
Linus’s Rant Rewritten http://catcode.com/comments/2015/cf20151101.html
This is just Linus being Linus - he's like this quite a bit. He's... very opinionated.
Trough of Bitcoin Disillusionment
Because if we're here talking about it, there's a chance people will remember to not do it next time.

Also it's cathartic.
Really the title should be edited to "Linus is uncharacteristically nice to a contributor."
That's why it's nice to have online systems like my BlockPy [1], or Skulpt/Pythy/CodeMirror.

[1] http://blockpy.com
There's tons of jobs out there for people with only a high school diploma. "Web Developer" is one of them.
Why the Mt. Gox debacle cost us 1.5B dollars
No, for intellectual property the word "stolen" is not appropriate.

(Well, unless you're talking about getting the courts to tell the original owner it's yours instead. Which has been at least attempted a few times.)
The 'bullshit' he is referring to is not the software itself, but its arcane interface. Think about the first time you tried to install a new version of python, only to have both version end up in your PATH somehow. Or run into permission issues and someone told you to run 'chmod 777.' As a novice, hours are easily lost trying to find the perfect commands to do something, and it often ends up being only one or two lines, something an expert would know immediately.

His job as a mentor is to empower his students to do research, not be sysadmins. Selecting a student based on a pre existing ability to use a tool drastically limits the pool.
Writing Happy Stylesheets (with Webpack)
Recent discussion of the article by Philip Guo that inspired this one:

https://news.ycombinator.com/item?id=10496788
It works if you log out.

Or watch the version on YouTube: https://www.youtube.com/watch?v=u4IsqmMqCEo
2015 has seen the lowest level of tech IPOs as a percentage of all IPOs in seven years

I'm thinking back to the Economist article of a few weeks ago about the future of corporations, discussing how much easier it is to raise capital and stay private these days, so there's not that much incentive to IPO and have to deal with all those quarterly earnings calls and so on.
Related: http://blog.xkcd.com/2011/02/18/distraction-affliction-corre...

I briefly used RescueTime's functionality for this. Eventually I actually settled on a separate browser profile for distracting sites. Basically, on my work Chrome, I only have productive sites, am not logged into any distracting services, or anything like that. I can use Chrome's user switching to open my "distracting" session, but the extra effort to do that helps me maintain focus.
Testing also included very expensive (SW license cost, now HW), cycle accurate simulators at Delphi. ASIC specs were implemented into C and hooked into the simulator. Prototype firmware was compiled and run on the CPU simulator and "board" (netlist of simulated ASICs). This helped discover bugs/spec deficiencies before ASIC tape-out (save $$$). Of course, it was all wrapped in a Tk "dashboard/test unit" GUI for the other teams to consume. Tk was actually quite a pleasure to use, especially when interfacing with C!

EDIT: It basically provided at least two implementations for an ASIC by independent teams. The ASIC guys would implement the real deal in an HDL and test it. However, full system tests where the HDL simulation is hooked up with CPU simulation were too slow. By implementing the same spec in C, you gain simulation performance and get a second implementation and set of eyes that can help find bugs.
There's opinionated, and there's toxic, and I would argue that this is far more of the latter. That said, people in powerful positions will often get away with this, without many larger negative consequences. With that much power and influence comes a lot more slack in the way one behaves.

I don't have much tolerance for Linus like behavior in places that I work day-to-day though, without a lot of protective social niceties.
<snark>

So you think people can tell evidence from mere opinions? (or, since you mentioned it, have a modicum of working knowledge on Statistics)

</snark>
It's not "silly filtering", it's pretty decent filtering, especially for what his business does.

I know that software and systems engineering has become wildly popular because of the money and Aaron Sorkin screenwriting, but it's good for hiring filters to select for those who have an internally driven interest in the subject.
It's not bike shredding. Development project almost always die by a thousand cuts that needs to be avoided one LOC at a time.
This is why I prefer Racket (and Dr Racket). It even comes with a great book: http://www.htdp.org/2003-09-26/Book/ . Although I'm not really sure if the material / exercises there can really spark the imagination of a child, it is fairly accessible: unlike SICP, it doesn't assume knowledge of other advanced engineering and math topics.
5K iMac Gets 10-Bit Color
No, nobody, say, anticipated that I would try to upgrade Ubuntu while using Spotify. Otherwise it wouldn't have broken the app. Nobody anticipated that my friend would have upgraded to Windows 10 in whatever machine state he did it otherwise it would not have deleted and reset his user profile and all his permissions. Both these issues are unexpected and require handling on a deeper (commandline) level than 99% of uses, not because the users are trying to do something weird but because the systems are so complex that even normal use can lead to wildly unexpected situations.

You can use the shortcuts and use GUIs and they are excellent and of course I use them as everyone does but if they are all you learn the moment anything unexpected happens (which happens a lot when you are using or building experimental software) you are dead in the water because you haven't developed a mental model of how your system actually works.