skysight-inc/HackerNews huggingface dataset:
I really like these two from Randy Pausch.

“The brick walls are there for a reason. The brick walls are not there to keep us out. The brick walls are there to give us a chance to show how badly we want something. Because the brick walls are there to stop the people who don’t want it badly enough. They’re there to stop the other people.”

“We cannot change the cards we are dealt, just how we play the hand.”
I'm a big fan of Zero Dark Matrix: https://github.com/mauricecruz/chrome-devtools-zerodarkmatri...
This attitude has cost me at least one job offer, but my current situation is good enough that I'm not really interested in doing publicly-visible things just so prospective employers can see it.

What can I say, my code goes into private repos, sorry. You reply, I can't offer you a job if I can't see your commits, sorry. Understandable. But then the matter boils down to whether I want the job more, or you want me as an employee more. How good am I and how good are you? I'm not hurting for job offers, but my guess is that you're hurting for developers. Seeing as how you're hiring and all.

I agree with the OP that people in our field often bank on the GitHub account and the Macbook as indicators of "developer-ness". The homogeneity of it grosses me out a little, even though I like GitHub and use many Apple products. It's a groupthink thing that I personally try to avoid, but I wouldn't rail against it.
You can now perform all basic actions in Bitcoin through SMS
Interpreters are allowed, native code execution (including JIT) is not.

Additionally, if you submit an application with an interpreter to the App Store, you will get declined if you make it easy for your users to download arbitrary scripts / code and execute it in your interpreter.

http://developer.apple.com/appstore/guidelines.html

"3.3.2 An Application may not download or install executable code. Interpreted code may only be used in an Application if all scripts, code and interpreters are packaged in the Application and not downloaded. The only exception to the foregoing is scripts and code downloaded and run by Apple’s built-in WebKit framework."

Exporting, however is ok.

Additionally, it's not expressed explicitly but user-created scripts are also allowed.
well, I learned something today. I just remember learning in high school that the center of force is below the center of mass, so that vector determines the direction of travel, and that always posed a challenge.
You don't know what demons those people are fighting on their daily lives.
How to choose the right design agency for your startup
I remember my own interview process with Amazon. I wasn't interviewing for an SDE position but a TPM role. I made it through the gauntlet and it all fell down due to Amazon's grossly unrealistic understanding of what the going rates for experienced PMs are.

I mostly had fun with it, but I was also frustrated.

The phone screens were the hardest in a purely technical sense, lots of algorithm questions that really didn't have anything to do with the job at all, I had to reach into my way-back machine to dig up some of the runtimes. But I made it through three of phone calls like that and had a bit of fun. After the phone calls and a chat with a senior person in the department, I was pretty sure I had a feel for where I was going to end up and what kind of projects I'd be managing. So I boned up on management theory and algorithms and a few other odds and ends.

Flying out to Amazon for the face-to-face, I realized I was wrong. Each face-to-face interview was wildly unfocused, I was interviewing in subjects the interviewer often didn't have any experience in and completely didn't reflect the nature of the phone interviews or the statements I had been given by the senior guy I spoke with. In one interview I'm designing Java APIs for movie tickets, in another I'm specifying contingency plans for overseas warehouse fulfillment issues. In another I was asked by two very junior people who frowned in confusion the entire time as I discussed complex employee and co-worker conflict resolution cases I've experienced over the last 18 years. In fact I was never asked a question about the first 15 years of my work experience, most of which would have been more relevant. But I was asked tons of questions about my side-startup, which was just me and my wife hacking around on the side and getting passive ad revenue and had no relevancy at all to the job.

The "lunch chat" was with somebody who couldn't have made small talk if he had a gun to his head. He just sat in silence and ate his soup the entire time while I uncomfortably ate one of the sloppiest turkey pesto sandwiches I've ever encountered.

I definitely didn't nail the face-to-face, but that's because I was playing trivial pursuit with the interviewers and the answers were arbitrary, instead of knuckling down on the job, the role, the department, the expectations of performance and the responsibilities of the position.

But I did something right because I was called in the next day to go over compensation and was blown away to find out the absolute max pay cap for the entire company was almost a 20% pay cut from what I'd been making in my previous job (a job that I was leaving because I was 10-15% under my peers and had been in a pay freeze for 3 years while the company worked towards profitability -- and yes it was from a metro area with a similar cost of living to Seattle).

Despite that, Amazon would have been good to work at, but even my absolute pay floor was 10% over. I even asked to make up the compensation difference with a mix of stocks or other methods, but eventually we had to agree that there was no way I could live the life I had become accustomed to with what Amazon was willing to pay.
He almost had me with him until he claimed that deficit cutting isn't really necessary while simultaneously taking shots at social security spending and medicare. Other countries spend more on these while having far smaller deficits. Admittedly, not being involved in a couple of wars at any given time does help with the bottom line.

The big problem with the U.S. elite is that they are more concerned with making decisions that benefit U.S. corporations than the country as a whole. By that rubric, the U.S. performed admirably throughout the 2008 financial crisis. Goldman Sachs is doing better than ever! It's a shame you can't buy stocks in cities though. If anyone on capitol hill owned stocks in Detroit the city would probably have been bailed out by now!
Ask HN: Hackers I need your opinion
If you have the skills to develop websites, do you have the title of a web developer or do you have to go to school for the title?
Thanks, that in the pipeline. FYI, it's quite similar in Rethink -- a thread/process per connection is the best way to access the db.
Clearly the author spends no time at HN. If he'd have programmed ZeroMQ in Go then all his exception handling would have been handled concisely and beautifully, just as desired. Better though, if he'd programmed it in Haskell there simply wouldn't be any exceptions because there couldn't be any errors. [Shout-out to Mindy Hiller. You go girl!]
I disagree with the foundations of the argument (Etsy and AirBnB aren't attacking craiglist) but I agree with the conclusions: if all you have is a massive reputation and a massive user base (which I think is pretty much true of Reddit/Craigslist; obviously there are technical innovations there but the marketing/product innovations that they pioneered are now very mainstream) then you're sitting on a tenuous position.
While I like the idea of running a VM in a browser (not sure if I'm convinced it makes sense, I still like the idea):

Argument #1 only makes sense if you support a lot of platforms. Right now you only support Mac OS X (according to another comment).

The number of people who use Chrome globally is larger than the number of people who use Mac OS X. Ergo, if you used Native Client and chrome, you'd be more ubiquitous.

Regarding sockets: chrome supports UDP and TCP:
http://developer.chrome.com/apps/socket.html

If there's one platform to build on that is going to cover a large number of people and give close to native performance, it's Chrome+PNaCl. I wouldn't tell everybody to drop what they're doing and adopt that target (it's not ready yet). VMs in the browser are pretty nascent, too.
The Author admitted that .... He Said "Practically an
advertisement for Go" https://groups.google.com/d/msg/golang-nuts/QWy3YJvcUk0/E22P...
Actually, I wish C had support for templates. It doesn't seem like templates go against C's core philosophy, and not having to cast void*'s back and forth would be nice.
I feel like this could end up creating, in effect, a Pandora for clothing and physical products. With the data they are collecting alomg with previous purchasing behaviors this could really give a product like The Fancy a run for its money.
Unless there's no catch block in the caller function. Then it starts to get messy.
I had the same problem. Here's my suggestion, which worked out pretty well for me: pick a small, well-defined project, and code the hell out of it. It doesn't have to do a lot, it just has to be an example of your best work. Try re-implementing something that's already been done in another language, or in other settings. Then, when you give someone your github account, tell them "The rest of this stuff is me messing around because I love to code, but this project right here... that's how I code when I mean business". They'll understand, and they'll be impressed.

Not everyone can spend 40 hours a week on side projects. Most people hiring should understand that. If they don't, you probably don't want to work there anyway.
Lets start with the problem: he doesn't want to use exceptions (fine, I can agree with that), but also wants a "constructor" to return an error value if necessary. So whats wrong with the obvious solution?

Create a private constructor with a friend function: a "static" factory method. Bam, no more "semi-initialized" crap that you have to deal with.
No need to go for School.. If you have skills to develop websites then you can surely use the title of "Web Developer" !
Bringing back DUIM/Gtk
I came to the same conclusion that Kiro did when I evaluated Firebase a few months ago that I would always end up needing some server-side validation even with the authentication and security rules but I think I just noticed something useful.

Apparently you can get the actual data being used when writing the rules expression by using the `val` function[0] on the `data` variable[1]. However, your docs called the rules expression "Javascript-like"[2] which makes me wonder what limitations exist on the expression syntax. Since I can call `val` to get the primitive value, can I use Javascript functions/properties on those primitives like `length` on arrays?

Here's a use case, given an object that looks like

{ name: "Adam", family: { spouse: "Eve", children: [...]}}

Will the following expression work to limit changing the name of the spouse if there are more than 1 element in the children collection:

"$spouse": {.write: data.child("family").val().children.length < 2}

Not quite sure if you can write a rule for a property within an object but if the above works, then the rules system is pretty damn awesome :)

[0] https://www.firebase.com/docs/security/rulesdatasnapshot/val...

[1] https://www.firebase.com/docs/security-quickstart.html Ctrl+F "We use the "data variable"

[2] https://www.firebase.com/docs/security-quickstart.html Ctrl+F "We use the "Javascript-like"
Don't be offended, I'm insulting all of you equally!
No. x = new X() should not make x assigned such that it is visible inside the constructor of X. The behaviour in the post can only been seen with concurrency.

The issue here is the lack of a write barrier at the point of publishing the reference to the newly constructed object, and the lack of a read barrier at the point of reading the reference to the newly constructed object. You want to stop both writes moving forward in time (the writes in the constructor happening after the write that publishes the object) and reads moving backwards in time (the reads on the other thread reading the old values of the constructed object, rather than the initialized values - may be caused by e.g. satisfying the read from per-CPU cache).

Java's volatile acts both ways; writes are write barriers and reads are read barriers.
The Reddit founders would make fake accounts, post stories, and randomly comment on them. Also, you could trying giving your friends gift cards to be active on the site.
Ah I see, my apologies. I thought it was a beta site, that was't clear to me when I read it.
This is really awesome. A great way to propel an already thriving community around a product. Balanced is killing it!
True. Indifference definitely doesn't work for long.
Definitely...there are lots of forums I used to visit that I've now abandoned, since the subreddit for that topic is so strong, active, useful or well moderated.

Additionally I've heard this complaint so many times, but I don't find Reddit ugly at all. What do people want? Tag clouds, gradients and flash everywhere, or what? What's a less ugly forum/comment layout than Reddit?
No, it's an illustration of how hiring the best and brightest doesn't get you the cutting edge. If anything, hiring the best and brightest prevents those people from creating competitors. In the sense that I describe it, which is the sense in that it apparently didn't occur to YT to indicate a playing tab until now, Google et al are professional sandbaggers.

This feature is straight-up evidence that YT is behind the times. Rationalize away the bureaucracy or inertia or whatever of a company that size all you like, but fact is they're behind the times.

I bet they can write the shit out of a Quicksort on a whiteboard, though.
Department of Energy Hacked Again
Developer 1 is just fine with sufficient networking/publishing.

I don't have a single commit on github. But I have no problem with job offers. I suspect that's because I have author credits on a lot of refereed publications in the past few years and a bunch of recent patents, mostly single inventor. I'd say that's worth more than a bunch of code on github myself, but to each their own.
I used FireBase to power my multiparty WebRTC video chat, and the entire codebase is < 300 lines. What is the most exciting for me is that FireBase also has an iOS and Android SDK, letting me work on mobile apps that plays nicely with my WebRTC app without having to worry about implementing a real time backend: http://opentokrtc.heroku.com/

The only feature I wish that firebase would have is the ability to detect when the last person has left the connection. Currently, the only way to accomplish this is with their nodeJS module.
How would you return the error from the private constructor to the static factory method?
I don't understand the error handling example. Can't you just do the same thing in C++?
You can understand people chasing craiglist verticals because users pay to list stuff.

Whereas its harder to see how reddit can monetise on any scale, let alone how there can be money in individual verticals.
> I think the first thing that should be mentioned in any introductory article on Python threads is that Python threads work great for IO concurrency but they won't help with CPU concurrency. Things like downloading files, sending data over a socket will work nicely.

Python's threads certainly work acceptably for IO-bound purposes, but given the overhead of creating a real OS thread and the potential for GIL thrashing when using Python 2.x on a multicore machine, I'm not sure why you wouldn't favor a greenlet-based solution in most such cases, especially since you don't even really have to drop the threading idiom to do so.
Holy shit. This just changed the game. Venmo best be scared bc bitcoin is perfect for early p2p adoption. Much lower barrier than between consumers and businesses.
Off topic, but the website looks really nice. I love the design.
The advice I heard in that respect is that you go to walmart for a couple of hours and just look at the people there.

But on a more serious note, not only beauty is in the eye of the beholder, but sucess also is. There's certainly some artists bias there, and you should become aware of it. You know all of your projects to the bone, with all their belmishes, and even though every one else is amazed at what you do, you think you're bad at it, just because you know every detail of it.
To extend that, I don't understand his issue with discarding destructor errors -- most errors I can think of during resource release are mundane (e.g., close(2) returning ECONNRESET) and can safely be ignored. Why not just have `int term();`, which returns the mundane errors, be optional and automatically called from the destructor?

Are there any non-mundane error states that would occur during a stack unwind that you can't safely ignore?
The 'Mashable for nerds' just launched
The Dangers External Services Present To Your Website
Ideally you have prototypes and tests before hand that should discover these issues. Then in the future you would pick a different vendor. You can also set up your contract to account for maintenance and for penalties for serious bugs.

A lot of things are possible but they are not happening the incentives are just not there.
Vagrant is awesome, and if anyone is interested, I've put several screencasts together about Vagrant [1], and creating a Vagrant box with Veewee [2]. These will hopefully help you understand what Vagrant is about.

[1] http://sysadmincasts.com/episodes/4-vagrant

[2] http://sysadmincasts.com/episodes/5-create-a-vagrant-box-wit...
Maybe some people do not want to be in this situation:

http://arstechnica.com/tech-policy/2012/01/feds-give-ok-to-d...
Through any means necessary. Exceptions, partially initialized objects, whatever.

But since it is entirely contained within the class now, external code doesn't have to deal with the ugly crap that is inside of the class. IE: A perfect separation of concerns. Adding new exceptions to the constructor isn't a problem, because it is a private constructor... only "friends" can access it. There are a _very limited_ number of functions that can use the constructor.
You don't even need the skills to develop websites!
To be fair, things may also start to get messy if you forget to check the return value of a function.
New smartphones for a new school year
Choosing the best smartphone for your needs is a little like trying to decide your favorite song of all time: sometimes it's a struggle, and other times it just clicks.
That's awesome, thanks for the tip!
Wow, love that line. Source?
If anyone has any questions, feel free to comment here or on the post, and we will answer!
Memory management in C++ is not tedious at all (with implicit reference counting).
Just found a Balanced dev last week on API Xchange and he's working out great. Saved a lot of time filtering contract devs for requisite experience or familiarity. Nice.
>> ...maybe they're paid less or maybe they're female...

I never used to think being female was as big a problem as people said it was until I observed it happen twice last week to a female friend really close to me. I've always been for gender equality in the work place but now I'm even more so.
Who needs ML when now we have Javascript?

I never thought I'd hear myself say that. But seriously, this is awesome. Thank you, whomever!
Well some performance issues for now https://groups.google.com/d/msg/golang-nuts/8_8gAJCpBsI/pBin... but i believe it would improve over time
> I have no way of distinguishing a genuinely talented developer from a bullshitter.

Nonsense. Put him in front of a computer and ask him to write something. Then evaluate him based on that.

I have written hundreds of thousands of lines of code, but only have a few thousand up on Github and quite frankly, most of that is not my best work. Most of the code I write is proprietary.

> Why should I spend half a day or more interviewing a candidate who can present no real evidence that they can actually code, when I can have my pick of people whose Github profiles are overflowing with quality commits?

Pretty simple. Those with overflowing commits on Github either have a very skewed work/life balance or quite simply, have no actual work experience. Open source only pays the bills in very rare circumstances.
Yes actually: proper destruction and cleanup of a mutex must happen, or else a deadlock will likely occur soon.

But proper cleanup of non-mundane issues is a well known problem in all programming languages, C included. If you don't handle the mutex correctly 100% of the time, issues come abound. At least in C++, there is a methodology / philosophy (RAII) that handles most situations.
I think the discussion around Python threads revolves too much on the performance. Imho Python threads work great when used for what they are suited for: managing control flow, or making the code more readable. Like if you have a task in your app that needs to be done every 5 minutes you could just make something like:

class ThreadClass(threading.Thread):
def run(self):
while True:
do_stuff()
sleep(5*60)

and launch it to the background.
You mean like Golden Rice? (http://en.wikipedia.org/wiki/Golden_rice)

The anti-GMO crowd seem to be anti-GMO for the sake of it, not because any rational reason.
Disney Cruise Line's Delicious Chocolate Souffle Recipe
My competitors also love my software. By giving them (at least part of) the source they solve bugs and add features for free. A good developer generally has far more than one good idea or library up their sleeve.

I begin work with clients with the explicit understanding that I am using public code that may be improved during the course of their project. I sell them on the benefit that they effectively get the project foundation for free, thanks to using this process with previous clients. Open code is better tested and guarantees that their business and codebase is sustainable towards the future, if something happens to me or our relationship otherwise ends. This security is invaluable to a client.

Closed-source, private code is a much harder sell even with a long list of happy clients. What guarantee can be given that the software will be sustainable going forward?
> It's a groupthink thing that I personally try to avoid

Because the Good Ol' Boy network of references and handshakes is a groupthink thing you've gamed better.
I wonder what are the needed "browser upgrades" they are referring to?
In this situation, Rust seems more likely. Go may have sacrificed the absolute top end of performance by making GC an unavoidable memory management mechanism. You have a variety of tools to manage garbage generation with careful programming which aren't necessarily obvious on a casual reading of the spec, but AFAIK you can't actually fully escape the stop-the-world GC. It is not clear to me that Go will ever escape stop-the-world, either. There's still some room for it to get better, but the Erlang-esque "per process heap" will probably never be available, or at least, not for a long time and only when writing your code in a way the optimizer can understand.

Still, you will be able to do "pretty darned well" in Go. And there's a lot of use cases for which that will be indistinguishable from the "absolute top end".
If you find this tip useful, you probably need to read the Gang of Four's Design Pattern book. Not every design pattern has been useful (omfg, decorators, visitor, and double-dispatch are messy as all hell. Singleton IMO is an anti-pattern, no better than a global variable... etc. etc.).

But a lot of the simpler patterns, like static factory methods, are very useful in day-to-day programming.