skysight-inc/HackerNews huggingface dataset:
> Mutable instance variables are much less bad because their scope is much more limited: you can much more easily scan all the code that mutates them and check that invariants are upheld etc.

Same can be done with module level globals.
Elevate your product using these psychological techniques
No, Google regularly updates the minimum targetSdkVersion required for an app published to the Play Store. It maintains backwards compatibility for sideloaded apps.
Those concepts are common in most functional languages. The path to Scala, for example, is pretty short.
And he's simply lying ... the NYT said 85%: https://www.nytimes.com/interactive/2016/upshot/presidential...
Problem is that it’s easy to correlate dna data against each other and infer who you are (assuming some small number of relatives have also used the service). In fact, a find your relatives service is built in.
Any time I come across (or review) code which uses globals, even at the module level, they invariably make it hard to mock the related code in tests. Dependency injection and class (/instance) level state are an improvement pretty much always.
I think the main benefit is that every function relying on the stop variable is clearly defined as such, as opposed to having to find out manually who is reliant on it based on usage; its not so much moving complexit around as it is making things more explicit. im not sure how useful this is in practice though, for the common case
Yes. That's why I uninstalled and switched to Zotero. The import tool worked great, btw.
I am not saying that python globals are a great idea — just that they are not as horrible as they are in case of C and they they do have their uses — they just need to be used carefully. Of course, python makes it impossible to truly hide anything. In an ideal world, module level globals won’t be mutable outside the module.
> They are different. HyperThreading is where one core acts as two by rapidly switching contexts.

This would be quite the opposite of Intel's actual SMT implementation, which aims to keep all the parallel execution resources of an OoO core fed and busy.

There have been some machines that do what you describe too (eg Tera/Cray MTA, many GPUs, Sun's Niagara), to combat memory latency and reduce the need for cache. Those machines have a big thread count since they want to have a lot of outstanding memory operations in flight. You will notice that these machines are not called SMT, since the S stands for "Simultaneous".
I can't wait for the Americans to come in and privatise the NHS. I'm really enjoying the small chocolate bars after they took over Cadburys.
It was, as well as the Automatic Train Protection (ATP) and Automatic Train Operation (ATO) systems. I worked on part of the track to train comms system of the subsequent Victoria Line upgrade which was also written in Ada.

I forget which compiler was used, all I remember is that it cost an arm and a leg!
Without comparison of performance "before" and "after" (in numbers, not words), this news doesn't have any sense.
51% Attack vs. Banking Cartel
^ Just another crypto hype/scam.
I sold it far too early for the profits, not because I didn't have faith in AMD, but I thought Intel noticed, and they are going to make a move. At least by Intel's roadmap which there were already changing it the third of fourth time by then. It would have 10nm, better IPC and other Server oriented SKUs. They didn't admit XMM7480 was fabbed by TSMC until later. By mid 2017 it was clear to me Intel is nothing but giant elephant that doesn't know how to move. Its execution was appalling, and they have been able to make improved sales only via market conditions or lack of competition.
Syncthing instead of dropbox. Works great for synching music (and only music as I can just sync a single folder) and for replicating important files across multiple computers.

I've got it on a linode and across all my computers.

https://syncthing.net/
What if you, one day, want multiple worlds for some reason?

I'm developing a game in Unity, and the programming culture around it encourages globals and singletons to an unhealthy degree. I pushed back against them heavily in our project. As a result, it was very easy to add a previously unplanned split-screen mode one day, thanks to the codebase (e.g. the UI and input modules) not assuming that there's only ever one local player.
If you click the ?-icon in the Feedbro toolbar you can see all the keyboard shortcuts. What shortcuts are you missing?
I've never worked with a native employee with this particular defect for any appreciable length of time. They always get let go. The H-1Bs however, in my experience, don't. Why might that be?
Actually, according to their prediction, Trump wins 3 in every 20 times: https://www.nytimes.com/interactive/2016/upshot/presidential...
Why? There is a legitimate reason for having a high hiring bar. Obviously this doesn’t make ageism or discrimination acceptable of course.
Uber can easily compare image hashes so no image of vomit can be used for more than one claim. That should keep out less technically savvy fraudsters.

They could also demand a scan of a receipt from a cleaning place, and then verify via GPS traces that the driver actually went to the place after the supposed incident but before taking the next ride.

Uber should also make a notification or popup for the customer if they are charged extra after a ride. An "appeal" should be possible from the notification.
I've tried perkeep out but couldn't really figure out its goal or purpose. It seems to be built on a lot of interesting theoretical ideas of generalised storage without an actual current application. In particular there's some talk on their homepage about software archeologists being able to reverse engineer the format easily in future, but that seems a little presumptuous if they don't find a proper use case between now and that future. Right now it just seems like a less convenient alternative to a filesystem.

I had a related thought recently when trying out the SecureScuttlebutt social network: ssb seems like a format that could fill the intended use case of Perkeep (throwing all your stuff in a database) with the added advantages of (a) having broader applications today, (b) having a wider range of mature db clients and (c) having a well-functioning existing hosted ecosystem for cross-device syncing.

This isn't ssb's intended use case and I haven't tried it yet but I intend to.
It's quite unfair to compare misinformation campaigns orchestrated by the whole US government

Oh come on. The NYT et al have not hesitated or been reluctant in any way to criticise the current US government. They equally gleefully supported the WMD story because it suited them to do so, pandered to them feeling important.
The Shipping Forecast is a very significant cultural reference in the UK. It crops up all over the place. Britain is _fundamentally_ an island and a seafaring nation, and that's something Americans miss; you're never more than seventy miles from the sea. It's as iconic as, I don't know, Thanksgiving football in the US; it's a thing everyone knows about without explanation.

This is from an album which sold over 1.2m copies in the UK; one of the biggest records of the 90s: https://www.youtube.com/watch?v=SD8gO8TAr4s
I try to use self-hosted over cloud-based services. The loss of control over data, privacy issues and just being burnt too many times means services are ephemeral to me at best.

Some of the things I use heavily:

* Nextcloud

* Bookstack

* Privatebin

* Mailu (although I'm slowly moving to a manual setup)

* Wallabag

* Selfoss

I'm also waiting for pixelfed, peertube and pleroma to mature a little more.

I'm moving some of my content away from hosted platforms to self-hosted ones, and looking forward to integrating DAT[1] and Gopher so people have (relatively) safe non-HTTPS options to access content.

It's harder than it seems, although a large part of the puzzle is aggregating the data from these sources and getting them into a format that works. I'm considering creating a lifestream generator using my self-hosted data, and then syndicating from there to various services.

[1] - https://datproject.org/
The associated github repo is at https://github.com/MarkPKCollier/NeuralTuringMachine
I am building TinyDataCenter to host all my IT on RasPi progressively enhanced by cloud; running the same images built for RasPi/Arm and regular x86 back engineered with my big data platform/devops experience.

I’ve been running a live stream and vlog all year on it, now carrying it around in a crate with a UPS, and posting design videos that follow scalable patterns with minimal tools.

Nobody can ban me from the Internet, now.

I also recorded bootstrapping videos and most of the development via screencasts and all on GitHub.

Kinda pitchy I know, but I sell nothing except services and only state what I’ve done, in fact—I believe in it.
I setup Redmine, Gitolite, and Jenkins when I started working at a company a few years ago. They worked great and we had a couple of python scripts to make everything fit nicely together (git commit keywords to resolve issues, etc).

Then one day someone decided they needed "reports". We ditched our working system and paid a bunch of money for the Atlasssian suite. To this day I still miss our simple, functional, and free setup.

Bamboo was so bad that we eventually gave up on it and switched back to Jenkins. Seriously Bamboo is one of my most hated software products of all time.

We tolerate Confluence but the fact that the JIRA and Confluence have their own, annoying flavor of markdown, which is different from Bitbucket's flavor annoys me to no end.

Bitbucket (which was called something else before) does have a few nice features but nowadays there are options better than gitolite alone. JIRA has those pretty reports that someone wanted and that are never accurate.

yay.
About half of the candidates I have interviewed have full working status. About 10% of the candidates were, in my estimate, over 45 years.

Slightly over half my team have full working status, and about 1/5th of the team is over about 40 years.
Attempting to modify e-coli with CRISPR in my bathroom
Thank you for posting! Self-hosting is something I wish was discussed more frequently on HN.

I’m yet to depend on any of them, but projects I’ve been eying up are:

- Airsonic as a Spotify replacement (FOSS iOS clients)

- Kodi as a smart tv/box replacement (had this for a while, worked great!)

- NextCloud to host files (generally allergic to php, but too scared of iOS binaries from China to trust the superior SeaFile)
I've been using sandstorm.io at the recommendation of a friend, and I'm pretty impressed with it. It's kind of like containerised apps that you run like a server, and once it's set up it's super easy to manage. It's replaced Trello and Evernote for me, and had a bunch of useful trinkets out of the box.
Volumetric display isn't as appealing as holographic when it comes to marketing. And masses often don't care about details, they just want to be thrilled that each day technology brings us closer to Star Wars-like holograms.
Just typical zealotry. So instead of globals we should use DependencyInjection, and now the app is magically better? For many projects it hardly matters, and I'm not going to over complicate things when there's no practical reason for it.
>[dynamic images in general]

Canvas elements already exist.

>But this opens up another interesting avenue: It's very easy to return a different image while you're waiting for the original to load. Meaning there is no async/await -- no waiting at all. You just write code in the natural, blocking way. No callback hell or promise chains.

Can't you use canvas elements from web workers? Or you could post messages to the UI thread telling it to edit the canvas, which should get you the same effect.

None of this seems specific to WebAssembly.
I know that you were playing off the joke, AND I stand by my statement.
Agen Judi Poker Online Uang Asli Paling Terpercaya – Asiapoker303
Quite a few self-hosted stuff already mentioned, I'd add:

* Youtrack for bug/project tracking (made by the awesome guys pf JetBrains)

* Matrix for chat (only some internal rooms on the private instance, the users stay on the main official Matrix)

* Koken for photo galleries

At some point I'd also like to add:

* a map tile server for openstreetmaps, to remove any external dependency on Google/Apple/any maps

* a jitsi server

* a secure file storage/file sharing solution
Isn't there just a way to update without restarting the computer. That'd pretty much solve the whole friction.
It was literally a merger on paper, for what that’s worth. NeXT were also close to an IPO and their dev tools were second to none. WebObjects and EOF were first rate products easily worth hundreds of millions to the right people in their own right.
I guess this is pretty basic, but it creates tight coupling between unrelated code, as described here:

https://en.wikipedia.org/wiki/Coupling_(computer_programming...
It does make some sense considering the ideal user for an ad-supported business: Has money and either isn't savvy enough to block ads or, even better, ethically opposes blocking ads.

No offense intended to the previous commenter in particular, but statistically speaking, someone who reads stodgy news without an ad blocker in a subscription app on an expensive phone probably fits the profile. They may have heard of the company but haven't tried it, or they tried it in the past and just need the brand occasionally refreshed in their mind until they try it again.
> The H-1Bs however, in my experience, don't. Why might that be?

That is strange. In my experience, H1Bs are let go as quickly as natives if they are not competent. Of course, it could simply be a matter of the type of companies we have worked with. Again, see my (longer) response to the OP. I have mostly worked with Type 1 people I described there and have been fortunate enough to mostly avoid the Type 2. That said, I’ve worked with both extremes.

EDIT: When I say I’ve worked with both the extremes, I mean I have worked with both highly skilled and totally incompetent foreigners as well as natives.

EDIT 2: I’ve also worked with a third category — highly intelligent people (PhD level) who are more interested in spreading their intelligence (i.e. showing off) than getting actual work done. Unfortunately, I haven’t met the other extreme in this case. :-)
I find the "asteroid" argument (and Musk's "multi-planetary species" argument) to justifying investment in Mars so strange. Mass-extinction-level asteroids hit Earth once in 100s of millions of years. And even when one does hit us, it'll be easier to find ways to make more of us survive on Earth (we'll see it coming, and can build whatever structures and equipment more easily on Earth than on Mars) than we'd be able to do so on Mars.

These arguments are the software equivalent of noticing the possibility of a super-unlikely bug (that probably won't happen to any customer in the software's lifetime), and then investing in a massive multi-month rewrite instead of a simpler one-day fix.

I'm not saying we shouldn't invest though: there's lots of positive side-effects to solving the requisite hard science problems, and to inspiring people with space exploration. Investment in Mars and cancer (and literacy, and a bunch of other important things for society) can happen in parallel. We're not yet at the point of exhausting our engineering capacity with just those things: and if we're running out of capacity, better to reduce our investment in the Nth messaging/photo-sharing/js-framework/... piece of software than to reduce investment in these ambitious pursuits.
Ionic 4 Beta Released
The first paragraph sounded very weird: he was awarded the Iron Cross by the Nazis for deceiving the Nazis? This isn't cleared up until the end of the article.
Gain? You could pass different pointers to each worker function, giving you a way to partially shutdown your process, or to shutdown some workers first, and workers they depend on later.

Of course, if you don’t need that, it’s not a gain, and a global is fine.

Globals also are fine if you are resource constrained (e.g. if you have a few kilobytes of RAM or even less) Getting your code running in it may trump everything else.
gitlab CE, discourse and owncloud.
> The longer I am alive the more I learn about how much of human civilization depends on good faith and trust.

The way I see it, this is a feature, not a bug. The energy costs of trying to build a civilization like ours on trustless systems would be prohibitive (and no one would be happy about the amount of bureaucracy it would involve).

Trust is not only vital to the continuous existence of our civilization, it's also a very powerful tool for advancing it. That's why the growing lack of trust of the general population worries me. The rule of law works only as long as most people trust in its implementation. Money works only as long as most people trust in its implementation. That's why, for instance, I'm very critical of mainsteam journalism and media platforms - all they seem to be doing these days is to sow discord, burning people's trust in institutions to get their eyeballs. That's why I've been so critical of Uber since the very day they entered the taxi market, as by breaking laws and getting away with it they were eroding trust in the rule of law (half of the blame goes to municipal governments that failed to immediately ban them).

In my view, trust is so important that working to destroy it is antisocial behaviour, and one that should be punished swiftly and severely. Much more than it is these days.

--

> If the last few years (decades it seems) have taught me anything, it's that we have to reevaluate many of the assumptions we have been holding about reality and our peers. From the Target/Home Depot/Equifax breaches to Facebook's Cambridge Analytica fiasco, we have just been way too lucky and way too trusting.

IMO the examples you give aren't very powerful. Nothing significant happened because of Target/Home Depot/Equifax breaches, nor the Cambridge Analytica fiasco led to anything of relevance - when compared with the previous scenario of power grid failures. I'd use the 2008 financial crisis as a better example.

> GPS is just one of many such cases, although a surprising one. I never thought the world would put so much trust in a system created by and for the US armed forces.

What about the Internet? ;).
A bit OT: In my personal projects, it's easy to use plain JS instead of jquery. But as soon as I start dealing with object- and array-data (formally json), I cannot miss the underscrore.js library. At least without it, I start writing my own helpers for some actions on obj/arrays.
> Most weapons are INS guided despite the long fly times of cruise missiles etc.

And because of a long fly time or imprecise initial reference point (a submarine is floating) some do corrections. One of the coolest one for ICBMs is to use celestial navigation to correct errors. They'd have a window with a camera and would "look" for a few stars.
It's funny how much I dislike the top two alternatives to globals, at least how they're typically implemented today. For me it's a case where the cure is worse than the disease.

I've worked with a codebase where the global state was passed around as a configuration object, and that made heavy liberal use of dependency inversion. No other code base I've seen was so obtuse...it was nearly impossible to know what a line of code did but looking at it.

Dependency injection and configuration objects certainly can be useful, but the bad design they seem to encourage makes me think very carefully about using them.
Well, I just got married that year with a daughter on a way that we didn't entirely plan.

My biggest advice would be along the lines:

* your parents love you, and you should ignore all of their well-meant advice, because it will bring you mostly stress

* bringing up a kind is hard, but awesome

* you and your wife will need both time together, and time apart

* rewiew where you are in life and where do you want to get
Show HN: Run and Manage MQTT Broker using Docker easily
Running on my NAS at home:

* GitLab (GitHub + CI/CD replacement)

* FreeNAS (Storage server)

* Nextcloud (Dropbox replacement)

* Syncthing (Dropbox replacement, Nextcloud did not work properly on my android phone)

* In progress: Kubernetes cluster (just for fun, RKE + rook.io)

* My own notes/wiki/task tracker I will release real soon now (TM)

Thinking about setting up Gitea + Drone.io, GitLab is just too heavyweight for just using it as git Hosting + CI/CD.
For this trial we are transferring some data from AWS, which is already partitioned in S3 by quite a few dimensions, including DAY.

As BQ only supports DAY partitioning, I had to create multiple tables that represent the other dimensions, but it seems to work OK, if a little clunky when you have to use wildcards/_TABLE_SUFFIX
I'd guess this happens because a journalist starting to fact check is often a giveaway that they are about to write something you'd want to challenge later.

Nobody ever called me, my boss or my friends to verify this summer has been extremely hot or what my favourite food is.

Also: just getting the words correct doesn't help if you cut the part where I explained what happened.
There is a legitimate reason for having a high hiring bar.

The “bar” is not representative at all of the nature of the work is why. It’s artificially high in order to eliminate a glut of candidates early in the process.

I remember when there was a genuine shortage of tech workers - the dotcom boom. Hiring and compensation reflected that there was high demand and competition to hire. Outside of a very few niches now, the economics (law of supply and demand) simply don’t show it.
You know what else spreads online? Truth that the mainstream media wont touch, or would rather suppress. Take for instance this smug, misrepresentative Washington Post editorial on a documentary about the geopolitically significant Magnitsky Act, a film which western audiences would probably never see if it wasn't for the internet.

https://www.washingtonpost.com/opinions/russian-agitprop-lan...
I get that big brands often advertise for pure brand awareness and associated reasons not necessarily tied directly to growth in new users or their bottom line.

This makes me wonder what it must be like being a marketing executive for Facebook at the moment. In advertising one usually promotes USPs and benefits to sell the product - in this case - a social media platform. The FB marketing execs must sit there thinking, how the fuck do we sell Facebook when everybody knows about Facebook, and most people know it's garbage?

This is especially true when you consider there's 7 billion or so people on the planet, and FB already has 28% of the total population using their app. They surely can't believe that they're one day going to have much more than their current market share?

I guess the 'free to sign' up and 'join 2 billion users' was the best they could manage given the circumstances.

I'd love to hear from a marketing exec at a big corp to understand their take on it. The idea of having to market Facebook at this stage in their lifecycle is very intriguing to me.
And for morning people there was Fritz Spiegl's and Manfred Arlan's UK Theme.

M. Spiegl also did some jingles.

* https://www.youtube.com/watch?v=X_Bu6ESf530
You're right, assuming the module is not too large.

There's another point in favor of instance variables: it gives you the flexibility of multiple values in different parts of your code. As codebases grow, the danger of two unrelated places wanting different values for your global also grows.

Say a physics simulation has a global for gravity. This precludes, or at least unnecessarily complicates, the same process from having two separate simulations with different gravities (perhaps in different threads). This is especially bad in library code.
Also modern IDEs change the game a bit.

Used to be you wouldn't use globals because it was difficult to figure out what code accessed or changed their values. Now that's a right click away.