skysight-inc/HackerNews huggingface dataset:
I completely agree with you: the easiest way to start programming is go grab some tutorials. I did just the opposite to learn C++ when I was in school: I searched how to set up my environment. Then I learned the syntax of the language. And then I opened a C++ template and asked myself: "Ok, I know how to do loops, create variables, assign, arithmetic operations, functions... What the hell do I do now?" I don't know if "For Dummies" books are good (never read one of them), but I suppose any book will be OK as long as it teachs you the basics and leaves you ready to dig deeper in the language.

About the language to begin with... well, I started with C++ and I'm still alive. There are maybe easier languages, but I don't think that does really make a difference if you have a good guide to get you started.

If you want to continue programming in one language, once you have a basic idea I reccomend to start building things. Whatever it is. If you have any doubts, search Google. Any basic question has been probably asked before. If it's not, StackOverflow is your friend.

Last, when you feel comfortable with the language, grab a reference book/web and keep it. I don't recommend getting one of these when you're just starting because those books dig deep in the language, and it's hard to understand a concrete thing if you don't have prior, strong knowledge on other features of the language.

With this reference you can solve a simple doubt just taking a look, and you can also learn new things (and strengthen your knowledge on the things you already knew) just by reading it. In my case (I'm a WP7 developer) I have the MSDN .NET documentation and a C# In A Nutshell book. Reading this last book I've learned a lot of things that don't appear so easily on the internet (never heard of yield-return until I read this book, and it's really great). It's from O'Reilly editorial which, by the way, is the best for me in this kind of programming/reference books.
Have you ever been 17? :)
This is why Linux now claims to be Windows.
I admire this guy's spirit. Yes it's tough, but fortune favors the bold.
Why Twitter No Longer Cares About Developers
Well done guys. It's always good to hear stories from fellow Aussies.

I get saddened every time I hear another startup moving to Silicon Valley from Australia. It is such a shame and I'm not looking forward to moving back there after living in Canada for a year.
as just a reader on this thread, am I being asked to judge whether Nietzsche trumps a Latin proverb?

This is a hard one, and I would need some more evidence. Don't you have a steve jobs quote?
requires chrome 21 or opera 12
That's dangerous reasoning.

Your comment suggests there is greater value in learning from a pedophile while he is out there victimizing children than there is learning from him behind bars.

There are plenty of interviews of convicted pedophiles that help the public understand their point of view (e.g. http://www.putlocker.com/file/19CQ36KXSUTC0408# - many more in scientific journals, less sensationalized than TV)
Jungle Saloon - What Hair Style You want? - StumbleUpon
"My health insurance costs $150/month, and isn't connected to my employer."

If I could change one thing about the US, this would be high on the list. In order to have meaningful access to quality health care, you must have insurance, and for most people the only way to get good insurance is through your job. If you have a job.

Don't lose your job, because if you get sick society is quite happy for you to dry up and rot.
You need to do a better job of blurring (or just black-boxing). I didn't really try, but it appeared I was able with a bit of effort to make out faint images of the blurred characters.
I can't try this because there's no way to use it without a facebook account.
Am I anything more than a junkie seeking the ultimate fix? I don’t know. I may never know. I’m committed though.

Good line. Feel the same way in science, sometimes.
Niiiiice.

This is _dedication_ - not to some pipe dream, not to a pie-in-the-sky fantasy, but to get the job DONE and succeed.

Inspiring and great to read. Definitely cheering you all on :)
Payment Data is More Valuable Than Payment Fees
Nifty!

But how do you avoid the "gorilla arm" problem with large touch-screen monitors?
Speculation: When someone generates friend requests e.g. by allowing Facebook to mine their address book, FB only has to generate a single friend request ID. (I'm not saying this is the "right" way to do this.)
Not really profound, but a good, quick way to think about clock cycles: A 1 MHz machine executes 1 clock cycle in 1 microsecond (ie. 1 MHz is 1,000,000 Hz, and there are 1 million microseconds per second). So a reasonable machine, say 2 GHz, executes 2000 cycles per microsecond. So when the article says 124 clock cycles to execute a shift, that's really saying that on a 2GHz machine, the instruction will take about 124/2000 microseconds - which means that 16 shifts or so will eat up an entire microsecond of CPU time. In low latency environments, that's bad. (Consider - a top tier high frequency trading firm does about 20 microseconds "round the diamond" - the time from receiving a market snapshot to the time that a decision is made and a trade is executed and put on the wire. Granted, they're not on 2GHz machines, but these things add up).

Also interesting, light travels about 1000 ft in a microsecond.
This was my first thought as well. If you are not confident in everyone's ability to categorize the items, you could develop some user profiles as described previously, and allow your more knowledgeable users to categorize items. This would be similar to the way HN allows users with a certain karma to downvote, and how StackOverflow has tiers of privileges.
I'd argue this response was insufficient. I've always been taught that a clean wipe is the response to your box being rooted.

At step 3 one should be thinking "I now know nothing about this box, what's installed? What's modified?" You can't know if its been modified or rooted.

While I'm certain its possible to replace software in the system piece by piece until you trust it again, but that's much harder than what I would say is your only option:

Wipe the disk, put a a new install on it and restore your sites from backups.
Building a Reporting Tool on Top of Analysis Services
First of a collection of posts about practical advice for business analysts doing business performance management through the use of excel and Analysis Services.
C and its descendants have some really, really scary integer overflow/underflow and type promotion behaviour. As a lot of my code lately runs in the kernel, I'm now extremely paranoid about overflow/underflow bugs, and it's amazing how much innocuous-looking code can be a security issue. I'm amazed that even the newer languages like Go don't really tackle this problem. Signed integer overflow is at least not left undefined, but wrap-around semantics are just as good at hiding bugs.

I don't know what exactly the best solution is, but I'd probably default to arbitrary-precision integers which have a highly efficient implementation for native word-sized values and a safe, non-overflowing fallback that can still be made to be pretty fast. Repeated growth checks could be eliminated in many places by some basic static analysis. If you find your code would be faster without the safety, you can always selectively switch to unsafe semantics.

Basically, I think the current situation of overflow-by-default is a premature optimisation that's causing far too many bugs.
Having grown up in the woods, I’m so used to tick bites
that I don’t even notice them half the time. But I
remember this particular bite because it left an itchy
welt behind that lasted for weeks after I’d tweezed out
the tick itself. Long-lasting, itchy welts, I now know,
are one of the hallmarks of an allergy-causing tick bite.

So this guy went weeks with a tick bite without seeking medical assistance?(!)

Maybe American ticks are different, but I'd always advise people to talk to their GP and get some antibiotics.
wow don't show this to PETA
How hard is it to verify a brutal beating? Bruises at least, right?
Another key is people should be held accountable. A lot of people structure their teams with loose accountability, it becomes detrimental to everyone.
On an aside if you haven't checked out Gabriel's ``pipes`` library, its definitely worth a read. It's some of the most elegant Haskell I've had the pleasure of reading.

http://hackage.haskell.org/packages/archive/pipes/2.2.0/doc/...
You might be interested in one of the comments from the blog page, and Hale's reply:

Sorry Wayne, it seems to me that you launched knowing there was an unresolved problem, not unlike the Challenger accident decision. What else could you do? Ground the vehicle until the problem is fixed!! The crews’ lives and the future of NASA was at stake.

... to which Hale replied, simply, "Yep."
Decide the outcome of Apple v. Samsung with this handy flow chart
This looks really awesome. For a long time, I've thought that multi-touch has been very under used, it's nice to see people thinking outside of the desktop OS paradigm. I would imagine this would be quite useful with a Wacom tablet as well - any thoughts on that?

I've never reviewed articles before, but one thought from looking at your video is that it might be nice to be able to group things in a more concrete way, for example, if you are picking out different themes from the article. I was immediately reminded of BumpTop. I think that a part that is not necessarily focused on in the video is more rigorous organization of the snippets that you take out of the article.
> they're have been several months where 1 chargeback brought us near the 1% threshold

With volume so low, it's probably not a real threshold for you. Your processor is looking out for their ratio, since they're answerable to Visa/MC for it. If they've been around a while, they're probably very lenient with such small customers. Your little chargeback won't make a dent in their own rate, so better to keep you around until you might grow to a larger, more profitable business for them. If you still get >1% at a higher volume, THEN you're an actual problem for them.

> we've gotten notices to dispute the chargeback that arrived in the mail after the due date

I have too. It sucks but isn't unusual. You really need to get chargeback notices over the web or fax. MSPs that don't offer a web portal will always be able to fax you the notices, so sign up for one of the online fax services and give them your number. You'll be notified when they get the notice instead of days later when it makes it through the postal system.

> chances are the customer will initiate a chargeback

That was my point. The chargeback limits exist, in part, to discourage business models that create widespread dissatisfaction over the payments. In this instance, they would need to find a better way to deter or handle people messing up the beds than charging a fee to a card on file.
If you travel through a civilized airport such as Singapore (Changi) then they have a hotel airside (ie no going through immigration) and as a bonus the rooms include bathrooms. It is USD10/hr single and USD12/hr double. There are also budget rooms (shared bathrooms) for half that rate. Oh, and swimming pools, cinemas etc.

http://www.changiairport.com/in-transit/transit-hotel
Here's the email I just received when signing up (which I did right before Googling "Filepicker.io Hackernews" to find out more about HN's take on this service):

Hey - just wanted to reach out and thank you for signing up for Filepicker.io. I'm the developer assigned to help you get integrated, so let me know if you are having any trouble, want to know more, or just to say hi. It's always fun to hear from our users.
-Brett van Zuiden

Simple. To the point. No pressure.

Now that I know that this was sent out manually by Brett instead of just another spammy auto-responder I like it even more.

I'd rather have a developer contact me and really want a reply rather than some HTML newsletter with tons of information and sales tactics on it.
> I hope he is treated humanely by the police.
Russian police can be very brutal, here is the video of Kasparov being arrested: http://www.youtube.com/watch?v=cf55YyMC6qk
He is put into police bus, and then you can hear him screaming: "What are you doing?!" and "Aaaay"(not sure if it is transliterated correctly).

I've read some blog post(from an activist who was in the same bus) pointing that he was actually beaten.
Casual disk writes like the ones mentioned in the article rarely effect overall performance, because the operating system doesn't actually do them right now. They're buffered by the OS and happen behind the scenes whenever the disk is free. If you profile a complex program that uses much disk IO, rarely will you find that write calls are hot.

Rather, it's usually reads (and consequently seeks) that matter.

The exception to this is when you're wanting to fsync or fdatasync on every write.

Similarly, the situation of writing an entire new file when you only need to append a few lines to the end may sometimes be desirable, depending on how often that file is read. If it's a fairly short file that's read more frequently than written, it's often better to just write out the whole new file without fragmentation, rather that appending to the end.
Sigh. w3schools claims another victim.
Indeed! You should see time flowing backwards in this YouTube video at this timecode: http://www.youtube.com/watch?list=LLjUp4g-9BFlW78BBJ-lVqRg&#...

Seriously, watch it. Very cool.
Yeah, that would require type inference via the expression/return value though and not even C++ can do that (by and large anyway). But then ObjC as a language in general doesn't seem to care much for type safety anyway. I realise this makes objects quite flexible, but at the same time it's so, so easy to write code with undefined behaviour or with glaring security issues. I've actually come up with a typed variable binding macro for picking apart untrusted NSDictionaries (primarily from untrusted plists), which when used looks something like this:

SSDC_BIND_DICTIONARY_TYPED(result,
NSArray, errors, @"errors",
NSArray, warnings, @"warnings",
NSNumber, new_volume, @"volume-new",
NSString, volume_name, @"volume-name",
NSString, volume_type, @"volume-type",
NSDictionary, fs_size, @"filesystem-size",
NSDictionary, host, @"host",
NSDictionary, cache, @"cache",
NSArray, unmount_required, @"unmount-required",
NSArray, unmount_recommended, @"unmount-recommended");

This expands into variable declarations and type-checked initialisations from objectForKey: method calls which otherwise are very messy. You could define something similar for extracting and binding from NSValues in one step, though none of this is very elegant.
When I got my new Macbook Air I decided to give mariadb a try locally instead of mysql. So far so good! 'brew install mariadb' and you're off to the races. It's 100% binary compatible, as far as I know.

So far working great with some local wordpress/php apps as well as older django apps.

I'm migrating slowly but surely to PostgreSQL though.
I mostly agree with you in that there are perfectly valid reasons for learning similar languages. The quote is too strong, too absolute. But I still have a weakness for the quote because learning languages that alter your thinking is so much more useful than learning ones that don't.

As to ruby/python, I only have a superficial knowledge of Python, so please correct me if I'm wrong, but my understanding is that ruby blocks let you do thinks you can't in python. Rspec is one of the examples that gets talked about a lot. But if I were asked to sum all the numbers divisible by both 3 and 5 between 1 and 100 in Ruby, I'd do it like this

(1..100).select{|a| a % 3 == 0}.select{|a| a % 5 == 0}.inject(&:+)

In my mind, that is a completely different way of solving the problem than by running a loop. My understanding is that you can't really do something like that conveniently in Python. Though, like I said, I really don't know python, so please do correct me if I have that wrong.
Indeed. This is one of my favorite idioms for untarring a remote file locally:

ssh remote_host cat archive.tar.gz | pv | tar zx

Unless the contents are very large, that's almost always faster than rsyncing the remote directory locally, because both ends just stream. No coordinated start and stop for each little file.

There is one big advantage of the zip file format: you can extract a single member without having to read the whole archive. It's usually just two seeks: seek to end, read TOC; seek to position, read member.
Does it work in Safari in the Mac? I tested it there but no joy (Safari 6 on 10.8) I've been struggling with Safari myself - it only allows you to catch paste events if the user is pasting into a text box - unlike Chrome which lets you catch paste events no matter what HTML element type catches them. I think google docs works around this by having an invisible text box capture & re-direct interaction events.
OP wrote

"Chrome (the real one)"

Without Chrome's page rendering engine, Chrome for iOS is really closer to Safari than it is to (the real) Chrome.
JavaScript for Cats - An introduction for new programmers
Facebook and Twitter Don’t Know What You Want
I think people put way too much emphasis on 1:1's- Way too much time and focus is spent on 'what did you do last week' and what to do the next week. This sort of observation & discussion should happen daily and feedback should be immediate.

As a manager 90% of my 1:1's would be 10 minutes of idle chat- because we were constantly aware of what was expected and how we were delivering. Of course I always forced the meetings, just in case employee had something to get off their chest.
The <a> bounding box is still a large square.
People ought to realize that Twitter, Facebook, were created to provide a product, a service, an experience that was not meant to be a platform. Facebook is a social network. Twitter is a microblog. Everything that they do and create thereafter ultimately must enhance and strengthen their core true selves. This includes what is supposed to be "platforms" for developers to create Facebook, Twitter addons. Facebook/Twitter isn't supposed to be a platform for developing social apps. The platforms that have existed are simply meant to strengthen their core values. So once, such platforms no longer serve their core values, they cease
to exist.
Overall a great article and a great point. I've always argued that most of us learn more from our failures than out successes. I've had both, but I've always felt like I walked away learning much more after a failure.

Being good to your employees involves so many things but listening to them should at the very top of the list. You could easily make the argument the most important aspect of any business is its workforce.

While customers are often regarded as such it's rare that you actually achieve customer acquisition success unless you have a happy workforce willing to help and wanting your company to succeed.

I consider this the "happy wife, happy life" of business
XNES: Experimental Javascript Super Nitendo Emulators
I'm no management type, and maybe that's the difference here, but I would not have lectured this guy like that. As a perpetual underling, being subjected to a litany of leading and loaded questions to which one is expected only to "yes/no," in an gladhanding way, I read this post and thought "look, just get to the point." That's not managing, it's haranguing, and it's not good for people. Well it is managing, but in that 50s-60s style. Is this what Opsware is going for?

"Diplomacy is the art of letting someone else have your way."
> Considering that the post is 3.5 years old, it makes me wonder if this problem has always been around.

It hasn't.
It's a kind of belated consolation that people are finally waking up to the potential of transclusion, structured notetaking and active reading in assisting and boosting human intelligence, decades after the onset of the still unfulfilled visions of forefathers such as Ted Nelson and Douglas Engelbart; and it's definitely great to see skillful people working on the vastly unpopular field of general-purpose production software of the literary kind. But this is just the thing that ideally shouldn't be productized and shut into the walled garden of an iPad application, unable to flexibly integrate into a user's broader systems of knowledge and memory. Hopefully the technology will have much more extensive implementations beyond the application.

We should have had this kind of thing as a standard part of our common user-facing software by now; in all software related to reading and writing. All implemented in free software, open protocols and standards, in a distributed manner, not tied to one company or organization. In 2012, I should have been able to practically link a paragraph of my comment here to a line on a local PDF file, another paragraph on that file to a particular portion of a web video, and string a group of such links and transclusions together, comment further on them, keep them under version control, and share them with others, without being tied to a single service or application. This stuff should be infrastructure.

And this is what personal computers were supposed to be all about, before the original naive and optimistic vision of enhancing human intelligence and distributed production and sharing gave way to the current situation where personal computers are used mainly to mindlessly consume centrally produced crap. I'm still looking forward to and willing to work towards an updated variant of that vision, but it's going to be an uphill battle.
>“In a poor organization, on the other hand, people spend much of their time fighting organizational boundaries, infighting and broken processes. They are not even clear on what their jobs are, so there is no way to know if they are getting the job done or not. In the miracle case that they work ridiculous hours and get the job done, they have no idea what it means for the company or their careers. To make it all much worse and rub salt in the wound, when they finally work up the courage to tell management how fucked up their situation is, management denies there is a problem, then defends the status quo, then ignores the problem.”

This is a fantastic description of an awful workplace.
how do i copy the traces into a gist? i can't figure out how to turn off the built in pager widget which is just getting in my way
Crash Course on Canadian Startups: Famous Startups, Incubators, and Resources
Way to over-react. Oh no PORN! Save the children!
Good on ya for putting yourself out there.

Your blog could be interesting, especially if you can talk about programming projects that worked and didn't work for you.

(Your hosting service doesn't have the mojo to appear on the front door of HN.)
what university was that?
I guess when asked we should just put the camera away, calmly sit down and begin crushing their heads.

http://youtu.be/8t4pmlHRokg
Counterpoint: Acorn.
I was interested in http://geekli.st/ until the OAuth login required me to allow "Update your public repositories (Commits, Issues, etc).". What's up with that?
As a result, if Tim doesn’t meet with each one of his employees in the next 24 hours, I will have no choice but to fire him and to fire you. Are we clear?

You get exactly one chance to threaten me. That was it. I quit.

(Honestly, all this management style does is ensure that the only people you'll be able to keep are the ones who will put up with your shit. Not a very good recipe for building a great company, huh?)
sum([x for x in xrange(1, 101) if x % 3 == 0 and x % 5 == 0])

edit: actually sum the list. Of course, it's even shorter if you realize you can write it as:

sum([x for x in xrange(1, 101) if x % 15 == 0])
SkyDrive: Updated, Innovated and Improved Interface.
I love it, quick question - under the websocket connection, I see that you're generating an ID with a pretty interesting algorithm, is there any purpose of it, or is it simply random characters? The format is very interesting.