skysight-inc/HackerNews huggingface dataset:
I think you are wrong. It's not just individual taste. What matters is how well functions are aligned with units of change and reuse.

Simplicity is having to think about a smaller number of items and dependencies when I want to change/extend/reuse code. If there are many functions and classes but I have to touch all of them whenever I want to make a typical modification, then it's worse than having everything in one function. Conversely, if a more granular design allows me to ignore most of the code and just change one simple function or even just parameterise it differently, that's simplicity.

But there is a snag. Even if the design aligns well with units of change and reuse, and I would have to make just one small change in one small function in order to have the desired effect, I don't necessarily know which of a large number of functions it is. I might not even know whether or not such a function exists. So I have to understand how everything works together in order to benefit from well designed code.

That leads me to the conclusion that better programmers who do understand the system and its interdependencies benefit from small units provided they align well with units of change and reuse. Bad programmers have to look at everything every time anyway, so they might find it easier to look at one large chunk of code.
Glad to be running a Linux desktop in relation to this ... though it sucks in a number of other ways.
I'd second that. London is a city best enjoyed when wealthy. There are lots of other lively cities and towns in the UK to consider. Brighton, for example, is only a 60 minute train ride out of London, and it has a thriving geek scene. Most events are free and everything is in walking distance.
Ask HN: Review my app "Interactive Block Diagrams"
I feel current block diagrams are not very self explanatory. For ex., you want to know brief details about block and know internal details of a block then need to go through rest of document.

"Interactive Diagrams" tries to solve this problem by allowing users to interact with block diagram to know more details about it. Specifically it will answer following kinds of questions -

* Briefly explain what a block is all about.

* Allow user to see internal details of the block in the same diagram itself and go back and forth between different blocks.

* Also allow to see the system block diagram in different views. For ex., it can have different tabs with one tab for "data flow view" of the system, another tab "control flow view", another for "architectural view" etc.,

From these concepts I developed an app which outputs an interactive diagram as flash file(.swf) as the output. The example block diagram can be
seen at - http://roorky.com/misc/shapes.

For example single click on "Network" or "File System" block will popup a description box. Double clicking on "Network" or "FileSystem" blocks will change the diagram to internal details of "Networking" or "File System" in linux kernel. You can navigate between different block diagram through "Back" and "Home" links displayed at the bottom of the page.

I am looking for answers to following questions -

* Do you think there is a need for such kind of diagrams or tool which creates such diagrams?

* Is there a better way to solve this problem if its a problem?
perhaps he means classical liberalism.

http://en.wikipedia.org/wiki/Classical_liberalism
See, the biggest part of my happiness comes from the independence of doing what I want to do, without having to sacrifice the things I'd like my family to have. I can do a startup any time I want; I don't have to worry about my job. You don't get that, along with a family, on 30K or 40K or even a 100K unless you've saved for a long time.

The real problem is that people don't know what'll make them happy. Things that money buy don't make you happy? That's bullshit. Yes, there are very important things in life that money can't buy, but there are quite a few things that money buys that does get you happiness. For me, money has bought me independence of action that has made me very, very happy.

So people don't know what will make them happy, and the researchers are asking the wrong question and reaching the wrong conclusion. What keeps people from getting happy is that they think an extra 400 square feet of home, when they've already got 2500 square feet will make them happy; or that a car with 300 hp will make them twice as happy as a car with 150 hp. And then the researchers are coming along and saying hey look, these people have more money but they ain't happy, so money doesn't make you happy. No, all it says is that buying the wrong things with money is not going to make you happier.

Don't tell me that those billionaires that spent those millions of dollars with the Russians to go out into space weren't made deliriously happy with what their money bought them. They just knew what to buy to make them happy.
My sneaking suspicion about the entire NoSQL "movement" is that it's really one of cold hard cash.

Almost everyone who has moved to NoSQL did so from... drum roll MySQL. As Forbes notes, MySQL has problems. Lots of them. It's good enough for most things (and arguably it wasn't that until version 5), but when you aren't most businesses, you shouldn't be surprised that the crappy product doesn't cut it.

No-one from the NoSQL crowd ever says "...and then we evaluated it on Oracle, with a reasonably specced server, and found it performed far worse than [flavor of the month NoSQL solution]." What's odd is that Digg should be able to afford Oracle and some decent hardware to run it on. Forbes' assertion that it might just be a fashion choice seems as good a guess as any.

Neither solution is a religion, and every product has its business case. But if you're going to make jabs based on technological points, you have to have properly evaluated the competition.

And, because it never gets old: http://browsertoolkit.com/fault-tolerance.png
instead of asking why Africa's conflicts never end, ask why there is peace on the others.

Europe and Asia are perhaps more stable today than they have ever been in most centuries. Could the reason be that a particular economic system that enables the creation of wealth has decreased the desire to invade other nations to acquire it?

Maybe imposing capitalism and the rule of law on those that lost the last world war instead of imposing burdensome reparations on them actually decreased the chances that they would turn to war again.
I'm not sure what the secret actually is. Are they saying that the secret to consumer freemium is to have a sticky app with good monetisation? Isn't that true of any kind of app?

Did anyone else figure it out?
Mirrors!

I can picture a little 4-piece set of little shields with mirrored backs that serve to both obscure a player's private area, and make it easier for that player to see.

Will suction cups cause excessive wear for the touch-sensors?
There's an open-source 3D driver making massive improvements for nvidia too called Nouveau.

I wouldn't get ATi with Linux, it's all nvidia straight across for me. They have excellent driver support for Linux and I strongly like it. AMD's drivers still don't support X Server -1. Yeah, there's open-source drivers out there that work OK, but they still don't approach the performance of the proprietary ones. There are also a lot of applications that are buggy with Catalyst Linux.

Linux users are still much better off with nvidia for high-performance graphics. Intel is nice and cool and provides good support but their GPUs are exclusively low-end, which is fine for low-end users, but not fine for gamers et al.
Microsoft has a history of rapidly deprecating their technology platforms, leaving your old code unable to access new APIs. In the past this was good for their business because competitors couldn't keep up with changes in the MS ecosystem(and each new iteration of Windows could make sweeping changes, since the market was growing so fast), so forcing developers to move in lock-step with the MS toolchain was another way to preserve the monopoly.

It's this legacy, plus the non-free nature that makes it hard for developers to do their own maintenance, that causes aversion to MS tech.

Today you have a lot of freedom to make technology decisions that go beyond performance requirements and platform APIs. It's just a matter of how long-term you want to make your codebase. If it's disposable code, it really doesn't matter. Unfortunately, "disposable" projects often become mission-critical later.
I agree freedom of action is a good feature of money, though it's really more like a freedom-from-need-to-make-money-to-survive, a kind of defensive benefit of money as opposed to something actually positive about money. I don't think you need to make a ton of money for that if you have a frugal lifestyle, though. I have enough savings to sustain my current lifestyle for years if I quit grad school tomorrow and never got a job, and I've never made >$40k in my life. But when I was making around $40k (thanks to a nice combination of fellowships), I saved almost half of it each year, and that plus some investments adds up quickly. I guess I could've spent more instead of saving it, but I honestly have no idea what I would've spent it on; I wasn't exactly living a deprived life just to save money.

Admittedly, I expect it'd take more than $20k/year to live comfortably if I had a family!
> It could be thoughtful positive feedback, which is just as useful as criticism (i.e. thoughtful negative feedback).

I disagree, (supposedly thought) positive feedback is extremely common and rarely provides anything new (or own minds are well tunned to try to find reinforcing evidence to back our past decisions).

Negative feedback is much more rare due to social pressure to not 'offend' and other such bullshit, and even when it is not particularly thoughtful it adds something to our thinking as it is unlikely to be something we would have considered.
Funny that you mention this. The inspiration for submitting this question was my frustration with teaching while in grad school. Each of my four semesters so far, I've taught or assistant-taught a class. Each time, it consumed my mind, to the point where I found it difficult to think about anything else. My subconscious creativity was all spent on things like: how do I get the students to see X, how do I convince the prof not to obscure X, what would be a good homework assignment, how can I set up the homework so I can grade it super-efficiently.

I thought I'd get a lot more out of grad school if I financed it by working at a job that requires no thought or creativity. Ideally, my subconscious creative churning could continue while working at the job, and stay focused on my research. (Doing good teaching in grad school goes completely unrewarded.)

And then I thought, well, why bother with grad school at all, if what I want to do is learn interesting stuff and do research? If I had a subsistence-level job that didn't suck out my brains, I could pretty much spend every waking moment either letting the subconscious creative process run, or actually building stuff, researching stuff, and writing papers.
Does anyone know if there was ever a project to take a really complicated oo system and a unit test. You run the unit test with some aspectj stuff and produce one big method that does the same thing that all the objects and methods just did? Not as a replacement but rather as a tool to help you get the jist of something you don't really care about quickly?

Maybe even comment (or color code) the big method to show which objects it was ripped from?

Then maybe something to try and compress this big method and remove lines of code that are only picking out impls at runtime or doing reflection or something?
Garrett Lisi: "Dear Skip, you're now the guy who "proved E8 Theory can't work." Good luck. In physics, the universe gets the last laugh."
> Are we seriously at the stage where people want "an Apple product"?

In my experience, yes. My younger sister recently decided that she wants to buy a new mp3 player, and she asked me for advice about which one to buy. It very quickly became obviouse that she only wanted me to provide validation for her decission to buy an ipod nano. I showed her several other brands (sansa, creative, etc.) that were about half the price for the same specs, but she would only say that those brands were not 'cool enough' and that she wanted an ipod.
Daily things to do as an entrepreneur (week 5): build a vision
What kind of abstractions are the most trustworthy?

In my experience, the ultimate in abstraction is anything that works solely with immutable data. This includes, obviously, pure functions, but also objects which have no mutable state. Such things are trivial to test and perfectly composable. It's easier to gain trust in them as you rarely need to know exactly what they do, only whether they appear to work or not.

Obviously immutability alone is not enough for many abstractions, but I would still like to see it used more.
The current object-oriented models seem to encourage encapsulating state, rather than encapsulating data, which seems to lead programmers to use mutable things even when they are unnecessary.

Unless the abstraction requires it (eg. IO), I think any state held within an object is, in a way, leaky abstraction. As long as there is state within an object, it is not obvious whether you can, at any one time:

1) call its methods
2) hold a reference to it
3) delete it, or your reference to it (Mostly applies to non-GC languages)
4) Pass it as a parameter to something

All these worries disappear with immutable values.
I think the take away lesson is to keep your your variable costs low

If subscriptions start pouring in, don't go and hire 10 more engineers.
http://www.memorymanagement.org/bib/a.html#baker
One thing is to consider happiness and unhappiness on separate scales, rather than ends of the same scale. Someone who is poor can be both unhappy and happy simultaneously. Someone who is say, middle class, may be happy but not very unhappy. And someone who is filthy rich could be moderately happy and desperately unhappy at the same time.
> Cutting off people's lips and ears, and arms, and mass rapes, and general brutal chaos - that didn't happen under British rule.

What?! Yes it did, horrific violence was the dominant factor in British control of many colonised nations.
Hasn't that always been the clarion call for the dictators and authoritarians? They're even celebrating Stalin now over in Russia because there was order under him. Was Tito's dictatorship justified given the later turmoil in Bosnia?

And what atrocities went unreported under the British Empire? It wasn't until Gandhi came along and somehow got the British press to pay attention that the British public was aghast and shamed by what they saw. What was there to be so ashamed about if things were so hunky dory? Colonialism died when the rulers couldn't stand the actions taken in their name to maintain their rule.

What's happening in Africa has happened all over the world, at times even in the U.S. It happens whenever access to certain resources brings in so much money that the government is overwhelmed. It's happening in parts of Mexico right on the U.S. border today, and it's spilling over into the U.S, with the resource being drugs.
I agree with you, even though math was never a problem for me.

Another factor that could play into this is the learned frustration that comes with the increasing force of the teaching attempts. Some people might be bad at math when they're young, but then because it gets pushed on them so much they then acquire a personal dislike for the subject, so even if later they might be in a spot where they could learn the subject easily, they'll still have in their head that they suck at math and don't like it. It's a really hard thing to unteach.
Don't forget, this time last year Sequoia injected $2 million into YC's new fund. Ron Conway, Paul Buchheit and Aydin Senkut all included.

That means the startups in Summer '09, Winter '09 and this summers are probably being seeded using that fund.
Make application useful for users.

You don't need virality built into application: "There was no built-in sharing function in the software that would have made it inherently viral. The app was simply useful and users shared it with their friends. "

Keep your variable costs low.

They ommited keeping all other costs low.
Aren't engineers fixed costs? Unless they're support or operations engineers...
I'm a Web Analytics Junkie
I enjoy driving, personally.

I don't enjoy _having_ to drive somewhere, however.
Clearing the confusion - the "How to nap" article got 76'000 hits on LifeHacker - not 76'000 click-throughs. It was featured in the rotation at the top of the site (and I think that ended up on Gizmodo too). There weren't all that many click-throughs, but that wasn't the point for that one.
The American education system is constantly changing. I don't even know how they teach math to kids these days but I would probably think it was completely foolish. Apparently they changed the way they teach spelling and vocabulary and I think the new method is complete nonsense.

But the point of the article is that the current mantra seems to be that if 'kids aren't good at math in grade X' then 'teach even more math at grade X-1', which has diminishing returns when you start getting down to kindergarten and such.
The cost and the labor used to produce units isn't always the same.

You're right, on paper.
There should be some sort of unified modeling language for this sort of task...
But not in the case explained.

Git submodules not only are still separate repositories (making merging and splitting the shared resources problematic) they also require maintenance in the repository they are added to, so in practice a symbolic link is much simpler (as you do not need to update that link each time the submodule is updated).
yes, I think there's a need for this type of diagram. Reminds me of LabView from many years ago.

some quick feedback:

- Could do with some sort of feedback to indicate what can be clicked on and what can't. I jumped in (to the demo) early without reading your instructions, and had to click on everything to see what responded and what didn't. It looks like brown boxes with square corners are clickable. Completely missed the double click option.

- The scrolly bit on the dialog that pops up is horrible :) (Unresponsive, hard to hit, doesn't really look like a scrollbar etc)

- There's a bit of naming inconsistency going on between being in the top view, and in a sub view. From the top view, it looks like there's 3 main processes; File System on the left, Process Scheduler in the centre and Network on the right. When I enter Network, I'd expect to see the box it connects to called Process Scheduler, but instead I get Virtual File System. Where's the process Scheduler gone? Same with the sub view on the left.

- Interaction is also inconsistent. From the top view I double click a box to enter it, but the same action doesn't work on boxes within that view; instead I need to click Back (which I didn't notice for some time). When I'm looking at the Network Interface view, it looks like the Virtual File System is the same type of widget, but it isn't

- Oh, and you might want to get rid of the generic Rails 404 page :)
You seem to have a list of things you want to learn, but you don't seem to have a real clear concept of what to use them for.

JavaScript doesn't tend to "stand alone". It is primarily used for client-side scripting for web applications. While that's not the only thing it's used for, if you had some other specific use in mind, you'd probably be mentioning it.

You ask if it's essential to learn HTML. Well, you're talking about languages that are typically used for web development, and HTML is the final product these things spit out and send to the user. Given that, HTML seems like a very strange thing to try and intentionally keep in a knowledge blind spot.

Your post sounds like you're looking to pad out a resume with specific things, and you don't really understand yet what those things are. I apologize if that assumption is in error, but if it's true, there's really nothing wrong with that.

But I would suggest, rather than trying to maintain that HTML blind spot, you actually start there. Pick up a copy of "Head First HTML with CSS". Then pick up the brilliant Douglas Crockford book on Javascript mentioned by another replier. Also check out Mozilla Developer's Center's JavaScript area (https://developer.mozilla.org/en/JavaScript)
I'm not crazy about the logo; It isn't bad, but it does look like a (really good) layman's attempt at creating a logo. I (also a developer) have the same exact problem, in that I come up with a 'good enough' logo and usually stick with it for longer than I should have. People LIKE logos, and honestly, if we could have a nickel for every time an inferior product won market share due to a better logo, we'd probably both be rich.

The "Questions, People, Ask a Question" are kind of the same way. The white font looks a little off -- I might try a slightly softer off-white color, but it also makes them stand out. A more experienced UI guy could tell you more about it, certainly.

The login and signup aren't nearly prominent enough, I think. I had a hard time finding them. If I played with the app more, I might discover that you've solved the problem by prompting for login/registration on actions, which is where I think they ought to be, or something, but they're also a little blah.

Lastly (and this is actually parallel to the adwords, but I'm throwing it in because you asked) the double-turn-down effect on the search just bugs me. I don't know why. If it were rounded on both ends, I'd probably be fine. If they turned in opposite directions (ala Digg) I'd probably be fine. It also doesn't scream 'search' to me either.

These might be the amateurish ramblings of a novice UI guy, so take them all with a grain of salt, but I'd at least try to get some consultation with somebody with more experience.

I really do love the layout, so please don't take any offense. I only say because you asked, and I really think the overall design is nice, even if you hadn't said you weren't a designer. The colors work, the transition from blue to white in the content layer is solid. The wraparound labels on the informational boxes may as well be gold-plated. The 'answers' and 'votes' buttons are splendid too. Like I said, I like it.
Hi Cubible67,

Thanks for the feedback. Yeah you are right. App and diagram are not polished. I put up quickly something that gives a feel of what I am thinking and get feedback is there really need for such thing. Surely I will consider all of your points and put up more polished one in some time. All of them are valid points except for interaction consistency. When you go deeper into Network you see "Virtual File System" which a sub component of Network. Double clicking on "Virtual File System" should take you to internal details of VFS. But they are none of details as far the diagram is considered. So it won't do anything.

Note: Indicating which of them are clickable is a very valid point. Will try to incorporate it in some time.
Clojure Protocols Part 1
No, it's more than just not needing the things. For example, I'm involved with a startup right now and the founders needed a decent amount for ongoing expenses until VC and angel funding can be arranged. Well, I can provide that money very quickly (for stock that I hope will be worth a lot more at some point) since I'm very involved and a lot of due diligence is not required. My first startup was self-funded with several other founders; that meant coming up with a pretty sizeable amount of money up front to get the company started (there were hardware components involved), and then go for a long period of time with absolutely no income.

Independence to take action means also being able to afford to take that action; not just that you can learn to avoid expenses.
Hi jrockway,

Can you please elaborate more on this point.