skysight-inc/HackerNews huggingface dataset:
Anyone know what he used to build that--Lego technic?
At the first sentence I was like "..really?" then you were like "DHH ... enjoys fashion" and my head exploded. He dresses like a high school kid.
So imessage is blackberry messenger for iphone?

(I'm not a iphone guy, I have never heard of imessage before. This is not trollfood.)
> cue the downvotes

Why end your rant with an insult to its readers? Please leave the martyrdom out next time.
"I take a 15-20 minute ride into the city every morning and I've built a few apps on the way."

For me its a netbook (Samsung NC10, 1024 by 600, 70 UK pounds off ebay) and I write worksheets and presentations and the occasional multiple choice quiz. That 2x 25minutes every day is really useful.

The iPads I see in the wild here are mainly management types with leather wallet cases (no keyboards).
Nothing makes you look like more of a jackass then throwing gifs into rails commit comments.
Oil Prices | Newsflavor
We already have that: People who don't declare good variable names, people who don't follow DRY, creating spaghetti code. That's like the punk of programming.
Thanks. Unless they were prototypes I don't understand why the system isn't always on, or at least difficult to turn off.
It doesn't look like LEGO. Probably a few metal brackets and some pins from a hardware store.

I'd be interesting in the mathematical details myself. Computer-reliant optimizations are so interesting. . .
You are right, sorry, I've removed that now. It was not meant as an insult, but didn't add anything meaningful either.
I don't have a well-formed opinion on this, but how would you propose handling nested attributes if mass assignment protection was managed in the controller?
Auto-spell correct, FTW!
I started thinking about the dictionary attacks, too, and ultimately you're right. Not worth enforcing and easy dropdown changing is eventually what we want. Thanks for your thoughts.
You must not have been your average 18 year old. This guy had read/write to GitHub and potentially many more sites, imagine what damage he could have caused. He may not have done it perfectly but he Did the Right Thing(tm).
What you really want is a netbook hackintosh running OS X. All the benefits of a small form-factor -- but its a 'real' computer, can run a compiler and a webserver and doesn't put any artificial obstacles in your way. Program development at the command line, browser (any) with flash and install anything you like. It will sync with your office desktop and its cheap.

Not everyone has the nous or the patience but if you do its a doddle to do and works really well.
Yeah I really feel for this guy. I don't blame his final solution, it was totally necessary. Issue #5228 is painful to read.
I forgot about that. I was more referring to my old iPhone 3GS that I can no longer activate because I don't have a SIM that fits in it ...
brogrammers are just programmers that are irreverent. That's it. Nothing to get up in arms about.
On the other hand [...] the use case could have been satisfied with a mechanism much more in line with the existing language.

In fact, we've de-facto had such a mechanism for decades

Unfortunately, that's not the case. There are actually two primary use cases for VLAs:

1. Variable-length multi-dimensional array parameters:

// C99
double trace(size_t n, double mat[][n])
{
double sum = 0;
for(size_t i = 0; i < n; ++i)
sum += mat[i][i];
return sum;
}

/* C90 */
double trace(size_t n, double mat[])
{
double sum = 0;
size_t i = 0;
for(; i < n; ++i)
sum += mat[i * n + i];
return sum;
}

While this may not look like much of an improvement in simple cases, not having to manually emulate array subscription is quite convenient in more complex ones.

2. Allocation of variably-sized objects with automatic storage duration. Some libc implementations provide alloca() for that purpose -- unfortunately, it has issues (see eg http://c-faq.com/malloc/alloca.glb.html ).
Lawrence Krauss describes how to get A Universe From Nothing
No, asteroid 2012 DA14 will not hit us next year
I don't think there's a disincentive on the C++ side - the best Windows apps use C++ so improving C++ helps make Windows a strong platform. The article also points out many of the most missed features of C99 are straightforward, and hopefully the tests would be too.
I agree with the author, people at my old job would have this setup and I found it odd, I do have an Android tablet but I use it very differently from my laptop, I use it for browsing, watching movies, etc and video skyping, if I ever have an urge to do "real work", I always fire up the laptop, I think some people fell a little to hard for all the marketing of these tablets as they really convinced themselves they no longer need a real laptop, IMO the two complement one another.. after a long day of work, some days I just don't want to touch a regular computer again but if I need to look something up real quick, or just read articles, the tab is great for that, it gives a different user experience which is a nice change.
As I understand it, basically. Granted, I've never used BBM before.

If you try to text someone with iMessage, it will send them an iMessage instead of a text (assuming you have iMessaging capabilities). Aside from being free, the only other real difference seems to be typing notifications.

There is also upcoming/beta desktop client integration coming with Mountain Lion, fwiw.
".. bro! Keep your fucking work life balance."
...
"This is wall street bitch you don't belong here!"
...
"Damn it feels good to be a banker!"

http://www.youtube.com/watch?v=ROlDmux7Tk4
This could've helped me last week. I was pulling my hair out debugging a CUDA implementation of the SHA3 candidate BLAKE, and after a full week of debugging the same 70 lines (and one complete rewrite) the issue turned out to be most-significant-bit padding with arithmetic right shifts. I just changed every 'char' type to 'uint8_t' and the code worked perfectly.
Ask HN: Accept offer to apply free online courses to CS degree if I continue it?
This past week, an unsolicited offer was made to me while hunting for cofounders at the university I went to:<p>The administrator I was speaking to offered to let me apply free online courses as transfer credits to me degree, as well as test out of courses in their dept. On top of that, he offered to speak to instructors from other depts who teach courses courses I need to seek similar flexibility.<p>I have about a year to go to complete a CS degree, but have been out of school for 3+ years & essentially taught myself most of what's left for the degree. I quit my job in December to pursue my own startup & have a potential investor. I highly value education, but feel degrees from most schools don't represent attained knowledge, so much as the ability & desire to graduate by any means possible.<p>Plus, it feels as though my desire to become a serial entrepreneur is steadily moving forward. I've lead teams that have placed at or won Startup Weekends, am a "buspreneur" for the Louisiana StartupBus that leaves Tuesday & afterward, I'll have some initial funds (ie. won't need to get another consulting gig for a while after I finish the current one).<p>I've approached friends and family members for advice & the majority opinion is, as it always has been, to finish the degree. I'd rather start a discussion with the administrator about implementing a general system that others can take advantage of. So far, the advice has been to complete the degree for credibility to start that discussion, but I don't think that's the only way to get that cred.<p>What's the HN take on this?
Did GitHub Suspend Egor Homakov account?
I hope this isn't the beginning of something ugly with GitHub.
I'm glad to be a piece of your evidence.

I have college degrees in Entrepreneurship and Marketing and have been just a "non-tech" guy for too long. I got tired of not being able to build anything myself, so I'm working my way through your book right now.

Of course I have a specific application in mind that I'd like to build, and perhaps this is evidence of my naivete, but it seems like if I were to just learn how to do that, I would be limiting my creativity. The difference between learning how to program only a specific type of application and learning to program in general seems like the difference between learning how to paint a bowl a fruit and studying the art of painting. What happens when you want to paint a bowl of fruit with a landscape behind it?

Again, I may just be one fool, but it is not the allure of being able to program a specific application that I am after, it is the pain of being ignorant that I am trying to assuage.
The point, though, is that this is more of a Rails issue than a Github issue. If Github gets it wrong, others are likely to.
Facebook's IPO: Real deal or Internet bubble?
Mission Control, Built for Cities
When we're on Twitter, are we doing real work?
When I bought my iPhone unlocked direct from Apple, it asked me for a valid SIM to activate the phone.
Online Marketing Information: Online Marketing Means
Show HN: My new OpenVZ-oriented distro based on el6
Hi HN,

I've been working on a distro that incorporates OpenVZ virtualization technology with an OS base derived from el6 upstream. It has all the usual features of el6 (gnome2 desktop, apache 2.2.15, php 5.3.3,etc) and has an OpenVZ kernel along with OpenVZ utilities built into the distro without any further tweaking.

Here's the project URL: http://www.classiccitytelco.com/?page_id=488

It's really a labor of love for me as I've always loved fedora/rhel and openvz but always hated the amount of time it took to get all of that working correctly when setting up a new server or workstation (from installing the kernel, the 3rd party repos, setting sysctl.conf just right, etc) and RHEL, CentOS and Scientific kindly ask not to expect support (community or commercial) when you use a 3rd party kernel. As a result, as it's our main focus, we are offering this distribution for anyone to use free of charge.

I hope you guys enjoy it and I welcome any comments or questions that you may have.

edit: fixed spelling
So why would two factors common to both femininity and masculinity be something that women focus on to represent true masculinity. It doesn't make any sense.

This is nothing more than the propagation of an unidea that people tolerate because it doesn't make any value judgements about either gender, or something.
Is this supposed to prevent him from doing further damage? I hope this isn't the beginning of something ugly with GH.
I'm not sure if this would interest you, but there are some theories suggest that you can "use" your mind to travel through the universe, faster than the speed of light, you can also "use" your mind to slow down time, travel through time and also slow down your ageing process. Before I say anything, let me make it clear that I'm neither being biased towards nor am I trying to promote any religion, I just want to share whatever I've read so far - There are many REAL Hindu saints (not the ones on TV) who advocate this theory, they say that death is something that should not be taken for granted, rather you should fight against it (http://en.wikipedia.org/wiki/Ramalinga_Swamigal). According to them, your life-span depends on the rate at which you breathe - the slower you breathe, the longer you live. Many saints in Hindu mythology, have lived in terms of multiples of hundreds of years. Many books even say there are archaeological evidences to support these facts. But honestly, I've never taken the pains to find out citations for them. nevertheless, its always interesting to read such stuff.
Minix 3.2.0 (microkernel OS) released
I'm not talking about self-taught vs. college educated. Computer science can be self-taught. You can buy all the books at a regular bookstore and you don't need special lab equipment or anything. If you're a self-taught developer with a passion for the profession and you're a good learner, you'll probably end up learning some CS along the way.
Seedcamp America Trip visiting the Googleplex
My first admittedly smart ass remark was "If you have to ask, then the answer is 'No'" But that doesn't treat the question as legitimate---which it is. For me the answer has always been 'Yes' but perhaps not for the reasons found in the remarks below the article. I'm more or less addicted to learning computer languages. Part of that is plain curiosity---I just like to see what is in the offering. The rest is the certain knowledge that each new language gives me a new point of view. Sometimes a new solution to a problem; but in so far as language shapes how things are viewed then the addition of additional material is almost mandatory as far as I can see. I think someone mentioned "One a year"---I don't know if I'd set a time constraint on the idea, but I'm usually at work learning a new one at any given moment. I also re-learn old friends in terms of using 'new to me' compilers; Borland->MVC->GCC, that kind of thing. I also believe that anything that keeps the mind active in my chosen field can't help but be a good thing :)
Try python - it would blow your mind.
For 7 years, I too was a PHP believer for its simplicity. It was my favorite language by far.
1.2 year ago, I started to use python and was hesitant with it at first. As I worked more and more in python, I simply fell in love it. It does lot of greats things that PHP does (dynamic arrays, dictionaries, and functional programming) and adds lot more functionality that PHP is missing.

1. How would you add a new element to an array?
PHP: array[] = 2
Python: array += [2]

2. How to combine 2 arrays?
PHP: ?? array_merge(...) ??
Python: array += array <- it is as simple as appending to a string.

Lot more fun examples: http://python.net/~goodger/projects/pycon/2007/idiomatic/han...
As well as the practical details of barrel shifter implementation design that psykotic points out, older CPUs couldn't afford the space for a barrel shifter and implemented shifts as a sequence of one-bit shifts. So for instance the 8086 took 8 clock cycles plus another 4 cycles per bit shift, and on that kind of CPU it was definitely not as fast as an addition.

Incidentally there is a standard trick for integer division by constant which allows you to convert it into a series of 3 to 5 shift and add/subtract operations; any decent C compiler will implement this. _Hacker's Delight_ has the explanation of the algorithm, I think.
Django's architecture - the good, the bad, and the ugly
> In any context, documenting every function is good practice.

If your API is procedural (is RPC), then yes, procedures being your core abstractions that's what you document.

But REST is not procedural, the core RESTful abstraction is the resource and it is that resource which provides state transitions from itself (to itself or to other resources). In HTTP these transitions are a triplet of (method, URI[, body]) but that's incidental.

Because the core abstraction of REST is the resource, resource types (or media types) is what you document, and the possible transitions from a media type are documented as part of that media type (more precisely, the media type's documentation indicates what the transition hookpoints are — for instance in HTML they're <link>, <a> and <form> — and what the semantics of those hookpoints are relative to the resource — if any).

To clarify, I have absolutely no issue with your goal of documenting your API and every endpoint of your API, I just take issue with your claim of documenting RESTful APIs when the very structure of your tool and production preclude any possibility of RESTfulness.
Good idea. The resolutions I support are based on the popular resolutions according to my analytics stats. I'm not sure if multi monitor shows up there. But yeah, that would be a good niche to target, thanks :)
I'm going back farther than that--to gizmo's contention that civilized societies don't engage in warfare. spindrift made the counterpoint that "only civilized societies can...engage in organized warfare", to which Genghis Khan may or may not be a counterexample, but Alexander's Greece is every bit as much of a counterexample to gizmo's argument.
Much better than Xvid
NPR chief Gary Knell: "Radio isn’t going away, it’s going everywhere"
He took ownership and made it highly visible.

That might be unprofessional but it was also audacious - and easily the best way to get the word out quickly about an 'in the wild' exploit that will impact a huge number of apps.

Additionally: GitHub is a critical piece of infrastructure for a huge number of companies, contractors and start-ups. On balance, protecting GitHub from public embarrassment is far outweighed by the potentional impact of this sort of flaw. If a good old public "git@github ~ $ rake over coals" is what is needed to ensure that our IP is sufficiently protected, so be it.
We haven't even started exploring anything. Not even our own planet.

In universe or galactic terms we simply don't even register.
Hacker News OSX menu tab app
An menu tab app using html5 and webkit
If you asked me this question, I would assume you are a mediocre programmer. The good ones don't consider it a big investment to learn a new language, because they can do it really fast and because they enjoy it.
That is always the problem with excluding a certain type of person you lose the ability to claim a higher morale ground.

The tech world is a meritocracy. If 'brogrammers' can live up to the standards then why shouldn't companies hire them? The question is will they make tons of sexist comments at work and make people uncomfortable? You have to hire a few and find out.
-1 For Hero. Чувак извини, ты крут, но ведешь себя как долбоеб
In my uses of rails, belongs_to associations get changed frequently. Any time anything gets 'assigned' to something, this occurs: assigning something to a user, to a milestone, to a plan, to an account, maybe even to a priority. YMMV but I'd say this isn't minute.

That said, there are certainly places in my apps where I don't want this to occur. And whitelisting is much better than blacklisting!
Rant on Email Notifications
It's obvious that the author of this article has never actually used systemd. For example, he complains that the startup sequence is "written in C," so the only way to change it is to recompile systemd itself. This is utter nonsense; systemd uses tiny config files called units to configure everything, so there is no reason to recompile. It's hard to take these complaints seriously when the author clearly hasn't used the thing he's complaining about, or ever read the man page.

A few months ago, I actually installed systemd on my laptop to see what the fuss was about. It was one of the best things I've ever done. Before systemd, system bootup was controlled by a bunch of shell scripts that made no sense to me; if I wanted to add a new daemon, my only hope was to copy-paste a similar-looking script from /etc/rc.d. Now, my bootup is controlled by a bunch of trivial config files like this:

[Unit]
Description=My Daemon

[Service]
ExecStart=/usr/bin/mydaemon --some --flags

So, this idea that systemd somehow makes the system more complicated is utterly false; systemd is a great simplification from an admin's point of view. Sure, the systemd daemon might be a bit larger than the classic init daemon, but RAM is cheap these days and admin's time is not. I think this is a good tradeoff.
Hey, I build an Mac OSX menu tab app "wrapper" with @cheeaun code, check it out! http://guidefreitas.wordpress.com/2012/03/04/hacker-news-men...
Door locks on physical houses are just a small part of a much greater security picture involving your community, observant neighbors, other monitoring systems, the police, even dogs. And yes, houses do get broken into causing a massive amount of aggregate economic loss every year.

But on the internet everyone's front door is accessible from even the most remote and hostile places in the world and you're pretty much on your own for securing it. Internet-facing systems also tend hold far more valuable things than your typical home.

For these reasons, I don't think the household lock analogy works very well.
Actually, Google Talk on Android already has a video chat feature that's great because:
1) It works over 3G
2) It works with anyone else on Google Talk who's online, regardless of what device they're on

All you have to do is open Google Talk (I have it running all the time anyway) and tap the camera button next to someone's contact.

I frequently use it to chat with my girlfriend or to show her something on the go, and it doesn't matter if she's on her Galaxy Nexus or her MBP at home.
To be fair, I think perceptions about reliability trail 5+ years.

Mercedes and BMW had several years of severe quality control issues from, oh, late 90s to 2005-6. Not across every model, and not equally for both makes, but there's a lot of evidence of issues.

During that time, Honda and Toyota were making wonderfully reliable cars. But look at the recent toyotas.

Same story for American cars. The last few years Ford has been making cars w/ the fewest defects. But perception lags.

The good thing is, there are consumer reports and other agencies that track defects per 1000 cars. I've bought 2 Mercedes cars since 2007 and they both have ranked wonderfully on the consumer reports and, anecdotally, my ownership has been entirely free of defects.

I'm not sure what you mean about "4000 a year to maintain" a car that was brand new. Yes, I do have to have the oil changed yearly, and there are other maintenance tasks at normal intervals. But $4000 a year in maintenance on a Mercedes is fiction.
The problem with this is that the getting started guide[0] uses this 'mass assignment' method in one of the examples (under section 6.8) without any mention of a caveat. The scaffolding does likewise.

You'd be forgiven for thinking there was no vulnerability, given the lack of warning over that sort of code, and the fact that Rails does a lot of 'magic' behind the scenes (especially since you're using their own helper classes to handle form input and such like).

[0] http://guides.rubyonrails.org/getting_started.html
Looks almost like Erector set pieces.
>"Ideally, what I would like (and I think most people would like) is something of the form factor of a MacBook Air (thin and light), that has a detachable touch-screen that can run apps written for iOS or Android, and when the screen is connected to the main body, acts like a fully-functioning laptop."

To make the screen detachable you would need to have everything in the screen section which, as others already pointed out, makes for a awkward weight distribution.
Years ago I've seen a laptop with a touch screen where you were able to pivot the screen and close it with the display pointing up. So the laptop was closed, but you were still able to use the touch screen. A MacBook Air with where you can do that and that can run iOS Apps would in my eyes be the perfect solution.
Except I don't think BBM ever made text messages look like BBM messages. Does iMessage show you a "read" mark like bbm or what's app?

I would agree that any device only messaging system (BBM/iMessage) are probably things to stay away from if you value an easy future choice without telling everyone to stop using the old method.
I'd love some background on how this is the first airship in the US since the Hindenburg, and what Google has to do with it.
Oregon Man Convicted for Helping Thousands Steal Internet Service
I have written a blog post outlining the exploit and our mitigation procedure: https://github.com/blog/1068-public-key-security-vulnerabili...