skysight-inc/HackerNews huggingface dataset:
I don't like to use arrow keys, and on my system the following works:
CTRL-P CTRL-A CTRL-F CTRL-F e
I also prefer this to the solution in the article.
Check out Kiwix.org There are different cheap options.
That sounds like the integration database pattern and it's generally not considered service-oriented (of which microservices is a subset).
(Written quickly on my phone)

Issue ends up being how to keep applications from ruining assumptions made in other services. There’s no single code base which you can walk through and see possible changes.

At that point this isn’t making things easier to understand or maintain so it’s not the best approach.
The battery draining fast seems to be a resolvable bug:

https://daringfireball.net/linked/2017/12/22/glenn-iphone-sl...
Agree with the author that Microservices are harder to operate in certain aspects. For example latency tracing with Microservices is harder when you have many services to check latency through, what service call caused the latency. Doing error tracing with Microservices is also harder because now you have to follow a web request through many different Microservices. Microservices in some cases may have worse performance than a monolith. With Microservices data no longer does in local memory or local cache, you have to traverse the network through an API calls to fetch data. Imagine that you have a monolith that can look up data in a hash table that is one memory/cache access versus a micro service network call. In the micro service you have to make a network call for a memory lookup. A memory access may take between 0.5ns-100ns versus a network call may take 10000ns. That Microservices may be between 20000 times to a 100 times slower accessing remote memory in another Microservice than accessing it locally in the same monoliths memory. Thus one could argue that in some cases performance are worse with Microservices than a monolith. You can still scale stateless monoliths buy putting a load balancer in front of the monolith. There is also increased overhead of running Microservices, instead of having one Java process/NodeJS process for a monolith you may have several hundred nodeJS processes Microservices running in Docker containers. Each NodeJS process takes memory for NodeJS itself. An important aspect of Microservices which are good is that they allow a part of the system to be restarted independently instead of restarting a whole monolith. https://radlab.cs.berkeley.edu/people/fox/static/pubs/pdf/j0.... Sometimes you may want to rewrite a component that is also much easier to rewrite with Micro services. Compare a Mainframe from the 60s-80s running a monotlith without unit testing / integration testing versus modern micro services with testing. Replacing parts or the whole main frame monolith will be very very scary.

Latency Numbers Every Programmer Should Know
https://gist.github.com/jboner/2841832

However I would argue Microservices has been done before the idea is not new. Microservices is a realization of the same principle as that of UNIX/Linux. This is called the UNIX philosophy, Write one program that do one thing well.
Make the output of one program the input of the other one.

Microservices are not a new idea, its the reimplementation of the UNIX philosophy for the web.

The UNIX philosophy
https://en.wikipedia.org/wiki/Unix_philosophy

"Make each program do one thing well. To do a new job, build afresh rather than complicate old programs by adding new "features"."
compare with
Microservice definition by wikipedia
"The services are small - fine-grained to perform a single function."

Improving reliaility with recursive reboots, Microservices on Kubernetes are at least implementing micro reboots in case of component failure.
https://radlab.cs.berkeley.edu/people/fox/static/pubs/pdf/j0...

Like most tech Micro services probably follow the Hype cycle
https://en.wikipedia.org/wiki/Hype_cycle
Another former resident of Moscow here.

I traveled through China recently.

Forget Moscow. They got cities which previously had no Subway at all starting out with 20 stations from day one.
I think that sounds like a bad idea. I could see pain arising from the shared usage of the database -- e.g., during migrations or heavy usage. I'm not really sure what the benefit is, either: each team will likely want to be the owner of their own database anyway.

If you're talking about the separate microservices using the same tables in the database, that's probably an even worse idea. Either your services are way too tightly coupled, or shouldn't have been split into separate services in the first place.
Turns out, if you have some education, but then get rejected by your society for what seems like intellectually insignificant reasons, it's almost universal to react by thinking it's not fair and that everyone should be equal.
Biggest issue with microservices: "Microservices can be monoliths in disguise" -- I'd omit the can and say 99% of the time are.

It's not a microservice if you have API dependencies. It's (probably) not a microservice if you access a global data store. A microservice should generally not have side effects. Microservices are supposed to be great not just because of the ease of deployment, but it's also supposed to make debugging easier. If you can't debug one (and only one) microservice at a time, then it's not really a microservice.

A lot of engineers think that just having a bunch of API endpoints written by different teams is a "microservice architecture" -- but they could't be more wrong.
Depending on the company, management and situation - you are the first to experience the loss in the form of being replaced with a younger, more naive candidate or an outsourced dev shop that can keep the product long enough for management to get another round of funding or find themselves an exit that minimizes their losses.

To not share in the losses you need to make yourself essential and irreplaceable, which is more and more difficult since a lot of the popular frameworks and cloud services that make developer/devops jobs easier also make them an easily replaceable part.
For me it was the comfort factor. I used to be a PC gamer after I grew out of PSX in the early 2000s...but lately I just got tired of sitting in front of the same screen I do my work on. I found gaming on the console to be a good context switch to relax and in the comfort of a living room on a sofa vs. hunched over keyboard and mouse.

FPS games were weird at first to play on a ps3/ps4 controller but I found other constraints helpful such as the lack of text chat which let me just focus on the game.

Overall I enjoy the simplification from getting into a match, not have to worry about hardware upgrades (its okay to not have the ultimate graphics), not having to argue in text chats etc...all from the comfort of a couch
> Any potentially-sensitive data would presumably be stored outside the US's borders in that case, in a country with laws sympathetic to the company's interests. I just don't see a good argument to be made for allowing a company chartered under US law to behave this way.

well currently than they need to search a country that would not coporate. Currently if some bad guy would store sensitive/illegal or whatever data in germany and the us would come and ask for it, the german law enforcement would check if the request (would meet all requirements in the german law for data search, etc) is valid and if it would, they would hand over the data. that's how it should happen and how it actually happens to some extent.
> shared MySql DB

This is already a smell. Usually, microservices don't need to access global state.
I've been down that road. Eventually it turns into a nightmare because evolving your DB means making simultaneous changes to multiple applications.

"We think we can drop this column, someone figure out which of our eight apps using this DB might be using it still"

I much prefer putting a single service layer in front of the DB that speaks thrift or protobuf and letting all clients interface with that instead. Evolving thrift services is fairly straightforward and allows you to make changes without needing every app the keep up.
I hope the number pad dies on 15" laptops or manufacturers start selling a variant without it. I'm ready to pay an extra for a keyboard without the number pad and centered space bar and touch pad.
> The Switch wins because of the games behind it.

You could have said the same thing for the WiiU (while not a fully portable console per se): It had a few excellent games, but nobody wanted it. It's not as simple as that.
I remember the previous record was 97 bytes:

https://webserver2.tecgraf.puc-rio.br/~ismael/Cursos/YC++/ap...

But I'm not sure if those will run on anything newer than WinXP.
Which VPS providers would you suggest for proper IPv6 support? Thanks!
The problem is the codebases are still not "completely independent".

If the backend dev needs to change a field in the database, or add a new one, then can might affect the front end dev.

Also - simple things like validation rules - i.e. what can the front end dev allow users to store into the DB vs what can the back end dev use/need.
An improvement to the Hacker news website would be to compute and compare hashes of weblinks so that the same link is not reposted multiple times. Later posters of links could then be redirected to the first post of a link.
More like there are people who to this day attempt to use the influence of Western philosophy in arguments about why "Western culture" is inherently superior. This is not a strawman I'm referring to here, this is a literal argument made by white nationalists.

Highlighting the contributions made by philosophers from other cultures is an important part of combating these kinds of narratives.
Same. I thought the impossible burger was fine but wished if just ordered a traditional veggie burger.

I understand the desire to appeal to meat eaters, but it's never going to be a match. And close but no cigar leads to an uncanny valley of the palate.

Meanwhile, there are much tastier vegetarian burgers that abandon any desire to taste like meat.

So I see "meatish" as nothing but a curiosity for the time being.

Lab grown meats married with meatless agencies, meanwhile, could bridge the gap better while we wait for it to become a more affordable process.
I'm not worried about it - I'm fascinated to see how it plays out.

How long before other complex food proteins can be synthesised and mass-produced without the need of specialist farms?
Stem cell divisions, somatic mutations, cancer etiology, and cancer prevention
> lately I just got tired of sitting in front of the same screen I do my work on

Living room PCs are also a thing. Boot directly into Steam, with a Steam Controller to play mouse games with the gamepad, and it's mostly a fine experience, and it gets better every year. Added bonus, you can run games at much better framerates and resolution than a console ever could. And "upgrading" is not needed that often. I have a 3 years old card that is still running most games at high details, even recent ones.
Mithril is a good one
I agree with you to some extent, at least if the game does it poorly.

"Points reached, game over" is the only quibble I have with the two-player version of Agricola, "All Creatures Big and Small." The end game condition is reached far too quickly for my tastes so I wind up asking the other player if he or she would like to have a "house rule" of more points.
If multiple services are coupled to the same database schema then any changes to the schema must be coordinated between all services, so you've got something of a distributed monolith instead of a set of independent microservices.

This might be fine, and maybe it could even be a good choice in your situation, but I would probably avoid the added complexity.
I apologize if it was inflammatory, I didn't know that it was a flame bait topic (which I guess shows my own bias).

Thank you for your response and the info :)
A few? That's quite bizarre is it not? How many other countries have a few replicas of a monument?
OpenCensus with Prometheus and Kubernetes
But this isn't just "some bad guy" stashing data on a foreign server. The person who is the target of the search warrant handed his data over to a third party, a corporation operating under US law.

The fact that it's currently stored on a server that happens to be outside the US strikes me as one of those clever technicalities that impresses us nerds but doesn't impress judges.
Google reported that there is over 1.5 billion hours consumed on average per day on YouTube. That is about 10 minutes per person on the planet.

Now that is a crazy amount but what is more amazing is how fast it is growing as it is growing at over 50% per year. That is more hours than all of linear TV in the US combined. But then Google has the ability to target ads and therefore have less than linear TV. It is just hard to see how linear TV will be able to compete if they are going g to continue to have 14 minutes of ads per hour of TV.

My kids are growing up without ads or far less than I did and there is little chance they would except 1/4 of viewing time being ads.
Maybe hindsight is 20/20, but the only people that thought phone games would replace console/PC "real" games were people that aren't gamers.
Interesting, most of these are from korn shell and well documented in "The korn shell command and programming language" by Bolsky and Korn.
First, by writing “just one person’s cash”, it is automatic to infer you consider this representative. I assert that it is not, and furthermore that if it were even close then the criminal economy would vastly exceed the non-criminal one.

Second, look at the date on that and tell me, with a straight face, that they didn’t use any cryptocurrencies. If they really did have $22bn, perhaps even if they only had $22m, I expected they used a dozen forms of currency they couldn’t even name.
For some definitions of 'philosopher', the impact of the person on a group is an essential part of the definition. The first sentence on the french wikipédia for philosopher (https://fr.wikipedia.org/wiki/Philosophe) is
"Un philosophe est une personne dont les écrits ou la parole sont reconnus par des écoles, groupes, religions, ou académies" => "A philosopher is a person whose writings or words are recognized by schools, groups, religions, or academies"

With this definition in mind, it's logical that the concept of "precursor" or "unknow philosopher/thinker" seems just absurd to some people.

I don't necessarily agree with this definition but we can't really blame nickysielicki for this very frequent point of view.
Ask HN: What should you do an year or two before starting up?
As someone who started his first tech job and is interested in starting up eventually. What should I be doing in the next two years to be better prepared for when I start up?

To phrase it differently, how should I be spending the next two years to be in a better situation to start up.
Fyi It's a remote session server with a HTML client
Hey, if you want to do the fishing thing, it doesn't take a month or a national park. Just thought I'd chime in with a simple recipe that will catch you fish about 99 days out of 100:

Buy a "cane pole" (they sell non-bamboo versions these days). Tie on a hook, bobber, etc. Get some live bait--you can usually buy worms where you buy your fishing pole.

Ask the guy who sells you your pole a good place to fish, if you don't know of a pond or lake nearby.

Go to the lake, and the way you use a cane pole is you swing it out. No casting or fussing with lines and reels etc. When the bobber gets tugged on, you lift up. It's almost like cheating, you just pull fish out of the water!

I started fishing this way when I was 3. I would start any kid the same way.

If you go the other route--artificial lures, casting reels, etc--you'll get skunked a lot. Getting skunked fishing beats a day of work, but it's not great for youngsters' morale.
> A microservice should generally not have side effects

I gotta ask, how is this realistic? A salient feature of most of the software I've worked on is that it has useful side effects.
Seriously though, Euro board games are how I made friends in grad school, and how I spend a lot of my time with friends and family.
tilaa.com and vultr spring to mind. I'm using them with IPv6 and it work's relatively flawlessly with tilaa.
You can still get a video card that can play 90% of current games at max settings for around $200-$250, same as 10 years ago. But the upper end does seem to have expanded and become more expensive.
Just wait until somebody builds some easy to deploy Linux distro called PS4MinerOS. Does anybody know how cost effective the hardware in modern consoles would be for crypto mining?
How does an additional layer make changes to the DB easier? If a column is dropped what will your layer do when a request for data from that column comes in? What if the request joins it with other columns from other tables?
I'd love to see Apple create a console with their custom A chips.

They could easily outperform the switch if they wanted to go to that form factor. Otherwise, I still think they could put out a great console with the help of one of the graphic card companies.

The issue would be content. Since the other consoles are more like desktops, creators would need to make sure that the games worked on ARM as well.

Doubt this will ever happen but it would be pretty cool.
It wouldn't work - it's trivial to add meaningless query parameters or anchors that would change the hash but still lead to the same content. And stripping that wouldn't work because some sites use them to route to content.

What might work is hashing the text and outbound link content submitted pages of, and building something like a similarity index of text, metadata and a graph of links, but that would probably still be fragile, and definitely be too much effort for a site with as little traffic as this.
https://pypi.python.org/pypi/BTrees
Wow, I had no idea Phil Eklund was such a superstar! I met him waaaay back in 1990 when he still lived in Tucson and would bring his whacky home made games to the “Historical Games Society” club at the U of A. Way to go Phil!
Natural Text
If we're clever enough to empower people to be responsible to shop without human oversight to charge, why don't we stop including money in the transaction and instead of shopping, we're just taking what we need?

I dont understand what the role of money is in this situation if its taken to its logical conclusion. I bet Jeff Buysus wants to keep it there, however..
Maybe Digital Ocean? Vultr? I don't really follow the VPS market.
This is so incredibly stupid and seems in the long run is going to hurt BMW a lot more then it would gain in the short term. This is such a short term move.
The Wii U wasn't a mobile at all, though The tablet was tied to the console.
The article says they used seismic data and eyewitness accounts.
How many crimes occurred on or by means of the Silk Road and it’s clones?
Same, I use tabs both in i3 and vim, and I never use my mouse (I use keynav when I have to, for instance with firefox).

I've seen some vim workflows using only buffers instead of tabs, but they required doing
:ls
:b buff_number
to switch to another file, which seems worse than looking at your tabs and repetitively do "gt" to access the corresponding tab.

I could use the ctrlp plugin or one of its alternative to fuzzy search on the file name instead of manually changing the buffer, but I still don't see a real benefit over using tabs. I guess it makes sense with really big projects where you have to open more than 10 files at a time.
Show HN: The Missing GitHub Feature: Treeview for PRs
This is a criticism of one spicific issue, but I would argue that there shouldn’t be any variation of “try again” messages. If the probably can potentially be resolved with just trying again, shouldn’t the software just do that automatically instead of telling the user to manually retry?

As a user I find those messages verify frustrating because it feels like the software potentially knows what the problem was, what a possible solution is, but makes me do it. (Also simply retrying usually doesn’t solve the issue).
ZODB has a mature B+Tree implementation for on disk use in the BTrees package. https://pypi.python.org/pypi/BTrees
What do you mean by 'run everything repeatedly'?
galaxy brain
Try finding a 1060 6gb, 1070 or a 580 in stock at anywhere near MSRP.
The thing is the Switch has already proven to be a winner and it's mainly because of the content on it.
Fun article about a topic I'm somewhat familiar with (am German and in board game circles). However I am really not sure if it fits the aggregator.
Everything that accesses one table should be in one place. If you're sharing the database because you don't have enough use of the tables to justify splitting it up, that's fine. Do yourself a favor and create different MySQL users that can only access the tables needed.

If you're sharing the database because sometimes you want to access a table from the frontend and sometimes you want to access that same table from your backend layer, you're probably setting yourself up for pain later.
When I was at Google their compensation system tended to unfairly bias toward people delivering features and I and others argued for recognition of people that made delivering those features possible (which finally came about in 2009).

Interesting. I started at Google as a SWE in 2009 and I did not see any of this. I left in 2011 so I don't know how the situation is today.

However when I worked there it was obvious that when promotion cycle came everyone was first to claim they "put feature X into Y", even if they were just the ones doing the wiring, not the ones implementing the actual thing.

The situation was aggravated by the fact that promotions were (probably still are) in the hands of "promotion committees" (which most often did not have a damn clue about your product or team and who contributed what in reality) and not in the hands of your boss. As a result I saw promotions biased towards the most shameless liars and self-promoters.
I would say it is less complexity then adding another API on top of the database.
That only applies to copyright. Another commenter claims that some buildings have trademark protection.
I reckon most people choose PC or console (or both) based on 1) what their friends have 2) what games they like to play 3) backward compatability with existing games and 3) how much they value the convenience of consoles.

I mean, surely it's not affecting the sort of GPU which would go into most computers? I think it's only quite a small proportion of people who'd spend more than a couple of hundred quid because they have a massive screen or want to turn everything up to ultra.

I seem to be able to play quite a lot of modern games acceptably at 1080p on my work laptop which an Intel integrated graphics thingy, for example.
At the very least, each service should "own" its area of concern, which means only one application should ever write to the underlying structures, and those structures should support that application alone. What happens if you have an app that needs a certain setting on the database, but you can't restart to make it effective because 9 other apps are using the same DB?

It's hard enough to coordinate this kind of maintenance when there is only one OLTP-style user of the database. If you get a lot of interdependent units, where app A needs to read table B and app C needs to write to table D, it's nigh impossible to do it without global downtime.

"Microservices" require a large amount of control and discipline to implement properly. In almost all cases, a straight-up monolith ends up being much saner. "Microservices" are often seen as a license to run hog wild and disregard everything outside of one's immediate area of concern / team. This is convenient at the time because of Conway's Law, but it is terrible for long-term maintenance, overall consistency, and employee sanity.