skysight-inc/HackerNews huggingface dataset:
> Things like database reads/writes should be refactored out immediately. This is boring stuff that only challenges inexperienced developers. Most developers with some experience can grok the idea of a function named 'SaveToDB(stringthing)' or something like it.

They should be refactored out, yes, but refactored out in a different component with little (ideally none) logic in it, not a different location of the higher-level component.

> Taking if-blocks or loops and putting them into their own function just to shrink the size of the god function to pretend you're refactoring really serves no purpose though (IMO). This is especially true if the number of times those functions are called is less than 2.

Of course it serves a purpose. Take a codebase where you have functions that go over 5 or 10 screens. Now, take a codebase which does the exact same thing, but where the god function is split into smaller and smaller functions depending on the complexity. The second codebase is much easier to read (as long as function names are well chosen). It also means that most, if not all, of the comments necessary to understand codebase 1 (which may or may not be present, and may or may not be up to date) can be removed. The number of call sites for a function does not matter. What matters is how small functions make the code easy to read.
At the end of the semester, students who enjoyed the course should just tip their professors. Adding a real free-market incentive would increase class size and teaching quality, right? Let's let the invisible hand of the market decide

First of all, broke college students certainly aren't going to 'tip' their professors. I guess perhaps you're thinking part of tuition will be used for this?

Still, what students 'enjoy' is not necessarily what is most beneficial for them in a college course. I think you're setting up the incentives wrong.
> Personally, I'll be getting a rigid case that covers the back and sides.

Most cell-phone "rigid" cases are less rigid than the phone's own case, so they only afford protection against scratches and impacts, not bending.
I always figured his handlers were just having it dyed less and less to enhance the "experience" image.
I meant I want both features. I want to be able to write "let x = if a then y else z", and I also want to nest things.

But if everything is an expression, then nesting seems to arise naturally.
Got a friend recently who used mongodb as first choice for an easy db.
He got crazy, dropped it after a month, recoded the thing for postgres in 2 weeks and its been working ever since.. and hes now another die hard postgres fan.

Sooo I don't know.
Pretty sure it's easier to add PostgreSQL as a storage engine:

http://engineering.objectrocket.com/2014/07/18/experimental-...

Than to fix up the sharding and clustering in PostgreSQL. It's been an issue for quite a few years now and still not mainlined. I think most PostgreSQL users are simply scaling them vertically.
The CIC (copy-protection chip) in the NES used a tiny 4-bit MCU that also had an LFSR for a program counter:

http://hackmii.com/2010/01/the-weird-and-wonderful-cic/
Day 99 – Free office space
Hi Everyone,

I truly appreciate and agree with this article. If we are not giving time to our loved ones and only lost in this corporate world, what is the sense of making money? For whom we are working night and day? It would be selfishness if our priority is only our work. For me, family is the most important thing than comes your work. Read this short story and I think it will affect you guys too.

One day, an expert in time management was speaking to a group of business students and, to drive home a point, used an illustration those students will never forget. As he stood in front of the group of high-powered over-achievers he said, "Okay, time for a quiz" and he pulled out a one-gallon, wide-mouth mason jar and set it on the table in front of him. He also produced about a dozen fist-sized rocks and carefully placed them, one at a time, into the jar. When the jar was filled to the top and no more rocks would fit inside, he asked, "Is this jar full?" Everyone in the class yelled, "Yes." The time management expert replied, "Really?" He reached under the table and pulled out a bucket of gravel. He dumped some gravel in and shook the jar causing pieces of gravel to work themselves down into the spaces between the big rocks. He then asked the group once more, "Is the jar full?" By this time the class was on to him. "Probably not," one of them answered. "Good!" he replied. He reached under the table and brought out a bucket of sand. He started dumping the sand in the jar and it went into all of the spaces left between the rocks and the gravel. Once more he asked the question, "Is this jar full?" "No!" the class shouted. Once again he said, "Good." Then he grabbed a pitcher of water and began to pour it in until the jar was filled to the brim. Then he looked at the class and asked, "What is the point of this illustration?" One eager beaver raised his hand and said, "The point is, no matter how full your schedule is, if you try really hard you can always fit some more things in it!" "No," the speaker replied, "that's not the point. The truth this illustration teaches us is, "If you don't put the big rocks in first, you'll never get them in at all. What are the 'big rocks' in your life, time with loved ones, your faith, your education, your dreams, a worthy cause, teaching or mentoring others? Remember to put these BIG ROCKS in first or you'll never get them in at all. So, tonight, or in the morning, when you are reflecting on this short story, ask yourself this question, "What are the 'big rocks' in my life?" Then, put those in your jar first.
If this inspired you, share with others so they can benefit!﻿
Related: eMIPS from Microsoft; a CPU supporting dynamic (run-time) definition of instructions. Runs on a FPGA.

http://research.microsoft.com/en-us/projects/emips/default.a...
Rackspace Cloud also schedules reboots for the embargoed Xen issue
The comments on this are pretty depressing. I'm hoping they're from folks without kids. This has very little to do with efficiency and optimization.

This is probably an unpopular perspective but here goes anyways.

If you've got kids and you're trying to figure out what they'll remember and not remember in order to maximize some theoretical value -- I urge you to take a step back and look at what really matters. It's too easy to get caught up in life. Especially in the US. And even more in Silicon Valley.

You won't ever look back and wish you spent less time with your kids. Doesn't always matter if they remember it or not.
Looking at the photos, it does seem like it may be dyed. There are several rather gray-looking images, followed by quite dark-looking ones.
So I opened up one of my files and found the first instance of this. It was a function to load some subset of data and emit some log info. It was only called once, at the end of a chain of maps and filters.

let load_x xid =
// loading code

// Later on...
let data' = foo |> map ... |> filter ... |> ... |> map load_x

Once you view functions as values like anything else, then making single-use, "temporary" functions seems as normal as temporary or intermediate variables.
>because the developer and deployment experience is so good.
That was ironic, right?

http://php.net/manual/en/mongo.sqltomongo.php
That is probably the result of different lighting conditions. If you look at the skin you will notice it is brighter or darker as well.
I tried the plot(sin, 0, 2) example and got "plot not defined".

Edit: This http://junolab.org/docs/notes.md also returns a 404.
That was my only experience with MongoDB - "let's try this, for this experimental project, to see what it's like", without taking into account its characteristics.

After that the project grew, I was brought in and needed to do some reports, which were a huge pain in the ass without proper SQL and joins.

I don't intend to have anything to do with people using MongoDB unless they have a really, really good reason for doing so, and it's used alongside other databases.
Re: availability zones; while technically true, I'm not sure that's a fair comparison. Rackspace provides uptime guarantees for the internal network per monthly billing period, and they do actually organize the DC in cells (and yes, they do the roll-outs cell-aware). Those cells are simply not end-user visible (AFAIK).
Thanks for your time and sharing your view and quote.
Honest question, how frequent or serious of a problem is this in practice? Most of the servers I deal with have only a handful of daemons running concurrently, and of those, maybe only a couple of daemons have interdependencies, and of those, they don't seem to have much trouble polling each other and coordinating startup. I mean, from the software developer's perspective, it's probably not fun to write that polling code and get it exactly right. But from the sysadmin's perspective, this doesn't seem to be enough of a real-world problem to justify the adoption of systemd.

(I am not a fan of systemd, but I'm being neutral here because I won't learn anything if I dismiss it -- so hopefully someone will give an equally fair response.)
Although the style described above will also work just fine:

let result;
{
let b = foo(a);
let mut c = b.see();
while (c) {
c.frob();
}
result = baz(c);
}
Going off [1] it looks like TokuMX is a similar multiple faster than Mongo than Postgre is from Mongo, so I'd guess Postgre and Toku would be fairly similar speed wise. Obviously depending on your data and search patterns one may still be significantly faster than the other as the usual caveat.

[1] http://www.databasejournal.com/sqletc/tokumx-compared-to-mon...
The motivation behind splitting the data bus is to allow the chip to perform activities in parallel. For instance an instruction can be read from the data pins into the instruction logic at the same time that data is being copied between the ALU and registers.

Essentially pipelining, several years before the RISC movement popularised it? Could the Z80 have been one of the first pipelined single-chip CPUs?

That was a very interesting article. I've tried staring at the Visual6502 chip images for a long time, and although I understand the principles behind how diffusion/polysilicon/metal layers are put together to form transistors, for some reason I feel absolutely lost trying to follow the connections and find the borders between the regions especially when one layer is hidden beneath another.

Even looking at the NOR gate with its layout side-by-side I can't see much beyond the metal layer, despite it being partially transparent. I have no problems with transistor-level schematics, however. Is there some sort of trick to being able to easily read and follow the circuitry in die images and layout-level diagrams? It's like some people can read these and visualise/draw the schematic immediately.
Talkray (YC W12) Is Hiring Software Engineers in Redwood City
Not a bash bug
We've spent a significant amount of money already, in the first couple of hours. We really need your support! If you guys could help us out on Tilt, that would be awesome! We also have a Teespring campaign going!

https://www.tilt.com/campaigns/cosmos-browser
http://teespring.com/cosmosbrowser

We <3 you guys!
Better off, because I could have learnt the conventional axioms as a skill, like the perceptual and motor skills comprising reading, writing, arithmetic. And only later question them.

My "optimism" is more for my intuition; working code is experimental confirmation.

It's easier to be optimistic about code than proofs. Firstly, working code only needs to work in the specific cases you're using (that you test for); but a proof must work in every possible case. Thus, working code is simpler and easier to check, because it's aiming at less. My code almost always confirms my intuition.

Yes, it's also helpful to have the automatic, mechanical check of executable code; and as you say, this relies on compilers, OSes, silicon, hardware. (Though, anecdotally, I have noticed subtle problems that I eventually diagnosed and confirmed to be compiler and hardware bugs.) BTW, yes I have tried COQ (proof assistant; somewhat mechanical proof checking), but simple ideas become very complex to prove, and the problem of bugs in COQ itself etc is of greater concern, for the next reason:

Secondly, and relatedly, is that the standard is much lower for code. It just needs to work. Whereas a mathematical proof is supposed to be absolutely true. In other words, I don't ask as much from code. If there turns out to be a bug, it's just learning more about the problem; about the world. It's an engineering flaw.
But if my proof is wrong, the game is lost.

An argument against my intuition is probably more telling. Though my faith in it has turned out to be justified many many times, I certainly can be wrong. My only real excuse is that, as a human being, I have nothing else to fall back on but my sense of reality and reason. That's my hardware; if it's wrong, I really am lost. So I might as well trust it.
Fortunately, it's almost always right; probably because I try to see things from many angles and check them in many ways before my intutive sense is fully formed.
The part where she talks about thinking she is being stalked and specially when she is describing the google+ community "I noticed that they were definitely all men" were highly suggestive (to me) that the author was a woman.
I maintain an environment that has both pg and mongodb. While pg was simple to install and to debug, mongo has given me just pains. I agree that MongoDBs developer experience is nice - download, run, develop, but from the OPS side, that looks totally different. PG is a bit the other way round.

The sad state of affairs however is that often developers choose which DB they'd like to work with and (Dev)OPS doesn't get a say in that.
No, I mean really smelling the dog poop. Everything else, in my opinion, takes away from the experience and is a distraction that needs to be cast aside.
Cosmos Browser – A text-message-based web browser. Now on Android
I refuse to believe you speak from experience.
We've spent a significant amount of money already in the first couple of hours. We really need your support! If you guys could help us out on Tilt, that would be awesome! We also have a Teespring campaign going!

https://www.tilt.com/campaigns/cosmos-browser

http://teespring.com/cosmosbrowser

We <3 you guys!
KDevelop (specifically Kate) does this.
Like cookies? Like shared cookies if you opt-in?
I've never been a "real" sysadmin, but back in the mid 80s I learned that anything you don't practice doing regularly will inevitably be painful.

I was working as a developer at Unisys (or it might have still been Burroughs), down the hall from the OS developers (for one of Burroughs' 3 distinct mainframe product lines, each with its own cpu architecture, operating system, system software, etc.). At that time, our mainframes could be patched while running, without re-booting; re-booting was considerably slower than patching. As a result, as each new OS patch was developed, it was applied on the fly to the machines in our dev environment, and they hadn't been rebooted for something like six months. It turned out that it was possible to have a sequence of patches, which when applied on the fly to a running system caused no problems, except that when it came time to reboot, it would crash. You can imagine the fun of trying to debug which change (or combination of several changes), out of many months of development work, had broken the boot process! These dev machines were shared with other teams (compiler developers, database engine developers, etc.), so the productivity hit waiting for our dev machines to be available again was substantial. After that, the policy was that the OS developers took turns coming in early one morning a week to reboot the dev machines, so in the worst case they'd only have to track down which of the last week's worth of patches might have broken the boot process.
Do you think the $.05 tick size experiment will demonstrate the disadvantages you claim for larger ticks?
> People are switching to MongoDB because the developer and deployment experience is so good.

WAT? can you tell us more about your experience? according to mine ,developers are moving away "en masse" from Mongodb,because the experience was so bad.
> Suppose a chart showed a decline in online discussion of sex -- would it be rational to assume on that basis that people were having less sex?

yes.

but you could argue that the code quality increases because there are fewer newcomers
>I don't know the motivation for the downvotes

It's pro-systemd brigading. The cancer is spreading.
Finger extension for large phone screens
Strangely,there is no JOIN example ...
Not true for Angular where you really should avoid using jQuery.
Please correct me if I'm wrong, but isn't updating JSON properties one the big improvements of the soon-to-be-released 9.4 version?
ChatGT: Anonymous live chat on every website
I know my phone will shatter if I drop it. But I'm not going to drop it to prove this point.

All 10,000,000 won't dare to test the bending and would try to avoid conditions (don't keep in pockets, buy thicker cases etc) that will lead to bending..
It is pretty basic maths that will demonstrate that this system doesn't work (as in it doesn't "beat" the casino).

You say you won $10k, but how much money did you have? You said at one point you had $60k on the table so let's assume you had just that - if you put the entire 60k on something which has 7:6 odds then the odds of you winning are high but exactly what you would expect given the winnings compared with the bet.

When you play with the martingale strategy your odds of winning aren't any better, you just think they are because you don't realise your entire pot of money is actually at stake.
You didn't intend saying this, but what	your flippant remark amounts to is that sexism has been the rational answer to the facts of human biology for almost all of human history, and that even today, given the advances in reproductive technology sketched in my post above, it's far from clear whether 'sexism' isn't still a good or at least reasonable division of labour.

This sits uncomfortably with the everyday meaning of the term.
I'm guessing it is mostly increasing affluence [+], partially causing a portion size war for food other than prepared-at-home meals (which are a much larger percentage of the US diet in 2014 as compared to 1980), and partially applying somewhat richer standards with regards to what food is fresh enough for consumption. At a certain point of affluence, why have three day old leftovers (even if they're palatable) when that competes with a generous serving of delicious piping hot fresh-cooked food? Why keep half a bunch of bananas which are two days from optimally ripe when you can simply replace them with a bunch of bananas which are optimally ripe? etc, etc

I'd expect global food waste, measured in terms of absolute tonnage, to go up over time as the world gets wealthier and less people, at the margin, have to make the choice between "eat foot which is less than maximally palatable to me" and "go hungry."

[+] "But Americans aren't richer in 2014 compared to 1980." Long story, but I strongly disbelieve this, especially with regards to food.
If by "the rest of the comment" you mean my original post, then I did not say	that the
traditional division of labour is obsolete. I said it's unclear if
it's obsolete or not.
Doesn't matter if it's big business or academia, shitty managers everywhere love bad metrics.
Still, what students 'enjoy' is not necessarily what is most beneficial for them in a college course. I think you're setting up the incentives wrong.

Exactly. The majority of them just want the highest grades with the least effort, and the professors who will quite naturally want to get tipped more, will optimise toward that. It'll create a situation where teaching next-to-nothing and giving everyone perfect scores gets the highest rewards; i.e. not much of an education.
No. Trust in what's battle tested in production.

Use MongoDB for all your pet projects, all your development. Joining data from documents is good way to learn where SQL came from.

Just don't do it in production before you master it.
Awesome product, horrriblleeee timing on the launch :)
Just tried to google this, but couldn't find anything. Why is Python on Postgres considered unsafe?
I agree it doesn't work but with infinite money you can win any finite amount of money. Your assertion assumes that you don't stop after a win.
Multi-factor authentication on your command line
I'm not	sure what you mean by "what we want is (one of) the
consequences, not the causes".

As to "it just calls into question the legitimacy of "sexism" as a
pejorative", sure, that's right. But in day-to-day English, "sexism"
is pejorative, and that is not going to change any time soon.
Therefore it is confusing to use the term when describing the
biologically-based division of labour that was for 99.9999% of human
history the only game in town. Calling this division sexist is
therefore misleading to casual readers.
Sorry, that's just a prank for the amusement of our robotic viewers.
Chrome extension which bypasses the paywall: https://chrome.google.com/webstore/detail/gorbachev/mfojdgde...
When women primarily work part time and (by implication) men full
time, you still have a sex-based division of	labour. It's just less
extreme than in the olden days, where men did all the work and women
sat around and raise children.
The iPhone 4s has a 3.5" screen, not 4.5" ;).
Hey guys, please note that this is still in the early stages of development. Please report any bugs to bugs@cosmosbrowser.org

Much love,
Team Cosmos
I guess a regular wiki is too much to ask for...

(For the omg-cryptic-markup crowd there is always Google Docs. I seriously wonder why that hasn't crushed all trivial Sharepoint instances yet.)
The point of a basic guaranteed	income is that you get the income unconditionally, even without working. So	what tomp is alluding out is emphatically not a	basic income
Amazing concept.
> I found that many companies have incredibly bad, not use-case driven reasons to pick their DB.

As in "Our lead dev always wanted to try X, because he likes the name".

Given that, I really need to build an app using project-he-who-may-not-be-named.
Another great comeback for the annals of HN (like https://news.ycombinator.com/item?id=35083)
You don't think he got paid to post here? /s

But seriously they didn't do the test properly. https://www.youtube.com/watch?v=gJ3Ds6uf0Yg
Anaerobic decomposition releases methane, which is about the worst possible configuration for your carbon and hydrogen atoms from a greenhouse effect point of view. Releasing the equivalent in carbon dioxide + water vapour (by letting it decompose somewhere with oxygen available - or equivalently by burning it or having animals eat it) would be far less damaging.
Thanks for the link; I now feel a little more convinced by Euclid's Theorem than last time I looked at it.

Though I still don't feel fully convinced by it; I don't fully see it. It's entirely possible my obstacle is not so much my skepticism as my stupidity :-)
What skills and technologies would you focus on for the next couple of years?