skysight-inc/HackerNews huggingface dataset:
I like this too and usually do the same in the application layer for new projects (though it takes more discipline).

Every module is built with the intent of breaking away later. Disallowing intra-module communication is essential to this. That means no global ORMs or global anything really.
>"Who cares? These are hypothetical problems."

It's called foresight. The problems aren't merely "hypothetical"; they're inevitibilities.
Funnily, there's haskell-cafe thread[0], a github issue, and even a paper, about this (and I think maybe reddit got involved too).

Anyhow, the title is kind of too much. At least, given the aforementioned discussions, we're conflicted liars.

[0]https://mail.haskell.org/pipermail/haskell-cafe/2015-April/1...
[2]http://www.cs.hmc.edu/~oneill/papers/Sieve-JFP.pdf
[3] https://github.com/haskell-infra/hl/pull/8
People are always trying to find something physical that corresponds to something that only exists in the noosphere.

Just because its not physical doesn't mean its not real. The realm of ideas is real. It has real effects on our lives.

A person't effect on the world doesn't go away when he or she leaves the room or dies. It continues as long what they did continues to to have an effect, which might only be until the sun supernovas.

I think the idea of everlasting soul is an approximation of the impression that object permanence creates in our minds. Its incorrect, I think, but should not be a surprise, given the way our minds, IMHO.
IMO This is all you need to know about "technical debt"

1/ Poor code =/= technical debt. Far too often, poor code masquerades as "technical debt"

2/ Good engineers do the right thing which is always a judgment call based on circumstance & culture.

3/ Take guidance from your best engineers, and find a way for the business to adapt. Much easier to change the sales deck or pricing today, much harder to overcome bad technical decisions. No one ever said "I never knew that sales deck or pricing would last this long" but many say this about software. Be super careful & deliberate.

4/ Build things that are simple (not easy), and respond to demand. Focus on movability & robustness, not "perfect" design.
Even if you know the most optimal solution in terms of computational complexity, it might not be the best thing to put into your code base. There are a lot of other things to balance including (but not limited to) readability, maintainability, probability of correctness, and of course developer time. Considering these multiple dimensions is essential to good engineering.

I'm not saying you shouldn't know the best algorithms for a problem, as this article clearly demonstrates the effectiveness of a more efficient solution. In fact, having better understanding of algorithms and computational complexity makes it safer for you to accurately assess the trade-offs you'll be making by picking slower but simpler code or faster code with more complexity. There is more to consider than just big-O when writing software.

Note: What I'm saying most strongly applies to software with functionality that doesn't exist yet. If there's a reliable library with what you're seeking (such as a way to generate primes), it's usually best to use it.
There is work going on right now to help add support for API token auth, you can follow it here: https://github.com/phoenixframework/phoenix/pull/820
And https://twitter.com/pentametron
Technically, wouldn't home prices just fall until they were affordable enough for the community to purchase them? I suppose they could just sit in the owners hands forever, but that seems unlikely. I would think that, after some amount of time, they would prefer to have liquid capital over no capital.

Not taking any side in this debate, but that makes some economic sense to me.
EVE looks like how I imagine TradeWars 2002, and considering the countless hours I've sunk into that game, I'm going to stay _VERY_ far away from EVE. (So shiny!)
Scrawling the last three digits of the serial number onto the drive end with a permanent marker would probably suffice.
Ehh... what's this "we" stuff? I think the way a lot of people look at technical debt is correct, not taken from the perspective the author seems to have where debt is always bad, but rather taken from the perspective that the term "debt" is meant to convey.

Financial debt (contrary to the implied sense I get from reading this article) isn't always a negative -- business loans and even VC capital are forms of debt without which many companies wouldn't be able to exist, mortgage debt is debt without which very few people would be able to buy a home. These are useful tools. Likewise, accruing technical debt is often just part of the process of writing software, especially when "bootstrapping" new projects. In moderation, it isn't bad at all, but like financial debt, you do have to manage it, see it as a risk factor and not let it spiral out of control or else it will become very destructive.
Text-First Services – How to take advantage of SMS as a channel
Bitcoin Regulation: How Not to Blockade Innovation
What's the criteria for a process to be considered "working?"

Fundamentally, since the inception of software, many people have thought that it's complex enough that we need "processes" to manage its delivery. Sort of like we have for manufacturing. Those processes often slow things down, make it difficult to add new features quickly, etc.. Their goal is to give the customer what they expect and have it work though. Agile pretty much says "fuck process, it's not fun" and that's it's whole philosophy. If you've got some really solid and dedicated heroes then you might ship some software that's great and make some money, if you've got some weak links on the team then you might not.

My heuristic has been that when the problem domain is large enough that it's acceptable for members of the team to not have it all in their head, agile starts to have issues. I've also noticed that if you're a "hard problem solver" kind of person, it's less fun.

It does seem like it has success in some domains and such, I'm not sure that it's entirely agile though. The one failing point I can clearly point to with agile is that it appears to be very very difficult to actually, successfully implement, there are so many unhappy people with it.
I think that is the real innovation of the "api businesses" like airbnb and uber. of course, there is politics and unions and taxes (oh my!), so it gets muddied.
> I think that's the problem - there's no effective mechanism to penalize a short-term tenant for excessive noise, parking violations, smoking on premises, etc.

Sure there is: make the property owner ultimately responsible, if they're not already. Then watch how fast they actively seek out solutions that pass on more liability to the tenant.

> Faced with lack of efficient mechanisms, HOAs or city councils after hearing a few horror stories just throw the baby with the bathwater by outlawing all short-term stays, even if 99% of short-term stays are quiet decent non-confrontational tenants.

Yeah, most regulation seems to be reactionary in response to a small fraction of high-profile incidents. "How do we not make the news? How do we not get blamed?"

See also airport security.
wat could it be?? i cant even guess
You can send a hidden version of your email just for Apple Watch
This discussion really reminds me of Rosencrantz and Guildenstern are Dead, which has the best view of death I've ever encountered. A specific line stands out:

> No, no, no… Death is… not. Death isn't. You take my meaning. Death is the ultimate negative. Not-being.

Well, perhaps it works better in context, but it's just such a succinct summary. "Death isn't."

An even more pertinent part involves some actors talking about death on the stage. Acted death is nothing like actual death—it's far more believable. Death on the stage feels pretty similar to death in a game.

> GUIL (fear, derision): Actors! The mechanics of cheap melodrama! That isn't death!

(More quietly.) You scream and choke and sink to your knees, but it doesn't bring death home to anyone-it doesn't catch them unawares and start the whisper in their skulls that says-"One day you are going to die."

(He straightens up.) You die so many times; how can you expect them to believe in your death?

PLAYER: On the contrary, it's the only kind they do believe. They're conditioned to it.

The whole play is worth reading about death, but that passage, and the part that follows, stand out specifically.
Wanted: Highly skilled tech workers, $100,000-plus salary, no college required
>>But it's natural of wolves hunt their prey to extinction and as a result, starve themselves into extinction?

The problem is that we aren't starving ourselves into extinction as a result of overkilling rhinos. We're simply moving on to the next species and driving them extinct, then moving on to the next, etc.

So basically, by the time we are extinct, it may be too late.
Serious question: why add a "service charge" instead of just adjusting the price of dishes accordingly?
> If you own a home no one should be allowed to tell you who you can and cannot have over to your house and what type of home business you operate.

So your issue is with zoning laws. So, if you buy a building in a zone that allows you to run an AirBnB-type business, would you be okay with the zone changing after you've made your purchase? Because your asking the residents of these spaces to accept the opposite.
Yeap i see now. Sorry for posting late.
That choice was actually motivated for other reasons rather than just the modal workflow. The biggest of which was that (at the time) I found I had to really struggle to get Emacs and its ecosystem to play nicely with a highly project-centric workflow. I had used old vi regularly starting decades ago, and thus had basic usage burned in. E.g. I never understood these seemingly lame "minimal system editors" that some distros use vs. the old sysadmin standard of a minimal vi implementation (vs. full vim, emacs, etc.)

But it was becoming clear that something else was going on with modern vim, so after testing the waters a bit for my needs, I decided to go all-in as much as an ecosystem research project as anything else.
are we allowed to even debate this? Didn't HN pass a no negativity (http://blog.ycombinator.com/new-hacker-news-guideline) policy?

By the way, I completely agree with you. I actually live in Los Angeles county, and there NEEDS to be regulations regarding housing. This city is so crowded and congested.

For the record, I'm not against Airbnb, but city are zoned and regulated for a good reason. Airbnb needs to work it out with cities on how to allow their business to operate.
I was confused by the title for a second, thought he meant to keep your cooking tips to yourself. But I really do have a great zoodles recipe!
You're describing this:

http://www.halfarsedagilemanifesto.org/
One of our customers noticed that Apple were sending a special mime type that the Watch would pick as the default when rendering an email.
> Seriously, I've seen "average story points per developer per sprint" reported to 2 decimal places as if it's a meaningful number.

Ok, explain this to me. Why is this not a meaningful number?

Story points are essentially hours and generally in the shops I worked in, they are converted to hours. If something takes longer, the hours are adjusted.

So really, that's a metric for maximum hours worked ... why is that not a good metric?

If someone is on a remote team and they're expected to work 40 hours a week, why is measuring the maximum hours they were on the job a bad metric?
>"have someone really good in charge."

Pretty much. The person you describes sounds like someone who is willing to learn/improve/grow and not be confined by occupational labels. This leadership trait coupled with self-motivation is always a boon to a team, regardless of the project management style.
New PMs are like children, they tend to only learn the fire is hot by actually getting burnt.

Instead of digging my heels in on not giving such PMs everything they want, I try to offer alternatives and put the choice on them: they can have this feature today and in 6 months we grind to a halt because we can't fit in anything new, or we slow down just half a beat and do it right the first time. "Up to you, buddy," I say.

It happens with jr. devs, too. They want to use a singleton to solve a problem, or they want to forgo using any sort of referential constraints in their schemas.

Of course, the PMs and jr. devs always choose the shortcuts. I help them both pick up the pieces afterwards, but I never work overtime for it. The point is to make it clear that nobody other than themselves is responsible for their own mistakes. They led us into the mess, they can lead us out.

After that, everyone seems to get along a lot better and everyone seems super keen on having discussions about the "right" way to do things and how to fit things into the current state of the project correctly.
Down solves a problem that I don't think any social network has solved yet: making it simple to connect with friends in the real world. One of our friends called Down a "true" social app.

@andrewlinfoot put it really well - "We created Down because we want to make getting together with your friends as easy as checking Facebook. We find all of our best memories come from hanging out with our friends in real life, not sitting around scrolling through feeds on our phones. We think existing social apps are great, but they focus too much on replacing our lives with digital equivalents, and don’t do enough to encourage actually getting together with friends."
Here's another example of civil forfeiture: https://mises.org/blog/war-cash-destroys-small-entrepreneur
That's the siesta schedule, I think. It's pretty successful, but when I try it, I get a lot of pushback from my family about being available right after work...
We're a secure zero-knowledge encrypted email service, focused on privacy and great UI/UX.
Ask HN: Do you keep a “portables” thumbdrive?
I keep a thumb drive on my keychain. It contains many portable-version Windows programs in the event I need to use them on a computer that isn't mine, since I cannot assume installation privileges.

On it I have the following 'useful' programs:

7Zip, Firefox, Foobar2000, Hexchat, MPC-HC, Skype, TeamViewer, HashCalc, and Sharex

Included are also some niche, less practical programs 'just in case'. CCleaner, a Duplicate Photo Finder (called Awesome Photo Finder), Audacity, GifCam.

I also have a contact.txt file with an email address and my first name in the event I lose the thumb drive and a kind soul wishes to return it.

I'm curious of other people on HN carry around such a thumb drive - and what they have on it. It's always nice to be prepared, and maybe there is something that I may find myself needing that I hadn't thought about. :)

Quick note, I feel like there might be a lot of portable Linux installations and Tails thumb drives.
Yeah, it seems as if the exact same thing could have happened in the case of a fully-licensed B&B. And I'm not sure I'd have acted differently as the owner. If you have special requirements whether it's allergies or access, it's sort of on you to ask. In my experience, cats and dogs are not at all uncommon in B&Bs and other non-traditional-hotel housing.
That little wordpress blog can't handle headline HN's traffic. Apache just doesn't cut it anymore these days.
Ask HN: What can I buy for my fiancé's fussy father-in-law's birthday
More specifically, does anyone know of any cool Kickstarter-type products that would be ideal for an older man of around 65 who's interested in the market, economics and lives in Australia?
Google Comms and Policy Head Whetstone Joins Uber
It often is. Most web apps are business applications, doing CRUD - form filling, and if you were around before AJAX, you'll know that we were building these back then just fine. I'm not saying we can't do better now, but that PE will get you to a better experience than graceful degredation.

Sometimes you need additional functionality, maybe a realtime graph of share prices that has to be JS. So progressively enhance just that component, or gracefully degrade if you have to (e.g. put a sign up saying "switch on JS to get this specific functionality") but don't use it as an excuse to turn everyone away. It might be that you will reach people who can live without the stock ticker.

Sometimes you just can't do without JS. I wrote a desktop publishing app on the browser once. Obviously I wrote it in JS - users were forced to use a modern standards compliant browser (this was an internal app) - but if I'm doing an ecommerce site, or really any public site, I'm always challenging the devs who want to "build it in angular" to reconsider that option before ploughing ahead.
Here's another example of how dreadful civil forfeiture is:

https://mises.org/blog/war-cash-destroys-small-entrepreneur
I worked at CCP and was on the same team as t20 for a while. He definitely wasn't the reason BoB succeeded for as long as they did.

In random point, I (while a dev) was a member of ASCN. I was there the day Steve was unveiled and the day it died in C9N-CC. We lost to BoB "fairly" (everybody suffered from the state of the servers in those days, so maybe it was "CCP won"). There was some bad blood, of course; I'm still a little bitter about Steve's death. But the cookies crumbled and that was that.

Ultimately: I don't think t20's actions contributed substantially either way to BoB's ascendancy. Organization, good play, and a willingness to use all avenues (within the game) turned out to be pretty successful.

(Also... no longer employed by CCP, but still play EVE. 12 years later... still the best game I've ever touched.)
I believe the Qt WebEngine uses the unstable Chromium Content API directly. So it would have to be rewritten on top of a stable API, like CEF, first.
Four Remote Packet-Of-Death Vulnerabilities Found in Linux Driver
Yes. When I lived in an apartment building, I wouldn't have cared if one of my neighbors occasionally rented out their spare bedroom to a friend of a friend. But when half of the units in the building are renting out rooms, and some of them are 100% dedicated to short-term rentals, it gets to be too much. In other words, ruining it for everyone...
Ha, it sounded familiar. I don't always agree with Michael but he's a great dude.
I used to be a cook in a former life. I think I was making something near that in the 90s (maybe $13.50, definitely > $11). I suspect he's being dicked.

The waitrons we're bringing home upwards of $200 cash nightly, which inspired my career change.
Neat site!

Bug report:
Broken link from the "Tools" sidebar links to this page
http://makerbook.net/?page_id=292
Indeed, check here : http://calle.dybedahl.se/dns.html
More irony: the author is attempting to proliferate the meme that "memes are a myth" - presumably to defend some sacred belief system that memetic analysis undermines.
Unless you have infinite amount of time, you shouldn't refactor code you didn't need to touch in the first place.

When you have a large enough codebase, you will always find bad code if you look long enough, it's pointless to waste time on that. You should only refactor code that you needed to touch in the first place.
Facebook Starts Hosting Publishers’ “Instant Articles”
Psychology. If you adjust the prices, people will maybe perceive the dishes as being too expensive. However, if you keep the prices low and add a "hidden" (as in people need to calculate themselves before ordering) service charge, as soon as the service charge is accepted in general, you'll be profiting more off it than otherwise.
They have succumbed to the taxation/licensing pressure in pretty much any market they've been challenged

http://www.sfgate.com/news/article/Airbnb-to-collect-hotel-t...

http://nypost.com/2014/04/14/airbnb-aims-to-start-taxing-ren...

> When regulation attacks p2p markets, they don't die, they adapt.

I think we've seen that iteration with craigslist -> apts/housing -> short-term/sub-lease, and in many popular destinations the space was prone to scams and shady dealers.
Make people nervous.
In my experience, Scrum's work-unit factorization encourages thinking of developers as spherical cows that need no personal development, with slack as a concession to reality that patches the damage Scrum itself causes. And Slack is generally considered to be for technical investment, though, not personal investment.

A good manager could think past that, for sure, but I've never encountered a good manager that felt Scrum was good or necessary for their teams.
You may also want to consider cbor: http://tools.ietf.org/html/rfc7049 It doesn't require canonicalization, but it has a suggested format for canonicalization, and libraries I've been using have made it reasonably possible to force field ordering.

Though this may be something of a tangent, since as kentonv says, canonicalization is only part of the dance; it all depends on what other actors do as well. :)
While for support packages you might be looking at multiple options, Linux distributions generally come in the Awesome edition only.
Looks the same as in Clojure's lazy-seq documentation https://clojuredocs.org/clojure.core/lazy-seq
Why is "build more" not a solution for this problem?
It would certainly make for some curious history. I guess this was tongue in cheek?

EDIT: for those wanting context, WebKit started its life as fork of the KDE project's KHTML, and has gone on to supplant it. Having KDE ditch WebKit for Servo (no doubt with Safari and Chromium still using WebKit-based renderers) would be an strange state of affairs.
While I agree with you on time vs. shortcuts, I do think it's a question of valuing explicit time vs. opportunity cost that's a depper issue here.

My opinion is that whether it's programming or general white-collar work, most cases of doing it "the right way" vs. "the dirty way" tend to be about investing the "certainty" of lost time immediately for the "promise" of savings.

For some things, the tradeoff is pretty decent (taking time to improve core knowledge or relevant skills that are related to goals).

But for a quickly growing company, how many situations are there where a "hack it out" fix that costs time in the long run is a net win in opportunity cost and hence long-term value?

If a shortcut that will cause you headaches in 9-18 months also allows you to add critical features at an accelerated pace for the next 6 months, is it:
(1) inefficient because you net lose man-hours or
(2) efficient
(a) maximizes your near-term growth trajectory,
(b) thereby increasing potential access to resources and hence long-term growth

To be clear, I do agree with your statements about shortcuts usually not saving time especially when you deal with teams/setting standards.

My point is more that while time saved/lost is easier to mentally calculate, it alone is not really what's driving value in many situations.

There's also the inherent problem of using qualitative terms that mean different things to different people.

But hey, that's part of the fun on the internet.
Did Secretary of the Navy just revolutionize the sea service?
The problem is that those things that actually affect neighbors are mostly things that have to be remediated after the fact assuming that they can be--and, perhaps, on multiple occasions. So it's not unreasonable to put in place pre-emptive rules that reduce the chance of those things happening in the first place.