skysight-inc/HackerNews huggingface dataset:
> Learning the Internet now, or at least learning about it, is wise. By the turn of the century, "network literacy," like "computer literacy" before it, will be forcing itself into the very texture of your life.

Wow, the prediction is a decade off... but 100% correct for those who live in the developed world!

It's funny, because EXACTLY the same could be said right now about cryptocurrencies, blockchains, and Distributed Anonymous Corporations (DACs). The rapid rise of Bitcoin being just the tip of the iceberg.
Can you provide more details about your situation ?
Pretty much... for effect. People like quotes, especially those written with slightly syncopated grammar.
There is still a difference between bigoted, chauvinistic superstitions and scapegoating, and disagreements about public policy happening in good faith.

You haven't answered my second question. Have you at least thought about it?

Also, consider this:

http://en.wikipedia.org/wiki/Wagner_controversies#Wagner.27s...

It's just music! Why can't people "just listen to the music" which itself has nothing to do with antisemitism? Oh, but that's different, because it strikes close to home for them, right? Well no, the same goes for any homosexuals or those having empathy for them. Or people who just don't like the idea of the US sinking into chaos (violent revolution) because some truly believe that what homosexuals do in their bedrooms or marriages is to blame for their own abysmal performance in both.

You could argue that you personally don't mind listening to Wagner, but that's not an argument for what others should do - surely you understand that. Likewise, the person that started this subthread didn't say everybody should not listen to OSC, but simply asked if anyone else has the same reaction as them. That's perfectly legit, and making such a fuss about is just silly.

Is the article really that good? It seems like the only good thing anyone has to say about this article, is that what someone else said in alleged attack of it is fallacious...? I found it cringeworthy personally.

Lastly, it's not like someone said OSC made good points with X and Y, and then someone else replied "but he's a homophobe!". The ad-hominem complaints are silly anyway: the post itself is only on here because of who wrote it, not because it's that good, and a negative ad-hominem is kind of a valid response to a positive ad-hominem.
That is a problem that interfaces can solve. I agree it's a bizarre oversight that the logging package doesn't define an interface, but it's also one very easily corrected, and since interfaces are implicitly fulfilled, the standard logger trivially meets the interface you define. We've found there's a few other places in the core libraries we expect an interface and there isn't one, but, again, fortunately it is trivially fixable.

I'm actually finding Go to be one of the testable imperative languages I've used. This isn't everything I've developed for it, but this is one of the fundamental tricks: http://www.jerf.org/iri/post/2923

Also remember that global variables are still Bad. If you've got a global Logger, you've already lost. Fortunately, struct embedding seriously mitigates the pain of passing things around and using them. While this will probably break apart into multiple objects as I continue developing, I've taken to having this sort of structure:

type Services struct {
*logging.logger // actually our custom logging package
database.Database // locally defined interface
connections.Tracker // registers connections or whatever
}

I then have my primary objects embed a Services instance, so logging is just "obj.Error(...)". I pair that with a function that can construction a "null" Services, with a logger that doesn't log, a connection registration system that doesn't register, etc. Combined with what I linked, this enables even rather complicated interactions to be feasibly tested in relative isolation. I've also created some basic mock objects for some of the objects that may for instance assert that the Logger is called when expected, etc.

Technically none of this is impossible in other imperative OO languages, but Go has just enough twists on things to make it qualitatively easier, mostly implicit satisfaction of interfaces, which has had consequences beyond what I've expected. Embedding has had surprisingly pleasant consequences too; complicated objects can be safely built up with rich interfaces that do not require you to hardwire them together, or give you excessive access to the internals of the bits.
Python replacing r as the programming language for data science
I think it is a question of complexity, for simple Apps HTML5 is definitely the way to go, easy to iterate, more freedom and prospect of being around (no chance of being pushed out of business for some vague policy issue -- App Store rejection or pull off -- or no risk of being forced to pay portions of subscriptions to a 3rd party).
With that being said, HTML5 still can't compete with native Apps when it come to performance and stability.

tl;dr: Is your project process or data intensive ? native : html5.

Edit: Rephrasing.
I find it surprising that OCaml is not more popular. It provides many of the advantages of Haskell (except purity) and is easier to reason about for most newcomers due to strict evaluation.

One of its problems is that its concurrency support is lacking. But that doesn't seem to be a problem for other languages to become popular :).
I've used Gandi for the last 3 years and DigitalOcean for about six months. I like both of them but for mostly non-overlapping reasons.

DigitalOcean has excellent documentation and very fast responses to my support queries. Their prices are lower. I'll keep using them and recommending them to others.

Gandi gives me very good performance as well as a few extras that keep me interested. They also offer a broader range of services (like domain registration) and have an excellent track record of supporting good causes. I'll keep using them and can recommend them as well.

If I (maybe unfairly) divide user skill levels up into thirds, I'd recommend DigitalOcean to an average user, and Gandi to those with above & below average needs. Basically, Gandi has simpler products for those new to hosting and also rolls out new things like IPV6 and DNSSEC faster if you really want to test them. These aren't always supported (you break it, you may be on your own) but are available early compared to other hosts.

Rather than look at this as a zero sum proposition, take a look at Gandi's 'supports'[1] page, realise that they continue to thrive despite no advertising, and think about whether you want in on that deal.

[1]https://www.gandi.net/supports/
It's interesting but looking at the video at the bottom of the article it looks like swipe gestures on the photo album lag considerably. Has anyone had the chance to play with it?
It serves users in a certain niche. They enter some data, it runs some algorithms and outputs the data in a different way. Also, it educates users on the overall niche topic.

Look, what it does, is not that important. You wouldn't learn anything from it about running your own business :)

Edit: Note: Parent changed his post.
Yes and if the French prononunced it like it's written it would sound like Neek, which is similar to the french word 'Nique' which is a slang for fucking
JSON will be getting binary representation. Its just a matter of organizing sponsorship of the project.
Here in Brazil the main reason for these rejections, what I suppose to be in more than 90% of times, are the salary expectations. It's the first thing they ask about and, even if they call you for personal interview, it's only to build a large number of candidates because they will choose the cheaper one. Almost all the times you will never even receive a return.

Software engineering are positions suitable for kids of that guys who lives with parents forever. It's not possible to have a family o raise children with these kind of careers.

I'm so regretful for dedicating my whole life working with IT and computer programming. I was so curious in the beginning, but nowadays I fell like I was stupid.

I'm also unemployed because I left a position in a bad company about three weeks ago. The last information I received states that a lot of people are leaving as well.
Really enjoying your Soundcloud, and wanted to mention that I too am a SuperCollider lover. As you say, the language constructs and standard library are quite impressive, and they go a long way to facilitating creative coding.

I've been wanting to get into functional programming for a while, so I think I'm going to play with Overtone - seems like a fun way to learn Clojure!
Those unwashed masses are what make modern tech possible. Should we go back to BBS days?
I'm about your age and, yeah ... at this remove I'd use the word majestic, how the huge Saturn V stack would slowly start climbing and accelerating.

Compared to later programs, there's also a "wow" in that NASA was "going to put some men on the moon", vs. the "space truck" paradigm of the Shuttle and other launches which at best send probes to far off planets and such. A different scale in every way.
Does this mean somewhere, somehow Ender's "mind game" is being developed? I would even settle for some battle simulator game...pretty please.
The reviewer seems very quick to dismiss the gesture based UI. His primary complaint seems to be that navigating it doesn't work the same as existing smart phones. Any HN users have any experience with it who could comment?
I like some of what this essay has to say, but generally disagree with this:

When you emerge into daylight, you might well discover that you're a hundred pounds overweight, your underwear is older than the average first grader, and judging from the number of pizza boxes lying around, it must be spring already.

That's depressing, and unhealthy. Programming well is a marathon, not a sprint. Neglecting your health burns you in the long run. In fact, programming is so mentally intense that you probably shouldn't be doing it more than 50 hours per week. A couple weeks at 65-80 is fine, if you're in the zone and truly engaged, but you're probably not doing useful work if you're on your sixth 90-hour week in a row. In fact, I think the people who can truly sustain a solid 70 hpw (much less 90-110+, because long hours get exponentially more difficult) are less than 1% of the population, and not the most enviable for a bunch of reasons I won't get into.

Also, the ability to get to 100 pounds overweight without only mild loss of professional and social status (instead of the severe loss women face) is a male privilege of sorts.

I agree with the general message. Flow is important, and The Game is pretty engrossing. I had a few months in a managerial position (a while ago) where I never wrote real code and the itch to do something real got very strong. Coding is more fun than a video game, if you do it right. But I can't agree that neglect of health is a good thing (I've seen its end-stage, which is pretty horrible) and, if you let that sort of thing fester, it will make your work worse in the long run.
CBOR implementation for Python 3
I'm mid-way through developing a Phonegap/Cordova app that's a fairly basic turn-based game that uses the Canvas to render the game board. So far I haven't found any limitations with the needs of this app imposed by going with the wrapper. Certainly it's not the right solution for every type of app, but in the right circumstances I'm convinced this is a perfectly acceptable approach.
An engineer's emergency kit business card
moo.it looks good. Seems like their privacy policies are nice, and they don't sell out their users. How do they earn money?
I agree! Some of you are painting a fiction here with your overzealous OSC bashing.
It's not well linked from this first page, but this is the introduction to an excellent 12 part series: http://www.altdevblogaday.com/author/alex-darby/

Part 1: A Low Level Curriculum for C and C++
http://www.altdevblogaday.com/2011/11/09/a-low-level-curricu...

Part 2: Low Level Data Types http://www.altdevblogaday.com/2011/11/24/c-c-low-level-curri...

Part 3: The Stack http://www.altdevblogaday.com/2011/12/14/c-c-low-level-curri...

Part 4: More Stack http://www.altdevblogaday.com/2011/12/24/c-c-low-level-curri...

Part 5: Even More Stack
http://www.altdevblogaday.com/2012/02/07/c-c-low-level-curri...

Part 6: Conditionals
http://www.altdevblogaday.com/2012/03/07/c-c-low-level-curri...

Part 7: More Conditionals
http://www.altdevblogaday.com/2012/04/10/cc-low-level-curric...

Part 8: Looking at Optimized Assembly
http://www.altdevblogaday.com/2012/05/07/cc-low-level-curric...

Part 9: Loops
http://www.altdevblogaday.com/2012/09/04/cc-low-level-curric...

Part 10: User defined types
http://www.altdevblogaday.com/2013/01/05/cc-low-level-curric...

Part 11: Inheritance
http://www.altdevblogaday.com/2013/05/03/cc-low-level-curric...

Part 12: Multiple Inheritance
http://www.altdevblogaday.com/2013/05/22/cc-low-level-curric...
I'm doing this. Not Bitcoins, but Litecoins because mining bitcoins wouldn't be profitable at all.

I'm running 7 XS (single core) Windows Virtual Machines that run CPUMiner (or minerd). They produce around 3.6 KHash/s per server, which is very low, but Azure servers don't have a GPU so we can't run GPU-based miners like cgminer. Here's a picture of the running servers: https://fbcdn-sphotos-a-a.akamaihd.net/hphotos-ak-frc3/14155...

Doing this is not profitable at all, unless you have free credits. I have a free MSDN Ultimate subscription that has $150 worth of Azure credits every month. Since I'm only running a very small and simple website, I have spare resources that I could spend on litecoin mining. This can hopefully produce around 1 LTC per month.

Yesterday I stopped running minerd on 2 of my servers and dedicated them to BOINC (cancer mapping). Ripple Labs will give you free Ripples (XRP) for donated computing power: https://www.computingforgood.org/

If you have any questions, please feel free to contact me.
It's not numerical approximations I'm worried about. It's the fact that if you don't understand what's going on underneath, you're not going to have good "intuition" when someone asks a question like: what happens when you don't ignore air resistance.
Need an essay from him on how derivative traders becomes great tech investors :)
Well it's still pretty complicated, because there's no option to go out and hunt for a living. You can't earn food without participating in society, which is a very complicated system of rules that few of us have any influence over (but a small minority have large influence over). Changing those rules to make them more in line with the idea "work or starve" would not be simple. (What about tax? Farming subsidies? What if someone gets a monopoly on the cheapest staple food in an area? What about genetically modified crop patents?)

Also, if it became common to motivate people through starvation, life would quickly become quite terrible. (Just look at the things that used to happen during the industrial revolution. Dangerous child labour, terrible working conditions, lives and limbs sacrificed in the name of progress.)

I'm glad we have idle people who don't want to work, because that way the guys in charge have to make sure that working is at least better than not working. In the not too distant future there won't be jobs for unremarkable people, and I don't really want them to starve.
Part of this is that programming has changed, or perhaps that there are new areas that require different sorts of people.The further you get from web applications, the more like this the people are.

What kind of work attracts people that prefer computers to other people?

Front end is about design, which means it is about people. Backend... less so, but most people do full stack these days anway. So if you do web, you do people (or you are unlikely to be good).

But the technology behind web is easier. That isn't to say web is easy - it is two problems, a people problem and a technical problem. But you are writing in a dynamic language which doesn't appear to be sentient and hate you, and a lot of the more technical stuff gets abstracted away.

In 1995, you wrote some C, you wrote some assembely, and as an afterthought, you made an interface featuring horrible IT guy art and an unforgiving number of buttons.

There was a people problem, but the engineers either ignored or didn't notice it. When someone did - MS windows, iphones... well they made a lot of money because caring about user experience was actually a diferentiator back then.

There are still fields of software for people that don't like people. They work in software research, on embedded systems. If they are not so good technically, maybe they work on government / defence software where the user matters less and the ecosystem still uses C++. A lot of them have moved into mathmatical modelling and HFT, because the money is really good there.

There are other reasons for the change - I think Redit and co have created a cultural change. Programmers go to the gym, and feel uncomfortable not having interests outside of LISP.

But yeah, things have changed. I'd say they have changed for the better. But to me, what we really need, is more diversity.
If you pass an object as an "empty interface{}" you can test the underlying type.

So, the answer is that it is pretty much the same as in Java, since there you also use reflection to get the type of Object:

if (o instanceof String) {...}

The type assertion is just syntactic sugar.

The difference is that Java stores the type in the actual instance, while Go stores the type in the 'reference' (which is normally a type-pointer tuple). Unfortunately, Go's approach can lead to the situation where nil (null) is not nil, when two references have null as its pointer, but different types.
Is there any such thing for Windows?
Everybody knows that you have to use `chucknorris` if you really need the red color:
http://jsfiddle.net/WGSNX/1379/
Many there comment that developing with HTML is faster. This is true only and only when you are not familiar with the native language and frameworks. Really, native SDKs have solved pretty much all the common problems. With native you implement the functionality of your app, and don't have to invent views management, list views, notifications, events management, gesture recognisers, etc.

There was a post (by sencha, iirc) where they brag how they managed to make html version of FB faster. I was reading and shaking my head: you get all that ingenuity out of the box with native. Two lines of code: register the class/nib for reuse and dequeue cell when needed. Hook in NSFetchedResultsController and there you have it: extremely fast and memory efficient solution.
Good luck replicating capabilities of autolayout with flexbox (with rotation support).
Good luck replicating capabilities of Core Animation with CSS/JS animations.
How about localisation? How about accessibility? How about getting anything like Core Data?

Meanwhile in HTML5 land the debate goes on what is the best way to deliver responsive images.

Where does this notion, that mobile apps should be developed with web technology comes from? I don't see similar push for desktop apps. Is this all just because of all the web devs seeing the increasing usage of smartphones and proclaiming that html is the better way, because they are too lazy even to investigate what native really offers?

I know both stacks extremely well and the answer is very clear to me.
I have actually voted, and found this... you know that feeling.
You meant, 4EUR / thread? ;).
The fact that they refer to the postal code as a "zip code" led me to believe the currency/weight conversion was involuntary on their part.
Native/html5 sounds like a wrapper job.
If he's so concerned about the fabric of society and the family why doesn't he write about the evils of divorce? The divorce rate is like 50%, whereas gayness hovers around 5% depending on who you ask.

Somehow the lack of throbbing, purple-veined meatsicks must render it less compelling.

EDIT: withdrawing the above childishness, turns out he does write extensively about divorce.
It is called a valet stand.

Most of the time it's full of clothes so it can't be seen lol
What exactly led them to all having such misconfigured networks?
Walmart Sells 1.4M Tablets On Thanksgiving, iPad Mini A Top Seller
Are regular folks doomed?
<blink>But pg made it!</blink>
Option 3 is that he was making the exact same point you are, and you failed to notice.
Native apps take a lot of time to build, especially when you are a web-developer

True, just as writing in any language you're not familiar with will take longer.

For even a semi-experienced iOS/Android developer, it can be faster than writing an HTML/web app.
Extracts of a drinking diary of an 18th century alcoholic is highly unrelated to modern tech startups, but entertaining nonetheless.

I salute HN for bringing it to the frontpage.
Would you be willing to say how you came up with it? Was it in a problem domain you were solving for yourself, or was it something you had to research on before tackling it?
Wait, we were talking about prototyping an reiterating, not cross platform development.
And even for cross-platform I wouldn't be so sure about "a lot". You may get initial version faster, but all the tweaks and ironing of the cross-platform kinks can eat a lot of time and make a lot of hairs grey.
tl;dr: If you can, go native all the way, but if it makes a lot of sense from biz perspective to support platforms other than iOS, HTML5 is not as bad as it seems.

I recently made an app for http://productivemag.com (for iOS and soon Android) using web tech, but I also have experience in native iOS/OSX dev. I use Cordova as a wrapper around HTML5.

My conclusions:

- HTML5 is great for custom UI and prototyping. You can do that right in your browser, no compilation needed. And Web Inspector is _awesome_. Experimenting with UI in ObjC (or Photoshop, IMO) is PITA, but Web Inspector makes it super nice and easy.

- Native is great for using native UI. I had to recreate not just the appearance, but the behavior of a lot of elements. It takes a lot of time to get right.

- I don't know about Java and Android, but ObjC is a poor language. I used CoffeeScript for the project and it was a far superior experience.

- Debugging JavaScript on Android sucks

- Debugging JS on iOS is pretty good, but it's still more painful than using Xcode's debugger. OTOH, JS is harder to _really_ break. If there's an error, _something_ won't work, but the app won't crash. Not always true with ObjC.

- interfacing with native capabilities is hard. iOS's WebView doesn't expose direct access to the JavaScript VM, so the bridge between two worlds is based on callbacks. Async is much uglier and more error-prone.

- Cordova sucks balls

- you can get pretty damn close with how fast and smooth the app works with CSS&JS, but you can never quite get there. Lots of little bugs and quirks, which are hard to fix.

- it sucks not to have control over how things are rendered. You can make wonders with `-webkit-transform: translate3d(0,0,0);`, but it's not perfect.
Just recently an article at Spiegel Online (main German news site) claimed something along the line of: Bitcoin now passed the valuation of 1.000 USD. For comparision, the price of gold is at 1.300 USD at the moment. As if something magical would happen if Bitcoin would pass Gold. Strange stuff ...

Too many people dont realize that while it might be hard to invest 50$ in Apple, investing 50$ in Bitcoin is always possible - no matter the current price.
Weird. On mine, it's blue: http://jsfiddle.net/Ta7xp/
The best music players for Android
because its proof of work relies on memory bandwidth, as I understand it. ASICs are possible (and in development) but are intrinsically more expensive to produce because of memory requirements.