skysight-inc/HackerNews huggingface dataset:
And eventually you're going to be stuck in the $300,000/year treadmill at a life-sucking anonymous job with no chance of ever hitting it big (or making an impact on the world).

Are they still paying that much for say a ten year engineer? Or was the outsized pay just a 90's/bubble thing? Or was that compensation coming form stock options that kept paying off (which no longer happens as MSFT has been pretty flat for the past ten years)?
Not... what it was
Lord Highness III shopping mall
Welcome to Lord Highness the III shopping mall, we are the worlds best on line shopping mall and we sell the best and most up to date, plasma TV''s, computers, clothes, groceries, mp3 downloads, Cd's, DVD, gadgets, consumer products, furniture, jewelry, home and garden products, watches, car and motor bike, diy tools, DVD, classical music, gifts and much more. All under one roof and at the lowest prices.

Here you can be guaranteed to pick up a bargain and find anything you can think of. If we do not have a product in stock we can get it, nothing is out of our reach.

Our shopping mall is available to people world wide as it is also web based and we can ship products to anywhere in the world.

We also sell some of the best brand names out there such as, lg, pioneer, technichs, Sony, Hugo boss, Fred perry, ysl, d & g, french connection, dell, Epsom, Cartier, Rolex, Swiss, Gucci ,Adidas, puma, locust, kappa, Nike and more.

Feel free to browse our products to find a bargain. Start shopping now by selecting your products from our super store below!
The same tech can also walk into a burning building to locate trapped people without endangering the lives of firemen, crawl through rubble to find survivors after an earthquake, power household robots to assist the disabled, and more. I know the source of funding here is distasteful, but this is a dual-use technology if ever I saw one.
Correct. At least three years as a concept.
The article is too fluffy for my tastes, but it states correctly that multi-tenancy is a difficult problem where you have too choose between several non-perfect solutions.

From the DB perspective, the major design decision seems to be: Does each customer get his own schema, or do customers share a schema?

Problems with giving each customer his own schema:

* No DB vendor will ever admit to a limit on the number of schemas you can put on one database. However, more schemas mean more objects, and every RDBMS has a table with a list of all objects in the database. A list that is sometimes scanned by routine maintenance/monitoring procedures. As the database grows you will need to avoid "show databases" or "select count() from user_tables" like the plague.

You will become an expert writing code that goes over hundreds of identical schemas to aggregate something. This is not fun, and normally does horrible things to the location in shared memory where the database keeps cursors (compiled queries). Identical queries on different schemas always compile and cache separately.

Problems with shared schemas:

* Lots of code handling permissions and identity and who can see what
* If you decide to do something to just a subset of the customers (migrate to a different server or upgrade version), you will need code to handle this. There is nothing ready made to support you.
* Schemas grow very large, and performance of smaller customers can be impacted by their larger peers.
* You don't get diskspace back when customers leave.
* Sharding is not as trivial as it would be with separate servers.

Generally speaking, I prefer shared schemas. However, the most realistic scenario is that you will have both - large customers will get their own schemas and small ones will share. I've seen this happen 5 different times - you start with one architecture (no matter which) and add the other and write code to migrate customers.

The best solution I've came up with is to design for multiple shared schemas and build the product to manage this. This will allow you to stay with one schema as long as you are small, add more as you grow, and if you are lucky enough to have large customers - creating another shared schema that happens to host just one customer is almost no overhead. The important part here is to build a really good sharding and migration tool.

I wish I had one like that to sell you :)
Mine worked about 5 minutes after I purchased it.
Ask HN: Anyone Successfully Read a Book on an iPad?
I want the iPad to work for me as a book reading device. My aging eyes need the font boost. But every time I start a book, my eyes get sore and my arms get tired. Am I missing something? I keep seeing others tweet about their great reading experiences and pronouncements of the death of Kindle.

Are there tricks I should attempt? Or should I score a big sized Kindle?
Do they really think that, though? Or is it FUD? I'm just playing devil's advocate here.
"you should always be building towards a clear, specific target"

Why?
I buy a $1 project notebook, put the name of the project on the front page, and start jotting down things in the notebook. This could be database tables, paper mockups, notes on features to add, roadmap, whatever.

Eventually, on a day I'm feeling particularly inspired, I can't stop myself from coding. This sees me make a quickie Rails development environment and push hard to get One Cool Thing accomplished. As long as I have one thing done, further attempts at coding don't feel like breaking ground (hard work!), they're just extensions to existing functional code.

You'll laugh, but the One Cool Thing I did with Appointment Reminder was making it so the logged in user can switch the color scheme for her pages. This has rather little practical utility but it was quick to do and satisfied my monkey brain: "visual changes == making progress, ergo, five visual changes == LOTS of progress."

Often the first thing I do is something with domain logic that I can only execute through the console to start out with. Crikey I love my Rails console. Right now for client work I have a program which goes to a particular government agency, slurps down a gigabyte of data, does some number crunching, and then tells you things any well-informed high schooler knows about a particular subject. The difference between the program and the well-informed high schooler is that the high schooler would get bored after listing 5 or 10 of the facts but the program can punch through thousands.
Doubt it, I'm really careful with updates and usually I only have a few hours work between me and fixing a mistake like that, not a million dollars. Maybe a certain discount was applying to everything, more likely that every actual price being changed in the db.
That sounds reasonable. I think my CV is a problem - 15 years of Oracle probably sounds like "very expensive specialist" to a startup. I should probably rewrite it to say "Will do any type of work very cheaply for a startup", only without sounding desperate ;)
Ask HN: How can I use one computer to manage 2 iPhones with iTunes 9?
I have a 3GS and my wife has a 3G. Previously with earlier versions of iTunes, it was possible to manage two iPhones on one installation of iTunes. I'm not even talking about anything more advanced than just editing a playlist. Somehow in iTunes 9, this doesn't seem to work anymore.

Also, I want to be able to manage my 3GS at home and at work, cause sometimes you have just have to change a playlist. This doesn't seem to work either.

Either I'm doing something wrong, or Apple is taking Big Brother to a whole new level.
Ahh, fuck! Drew Crampsie (http://tech.coop/index) runs a Lisp friendly VPS hosting company and he said they use Ledger for their accounting.

I took a look at Ledger and decided it was too clumsy to integrate C++ into Lisp at the FFI level, specially for a web app (you don't want bad C/C++ bringing down the house) so I have been putting off wrapping Ledger as a service for months now, and decided to write my own toy accounting utilities in Lisp, which in turn call out ledger, instead.

What I didn't know what was Ledger has a Common Lisp version (cl-ledger) written by the author himself. Facepalm!
Thats for the detailed reply. My email is cshapi@gmail.com, feel free to pick my brain :)
I joined Hackers and Founders meetup - just meeting people who are doing interesting work sounds like great fun and will probably make me feel more "silicon valley" than working at a bank does.
Thanks for pointing out specific frameworks. I got the feeling that I should be doing more programming than just unix scripts.
It amuses me that a device with 512MB of memory and usually multiple gigabytes of storage is an embedded device. Such a machine would have been ludicrously overpowered when I first started using Java on the desktop.
To me it’s a privacy alert because Facebook now potentially knows every site I visit.

I ended up adding "127.0.0.1 connect.facebook.net" to my /etc/hosts.
In your todo list, always mark out your top item for today and finish it +first+. Do your browsing/surfing etc after finishing your top item.
Having a shared vocabulary is critical for communicating and new terms are always being invented as technology progresses. Reading this actually helped clarify my thought process in some areas. A million internets to OP.
Here's a high-profile ASP.NET MVC site: http://stackoverflow.com

How about you ask them here: http://meta.stackoverflow.com/
cl-ledger is sort of on indefinite hold. I don't know if it ever got the point of feature parity with cpp-ledger, but it might have gotten close. Ledger v3.0 will have comprehensive python bindings, which is one step closer especially for a webapp.

edit: on second look it seems to have feature parity with v2.6.1, which would get you pretty far.
True, but I bet the servicing costs are terrifying. I once saw an ad for a used Ferrari that featured the words "engine-out service". That can't be cheap.
(To grandparent comment[er]) I also had a similar experience a while ago; but I gave DDG a second change recently, and indeed, the results have improved enough for me to keep DDG as my primary search engine, resorting to Google only once every 50 searches or so.
How about making it detect clusters of photos at locations. So I can look within say 20 miles of my area and find certain locations where there are a lot of photos?
I think you're focusing on the wrong part of Abstract Syntax Tree. Lisp, fundamentally, has no syntax. It's just trees. That's the crux of how you write it. When fleitz said that he doesn't like the parens, I was just commenting, perhaps in too pithy a fashion, that the parentheses are incidental to the language. A vessel to hold the substance, as a glass holds water, if you will.
Where did you get the data? Is it free? I'd love to make some realtime software like this.
The map is based on the distribution of photos from http://www.panoramio.com, a photo-sharing website. The site was originally based in Spain, so perhaps there are relatively more photos from European users.
I bought 4, half are available (Beautiful Code and iPhone App Dev: Missing Manual) while two are not (JavaScript: Definitive Guide and Hackers).

I wonder if it is related to the books themselves (perhaps each are on specific servers) or if it is only a coincidence that our available books match up.
Make sure to get some public url's of some demo apps up online. That'll help w/ your marketing to startups.

hope this helps,
Man I wish coding for android was like coding extensions for Chrome.
But the Paperclip Maximizer is smarter!
Thomas must have cracked my RescueTime account because those numbers are scary accurate.

Seriously though: BCC is largely in maintenance mode, and the types of things I need to do are not very intensive in wall-clock time. Appointment Reminder is not and won't be for a while, but that jives very well with BCC, since while I'm waiting for AdWords results to get back I can go code.

Client work I slot in when I have slack time or when I'm unable to make creative progress on my own projects. Thomas had a great line about this: on those days when you just keep banging your head against the wall, "it is great to know that you can just got 'be billable'."
Try getting Amazon.com to honor ANY price mistake.

In 10 years of shopping, it's never happened.
The pipe operator in F# |> is used in this way. When combined with currying it is especially effective:

let double_then_sum a_list =
a_list
|> List.map ((*) 2)
|> List.fold (+) 0
Zuckerberg responds to privacy concerns
On the flip side to that, many people nowadays use google maps to show things unrelated to navigation.

When you're trying to pinpoint locations that aren't street addresses, or show large area overlays, all that extraneous information is distracting, and works against usability.

It'll also be great to finally be able to show a map that's not jarringly obviously from a third party provider. (I'm totally cool with the small google logo/copyrights, but the color scheme just screams 'outside embed').
I am ill equipped to express it eloquently, unfortunately. But in poor words, it means that we can find unification between fields of mathematical thought. Taking ideas from one area, finding ways to regularly manipulate them, and then applying them in a novel way. Being able to find parallels between unrelated work because they are similar in how they are transformed.

Abstract algebra is the subject dedicated to that notion in general, category theory the one that, it would seem, is explicitly dedicated so.
Tips for Writing an Essay on Respect
When assigned an essay on respect, there are a variety of angles which make for interesting discussion. Respect for elders, respect for children, parents, inanimate object such as country flag etc can be used as an avenue for discussion. Select a topic you would find interesting and you will be able to write your respect essay easily.
I prefer Python.
Most people can separate between an organization and people who work(ed?) for that organization, even without an explicit disclaimer.

Those that can't are the reason why we get overly paranoid corporate communications departments, which is why it's virtually impossible to talk to an actual human being at many big companies.
I considered it, and although I love F# I still went with rails because of a lack of sass. I even considered porting sass to F# like nhaml.
Actually, I suspect the opposite is more common, as it was for me -- i.e. that it was from reading Martin Gardner that I became aware of the skeptical movement.
Oh, that's very true. I hadn't realized that at first, but the original site is probably in the Referer field... Now that I think about it, that is scary.
The Third Disruptive Wave #tcdisrupt
Dang. While it works well in Indiana (it detects the Metamora artists' colony), it pretty much maxes the meter in Western Europe and Puerto Rico (the latter basically looks like a glowing hot brick).
When coding in LabView I like to call the wires and blocks spaghetti and plates because it's always spaghetti code and it looks like two waiter collided on a busy day.

(i.e. http://www.dieterb.de/ccdlockin/diagram.png, not mine)
My guess is that any downvotes are because of the sarcastic tone. Sarcasm has (mercifully) never been a part of HN culture in my recollection.
Come code at Twitter's annotations hackfest
Yep, very happily. I've read a few books in the Kindle app on the iPad so far. I can't speak to the eye soreness issue, but I've mostly read in bed with the iPad on its side.
They have winter in the southern hemisphere too. ;-)
It seems some of the culture around what newbies should do has also shifted, making it more likely that people will end up with their data somewhere they didn't expect.

It used to be that, even if they knew almost nothing about the internet, one of the first things hammered into a new AOLer was: you should be careful about putting personally identifiable information on the internet, at least until you understand exactly what you're doing. The norms for things like mailing lists and web forums were to use psuedonyms, etc. I think I was even taught that in a computer-literacy class in school at some point. So it ended up being sort of conceptually opt-in: don't put anything out there until you know what you're doing. That reduces the risk that a n00b will end up putting personally identifiable information into a system that they don't understand, that will use it in ways they didn't expect.

Facebook obviously sends the opposite message: put stuff out there by default, because that's how things work these days.
I realize that running Node on top of the .net runtime will probably be significantly slower than running it on top of the highly optimized V8 engine, but some perf numbers would be interesting nevertheless.
Thank you!

So this is more a desperate legal maneuver by a company that was stuck with some dreadful license terms, and less a potential serious shellacking of MPEG LA. That disappoints me.
mkdir projectdir; cd projectdir; git init; copy in my Ramaze app skeleton; git add .; git commit. For larger projects, I'd very early on enter tasks and milestones into Pivotal Tracker. Next steps: I crack open my editor and begin typing out the DB schema. Move on to ORM Models, and begin to get bare bones, undecorated views + controller methods. Not long after that will be page layout(s) and CSS. By then, the project should be well on its way, with some functionality that actually works as planned.

Usually with these things, once you have your idea, it's just a matter of filling in the blanks. To quote from the movie Amadeus: "The rest is just scribbling."
No one may find this interesting, but in virtual worlds, this is a very big problem. For example, in Second Life, if a bug report/ticket contains the terms "Grey Goo" (or) "Gray Goo" it is immediately taken care of. To the point where, if you are a worker who can handle it, you will be given a phone call and you must drive to your office immediately- it doesn't matter what else you are doing. Grey Goo can destroy a server in a matter of seconds.
Cool, but why? The traditional arguments in doing something like this would be to access the libraries available on something like .NET. However, the point of building Node on V8 is to avoid existing, non-async libraries.
"Come up with a better way of representing an Abstract Syntax Tree in text, please"

You could use type size, with operators one point larger than their operands. The nice thing is that this would discourage nesting things too deeply.
The other thread said that it wasn't HTML5.
i agree that excessive latency would be a dealbreaker

but about admin-ing my machines, the point is that i'd rather not admin my personal computer at all. i could, just like i could admin the server that's running my webapps, but i'd rather use appengine and let google do it (better) for me
"I will arise and go now, for always night and day
I hear lake water lapping with low sounds by the shore;
While I stand on the roadway, or on the pavements grey,
I hear it in the deep heart's core."
-- Lake Ilse of Innisfree, W. B. Yeats
There is a Patrick McKenzie who does male modeling. Some of his clients are less than Google savvy. This has resulted in some very amusing customer support emails.

There is also a voice actor, who is apparently soft and sensual. That actually resulted in a phone call. I don't remember the particulars but I rather doubt I was soft or sensual at 2 AM.
Very enlightening.

Now I'm just as scared of Android as I am of the iPhone and Objective-C :)
It's pleasant enough for doing computations, but if your C/C++ is not up to snuff, you will find yourself very frustrated trying to integrate it into an existing ecosystem. Additionally, there are some REALLY annoying things you face due to the single threaded nature of the language if you're doing real time systems.

But if you go and learn K or Q and you've got good C chops, you can absolutely get a job in Manhattan or Chicago (must be willing to work long hours with little support, build almost all of your own tools, and handle the constant pressure of making everything work perfectly the first time).
Indeed. The title should probably be "better measurements prove Einstein is still right", but that's not link-bait.
Question related to this topic: If one were to use ASP.NET MVC 2, would one have to use Microsoft's development tools and Microsoft's servers, or are there viable open source alternatives?
Rivals Seize On Troubles of Facebook
i think this post is so that people have a persistent link to that game. which was a hot topic at Stack overflow yesterday
On a barely related note, I just noticed Amazon is now advertising the 'optimized for Amazon' feature of IE8. An interesting partnership.
I don't see how they could think otherwise. You pretty much have to have a deeper knowledge of the technology at work to come to the conclusion that no data is being passed to CNN.

I think technical people underestimate how much people understand their privacy settings on Facebook, but I don't see how any normal person could understand this case.
I got really excited about this when I found out about it, but have barely used it since. Maybe it's because the only person who buys me stuff from my Wish List is my Mom.
He actually writes the opposite, he is assuming he is leaving microsoft because of an agreement between him and his wife:

> so you are just going to quit working at Microsoft because of some agreement you made with your wife.

Besides that, there would be something to be said for the opposite argument, but the way I read the OP he has made a deal with his wife that said "Ok, I'll work for 'the man' for 5 years to give us stability, but after that I'll want a change of scene, and more risk", and she said "ok, that's fine with me". Now they're approaching the end of the 5 year period and he's checking out to see what his options are.

The biggest single risk in stepping down from a behemoth like microsoft to a much smaller company is that you can't rely on other people to do the mundane stuff for you (so that means you have to provision your own machine, set up your desk and so on), you are expected to self-motivate and work unsupervised for longer stretches. There is a big cultural difference and people working for large companies can get institutionalized to some extent.

But judging by the OPs responses that is not the case with him. Not by far, he seems to have his stuff together pretty good.
Without judgment, I think it's important to point out in that at no point did he admit that Facebook screwed up, nor did he at any point apologize for anything.
Quitting Facebook is pointless; challenging them to do better is not
It is interesting to me, at least, for the same reasons that made Node.js interesting in the first place: as a statement/experiment in seeing how far the async model can be pushed.

I'm a .NET dev by trade but became immediately interested in Node.js for that very reason.

In the .NET case, a Node-like project is in an interesting position: lots of long-running/externally-bound third-party (and even a few first-party) APIs are blocking in nature, except that if they were following the design guidelines they would all provide non-blocking alternatives based on a set of implementation patterns provided by and followed in the .NET base class library itself. Those implementation patterns would be relatively easy to generically wrap into the kind of callback pattern used by Node.js.

At the very least, a project like this has a possibility of highlighting some of the places where only blocking APIs have been provided but non-blocking ones should have also been provided. On a slightly more optimistic note, a project like this has a chance of allowing more solutions to be built in the Node.js events-instead-of-threads style without having to jump ship to an entirely different runtime.
None. We had a few close friends provide valuable feedback, and then we launched publicly.
I have worked in MVC 2 and while I feel it was the right decision based my skillset and the existing code base in the company, I envy the relative maturity and stability of the Rails framework. The fact that there is a "Rails Way" is good.

Personally it's usually other factors that make the decision for me.