skysight-inc/HackerNews huggingface dataset:
If you feel uneasy with college, and you already have the skills you need, skip a quarter, semester or whichever time measure your college uses.

Your college should have a head professor, talk with him, explain him your feelings, and scrutiny the curriculum with him. He should give you more insight about where you might not be as good as you believe, and you will get valuable hints about where to start learning on your own.

Take the time you skipped to experiment what is to be a self-educated person, try to research on your own, read books, attend online courses, build projects, and everything else you find comfortable with to learn at your own pace.

If you are completely sure that you don't need college anymore, and you feel comfortable being a self-educated person, drop.

EDIT: In the country where I live (Mexico), there is an institution named CENEVAL[1], where you can graduate by knowledge acquired through job experience and self-education. Maybe in the country where you live there is a similar institution.

[1] http://www.ceneval.edu.mx/ceneval-web/content.do?page=1927
First, it's already been unblocked.

Second, this is what it says at the above link:

--SNIP--

What happened when Google visited this site?

Of the 26 pages we tested on the site over the past 90 days, 4 page(s) resulted in malicious software being downloaded and installed without user consent. The last time Google visited this site was on 2014-04-05, and the last time suspicious content was found on this site was on 2014-04-05.

Malicious software is hosted on 1 domain(s), including zlubob.org/.

--SNIP--

They're doing a good thing with this, and they're helping webmasters who can't help themselves.
In my laptop (Win 7, Dell 1555):

Blocked in Chrome Version 33.0.1750.154 m

Not blocked in ie11, Firefox 20

In my Mobile (HTC One M7 4.4.2):

Neither blocked in Chrome(33.1) nor in the stock browser

Doesn't Android Chrome support malware detection?
Also, if you run your own sendmail you can just add the following completely readable snippet to your sendmail.mc:

LOCAL_CONFIG
Kplus regex -d+ -s1,2 ^([^._]+)[._](.+)$
LOCAL_RULE_3
R$* <@ $=w > $* $: $(plus $1 $) <@$2> $3

That allows you to use "username.whatever@example.com" or "username_whatever@example.com" as well as the "+".

A lot of web sites' idiot email validator regexes won't allow "+" in emails. But every single one allows "." and "_".
There is a certain accountability that is assumed after I delete my account for that account not to show up again somewhere some time. If all they do is set a flag in a database maybe that's good enough. But if they wanted to go further maybe they could scrub the data associated with it too. But that shouldn't be my domain, that should be their domain to take these measures. I should simply have to state my intention.
I think it is a consequence that programming in the large is complex and we all like our little feature to reduce boilerplate, while allowing for higher abstractions.

In languages that allow for full macros, many of those features can be implemented as library instead, which also creates the problem everyone has their own little DSL.

Anyway looking to the history of computing, all mainstream languages that started simple as a movement against complexity of some sort, ended up becoming more complex release after release.
Ugh, what's the use of faster WiFi if the outbound internet connection is so slow. I think we need to focus more on faster broadband.
Scala is a garbage collected language like Java, not really a good target for asm.js.
This is almost always due to a malicious ad.
If the government must give these people food stamps so they can live...

They don't. Where I live, GDP/capita adjusting for PPP is less than what you'd make earning $8.25/hour at walmart working 20 hours/week with no govt benefits of any kind. There is no mass die-off.

(Note: my numbers are adjusted for cost of living. So don't tell me that "it's cheaper here" - I'm taking that into account. Unlike the US poor, people here live in crowded apartments, take shared transport to work, and learn to survive without 24/7 water.)

You are simply wrong. The government is subsidizing poor people's consumption, not walmart.
So the real issue, it seems to me, is GitHub should be making it very clear, somehow, to users how to cite their sources? Most journals have a "suggested citation" blurb in every article's webpage.

Does git have built-in citation management?

That would be awesome, btw. That would arguably elevate git to the level of email: made by hackers for hackers, now universal to the fabric of modern life.
I got the same message (FF28 Mac). Then I turned session cookies on and it worked.

Obviously they need to fix the error message...
I read the book a while back and it is absolutely fantastic. What I understand about monads, I learnt it from this book (no other exposition of monads ever made sense to me), and I particularly like his progression functors -> applicative functors -> monads. I think it's the clearest way to proceed (certainly helped me a lot anyways)
That article uses the same data from Net Applications (via NetMarketShare). The Chrome 'true believers' will find some way to explain it away because it doesn't fit their world view. I wonder if they believe if evolution? :)
You can make use of LLJS.
Show HN: Animated WWDC 2014 Logo in ClojureScript
The missing of MH370 itself is an outlier(, unprecedented according to the Malaysian officials), too. BTW, I was not implying anything.
This isn't a fixed variable. If people start cycling, they will rapidly gain the fitness required to cycle for longer distances.
I fail to see why. It is only a matter how good the GC would be.
Expression bodied properties: the syntax feels slightly off for me because I can't really read the => the way I do in expression lambdas, as 'goes to' - it lacks the argument list. I can see why the syntax is as it is, there's no really good alternative, but it feels wrong.

There's no clear 'functional programming' benefit to the property syntax, either. Even though the syntax implies that Dist is logically some kind of a Func<double>, I still won't be able to write Func<double> f = Dist, because Dist is of type double.

I'm also concerned about the idea (only 'planned' for now, I believe) for the same syntax for methods which take arguments, though. That feels like it risks pushing developers into the pit of failure by encouraging them to write public methods that contain no parameter validation logic, just evaluation of a return value. It also means that the instant you want to add more complexity to a method you're forced to completely rewrite it in the conventional curly brace syntax.

Then there's the halfway world of using the syntax for a method which takes no arguments:

public double Dist() => Sqrt(X * X + Y * Y);

where now I can write Func<double> f = Dist...
My observation is that it's hard to talk freely in that kind of environment. Anything that you say is scrutinized and analyzed and becomes "proof" that you're in one camp or another. Internet seem to make the issue worse because you only have textual cues and everything is recorded for a long time. It's also easy to forget that on the other side you have a real person reading your message.

My issue is not that people protest. Society at large evolves and mentality change because some courageous people elevated their voices and raised opinions that at the time weren't popular. When people promote gay rights I believe the inherent goal is acceptance and better understanding of each-other.

I don't see that happening here. I don't see people reaching for each other, in fact each camp gets entrenched because of all the hate. Discussions become irrational. I understand why but it makes me sad.
> gays are more likely to have been abused (which is true)

It is not true. Where the hell are you getting all this nonsense from?
Its the attitude that is most annoying.

Most people would not dream of walking over a road without looking for incoming traffic, but they feel perfectly safe walking over a bicycle road without even bother taking a look.
Why can I not match against "\w*" for instance? It just says "infinite" and does not seem to attempt to match.
I get:
Malicious software is hosted on 1 domain(s), including zlubob.org/.
This is why we can't have nice things. Chrome was doing yeoman's work by stopping their users from going to a site that was malicious earlier today.
I can't believe on HN of all places people are using Chrome its malware-detecting-capabilities. Friendly reminder that EVERY REQUEST you make with it enabled, will be passed through Google its filters.

You should turn all Google networking activities in your browser off. By default, there are at least five or so enabled which will happily send every request you make to Google. Some services even go as far as logging every keystroke you make.
And robustness and range
When I teach Haskell, I like to take a diversion from Applicatives to Monoids before going to Monads.

Understanding join is pretty valuable for understanding Monads too.
(I think I accidentally downvoted you, I'm sorry.)
Neat, but when building draggable things, I always end up needing to have tabs, each of which is a draggable list like this, that can accept an element from another list.
It may be the wrong image to advertise their ad product but I can imagine $2000 ad spend for a $8,000 LTV being pretty good :) (1k/mo at 8 months)
Walmart is a profit maximizing company. Spending 4 billion dollars to save the government 300 million in food stamps is not ever going to happen.
Cheap china USB webcams are ridiculously cheap by now. I think it starts at about $2 on Ebay.
While some of the vectors you've mentioned could potentially be exploitable, blaming a "very unsafe programming language," isn't really a good explanation. These issues could occur in any program and any programming language -- it's not a problem specific to C languages.
Google "biker" and click on Images.

Although, to be fair, neither "biking" (Mountain bikes) nor "cycling" (racing bikes) shows appropriate images.

For appropriate images, you want "fietsen" or, better:

site: bicycledutch.wordpress.com
I'm also impressed by google translator!
Secure SSH By Disabling Password Logins
At the very least, autonomous braking should be mandatory in cars and trucks. Bicycles should carry transponders that work with autonomous braking to keep cars 6 feet away.
https://www.debuggex.com/ is a nice alternative that is a little different from other regex sites I've seen.
Before clicking:

"Insects, huh? Shark Tank had a cricket meal business funded a couple weeks ago and they said they could help them with a PR campaign advocating cricket eating. What do I bet that this article I am about to click on will not be about the more common sorts of insects eaten such as grasshoppers and worms, but will prominently feature crickets and cricket meal, proving the author, whoever that is, is a stooge for Big Media?"

< Click. >

"Bingo. The Shark Tank guys are good. Really know how to play the game."
That's a good point, it's more known here in Europe. Anyway, I'd estimate that most people are against it after hearing about it.
Facebook as a disease
https://news.ycombinator.com/item?id=7536719&title=this+is+a...
Walking is slow and requires a lot of patience and extra time.
Google and the flu: how big data will help us make gigantic mistakes
ROSEdu Summer of Code
>- A regex assembler optimizer. Give it a few regexes, have it assemble them into one large regex and optimize it. It's got to do better than just | or'ing all the regexes together. I've seen some work done on using trie variants to do this, but have no idea how far along the work is on this.

That should be unnecessary if your regex engine does the dfa transformation. basically, converts the regexp into a state machine and then it combines all of the branches in the state machine to generate synthetic states that can represent the "superposition" of matching multiple branches. this means your regex (once compiled) will run in bounded memory and max time proportional to the input (iirc)
Don't forget your tinfoil hat on the way out.
Watch out - the source and binary file (http://www.kurzschluss.com/kuckuck/kuckuck.zip) is a tarbomb.
it could be that their ads networks did in fact serve malware temporarily.
Been using QBO the past two days for a client. One more pro for Xero vs. QBO is that Xero lets you open things in new tabs so you can have multiple reports open. QBO doesn't seem to let you do this and it's time consuming to keep re-running reports.
I always thought that using the safe browsing feature is asking for trouble so it is disabled in all my browsers. So my browser doesn't need to make an extra request to Mozilla/Google/etc every time I load a new website and the web is not censored if there is a technical issue
Agreed on all counts . Not sure what the C# team's desire is for another classification mechanism (record types), but it could be seen as an opportunity to fix some of the problems of the past (mutable types, nullable object references).

Perhaps C#'s record type could enforce immutability on not just the record but anything it's assigned to (maybe by using 'let'). That would allow the old mutable way to co-exist with language enforced immutability. It doesn't seem like it would clutter up or modify any existing code either, so if you don't like it, you never need to see it.

Not sure how that would work when assigning to a class's member property/field. Perhaps you opt out of immutability (of the reference) with a 'mutable' keyword:

class AClass
{
public mutable ARecordType Value;
}

Functional languages also 'extend' the behaviour of a type by defining functions that work with the type. But with an object-oriented language like C# you'd still expect the functionality to come with the type I think. So I suspect it would have to look something like this:

type Vector
{
float X;
float Y;
float Z;

int Length => Math.Sqrt(X*X+Y*Y+Z*Z);

Vector Add( Vector value ) => new Vector { X+value.X,Y+value.Y,Z+value.Z };
}

So it turns the entire class into one big constructor (with everything public by default). All non-expression fields should be provided when you instantiate the object:

let obj = new Vector { X=1, Y=2, X=3 };

I'd be very happy with that. Maybe I'll fork the compiler and have a go... if I can just find the time.... gah
He actively gave money to an issue with a single goal of limiting the rights of others. He then didn't repudiate the views, after being given many chances to do so and encourage to do so by the staff at Mozilla.

I don't think people unfairly ascribed a perspective to him. He is against marriage equality. He got called out for it, and driven out of town.
This happens to many small business sites.

If they leave their WordPress un-patched, or have a crappy plugin installed with security holes, or their FTP info is guessed, etc, hackers drop some malicious Javascript on their sites, and the next thing you know, their site cannot be accessed in Chrome, and usually Firefox as well. Depending on what services pick-up on the bad javascript.

For me, it usually takes a day(ish) from the time we are notified of the issue, update the sites, remove the malware, install webmaster tools from Google, submit and wait for the review to be unblocked.

On one hand, this is very frustrating, but on the other hand, many small businesses would have no idea their site had been hacked without it being blocked.

The only thing I'd like to see personally is if Google were somehow able to notify the domain registrant of the block via email so they find out right away, and not after a few weeks (or longer) in some cases. Some small business owners don't check their sites very often. We like to monitor our client sites, but sometimes new clients come to us with these problems and have no idea how long they've been down.
> how Would you explain all this stuff about averages to the daughter of the man whose bike got ran over by a truck

The greatly increased chances of seeing any grandchildren I may end up having is way more important, to me anyway, than the tiny increase in risk that I may not see my children reach adulthood (or even their teenage years).
Next up, "Norway forces everyone to have good taste in music".

This is just yet another example of the insanity of governments and the world we live in. The only way governments affect societies is through force, coercion. Any law is a command, and you will be punished for disobeying it, regardless of whether it makes any sense whatsoever.. and only a handful of people see any problems with this.
Quite many people bicycle around the year in Oulu which is quite far north. http://www.ibikeoulu.com/

Some key thing are that it's very flat and there are bike roads which are snow plowed consistently. And there are lots of students.
Yeah. This is annoying. I mean, I can't give an objective measure as to why this is a tragedy, but I feel like it is, you know?

Let's just all go through our favorite 3 year old books and post HN articles about every chapter that strikes our fancy why don't we?
The Power Of Poop: A Whale Story
That's an interesting scenario, and I don't know how much distinction is made between possession of illegal material and possession of a means of instantly retrieving it.

Datacoin has the storage capacity to include the actual images as part of the blockchain though, not just (probably quite ephemeral) links to such.
Google's Project Loon Balloon Laps Globe in 22 Days
Putting side effects in the __init__ code seems to become quite fashionable these days but is a pretty bad idea since it removes the possibility to "just" import the functionality defined by the module without performing any initialization. Personally, I always try to avoid having a system that relies on some global configuration (like e.g. Django, Matplotlib or Flask do). In matplotlib for example this causes a lot of problems, since importing the pylab module will automatically (among other things) load and initialize a backend, which is then set in stone for the rest of the session.

IMHO, the way to go here instead is dependency injection:

Inject the configuration into the module through a function or class method (e.g. Flask.initialize({config state}). Wrapping all module functionality that depends on configuration in a class is a good idea here since it allows you to use multiple configurations in parallel and makes your code more modular.

As an example, in BlitzDB (a document-oriented database for Python, https://github.com/adewes/blitzdb) there is no global configuration at all, so you can initialize and use multiple backends in parallel as you please without worrying about side effects. SQLAlchemy does it in a similar way btw.
Entrepreneur platform for finding your minimum viable idea
Would you guys use something like this?
Let me know your feedback!
> how can we objectively measure what is essentially a private, subjective experience?

We can't measure "subjective experience", nor can we verify that it even exists; which suggests that it is not a well-defined concept and we shouldn't be using it for anything.
MeowBit is system service for Windows which allows for resolution of dot-bit domains across all applications.
http://meowbit.com
The majority of safe browsing checks happen client side (when a page matches the client side list, more info is retrieved from Google). It's covered in the appropriate section here:

https://www.google.com/intl/en/chrome/browser/privacy/

If you don't trust what they are saying there, you shouldn't be using Chrome at all.
As a side-note, if you want to get into functional programming but don't want to make the full leap into "PURE EVERYTHING MUST STAY CLEAN DONT BREAK THE RULES" world of Haskell, F# is another excellent choice for a beginner functional lang. You can program in either OOP or functional style, letting you take your time with the transition.

I also toot F#'s horn because it has an amazing resource for learning how to use functional style in your programs: http://fsharpforfunandprofit.com/site-contents/

A few pages on that site did more for me regarding functional programming than the entirety of LYAH did, and it also has a very nice monad tutorial: http://fsharpforfunandprofit.com/posts/computation-expressio...
Reasearchers Uncover Interesting Browser-Based Botnet
Then I think we're just getting hung up on the labguage concerning what is 'necessary' or 'un-necessary'. I'd actually be interested to hear about the level of abstraction of your systemic data, just to be more clear on where you are coming from. Again, my comment up-thread was not in any way impugning a particular trade or trade structure. If you are a practitioner, you're well aware of the level of detail required to opine on something so specific. As a general rule though the more complex any transaction is (whiteboard+lawyers) the more legal grey there are. That is a statement I'm comfortable with in general.
As an indian citizen I've never understood how these technologies ever reach me. I know GPS is by the US government, is any one commercializing these technologies in India?

"Indian officials say the independent navigation service will aid marine traffic, emergency response officials, vehicle tracking applications, mobile communications, mapping, and civilian drivers."
It reminds me of the score from There Will Be Blood.
TAPL isn't Coq-focused. Pierce and his collaborators have another book available online, Software Foundations, which is written as a Coq literate program:
http://www.cis.upenn.edu/~bcpierce/sf/index.html
What's the value of using symbols instead of string literals to reference dictionary keys?

It replaces a 'magic string' with a 'magic variable name', which is worse than the normal solution for magic strings, which is to move them to a constant.

If I have code in one place that says:

dict["key"] = "value";

and code elsewhere that says:

var value = dict["key"];

I can make that code better today by adding

const string KEY = "key"

and then using dict[KEY] in both places. I can change the key in one place, and if I misspell the constant name in either location then the compiler tells me I have a problem.

With the new syntax, I can now write

dict.$key = "value";

and

var value = dict.$key;

but if I go ahead and change one of these:

dict.$newkey = "value";

I'm not going to get a compiler warning when I try to read $key (am I?). Unless there's some smart tooling support, where's the win here?

Key symbols aren't becoming a new type - I don't get to write

var key = $key;
var big_key = ["key with spaces"];

(so far as I'm aware - though I actually quite like the idea of a datatype that represents this kind of non-manipulable string identifier)

I guess the new .$ syntax combines with the null-propagating ?. operator, so you could have nested dictionaries and access them with:

dict?.$subdict?.$subsubdict

which looks... horrible. And suffers from the fact that there's no null-propagating equivalent index access operator, ?[], so I can only use this trick on keys that can be written as C# symbols.

I really feel like I'm completely missing what the use cases are for this capability...
If it actually strikes your fancy, why not? But I also don't understand why this specific chapter and what poster wanted to show us really.
An Email Reveals Steve Jobs' Secret Plans
Despite the question mark, I can't find anything in your comment to reply to. Sorry.
Even with the heat, central Austinities bike at decent rates: https://austintexas.gov/sites/default/files/files/Public_Wor...

In the summer, I end up carrying around a towel and an extra shirt. It's not so bad.
Almost all DRAM has some amount of address scrambling--logically adjacent cells are not physically adjacent. It can get quite complicated. Here's a PDF that describes some of the why and how: http://ce-publications.et.tudelft.nl/publications/1162_addre...

I have been told that a quick way to reverse engineer the scrambling is to shine a circular pattern onto the physical dram, then read out the data and test common scramblings until the logical data shows the same circle.
Oh, I remember. That's where I stopped reading the book.