skysight-inc/HackerNews huggingface dataset:
You can build a complex application with zero configuration if you follow this tutorial: http://yoember.com
G+ UI was bad for mainstream adopters.
1. The Programming Language is factor in how well ORMs integrate into your app. If you're using a language which is expressive enough or has native support for querying, ORMs are an excellent fit. An example of a language in which ORMs work well is C#, on account of LINQ. But if you're on Java, it isn't as appealing. Hibernate still has value and is a very mature solution, but is nothing close to the expressiveness you get in LINQ.

2. Performance is good enough, but with caveats. Some ORMs (especially newer ones) don't handle entity relationships very well, and sometimes do 1+N queries to fetch a single object. For eg, if you have a customer with an orders property, a naive ORM might SELECT the customer first, and issue separate SELECTs for loading each of the Orders. Entity Framework had this problem earlier, which they resolved later.

3. Always watch the actual queries with a database tool.

4. Be careful about Lazy Loading. Lazy loading defers the actual load until you use it. If the code always uses a property (that needs to be loaded from the DB), always eager load. eg: if you have 100 customers, and you usually need customer.creditCard, eager load "creditCard" (resulting in a join) to avoid 1+100 queries.

5. You probably don't need an ORM with NoSQL.

6. Inheritance relationships can be tricky, and have performance consequences. You can choose to have a (1) Table for the entire class hierarchy, or (2) a table for each Class. With (1), you get an ugly wide table with lots of fields and faster performance. With (2), if you were to select a list of Animals, and have Cat, Dog, Rabbit tables, you'll get cleaner tables - but poor performance because of joins. Add: generally avoid mapping inheritance via ORMs.

7. Built-in caching, which you can find in some ORMs is probably not worth it.

8. ORMs need not replace 100% of your queries. Some functionality will work better with SQL or even Stored Procedures - let it be.

9. ORMs let you compose queries. I'll not go into details, but you could compose getCustomersByCountry() and getCustomersByAgeGroup() to get getCustomersByCountry_and_Age().

10. Depending on the size of your project, see if patterns like Repository make sense (even if you're using ORMs).

11. Last, the most important detail. It is not actually about saving lines of code - as much as it is about the ability to refactor. The biggest win from ORMs (in a statically typed language) is that if you edit a property, it changes the property across all files including your queries. Without an ORM, the code degrades quicker - because developers are reluctant to change.
What problem is #34 "You can safely name your first column "ID"" referring to?
They know more about what happens at the protein level, and they can fix it by adding compounds that fix the errant protein
> don't map neatly onto mathematically-sound hierarchies.

I think they do, but finding the right mathematical model is very difficult. If it were easy, everyone would be a mathematics PhD.

Learning to program is becoming efficient at recognizing the right spherical cow in any given situation, because such shortcuts are essential to getting shit done.
Setting smart objectives and why everyone should be tracking results
2.X would still be included as an optional package, correct? I couldn’t determine that from the link, but it seems like RedHat’s practice. Or, they could install it from source.

If so, 2.X users still have two years or so to migrate. That’s plenty of time in my opinion, even when all of your code is 2.X. There’s even a library for it.[1]

[1] https://docs.python.org/2/library/2to3.html
Using = for equality checking in SQL doesn't help with the occasional mistakes...
Django never had support for python < 3.3 and numpy and scipy only supported python 3.2 and up. The story is similar for most other packages. So if you where using python with any of its major libraries then python 3 was pretty much useless for you the first 3-4 years.
>Very few people ever read "Terms & Conditions" and that's a problem.

Many people seem to be blaming this on the individuals for not reading it, but I would argue that the problem here is a legal system that allows this kind of dark pattern to be considered consent.
Not a standard _per se_ [0] but goes to show that some level of effort has been applied to CSV standardization.

[0]: https://tools.ietf.org/html/rfc4180
Don't they already offer support for international customers, At Least in regions they already have a presence? Also a download doesn't have to be region locked.

> I still believe that updating your car using a USB stick is too complex for average consumer.

After the Jeep Hack Chrysler offered the update via a mailed out USB stick, A download for self update or allow a dealership mechanic to do it for you.

If an update just needs an USB insert to apply and if you can't prep it yourself, can't get a friend/family member/work colleague to assist, not have the ability to download it via wifi than a trip to a dealership or a local mechanic to do it for you can't really be out of the question.

As the OP post was about map updates, if the car is no longer in a region the company has a presence I wouldn't find it unreasonable if the company charge for the cost of the stick and postage. A "recall update" such like with the jeep issue I would expect the company to foot the bill of the extra postage (as they would be on the hook for the cost of shipping out the stick from and to the original country of purchase anyway).
Hardly. The promise is still there, but there are barriers in place to get there.

One of the most useful aspects of the semantic web is how it enhances the search for information. Some web citizens have become conditioned to see Google as the pinnacle of what we can achieve through search, but we can do a lot better. Let's use an example to illustrate this. Imagine a presidential election was taking place and you want to understand the positions of the candidates on topics that matter to you. Let's say foreign policy was something you were interested in, including their proclivity for war. By allowing for searching on a richer set of metadata you can more easily access the information about the positions of these candidates, without the distortions of Google's page rank algorithms. Think of it like treating the information of the web as a database you can query more directly. That's the main promise of the semantic web.
I usually reach for SQLite if CSV is creaking under the strain and it's a part of the pipe I control on both ends. I've heard good things about HDF5 for big flat tables, but only when I was in grad school. I haven't tried it.
> Your games don't work in windows XP anymore.

In fact I can play EarthSiege 2, a game from the 3.11/Win95 era, just fine on Win7 x64 with the only things not working being joystick input (I guess it does some shenanigans with the MIDI/joystick port in addition to using the windows joystick API) and the pause screen which shows your vehicle spinning around spins too fast (probably because its speed is tethered to CPU sppeed).

Microsoft takes, with the exception of drivers, a lot of effort to keep backwards compatibility. And that is why people like it, in contrast to Linux where "Things break" is the norm and even in OS X it's not unheard of. Oh, and also why big enterprises stay as far away as humanly possible from anything NodeJS or more modern than PHP and Java.

Enterprises want and need stability first.
Fine, then call it "falsehoods programmers believe about people who try to create CSV files".
Vault secrets versioning, Enterprise UI open sourced, root DB creds rotation, Azure Auth method and GCP secrets engine and GCP cloud spanner as a storage backend, really great release!
That they probably contain commas used to separate values. Maybe.

CSV is less a format and more an article of faith.
The junhu and the art of everyday politics in medieval China
I've never used Facebook but isn't its success mostly being "at the right place at the right time"? There were social networks before it and I'm not really sure what's so unique and revolutionary about Facebook. I think the main differentiating factor over something like MySpace was the use of real names and the more "adult" interface which lined up with the complete "mainstreamification" of the internet in the 2nd half of the 2000's.

As a thought experiment do you think that in an alternative universe where Zuckerberg doesn't exist there's no social networks? People started using Orkut, MySpace and friends then around 2008 decided "nah, this is silly" then went back to ICQ and sending emails?
How to Enhance Your Security Operations Program SLAs, MTTR and ROI
But at the same time it's easier than ever to find information on nearly everything. Asking experts also is easier than ever before. I don't think it's feasible to dismiss GP's claim with yours.
Do those things start out as an Excel file? Because that was the suggestion, to avoid Excel->CSV headaches by importing Excel files directly. I don't think they meant to always use Excel for interchange.
How to Get Featured on iOS App Store
Moral compass or not, that is the current state of the law. Sending an email to a second party and then expecting them not to do whatever they want with it is as naive as hanging a billboard and expecting nobody to look at it when I don't want them to.

The world doesn't just give you privacy. If you want any, you have to work at least a little bit for it.
many points can be summarized as: “CSV is CSV”. What about instead writing summary how to write properly CSV which is usable in all or at least most cases? Like best encoding, proper separation, headers, delimiters and escaping all the special chars.
I’ve been through a few “intro to react” courses like this now, and I have not come across a single one that talks about testing at any length, which seems insane to me. When I was learning Rails many years ago, test-driven development was all the rage.

React, with it’s declarative approach, stateless components, immutable state, etc. seems purpose-built for testability. TDD with React should be ridiculously easy, but I wouldn’t know, because no one seems to want to talk about it.
I'd like to see Snow Crash!

edit: Apparently Amazon is making Snow Crash: https://www.avclub.com/amazon-is-making-a-snow-crash-tv-show...
Here's a video and HN thread that covers most of the current problems with removing the GIL:

https://news.ycombinator.com/item?id=11842779
Well, you can create a zip full of nulls, that doesn't make it a zip.

You can't deal with all the configuration of all the atoms in the universe, you need to draw a line.

If something just can't be reasonably parsed, it's fair to reject it as invalid CSV.
Dashed-Lang – A Weird Language Full of Dashes and Other Characters
Dashed is a language which gets compiled to JavaScript. In this language, all characters are allowed except characters A-Z a-z.

It is written in JavaScript ( Node.js ). When you run the run dashed-lang CLI App and tell it to compile a file that file gets compiled and a file with the same name is generated but with a .js extension.

The name of this language was kept Dashed because in this all alphabetical characters are written using dashes. For Example 'A' is written as [=-|] and 'a' as =-|.

The simple "Hello World!" code can be written as follows in dash-lang.

<<("(=--------|)=-----|=------------|=------------|=---------------| (=-----------------------|)=---------------|=------------------|=------------|=----|");

This will turn into console.log("Hello World") after running the compiler.

Useful Links:-
Github repo - https://github.com/ShardulNalegave/dashed
NPM Package - https://npmjs.com/package/dashed-lang
An Excel bug:

https://news.ycombinator.com/item?id=12041210
But even the modern grocery store is soulless, compared to what preceded it. In my typical trip, I talk with no one.
How would bishops not qualify as experts? To be sure I have no interest in the thing they're experts in, but I could say the same for performance art or make-up and presumably there are experts in those fields too.

You can't inherit any of the seats any more, you can inherit a title that means the other Lords could pick you for their chamber without anybody else sending you, this was supposed to be temporary but no other mechanism has ever been approved to replace it. But nobody automatically gets a seat, either they were sent there or they were chosen by the others.
2017 UtahJS Pay, Education, Job-Title Survey
What do you think that definition is? I've never seen a single, authoritative, technical definition of the term, nor anyone with the authority to write one.
Dashed-Lang – A Weird Language Full of Dashes and Other Characters
OK, the part about not using ORM if you know SQL is a bit of an exaggeration. At least when you know SQL you know when to use an ORM and when to not use it. If all you know is ORM then you will always use it, and ORM seems to lead to many developers not learning SQL
Haha fair point... recording a Netflix stream from the EME applet is quite a bit different to simply clicking on a link to visit a url though isn't it, in the same way that breaking into a bank vault is a bit different to finding a £1 coin on on the floor.
Scrum, Kanban and all things in between
How do you make someone liable for returning privacy?
Written in ruby, difficult to install. Have a look at the install requirements.

Like all ruby apps you need a full build environment and tons of dependencies, and if by chance a specific gem fails to compile you are toast in dependency hell.

Given the goal of the project an easier to install and use stack would have helped them.
As for the grandma analogy, you indeed did consent
to your data being shared

I didn't do the quiz, though - so I didn't get the "Allow Access?" prompt [1] where I consented to share my data with the quiz company.

Is Facebook saying that consent form is irrelevant, and they're entitled to share your data with new companies without showing you that form to get your consent? If so, that seems like the kind of deliberately deceptive approach to that gets people asking for GDPR.

[1] https://jibjabbloggedyblog.files.wordpress.com/2010/06/34454...
Why is parsing JSON a minefield then? ;) http://seriot.ch/parsing_json.php
...and what about messengers?
The best if you learn and practice the following four libraries and frameworks: React, Ember.js, Angular, Vue. You will see different concepts and you gonna be a real professional frontend dev. For example, you can create a simple interface or widget with React, but if you have to develop a complex big web application, Ember or Angular is a better choice. Most of these frameworks have great support, community and matured. Learning Ember is so easy as React: http://yoember.com
That hypothetical unborn child might just as well keep some other person from making that one magical discovery. Anyways, the heroic model of progress is flawed.
We've switched from 2.7 to 3.4 (and upwards to 3.5, 3.6) in about a month or so. It delayed some deployments but nothing serious.

If you do it step-by-step it's not that hard. The worst part was str/binary conversions but afterwards everything was a lot easier and better to maintain.

If your company is big enough you should maintain and keep it up-to-date, not "it just works"(TM) and hope for the best after 10 years. The death of 2.7 was already in the air for years.
Difficult to answer this question when we don't know your use case.
Yeah but this has nothing to do with CSV. It's just about handling user input in general.

try standard parsing, if fail try exotic features, if fails try so common hacks around common mistake, if fails just reject it as invalid data.

We all do that all the time for everything. Form input, video upload, user click in a MMO, etc.
Garbage data has been with us since the beginning, and will always be with us. Whether its bad csv, html, xml, json, half the data integrator's job will be 'sanitizing' the data. Which means dealing with exceptions in an empirical manner.

Our first effort at absorbing Wall Street financial data satellite stream (stock trades, bond rates and all the rest) we found that every day there would be new bad data. Trades out of order; missing decimal points; badly spelled security names; clumsy attempts to 'edit in' trades after close. The world's financial data should probably have been better managed, but it was all had-generated back then (90's) and mostly viewed as a stream by brokers on a terminal screen, so the human filter could understand most of the BS. But a database, not so much.
Sure, but they're used as the decimal separator :)
Congratulations. Outside of tin, and glass, most things on that list take more energy to recycle than to just grow and/or extract from the ground. Keep that good-feel-but-otherwise-non-ecologically energy flowing.
You can install things with pip but you have to be really careful, because Conda tries to do clever things to avoid downloading multiple copies, which is what you end up with in Virtualenvs. So, if you have two environments both using the same version Jupyter version, installed with 'conda install jupyter' it will only have one copy which is symlinked into the environments.

Problem is, if you do 'pip install' in one of the environments, it will upgrade the existing version, but overwrite the conda installed one, which will break your other environment. Often though the official conda packages are lagging behind those on pip, so you have to do this anyway, or use Conda Forge which gets more regular updates or use pip (but carefully uninstalling all the conda installed stuff in the environment first) if you want the bleeding edge.
Ruby had 1.9. It was like the Python 3 situation in miniature, and Matz has said he’s keen to avoid such a mistake again.
The movie dumbed down the books complex issues we'll face with Robots to "They're going to take over the world". But at least Isaac Asimov was always promoting Dos Equis and Converse shoes in his books so they got that right...
> I wonder if you, like me, were also completely thrown when you first encountered a programming language where you didn't also have to enter line numbers...

Haha, yes, totally! For me this was AMOS on the Amiga (a Basic variant). I was so thrown I started by using them anyway as they were supported by the interpreter - it just treated them as labels.

I soon stopped though when I discovered it didn't reorder based on number, so you ended up with

10 print "world"
5 print "hello"
20 goto 5
The majority (> 80%) are life peers, appointed in theory for being distinguished in their field. So yes, many experts among them. For example: https://www.parliament.uk/biographies/lords/lord-winston/177...
Firefox multi-containers (general):
https://addons.mozilla.org/en-US/firefox/addon/multi-account...

Facebook container:
https://addons.mozilla.org/en-GB/firefox/addon/facebook-cont...
I disagree with some of your comments, is git stash really essential or unneeded complexity? That's debatable, I never use it personally.

What I don't like in git is the loss of history associated with squashing commits, I would prefer having a 'summary' that would keep the full history but by default would ne used like a single commit.
But....

* Do you accept trailing commas?

* Do you accept multiline comments?

* Do you accept single line comments?

* Do you accept literal newlines in strings?

* Do you accept single quotes in place of double quotes?

* Do you accept integers over 8 bytes?

* Do you autodetect Unicode encoding?

* Do you accept numbers with leading zeros?

* Do you accept numbers with a leading plus sign?

* Do you accept NaN?

* Do you accept non-quoted object keys?

* Do you accept duplicate object keys?

In other words,

> A JSON parser MAY accept non-JSON forms or extensions.

https://tools.ietf.org/html/rfc7159
It was the sort of largely academic tops-down exercise to organizing information that has mostly lost out time and time again to more organic bottoms-up/self-organizing approaches. Think Yahoo vs. Google. [ADDED: i.e. manually populating hierarchies vs. search, in case that wasn't clear] I remember when it was going to be Web 3.0. Tim Berners-Lee gave a talk about it when he won the Draper prize.

As others have said, classification is difficult under the best of circumstances. And it just doesn't fit with the way the Internet has evolved. We have Wikipedia, not the Encyclopedia Galactica.
> In fact the first falsehood programmers believe about CSVs is that it's a good serialisation, interchange (between separate systems) or human-edition format.

I would argue that most programmers realize CSV sucks and would rather use something structured and sane. In my experience CSV support almost always comes about because someone from another business unit (e.g., marketing) needs self-service import facilities. Those folks live in Excel and CSV becomes the de facto import format.
It will; chemistry is complicated. But you won't have Alzheimer's. So life is tough choices, but lacking any clear downside its a chance lots of us would take.
English courts don't like to give specific technical meanings to words. They prefer to use the everyday meaning as understood by the reasonable person.

I understand this is perhaps a cultural difference to the US.
I am skeptical of people who make such statements. If he deeply regrets it, what exactly would he expect his children would do to improve his life? It's not the children's job to save the parents from their emotional loneliness and give their life meaning. Children grow up and are their own people. If he deeply regrets how his life turned out, he would probably be unhappy even if he had children, or worse inappropriately demanding, placing his needs on the children.
In case anyone wonders why tuple unpacking was removed:

https://www.python.org/dev/peps/pep-3113/#why-they-should-go
Because in the public if you mentioned the possibility you'd be accused of fearmongering.

It is disheartening to see people label it clickbait, this is a very important message that needs to be embedded in the public.
Non-English locale software often use semicolumns (since the comma is usually the decimal separator). (Falsehood 27 - 29)
I got bitten by ORMs in my current toy project, https://github.com/voltagex/YAMS. For the life of me, I couldn't get Dapper to join correctly. Now I'm running into trouble keeping the POCOs and SQL in sync. I may try to use some kind of code generation based on schema - I think there's a middle ground.
I have wondered for a long time why Facebook employees were even around. It's not like the Cambridge Analytica scandal was the first time an ethically problematic issue had happened because of the way Facebook was designed to work. The people working on the platform created all these issues in some way or another (due to not understanding the implications or management direction).

My guess is that employees of Facebook mostly stay for the money, with a second reason being for some kind of exposure on working on things on "planet scale". I find it difficult to understand anyone being fine with Facebook's ethics all these years and then changing their minds now. It is quite weird.

Facebook is a soulless company. If you're a Facebook employee and haven't understood that yet, I cannot even sympathize with you (while being frustrated and worried about the implications for billions of humans).