skysight-inc/HackerNews huggingface dataset:
I see simonh as a respected and long time member of HN and hope that my reply can be constructive and beneficial to that community.

Anyway, my first home computer was a Sinclair zx80 that booted into a minimal shell and needed you to read the manual before anything worked.

So to use a pc I was forced to program. And RTFM.

But that was ok because there was a whole popular culture surrounding learning to use these new devices - I learnt basic and z80 assembler from magazines I bought in my small town newsagents, and watched prime time tv shows on using the BBC micro (way too expensive for us).

In short the devices were unlocked, the culture was encouraging and the prevailing expection was the devices were to be used for programming and put no blocks in the way (other than it was a z80 with plastic keyboard)

I cannot say for sure I would have found my way here otherwise, but it seems unlikely. So based on my one personal data point, I can say that a future where it is harder to program your devices to do what you want than it was for a kid in the 80's, is then likely to be a future that produces less programmers than my past.

if that is FUD then I must accept that. I am trying to start a after hours coding club at my local school, my nephew gets put onto Mac's term everytime I go round. But a country where most of our children are discouraged from learning to program will be a future that our country is at a competitive dis-advantage. That does sound like FUD I admit. But it also sounds like logically inevitable FUD.

Edit for clarity.
Well, nearly everything you said about J2ObjC is incorrect.

1. You can use ARC with J2ObjC. Your other comment about it not being supported is incorrect.

2. If you're not using ARC, then no, annotations are not required to get reference counting. The annotations are for "weak references" and are optionally available to avoid cyclic reference problems. They are not used in most cases.

3. You're not stuck without the Apple UI tools; in fact, you are encouraged to use Interface Builder for your UI.

Source: I worked on J2ObjC for Google this summer.
In the US, you are contractually responsible for whatever is done with your connection. But that's not a legal distinction. You might be throttled or disconnected, but you won't get a criminal record.

Edit: in some ways it's worse because there are no courts involved, so there is not always any reasonable way to defend yourself.
I didn't mean to suggest that absolutely zero C programmers would adopt go, merely that go does not address the needs C does, so most people using C won't have the option of using go instead. Obviously if you were using C for things that didn't need C to begin with, then go becomes an option.
The issue with using random test data is the it doesn't expose your edge cases.

There was a post on HN a short while back that showed why - in essence your edge cases sit at the edge of the normal distribution ergo they will rarely be hit by the unit tests.

This leads to you doing more work, as you need to log what data caused the test to fail. It also gives you a false sense of security, since the tests aren't really doing anything 99% of the time.
Not worth considering as a 'fits all' solution, yes, but it still is worth considering for specialized cases; in general, those cases where the added inconenience is worth the added security. For example, some banks use effectively this for logging in to your online account. And that can be made to work with any device with a display and a keyboard:

- computer shows challenge#

- user types challenge# on bank supplied device

- bank supplied device shows response

- user types response on computer
Continuous delivery in a nutshell: Getting you up-to-speed in a jiffy
"I'm writing in Ron Paul this November"
"If you didn't vote for Ron Paul, who would you vote for?"
"Romney"
"In your opinion: the worst candidate?"
"Obama"
"But you see, the opportunity cost of your vote for Paul is a vote for Romney, so by voting for Ron Paul, you are denying a vote to Romney, which in a two-candidate election, is a vote for Obama. This means the worst candiate, in your eyes, is the candidate you are voting for simply because you are voting for the candidate that you think is best."
I really hope this statement by the project author was intended to be funny (as opposed to a serious belief that there's another calendar for the southern hemisphere.) I laughed. And then I realized I know people who would find this epiphanic and insightful.
It doesn't sound like he is innocent.

"“By saying he knew [his ex-wife] was downloading infringing content, but didn't prevent her from doing so, he self-incriminated,” he told TorrentFreak."

Innocent has a specific meaning - and in this situation it is implied he did not break Hadopi. He broke the law. However ridiculous, shortsighted and just plain wrong the letter (and intent) of that law is - he seems most certainly guilty of it.
For me, I think absolutely. Sometimes to the point where I don't consider myself a 'real' programmer and feel like a faker any time I'm talking with someone more skilled than myself. I've always been much better at just getting things done than learning an entire catalog. Maybe it's because I spend half my time in the design space, where I also have no training and also feel like a 'faker'.

I've looked in various apprenticeships like thoughtbot's and others, but at my age (30) I am not their usual target demo.

It's why I'm so grateful for hackernews. i learn a lot of great stuff here from the 'real' developers that I can then apply in my day-to-day.
Light vim color schemes that you should consider using
And regardless, you can, rightly, expect a laptop to be able to run linux (albeit you can't expect it to be quirk-free).

You can run linux and other operating systems on many phones and tablets as well. But the fraction of those that consider that is waay smaller than for a laptop (and I doubt anyone would expect it from a typical phone/tablet). As well as the result being barely usable and more of a proof of concept in the very most of the cases.
Thanks for that. I hadn't read the article yet but it didn't make sense why Linux wouldn't work. Windows and Linux are both just computer code after all.
>After all, if the error is true the result is invalid.

False. A returned error does not necessarily mean the result is invalid. It
could also mean something went wrong and you only have a partial result
(which can be useful). Or that whatever the function returns doesn't directly
have anything to do with what the function does (mostly for functions which are
called for their side effects).

An example I can spontaneously come up with is the very common Writer interface.
Its Write() function returns an int and an error. The int denotes the amount of
bytes written to whatever is implementing the interface. This value is useful
regardless of whether there was an error or not. You don't want an OR here.
You want an AND.

Besides, what you are proposing could easily be done in Go. After all, errors
are only things implementing the Error interface. But that doesn't really add to
code clarity. Also, your code snippet isn't that different from how Go error
handling looks right now. I don't see the practical difference.
I've seen this technique once before... Ka-Ping Yee built a demo that did this back in 1999: http://zesty.ca/chat/

It's an awesome hack, cool to see it being rediscovered/reinvented after so much time!
I am waiting until a chinese website or monoprice carries them.

But I'm sure if they included one adapter people would complain that they needed two.

This really isn't something that happens often and I don't think it's a power move (arbitrary). Neither is not using micro USB which has less flexibility for peripheral devices.

Though I wish they were more open about letting developers make their own dongles.
1- Before Iphone, telcom companies would decide what software comes in on a phone and what does not, and it was a political decision, or based on how much you paid the telcom. Say you had a game and wanted to sell like you do on the App Store. The Telcoms would say: sure,we give you $200 for the game property and all rights, including exclusivity, consider yourself fortunate for us letting you in. Take it or leave it but we control the channel.

2- Internet browsing was possible in a phone for the first time. Only Nokia had something similar, albeit much harder to navigate but again the Telcoms will force wifi to be removed so you had to pay them more.

3- Google maps on a phone was fantastic, again only Nokia maps could compete. Easier gmail.(At the time Apple and Google were best pals).

4-Smooth interface, 0 delay, instantaneous feedback, you hold an icon and it moves without flickering and jumping. You could zoom in a natural and continuous way instead of steps for the first time on a phone.

5-All the interface controlled with one button and the screen, with the UI designed for it. This was so revolutionary on a phone, as "people love so much to press keys" like blackberry said.

How easy people forget.
When my wife's iphone recently stopped paying attention to the headphone remote, we had a bit of a schizophrenic experience. We made an appointment at the genius bar and the instructions told us to back up the phone.

So when we went in, they very quickly diagnosed the problem and handed over a replacement phone, which was a huge cut above what you would typically be used to in customer service. However, when I restored it from backups, I find that the music (from itunes match) and the apps were all gone.

Now I realise that technically the backup must mean the app data, and the settings etc. So it was a bit of a relief as when we redownloaded the apps nothing appeared to be lost. And there is perhaps a very good reason why a backup wouldn't include the apps you had, their arrangement, and the music you had downloaded etc. But there's got to be a better reason to actually do it, or cater for that situation in a better way.

The whole process felt like it had fallen down. The semantics of 'backup' was changed. If I backup something, and then I restore it, I would expect it to be the same as when I had originally backed it up. Instead she had to go through all the apps, and the music etc that she wanted and redownload them. First world problem agreed, but a waste of time and a flaw where I was expecting something to work.
We've never finished getting the multi-user one production-ready. We've been using a really simple version to hire out our consulting services to clients for a year or so. It's just a simple checkout with different day rates for different services (consulting, designing, code)
The practical difference is that there is (partial) enforced checking of errors. If you do not wish to check the error code, you must be explicit.

f := os.Create("output.txt")

Will give a compile error

multiple-value os.Create() in single-value context:

and should be written as one of these:

f, err := os.Create("output.txt")
f, _ := os.Create("output.txt")

where the second indicates that you are ignoring the returned error.

I say "partial" because if you ignore all the return values you can implicitly ignore an error:

fmt.Println("Hello")

It is quite common to see:

if err != nil {
//handle error
}

in Go, as their philosophy is that the caller should handle the error, not an unrelated piece of code. Yes, this does sometimes look like "litter", and it doesn't really make for the most impressive code. However, you won't be surprised by it, it's simple to understand, and if something goes wrong, you'll know what, when, and what was done about it. This has been Google's opinion on C++ for a while. http://google-styleguide.googlecode.com/svn/trunk/cppguide.x... lists some pros and cons. Writing code that ignores errors is one way of writing code, I think it's idiomatic Java and Python (please correct me), but that's not the way that was chosen for Go.

I don't really use panic() except to indicate bugs:

if playerCount == 2{
go multiPlayer()
} else if playerCount == 1{
go singlePlayer()
} else {
panic(playerCount)
}

However they can be useful inside libraries. For example if you call fmt.Printf("%s",s), where s has a method s.String(), will print the result of s.String(). Sound good?
But what if s is a nil pointer? Well, you may wish s.String() to handle that and return "A nil s", which is fair enough. However is s.String does not handle this case it may panic(), leaving fmt.Printf to recover() and write "<nil>" instead.

http://golang.org/src/pkg/fmt/print.go#L630
I have every right to tell my browser to display all text in green-on-black 12pt Courier

Just a sidenote, but if you do this, make it override author settings. I used a custom (white-on-black) default color scheme for a while a year or two ago, and was floored by how many websites set their font-color but not their background. After the sixth major website that I experienced as gray-on-black, I just gave up.
He didn't get a criminal record either (unlike infrigement, it's not a crime not to "secure" your connection).
Yet... Only one step after this: http://news.ycombinator.com/item?id=4506385
To be fair to the parent, this was setup by the daughter and the grandmother. In Apple's current world, a case like this is hardly farfetched. I don't think this a weird edge case that I Apple overlooks or one you can blame on the user since it's one of Apple's key markets
When I find something I like I end up ordering it over and over again, never wanting to substitute. this solves two things, no decision needs to be made, and cost/benefit analysis of ordering something new says the risk of not getting something good is too high to chance so i'll just keep getting the same thing until i'm tired of it, because I know it is good. boring I know.
Now if someone would just do this for .docx, .xlsx, and such I'd be set.
HN's jacquesm did just that, and made a lot of money doing so.
I fail to see how this is any better or worse than Java checked exceptions. You've got an error, you return an alternate value, which is handled by a different part of the code. Here is a different syntax to semantically write the exact same code, it's obviously superior.
That's the chat I refer on the CREDITS. Thanks for the link I added you and the link there.
We are both responding to: "I love my iPhone but I really don't get this. Apple only has 31% of the smartphone market and Android has 59%, for example." and in turn the original article

In this context the interesting definition of 'market share' is the one that focuses on platforms. There isn't very much interesting to be gleaned by making the distinction that Apple has a bigger market share than Samsung as Samsung and other Android OEMs collectively benefit from Android's market share.
Karma first, cash later – why you •should• work for free in the startup scene
Offering Windows Phone 8 devices is an obvious play for a hardware vendor that's aligned with Microsoft.

With WP8, HP does what it's comfortable doing - hardware - and Microsoft does the software stack.

Whether HP (and Microsoft, for that matter) can gain traction against Android and iOS remains to be determined.
Very nice. I will add it to my list of "friction free" writing webapps. Others on the list include: http://typerighter.com , writespace (chrome plugin: https://chrome.google.com/webstore/detail/aimodnlfiikjjnmdch...) and my personal favorite: http://calepin.co
Why France Needs to re-invent the Jobs Market • The Rude Baguette
"The company was founded as Advanced RISC Machines, ARM, a joint venture between Acorn Computers, Apple Computer (now Apple Inc.) and VLSI Technology."

http://en.wikipedia.org/wiki/ARM_Holdings

Apple have been involved with ARM since the start, back in 1990.
Of course if we did add 6 months (mod 12) then we could have hot July (almost) everywhere.

And an australian christmas in June, but it would be worth it!
I am convinced HN is the Pinterest of software.

Someone made a coffee table out of old crates? Pin. Someone made a fence out of old wood pallets? Pin.

Someone made a realtime messaging library out of animated gifs? Upvote.
To save time for those who won't read the wiki:

This is not a tool to convert Java apps to iOS apps. This is a tool that helps you write business logic in one language so it can be shared without duplication between Android, web (via GWT), and iOS apps. Write your presentation logic with the native tools, ie. Interface Builder, etc. Cross-platform mobile UI support is explicitly avoided. Xcode is great--use it!
Is there a way you could tell your browser to open those links in google docs by default?
If this isn’t nice, I don’t know what is
There was a moderately high-profile drama over it a few years ago which, typically, I can't find right now. Maybe it's just viewed as less contentious these days.
I'm on a different computer now, but iirc the one I have bookmarked is http://www.gigamonkeys.com/book/beyond-exception-handling-co...

Thanks for your link too.
The Stalinist system and its non-Russian offshoots were historical particulars, not generic representatives of utopianism. You imply that it is the utopianism which caused millions to die, but you have ignored other examples in the Fascists and Nazis, who were reactionary rather than utopian (they wanted their nations restored from the damage done by liberals and other outsiders), and yet still intentionally murdered millions.

From the utopian examples you conclude that it is a sort of Stalinist slippery slope from shorter work weeks to genocide. Yet you do not seem to conclude the same thing with regard to the church-and-apple-pie traditionalism that Fascists favored. Why not? Well, in each case the happy pictures used are only tangentially relevant to the regimes which used them. So it is quite wrong for you to draw an equivalence between the left-wing pictures and genocide, without also at least drawing an equivalence between the right-wing pictures and genocide. Or concluding that the pictures are not completely relevant.

I don't think it is especially likely for you to be killed by your western government. But for what it's worth, I can't see any reason to prefer being killed by non-governmental agents, or people who have your ideology rather than a left-wing one. Getting killed sucks regardless.
Yeoman – Level-up Your Daily Workflow
Yeoman is here to help you saving a lot of time developing and deploying your web pages and apps. Here is why you should use Yeoman in your daily workflow.
Accessibility is the Most Important Thing in the Computing World
"I'm sure sometimes that structure is ideal and sometimes it may be the wrong tool for the job. Eventually after I build out more Backbone.js apps in different ways I'll be in a much better position to evaluate the more heavyweight frameworks."

Somehow you saw immediate benefit in Rails in 2005, grokking that having defined structure coupled with out of the box functionality was a good starting point. Why do you not have the same reaction in the JavaScript world, instead feeling like you need to 'tough it out' for a few apps first?

Replace "backbone.js" with "php" and you get the argument I hear from PHP beginners and noobs as well. "After I do a few PHP projects really hacky and crappy, learning on my own as I go along, then I'll be able to judge the quality and useful of a mature framework". That's the reality of what happens to many (most?) devs, and they leave a mountain of legacy stuff behind that someone (sometimes themselves!) have to maintain for a long time.
I suspect that you won't miss the snow. And certainly not the city's inability to plow anything other than the main roads after a heavy snowstorm.

And I dare you to tell me that you miss the beltline traffic! :-)
I'm quite likely the features The Verge website has to offer. If anyone wants to have a quick overview of how this sick story evolved check this out: http://www.theverge.com/2011/10/31/2528253/hp-turmoil-apothe...
Does this work on the iphone? I expect this would be a great alternative to socket.io for mobile that doesn't support websockets or flash.
Sounds like a perfect opportunity for AMD.
i really like that idea; both because i think we'll eventually get to the point where 3D Printers become mass-market consumer and enterprise products (like traditional printers today) so it could be great business for them, but also because i see little room elsewhere where hp could dominate a market like they once did with PCs and traditional printers..
I'm fron Uruguay ;)
Glow - Distributed parallelization of tasks
33 Examples of Login Form Designs for your Inspiration
These login form designs really take the users to a state of surprise and attain much higher standard of website design.
Uhm, then don't code in Go?
Using SVG for favicons would be a much better approach. Otherwise we would just end up in a few years, where we are now. But SVGs are scalable and look as good when rendered as 16x16, as 64x64 as 1024x1024. Of course that won't work for photos and stuff, but you can pretty easily turn most favicons into a scalable vector graphic.
Exporting slides to PDF is better (being a vector format), as long as they contain no animations or multimedia.
Proxying all your documents to Google is something that should be avoidable.
Someone made a logic gate out of crabs? Ignore :(

http://news.ycombinator.com/item?id=3831987
Thanks for the comment drharris. With all due respect, I think this is a paid promotional article, not something that should be promoted on the front page of HN. Consider this:
A) they published the article, then changed it to optize it for SEO. The original title being "How to Recruit Women into Tech: A Madison Ruby case study". B) Event insiders and HN users with very low ratings plugging Madison Ruby in the comments section, and specifically plugging organizers "Jim and Jen" stating that other events people should consider hiring them. C) The author's story is highly unusual - blogger with no previous interest in programming invited (for free) to a tech conference, and afterwards writes very long, SEO-optimized blog post about the event? Hey - I'm sure the event was great, and I'm a 110% supporter of any ways to get young people, and more women into the tech industry. But I think that paid promotional work has no place on HN, because it's disingenuous to present it as a true testimonial.
Do you always need to have a goal to qualify for a "good" quantified self posting? I dont think so!
Maybe it is interesting for me to see what pages i surf, how long i read stuff, etc. Maybe i love to get statistics about myself? Maybe it will help me in the future?
So please, dont use this as the only measurement!
Could you expand on what jacquesm did ? Interested to hear.
I've seen other minimalist blogging platforms and I have to admit this one seems a little more responsive (speed-wise), and truly simple to use while retaining the basic feature set that's necessary for a functional blog.

I've opened an account and will test it out. Great work!
This is the best answer I've seen on here so far as to why Quora isn't ready for prime time, and why sites like Reddit will end up delivering better content over time. Sure, all of the atrocities mentioned (downvoting into oblivion, banning, etc) happen on Reddit too. However, when it happens there, I'll remain butthurt only as long as it takes to switch to any of my other accounts. The concept of karma exists there only to validate one's reputation to self, and not to validate one's reputation to others. By creating a more ephemeral concept of identity, Reddit has solved the 'ego' problem.

In the future, I see social networking sites dividing into one of two camps : sites like facebook, which are about vanity, and sites like Reddit, which are about content. It would be best for future entrepreneus to decide up front which camp they're in, long before they face the pickle Quora is currently suffering from.
Yup, that was my initial thought too. I have two daughters and I have gotten my eldest going with Ubuntu on her school laptop and she's loving it. I'm introducing her to shell scripting and LaTeX (through the awesome Pandoc tool) right now.