skysight-inc/HackerNews huggingface dataset:
Google didn't have a business model either. People thought they were crazy for keeping ads off their homepage, as was common practice at Yahoo, AltaVista, etc.
Two Simple Suggestions for Ubuntu
No, because accessing a object property requires a hash table lookup.
I use the facebook iPhone app quite a lot, and I don't like it either, so I'll take a stab at it.

I never know what I'm looking at. The array of controls changes every time you move from one screen to the next, so I'm never sure where I am.

And that button up in the right hand corner, the one that usually says "News Feed?" Say I'm trying to switch to something else, but all of a sudden the selector control stops working, because the app is busy trying to prefetch stuff for some selector option I didn't plan on choosing, I just stopped on that one temporarily. Then, when the control becomes responsive again, it's impossible not to overshoot, because now it's processing a bunch of user interface events that happened while it was ignoring me.

Maybe part of the problem is that facebook itself is confusing. I don't really have any idea what the difference between "News Feed" and "Status Updates" is, and I'm not terribly interested in finding out, because the site will probably change to something else altogether in a month or two.

Yeah, I have to admit, I just don't like facebook very much either. But everybody I know is there, and it's pretty, so here we are.
Link building – Marketing supplement for freelance designers
Most of us have to agree that designers plays a crucial role in the look and feel of a website.
Ask HN: Have any cassandra benchmarks been published anywhere?
I can't seem to find anything about it.
Might some of these little idiomatic optimizations be automatically performed by the Closure Compiler, making their absence from the original source irrelevant?
http://laundryview.com

At all the MIT dorms.
Advertising Ethics: McDonald's
I wondered that too. I wonder if they just don't notice it because the modern VMs they mainly use would cache or inline it, but older implementations do a search for the property each time? (I'm speculating on both those points)
A commenter at sitepoint noted the positive point about Google open sourcing Closure. I think it's a good point. It leaves room for people to review, critique, and help improve things.

I thought the more interesting thing about Closure was the optimizer (and I wonder if the optimizer offsets any of the issues described in this critique.)

Regarding the library, I think the interface is more important at this point than the implementation. The latter can be refactored, while the former will always be there.
> web design is information first and aesthetics second

Agreed, though bad aesthetics can/will destroy any value the user assigns to your information. Edward Tufte's books are good. http://www.edwardtufte.com/tufte/books_vdqi. He also has some recommendations (http://www.edwardtufte.com/tufte/bookreviews) and the works of others that he cites are usually also excellent.

The cheap version is to just read through the Ask ET forum on his site.

One that is harder to come across: Josef Albers "Interaction of Color": http://www.yalebooks.co.uk/yale/display.asp?isb=0300115954&#...
1. ATMs - Only charged if you're at an ATM outside of your bank's network.

2. Travelers Checks - They were useful long ago when credit cards did not exist and carrying large amount of cash was dangerous.

3. Check Cashing - The bank that issued the check will cash it for free, regardless of account status.

4. Currency Exchange - Can minimize this by ATM / credit cards (MasterCard/Visa) but in reality, there's currently no way to get around currency exchange fees. Here's an article on this topic: http://travel.nytimes.com/2006/06/25/travel/25prac.html

5. Coinstar - Never had to use this (wife takes away all my change and it magically disappears).

6. Gold buyers - This one is not like any of the above despite what the author claims. Liquidity of the gold has nothing to do with it but rather the issue that the gold buyer's judgment is what decides the value of the goods. In all of the above, the financial company treats everyone based on pre-set rules (1% charge, $10 fee etc.) And my 1,000 quarters are just as valuable as your 1,000 quarters to Coinstar. Not so with gold buyers. They will offer the smallest amount that they think the gold seller with accept. The amount of gold or precious metal is a factor but not the sold variable.

I think #1-5 are pretty good services and shouldn't be lumped with the scams of #6. However, this article does highlight that people will pay for services like accessibility, insurance, portability, and security of assets that they already own.
Interface Design Basics
I think it's an oversight. The coding conventions I work with ban that form of a for-loop, precisely because the .length access can potentially be very costly. (I'm in a different part of the company, one that doesn't use Closure, but our latency constraints are even tighter than theirs are.) If you're iterating over a NodeList and not just an array, it can actually turn an O(N) loop into an O(N^2) one.
Bing integrates Wolfram Alpha results
Open source cloud computing technologies
But just stating why a more performant option exists doesn't tell us how much performance you'll squeeze out just by making this change.

In other words, it's not very helpful to say "this is so slow, you should do this instead" without at least trying to quantify the difference somehow.
I'd say it isn't. As you said, most of the problems are minor. Some of the performance assumptions are false. Very little of this seems to be of any consequence.
Perhaps, but it does seem that the Google Closure developers are unaware of these optimizations. Unless the compiler was written by an entirely different group, I would be surprised.

Of course, there's an easy way to find out. :)
Am I the only one who is in awe of that tree house? It is totally epic! I would love to have a tree house like that one.

I agree they are indeed too young at the moment to appreciate the tree house, but when they are older they will most certainly appreciate the fact that it is HUGE and their parents build it; furthermore, it will be a totally cool place to hang out in.
I'm the author (although not the submitter), I didn't intend this as any sort of flame-bait, I was just curious how well Django did at this stuff (a long time ago I remember seeing a better error message wiki page).
Checking the length of an array on each iteration of a loop is an amateur mistake, in any language. Some of these points were pretty nitpicky, but I thought this was a valid complaint.
That is exactly why I'd like to open-source my work. My concern is more about the practical question of how and/or seeing if I persuade someone to walk me through the process.
It's never had much of a sense of humor. Jokes are usually mercilessly downmodded unless they are really, really funny.
In a case like this, it doesn't really matter how much of a performance benefit you get because it's ridiculously trivial to inmplement. This in particular is one of those optimizations that I remember being told back in CS101.
Writing great documentation: technical style
The difference is how early you get bitten. With a stronger language, your ass would be full of bitemarks weeks before you went to production.
In compiled languages it's usually not worth breaking convention to factor it out, because the compiler will apply loop-invariant code motion and pull it out of the loop body anyway. The exception is if you're calling a function that the compiler can't prove to be referentially transparent, eg. strlen.
Hi Jacques,

re: 1, do I just put it on github and hope people find it by themselves? Do I advertise it? If so, how?

Thanks for the interest, I'll work on cleaning it up now.

- Edwin
Way too nitpicky, and the memory leak point regarding the unbound cache is reaching a little bit.
Closure was written by many, many different people. I can attest that the core developers (the ones whose names are on the project) are very aware of these optimizations - one of them interviewed me when I was being hired, and another was in charge of my JS readability review. But Closure's a big chunk of code, though, and the core developers tend to be very busy people, and not everyone can review everything.
> I think a better mental model for "interface" is "implicitly matched mixin".

Or "named structural types".
Personal experience tells me that information addiction is very real. So, the question is, how do we turn this to our advantage, rather than becoming information burnouts?
I don't think it's the SICP of Design but the non-designers design book is a good terse book of design for us CS folk. Though for strict design and not aesthetics the "universal principals of design" should serve well.
I've seen a lot of good analysis of Go, and I hope its creators carefully consider it and work to make Go (if they keep the name) even better.
Thanks for explaining. Where did you get the information/data about this?
Yea, these people are ruthless lol.
Django fails, Ruby fails, Java is dead...what's next? sigh
It doesn't help that it's titled "Stevie's Karate Tournament".
lesson: pick your battles
hourtown.com (now bookfresh.com) might address this
dude I just upvoted you& it's not counting it!
oh suhail, do share with the class. and mixpanel.com does not count ;)
Really interesting, thanks. I don't spend a lot of time with compiled languages these days.

Question: how can the compiler be sure an array's length wouldn't have changed? I suppose it could examine the code within the loop, but then the same could be said for strlen. What's the difference?
YourPlayer PSP v2.6 Released: A Fine Collection of Internet Radio Stations
I think the problem is that there are very few 'hops' between "trusted, respected person writes something intelligent" and "flame wars" when the topic is emotionally loaded/political/economics/etc... Fluff articles aren't quite so bad, but I think they still beget more fluff.
it must crawl the property chain on the object until it eventually reaches 'undefined'

If it were a normal property lookup, yes, but not with `hasOwnProperty' - that's the same as any old hash table lookup. So efficiency here really depends on the implementation, and Google's is probably faster. Regardless, we're really splitting hairs - these optimizations will get a few milliseconds, on average. As much as I am a perfectionist, it's all completely negligible in terms of UX.
Sounds like you both are sipping from the same giant pot of kool-aid.

Seriously, "the startup life"? A startup's success or failure rides on associating with the trendy crowd?

Blech, let's get back to writing a lot of good code and listening to user feedback.
and at Georgia Tech as well.
Agreed, very poorly written article. You can't approach optimisation in isolation like that. There's a whole range of factors like readability, situational awareness, concurrency etc... that need to be considered.

Plus this is the first release of what has previously been an internal-only library. It needs a little time to mature. jQuery wasn't perfect of the gate either.
I'm talking about the class tracing V8 does, not prototype chains. "Property chain" meaning in V8, it must climb the series of what it calls "hidden classes" in order to find all of the properties. Other engines do various things when you pass a totally dynamic property lookup in. Some slower engines probably use naïve hash tables, I don't know.

Feel free to correct me if I'm wrong on this one, though. I've never really ripped open V8 or any of the other engines to look inside, I just go by what I read from their design docs.
Let's Go! Put a Python on Rails and C what happens!
Let me Google for the answer!
The dopamine loop has been well described in a number of articles, and many start ups and websites are taking advantage of it. I can feel it affecting the way I think, and I feel like it's damaging. I wish startups would try to address this problem rather than using the dopamine loop to their own advantage.

PS. Is this article meant to be a case-in-point? It's written in bite-sized paragraphs with catchy subject sentences.
You're drawing conclusions where they don't exist.

The "startup life", the life of a startup founder is in fact, hard. Building a product is hard. Building a company is hard. Building anything of value is hard. It has nothing to do with a trendy crowd or a decidedly non-trendy crowd, it has entirely to do with folks who are having, have recently, or will have a lot of the same challenges as you. I'm not sure why it's hard to understand having friends who've been there, done that, or are doing it is very, very helpful. I'm glad you're able to do it all on your own, but some of us either aren't, or have realized it's a waste of time to. Being a martyr will help you much less than having the smarts to ask folks who can help you not waste time on the things that don't actually move your business forward, but can only impede progress - there's your value. Man, this kool aid is yummy ... it tastes like improving my odds ... and that tastes great!
HP to Acquire 3Com for $2.7 Billion
Resigning to the fact that you're a sharecropper[1] is implicit in developing on Apple platforms.

[1] http://weblog.raganwald.com/2004/11/sharecropping-in-orchard...
That was my first thought. I ran the "slow loop" through the online compiler at:

http://closure-compiler.appspot.com/home

And whether I checked "Simple" or "Advanced" I got:

for(var a = 0;a < arr.length;a++)

So it's not optimizing that pattern yet.
I wrote an article regarding dopamine as well, I saw a couple recently on HN on the subjects of dopamine and self discipline, if you guys are interested. Much more in depth than the articles I've seen make it onto HN - but I didn't really think this was the appropriate place for them, that's why I never submitted them. Kind of off topic IMO, but for readers who like it here they are:

Dopamine, rewards, pleasure center of the brain -> http://sidsavara.com/personal-development/personal-developme...

Willpower research -> http://sidsavara.com/personal-development/will-power-how-to-...
I have no idea about that, but recently I've started using LeechBlock to block out all websites that lead me into "dopamine loops". On my blocklist are Twitter, Facebook, Reddit and news.YC, among others.

The problem with LeechBlock is that it only works with Firefox, and only if I choose to install it. I'm seeking out a system that I can install on my router so that I can block time-sinks on all my computers at once. My router runs Linux, so there must be a way.
SEO Services Experts
SeoServicesExperts.com offers Cheap seo services, Cheap forum posting, traffics generate, affiliate marketing, Low Cost Articles Publish, Business Lead Generation, Low Cost Articles submission and Cheapest e-mail marketing.
apparently, as a supporter of the NoSQL movement, i would just like to state a small 'analogy'...

Imagine if someone from amongst our early ancestors hadn’t thought of creating the wheel, where would we be?

And so it is with NoSQL - it is just an alternative way of looking at a problem which in this case is that of databases and looks at it in terms of a non-relational model. Therefore, i would like to urge all who are 'hostile' towards it - just let us do what we want. If the results are not to your liking what can we do.

i personally believe that through pursuing the principles on which NoSQL is based we will manage to achieve something new that mayhap replace SQL.

Additionally, please do also give thought to the fact that Google's Big Table, Amazon's Dynamo and Cassandra can be thought of as part of NoSQl movement..
Rebels are at first turned away from society in general - but later on society realises that the rebels had the correct idea. Change is always essential to progress without which i would not have been typing this..

On another account (sorry for the detour) i am rather getting quite interested in Gopher these days. Anybody interested in Gopher?

[ I apologise for the non-tech response.]

[ Null Expulsion - nullexpulsion [at] gmail [dot] com - how long will it be since spammers figure out how to detour around this? ]
You work at Facebook, I know you say that on your profile, but you should probably disclose that in comments supporting them.
Poll: Legal consent for cookies?
Since folks feel I went overboard on my first attempt at a poll about the http://news.ycombinator.com/item?id=931596 law, I've limited the choices.
I've read much of the actual proposal.
I think the proposal would affect my income.
I think the proposal would affect my work.
I think the proposal would affect my privacy.
I think the proposal's merits outweigh its problems.
I think the proposal's problems outweigh its merits.
I think this poll is dumb. Someone please kill it.
The Perfect Cuboid Problem
Most languages don't have functionality to resize an array in place. If you realloc in C, you get back a pointer that may or may not be the same as what you passed in. If you 'new' in Java, you must assign that pointer to your initial variable. If the loop body never assigns to the array, the compiler can be sure that it still points to the same block of memory, and its length will be the same.

This is a specific example of dataflow analysis, which is a fascinating area of compiler design. Usually you'll use something like a use-def chain to figure out all the points where a variable might've been defined. If all of those are outside of the loop, then the computation itself may be moved outside of the loop too, and the loop just refers to the temporary that's the result. I'd encourage you to pick up a book on compiler design if you're interested; here's the Wikipedia article:

http://en.wikipedia.org/wiki/Use-define_chain

This explicitly doesn't apply to "smart" containers like Vectors, which automatically resize themselves. If you were to inline these methods, you'd see that the internal buffer pointer may change inside the loop (assuming that you call functions that mutate the object; if you don't, and the language has a notion of const-correctness, a sufficiently smart compiler could probably optimize them too), and so the compiler can't move any code outside. Same with strlen; its return value depends upon the contents of the memory buffer pointed to, so unless the compiler can prove that that memory buffer never changes (hard; any function may reach in through a pointer and set a character to null), it can't optimize the call away.
In the end it's the user's choice.

If you want stability, use Debian or Ubuntu LTS. Sure, you won't have the latest stuff but you're bound to not spend too much time reconfiguring the system so that you can focus on writing or coding or whatever you _actually_ do.

If you want new features -- as most people do, it seems --, use Debian testing/unstable or the latest Ubuntu. Things won't always work but that's the price to pay for the new features. Software is ready when it's ready, a six-month cycle can't change that. The reason why OS X is more stable might be just that: OS X gets released every two years or so, and then just patched but not upgraded.
it seems like a good idea for both of them. but in absolute terms, bing probably has more to gain.
The article succeeds at least in one thing. It shows that not everything Google releases is perfect and great. Keep your eyes open.
Self Discipline - Use It, Exercise It, Eat Donuts to Temporarily Strengthen
Google’s Strategic AdMob Misstep
GWT 2.0 ClientBundle will use Base64 for images because GWT will bake those images straight to the compiled JS, along with the CSS styles.

The CSS names would be obfuscated (and also shortened).

All these features are there to support code-splitting (splitting the one big giant compiled and obfuscated Javascript file with everything into several "chunks" of JS files to be sent on-demand).
The Gervais Principle Part II: Posturetalk, Powertalk, Babytalk and Gametalk
Well...

PROBLEM: corporate meetings that accomplish nothing

SOFTWARE: Collaboration software. If everyone is informed, meetings don't have to happen.

PROBLEM: nagging girlfriend

SOFTWARE: Tweet often and have them sent to her phone. All she really wants is a leash, this should do the trick.

PROBLEM: traffic congestion

SOFTWARE: I already check my city's online webcams of traffic before I have to go somewhere congested so I know what route to take.

PROBLEM: stupid shitty and cold weather

SOFTWARE: See Superman 3. It'll happen, don't worry.

PROBLEM: an IT department that's incompetent

SOFTWARE: yosho must work for the man... are you sure the problem isn't between the keyboard and the chair? ;)

PROBLEM: annoying neighbors

SOFTWARE: Damn. I got nothing. After all that, you win.
Unknown or expired link.

This should be fixed.
It would have to determine that arr.length doesn't change during the loop. Pretty difficult problem. :)
Exceptions are definitely needed.
The D-Link DIR-655 can do this (and I'd imagine other D-Link routers). You can set it up for specific IPs, ranges, or all computers. I've never taken advantage of it, personally, except to mess with people by blocking sites like Facebook.

I'd imagine some of the other firmwares out there can do it as well. Guess it comes down to what kind of router you have.
I just tried it.

With 10M entries in the array, the "slow" way takes 509 ms and the "faster" way takes 362 ms. So we can save roughly 15 nanoseconds per iteration. Or a 30% speedup - assuming nothing happens inside the loop.

(Of course the numbers may vary wildly per browser.)

Somehow I doubt this is the performance problem behind slow web pages.
OpenDNS can filter all your internet traffic to block out any websites you choose. You can choose preset block lists such as phishing or scams as well as select specific domains to block.
How come this patent fails to mention AT&T's 1972 patent 4135240 on Dennis Ritchie's setuid() function?
I think the real problem with a site like that is that many people like to guard the tractable problems they think of. It's one thing to talk about your ideas and get critiqued with close friends, it's quite another to post it on the public internet!

Edit: Changed "this" to "that" so it doesn't sound like it's referring to HN
Wolfram Alpha has a lot more to lose... Microsoft is a gigantic company. This has gotta be Wolfram's #1 revenue source now, and they needed it badly.
and the WPI ones.
But obviously you would just use the address of some large corporation, which will not be able to determine if it sent the legal notice quickly.
No, I did not write that, but since there is no serious Go-application inside Google, their management could very easily "pull the plug" and no longer support this experiment.

I would probably fear that, if I would invest time in learning Go.

I don't understand why the team did release Go to the public at this early stage of development, what they expect from the developer community.
It's pretty funny. Handled reasonably well.
I'm a big fan of RescueTime's "Get Focused" mode. It has a large, pre-populated (but configurable) list of "distracting" sites, so it's amazingly effective (probably > 95% accurate in my experience) at blocking the productivity leeches while letting useful stuff (like reference websites) through.
Oracle Announces Plans for Sun's Products - Raises Concerns about NetBeans
Do we create the world just by looking at it?
Why show me said bitmap then?
I think the argument about gold vs. dollars as assets is laughable. The author cherry-picked an 8 year period to compare 'historical prices'. I don't doubt that gold was a better position to be in during the last 8 years, but it's dishonest to say that gold is always a better investment than cash.

I expect long-run that gold will be a better position, but it tends to fluctuate wildly, and there are periods where cash is a better investment compared to gold.
Fit your entire life in HD video on a $100 hard drive by 2023.
New Hacker Tool Allows Stealing Personal User Data From iPhone
Twitter Data Dump: InfoChimps Puts 1B Connections Up For Sale
The Art of Learning from a Colleague