skysight-inc/HackerNews huggingface dataset:
>The article presents doing your own projects as a thing you should do.

Well, if you don't want to, and you don't have real experience elsewhere in a domain close enough to what I need, then you won't likely be a developer that I work with, no.

>Are you suggesting that it would take an experienced Java programmer several hundred working hours to get up to speed on Android? And that you expect new hires to have worked several hundred hours on Android in their free time instead?

Most Android developers work solo, at least the ones I know. If you can find a team to work on somewhere -- some big company that has 4+ people working on an Android project, then maybe they can hire a Java developer and train them on Android. I have no desire to pay a developer for more than 20 hours to learn to do something that shouldn't take more than 4 if he already knew how Android worked (this happened to me, when someone lied and told me they DID know how the Fragments API worked, for instance -- after 20 hours he had a mess of garbage that I threw out).

But a solo Android developer probably needs at least two to three months of Android coding experience to really "get" the relatively more obscure parts of Android, yes. Can a Java dev write code on day one? Sure. Can a Java dev start writing production code from day one? Day 14? Not anything I'd want to use.

Major exception: Java is Java, and so having someone contribute to an existing, already working app, but staying in the "data mangling" domain, could be done from day one. I'm really talking about knowing how an app should be designed, not whether someone can write code to talk to a database on Android after 10 years of experience writing Java that talked with databases on servers.
Are Go and Erlang that fungible with each other? Honest question.
Go basically does have exceptions, though they call it something else, it is slightly less powerful than you would normally expect, and the idiomatic usage is very different.

Honestly I that Go's idiomatic usage of panic/recover is a good idea even in other languages. Exceptions passing package boundaries is typically a pain in the ass in practice, it makes for ugly code.

(My "day job" is typically Java these days, some Scala. I am not speaking from inexperience like many Go detractors like to assume. There seems to be a perverse notion that anyone who dislikes exceptions must not understand them. Silly.)
British law has problems. Among them is the breadth of the Terrorism Act. But I don't presume that this means that the UK declared this person a terrorist.
Switzerland with French, German and Italian depending on where you are.
It's interesting to see that more and more internal projects at Google are getting redone in Go. However, this sentence stands out to me in the article:

"Before doing the rewrite, we realized we needed only a small subset of the functionality of the original system -- perhaps 20% (or less) of what the other projects were doing with it."

I'm guessing that a lot of the benefit of the rewrite came simply from the simplification of the core logic and dropping extraneous functionality. That said, having written a little bit of both C++ and Go, I can completely see why the author found that Go was both far more readable and more maintainable than C++.
Not particularly. They are basically just both languages that were inspired by CSP; the similarities don't go much deeper.
>Do you know of any examples of intelligent beings that don't have any motivations and drives?

My computer, for certain definitions of intelligent.

> Intelligence doesn't just mean cogitating in a vacuum; it means taking information in from the world, and doing things that have effects in the world.

I agree with this; but its behavior does not have to be self-directed to be intelligent. Again, computers behave quite intelligently in certain constrained areas, yet its behavior is completely driven by a human operator. There is no reason a fully general AI must be self-directed based on what we would call drives.

>So an AI has to at least have the motivation and drive to take in information and do things with it

I don't see this to be true either. Its (supposed) neural network could be modified externally without any self-direction whatsoever. An intelligent process does not have to look like a simulation of ourselves.

The word "being" perhaps is the stumbling point here. Perhaps it is true that something considered a "being" would necessarily require a certain level of self-direction. But even in that case I don't see it being possible for a being who was, say, programmed to enjoy absorbing knowledge to necessarily have any self-preservation instinct, or any drives whatsoever outside of knowledge-gathering. All the "ghosts in the machine" nonsense is pure science fiction. I don't think there is any programming error that could turn an intended knowledge-loving machine into a self-preserving amoral humanity killer. The architecture of the two would be vastly different.
You are playing with words. The price of using the service increased dramatically.
> Taking into account that the UK law enforcement and Brazil have a bit of a history when it comes to labeling people terrorist wrongly makes it even worse.

In case anybody is wondering, the UK murdered a Brazilian man on the train with several bullets to the head after they explicitly identified him as a suspect and authorized his takedown. He had no ties to terrorism at all.

http://en.wikipedia.org/wiki/Death_of_Jean_Charles_de_Meneze...
One of the big projects they're working on in the next version of Go is to make the internal scheduler more Erlang-esque =)
Whilst not perfect, pgadmin can also be helpful. I find it particularly useful for keeping an overall view of multiple databases/servers.

http://pgadmin.org/
Ironically, this post's explanation caused me understand the pumping lemma for the first time after years of letting my eyes just slide over any time I read across a mention.

(It nerdsniped me by claiming it was difficult.)
Founding engineer from Upworthy here. My email is my username @upworthy.com -- Happy to talk.
Court Holds That Circumventing IP Address Ban Is “Access Without Authorization”
>The concern is that these slow, stupid fleshy bags of meat would be a nuisance in the way of an amoral AI

Why would this be a concern unless the end result is an AI who decided to get rid of us? I think I understood the argument just fine.

Edit: I think I see where the misunderstanding is. For an AI to decide we were a nuisance it would necessarily need some kind of drive that we were getting in the way of. No drives means no decision regarding out fate.
If you have the time, rewrite one of your own services in Go, open source it, and share the post here on Hacker News.
I learned Morse Code as a Girl Scout and became fluent for the intellectual challenge. I'm definitely no longer fluent but could get by in an emergency with a quick refresher.
Rather than picking one over the other, I would say that it would have been best if Jobs had had a little more Woz in him (to appreciate the tech more), Woz had had a little more Jobs (to sell himself more), and they had continued to work together. Apple would be an even bigger player than it is today, I think.
Right. It would do nothing until we gave it a command to carry out. Personally, I would prefer it that way.
Thank you for this! It's so cool (and I'm glad you were able to confirm) that you can recognize an operator by his fist--just like a voice.

I had also read about each radio having its own quirks, but in my excitement forgot to include that in the article!
Who cares if they "declare" him a terrorist or not? They're using a law supposedly intended to help catch terrorists to punish someone who is very clearly not a terrorist.
Reprogramming a Boston City Parking Ticket Kiosk
A conversation I had the other week:

Him: Do you know how to check if it's possible to write a regular expression for this?

Me: Either create an automata and then it's demonstrably possible, or apply the pumping lemma to prove it's impossible?

Him: No. Dare Stackoverflow to write it.
Ex-ham and ex-military radio operator/tech here.

Morse code, (CW), is a semi-valuable skill for radio operators, especially hams that do HF and weak signal work. It takes experience, but at a certain point the letters become words and the words become phases. It's no longer a requirement for a amateur radio license, but it's still used and useful. (If you want to learn, I suggest the Koch method.)

With the advance of radio technology, especially computers, DSP and SDR, digital modes modes other than CW have better performance. You can decode a whole band of signals digital/CW with the combination of a SDR receiver and software on a decently powered computer.

But the advantage of CW is that you can use really "primitive" inexpensive radios as transmitters and flexible humans as encoders/decoders.
It disheartens me a bit when people compare Go with C++. It gave me the impression that Go was created to be better C++ (or Java) mostly to make life easier for the thousands of developers at Google who are stuck with those two languages.
"Holocaust denial is not racism."

Only because it is even fucking stupider. At least your average racist keeps their hatred basic enough to keep their bullshit somewhat consistent as long as you don't remind them of where their favourite foods are from. Holocaust deniers are like the chem-trails version of racists.
Do you even see what you've written before you post on the intertube ? This is Hacker news for god's sake !

India has English for its STEM needs; killing of languages because some nuts (including ones in the parliament) dislike diversity is just plain silly. What are you going to recommend next, teach English to all of Europe, and "archive" French, German, Baltic and Uralic languages ? Sure.

The middle class forms atleast 25% of the population, certainly they speak English. I'm sure many more do, too. Hindi is no more a "national language" of India than Tamil is. If anything, Sanskrit is the language with which most Indic languages share a heritage.

When did being multilingual become a bad thing. Sheesh, this must be an all time low for Hacker news.
My understanding is that that is, in a single sentence, exactly why the project initially got started at Google.

http://www.infoq.com/presentations/Go-Google
Don't confuse not understanding something with understanding it and thinking it is a poor idea. The Go authors understand exceptions perfectly -- they just thought that it was a bad idea: http://golang.org/doc/faq#exceptions
AHHHH!!

Needed something like this for ages, thanks a ton dbz!
I disagree. I don't think that making a case by case assessment is opening the floodgates (that argument is exactly what I would call bureaucracy BS). For an exploit of this severity I would expect them to be grateful to someone who was obviously not being malicious regardless of some silly policy.
What does "GF(2^32)" mean in this context?
I don't see how that makes any difference, in fact if it makes a difference it makes it worse.

Detaining partner of journalist -> bad.

Detaining newspaper employee, possibly journalist -> very bad.

Once journalists will feel that they are in danger of no longer being free to do their reporting this story will get a lot more attention than it does at the moment.
That's actually pretty great. I always loved "going back to basics", and flashing a light to talk to another naval ship is as basic as you can get. It works, it's robust in all but the worst conditions, and it's easy. Love it!
Admittedly a sensationalistic headline on my part

The title of the linked article is "District Court Holds That Intentionally Circumventing IP Address Ban Is “Access Without Authorization” Under the CFAA".

Violating the CFAA is, of course, illegal. From the linked article: "During the debate over the Aaron Swartz case, one of the legal issues was whether Swartz had committed an unauthorized access under the CFAA when he changed his IP address to circumvent IP address blocking"

This particular ruling relates to Craigslist.

http://en.wikipedia.org/wiki/Computer_Fraud_and_Abuse_Act
Yep, full preemptive scheduler, I am very excited about it!
I dislike the uk for purely practical reasons (expensive and wages aren't higher to compensate outside finance, not actually different enough from the US to be interesting to me). I knew about RIP but not about the border detention issue. My international flights tend to be nonstop or via very particular airports due to weapons laws (when I was flying to Iraq often), or to Asia, not Europe. I'd also probably not go via the UK due to frequent flyer status on Star Alliance which doesn't use London as a hub for flights to continental Europe as much.
Hey Sales Guy — Stop Pissing Off The Engineers
I may be remembering wrong, but I believe in the Swartz case it was about spoofing his MAC address?
pretty clever and strangely addicting, someone come find and rescue me if you don't hear from me in the next hour
yes I've read that and their reason is "it results in convoluted code" - which is not at all my experience, programming in Java and Python for many years, it's worse in Java for sure due to the heavy emphasis on checked exceptions, but in Python they are a dream. "It also tends to encourage programmers to label too many ordinary errors, such as failing to open a file, as exceptional." also not true in my experience. I really disagree with the notion of hobbling a language just to prevent beginners from writing bad code. Beginners will always write bad code no matter what. I'm not a beginner, and I really don't need to be denied useful tools just because beginners will misuse them - I mean we're talking about improving on C/C++ for chrissakes, in the hands of a beginner those languages are like nuclear weapons. This particular FAQ entry makes it seem very much like the authors have just not seen exceptions used effectively, which I find kind of astonishing.

I watched Bruce Eckel's talk at Pycon, "Rethinking Errors - Learning from Scala and Go" (http://us.pycon.org/2013/schedule/presentation/52/) and I was so ready to be converted. But his arguments were pretty unconvincing.

Can't someone just make this case convincingly?
Here's what I think is a fun explanation of the pumping lemma, using no special terminology.

As many people on here know, the phrase "Buffalo buffalo Buffalo buffalo buffalo buffalo Buffalo buffalo" is a complete sentence[0]. What many people may not know is that you can add (but not subtract) as many "buffalo" as you want and still have it be a complete sentence.

Why's that?

Well, an easier sentence to look at is "James while John had had had had had had had had had had had a better effect on the teacher"[1]. In this case, it's clear (once you understand the meaning of the sentence) that you can add as many "had" words as you want, as long as you keep above a certain minimum. This is because all but a couple of the "hads" should really be inside quotation marks, as they are simply denoting the words that James (or John) did have at some past time - they convey no semantic meaning within the sentence.

If you envision a DFA[2] (okay, here's where it gets technical), we're basically saying that one node has an edge that goes to itself - a "self loop" - or a previous node that has already been visited. Once you have this loop established, you can traverse it as many times as you want (ie, arbitrarily many), as long as you traverse it a minimum number of times.

All the pumping lemma states is that:

(1) if this loop exists, it can be traveled as many times as you want, and

(2) It must have the same effect each time (since DFAs have no "memory" - they have no stack).

If there is a limit to the number of times it can be traversed, or if it has a different effect depending on the number of iterations[3], then the language cannot be regular.

[0]http://en.wikipedia.org/wiki/Buffalo_buffalo_Buffalo_buffalo...

[1] http://en.wikipedia.org/wiki/James_while_John_had_had_had_ha...

[2] http://en.wikipedia.org/wiki/Deterministic_finite_automaton

[3] Okay, to be really pedantic, it can have a different effect each time, as long as there is a finite number of "different" effects it can have, since there must be a finite number of states in a DFA. But that was a bit too clumsy to try and write.
Yes to this, this line of products needs a standing desk.
From the article: "There was significantly more to the CFAA charges than that, to be clear, including circumventing a subsequent MAC address block and (most significantly) entering an MIT storage closet to install his computer directly. But changing IP addresses to get around IP address blocking was at least one of the possible grounds of unauthorized access."
Someone left a Gandhi quote in the comments section on the Guardian... worth rewriting here I think:

"First they ignore you, then they laugh at you, then they fight you, then you win." -Mahatma Gandhi
Startup Isn't a Word, Yet
What kind of math knowledge is required to understand this? Abstract Algebra?

I've noticed recently I'm coming unstuck on particular CS problems (notably crypto as well), and have realised I need to further my math knowledge greatly.
That is at least partially the case. The other part of the story is that no existing languages were specifically designed for programming at a large scale.

Details: http://talks.golang.org/2012/splash.article
Basically all the people I met in be military we're essentially libertarian and "personal responsibility" on safety issues; some of the more religious people were against eg gay marriage for moral/religious reasons. I don't think most of the military outside the IC is in favor of domestic spying at all -- they are even pro drug decriminalization.
Go doesn't require all functions to return error codes, and Go has exceptions (called panics).

In Go, conventionally, the publicly exposed functions in a module shouldn't usually panic but should use error returns to report unusual conditions. But that's a convention to keep the behavior of functions clear from the interfaces, not a language limitation.
Behind The Scenes At Homejoy, A Cleaning Startup That's Really A Tech Company
Try asserting any right to silence at the US border — you won't get far. If you are not a US national, I'd expect you to be refused entry (and as one is required to complete an ETSA prior to arrival, one is required to sign away any right to appeal of the decision of the border control staff).
Even new Intel Haswell's STM?
If you think exceptions are the right way, you can use Go's exceptions (called panics). Whatever they thought about the desirability of using exceptions, its not like the creators of Go didn't build them into the language.
That it is inconvenient not to abuse a bug is not an argument in its favour. It might be inconvenient not to trespass. Too bad, it's still trespass.

I agree with the problem of authentication; I actually have a patent application in covering a solution to a tangential authentication problem.

I tried for several years to do it all with cookies and javascript; my eventual conclusion was that it can't really be done securely. So the generalised design I submitted depends on piggybacking on extensible command channels -- HTTP headers, in this particular case.
I wonder how the interface could be extended to allow self-edges for vertices.
Moreover, his partner has a previous history of interest and involvement in his professional affairs.

One of the more hilarious examples: Miranda used to troll for blog posts that were critical of Greenwald and then argue with the bloggers, often posting the same comment (of fawning praise for Greenwald) to multiple blogs. When people realized the comments were coming from Greenwald's IP, it led to accusations of sock puppetry and lots of drama.

Point being, it's reasonable to expect that Miranda's involvement runs deeper than merely being in a relationship with Greenwald. Both past behavior and public comments suggest he might either be involved directly, or he's trying to appear to be involved. (There's a long history of activists inviting law enforcement responses; Rosa Parks didn't keep her seat just because she was tired.)
If I'm going to use Go, or any language, I definitely want to use it idiomatically.

Don't fret, if this were eight years ago you'd have seen me railing on significant whitespace. And we all know how that went.
I've done a lot more than that on gov't networks just to get slides to show up on a conference projector.
Cool article! "Code" by Charles Petzold[0] talks about morse code while covering ways that we encode data. May be a good read for anyone interested in this topic.

[0]: http://www.amazon.com/Code-Language-Computer-Hardware-Softwa...
Go's error handling model has nothing to do with schooling beginners. In fact there are several rough edges in Go that make sense for experienced programmers, but are difficult for newcomers to understand. (The distinction between the new and make functions is one example.)

The reason Go does not have exceptions is because, on balance, they make the language more complex without actually improving the code you write. I have seen countless A/B comparisons, and it seems that if you want robust error handling, it's going to be relatively verbose regardless of the approach you take.

To handle errors well requires your attention. Error handling is at the core of what most programs do, and it should be visible. In Go, errors are a computable value that you handle using the same control flow as any other value in the system. It shouldn't be relegated to a side channel that must be managed using separate, often invisible, control flow mechanisms.
The sin-free side of Las Vegas, and whether you would enjoy it
What is with these hacker news articles that are hard to understand with no clear point?
This looks very similar to the ShipBuilder PaaS written in Go (https://github.com/sendhub/shipbuilder). I am excited to see all these open source PaaS systems beginning to emerge and mature. These all help to foster and sustain an environment which makes creating and hosting large-scale applications easier for developers. A considerable and big win in the OSS world if you ask me!
On a somewhat related note, I'd love to see a more intermediate resource on how to really leverage PostgreSQL in your applications.

As someone who primarily works with Rails, I feel like I use about 1% of PostgreSQL's power.
Not everyone wants that out of movies. Some of us are happy to leave the theater thinking "well, that was an entertaining way to spend two hours".
Google is more of a multinational than a US company and is nominally subject to the laws of all the countries it maintains business offices in.
Repeat after me:
set work_mem to 'XXXGB';
set maintenance_work_mem to 'YYYGB';
swing away!
The language has panics. But you aren't supposed to use them. So...
Once it has a command to carry out, it is no longer idle. It has a goal, to fill out whatever that command is. If the goal you give it is not exactly the same as humanity's goals, then it could do things that were unintended, or things that conflict with our normal goals (i.e. you ask it to make money so it goes and robs a bank.) I seriously suggest reading these:

http://lesswrong.com/lw/ld/the_hidden_complexity_of_wishes/

http://wiki.lesswrong.com/wiki/Paperclip_maximizer
Im not quite sure what to say to this.