skysight-inc/HackerNews huggingface dataset:
I think that backend can feel less chaotic. It has its complexities but my personal opinion is that the things you use are less prone to deprecation. Ways of doing things change and that can require you to learn new things. Some examples of change are:

A few years ago I had never heard of Kubernetes, but now it’s one of the most in demand things. Cloud formation was the cool kid at one point and then it changed to terraform and to a lesser degree cloud formation SDK

But that still feels more stable to me than what people deal with on the front end where people can’t even agree on a framework to use (how many are there now for JavaScript?) lol
Unless the CNC machine is the entire business, breaking a part isn't an outage. It's just an financially expensive mistake. On the other hand, if you have a building running life-support machines, you probably don't want someone messing with the breaker box that connects to them without designing some protections and backups.
I've tried using it once to IIRC, replace a debit card in the wee hours of night, but some functionality seemed to have been disabled after midnight.
I don't care about Snap, only Flatpak.
> If they don't know that a % of their portfolio will fail, then they're idiots.

Yes, but they don't know which ones. What the commenter meant is that the VC believes each and every one of their investments has the potential to become a rocketship. So they spread the risk into several potential rocketships and hope for one of them to not crash.
While frontend always deals with the visual aspect of stuff, backend can mean different things to different people.

For some cases, backend is simply to load an object from a DB, convert to JSON and send it the client.

But backend can also mean "provide a list of movie recommendations against what user has already seen and convert that list to JSON".
I've tried native mobile dev, web frontend and backend dev.
The nuance of frontend dev is that you need to pack a lot of things into one process, so it requires more sophisticated coding skills. reactive patterns or stream based approach is a good-to-go knowledge to have.
backend is easier to code, however the nuance is to split and scale it once you getting more traffic, proper configurations, dependency management, deployment etc.
based on my subjective perspective obviously, there are far more things to consider.
in general, do what you love ^_^
I used Octotree for a long time but switched to https://github.com/EnixCoda/Gitako because it’s open-source.
That's a good example of how a sub-par article with catchy title generates a sub-par discussion.
And what is your policy for gifted students ? The below is un-acceptable.

"A key sticking point in the approval process has been the framework’s recommendation that teachers refrain from labeling students as “naturally talented” in math."
Then you need to be willing to rezone and create higher density. This is often massively restricted and that is the primary issue.

These areas don't WANT to create cheaper housing.
A great skill I have been developing as I mature is the ability to look at a seemingly suboptimal implementation I receive and not be appalled by the perceived sub-optimality but rather appreciative of the history that is embedded in the little details. For me, any system producing correct and useful results is perfect under the constraints of its implementation. Even if the developer was not great, someone was great enough to mitigate for it. I have seen many such ugly, perfect systems.
While I'm aware that OP and I are in a minority - there is a cognitive overhead to having that information surfaced at all times when you may be trying to focus on something at e.g. the method level rather than the individual syntactic element level, and if that cognitive overhead exceeds the utility of having that information available, the sensible answer is to turn the highlighting off.

If I could have some sort of focus follows mind where highlighting automatically happens commensurate to what level of granularity I'm currently thinking about the code at I would be extremely interested, but absent "focus follows mind" it's a trade-off that everybody has to make for themselves.

Some people prefer to highlight almost everything, some almost nothing, some people find it helpful for some languages/tasks but not for others.

It's similar IME to the extent to which preferred debugging styles (printf versus interactive versus hybrid versus situational choices) are also something people have to figure out, and, well, different people are different, and that's neither a bad thing nor an avoidable thing.
But may not be. Maybe the policy is fine and changing it based on one machine shutdown is not worth the costs.
Thanks for the article. Even though I'm not active on the development side in either editor, I love the idea that people are toiling away on these same sorts of enhancements in both environments (and I get the benefit in neovim).
Abusive monopolistic behavior if left unchecked can lead to great evil. This was recognized a long time ago and led to anti monopoly legislation and enforcement. Just think what would have happened to the internet if AT&T‘s stranglehold over the connection of equipment to telephone lines had continued.

Strangling is not a prerogative of the strongest.
Ok, but Telegram isn't Instagram. It's not even a social network, it's an IM. And while you can talk about lock-in effects with IM applications, I honestly think there's only one where it makes sense, and that's WhatsApp. In many parts of the world WhatsApp is completely synonymous with sending a message or making a call, so not having it cripples you. They enjoy market leadership on account of being the first player in a market that screamed for a solution way back when SMS and call pricing was horrible compared to data (and I guess in some places it still is). I strongly doubt Telegram enjoys any kind of similar effect, the percentage of users that can (and may) drop the app like a hat seems to me to be a lot higher.

Of course, I might be wrong, but the difference I'm trying to get across here is that unless every hair salon and restaurant you go to has Telegram stickers in the window (they don't), it's not comparable to Instagram, because switching to a new IM is for a lot of people like switching channels on a radio, the FOMO of losing all your friends is not as prevalent because people are already using multiple IMs and are much more open to trying new ones than they are trying new social networks, because IMs are "light". They don't want their IMs to be social networks, and the reason some of them are becoming social networks is pretty clear: it helps with user retention and lock-in. It's one of many reasons why Signal deserves praise, they don't bother with that.
Instant Rebalancing for a fully autonomous Kubernetes optimization
Definitely backend easier than frontend. On backend you just write code and only machines interact with that. On frontend you are building interfaces that are accessed by thousands of different devices with different screens, different components and different users which may require different accesibility options.
> But what sets the bank apart is their customer service, the people on the other side of the phone (or counter, those few times) are incredibly friendly and helpful (again, compared to, say HSBC).

They've started to follow a Singapore trend of limiting non-fraud phone customer support to between 8am and 12 midnight [1], which IMO is ridiculous and counts strongly against their "customer service".

I also thought that their counter staff tend to be overwhelmed and overworked, because DBS, as they bought over Singapore's post office bank [2], also acquired a lot of (now) elderly customers — I believe still a magnitude larger than other banks.

[1] https://www.dbs.com.sg/personal/bank-with-ease/contact-us

[2] https://en.wikipedia.org/wiki/POSB_Bank#Acquisition_by_DBS_B...
If by backend you mean web backend. I would say that backend development is slower moving in terms of changes to technologies and frameworks used than front end.

But you'll need to understand what's going on at a deeper level (Data design/Caching/SQL/scaleability etc) so there will be things to learn - but they are much more transferable across technologies than the front end, and at the start you can rely on tech lead/senior devs to have that knowledge for you.
Wouldn't be the first time industry research results were conveniently aligned with profits, but I'm obviously not accusing anyone of anything as my evidence is 100% anecdotal and any research is better than none.

I guess it's just that users are stupid? Like, I know calling users stupid is a bad trope and all, but this is one of those cases where the behaviour just straight up wouldn't produce usable results. Like, if they're looking to buy a bike, will they just search for "bike buying apps"? I get looking for "apps to buy things with" (like amazon, wallmart, whatever) and then picking one and seeing if they offer bikes, but looking for the product directly??

This actually seems to also contradict the recent trend of people moving to big apps like DoorDash and Amazon replacing individual apps with different niches like the McDonald's app and apps from smaller retailers. If you're looking for "buying a bike" the Amazon app won't even be on the list...

Again, all of this is my logic, I have no evidence. This is just one of those situations where something goes so strongly against my intuition that I can't imagine how it could possibly be correct. I'll have to look for some real research on this, if any is available...
parentheses matching is a surprisingly non-trivial problem. (i.e. simple counting of opening and closing parens isn't sufficient, given that quoted parens shouldn't be counted) For humans, ignoring quoted parens is maybe easier, but i would say it's a flex to assert that you can tell if (3,(g(f('('),x))) is balanced at a glance.

even if you can, surely you're wasting time and/or focus on an automatable task.

But we all have something we do 'the hard way' because it feels like more effort to relearn the task than its worth, or because we tried the easy way once and were put off by some side-effect.

paren highlighting never comes as a single unit, its always packaged with other 'helpful' tools, some subset of which will always be infuriating to someone.
At that point you might as well ignore the fact it's JSON and just treat it as a stream.
I think here you need to draw the comparison to an Irrevocable Letter of Credit (LOC) and those are intentionally set in stone.
https://sonomotors.com/ - if they make it. I like their solar-augmented car, and it's not terribly expensive. But they need a lot of money to get the production started.
As a backend developer I think it's easier than frontend, but at the same time my company can (over time) hire frontend developers, but good backend developers are basically impossible to hire, at least here in London.
I'm by no means an expert in the field but I do find it exceptionally interesting so i try and keep tabs on some of the research done by people who originated from the same group as Kenneth Stanley.

Seems like many from this group now pursue open-endedness in AI and view evolution as a way towards this goal (or lack thereof).

A very interesting evolution (ha!) of these ideas was presented in POET[0] towards evolution of agents in evolving environments.

There is also an interesting paper about accelerating neural architecture search when generating fake training data in generative teacher networks[1].

Lastly, a paper that i find very very interesting but might not be as relevant but still is 'First return, then explore'[2]

[0] : https://eng.uber.com/poet-open-ended-deep-learning/

[1] : http://proceedings.mlr.press/v119/such20a.html

[2] : https://arxiv.org/pdf/2004.12919.pdf
I am very fond of things akin to vim's 'showmatch' mode where when I close a paren or block or etc. the editor highlights the opening element for a second or so and then returns to baseline.

(I have almost no -ambient- highlighting in my baseline but I know lots of people who do and still derive great value from showmatch for the feedback - from discussions with other people rainbow parens style lisp modes seem to provide a maximum overkill approach to that question but I very much prefer maximum underkill in my own tooling even while wanting to be very sure I'm not making it unduly difficult for collaborators with opposite preferences)
"Cause is not something you find. Cause is something you construct. How you construct it and from what evidence, depends on where you look, what you look for, who you talk to, what you have seen before, and likely on who you work for."

This is not a universally true statement. It is only true when you don't have enough information. The statement confuses the physical world with our mental representation of it.
I'd say the opposite because of responsibility. A bug in the BE can cost a lot of money and time to your business, not so much (usually) in the FE.
Good definition for it and similar terms: https://web.stanford.edu/class/e145/2007_fall/materials/Curt...
Ask HN: BlackFriday is coming, what's the impact on your work?
Personally, I have gone from IDEs to vim + language-servers. I get all the benefits of an IDE that I want, and no useless clutter of features I never use or are better solved in CLI.

One reason is that IDEs' vim-plugins never work quite well. Another one is speed and resource usage. Resource-usage may be solved with thin clients, but not speed. Also I don't want to give up control to some platform.
Can this benchmark be written using sync.Pool mentioned in the article? If so, then that should be accepted since sync.Pool comes in stdlib.
Signal handling in concurrent apps with Ruby and Polyphony
It's the other way around. What you can't see is harder to sell.

However, because people like to see things, there are more people wanting to do frontend and hence the compensation is lower.

The same with game developing. This is definitely not easier than frontend or backend, probably harder. But still paid less, because it's so popular and many people want to do it.
it's both. administration/bureaucracy is behind both. university or megacorp they both overcomplicate things. they overextended because there's no real pressure pushing against that extension.

sure, good intentions are pushing for doing more, more inclusivity more security more assessment, more reports, more measurability (to get more fairness), etc.

and since it's hard to start a competing university or ISP or telco or TSA (!)... there's not even the usual push from the market to be resource efficient.
Organized Retail Crime in the US and How Ecommerce Turned It into a Big Business
There's a function in my ISP-provided internet router/gateway that allows me to disallow incoming connection on ipv6 address.

I guess you should implement this too?

If my understanding is correct, it's equivalent to using -m state --state ESTABLISHED,RELATED -j ACCEPT in linux/iptables where -P DROP is the default input policy.

Basically you allow ipv6 tcp traffic only for tcp connections initiated from within.
Backend context is more in your control
Frontend context not so much.

A backend engineer usually does not write code to run on multiple different versions of CPU. A frontend engineer has to support multiple browsers. A backend engineer worries about scale, a frontend engineer not so much. https://ashishb.net/tech/server-vs-mobile-development-where-...
If you remove all unnecessary complication, then front-end is probably easier in general. But, front-end is usually rife with complication.
They are throwing the CFAA at then. However, the CFAA is an American law, which would be challenging to apply in a foreign court. So they are using the EULA to sue in California. It’s all in the article.
How do you compile it to a single blob?
Also, spam Ctrl+C if you're gonna issue a new command after being AFK for a while.
In web development the average wage for frontend work was lower because the skill level required was lower. You don't need a lot of knowledge to be effective at building websites with HTML/CSS/Photoshop and a sprinkling of javascript/PHP.

During the same time wages for people building frontends which needed more engineering knowledge (early mobiles, WinForms, those horrible old Java frontends) were higher because there were less people capable of doing the world.

In 2021 web development has moved on to the point that we're often building websites in fully features programming languages with heavyweight frameworks (React/Angular). They are paid well. You still see people who work with HTML/CSS/Photoshop and they are generally paid less.

See: Quality Assurance and the different between people who can test manually and who can automate their work.
See that's what I want to talk about.

We're moving towards a world where ML can generate code that compiles from a single comment.

We have games like Battlefield now providing no-code options to FPS gamers.

There are literal super computers that can spin-up environments in seconds, run a test suite and report back, all to give a little tick on a PR.

Yet the IDE still just gives a messy error message if you forget a semi-colon or quote in the wrong place.
Easier in some ways, harder in others.

Easier:

+ You don't need to write a thousand edge case code to cover different devices

+ There's less "trial and error" trying to figure out what sequence of CSS properties is needed to adjust some of the simplest of designs

+ More choices of languages available (should Javascript / Typescript not float your boat)

+ More consistency in that you only need to worry about your backend language and maybe SQL (if you're not using an ORM -- which frankly developers shouldn't imo)

+ Easier to write unit tests

Harder:

- Lazy code becomes more than just an annoyance, it will have performance impacts on your servers thus directly costing your company more money

- You can no longer rely on other people to deal with security for you. Mistakes aren't just going to be rendering bugs

- You don't have something immediate that you demo if there isn't already a UI mocked up

- You need to rely more heavily on unit tests

And if your back end developers are also doubling as DevOps then your job will get exponentially harder still as you then have to manage infrastructure as well. But a lot of places will have dedicated infrastructure guys.

Personally I much prefer backend development to frontend development. I (personally) find it more predictable and easier to reason. However a lot of people prefer frontend development if just because you get to see instant results of your code
It would be nice if things were fair but that isn't how the market works.
https://www.spacemacs.org/ is the vim+emacs dark side. [resperator sounds]
This is an interesting case.

But in the long term, its also seems Apple can sue anyone who hacks the iOS, eg mods and rooting
The part of it being slower moving is definitively true from my point of view. Things I learn 10 years ago is still useful and relevant today, and I can easily build "backend" application knowing what I learn in 2011. Sure there are updates, better patterns, and new feature, but the JavaScript frameworks we used then are obsolete, legacy or unmaintained.
There's also ref which is almost like pointers and safe. Span/Memory do not remain an absolute last resort, they are becoming the standard way for string formatting/parsing/(de)serialization and IO.
Watergate was an actual conspiracy, that consisted in trying to hide Nixon's shenanigans. Real conspiracies exist. Most of the time if not always, their aim is to hide something inconvenient, not to produce some dramatic evil result. The very plausible conspiracy here is that the Chinese government and some foreign individuals are trying to hide an accident. An entirely implausible conspiracy would be that the virus was deliberately leaked, which makes no sense however you slice it, based on both motive and technical aspects.
> Obvious solutions are "where allowed_user_ids = ... big list" or "where disallowed_user_ids NE ... small list"; the latter not a solution as you can't optimize this query with a normal tree-like index.

This is not exactly an answer but it's worth remembering that the lower the selectivity of a condition is the more likely it'll turn out that brute force and ignorance will actually work out better - loading data in batches and filtering out the ones that are disallowed by a secondary positive index lookup (assuming you've pre-materialised your 'is disallowed' list) could easily turn out to be a better option for a lot of cases than trying to be more clever than that.

The more general question is of course rather more complicated and interesting, but other people already had better answers than I do there in other replies.
I have not ever had a good experience with an IDE. They are always bloated messes that try to force you into their shitty project structure.
Originally the web browser was free (Mosaic). The project name "Mozilla" stoood for "Mosaic killer". Then Netscape tried to charge for their web browser, something like $39 for businesses to use it. They also tried to license web server software. Microsoft supplied IE and IIS for free with Windows and the rest is history. Yet people are still trying to find ways to make money from a browser. No one is going to pay for a web browser, so they try to sell out the users of the software to advertisers. Not much of a value proposition for users. Today, so much great software has already been written and is free. No advertising needed. The reason for all the surveillance, the ads and tracking, is greed. The software for using the web has been written already, many times over, it does not need financing. Sadly, the "modern" web browsers have become tools of manipulation and surveillance, too large and complex for any web user to build themselves. It is a travesty. These gigantic kitchen sink programs are written for advertisers not users, because users, including businesses, will not pay for new web browsing software. What they have already works.
> Your web server parses HTTP headers with a hash table? Might very well be exploitable.

That is why you shouldn't use hash tables in code that might (even potentially) become a target for DoS attacks.
This also contributes to increasing China's global influence, which means reducing the US's. Proxy economic war, rather than colonialism, imo.
Aren't log files processed a line at a time? Last time I had to deal with some structured log, I streamed lines concurrently into json parser and it went pretty fast.
Programming is hard. Learn to do both - don't pigeon-hole yourself. You will be drowning in job offers after 5 years.
Show HN: Passive generation of bidisperse foam with microbubbles
I made the move from pure back-end to full-stack some years ago. I find that backend paradigms tend to not evolve as quickly, so perhaps this pace suits you better.

The consumer of a back-end is either a front-end under management, or via public APIs, and both usually live a lot longer than most JS frameworks and website designs.

Still, if you don’t mind drawing things in browsers and just don’t like the pace of things, you could pick a front-end framework designed to have a low rate of sudden changes, e.g. Elm.

Either way, if you’d prefer not to have to learn too many new things, learning how to make back-ends with Node and ES6 probably provides you with most value in the shortest time. Just say no to new dependencies all the time. ;)
Three months?! I'm guessing he's never written any.
Quick Tips Regarding Full Home Renovation in Toronto
A home is the most comfortable and safest place for its residents, but people still prefer other buildings’ designs over theirs. The first solution that might come to your mind is getting a new color for the interior as well as the exterior. To get the best results, you should look for full home renovation in Toronto. It does not change one aspect of the house, instead, you can get a brand new design and structure for your already-beloved home.