skysight-inc/HackerNews huggingface dataset:
Mistakes happen, and there should have been better safeguards -- backups, locking down production, management oversight.

But, I actually applaud how he tried to take responsibility for his actions and apologized. Both "junior" AND "senior" people have a hard time doing this. I've seen experienced people shrug and unapologetically go home at 6pm after doing something equivalent to this.

The unfortunate thing here seems to be that he took his own actions so personally. He made an honest mistake, and certainly there were devastating consequences, but it's important to separate the behavior from the person. I hope he realizes this in time and forgives himself.
Leap Motion announces May 13th ship date, app store, and Best Buy partnership
Random little project I put together over the past couple days, inspired by the excellent delorean ipsum.
(http://www.deloreanipsum.com/)
This is nothing new....

Here in barcelona, spain, there is a project called guifi.net which started out as a open wifi network and now also has private fiber installed. There are over 20000 nodes connected to the guifi.net network now.

http://guifi.net/en/ (sorry for the bad translations on some parts of the page. We are working with getting them fixed.
The same kind of arguments can also go on, and are just as fruitless to persist in, within the mind of a single developer...
Photorealistic 3D Renderings
Data-driven culture within startups [pdf]
Did you click the wrong button - yes.
Was this your fault - no. So many things wrong here.

I hope he came out ok in the long run, it's a hell of a story.
Woah This is a complicated app. Where do I start?
The irony:
http://www.404engine.com/no404!
Out of interest, why not create a database user account that is read only and use that?
A follow up post to 'A Modern Programming Operating System'
I've did a very similar thing after one year working at my company instead of clearing the whole user table I replaced every user information with my account information.

I forgot to copy the WHERE part of the query .....

The only difference is that it was policy to manually do a backup before doing anything on production and the problem was restored in less than 10 minutes. Even if I had forgotten to make a backup manually we had a daily complete backup and an incremental one every couple of hours.
"I find McLuhan hard to understand partly because I’m just not that smart. Alan Kay on the other hand…" didn't understand him particularly well either, finding much of what he wrote "obscure and arguable". In that, he is hardly unusual:

http://marshallmcluhanspeaks.com/introduction

In fact, McLuhan put most of his emphasis on warning of the dangers of technology rather than being some design guru.

http://www.leaderu.com/orgs/probe/docs/mcluhan.html
You know, I've been thinking about this lately. I've noticed my eyes 'travel' quite a bit more with the explorer on the right. You normally scan text starting on the left, so whenever you change files you end up bouncing across the screen quite a bit. Perhaps I'll move it over today and see how it feels.
Reporting Revenue is a hugely political affair. There are many ways to manipulate that number and it's not really a direct measurement of the health of the industry. It's only real use is for pointing at and shouting "look at what new fangled technology is doing to us. we must restrict everything."
Authentication Abstraction Layer using apis.provider.auth()
Me too. Here's the cached version: http://webcache.googleusercontent.com/search?q=cache:http://...
This is difficult to do sometimes. I just interviewed at a small company that does defense contracting. The person I spoke with by email was very military-sounding in his diction so I assumed the culture was a bit formal and well...stuffy. When I went in for the interview dressed in a suit, everyone was fairly casual, people had pony tails and tousled hair, and we spent a good portion of the interview discussing video games.
Yep, Blizzard is showing something new and interesting at PAX East
I hope this works - I'm sure plenty of people in Manchester would be prepared to get rid of their existing provider if this succeeds elsewhere in the county.
Ag: modern, multi-core ack/grep substitute
C allows those things too, that's the point. Saying "I choose to code unsafely in C, and safely in C++, therefore C++ is safe and C is dangerous" is dishonest. And C++ has plenty of its own dangerous aspects, not just C compatibility.
This. Times 1000. I would even go as far as to fire the CTO because if the data is your bread and butter, the you protect the data.

Protecting the data is called a disaster recovery (DR) plan in those big outdated companies that people like to make fun of.

The reason that these companies have a DR plan is to tell the CEO that 'when' (not 'if') all of the data goes away, (a) how long will it take to get it back and (b) how out-of-sync will this data be (2 minutes from freshness? 6 hours?).
"To complete this tutorial, you need a Windows Azure account"

yeah, right.
If it is about immortalitiy then it is even more important that the pharmacutical companies start getting their asses together and start to produce things.
The problem with that question is that there isn't really any answer to it. It basically just ends up being that at some point someone made an arbitrary decision to do something that way and a bunch of other people copied them.
The Ambitious Quest to Build a Thought-Controlled Exoskeleton for the Paralyzed
Elegant Ubuntu Touch OS impresses for phones and tablets (hands-on)
Better that it happened 2 months after backups were canceled than 6 months or later. If you're going to cancel your backups you're begging for disaster.
Right, not to mention their draconian anti-cd-ripping policies.
In general, abstracting code out into functions can be useful, even when the new functions is only called once.

That is because functions are a well understood abstraction. And having code separated into functions makes it easier for the reader to deduce the coupling points: two blocks of code after another can have all kinds of weird dependencies, e.g. the first blog might set some local variables that the second one relies on. But functions just have arguments and return-values.
> Therefore if you are a minority, or from an under represented gender it will work to your advantage to signal that to the HR Officer, be subtle though.

http://www.nber.org/digest/sep03/w9873.html
Proof that 1+1=2 written in PHP
I disagree wholeheartedly. I've built web apps for the better part of 10 years, and I've never once thought "man this 404 page is a pain in the ass".

1. Create file
2. Write "404: Page not found"
3. Launch
4. Make your 404 page not suck ("Go home, search, etc")
Most frameworks come with one by default. Your site's using what looks like the default Rails one, for example.
Quoting from the article, with my replies:

> String manipulation in C is a tedious chore.

Use a dynamic strings library, like Postfix for instance, and everything else.

> C lacks good memory management.

So strange that you went for C++ for most of your code that is not immune of problems from this point of view.
I could understand that point if you were opting for a language with GC support. With C you can easily get better (that is, safer) than C++ native MM just building a reference counting system on top of your C "objects". This is trivial and it is what Redis, Tcl, C-Python, and many others are doing.

With Redis memory leaks or memory management never was a big issue.

> Error handling is optional and cumbersome.

Exceptions mostly suck, and in system software the only sane way to deal with errors is C-alike IMHO, that is, check the return value / error returned by every function and act accordingly.

> Encapsulation and other object-oriented features must be emulated.

This is not an objective point since many thing that this features are actually a problem.

Weak points IMHO, and C++ and Python with the minority of Python looks like a design error.
This article exists because this is quite prominent. Managers should be looking at resumes for high-skill jobs, not HR.
Stack Overflow Google search turns up Department of Interior gov website
And with C you can use static analysis tools to avoid simple issues as well, plus you get a simple language so you aren't making the mistakes that you get with a huge complex language. OpenBSD is entirely C, and they have a far better track record than most C++ software.
Everyone involved in this should be ashamed of themselves.

The machine pictured is a Stratasys Fortus 900MC, which costs $379,900. An annual lease on a machine of this type is usually about a fifth of its purchase cost, so let's be generous and call it $70,000 per year. Each body therefore costs about $20,000 in machine time alone, before you factor in the cost of materials and the not-inconsiderable amount of finishing that an FDM part requires once it comes off the machine.

There's nothing magical about 3d printing, so we could just as easily injection-mold these parts in exactly the same ABS plastic at a tiny fraction of the cost. There'd be no point, because ABS is a terrible material for car bodies.

Car bodies are largely stiffness-critical structures. In most practical materials, they're much stronger than they need to be once you've made them sufficiently stiff. That's why carbon composite is such an excellent material for performance cars - it's immensely stiff. You don't need to be an engineer to know that ABS plastic isn't very stiff.

The whole thing is hokum, absolute hokum.
OP here.

I realize that the dev environment was a recipe for disaster, and I was simply the one to step on the mine .. but I believe my guilt about leaving the company is 'quite right'. Thankfully I'm not forever afraid of Prod env - I still do a lot of risky stuff .. but I always have nightly backups, and other 'recreate the data' strategies in place.
You should spend more time designing good 404 pages - they can help significantly with retaining users and helping them find what they want.
This was a "sword of Damocles" situation. No backups, no recovery plan, and now clue how important any of these things were.

A thousand things can make an SQL table unreadable. "What do we do when this happens" is what managers are for, not finding someone to blame for it.
Mozilla's Firefox OS Attracts New Vendors, Carriers and Developers
I find it disgusting that the "game designers" are the so called overlords. Fuck them. If you're a developer and a gamer then you're practically a game designer. What ever "education" they had is bullshit. You can go from imagination to reality with just you alone. And perhaps an artists to do the drawing. All those "idea" fuckers a.k.a game designers are just bullshitters.

And yeah this wasn't your fault. It was the CTO's fault. He holds responsibility.

"They didn't ask those questions, they couldn't take responsibility, they blamed the junior developer. I think I know who the real fuckups are."
If you ever notice that your employer or client isn't backing up important data, take a tip from me: do a backup, today, in your free time, and if possible, and again in your free time, create the most basic regular backup system you can.

When the time comes, and someone screws up, you will seem like a god when you deliver your backup, whether it's a 3-month-old one-off, or from your crappy daily backup system.
The advent of HR departments as gate keepers rather than employee facilitators is probably a significant factor in the ever growing incompetency in corporate America. You have people who have no domain knowledge about the job trying to select resumes out of a hat, essentially. Both the systems they have created and the abysmal results are inevitable.
Even worse, they didn't have a backup.
> as there's so much more that can go wrong

Uh. Everything that can go wrong in C can go wrong in C++ by definition.

C++ also adds a lot of extra things that can go wrong which don't exist in C. There are plenty of arguments to be made for C++ over C but "so much more that can go wrong in C" is not one of them.

The C++ FQA is strongly recommended reading: http://yosefk.com/c++fqa/
Related Stories Made One Writer Quit Facebook And Many More May Unbundle Soon
And interesting enough, you can use the same machinery developed for those problems to prove the impossibility of squaring the circle, or trisecting an angle.
> HR bureaucracy and a cover-your-ass attitude?

Most folks don't realize it, but the phrase above is redundant. Intrinsically, the function of HR is CYA for the company. By the time you have full-blown HR, CYA is present.

One example: Need to fire someone? Trained HR folks will help you navigate the minefield of legalities.
There's an argument to be made that the company is doing harm to customers just by existing in such a precarious state. Anything that forces the technical leadership of the company to do the right thing or fail completely is actually better for customers in the long term.
FYI: there is free azure access as part of bizspark
I'm guessing the game was one of these? Likely Age of Champions.

http://www.klicknation.com/games/
I am sorry, but I am still failing to see your point. Let me address the specifics issues you brought up:

Accessing the request object? In Django, there is a RequestContext that can be accessed all over the place (e.g. middleware, views, templates or wherever else you wish to pass it through). It has many helper methods that parse several thing only one method call away.

The template engine? I have used Jinja in some projects with Django. It literally takes less than five lines of code to swap out. Look it up.

The Django ORM? Don't make the calls. I have done a handful of projects where doing everything through the ORM would have been a really bad decision since the web app was mostly about being a front end for an analytics system with processing that took from hours to days to complete. Instead, I wrote raw PostgreSQL/PostGIS SQL queries all over the place that ran asynchronous and hooked up Hadoop Clusters for other items... everything being controlled through django-celery. It was really easy to do. The state currently uses it to do "serious" pollution, health and city growth analysis, hence why I fail to see your point.

You mentioned Sinatra/Flask/Pyramid and such. Thore are good frameworks, but you also acknowledge that there are "smaller communities in few cases" and my point is that is exactly where django shines: the ecosystem.

I like to build "new serious platforms", too. To do that, I use whatever is appropriate from Django and the community and I have yet to stumble upon something that keeps me stuck because of the decision I made.

Granted, it is a hammer and sometimes you need a drill. Let me give you an example: One of the apps I needed to write is a realtime geolocation service. For that, I use websockets and node.js because of its non-blocking and persisted connection nature. Does that mean that I need to ditch Django altogether? Hell no, I let the front reverse proxy direct the websocket traffic to node.js and the rest to django. My node.js code is so tiny because it is just a Pub/Sub client proxy. Most of the work is done in async Celery/RabbitMQ workers (that use the Django ORM by the way). Doing this with Django is easy (well, to be fair, the credit should go to the vast amount of python libraries).

I "believe [in Django] technically"... why? Because in the four years I have been using it I have yet to get stuck because of my decision to pick it. I don't use it for everything, but I do for 99% of web related work. Once again to the risk of repeating myself, I pick and choose the Django parts I need in a per-project basis. Funny enough, I still laugh everytime somebody complains about some performance thing and I pretty much see their face jaw drop to the ground when I install varnish in front, change two lines of code to tweak the expiration headers, and deploy the static content with a good CDN. 5x performance is not surprising. Yes, there are several Django apps that make this trivial to do.

Sorry I still don't see the specifics of the points you are trying to make.
I'm not sure I have an accurate answer to this but let me try.

I feel like the younger companies have developed more aggressive engineering cultures. Tudou, Dianping, Douban seem to embrace more their technical side, when Baidu for example has more of a business and sales spin to it.

In particular, I've noticed this difference through;

- The involvement of these newer companies in OSS, tech event s...

- The reaction of local geeks towards these companies: you'll find a lot of young Chinese programmers who think Taobao is a pretty awesome company when it comes to tech, Baidu not so much (I think most of them refer to it as a sales company...).
I drive an old Montero. I frequently must wait a week or more for parts to be shipped - if I can even find them online. I dream of a day when I can walk into a shop and pay a premium for parts-on-demand.
Microsoft BizSpark includes free Azure access
I want to hear people who flopped say "just ship it".

Because how many second chances do you get?

The people who get lucky always say "do what I did" - it's a constant theme in business, they take credit for their actions when it was more of right time, right place, that cannot be easily duplicated.
>Its so archaic to see terms like "the computer" thrown around. The term is meaningless today as it was back then.

Why was it meaningless back then? In Nelson's earliest writings the term "computer" is used mostly to mean big iron with a text UI delivered via a teletype. I think most of his colleagues at the time shared this definition, making it at least meaningful through consensus. Regardless of that, though, if you think it's meaningless now keep in mind that Nelson uses the word "technology" as the main object of his criticism and offers "the computer" as an example.

>I hate this catch-all term that's just a strawman for critics to bash nerds with. If "the computer" is awful, then it might have more to do with management and the business owning class's inability to leverage all these amazing technologies into a product the end user is comfortable with

One of the points Nelson makes in his recent "contrarian computer history" book [1] is that the fate of the computer was sealed before the management even realized just how big of a deal it was. In fact, I think it's fair to say that early on most research fields were shaped more by the participants in those fields than by their non-technical superiors. You could argue that he makes this point precisely because we in the field tend to blame the management to easily for long-standing design decisions.

This brings me to why I dislike his use of the word "tekkie": it promotes a view of an ivory tower critic bashing nerds when in fact the critic in question is one of the nerds that made computing (or at least hypertext and "hypermedia") happen. He, however, happens to disagrees with most others, with a prominent exception being Douglas Engelbart.

>This is like Nelson pissing on the internal combustion engine and calling every engineer in Detroit, Seoul, and Tokyo a dimwitted anti-social jerk because his 1986 Datsun was a piece of crap.

You can exaggerate it both ways. You could say that this is like someone who saw the birth of "the car" and realized that every car on the market had inferior lever-based controls in spite of his arguing for a steering wheel for decades.

[1] See http://geeks-bearing-gifts.com/gbgContents.html for summary.
This. We all mess up, but only the best ones will deal with it professionally and learn from it. Sounds like the OP is in that group. He didn't try to hide it, blame it on anyone else, or make excuses. He just did what he could to fix his mistake.

When people say "making mistakes is unacceptable - imagine if doctors made mistakes" they ignore three facts:

1. Doctors do make mistakes. Lots of them. All the time.

2. Even an average doctor is paid an awful lot more than me.

3. Doctors have other people analysing where things can go wrong, and recommending fixes.

If you want fewer development mistakes, as a company you have to accept it will cost money and take more time. It's for a manager to decide where the optimal tradeoff exists.
No but I'm a Michigander!
I think Visual Studio is the best IDE there, but I'm not sure I'd be more productive switching from a nix based environment just for the IDE. Would anyone whose gone from nix to windows for python web development be able to comment on the experience and tradeoffs?
Thoughts on Working Remotely
My in-dev game thing (http://www.aliengrit.com) shares game logic code across the client and its Node server. If you've cleanly separated rendering logic from game logic for all game entities, it works really well. (i.e. the server just runs the same code without the graphics bit attached).
Show HN: Grunt 0.4 boilerplate
Hey guys, I've started to use grunt recently and and created a small boilerplate. Let me know what you would like to see included.

I am using in my projects so far and it works great.
I thought that Emberwind port that Opera wrote/commissioned to show off their HTML5 support was pretty impressive already (and that was in 2010):

http://operasoftware.github.com/Emberwind/
They’re really not. Go look at anything on (for example) Turbulenz ( https://turbulenz.com/ ) and that’s as good as anything Flash has done.
You only need an azure account if you want to deploy your app, the last step. If you just want to run locally and check out python in VS, you don't need an account.
I got that at first too. Just refreshing it worked.
I would strongly suggest making sure it /works/ before you ship...
> we are only allowed to consider whether or not they say they have the skill we want.

C'mon, you need to think like a bureaucrat: Just add "clear written communication skills" or "Can write details about past projects associated with C#" or whatever level of specificity you need.

Yes, it's a dumbass game.
> it is amazing how even the non-technical users could now finally "visualize" the project life cycle.

We sell tailor made wedding dresses online. We use Trello to control all steps of the order-to-delivery process. Our pre-sales and post-sales teams share the same cards organized by bride name.
There are plenty of malloc alternatives (tcmalloc,jemalloc, etc)— and yet I'm not aware of any that has bothered with a realloc_only_if_you_dont_need_to_move(). I'm not aware of any higher level language construct that reduces to that— where your program flow changes depending on details of the systems memory management. If this were an interesting case, I would have thought someone would have implemented it somewhere.

Seems to me that you're making a weird strawman argument there.
I'm curious to know how VS compares to PyCharm in terms of how rapidly the Python environment is able to restart after a code refresh.

It's been my personal experience that PyCharm's Run/Debug configuration is fast to restart in Run mode, but considerably slower in Debug mode, taking 5-10 seconds to restart and attach the debugger. So while I'd like to be able to work with breakpoints and inspection always available, in practice those tools have been harmful to my productivity.

If VS is better or faster in this regard, it might be worth a try.
That is good advice, just make sure that it doesn't look like you are stealing your customers/clients data.
In the article it says your coworkers looked differently at YOU. Did anyone look differently at their database without back ups though?
How to Manage More Than One Social Media Site for Your Online Business
Your CEO was correct. He should have also said the same thing to the guy who cancelled backups as well...and the guy who never put in place and periodically tested a disaster recovery plan. So much fail in this story, but mistakes happen and I've had my share as well.

I once (nah twice) left a piece of credit card processing code in "dev mode" and it wasn't caught until a day later costing the company over 60k initially. Though they were able to recover some of the money getting the loss down to 20k. Sheesh.