skysight-inc/HackerNews huggingface dataset:
It's funny, this brings IMDB almost full-circle to its origins.

Back in the early 90s it was first this huge text file distributed via usenet and ftp. I remember contributing a few points of a trivia about T2: Judgement Day, one being the mirror of Arnold's "Get out." line to the trucker in Terminator to Robert Patrick delivering the same to the helicopter pilot in T2.

Later on, after the volume of data was becoming unwieldy for a flat text file, it was converted to a MS-DOS based database system. You'd download a ton of archive files, unpack them, then run a binary that would allow you to query things like title, year, actor. One of the best features from those days (and maybe the very early web-based IMDB) was you could say, "show me actors that were common to these 2 movies" (or maybe it was "given these 2 actors, show me movies they both starred in" -- or maybe both).

I sorely miss those days of a community-driven IMDB. I was truly saddened when it "sold out" and became a more-or-less commercial portal.
Alex, great article. Check out my startup Infometers.com. We are working to solve this problem and open access to the data siloed on glucose monitoring devices everywhere. Feel free to reach out :) Would love to chat more
What's with the recent trend to use aliases instead of proper installation? (c.f. datafart, on the frontpage yesterday)

mv terminalIMDB.py ~/bin/imdb
chmod +x ~/bin/imdb
You are saying that a man that brought to reality one of the biggest and successful software projects in the history of humanity is wrong calling mediocrity for what it is.

I don't know if you have already accomplished something like that, if you don't go ahead and prove that you can with your political correct methods.
"If you want passive income, you need to create something of real value, then work out how to sell it"

Can you give a few examples that are doable on a small budget online?
So, you could be successful if only the morons in the previous generation would let you? Is that how the previous generation became successful? Sounds like entitlement to me.
Couldn't agree more. The decline in funding shows that investors start seeing that start-ups that don't plan to make money from the start won't get free lunches anymore. My view is that enterprised-focused start-up will make a big come back in 2013.
And learning Lisp will make you a better Haskell programmer. Read PG's arc tutorial.
Aha - thanks, I didn't realize how recent the request was.
Absolutely you need to test your restores, regularly!

I used to use Mozy but when I tried a trial restore it was taking forever and missing some files.
Also it inserts these .PART files into your system that can almost double the size of the folders you're trying to back up.

I looked at backblaze but it doesn't work with server computers.

So I'm now trying crashplan.
I'm really interested in the feature of crashplan which allows
automated backups to other computers. Only problem is that I've not been able to get this to work so far. Backing up to the cloud is working well though. Also its very competitively priced. I've yet to try a restore.
If you haven't launched yet, how are you making $20-30K a month? ads?
Growth Hacking: The Tale of a Marketer Who Writes Code
Would really appreciate any feedback or thoughts on this.

Is it something that would interest you?
Oh, I know. However, it seems that whenever one of these super-cheap technologies from abroad are announced, many folks from the US wonder if it would be available/legal here.
Any analysis which says "Unemployment is .. a mismatch between employee's desired wages and market wages" must be wrong, or at least simplified, because it assumes either that there is a market for jobs, or that the market wages are enough for basic survival.

Agreed. As I said, I'm not a Keynesian. I'm glad you agree that monetary and fiscal stimulus will often be ineffective.

If employees want to reduce risk, why would they want sticky wages? Sticky wages increase risk of having your wage cut to $0.

I'm also curious - you acknowledge that given higher wages, employees choose to spend the money on consumer goods rather than mitigating their risk. Why would they do this if risk reduction is their primary goal? It seems as if you are incorrect about what people actually want.

But my theory says that I have less power over the company than they have over me, because I am closer to living out of my car, should my personal decision to quit prove disastrous, than the company is in going bankrupt because they decided to fire me.

This is true, but irrelevant. To determine "market power" in any model I've seen, the correct comparison is dollar amounts on both sides.

Also, your point about transaction costs does show that there is wiggle room (for both employees and employers) on wages/benefits. That's a far cry from monopsony or anything even remotely close. Perhaps you can clarify your position - how large (in $) do you think transaction costs of changing jobs actually is?
"Aha! moment". Well, I have to say that, for me, this came with the practice, not the study, of FSM's and, in particular Turing Machines. I could not imagine a world without them. Look around you.

While I studied FA formally it never really clicked until years later. Sometimes you don't really learn until you are holding a cat by the tail.

I should say that I've always called them "FSM" when, in most cases, in reality I was using a TM. A TM, of course, is also an FSM, so I'm at peace with my loose use of the term.

I really started to use FSM's with great frequency while working on developing hardware with FPGA's. Everything from reset modules to FIFO and SD/DD RAM controllers and more benefit from FSM's. They greatly reduce complexity and allow you to express very complex logic in code that can actually be followed and understood. For some reason FSM's feel more "at home" in hardware rather than software for me (although I use them extensively in software as well). There's something about looking at the definition of an FSM's states and realizing that it's a bunch of single bits (flip-flops) that makes it real:

// Fictitious example
parameter STATE_RESET = 5'b00001;
parameter STATE_STOP = 5'b00010;
parameter STATE_FORWARD = 5'b00100;
parameter STATE_TURN_RIGHT = 5'b01000;
parameter STATE_TURN_LEFT = 5'b10000;

Later, when you code the FSM --and if you've been doing this for a while-- you can look at the code and almost literally see the flip-flops and latches forming the structure:

always @ (posedge SOME_CLK) begin
case(state)
STATE_RESET: begin
// Do something in this state
end
STATE_STOP: begin
// Do something in this state
end
STATE_FORWARD: begin
// Do something in this state
end
STATE_TURN_RIGHT: begin
// Do something in this state
end
STATE_TURN_LEFT: begin
// Do something in this state
end
endcase
end

It's really cool. Geeking-out just thinking about it.

In the software front, everything from communications packet processors to email address validation and menu processors benefit from using FSM's. I like the application of FSM's to web app controllers where you can encode a lot of knowledge and sophistication into your control module and not end-up with a huge rats-nest of procedural code that is nearly impossible to understand and maintain.

I have to admit being guilty of "thinking like an FSM" at times to the extent that I see the opportunity to use them in almost every project, hardware or software.

Again, today I could not imagine designing hardware or writing software without FSM's.
So, have you learned why relying on "cloud" storage is BAD?
I'd suggest Facebook isn't the best medium for sharing family photos, precisely due to its opaque privacy setting, like you say.
I like Daniel Ingram's approach. He has a strong focus on the essence, and bypasses a lot of Buddhist dogma that seems to get in the way for westerners.

http://www.dharmaoverground.org/web/guest/dharma-wiki/-/wiki...
I liked this part:

"There are way too many people in Silicon Valley who have a lottery mentality, and way too many people who won the lottery who shouldn’t have. I hope that they take their good fortune and use it for good." -O'Reilly
Have not used this functionality.
As I understand it's allready there, but a pain to configure, judging by the countless threads that come up on the mailing list about it.
"Is [the morons in the previous generation letting you] how the previous generation became successful?"

More or less, yes.

Some people, by luck or otherwise, end up moving up the food chain; others down. But one's parents' social class is a strong predictor of one's own social class.
If you're alright with linux and can run the program on a debian derived distro, it's very easy to do these days with debootstrap. I've setup multiple jails on my computer for various software that doesn't play nicely with a rolling release distro all the time (coughskypecough).

[1] http://wiki.debian.org/Debootstrap
[2] https://wiki.ubuntu.com/DebootstrapChroot
More obvious, glaring problems with the Meyers-Briggs:

1. Score distributions along each axis are normal, not bimodal.

2. Scores are discretized to one-bit values along each axis.

3. Error bars are big enough that the combination of facts (1) and (2) results in very similar people getting very different scores, and poor test-retest reliability.

Though my personality has changed over the years, it has stayed similar in a lot of ways. The person I was at 5 has a great deal of overlap with the person I am now. And all versions of me who know about probability distributions would be unanimous in their mathematical disapproval of how the raw test scores from the Meyers-Briggs get reported and interpreted.
As long as I've used awesome (probably 6 months to a year now) I've been able to change my different monitor's workspaces independently using the default rc.lua.

Edit: Based on tessellated's response I may not be understanding the question. By workspace are you referring to the different "desktops" you can reach through the numbered boxes on the upper left (in the default config)?
Israeli Entrepreneur Hacks Girlfriend's Facebook Relationship Status to Propose
she said yes!
So do many other companies in many other countries - including utilities in the US - but the owners are not the richest people in the world. In fact, they probably don't come in the top 10.

I say that to say that having a monopoly is not a guarantee of maximum success.
Wow, the answers here are pretty ignorant of the factors at work. I'm a Black programmer and the first hurdle I ran into was not having access or understanding the concept of a computer until I HAD to use one. For instance, it was in high school where a guidance counselor told us we should send college applications and provide an email address - thing is - I didn't know what an email address was. I learned typing on a typewriter... I'm 26 years old, I was still learning to set margins and tabs while most of my peers were using typing applications on a computer.

My idea of a mouse was the creature that ran to and fro with the roaches in the building we lived in. For the longest, I thought Yahoo.com was the internet lol.

Second, we programmers feed off the community we surround ourselves with - hence this forum, hacker meetups etc. But in my neighborhood - it's non existent with the focus being on sports, programs for at-risk youth and countless other interest - not computers or programming. I say MY neighborhood because I can't speak for all - but the trend is highly prevalent throughout all inner city and rural communities.

The economic hardship is also a factor. Not having access to a computer goes hand in hand with school district funding, family income etc. Also, programming changes so rapidly, the moment you get your foot in - its easy to get discouraged by your lack of understanding because the technique you just learned gets optimized and becomes the new norm before you master the fundamentals.

Saying 1% of this is the same as in the field is ridiculous. Explain the NFL, NBA, FIFA, NASCAR - does those reflect the population? Some states are reaching out to the inner city to teach them to solve the very problems they face using code - other places are still fine with utilizing the tools already made and have no interest in innovating them.
http://www.skypicker.com is really good for the European flights. What do you think?
An Hourly Question You Are Bound to Ask
although I do agree, I still wonder if a generic 62 line python script is worth this much attention.
this is russian smiley. usually used like that )))))
I would take a look at the link in my comment, there is a neat way to using external drives for Mac and Linux. I'm sure there's a similar way to schedule it in Windows, and I wish the author had gone into that instead of his tongue in cheek bashing, but I don't know it off the top of my head.
Autocorrect is a bad idea. The kind of spelling error that iOS corrects (At least as far as I know.) is a syntactic error. Whereas the kind of error that autocorrect introduces is a semantic error. A semantic error is much worse than a syntactic one. At worst, a syntactic error leaves your meaning ambiguous. At worst, a semantic error leaves your meaning incorrect or inverted.

Usually you can read past a syntactic error, but a semantic error could change the tone or meaning of your entire message.
PiCloud dev here. PiCloud has been in existence since early 2009. That we share a "Pi" with Raspberry Pi is just a coincidence; it didn't even exist when we were founded.

We aren't named PyCloud as that would imply we are solely for python, which we are not. While we have very close ties to python (namely the powerful language bindings), we support every programming language.
Indirection. Every time you add a new class to do something and call it from somewhere else you've added an extra level of indirection. This can be good when dealing with complex logic but for many cases it just hinders code readability.
It's been like that for as long as I have used awesome (since 2.0ish, a few years now)
I wonder what he says when he's really angry ;)
I think the importance of the Single Responsibility Principle is much overestimated by many people and introducing terms like "single-responsibilty objects" for what are essentially simple procedures is symptomatic of this. There are many properties of classes one can consider beneficial, but they might in fact conflict with each other to some extent, especially when carried out to extremes like in this case, so what you want is to find a good compromise. The "principle" itself is rather a very fuzzy guideline, so I wish it wouldn't be taught to people since it seems to do more harm than good to their understanding good OO design.

On another note, I wonder to what extent Rails usage of the Active Record pattern makes "models" so clumsy in large applications. It works great to a certain point, but maybe in large applications the Data Mapper pattern (not to be confused with the DataMapper library) would help to isolate a large aspect of what currently goes in a model while keeping a nice OO interface:

http://www.martinfowler.com/eaaCatalog/dataMapper.html
Scott Hanselman discusses his diabetes experience occasionally on his blog.

http://www.hanselman.com/blog/TheSadStateOfDiabetesTechnolog...

http://www.hanselman.com/blog/HackingDiabetes.aspx
> This is true of almost every service on the internet

can you back this claim up somehow? I recall Flicker losing bunch of profiles (photos) permanently because once its deleted, well its deleted.

What you are confusing is planned backups, in case of hard drive failure, and the fact that customer executed delete command and consent to get those files deleted. two different things.
"I stopped reading after..." is an expression. When someone says "It really breaks my hearth when..." they don't really mean that their cardiac muscles are being damaged. Also, calling someone out for bad language counts as constructive criticism in my book.
Too much abstraction or indirection will certainly lead you down that path, but that is not really what I would advocate at all. With Obvious the goal is to make it feel obvious what the system is doing. No big complicated inheritance systems. Instead it uses a bit of indirection via dependency injection and reflection to make the data plugs swappable. Nothing too crazy or complicated.
Show HN: Python script for deploying static websites to aws
Decent list of observations on startup landscape. If you are interested and haven't had an opportunity to read, Mary Meeker's Internet trends (http://kpcb.com/insights/2012-internet-trends) report provides a much more comprehensive view on the subject.
Striking.ly – Create gorgeous, mobile optimized sites in minutes
+1 growth hacker is here to stay
PeopleRooms – Online chatting turns more social and productive
One trouble with testing restores is that my likely avenue in the event of a real catastrophic failure that required a real restore would be to have them send me the data on a hard disk, to the tune of about $200. Not something I want to try just to make sure it works. I could try a download restore, but this would entail downloading a couple hundred GB of data, and wouldn't really exercise the same path I'd use in a real scenario. Any thoughts on the right way to approach it? Doing occasional small restores (usually using Backblaze as a sort of really slow Dropbox, restoring to a different computer when I need a file I forgot to share) at least gives me some peace of mind that the system works at all, but you're right that it's not quite rigorous.

For servers, I've heard good things about Tarsnap, but never used it myself.
> This is great for homework, but in the real life, IO needs to be performed throughout your entire application, and unsafePerformIO is just not an option.

Large Haskell applications benefit from different overall design than the typical C++ or Java app. Our very large Haskell codebase doesn't use IO much nowadays, and as we go back through to refactor older code it diminishes even more.
No I've launched, it worked till november, we got too many costumers and couldn't handle all of them. I decided to stop payments and rebrand everything, make a new bigger team and launch a new website. We do service, therefore we have too many paying costumers now, we don't need any sales for naechst 6 monthes, it's still profitable. But we'll launch in february.
So it's not particularly pretty, not yet well tested, and written on top of boto which has plenty of problems of its own, but I'm hoping this is something that will help people cross the gap between deciding to use a static site generator and their website actually being available online. Hosting static sites on aws is cheap, reliable, and practically infinitely scaleable, but understanding aws enough to be able to run one on top of it can be hard, especially if you're less of a dev and more of a designer. I just wanted to make using the aws architecture to host static sites a little more accessible.

I'm kinda new to python and setuptools so sorry in advance if there are any glaring issues. Please tell me what you think!

And merry Christmas eve!
Having a great meter with perfect connectivity would not solve the fundamental problem; you need to record and analyze more than just your glucose measurements. You need to record your glucose measurements, your medications (date, time, dosages), your diet, your exercise, and probably other things I haven't thought of yet. I use a simple set of utilities that make it easy to record date, time and tagged data (glucose, carbs, exercise, etc) in plain text files. That leaves me free to write software to analyze my data any way I want.

My goal is to create software that uses Bayesian algorithms to tell me exactly what I need to do (medications, diet, exercise) to keep my glucose measurements nice and flat.
> By workspace are you referring to the different "desktops" you can reach through the numbered boxes on the upper left (in the default config)?

Yes, it looks like awesome's "desktops" are equivalent to xmonad's "workspaces".

From awesome's home page:

> Real multihead support (XRandR, Xinerama or Zaphod mode) with per screen desktops (tags);

It looks like support is there. I might give it a shot again, but tessellated's comment about the difficulty of configuration isn't encouraging, particularly when I already have a working xmonad configuration with most of what I want.
> I think an infant has no expectation of privacy.

This is really funny out of context :)
I think some clarity is in order.

While Java certainly isn't a pinnacle of language design, it took quite a few years of devolution to go from something relatively simple like servlets to the steaming pile of shit that is J2EE

I believe he means to say EJB here, and not J2EE, because Servlets are a part of J2EE.
Interesting concept!Not sure how it would work from a writers perspective though? Would the featured writers get paid?
Why is something that can be gleaned from a man page a "trick"? Boy reads man pages. News at 11.

I agree with agwa. I only use chroot for building live systems, not "security". And I use su and sh -c sometimes for overcoming braindead attempts at security on Linux distributions.

But I have always thought that if you were going to use chroot as some sort of security mechanism ("jails"), then you have to strip all the unneeded functionality out of the environment. It must all be removed from the system. If there is a program on the system that can do something you don't want the user to do, then either remove that program or edit the code to remove that functionality (e.g. a reduced functionality shell, etc.) and recompile.

Imagine the user uses SSH to login to a machine that only has a crippled shell (you have edited the code to remove undesired functionality) and a couple of other crippled programs that can't do much of anything. These might be combined into the same binary, similar to busybox. Any functionality that you don't want the user to have simply does not exist omnn the system. That would be my idea of "security".
100 facts about SACHIN TENDULKAR
> it seems to do more harm than good to their understanding good OO design.

Can you provide an example?
I am not sure I understand your point, can you elaborate?
That's partly why it works though, it attracted the talent and investment dollars needed - to allow waste to occur, so then the odds of some bigger successes increase.
Any of you had success setting up ipython notebook with IPC transport? Been trying to setup an out of the box project for running it on the free Openshift paas, in which you can only bind to an internal ip and some internal/external ports, but only managed to use ipc by forcing the config value somewhere on the call stack, as it always uses tcp.

from the feature merge on ipython repo, it seems it may be a bug or unfinished work.

will look deeper.
> Perhaps we should both do something crazy and change our hairstyle for a couple months. Then we can reminisce later about that crazy period in our forties.

For some reason, this plan makes me (a 20-something) oddly happy. I hope you do it.
ActiveRecord is certainly a huge part of the problem and it is the first thing to decouple from your models. However there is a wonderful benefit to making since action objects - you can cleanly do dependency injection without side effects on the rest of your service. That makes testing them much cleaner and more obvious. The other really cool thing you could do is wire actions together with different sources. That could make things like data migrations between different data sources trivial or adding caching to smaller slices of your system easy.
I never understood why people are so adamant to deny the meaningfulness of a new term. They people who think "growth hacker" is just another buzzword are generally pretty uninformed about what growth hacking even purports to be.

New terms are created all the time and most of the time I'm charitable enough to assume there's a reason for them.