skysight-inc/HackerNews huggingface dataset:
It depends a lot on the project. I think learning SQL and basic database theory are a strict requirement. ORMs are a great tools to help make life easier, but you'll need to reach in sometimes in order to fix performance bugs. I've learned to love both.

ActiveRecord is amazing. It makes it really easy to get stuff up and running, and it works for a wide range of problems. There's nothing better for typical CRUD operations, especially when you models map mostly 1-to-1 to your tables. You start to encounter problems later on as the application grows, especially when you have lots of associations, complicated queries, or your models grow too fat.

Maybe your problem isn't really with ORMs, but with MVC or whatever application architecture you're using. For example, Rails has been criticized because of its fat models and its overall "flavor" of MVC.

Trailblazer [0] was created by a Rails critic as an alternative approach for structuring your web application. I won't go into the details, since the website already does a good job explaining. But he effectively kills the traditional model and shifts the persistence layer around, which is a fairly common pattern.

I remember reading book that discussed ASP.NET's approach to MVC. I don't quite remember all the details, but it mostly amounted to having four primary layers (presentation, application, domain, infrastructure) which were further divided and given specific responsibilities. This approach is overly verbose and complicated for some cases, but the abstractions appear to make more sense as the application increases in complexity. A small example is an application in which you have to break up a model's data between multiple storage services like Redis and the RDBMS.

You'll probably like Ecto [1]. It's an ORM for Elixir. After the 2.0 rewrite it's a lightweight embodiment of some of the concepts mentioned above. One of the key insights is that you'll want to separate business logic from data and presentation. But it really depends on the project! It might help or it might just add more boilerplate.

[0] http://trailblazer.to

[1] https://hexdocs.pm/ecto/getting-started.html
A List of Animal Words to Use When Choosing the Perfect Domain Name
Retail Store Design Agency in Dubai
So why aren't you panicking over dangerousness of wind turbines? This is pretty bad argument.
Create Yourselves a Stylus (Touch Pen) Easy and Quick
Who is going to create such laws? The federal government? Why should they tell cities how to spend their money?
I do?
> Fundamentally, accessing the database is executing remote code; the more you can package up into the query before it goes off and does anything, the better performance you'll see

The queries that most tend to be making just aren't that sophisticated. Relationships tend to be basic.

And I haven't even mentioned stuff that'd really, really hard to express/manage in pure SQL like tree/nested information that has to stay balanced [1]. Thanks django-treebeard/mptt and sqlalchemy-orm-tree.

> The closer an ORM's API is to a monad, the happier you'll be.

Developers using ORM's simply aren't caring about ORM's matching a certain construct. They care that models emit correct representations of their schemas and that the data is retrieved "fast enough".

Take it a different way: the best part about ORM's? They're effective 95% of the time, right out the box, so you end up avoiding time that'd be spent over and prematurely optimizing.

> IMO trying to shoehorn objects (in the OO sense, with polymorphism, data hiding and behaviour) into a database is wrong-headed.

Objects in things like SQLAlchemy declarative and Django Models map perfectly to generated SQL, so they also act as a way to generate migrations. It's that accurate. A lot of the relationships project's need expressed tend to be vanilla joins.

> Data hiding in particular is a wrong mental model for thinking about facts in the database, and the more is hidden, the harder it will be to reason about performance and bulk remote operations generally.

ORM's strive to hit a value sweet-spot in terms of code expressiveness, reducing duplication, handling the bread and butter relationships and types. That covers what most developers really need.

Perhaps there are projects out there not fitting to ORM's. Not all projects are sophisticated data mart projects, but even then, a good share of those still go back to simple joins at the end of the day.

And I've even gone as far as trusting heavy-duty stuff like django-mptt, along with plugins that filter and sort. I don't even look at the queries, all I see is they're running performantly. In all these years, SQL queries have never been a bottleneck. Maybe it's because I'm only storing simple stuff.

[1] https://en.wikipedia.org/wiki/Nested_set_model
For some time, Lennart Poettering et al. has been working on improved infrastructure for... actually I don't know what to call it. It's not just containers and isolation and statelessness but also distribution and upgrades.

What's interesting here is that he's working on standard stuff, i.e. things that end up inside the various Linux distributions.

Perhaps we are going to see a future where the distributions, due to improved default tooling (and tonnes of integration blood and sweat), out of the box end up being where Docker wants to be today?

Things like Project Atomic are already a thing. But I suspect we might see a landslide once the whole Linux landscape moves in this direction, instead of just a few projects on the fringes.
> convince people with above average (local) pay and offering them a great place to work

With hardly any VC money around, you don't really have a way to pay for those.
This is a serious reach.

The item linked in the MOTD isn't an ad, it's a news story about a relatively high-profile project that turns out to have been built with Ubuntu. The story isn't written by Canonical; in fact, in the relatively long list of people thanked for their help at the end, Canonical isn't even included. It doesn't make a sales pitch, and only mentions the word "Ubuntu" one time.

The only way to interpret it as "advertising" is if you believe literally anything that mentions Ubuntu is an ad, which would be stretching the meaning of the word far beyond the breaking point.

If Canonical wants to use /etc/motd to spotlight interesting projects people are doing with Ubuntu, as a user of Ubuntu desktop & server I personally don't see a problem with that.
There are people who need to operate linux servers without great familiarity with any of them, Ubuntu just seems to have a much greater available knowledge base.

You can just basically search for "how to do x in ubuntu xx.xx" and get very helpful results, including solutions for Ubuntu desktop that are relevant to the server version.

Results may vary immensely with "how to do x in y", y being any other distro.
I also liked this deconstruction: http://code.stephenmorley.org/javascript/understanding-the-g...
If that were true we wouldn't have spent so much time, money, and effort on making programming more accessible.

No, the unfortunate truth is that making a general purpose visual language is hard and that so far text is still the best we've managed to come up with.
Pipe yourself to /dev/null.
I don't believe it's hardcoded, it's provided in the package list from the repo. eg, "apt-cache show apache2 | grep ^Supported".
That may be valid only if you're able to raise good money but the tech investing culture is quite underdeveloped here. The startup scene needs several bigger exits to make the investors greedy and curious about it and also construction/private property yields huge profits right now, so the tech startups are not the spotlight catcher.
Performance  annual day
They use a custom low power basestation. Cf :

"The prototype basestation uses an unlicensed frequency, limited to low-power transmissions. ... Real cell towers have a hundred times as much power, and would increase the range to perhaps a kilometer,"
> Even the description is elitist and pretentious.

It may or may not be elitist and pretentious (what kind of art isn't?), but that has no influence on whether it is science based or not.

> Everyone has experienced depression.

Well, this is simply not true.
leave it 3 years then
reddit can be OK, you just have to invest time into finding subreddits relevant for you and unsubscribe from the defaults.
The allowed business activities under the visa waiver program are:

* consult with business associates

* attend a scientific, educational, professional, or business convention or conference

* attend short-term training (you may not be paid by any source in the United States with the exception of expenses incidental to your stay)

* negotiate a contract

Source: https://travel.state.gov/content/visas/en/visit/visa-waiver-...

Academic conferences are explicitly allowed. This sounds more like "consult with business associates" though which should still be allowed.
I like to think that JVM, .NET languages and their tooling, and to certain extent Swift (with Playgrounds), are ways to have those things back, even if not 100% the same.
OpenWISP 2 Network topology
Making money from your competitors is a good thing. It also ensures their margin is worse than yours everything else equal.
8500 USD after taxes here :) (in Poland) I spend around $1000 per month of that.
OpenWISP 2 network topology module (built using Python and Django web-framework).
that is unacceptable, there is an entire chapter on cursor positioning, must be pretty boring without the cursor.
ViaBTC launches LTC/CNY trading
They have some summer sales where the price drops to $199/yr for the first year too.

Still, that's a sizable amount in some countries. They could offer direct discounts to students or people from these countries (but I can't find that anywhere, they seem focused on selling to academic institutions only).
But is it advertizing? I wonder if Canonical recieved money for this. I think it is just an interesting story that they linked to.
Great book. I'm reading Echopraxia now.

My shortlist of hard sci-fi authors that have really interesting ideas about extraterrestrial life: Peter Watts (above) and Greg Egan. Liu Cixin has also become popular recently, but he's not quite as hard sci-fi and also (in my opinion) not as intellectually stimulating. Still a good read though. Ted Chiang has some decent ET stuff (one of his stories was recently adapted to the film Arrival), but I like his biblical fiction and philosophical sci-fi more.
Why are so many digital nomads becoming “e-Residents” of Estonia?
That... sounds too good to be true. 11x11cm panel is basically a pocket one; hell, my S7 has surface area (one side) of ~80% of that. And 4h for charging a smartphone is a typical time.

So it sounds like not only this should be very useful according to those numbers, but would also imply that solar chargers for smartphones are not complete bullshit fake non-product I always assumed they were?
We pondered reporting this directly to GCC too so that they can implement a workaround. But despite the buzz generated by this issue in the press I believe Intel is right in saying that this bug is very unlikely to trigger.

They say it can only happen in tight loops, and although the C code is quite large, the hot path has only 17 instructions in the loop, which only sequential memory loads (since the GC is scanning the heap linearly and most ocaml values are small).

GCC actually did quite a good job here : it managed to lay down the code so that the "memory reachable" branch is the shortest one. Indeed, when scanning the major heap in a generational GC assuming that most values scanned are reachable is reasonable.

In this case, the loop condition will likely be predicted true, and the other jumps predicted false, and there is a very tight loop with no random memory load/store. I suspect those conditions are very unlikely.
Changing Visual Studio 2017 private registry settings
Isn't this close to how computer proccessors are sold?

I never checked this, but I always thought that slower CPUs are just CPUs with some 'production faults' in it. Basically, the manufacturer always tried to make 300mhz CPUs, but sometimes they didn't reach that speed so they sold them as 233mhz, 166mhz.

Now I was under the impression that most people didn't know this, so most people were buying CPUs which were just designed to be slow, but in fact they were accidentally slower.

This is exactly your car example, and there is nothing unethical about it -- either way.
TL;DR : edit /etc/default/motd-news and change ENABLED to 0
Even at the 50k/year contract (and you can get much more), you'll afford a mortgage on a big house, will afford eating out daily etc. You'll be way above average most people in Europe and probably in the US as well.
I really don't think those github lists lists are the right format. You want something were people can endorse some recommendations over others, maybe post comments etc...

Here all the curation work falls back on the "maintainer", who has to decide where to draw the line when accepting or rejecting pull requests.

If the maintainer/editor is very strict and reviews each PR thoroughly then the format is no different from any blog post where the author accepts feedback and recommendations through comments or email.

If the maintainer/editor accepts most PRs with little review the list quickly becomes overcrowded and generally useless since it's not possible for the community at large to correct it.

I guess one could easily design a website where you let users create resource lists based on certain topics and you let the community at large contribute recommendations and vote on them. You could even make money out of it by using affiliate links. I don't know if something like that exists already.
Ravens as well.
I swear some sites just want mobile responsive design to die so they can load their malware laden apps onto my phone.
This iPhone Designer Says No More Screens
Mental Cheats for Faster Development
Nonsense. You’ll make plenty of money by actually building something people will pay for. You know, a product can actually make money without raising VC?
VRotica: Why a VR headset just for porn is a super business idea
I think you will find that Clojure offers many of things that you like about Racket or CL, while also getting rid of a lot of the complexity of CL (CL is not really a functional language, and hardly can be considered an immutable one).

Clojurescript, which is nearly identical semantics to Clojure, also is quite a practical skill for front-end development.
Defaults no longer exist. (Hooray!)
And updates are ideally pulled from a local cache so that only one server in the DMZ needs to connect to Ubuntu's server.

It's disappointing that in 2017 no Linux vendor ships with a default-denial Internet firewall configuration but I suppose stories like this explain why.
Board games too?

https://www.boardgamegeek.com/geeklist/206920/favourite-accu...
Without making this sound ridiculous -- sometimes it just doesn't make sense to do tech. If I can make crazy returns investing and/or building property, you should probably be doing property and not tech. EE is probably a good place to be in terms of property investing at the moment.

But there's probably a place for both.
I could say the same about HN...
Cross-language artefact and dependency management. Tell us more about the tool.
Have you played DQ? Where's the science behind it? If that counts as a science-based game then you might as well throw in Call of Duty so that people can "experience" the horrors of war or Darkest Dungeon so players can learn about PTSD.
The Clojure job market
While there are certainly ups and downs to both, I'd much rather have to deal with the downs of multirepo myself.
Two observations:

1. This sounds very useful both as a backup capacity to make calls when your battery died; a smartphone could run in a restricted, super-power-saving mode off that. Could be handy in cities, where there's lots of RF background.

2. Energy that can be harvested this way from human-made RF is energy wasted. I expect less and less of such background RF to be enabled as time goes on and people figure out more tricks to do hyper advanced magic with beamforming.
As person who added it to the list, I maintain that it has a place here. (And yes, I know it is controversional. And yes, I have had depressive episodes. And I had been leaving with a close person with depression for a prolonged time.)

Description may be not ideal - so feel free to propose a different one (via PR).

> Everyone has experienced depression.

Not everyone. And people who have never had it go into annoying and counterproductive 'get over it' as they really think that it is about typical sadness, laziness or (very temporary) low mood. Or that people suffering are just too dumb to realize that some activities may help them.

And I found this game useful in explaining depression to such people. Especially as:

- very often one is well aware of beneficial steps, yet having no energy/will/hope to do them (captured wonderfully in this game!),

- that even positive things (committed relationship, social gathering etc) are at best small steps, they aren't enough just to "cheer someone up".

For a better resource (but not a game), I send: http://hyperboleandahalf.blogspot.com/2013/05/depression-par....

EDIT: That said, I don't mean that Depression Game is a good game for everyone.

EDIT2: IT is here are its mechanics is mechanics of depression (psychology).
Understandability should be the No1 feature of code. Basically interacting with code should be as smooth as possible. Spending cognitive effort to parse all those != -1 and unless select() takes its toll.

I'm not saying knowing one more function is cheap. And I agree Ruby has interesting constructs, but I think plus one function/method is a lot cheaper than to mentally parse all those inheritance/monkey-patching rules.

The same goes for `new` in JavaScript. It does something, but it uses functions, and don't forget .prototype (and so on), and that was hard to grok, so now we have classes too, but that's not just syntactic sugar. But JS is/was a pretty bad language at the start, so something must "had to be done".

And that's why it's important to consider new features, language complexity and so on while considering the particular language's warts. Just adding classes because classes are cool is foolish, but adding classes to bring some sanity to JS is fine.

Of course, there's also subjective priorities. But even ASM has too many opcodes, but at least the syntax is dead simple, but you lack cross-platform-ness, so there's C, which seems simple and low level, but it comes with a tome of undefined behavior and requires hand-rolling everything, hence higher level languages, that are hard to get right. And computer languages evolved a lot, as computing and programming itself did, a-a-and the big old languages C++/Java (and JS too) tried to handle this change, and that's how we got here. (Think of the Java Modules [JSR-376] process, how it was an uphill battle from the first minute, how it is at the same time too simple to replace OSGi [for example, because it lacks lifecycle management - which was never a stated goal, but sshhh], but too much to introduce without breaking changes [which is actually not true, because "automatic modules" sort of deals with legacy JAR files, but sssh again], and it has almost nothing to do with the language itself, it's just an ecosystem thing. But people are afraid of change, usually understandably. Compared to that TC39 is pretty nice.)
Here is an example for you:

(function(h,o,t,j,a,r){
h.hj=h.hj||function(){(h.hj.q=h.hj.q||[]).push(arguments)};
h._hjSettings={hjid:1,hjsv:5};
a=o.getElementsByTagName('head')[0];
r=o.createElement('script');r.async=1;
r.src=t+h._hjSettings.hjid+j+h._hjSettings.hjsv;
a.appendChild(r);
})(window,document,'//static.hotjar.com/c/hotjar-','.js?sv=');

https://docs.hotjar.com/v1.0/docs/understanding-the-tracking...

I believe that Google set a trend, 'HotJar' is a newbie on the block. If anyone can find an example that predates 'urchin.js' (or wherever this started) please share!
Atlassian raising prices on Confluence and Jira up to 100%
The fee is designed to offset the real cost of (1) a person making an informed decision about what reviewers to send the manuscript to and (b) the real cost of a reviewer spending 3-4 hours on the manuscript. That ought to be an upfront cost and the results posted publicly.
I agree, but then you have to bootstrap with your savings, which means you definitely won't be paying above average wages and renting nice offices etc (which is what I was replying to).
I just hope HN will have an official app in the near future.
Kids debit card startup Greenlight adds Fiserv and WorldPay veteran Nancy Fox as
I actually can't believe no one came out with this yet. I mean, there are already MMORPGs for exactly that (with USB gadgets and everything), they just have to take a leap to VR. There's money for this.
I'm still using Linq-to-SQL in the .net world. For 99% of what I need it to do, it works golden. Once in a while I've got to go in and profile and rewrite a query when somebody that doesn't know what they are doing has introduced an n+1 query, or done something overly "clever" that's resulted in gnarly SQL being generated.
> That's more a proof that the grammar of C++ is absolutely terrible.

Oh, I took that for granted as the basis of my remarks: far from a random choice on my part.
Generalizing it as "most" is definitely not a sign of a realist's view. Most of them reap profits from low wages and the open EU market. Others get oversized government contracts funded by EU funds and a large part of them do it with corruption. Finally there are some but not that many "no-go" markets which are a special interest of the local and Russian oligarchs and their lobbying kills the competition.
Romania did a relatively good job in their judicial reform, but Bulgaria lags behind a lot on that.
Ok, find a medium rich country. Got it.
Agreed. That's why I'm arguing that peer reviews should be handled separately from publication or any consideration of impact.
Does nothing? Shows an "Update chrome" button but my Chrome is the latest.
> Seriously how would it look if Amazon turned down a company because they were competing?

It would look bad: https://www.wired.com/2015/10/amazon-apple-tv-chromecast/
Be thankful, you might probably afford the best living standards that is possible to afford as an employee... worldwide.

I was an expat in Poland for some years (unfortunately non-STEM job) and with that money your only limit is yourself.
> There’s no way to measure productivity in software

This is clearly not true

Edit:
It seems obvious to me that OP has a problem with his team, other than with being able to measure pros/cons of his technologically choosen path
Synthetic “Melanin” Could Act as a Natural Sunscreen
The median Twitter user has what, a couple hundred followers? They certainly don't have 6,000. An account with that many isn't hugely famous, but it's certainly doing better than most.
A good question. In general - yes, just game it clear in the description.

In this case I will as SET. :)
I know this isn't the title of the post, but I couldn't find a news article explaining the key impact here. For 100-500 confluence users the price went from $500 across the board to $500 for 100 users and $1200 for 500 users.
It is a huge bargain, because most of what people really want out of life are positional goods - the nicest house in the neighbourhood, status with the higher-class local women whether for tinder dates or relationships/marriage, cheap local staff to perform services (child care, cleaners, gardeners, drivers, cooks).

You can afford none of these earning $100k in SV, but most of these earning $30k in Bucharest or Minsk.

Of course if you are after material goods, the opposite is true - if you don't care about a nice house but want a new Tesla, a new iDevice every year, Hermes bags and a Cessna instead, then you are better of living in a flatshare or a shoebox in San Fran or the Valley.