skysight-inc/HackerNews huggingface dataset:
Ask HN: Tools of the trade, 2014 edition
2013 Edition: https://news.ycombinator.com/item?id=5235137

It's been more than a year since the last one.
What have we built this year?
Uni-typed is actually a very specific technical term. Mathematically you can prove type theorems about languages regardless of whether they implement types as language features. Dynamic languages are thus modelable like this and when you do so the first approximation is to say that a dynamic language is a language with a single type (uni-typed).

The reason this is valuable is it opens up directly the techniques for "hybrid typing" such as PHP->Hack and Javascript->Typescript. It also is the basis for the compiler using type inference to accelerate certain portions of the code.
Kelefa Sanneh: The Politics of Religious Freedom
I don't know, but something tells me that it may take quite a while for Scala to fail in any noticeable way, at least according to google trends it's still the most popular functional language - http://www.google.com/trends/explore#q=%2Fm%2F03j_q%2C%20%2F...
Show HN: Linux PAM login with Atlassian Crowd
I am using SQLite (yeah) for blockchain data and the C++ LEMON library for in-memory graph operations. Every module is able to update incrementally.
Peerwire – A platform for finding (oss) projects suited for you
I hope you're trolling, but rolling out high-impact code as is described in this article and comment thread without serious review and QA is akin to business suicide, as demonstrated by the article.
See which cameras keep an eye on you with this app for Google Glass
There will always be some percentage of the population that are desperate for money, but that percentage has been rising. The rise of desperation has correlated with the rise of the sharing economy. How can you say the sharing economy would still have succeeded without that correlation?
Yes, most of these things are pretty old. Why can't you accept that there are people out there who do not think that these features are unequivocal good ideas or necessary?
We should let such firms die when they fall over their own crudulence.
Learn coding by hot virgin babes #CodeBase
> Like if you really want to fully utilise the prototype based inheritance, or the functional aspect of the language, you will basically have to write a whole set of utilities and extension on your own.

Hmm, this is definitely something of an exaggeration. With old-school cross-browser JS you just need something like Backbone's `extend` implementation (jashkenas posted a shorter example a while back [1]) for inheritance and underscore.js [2] for your functional aspects (assuming that's the sort of thing you mean).

If your criticism is that those things had to be written, then this was solved with ES5 which gives you `Object.create` [3] for your inheritance needs and `map()`, `filter()` et al for your functional stuff.

I certainly don't see why you'd ever need 'to write a whole set of utilities and extensions of your own', that reads like pretty hand-wavey and unfair criticism.

> if you need to use it on a big project with a regular team, and not complete freedom of choosing the browser you support, javascript will make you cry more often than smile.

I think you are depicting a pretty broadly-shit scenario that I don't think you can say any other language ecosystem deals with well. Trying to support many different clients is a nightmare across e.g. mobile and the desktop using any other language/ecosystem too, with same 'regular team'. And I don't agree there's anything particular about JS that will make you 'cry more often that smile' in that scenario, but that's obviously subjective.

[1] https://news.ycombinator.com/item?id=7244023
[2] http://underscorejs.org/
[3] https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/create
Getting started, circa 1983
Cool project! And it's cool to see an NTNU student on HN. I study data visualization at the Institute of informatics at UiB, and I really wish we had research groups with the same practical focus you guys get.
Mine is 4. Now I only need to appear in a movie with Kevin Bacon
Disrupt the courier delivery bag – creating last mile customer wow
In Scheme, everything is an expression and because of macros and mutability not all expressions are functions in any sense beyond that by which we commonly use 'function' as a synonym for 'programming procedure'. What Scheme doesn't have is a symantics that distinguishes between statements and expressions.
I fail to see what he's done that's so awful. He noted that SO was designed a certain way, for a specific purpose. There was nothing poisonous or high-handed about what he wrote. I don't see how you can say that.
Analytics on all of my application usage, email, chats, texts, twitter and facebook interactions, and map locations. Should provide outputs like Google Now, but run on my own operating system (preferably Linux-based).

This (http://www.jwz.org/blog/2014/01/psa-back-up-your-shit/) should be good jumping off point to get a lot of the stuff. The system should have customisable hooks written in something like Python to write your own "filters". e.g. "If I've been in emacs for 1 hour straight, pop up a reminder to take an eye break, etc."

Suggestions? Thoughts?
I think it is funny that the most hardcore group of FP enthusiasts seem to sympathize with constructive mathematics (e.g. proof-systems ala Coq) yet the law of the excluded middle is used in the argument here. :)
Bring back tactile controls.

Now that the smartphone innovation has slowed down a little, why not bring back real buttons, wheels etc.? They should be well-designed, precisely engineered and fun to use. I belive mobile gadget design is now awesome enough to make this work.

I wouldn't mind a scrollwheel, or even real radiobuttons (one button goes in, the other pops up). The exact functionality would still depend on the current application.

Since they give real physical feedback they should objectively be superior to the touchscreen-only functions, no?
Aaron Shepard's books give a pretty good overview of how to publish on amazon.

Createspace is pretty easy to use. If you already have a pdf you sell online, you just have to format it for print, and put a cover on it. I found a designer on elance to help me with both.
- Writing a MIDI player on ARM. Not this fancy Android thing, it was for a simple (and old today) ARM board,, no OS and I think 64k of RAM (or maybe 512k, not sure). Doing the audio synth and everything. (this was for a univ. project), it wasn't great, sure, but it did the trick

- How to store data in an embedded Linux system with no writable partitions. (That's more of a hack than everything, still, it worked!)
I found occasional unexpected chat with strangers is usually pleasant. However, I also avoid places where such chats happen often, because they become tiring pretty quickly.

First short talk in waiting room for doctor was pleasant. When it turned out they are too frequent, I started to look for isolated places. I guess it is different if you are lonely and need to talk, but I was not lonely at the time. My need to read or being lost in my own thoughts was much higher. Essentially, if I had to spend that visit (they were long) by small talks, I was tired in the evening and preferred to watch tv and be alone. If I could be left alone, I found it much easier to interact with family and real friends in the evening.

The second mode makes me much happier in the long term (plus I get to keep long term relationships).

I think that this is the biggest problem of these studies. They measure short term happiness burst from isolated events. It is like going on a short ski trip, finding it pleasant and then assuming you would be happier skiing on the very same hill every day all year. Maybe yes, but most likely not.
I saw this on /r/webdev and came here to check if it had been posted, glad it has. I hope you receive a resolution on this, and I'm glad when checking on all the freelancer sites, I decided against used Freelancer.com.
also great for use in the car
Rare Images (real treasures) captured by NASA
> Its an example of the "blub paradox": if you haven't used a pure functional language then its hard to see what the problem is.

The blub paradox has always been a stalking horse for condescension, IMO.

I've used a purely functional language, and I don't see the problem to be that significant. I see only benefits from traditional OO languages obtaining more FP features.
A Watson of your very own.
Cockmail
I think that this is a typical case of a very difficult to measure thing with a very strong emotional charge. So you get a lot of contradicting advice, from very reputable and dubious source. Some advices are disguised as unreproduced medical research and some are disguised as folkloric recommendations. But the signal to noise ratio is very low and a few years later (or just a few miles away) the recommendations change or are completely contradictory. For example, the “Beethoven effect”, baby sleep position, usefulness of colors in baby toys, what to do if the baby cries at night, ...

Another field with a similar level of changes is the diets and nutrition recommendations. Are eggs good or bad for you???
A browser extension / additional service that allows you to tag/lookup the music on google music / spotify by any set of strings. And I mean your own saved collection, not for sharing/exploring/social purpose. This can be faked to some extent by multiple playlists, but it's a bit hard to use in real life.

This would be great help when trying to dj dancing party: now show me a list of "blues", "chicago", "slow", "with breaks" to choose the next song. Actually in this context, separate service / app would be great - it would work on a mobile device, rather than just desktop.

(a long standing idea on spotify list already: https://community.spotify.com/t5/Spotify-Ideas/Tag-Music/idi...)
The kindle versions of these will be £3.99, half the price of the paper edition. The lower price point makes good sense to me -- it encourages impulse buys, and the e-books have no significant marginal costs.
A mobile application to assist in the job of house/flat hunting.

Something that could tie in to RightMove (at least in the UK), access your saved properties, and provide a simple interface to schedule viewings (although I guess this would still have to be a manual process to book viewings, but the app should provide a calendar to store them in).

The app could then alert you when the viewing is soon, and provide an interface for you to rate the viewing, add comments and maybe your own photographs to remind you later on, rather than having to scribble notes down on the same piece of paper that becomes home to your chewing gum the next day.

On a social front, it would be good to see how many other people were viewing the same property, to gauge the interest, and maybe you would be able to see an overall rating of a property based on what other people that have viewed think about it?

House/Flat adverts are still relatively useless in the process of finding somewhere suitable, and until you can view and see a property for yourself, it's impossible to tell. I think it would be very useful to be able to see ratings and comments from other users, such as "the second bedroom is a lot smaller than the photos show, and the flooring in the bathroom seriously needs replacing!".

It doesn't look like there's an available API for RightMove at the moment, so I'm not sure how the integration could happen. Still, a stand-a-lone app could still be a worthwhile idea?
Just giving you a hard time. I'm in the same boat ;)
Yes, coordination is important, too. Well done.
It should be noted that the speaker is one of the lead developers at Naughty Dog, likely one of the greatest game studios of all time. Definitely recommend a watch.
RescueTime [1] seems to be along the right lines here, and is available on Linux. Doesn't appear to be able to track emails/texts/social interaction, though, only the time spent in applications and websites.

[1] https://www.rescuetime.com/
I think this is a key comment. It's not so much that the concept of a stack ranking system is bad in a vacuum. But nothing happens in a vacuum, and individuals will nececcesarily adapt their behaviour according to that which will keep them safe. In a nutshell, the effect of a stack ranking system is to discourage collaboration and hurt camaraderie.
I think the "very large app" idea is something of a strawman. It's used by all languages from time to time in order to say "hey, look, I can be serious too!" but it's clear that with enough effort and familiarity you can write a large app in anything.

I think the real distinction between Javascript and Haskell runs much more deeply and is difficult to talk about. As a hint to the moral here, many of the posts defending Javascript here try to talk about its syntactic flaws as being not so bad. I don't think anyone in the Haskell community gives a damn about syntax—not in that kind of way—because they've all learned quite nicely that syntax is a tiny fraction of what makes a language interesting.

So the real distinction is semantics. Semantics are hard to argue about because it's difficult to distinguish between semantics until you've either studied them in the abstract or experienced several wildly different kinds. It's also hard to argue about the value of different semantics until you've seen those different kinds used in anger.

Prolog is different from C is different from Erlang. Lisp isn't so different from C, but it does have some cute functional tricks. Clojure is different from Lisp in spirit as its semantics are often distributed and immutable, though as a language it cannot be trusted that way, only as a community.

Haskell is far different from all of those because it's pure, lazy, stupidly committed to its System F and Hindley-Milner heritage, and has one of the most interesting and powerful subtyping systems of any language today. It's completely different from everything in my prior list, though there's passing similarity to Scala and OCaml.

Someone might argue that the semantic island where Haskell lives is better than the one where Javascript lives. They might argue historically by noting that Haskell builds upon 30 years of PL research while Javascript is lightly influenced by one, interesting historical point. They might argue categorically by saying that Haskell's semantics benefit so much from being mathematical. They might argue theoretically by saying that Haskell's semantics can be shown to subsume the semantics of other languages (by the uni-typed argument and Dynamic coupled to monadic regions).

Javascript seems to be relegated to saying that it's not so bad because you can get stuff done in it, it's more interesting than C or Java, and dynamic typing is not that bad once you get into it.

From the Haskell perspective, the first two are givens and the last one is silly knowing that in Haskell you can choose to use Dynamic types whenever you like and they become quickly relegated to just the problems they're most appropriate for.
http://webcache.googleusercontent.com/search?q=cache:queue.a...
I enjoy certain intoxicants.
I enjoy hanging around people that are intoxicated

Look, it's wonderful to abstain from some things in life. If/when I have a child I will tell them this "pick and abstain from one addiction or enjoyment that see most people exploring. when you are older you will start to doubt your abilities and look for choices you made to blame it on. if you abstain from that one thing you can always just say 'meh, at least i dont do ___'".

That said, one can give plenty of arguments for why alcohol adds something to your life. Mainly all of the reasons you gave against it were completely self-centred and if you acknowledge that the quality of your life is most greatly impacted by your interaction with others... well, alcohol can bring value to that.

As a side note, if you are going to parties and filling up on "other intoxicants" that make you thirst more for water than alcohol, you're not really doing yourself any favors.
> If it were no longer possible to upload that data the system
> would eventually become either non-functional (depending on how
> the satellites and individual handsets are designed) or
> increasingly inaccurate until no longer useful.

If that were to happen you could just augment GPS
receivers to use more accurate ephemeris data provided from other
sources.

It is, after all, now computed on the ground and uploaded to the GPS
constellation, having it be provided by the satellites is just a
convenience, not a necessity.
I would say riding a local commuter train (ie. on the JR Yamanote-line in Tokyo) versus long-distance (ie. the bullet train/shinkansen) might be a sufficient different environment that talking is more accepted.

As long as one isn't overly loud, of course.

If you're outside of one of the "quiet zones" (like the local commuter trains or the subway); I find that people are really warm and friendly and doesn't mind talking for a while or helping you out a bit. I guess it helped a lot that I spoke some bare minimal Japanese (to the point where some started talking English to me, as the conversations approached more medium/advanced territory).
I disagree with some of the sentiment expressed in the article; mostly functional programming works much better than profoundly non-functional code, and more functional programming usually delivers marginal benefits.

The fact that effects can be used to simulate other effects does not imply that programmers would typically try doing that. In fact, programming style is more often shaped by trivial inconveniences (often syntactic, or the availability of certain libraries) than most of us care to admit. A programming language that merely discourages people from writing spaghetti code should still cause less spaghetti code being written. Freak bugs will pop up from time to time, but not as often.

Shifting an existing language to a more functional style should be a net negative thing only if the resulting extra complexity and bloat gets excessive. Starting from an OOP/imperative position, it gets harder and harder to support an additional (marginal) piece of FP functionality, and after a while it's just better to start over and switch to pure FP, but current OOP languages flirting with FP are not particularly close to that point. They haven't started in earnest to introduce purity to an impure core language (which would be rather awkward, as the article points out). In this situation it is somewhat early to talk about mostly functional programming not working.

Scala might be closest to the point of excessive bloat, but I'm not really familiar with it, and I think that the FP support there is a good thing, especially in contrast to the Java code that it might displace.

(Disclaimer: I program chiefly in Haskell and I love it).
One of my previous companies was producing a Digital TV set-top box based on a Via mini-ITX board. When using component output, the overscan on the image was way too big and we were losing a significant portion of the TV picture outside the displayable area. The next best video mode put large black borders on all four sides of the image.

I needed a video mode that was a better fit for the screen, so I derived a set of parameters to add a new video mode to the Linux drivers for the VT1625 Via video card.

I did this by writing a small C program which could inspect the video card registers on a Win98 machine that was using the official driver. Once I had a set of register values, I used online documentation to transform them into the initialisation values used in the video driver.

The video mode was submitted back to the openchrome project, and as far as I know it's still there. It took me about 5 days of prodding, and another day of trial&error.
Knight never got any government assistance and their trades stood. Unlike when the big I banks mess up, HFT firms tend to pay for their mistakes.
The rental market in London is pretty ferocious. I don't think comments could work because you'd always run the risk that somebody has decided they like a place and want out off other people from looking. In the end you'd still have to check the place yourself. I like a lot of your other ideas though and user photos could definitely work.
I agree that it's generally not such a big problem. It may be useful to draw a cowboy on the screen, but it's more likely that confusion could arise with methods that do something related, not something entirely different.

For instance, in JDBC there is a PooledConnection.close() method and a Connection.close() method. Both Connection and PooledConnection are interfaces. They are semantically related but it's not a polymorphic relationship. PooledConnection does not extend Connection.

PooledConnection.close() must always close the actual physical connection to the database because PooledConnection is used by the connection pool itself. The Connection interface is used by the application and hence Connection.close() may close the connection or return it to a connection pool.

JDBC drivers usually come with implementations of both interfaces where the Connection implementation wraps an instance of a PooledConnection implementation. Arguably, being able to formally declare which interface a particular close method belongs to is beneficial in cases like this.
You know that saying about finding yourself in a hole? A "close out my risk" button is fine for situations like losing money or whatever, but if you have no clue what your orders, trades and risk even are, the only sensible thing to do is stop making it worse.
How does this compare to other regex parsing libraries, performance wise?
* A Vector pseudo-3D Engine from scratch written in Turbo C++ when I was 15. I didn't know about OpenGL, so it was written using the wonderful <graphics.h> packed with turboc. I used it to create a tank wars game, with explosions and fully destructible level, level editor, animated 3D menu, and of course tanks :)

* An algorithm to generate a "spine-spline" for an arbitrary 3D closed loop (simplest form is a torus): Essentially a path that passes through the volumetric centroid of the 3D object and closes with itself (for my upcoming game, to generate the pathway for a level just by uploading the 3D model for the level)

* Porting bitgym.com's vision processing algorithm to work on Android devices: Getting the camera frame pixel data in realtime, downsampling the image, integrating with a C++ vision processing algorithm through JNI, and making it actually finish a round-trip in under 50ms, and work on hundreds of different Android (versions and) devices. Actually considering there are still occasional crashes and bugs with BitGym on Android, I guess this is an ongoing challenge, still being solved!

* Countering the drift and rotational aberration in a high speed stepper motor that was trying to point a laser pointer at multiple precise coordinates on a flat wall, in quick succession (for college robotics class).
What is elegant about the use of an environment variable? From what I can see on the net, the requirement for all GO projects to exist within $GOPATH mainly seems to confuse and annoy people.

A couple of examples:

- https://groups.google.com/forum/#!topic/golang-nuts/9WCKPKTO...

- http://stackoverflow.com/q/17780754

UPDATE: Please tell me what I said wrong here so that I can avoid being downvoted in the future. I was not trying to be offensive. Sorry.
Apparently telepresence like this was the original application of HMDs (like the Philco Headsight); the concept was only generalised into VR (and AR) by Ivan Sutherland a few years later.

Somewhat related: https://www.youtube.com/watch?v=SQ2tCMXOd_w https://share.oculusvr.com/app/hiyoshi-jump