skysight-inc/HackerNews huggingface dataset:
The problem is that in functional languages you have a lot of tools build on higher order functions, so you can easily leverage functions as expressions. On the other hand, its standard practice to use statement forms (if, while, for, try etc) to describe a lot of the processing.

As statements are not allowed in lambdas this means you either are stuck writing a local named function and writing the code in idiomatic python or writing some helper functions to allow you to write code in a functional but non-idiomatic python style.

It comes down to a matter of style.

My personal theory is that once a python programmer discovers the magic of itertools they are about 3 months from looking for a new language that supports the functional style more naturally.
No, not meaning that at all. Claiming anyone not in the top 1% is "stupid" is ridiculous. A lack of indexable intelligence and "stupidity" might correlate, but are not linked. "Smarts" != intelligence.
Ask HN: Comments or not (for a magazine website)?
I am just about to go live with a Django-based website for a travel magazine with ~250,000 circulation. Content is published as it is written to the website, and the magazine is published once per month. From the outset it has been assumed that the site would have comments for every article. Now I am wondering if this is a good idea.

What is your experience with comments? Are comments worthwhile? Necessary? Dead?
Whitepages.com always seems to recruit very aggressively at career fairs at my school (U of WA). They'll be at a booth nestled in between Intel and Google pitching their hearts out. Commendable, to say the least.

However, they majorly over-played the "rockstar programmer" meme by handing out branded drumsticks and guitar picks last year. I always laugh upon noticing my pair of Whitepages.com drumsticks when unpacking my snare drum.
The Code Bomb, or: The Newbie with Big Ideas
And those two separate questions are both ones that no other package manager even bothers to ask!

/usr/local does start off empty on OS X, but it's where every random .pkg you download likes to put stuff. You'll get mixing unless every non-app you install comes from a package manager. On FreeBSD every package that didn't ship in the default install goes there. There's a reason that MacPorts uses /opt/local by default.
This isn't about just playing video. This is about integrating video into the web instead of leaving it partitioned in a plugin somewhere. None of my Firefox extensions can interact with Flash video (except AdBlock which just removes it from the page). On the other hand, you can use javascript and canvas to do really cool things with video in the browser.

Examples:

http://hacks.mozilla.org/2009/06/add-ambiance-to-your-videos...

http://hacks.mozilla.org/2009/06/connecting-html5-video/

http://hacks.mozilla.org/2009/06/pop-art-video/

and the same with audio:

http://hacks.mozilla.org/2009/06/exploring-music-audio/
I am not trying to bash flash here... the site seemed simple enough to me to be implemented without requiring flash, and I was curious as I had to click an extra time because of flashblock.
What you should know before going to have your taxes done.
That's clear and elegant for the last element. But now you need another function for [-2].
My point is that unless you are deliberately trying to put words in his mouth (or simply didn't read the article), that link proves the CTO's point, not counters it. Look at the exact quote from our CTO friend:

"...so users and content creators would be thrown back to the dark ages of video on the Web with incompatibility issues."

He's not saying the player won't look good or be sexy or whatever, he saying it will throw us back into the times when watching video depended on what OS/browser/codecs you had. This link demonstrates that exactly.

Instead of laughing at him and brushing of what he is saying by pointing to some demo that doesn't work in most people's browsers, we should take it as valid criticisms and demand the standards bodies get it together and fix these problems.
Which is all very well, but does absolutely nothing to restore justice or equity to the damaged party. This is the point when the "better a guilty man go free" argument really breaks down, which is why I wish people wouldn't treat the fact that privacy allows this no-win situation as a good thing. Privacy is important for many constructive reasons. Permitting someone to damage someone else while effectively immune to any personal consequences is not one of them.
Really? You mean like their ultra-reliable chat server they wrote?

Or maybe the way their replication works, so when you post things get out of order depending on what server you are looking at?
Languages aren't "fast" or "slow", it's programs that can be fast or slow.

If a higher-level language lets you implement a smarter algorithm, your program will run faster.
NASA Embraces American Capitalism and Entrepreneurship
I just switched from macports to homebrew a few weeks ago, and I love it. Most definitely recommended.
Limited point of view...pointless
OK, I'm a huge python homer, but I'll take a hack at that.

Sometimes, for reasons of style and clarity, I want to define a function inline, but python doesn't allow me to. It forces me to do:

def x(bar, fram):
z = foo(bar, fram)
baz(z)

button.onClick(x)

When in some cases, I would like to express it as:

button.onClick(
def (bar, fram):
z = foo(bar, fram)
baz(z)
)

So I get that it's never necessary, but I find it sometimes limiting as an author who cares strongly about how his code is organized.
"(What is intellectualism if not a deep faith in rationality itself?)"

Faith in the academy.
HTML5 is great, but it's not going to change the world and dethrone Flash anytime soon. Saying that or anything of that nature is dishonest and completely without evidence.

Isn't that what everyone said about Firefox and Safari? I think Apple has enough fanbois in the design industry to say, "Apple's not supporting Flash very well anymore; maybe I will try a plain HTML design for this site."

There may be a lot of money in flashy Flash sites, but I can't recall ever visiting one intentionally. Most of the Web's needs are met by plain HTML these days, and the few sites that have a good technical reason for using Flash (YouTube) are very close to being able to move away.

Going back to my original point, an IDE that let people construct the usual flashy Flash with HTML5 and JavaScript would be a good product for Adobe to have. It future-proofs them. Every user with a web browser has a web browser, but only 98.whatever percent have Flash. Why artificially limit yourself to 98% of the Internet?
In their words: Experts weigh in on Mac vs. PC security
I programmed exclusively in Java while getting my BS in CS, and I have programmed nearly exclusively in PHP since.

How does this person have the audacity to criticize Python? And why are we all reading it?

In a language whose core mantra is "make is simple, make it short" throwing away the implied "this" seems particularly disgusting.

Author: If you want to learn Python's real mantra, try typing "import this" in the interactive shell. One of the lines you'll read is "Explicit is better than implicit," which should give you a clue as to why there is no "implied this" in Python.

In general, you should be more of an expert on programming languages than Guido if you want to write this type of critique of the language -- especially in such a condescending tone.
Ruby is very similar to "traditional" OO languages such as Smalltalk. C++ and Java are not OO -- they are simply procedural, with a bit of pretty syntax and some renamed concepts ("procedure" => MARKETING DEPARTMENT => "method").
Weird, I always looked at Adobe destroying the Macromedia culture, not the other way round?

Look at the Flash Player Timeline http://en.wikipedia.org/wiki/Adobe_Flash_Player the advances through versions 5 to 8 are spaced 18 months apart and are quite major.

Once Adobe took over they shortly upgraded the VM, but the next major release (10) took over 2 years. This was almost 18 months ago, and the only advancements we see really are 10.1 changes to support mobile devices... things have slowed down considerably since Macromedia became Adobe.

Oddly enough though I was a big user of JRun (Allaire version) before it was brought out by Macromedia. Saw this product die a horrible death once Adobe brought out Macromedia as well.
Are we going to upvote everything that has Apple in the title now?
Full-text search over the pages you've bookmarked. For me, the Firefox address bar (with its rapid search of your browser cache) has made sites like Delicious obsolete. The only webapp I'm aware of that lets you do this is Google Bookmarks (which is asocial).

I'm still waiting for someone to bring the pleasure of the Firefox address bar to a social site. I created a webapp that does this last summer (Quocial.com; I can send you an invite if you like, but be warned that I'm no longer maintaining the site), but the technical difficulties of full-text search are such that it really only makes sense for someone like Google or Microsoft/Yahoo to do this. Or, Twitter could start crawling links and letting you run full-text search over either your links or those of the folks you're following (though I'd rather not make each and every one of my links public).

In short, the social bookmarking game isn't over yet. I firmly believe that Delicious-style tagging will give way to full-text search. One of these days, someone's going to nail it.
Big Brothers - satellites orbiting Earth
Will it be at some point? Of course.

You don't understand. Yesterday, the fact that Firefox didn't support the video was "something that will be fixed one day, who knows when, maybe before 2020". Today, it is a big bug which needs to be addressed ASAP.

People don't compare managing software projects to herding cats just to be cute. Getting everyone to pull in the same direction really is 90% of the job. You need to start a stampede.

(The classic way to get programmers stampeding toward an actual product? Threaten to ship the product. Then, carry out that threat.)

The position of the players has not changed. But the second derivative has changed, and the first derivative will follow...
Now, that’s definitely the wrong analogy. Drinking and driving is the bug, not any individual. Societies with access to alcohol and cars have that bug. Punishing the individual is sort of like telling your user who just reported a bug “Oh, the program crashed when you clicked on that button? Yeah, don’t do that.“ It’s like putting huge red warning labels next to that button or make the mouse move slower when it comes close to that button. It’s like taking the program away from that and only that one user. Cute, but won’t fix the bug.

We are limited in our ability to fix bugs of that kind. Banning alcohol would probably the wrong thing to do and probably no work. What might work is automating transportation. We can at least fix the bugs there.
GIT_EXTERNAL_DIFF lets you use emacs as your diff tool.

http://stackoverflow.com/questions/255202/how-do-i-view-git-...
Seriously. $100k * 3 devs * 2 years = $600k to buy half as many app servers in the next year(s)? They saved Facebook tens of millions of dollars. I should imagine their next performance evaluation will be quite smooth.

This is what people mean when they talk about great hackers being 10x as productive...
And Jon Gruber's response "I’m going to go way out on a limb here and tell you that this is total bullshit."

http://daringfireball.net/linked/2010/02/02/siegler-another-...
Maybe by analogy to cddr, ruby should have laast?
But FWIW, drives are not that slow. On my i7 machine, a really fast machine, the disks (one SSD, one RAID-1 array with 2 normal disks) can read data much faster than the blocks can be decrypted. My read speed is limited to about 60MB/s compared to the 130MB/s that the disks can actually read. (Yeah, kcryptd is single-threaded. Ouch.)

It's even worse on my Atom laptop. The SSD can do about 150MB/s (as I accidentally bought a really nice one), but the tiny CPU can only manage to decrypt about 20MB a second. And on a laptop, crypto is not exactly paranoia; it's the only sane thing to do.
The people I've worked with who were true masters of their languages (or other tools) understood what happened under the hood. They knew the techniques required to implement the language themselves, or to debug or optimize existing implementations. They understood any differences or gaps between the language spec and their preferred implementation's actual behavior.
The funny bit is that Engadget's commenting community seems to be vehemently anti-Apple, but the fact that Engadget keeps writing huge numbers of Apple articles implies that these generate traffic still (gut feeling: most of the non-commenting visitors).

This seems like complaining about a movie theater while sitting in the first row munching furiously on popcorn.
master: contributor to the development branch if open source or writing\maintaining actively used libraries.

expert: biggish list of work\projects finished, know how to leverage the standard/popular libraries
The example given (I know it's synthetic, but still) can be written easily as a lambda:

button.onClick(lambda bar, fram: baz(foo(bar, fram)))

The problem with embedding procedure definitions within parameter lists is indentation. Languages such as JavaScript or Ruby use explicit syntax for indentation, which allows a degree of flexibility in how procedure literals are defined. Python uses only whitespace, so trying to extend the grammar to support arbitrary procedure literals would be very difficult (according to Guido).
Hm. Without rich-media advertisements, maybe web content producers would not make as much money from their sites and have less motivation (and capital!) to create great content?

If there were no such thing as Flash, then the web would be different. Whether it would be better or worse is open to personal interpretation, but I don't think that your selected quote is the most egregious thing in the article.
Absolutely true. Social Networks can scale but communities can't. You can scale a site with community functions, that looks like a community (youtube) but there will be no sense of community.
Good question. TalkFest is about open, public conversation, while email is targeted.

I see a lot of people ask questions on Twitter, but how can you fit a decent answer, or a decent question, in 140 characters? TalkFest is an experiment to see if there's a room for longer conversations in between the short-form that is happening on Facebook and Twitter.

Let me know if that helps, I know the advantage is not instantly obvious.
There is something self-referential about this post, but I can't quite figure out what.
I browse /. at +5 (and see only very good comments) except for the once a month or so when I get given mod points.

15 minutes a month of moderation per person seems to be sustainable/scalable, because it's been working for ages and I have noticed no real change in Slashdot's +5 comment quality.

Where that fails with HN is that we have infinite mod points all the time, which:

- Encourages point inflation as the community grows.

- Discourages people from taking moderation seriously as if it was a big deal you wouldn't be able to do it all the time.
10ish?

I like market-shaped and network-shaped businesses. I dislike entrants into uneven playing fields (music, video.) I dislike secondary franchises (if your business has Twit or Tweet or something in its name and you aren't Twitter, that is a problem.)
I see the problem when using third-party libraries, but if I was designing my own... Objects are pretty cheap in python:

class Somebutton(Button):
def onClick(self):
.....
def onSomethingElse(self):
.....

only one line of overhead (class line). And I'm pretty sure you can hack __dict__ in init, or use metaclasses so that the events are chained automatically, even without calling `Button.onClick(self)`. You can construct / add the object to it's container the same way (Somebutton(), instead of Button())
Microsoft has to deal with governments and corporations. And the opensource page at http://www.microsoft.com/opensource/ is an answer to the question: "What is MS's policy towards opensource" and similar questions.

For developer's there's always http://www.codeplex.com and http://port25.technet.com/ which http://www.microsoft.com/opensource/ points to.
With criticisms like that, I think your expectations are unrealistic. Considering the size of their userbase, their chat server is quite an accomplishment. And minor replication artefacts are hardly a big issue.

In short, if FB had incompetent or even "just" competent engineering, they would not have close to 400 million users. And yet they do, and I have never noticed the site performing slowly. They're not Google, fine, but they have an excellent team and if you're not impressed by their performance I wonder what you would be impressed by.
Yeah, don't put stuff in /usr/local. Put it in ~/bin.
by trefn (cofounder of Mixpanel, YC S09)
Adobe CS5 will output to JS+HTML5: http://blogs.adobe.com/jnack/2009/10/sneak_peek_ai_fl_dw_can...
I haven't driven one of these cars...is there anything stopping the driver from nudging the gear selector up to neutral?

I also don't agree with your point about point #3 being a sound decision on its own. Keyless ignition is convenient, but there's no reason not to have a kill switch besides aesthetics. And they probably could have designed an aesthetically-pleasing, small kill switch.

Moving up a level of abstraction is only great when it works the way it's supposed to, and there should always be some sort of manual override for the rare, untested cases when it doesn't.
I don't think that "algorithms junkie" is an insult; I'd happily call myself an algorithms junkie, for example. Algorithms are awesome, and so are people who write software rasterizers.

(And you know what? Figuring out algorithms that work well on modern hardware is loads of fun.)
> it would then finally be "safe" to link to Google Images without having to worry (too much) about the results that might appear for the user (you don't know if they have safe search on or off).

You can manually set the search level in the URL.
How and why I joined the “suit people” | Merbist
The Abridged Atlas Shrugged
Okay, now . . . tell me how this provides any benefit over Mercurial's options.
Just trying to point out situations where this can not be followed to the letter.
If someone is speeding away from a robbery the police should not be allowed to speed after them?
If someone is currently robbing a store should the police not be allowed to trespass to stop them?
I do agree that they should be held to a higher standard. I also think if malicious intent is evident in their actions they should be given harsher sentences because they are given so much public trust. But they must be allowed to break some laws or they wont be able to do their jobs at all.
I will admit I haven't had experience with Smalltalk, and by "traditional" as you correctly pointed out, I am probably referring merely to my background.

In any case your insight makes me ask - is mainstream OO just a poor outfit for procedural programmers trying to stay relevant?

I can say that C++ was used as a gimmick at least once instead of C on a professional project and everyone hated the code.
I keep wanting to build a qnap box with zfs somehow. anyone ever do this?
The Network beneath the Clouds
The browser looks a bit flaky. Watch the end of the video where he double taps and the whole screen goes white, or at the very end when he pinches to zoom, and the view jumps into a side bar. The main column of text on the page seems to be jumping about, sometimes full page width, sometimes half page width.

The maps app seems like it could do with some work too, a couple of times the whole screen goes grey while he zooms in and out.
This is the comment where I bring this thread back around to the topic of how you hash your passwords, that being all I ever talk about around here.
What OS X really needs is a package manager (erm, "app store", yeah, that's it) for native GUI apps. Every program seems to want you to update it every time you open it, which is just silly when there is already Software Update for that purpose.

Also, installing software on OS X is really difficult. Going from saying "I want VLC" to actually having VLC is an annoying multi-step process on OS X. Google for VLC's website, find the download link, download, wait, mount dmg, drag-and-drop app to app folder, unmount dmg, remove files, empty trash, launch app. On Linux, I just say "apt-get install vlc", go get a cup of tea, and type "vlc" to run VLC. Much easier.
Wouldn't the challenge in ruby be the prevalence of things you just can't and don't do in PHP? Thinks like instance_eval, class_eval, etc....in Ruby projects I've worked on (and especially in Rails), these are all over the place.

Of course, assuming these calls all happen on the front end (source load) and not downstream in response to some triggering event, your approach would probably work.
The way I've been doing this so far is to let admin be the group of /usr/local/ and then let them have write perms within that directory. For what I do, and how much security I need on my personal machine, it works out pretty well.

I suspect that there are security implications regarding this when done on more of a server-style environment. Perhaps that is what you were saying 'Ouch!' about?

Or maybe you were thinking of another pain point that isn't occurring to me right now?
Classes in Python are more like dictionary objects

Yeah, that was my favorite part... my response was "yes... yes they are." Everything else with classes just seems to be syntactic sugar.

I'm not saying that is good or bad, but in Python, just about everything is a dict.
Probably because Jobs called their motto bullshit. "Okay, Jobs... how's this for evil? Multi-touch on Android!"
Well, at least he didn't complain about the use of whitespace to delimit code blocks. :-)
I'd go even further. Why not sell a subscription pass? For $20 a month, you get unlimited access to all the books in Amazon's catalog. Each rental would expire after two weeks, and you'd be free to take that book out again and again.

I'd deal with the necessary DRM if this idea was implemented.
Yea, but it's right pinky which is weaker for most people. By moving it you also gain the -_ being on the home row (which you type less than semi-colon while programming in syntax demanding languages)
How To Hack The Sky
It still gives me chills to watch that.
As a flash developer I can say that version 5 of flash is not comparable to HTML 5, the video tag equivalent wasn't really implemented until version 7 (HTTP progressive download of video assets).

Some missing things from HTML5 I'm watching to see how they progress:

1) Microphone & Camera support, and supported publishing encoders (Flash only encodes video as very basic Spark which is poor quality)

2) Web Sockets = Flex Remoting. But Flex Remoting sends AMF objects so you don't need to serialize/deserialize is this the same for Web Sockets or do you send data as JSON?

3) Live Video Streaming (Or just regular streaming video)

4) Peer 2 Peer connections (And soon to be Multicast support)

5) I saw webkit has fullscreen support, do you have limited keyboard input when this happens like in Flash?

If those were in place I don't see why I couldn't build my app in HTML5 instead of Flash, its a corporate application so we can control the supported browser version
gcc has __attribute__((packed)), but we may be talking about different things - that's mostly used for on-the-wire protocols. For most structs, laying out the members from large to small works fine, and avoids superfluous shifting on every read and write.