skysight-inc/HackerNews huggingface dataset:
I was hoping the article would express the opposite meaning of the ambiguous title.

You could look at the difficulty of generating a distribution that works perfectly before, during and after install, and see it as a usability problem as the article does.

For me, however, I see a major issue in the actual push for more 'usable' desktop environments (gnome 3, unity etc.)

I'm a Linux fanatic, and I've used it long enough to know it is an operating system for enthusiasts, tinkerers and professionals. Non-technical users can most certainly enjoy using it, however at some point they'll need to roll up their sleeves. Has anyone ever installed a Linux distribution (or any operating system) and not had a single problem? Guess what, there's no Linux Store on 5th ave. Drive your own car, and all that. Sure, there's webforums galore, but if we're talking non-technical users, we're talking about people who wouldn't be able to articulate the problem in the first place.

I think Debian's switch to XFCE was a great choice. The taskbar/menubar is a workhorse. When people boot into a zoomy more 'user-friendly' environment and are met with technical issues, they feel only the more cheated. It's time the more 'user-friendly' distro's woke up and realized who actually uses their software.
notime, your account was hellbanned 15 days ago: http://news.ycombinator.com/item?id=4294279

priestc, your account was hellbanned 26 days ago: http://news.ycombinator.com/item?id=4245644
I thought from this story http://news.ycombinator.com/item?id=3692771 they already decided to do it on the desktop. Did that not materialize?
This is no surprise. Zynga is an immoral company, abusive from the start.
Building an Audience with More Active Conversation
> Put another way, it's the political liberals who came up with OSHA (I hope--I'm somewhat ignorant of the actual history :P).

OSHA, like the EPA, was started under/by Nixon.
What will you do if your house burns down?
You have 30 days to recover it using the free version, and unlimited time if you pay for it: https://www.dropbox.com/help/115/en
BackupPC handles all computers. Then...

Photos and documents (basically small stuff) -> rsync.net every day.

Large stuff (music, video) -> external USB disk.
http://store.2600.com/summer2001.html - Fun with Fortress
Would it be possible to run this against an ASP .Net app with lots of JS? It refers to Python in the documentation, so I'm not sure.
If you see how namedtuple is implemented, you'd realise it's extremely easy.

namedtuple uses eval(). It really shouldn't, since there are far better ways to do what it does, but it does.
yeah, seems to be a lot of old links getting shared lately. please stop.
Maybe start using http://isitold.com/ before posting.
The problem with named parameters is that suddenly method parameters become part of your exposed API.

The other problem is that the compiler currently discards the parameter names, so older binaries are not going to be compatible.
Ha! It was so hard to resist a Rush reference when I wrote that date.
Asynchronous schema enforcement, that's really interesting. How has it worked out?

Also I'm not sure I get the dropping part. Do you really throw out most of your data after a short time window? Is it not of trending/historical-analysis value?
I run a Tahoe-LAFS grid that spans a couple drives in my home machine and my office workstation. The majority of "archival" stuff I need to store that's large and relatively infrequently accessed (music, ripped DVD backups, hi-res TIFF scans of my artwork, RAW files for my photography) just lives in that grid. "Backups" are implicit. I even wrote my own music player that just streams out of Tahoe instead of off disk.

I actually had a (mostly full) 2TB drive go south just the other week and I was able to pull it out and replace it without any data loss. The rest of the grid was even still available while I replaced the drive. I put a new drive in, made a new Tahoe node on it, brought that node into the grid, then ran a "tahoe deep-check --repair" and it repaired and rebalanced all the files that had had shares on the broken drive.

My source code is vitally important, but small. I use git so I just always maintain a couple repos. Generally one on my workstation, one on our office git server, one on github, and there might be copies on my laptop, home machine, and a personal Rackspace server.

For my personal websites, I have a cron job that dumps data out nightly and drops it into Tahoe.
Happen to have relevant bug #s? I'd like to track this work and maybe lend a hand.
I tend to relate to conservative with "small government", and in that light Lua would be a conservative language, because it has a small core and doesn't try to do too much.

His conservative definition is seems to be "everything that is wrong with the world" or something.

---------

Also, this older rant reads to me as Yegge saying that this "conservative guy" was responsible for Google's success:

"I've been debating whether to say this, since it'll smack vaguely of obsequiousness, but I've realized that one of the Google seed engineers (exactly one) is almost singlehandedly responsible for the amazing quality of Google's engineering culture. And I mean both in the sense of having established it, and also in the sense of keeping the wheel spinning. I won't name the person, and for the record he almost certainly loathes me, for reasons that are my own damn fault. But I'd hire him in a heartbeat: more evidence, I think, that the Done, and Gets Things Smart folks aren't necessarily your friends. They're just people you're lucky enough to have worked with.

At first it's entirely non-obvious who's responsible for Google's culture of engineering discipline: the design docs, audited code reviews, early design reviews, readability reviews, resisting introduction of new languages, unit testing and code coverage, profiling and performance testing, etc. You know. The whole gamut of processes and tools that quality engineering organizations use to ensure that code is open, readable, documented, and generally non-shoddy work.

But if you keep an eye on the emails that go out to Google's engineering staff, over time a pattern emerges: there's one superheroic dude who's keeping us all in line."

(http://steve-yegge.blogspot.com.br/2008/06/done-and-gets-thi...)
Since long parameter list is considered a code smell, people should be discouraged from writing this kind of code anyways. Namely, this example from the article is in fact a bad practice:

> o.doSomething1("Alfred E. Neumann", "http://blog.schauderhaft.de, 42, "c:\\temp\\x.txt", 23);

As other commenters have pointed out, I think the builder pattern is one of the two solutions I would use. The other solution is to simply create an object that represents the values to be passed in to the method. Consider:

User user = new User("Alfred E. Neumann");
user.setLink("http://blog.schauderhaft.de);
user.setUltimateAnswer(42);
user.setTempFile("c:\\temp\\x.txt");
user.setZip(23);
o.doSomething(user);

Even with named parameters, I would say the latter approach is still superior than having a long parameter list.
are you stating that computer manufactures don't rely on computers to design the next generation manufacturing techniques? Or that faster/better software isn't going to increase the rate of improvement in computer manufacturing?

Material scientists , physicists, chemists, chip designers are all using software for modeling and exploration. And bigger/faster/better computers are helping drive innovations back into computer manufacturing. The process is feeding itself, and it has been for awhile.
Pull the bandaid off now
It can be done sometimes, I done it for my 4th year OS course. Pretty much a day of cramming, sleepless night + uppers + .. = A-. Trouble is I remembered or learned absolutely nothing from it. For the record I loved university, but that particular course was taught by a prof who had no business teaching anything to anyone(great researcher absolutely terrible teacher) so I could not bring myself to come to class
I know this is controversial in light of their recent breach, but I use Dropbox in conjunction with a symlink into my docs folder. I don't have photos or videos, and my documents easily fit into Dropbox (I also have a lot of bonus space, from Dropquests, job fairs, and referrals). Everything automatically backs up, is accessible from any device, has revision history, and won't get destroyed if my house burns down.
Multiple backups. Redundancy is the name of the game (redundancy and paranoia)!

1) Backblaze - fire-and-forget cloud backup, running in the background [constant]

2) Time Machine drive - what if I have no network access and need to recover work? [daily, when I'm at my desk]

3) Carbon Copy Cloner - what if I suffer a catastrophic boot disk failure? [weekly]

The drives for Time Machine and Carbon Copy Cloner are in separate geographical locations (fire, theft, etc).

CCC creates bootable backups, so if my internal SSD drive dies I can boot from USB or just switch the drive out, then restore any changes from TM. Minimal downtime!
My biggest problem with Vim
An MBA among Hackers – Organization Structure
How old are you? If you are older than 1 year, please stop commenting!
In his section on Tech Corporations, he classifies Apple as "Diagnosis: no idea."

Is there a reason nobody speaks publicly about Apple's engineering culture? We hear a lot about the culture at Google, Facebook, Microsoft, and Amazon. But I've never met an Apple engineer. And I've never read any detailed accounts by an insider.

Does anybody have any good resources? Or is there a very restrictive confidentiality policy?
Can a camera save a company? Nokia bets on PureView and imaging expertise
That would definitely be a nicer way to do it. Although, using the builder pattern to create parameters for every single method in your API would be a gigantic pain.

Javascript APIs hack this in by taking Objects as params so that you can do {name='Alfred E. Neuman'...}. Unfortunately, Java's syntax isn't nice for creating Maps either, but maybe you could do something with that.

In the end, this seems like a problem with the language syntax and any fix other than one at the language level is going to be a hack.
There is a small but meaningful distinction: Encapsulating the data in OOP fashion allows you to respond when the need arises. You don't build it until you need it, but when/if you do ever need it you won't have to refactor the interface (and the interfaces of all the classes that use these data).

This minimizes changes down the road and leads to maintainability.
I am astounded at the cost of college, just some 10 years after I started school. My first semester at a decent State university cost me something like $900. I even had a scholarship for enough to cover that semester from doing well on some standardized test. By the time I finished school a few years later It was about $1700 a semester (maybe not exactly, but close to double).

I can't imagine paying $44k for a bachelors degree in any subject. If that $44k only covers tuition, not books or cost of living, it is insane.

Why is going to a community college for the first one or two years of your higher education experience never promoted? It gives you a chance to see if you'll enjoy that 'college experience', you'll get to sit in a wide range of classes or relatively little money and if you want to continue you can then transfer out. I didn't take this path, but if I had to do it again I would.
You convince a judge, not some guys in an online forum. That's what I meant by "not up for debate" : "not up for debate in this forum, by laypeople".
OK Cool.

I thought I was just being dense until I came back to HN from the article and read this comment.
What "politics" I adopt depends mostly on what I'm building.

If it's a library that someone else will use, I try to play as conservatively as possible, and I fully expect that despite my best efforts those developers will uncover lots of bugs regardless.

If it's a mission critical application, I'll also be conservative. The more pain there is in fixing things later, the more careful I'll be up front.

When I'm writing a game, I'll play it more fast-and-loose. So long as any glitches don't crash it or open an exploit or ruin the user experience, it's usually an acceptable trade-off.

When I'm writing stuff for myself, I go crazy, trying out all new fads and methodologies just for the hell of it. This way, I learn new things and get enough experience with them to mark them as conservative-safe and liberal-safe.

My only sticking point is this: If someone competent cannot follow your code, you haven't documented things properly.
Maybe it's my browser on this ancient laptop, or maybe it's my ancient eyes, but the two 2011s in the start/end dates in your reddit position don't look identical to me. It looks like there's more horizontal space between the 1s in the second line than in the first, and in both cases, it looks like the first 1 is closer to the zero than the second 1 is to the first 1.

I wouldn't make a hire/no-hire decision based on something as insignificant as that, but in the context of you holding it out as a example of a well-formatted resume, it kind of grabbed my attention right away and wouldn't let go.

It is a great resume, though, and I might steal a few of your layout ideas for mine, next time I update it, if you don't mind.
I just made this with nvd3 this past weekend: https://github.com/tayl0r/ib-simple-charts

I had some trouble with the tooltips and getting the x-axis to like Date objects, and I really wish all the examples showed the source data (not just some random function that generates the source data), but other than that it is pretty solid for boilerplate charts. The other weird thing is that some charts work without a height attribute on the svg / div element and others don't, and you kinda just have to figure that one out for yourself =)
It may be "fake", but it still has the property that this article was looking for, in that it is obvious to the reader what each of the arguments being passed to the method are for.
I have multiple layers of redundancy. This is Mac-centric, but you can do something similar in other operating systems:

* I use a Time Machine to do incremental backups of my system drive which also contains any files that I don't want to lose.

* I periodically make a complete image of all my important drives. I have two copies of this. One copy stays off-site and I never have both at the same location as my originals. The other copy is local but left disconnected. I periodically rotate a copy to the off-site location. I use SuperDuper to make the images.

* I use DropBox for things I am working on and various other important files I want backed up and shared across my computers. This isn't big enough to contain the bulk of my media files (music, photos, video), but anything small enough goes here. A few of my super-important media files I keep here, like my wedding video and photos. I started using DropBox's photo syncing feature for my phone camera and am thinking of using it for all my cameras as well.

* Anything in my DropBox gets backed up by Time Machine as well on two different computers at two different locations.

I think it's really important to have at least two backups in the case that one of them fails. And one of them absolutely should be off site since a burglary, fire, hurricane, etc can potentially take them all out if they are all in the same location.

Also, it should not be possible for a remote attacker to erase all of your backups. For example, if you used a combination of Time Machine and cloud backup, an attacker could potentially gain access to your local machine, do a secure erase of all your drives including your Time Machine backup, and gain access to your online cloud backup and erase that. In a situation like that, you better hope that your cloud backup provider keeps enough backups such that you can recover erased files.

If you want to be even safer it's good to have 3 backups. One local, one off-site, and one off-site in a different city (e.g. Internet backup or shipping your drives somewhere). Now this is considering a severe worse case scenario, but having an off-site backup in the same city isn't enough, because a hurricane or earthquake could potentially damage your drives in both locations.
Because of client requirements, my team uses Sharepoint. What an overcomplicated mess. For information security reasons, Gmail is blocked. So, even though we would want to use a google spreadsheet on the side for tracking tasks and issues that might not merit posting to our client's sharepoint site, we can't. To replicate this functionality, we occasionally collaboratively edit a spreadsheet on the LAN. Everybody hates Sharepoint, but they still use it because it's what they know. I think the best way to get a foot into this market would be to build an open-source replacement for Sharepoint, and build a business around deployments and consulting. Not an easy task. There are many tools out there that do one or two of the things that Sharepoint does, but few of these tools integrate with one another. Perhaps part of the reason Sharepoint sucks so hard is that it gives you all of these things out of the box. If you could build a modular system for all of this functionality, and market it successfully, there would be tons of businesses wanting to buy your services. Granted, services companies don't scale the way that product companies do, but do a handful of enterprise deployments and then retire. I envision such a system being like Wordpress with various plug-ins. Make the complexity of the software match the complexity of the problem you are trying to solve, without introducing incidental complexity.
Does anyone know if this blog is a Tumblr? I just like the layout. Thanks.
I'm not sure I see the "another problem" you're referring to. Can you describe the problem with the new implementation of doSomething()?

Also, I don't think the original problem was the same values being used all over the place. The problem is how to be clear about which parameters you're providing, and accepting static types and giving the type a simple way of constructing it solves that.
There is no such thing as 'mint-specific' packages.

It's just the Ubuntu repository, with a different default installation and some 'out-of-repository' settings, script and GUI applications.

Mint is not a build target in any way shape or form. Ubuntu however, deviates enough from Debian (patched kernel, patched/out-of-sync glibc, as well as patched core libraries) that one would have to explicitely test on Debian proper.

To call these packages Mint specific is like calling the windows executable HP-Windows-Executable, because you had HP crapware preinstalled.
Emphasizing that the banks could not count on government help

Absolute bollocks. If any of the major banks collapse, there will be a crash much, much worse than 2008. There is precisely zero chance of government sitting by and allowing that to happen - and the banks know it.
Can you provide an example of an internet forum that you consider to be "positive"?

HN has a higher level of discourse than any other discussion site on the internet. I'm willing to bet that the ratio of helpful comments to nasty comments on hn is as high as any site you could name.

If you think HN is negative, you should avoid reddit at all costs. Put 4chan in your /etc/hosts, because the level of negativity there is enough to turn a sadist's stomach. Have you ever seen the comments on huffington post or npr? Compared to those places, HN is a non-stop praise-a-thon.

I think the textmate comment is a great example. The commenter didn't just say "textmate sux!", he or she made a case and presented some kind of evidence for the claim of textmate being subpar. I don't think that people need to go out of their way to phrase things in the nicest way possible. If they don't like something, they should be able to say that without being labelled as "negative".
Specific Controlled Flooding Schemes for DNT
Here we will study di fferent controlled flooding schemes. We are careful to
base our schemes on simple, non-chatty and elegant algorithms. This is because
in sparse and highly mobile networks, complex or chatty algorithms waste the
short time nodes have when they come within range of each other. The schemes
we introduce are the following:

1) Basic Probabilistic (BP): When talking about the willingness of a
node in the previous section, we implied that forwarder nodes have the same
willingness as the sender node
I've heard the Law of Demeter at times stated explicitly as that you should usually return only primitive data types from an API. Rich Hickey certainly claims this too, although he doesn't refer to it as the Law of Demeter.

The Law of Demeter is also sometimes summarized by "One dot: good. Two dots: bad."

Or from Wikipidia:

In particular, an object should avoid invoking methods of a member object returned by another method. For many modern object oriented languages that use a dot as field identifier, the law can be stated simply as "use only one dot". That is, the code a.b.Method() breaks the law where a.Method() does not.

Edit: I should have written "built-in types" above, rather than "primitive types".
Computerized trading has made US markets more fragile
You: "Luckily, I left after my 2nd year and only walked away with $50k in student loans."

Me: "Why did two years cost $50k but four years costs $175k? (2/4 != 50/175)"

You: "No one really pays sticker price for college. I had some grants, financial aid, and (like someone else mentioned), the co-op program helped pay for some of my tuition."

Me: "If nobody pays sticker price for college why did you use the sticker price when discussing how much debt you chose not to accept?"

http://news.ycombinator.com/item?id=4332885
I have a similar backup system as this, but I temper my use of DropBox for super important things because it is a hot storage solution. If I (or someone) happens to delete it from one DropBox location, it's deleted everywhere.

For that reason, I also SFTP my files up to Amazon S3 as a cold storage solution.
An answer to that depends a great deal on what you already know. If you know what linear equations are, and you know what a finite field is, then is seems pretty clear. Are you trying to "read like math" or are you trying to "read like a novel"?

If you're interested then read it again, closely, trying to understand every sentence, then feel free to post here or email me with the first sentence you don't understand,
Cheaper solar panels to come soon? Berkeley Labs breakthrough suggests so
Hahaha! No idea if it'd be feasible (my apt is at 1st floor anyway, I have no garden), but it'd be cool as hell to load your backups onto a USB cable that goes underground :-)

As far as USB plugs sticking out of a wall are concerned, have you heard about the "USB dead drops"? http://images.google.com/images?q=usb+dead+drop
At the end of each day I run this Allway Sync app that makes both two way and one-way syncs of my folders to an external 320GB Samsung HDD. I don't propagate deletions for my photos and videos, so they accumulate forever. For all the other folders, I propagate deletions and modifications.
Every couple of months or so I mirror this daily use external HDD with another one I have just to avoid any risk involving hardware failure.
Modelling Is Everything
That's true... and at least in my area (Colorado/New Mexico) that cost for a resident is currently between ~3.1k and 5.2k per semester, a far cry from the 22k per at RIT. And that is without scholarships. A full four years at that price is about one year at the original article's cost at RIT.

Not free, but not outrageous.
This Apple Commercial Was Too Self-Congratulatory To Run