skysight-inc/HackerNews huggingface dataset:
The difficulty of reasoning about strictness and memory consumption in Haskell is by far its biggest flaw. This is why I stopped writing Haskell: even if you understand your own code perfectly, you can't tell how well-behaved it will be without reading your dependencies and all their dependencies.

And yet strictness typing seems to be on nobody's plan for future Haskell extensions.
There is a lot of risk going to a compromised website. You are basically inputting potential malware onto your computer, and, if there are zero-days present on your system, handing control of your computer over to a malware author.
Can the Navier-Stokes Equations Blow Up in Finite Time? Terence Tao [video]
> Why do people feel the need to publish every small project to the public?

Github acts as a portfolio site for programmers.

The usual refrain when doing hiring is "check a candidate's Github." Thus every potential employee makes sure there is something other than cobwebs on their pages. This is especially explicit in startups around San Francisco. Hell I'm guilty of it as well.

Likewise, many language communities actively encourage library development. Ruby and Javascript are great examples of this.

Then there are entire tools built around git paradigms. Heroku's push to deploy a perfect example. Many services have easy application hooks into git actions. Github has many built in. Pushing code and then kicking off a build system with automated tests is worth every penny I spend. Other services have this as well. However, it's harder (read: more than 5 minutes work) to build these hooks on a server you are running yourself. Paying Github for the work is a no brainer.

I've used Bitbucket for private repos, but usually the user wants their code public. They want to show off. But if I wanted to keep some code private (like my latest app) I'm all for private hosting.
One reason why I like to publish even frivolous things to Github is because it forces a bit of rigor upon whatever I'm publishing. I'm more likely to clean it up and keep it tidy, and I can use the same workflow for it that I use for everything else, like using Github Issues as a TODO list.

But I suppose that might be more of a backsplanation.

More likely is that I do it as a backup strategy, because I have limited private repos, and because I'd rather just keep everything on Github than use multiple services.

It turns out that unless you commit AWS creds, nobody cares about your repos.
But by having a shared convention, we avoid having to relearn a new one for every app.

You really wouldn't mind if the app used control-p for delete, and control-z to quit?
Eh, supply and demand? While the good places are ever harder to find for cheap, we the humans are ever easier to replace. The solution will come from the sharing economy, a sort of airbnb for long-term renting mixed with a facebook-dating-like social net that [almost] guarantees one does not move-in with a Freddy Kruger. I even think we will start seeing two or more families sharing a big house. There is also an incentive to property owners to go this way b/c risk is minimized by the multiple sources of income to pay for the hefty rent.

In general terms, the world of one of everything for each one is ending, all the uber-like business models that are popping around prove it feasible and profitable.
I'm rather confident in saying that this was more of a novelty to show off book binding mastery and was probably some gift to a noble.
The key difference is, Microsoft was able to leverage their monopoly in one industry (Desktop) to destroy the competition in another (Browsers, though yes, that phoenix did rise from the ashes)

The war is over because Microsoft no longer has a monopoly they can leverage to do this again.

Microsoft is not, and will not be a force in the mobile phone world for the foreseeable future.

Re: "probably hoping to keep Apple busy with eternal catch-up"

You've got the causation going the wrong direction - Apple doesn't have to catch up to Microsoft any more, it's Microsoft that has to play catch up with Apple.

I can't describe it any better than Benedict Evans did, so I'll just share his analysis: http://ben-evans.com/benedictevans/2015/7/8/capitulation
Those real life tools have a far simpler interface than, say, a mail client. As software becomes more complex, HIG increase in importance, because there is more to learn and HIG enables us to transfer knowledge across apps.
Thank you for the upvote, I wish more people would engage in conversation vs. just downvote opinions they don't agree with.

I think the best course of action is to have a policy of:

"We don't delete repos unless required by law."

That would satisfy me as a potential customer.

I think commenting on Twitter and getting involved at all was probably a mistake unless they were going to stick with the above philosophy. All they did was call attention to the issue then delete the repo once everyone was watching.

The tweet seems like an honest mistake since I don't think they wanted to get involved with this controversy. They made it though and had to make some decision on what to do. I think they chose the most damaging option.

The staff doesn't have to personally endorse the opinions of their users and the repos they host. I wouldn't expect that of them, but they shouldn't delete repos they don't agree with.
What are the advantages in relation to Cygwin?
I fiddled with Intellij plugins; seems like it would be pretty easy to write if you've written one before, maybe a weekend project if you have passing knowledge.

I'd give myself a week, including the time to search Stack Overflow :)
So what is the most practical language currently for GPU processing?
Do you know who Jeremy Hammond is?
Webpages, videos, audios, images, fonts etc. basically any format out there that anyone can open on whatever machine or device.
I wish I took the Coursera's ML course 10 years earlier. But it didn't exist then.
What I find most fascinating about things like that is that when you look at the pictures of the book you see an old, shriveled up, bent, corroded, bland, demure type of book; but I am sure that when this book was new it was an object of perfection.

It's kind of like how when we look at old pictures of "olden times" there is a certain perception or assumption about things and way of life because you are looking at images that are black and white and washed out and people have that corpse look to them simply due to the nature of the technology. Reality was quite different though, in reality that world that we think of as being black and white and populated with corpse looking people was more or less just as colorful as the world you and I live in.

I don't even know if it would be possible with this artifact, but I am sure you could assemble some master book binders and maybe some metallurgists or blacksmiths in order to painstakingly reconstruct the book using the same techniques and materials, yet without the possible exponentially more experienced skill level of the original master artisan.

The old masters or centuries ago, the men and women that created things by hand and skill that had been passed down for generations and which have largely been lost with industrialization have my utter most respect and reverence.
Anybody know what they use this for. Seems like overkill for a corporate jet.
Beating the averages (2001)
How to know if you are good enough at coding to get hired?
Location: Jakarta, Indonesia

Remote: Yes

Willing to relocate: Yes

Technologies: PHP, MySQL, HTML5, CSS, Streaming, SMS Gateway, Photoshop, Wordpress, Code Igniters, PostgreSQL, SQL Server, VB6

Résumé/CV: http://www.rioyotto.com

Email: rioyotto at gmail dot com
Add ly to the end of whatever it is your product does.

Just kidding, I hated that trend.
Double indentation looks rather ugly though. I like the "K&R" style much better (as shown in comment from bpicolo):

def some_descriptive_function_name(
one_parameter,
another_parameter,
):
some_functionality()

Anyway, either one is superior to 'indent to sibling', where the lines are now tightly coupled to each other.
What about paid parse.com account? Does not seem fair that you compare reliabilty of a free service with a paid one (the DO droplet). Also, with time, it may prove more expensive (time-wise) to manage the Ubuntu droplet, specially against hacks, than the workarounds for parse.com.
John Fry tranports the San Jose Ballet and his sports team in the 747.
Your project is fantastic. And, releasing the source code as free is the best thing you've actually did. This would be that start of it!
I wasn't very clear, but I meant to say that the number of lines that will naturally end up between 80 ~ 100 columns is greater (in practice) than the number of lines that will go over 100 columns. I.e. I think that 100 is a better "sweet spot" than 80 or 120.
Would you be ok with a policy of:

> We don't delete repos unless explicitly requested by law enforcement or a DMCA takedown notice.

What you said could be interpreted as "well...this repo was technically breaking the law so that's why we deleted it" - I would rather say "I deleted it to cooperate with law enforcement". And the DMCA takedown policy is required to protect service providers in the event some idiot decides to upload copyrighted material - the RIAA/MPAA won't go after the service provider they will just ask them to take it down.
Ask HN: HN for VC?
I love the text format of HN. and have come to appreciate the fluff free moderation policy. there are news outlets for VC ( venturebeat ) and some blogs. is there any place that lists VC news and articles of interest to VCs and business that has a similarly focussed high-content format and moderation ethos?
I want to understand why makes remarks about PEP8 and core library and sending a PR to fix them. Why shouldn't someone send a PR by changing code which adheres to PEP8? As long as tests are passing and core library follows PEP8, then is there anything to worry?
That's asking the wrong question, in my book. The right question is something along the lines of "if companies know there are many people with that much bandwidth, what new products and services would they be selling us?"
You might want to look at Boost.Hana.
run the experiment. apply for a job.
not everything only works if predicted ahead of time. you are a sample of one, anyway, so it works to try to get hired to find the answer.
Granted, the notion of checks & balances is an inherent part of our founding structure. If one unit of government might overstep their bounds, having another unit incentivized in opposite direction (but both having reasonably defensible mandates) is fine.

Government moving slowly through bureaucracy is one level of protection against individuals usurping the system and establishing their own agenda. (though there are many ways they still do this)
You were widely downvoted because everyone agrees with me and the person who originally questioned you. Our inability to agree has nothing to do with dyslexia, and I don't have problems reading. You're just wrong. Lose the arrogance.
OK, well, here's an initial observation:

1. Your login page leaks information, as it returns "username not found" if you enter an invalid username. This is a bad idea. Better to simply say "login failed" in any case. Now, thanks to a few minutes of playing around, I have a fairly good idea that "admin" is a valid username on projecteuler.net. For the sake of argument, let's assume that's a real account, and actually has some administrative access... that's a bad idea. "Security through obscurity" is oft derided, but no sense making it easy for the bad guys. Make your admin username "flummoxedrabbit" or something that nobody bothers trying. As it is, I'm hoping this "admin" account is a dummy or a honeypot or something, but if it isn't, I definitely encourage you to change that and quit leaking username validity information.

2. From the limited testing I did, it doesn't appear that you limit the number of failed login attempts. Or if you do, the login limit is awfully high. I tried logging in 10 times and as far as I can tell, I could have kept going. If there really is no limit, it's probably not that hard to brute force your password. There are plenty of scripts and browser plugins to sit there and try to login repeatedly, trying to brute force forms like that.

3. In addition to limiting the number of login attempts, it's possibly a good idea to add a steadily increasing delay before accepting another login try from the same IP address, after each failed login. This will slow down at least some attempts to brute force your password.

4. You could consider some sort of Multi-Factor Authentication setup.

5. You could also consider adding code to do something similar to what fail2ban does, and automatically block connections from an IP where more than X failed logins originate in some period of time.
So the SP is for "Special Performance". It has a shortened body and allows the plane to travel further and faster than the regular 747. Apparently only about 45 were ever made.
> Why is 3 stupid?

Just to be clear, I do use that pattern in practice, but I usually feel 'dirty' about it. Sometimes I also do things like this:

is_admin = (membership.type == 'master')
is_current_group = (membership.group == session.group)

if is_admin or is_current_group:
do_something()

but I find this easier to justify because I'm adding something more than just the breakup of a line. I'm adding semantic meaning to other developers reading the code. In the example I gave, saying "message=msg" doesn't add anything (as opposed to say "message=bad_shipment_msg", but maybe the definition of "bad_shipment_msg" pushes the string past 80 columns by itself).

As for the example of reusing the message, maybe it's bad practice, but I would end up with tailored messages describing the edge case (e.g.):

if not shipment_qty:
abort(400, message='Must pass a quantity')
elif shipment_qty < 0:
abort(400, message='Quantity must be > 0')

Edit: I do the boolean definition thing more then "sometimes" because I prefer to make complex boolean operations easy to understand, and to also convey the meaning of what you want to achieve.
You originally said "CL won't use the utility poles in front of my house because they don't want to coordinate with the transit agency.". Given that those poles already exist, if CL was willing to pay for the work to string the new fiber on those poles, that shouldn't cost the city anything at all.
I do not 'troll'. It's an open ended question, not a forgone conclusion.
Is now the time to learn Rails?
With all the hype of Node, and other up and coming languages, do you think it is worth it to spend time on Rails? Is it going to be around for another 10 years? Is it going to look as good on a resume as Node might, in 10 years?
I don't doubt that they have money in the bank. I remember when an exec was accused of taking money from the company? it was like 75mil. Now if they would just organize their stores....
http://www.mercurynews.com/ci_11290227
Particle system for OpenFl
:D, didn't know that it was universally disorganized. Modern day RadioShack..
From a different comment in this discussion:

> They were a whole genre of poems called "adhama kavyas." Literally, in Sanskrit, it means 'inferior poems'.
I recently switched to using the MFA service with Google's Authenticator app. I find it more pleasant than the normal send-text-to-device implementation. So far it comes with my recommendation.
Regarding #1, telling the user that their login failed doesn't eliminate their ability to enumerate existing usernames. All they have to do instead is attempt to register a new account with the username they're testing. At some point, the site will have to tell them that the username already exists.

#2-#5 are all good points, though, and would help prevent username enumeration as well.
So lonely!
Because it seems you're making an assumption about the problem being reproducible and identifiable by running half the code. I've never found this to be the case. Ever. Its a strange idea. Where does this come from? This isn't a hypothesis based on data, it is an assumption. And a bizarre one.
Wow, I can't remember the last time I ran a shell directly on a prod machine. The very thought feels so dirty now.
I hope this succeeds. If not just to make research in things like reverse engineering legal again.
No.

Ruby is already not a super-popular language. Rails is often used by startups, but I wouldn't call its adoption widespread. I also (personally) disagree with lots of the philosophy behind Rails.

More generally, you're probably thinking too much about "should I learn _____". Good programmers can make use of whatever tools are available. Figure out what you want to do, and then ask "what is the best tool available for this?"
I helped out a company using Parse, and they paid for it. It was still garbage. Parse is a joke.

It may be because it's based on MongoDB, but that isn't a good excuse. The reliability makes it unusable even for small projects.
There's also an account named "backdoor".
Ah thanks, missed that. They gave me half text based and half scans, gotta love the government.
Thats the most bassavkeards logic ive heard in a while. So the us is only bilified because of their dominance, but "in reality" bad systems die? Thats such bullshit, and obviously not true across the spanse of history. Do people actually think before they type?
How to Spend Time Alone
Oh yeah, its because theyre "damned if they do damned if they dont" all right. Like pushing a color revolution so you can coopt the powrr base is just a "oopsie well we might as well because wed be viewed as damned anyway!" Sort of thing. Does HN really buy this obvious shill propaganda?
I see these idiots blow through stop signs all the time. It's about time the police enforce the law.
You have good points, I'll have a lawyer look at this again.

I do wonder how would you define the patch file? How would you prevent people splitting up the changeset into multiple patch files?

I hope the intent of our license is clear. Most people and organizations want to do the right thing.
Regarding #1, telling the user that their login failed doesn't eliminate their ability to enumerate existing usernames. All they have to do instead is attempt to register a new account with the username they're testing. At some point, the site will have to tell them that the username already exists.

Agreed, but I would lean towards giving the bad guys as few tools as possible. If you require a captcha to register, and if you limit the number of registration attempts, you can also cut down on that channel.

That's not to say that this stuff is the be all / end all of course. It would probably be better to eliminate username/password combos altogether and do everything with keypairs, but until that day comes...
Fry's is a sinking ship.

If you've ever tried to buy anything at any of their stores, you'll notice you get sales people asking to scan your items and print you a quote. Fry's employees don't actually get paid hourly wages anymore, they need to write up merchandise that customers buy which have a per-item commission attached (generally .50- $5 per item, high margin items might be $5-$15). If an employee doesn't make their weekly minimum wage quota, they go into a debt (minimum hourly wage will be paid, but the difference is made into pseudo-debt), if they don't sell enough to get out of their debt or if they arn't making their large warranty quotas, they will be fired. Apparently Fry's used to offer their employees much better benefits, hourly + higher commissions, and there used to be some sort of "retirement" type bonus system where they earned a growing lumpsum of money that would only be paid out if they stuck with the company for more than 6 years or so, but they've scraped hourly pay for the commission-debt system, removed departments and dropped those employees into sales positions, and generally just cut corners everywhere possible without any real modernization.

Within the last few years they've pushed to match internet prices which is nice if you know their policy (limited list of official retailers, item must be in stock at that time, sometimes they arbitrarily add shipping costs). You'll piss off the sales person that writes you the price matched quote because they'll lose any normal commission. From talking to the employees, it's a toxic work environment and the entire store is feverishly being badgered to meet quotas for warranty sales.

Fry's is a crazy store, it's in a position to be cutting edge for the maker scene where Best Buy, and Radio Shack have failed, but it's still stuck behind 20 years and ridiculously inefficient and short sighted corporatcracy. On that note, if you walk into a home depot you'll probably notice a maker bot demo set up.
Turf.ly for Apple Watch: the first real-time map for fitness on your wrist
Reminds me of Mjoolnar's (author of vim) talk on 7 habits of effective editing 2.0; the core idea is essentially (my current interpretation): awareness: look for repetition - they are candidates for automation and/or being more effective. Rule of three: If you do something (anything) 3 times - figure out if it can be done more efficiently. In vim (or any other editor) an example might be shifting the indendation of code: maybe you only remember how to do it a line at a time; figure out how to work on blocks of code; figure out how to do it on a file - a whole project.

https://m.youtube.com/watch?v=p6K4iIMlouI
Sorry China, the Internet You’re Looking for Does Not Exist
Never learned JavaScript when I was starting out in 1995-8. Always found a way to hack things together, but only by adjusting existing scripts. It's frequently a choke point for me now where I have to delegate to someone else to fix something that's beyond me. At 38 and being very busy, I don't have (or make) time to learn it now.

I have worked for myself for almost the entirety of my career, so never had to face a job search or technical interview or anything like that.
Another area I'd suggest looking into is your "recover your account key" setup. If the keys really really are random, then this is probably fine. But if there's any flaw resulting in your generated keys being less than ideally random, somebody could have figured out a way to generate an account recovery key, and then used that to steal an administrative account. That is, assuming your administrative user even has that option. If it does, it might be a good idea to disable that, since you presumably have direct db access anyway, and can always backdoor your way in if you forget your own password.
Common Music is really cool. http://commonmusic.sourceforge.net/
It is a single executable for all platforms. There are coding examples in the Help menu in Scheme and a sans parenthesis lisp, called SAL. Bird calls are built algorithmically and sound almost real, but do not use any samples; the sound is built from scratch. Grace also has standard music naming too, if that's what you're used to using.
> 80 cols exists for a reason

I like to joke God made The VT52 with 80 columns because that's how terminals should be.

Another I use is that "80 columns should be enough for anyone".

Now, seriously, code that's too wide (or too long) is a code smell. You probably should name your variables better, have fewer them in scope or just refactor the code to be more readable. Remember: code is executed by very cheaply and read by very expensive humans. Optimize for the latter.
And "root" as well, apparently.
In my case I am a fan of:

abort(400,
message='All order_items must have a quantity_to_ship.')

(not giving the parens an entire line)

I'm not a fan of 80 characters, but I am a fan of less than 120 characters, if simply that there is a point where a line won't fit in a terminal thats in half of a "standard laptop" screen (i.e. the limit to where I could put two files next to each other)