skysight-inc/HackerNews huggingface dataset:
That was one issue I mentioned. You know that. You read my comments.

However, I will take your snarky reply and turn it into lemonade by using it as an opportunity to talk about how often development teams fail to consider the social implications of their changes. As is mentioned in another comment on this post, the Python team seems to readily admit in retrospect that they didn't predict the pain of having no clear transition path, etc. I think another lesson to take from this experience is the realization that if you create some big "line in the sand" update, you may absolutely inadvertently encourage bad development practices. If the Python 2-to-3 transition had held "ease of transition" as a core value, then it is more likely that that value would have been modeled downstream. By instead initially declaring that the 2-to-3 transition was going to be some watershed moment and people were going to have to update everything, it is not surprising that it could encourage people to just pull the trigger on a bunch of breaking stuff they wanted to do, and come to the (incorrect, but understandable) conclusion that they didn't themselves need backwards compatibility since the entire ecosystem was going through a "unique" non-backwards-compatible change anyways.
Angular2 is a model for breaking changes IMO. The naming convention is a travesty, but the upgrade process was really elegant. The biggest bits:

- Added some stuff to AngularJS to make it more Angular2 compatible so that you could get closer to the target without taking in the breaking changes

- A thing called ngUpgrade let you dual-boot AngularJS and Angular2 together, so that you could transition parts of your program over time without needing to redo the whole thing

- Well documented migration guides for each step, outlining what you need to do in order to move from X version to Y version.
Correct according to whom?
So imagine you're a European in the new world... but also you can't breathe the air, go outside your tiny room, and are constantly being bombarded with radiation.
"Second most powerful military in the world"? What world is that? Russia isn't even the second most powerful military in Europe or in Asia. At this point, Russia is on the verge of being the second most powerful ex-Soviet state.
The POSSE term was popularized *years ago* by the Indie Web group: https://indieweb.org/POSSE

....Of course, its quite nice that present-day trend is picking it up a tad. :-)
This is normal for open source. You get what you pay for, and nobody is paying for test suites for potential future users to freeload off of. Why would numerical libraries be any different from OpenSSL pre-heartbleed? And how would you fix this issue without spending other people's time and money on things they don't want to spend it on?

This is why subtle compiler rule changes are so potentially devastating.
Software devs dont let friends use Wordpress.

(I kid of course but would never touch it myself for the obvious problems it has)
In the instructions I think there is an error. It highlights ‘F’ halfway green and in next step it turns out that letter should be ‘E’. Isn’t F subset of E except for missing bottom horizontal piece? Why isn’t the whole F highlighted as green.
Please write a breaking news article about a leaf falling from a tree
> there just isn't the infrastructure in place to keep Abrams etc in the fight.

Afaik, while that's true for Abrams, it doesn't hold for Leopards. Maybe someone more knowledgeable can comment.
What advantage does this have over RSS?
You can always read it first. It isn’t much different than pip or apt.
You shoot yourself in the foot pretty hard regarding point 2 (scalability) if you have your microservices share a DB.
I don't think you realize how many people who you'd consider "poor" drive a car including in the periphery of urban areas that are theoretically served by good transit but in practice almost every trip at the periphery comes with an additional bus transfer that adds a ton of time and is a huge drag on your employment prospects, for example the I95 area around Boston or the I495 area around DC.

If you are starting from scratch a personal car is literally the 3rd thing you seek out (shelter and employment are tied for #1) because of the massive freedom it affords you to be more selective in your choices of shelter and employment letting you "level up" from there.

These people who are just on/over the cusp of the transition between those two living standards got kneecapped by inflation (mostly food/fuel initially and then kicked while down by the rent a little later) way harder than the middle class who's got more room to trim fat.
Here is an analogy that can inform the implications of this (so-called, imo) architecture:

Imagine if you are responsible, at runtime, for linking object files (.o) where each object is a just the compilation of a function.

Now why would anyone think this is a good idea (as a general solution)? Because in software organizations, the “linker’s” job is supposed to be done by the (“unnecessary weight”) software architect.

Microservices primarily serve as a patch for teams incapable of designing modular schemas. Because designing schemas is not entry level work and as we “know” s/e are “not as effective” after they pass 30 years of age. :)

> monolith

Unless monolith now means not-microservice, then be aware that there are a range of possible architectures between a monolith and microservices.
Fwiw, here's a bullet point summary by ChatGPT:

-ATMs were originally introduced to banks as a cost-saving device, allowing for routine transactions such as cash withdrawals and balance inquiries to be handled by machines rather than tellers, freeing up tellers to handle more complex transactions.

-The basic transaction at an ATM can be seen as not a withdrawal, but rather a sale of paper with mystical properties (cash) in exchange for money, often with a convenience fee.

-Transactions at ATMs require real-time confirmation of availability of funds and cannot use the same "rails" as other transactions in the economy, making them vulnerable to fraud.

-Using an ATM owned by the same bank as the account being accessed is straightforward, but using a different bank's ATM requires more infrastructure and relationships to ensure smooth and secure transactions.

-"Off-premise" ATMs, owned and operated by non-bank entities, became popular in the 1990s, charging a fixed convenience fee for cash withdrawals.

-Interbank networks, such as Cirrus, were created to streamline relationships between ATM operators and multiple banks, increasing the reach of any ATM bearing the network's logo and allowing for smooth transactions between different banks.

-ATM transactions involve a series of offsetting deals between the customer's bank, the ATM operator, and the interbank network, with settlement occurring later.

-The expansion of interbank networks and increased use of off-premise ATMs led to the creation of independent ATM deployers (IADs), who manage the placement and maintenance of ATMs for a fee, rather than owning and operating the machines themselves.

-Offering cash back when using a debit card at a store allows the store to save on banking fees for depositing cash and potentially earn float.

-Big Data has been used to optimize ATM demand for cash and minimize servicing trips.

-The use of cashless transactions is on the rise, but there are still challenges to overcome such as lack of internet connectivity and cultural differences in adoption of new technology.

-The future of ATMs is uncertain, with potential competition from mobile banking and the rise of digital currencies.
Doesn't Apple itself use AWS and GCP?
We used to break into the monitor for research sometimes too. Great times, no real OS in the way either.
I’m not lending money to the supermarket and paying for the privilege of handing it over to them.
Damn I was about to get one (have been thinking about PCIe accelerators) a few months ago. It sucks that we now have to predict future company decisions before buying their products, the only good side effect is more people will build instead of buy. But it's terribly inconvenient.
Find Your Company to Work For – Latest Jobs and News This Week in Tech
What part of the U.S. are you operating in?
They own three or four different warehouse spaces in the same complex. 4 units comprise the main studio + shop area, LTT Store has its own unit, Labs has a massive warehouse they're working on setting up, and I believe they still have the original Labs space they decided to not go with (or this is what became the LTT Store space). According to what Linus has said in the past, they own (not lease) all of these units.
Maybe with computer vision it could be a simple app on a phone and work for any table (after some calibration)?
Man Group Alpha Tech | Quant Python Engineer | London, UK; Sofia, Bulgaria & India | Onsite | Full Time
As a Quant Python Engineer in Alpha Tech at Man you will be working hand-in-hand with our Quant Researchers. Your challenges will be varied, and will involve implementing new trading strategies, building new research frameworks and quant libraries, prototyping new data feeds, development of new portfolio construction techniques or building risk analysis tools.

Our systems are almost all running on Linux and most of our code is in Python, with the full scientific stack: numpy, scipy, pandas, scikit-learn to name a few of the libraries we use extensively. We implement the systems that require the highest data throughput in Java. For storage, we rely heavily on MongoDB and Oracle.

We use Airflow for workflow management, Kafka for data pipelines, Bitbucket for source control, Jenkins for continuous integration, Grafana + Prometheus for metrics collection, ELK for log shipping and monitoring, Docker + Kubernetes for containerisation, OpenStack for our private cloud, Ansible for architecture automation, and Slack for internal communication. But our technology list is never static: we constantly evaluate new tools and libraries.

Alpha Tech has a small company, no-attitude feel. It is flat structured, open, transparent and collaborative, and you will have plenty of opportunity to grow and have enormous impact on what we do. We are actively engaged with the broader technology community.

o We host and sponsor London’s PyData and Machine Learning Meetups

o We open-source some of our technology. See https://github.com/man-group

o We regularly talk at leading industry conferences, and tweet about relevant technology and how we’re using it. See @manquanttech

Essential Skills

o A proponent of strong collaborative software engineering techniques and methods: agile development, continuous integration, code review, unit testing, refactoring and related approaches

o Expert knowledge in one or more programming languages, preferably Python

o Proficient on Linux platforms with knowledge of various scripting languages o Strong knowledge of one or more relevant database technologies e.g. Oracle, MongoDB

o Proficient with a range of open source frameworks and development tools e.g. NumPy/SciPy/Pandas, Pyramid, AngularJS, React

o Familiarity with a variety of programming styles (e.g. OO, functional) and in-depth knowledge of design patterns.

If you're interested, please get in touch with Milly Parrott - milly.parrott@man.com
I appreciate the spirit of this but the word fuck is all about how you deliver it. This article comes off a bit crass. Personally, as I get older, I realize it's more fun to find substitution words like "fiddlesticks" or the even more colloquial word, "fudge". Especially when youre so upset that all you want to do is say fuck.
Growing oysters is one of the few farming/aquaculture type operations I can think of that has very POSITIVE externalities on its surrounding ecosystem in terms of improving water quality/flood reactance etc.
Get your skiing in now, it's going to be a lot more difficult in 30 years time!

That or get ready for ski touring / back country skiing (hiking up into fresh snow with skins).
Berlin is far from a shithole. It's a beautiful international city with some problems, but compared to Paris' banlieues or New York filth and trash, all of Berlin's troubles are absolutely minute. For comparison, while there is some "gang" activity in Berlin, rival gangs beating each others in public swimming pools makes national news.
I'm not blind, but a relative turned blind relatively early in their life (when I was still a child), so it's been present in my thoughts at least. I love the take that there is an advantage - building stronger conceptual skills is what I'd say you're describing. In my experience it's quite difficult to find programmers with strong conceptual skills, so this rings true to me.
This is one of the reasons I dislike working in teams that lack 'old people'. Young devs still have a lot of mistakes to make that old devs have already made or seen. The young ones seem to see them as slow and difficult, but they also create stability and control.

In a start-up, having a team of young people will allow you to move fast, pivot and deliver. What you usually end up with though, is a tower built from spaghetti that's serving actual users. I see this again and again and then people get surprised that the software doesn't scale.
>benefit from mass viewership

Assuming that's something a blog's author cares about. But even if that is, you can always share a link to social media.
Yes. If you design a distributed system you need to consider the network traffic very carefully, and choose your segmentation in such a way that you minimize traffic and still achieve good scalability.

For this reason, I've been trying to push for building a monolithic app first, then splitting into components, and introducing libs for common functionality. Only when this is all done, you think about the communication patterns and discuss how to scale the app.

Most microservice shops I've been in have instead done the naïve thing; just come up with random functionally separate things and put them in different micro services; "voting service", "login service", "user service" etc. This can come with a very very high price. Not only in terms of network traffic, but also in debuggability, having a high amount of code duplication, and getting locked into the existing architecture, cementing the design and functionality.
$100 netbook.
>> because they keep people honest around module boundaries

Imagine a world where every pip/nuget/cargo package was a k8s service called out-of-process and needed to be independently maintained. We would have potentially hundreds of these things running, independently secured via mTLS, observability and metrics for each, and all calls run out of process. This is the abysmally slow hellscape that some are naively advocating for without realizing it.

It is relatively obvious what should be a library (json, numpy, NLog, etc), and what should be a service (Postgres, Kafka, Redis, NATS, etc.) when dealing with 3rd party components. It is also obvious that team scaling is not determined by whether code exists in a library or service from this example since all 3rd party code is maintained by others.

However, once we are all in the same organization, we lose the ability to correctly make this determination. We create a service when a library would do in order to more strictly enforce ownership. I think an alternate solution to this problem is needed.
> Western countries need to ask themselves: is funding a major proxy war against the second most powerful military in the world in our long term strategic interest?

Russia is a gas station that happens to have nuclear weapons, not the 2nd most powerful army in the world.
Russia is the second most powerful military in Ukraine as the joke goes.
I believe Steam/Valve offers their SteamNet for third parties, which is basically a non-IP VPN centered around low-latency. As an additional advantage, the network itself only allows you to talk to a game server when authorized, so attacking game servers is way harder, since the game server (software) itself doesn't have internet connectivity any more and is only reachable through that VPN.
You had said:

> Damore said that women biologically were inferior at science, that's what I am reading second-hand so might _also_ be filtered through a lens already.

That's a confession, or totally misleading.

He stuck out his neck only to those who appeared to welcome his supported and honest interpretation of the truth, only for the standards of discussion to change. He didn't post it on the open internet. If reality has asymmetries, don't blame him for reminding us of that. For example, barely after childbirth there are group differences in interest in people vs things.
FYI this website is blocked at my work as SOPHOS categorises it as "Sexually Explicit"
You're right, European wasn't the right word, it was more a rich / poor thing.

That's said, comparison to the US doesn't make sense, since it was only back in 2008 when Romania was added to the bloc.

We're mostly on the same page, I just assume it's a process rather than pulling the plaster off.
I see Berliners crying about their rent every day, but compared to Munich rent is still affordable in Berlin.
Broadly my heuristic for this is, "Would it make sense to run these functions in the other other?".

If you split up MegaFunction(){} to Func1(){} Func2(){}, etc, but it never makes sense to call Func2 except after Func1, then you haven't actually created two functions, you've just created one function in two places.

Refactoring should be about logical separation not about just dicing a steak because it's prettier that way.
In about 2004 my alcoholic mechanical-genius of a roommate looks at me and says: "I think this computer thing is staying; here's a cool fact: a car's differential is an adding machine, but it's analog and not digital." Making an analog device into a digital device requires finding a way to add saturation in finite time.

For differentials, this can be done by letting rotation represent the value of the device.

Here's the plan we sketched out in ~2005... let `D(x,y) = (x+y)/2` represent a differential (we used spur gear differentials because they're more robust & easier to manufacture). Then, if 1=clockwise, and -1=counterclockwise, then we get the following truth-table for `I0 := D(L,R)`:

I0 := D(L,R) ==
1 1 = 1
1 -1 = 0
-1 1 = 0
-1 -1 = -1

We then can use another spur-gear differential with a floating input and two palls on the floating (F) side and the output to "clamp" the result (which has to be scaled by 2x): `I1 := D(I0,_)*2`:

I1 := D(I0,_)*2 ==
1 F = 1
0 F = 0
-1 F = 0

Finally, we scale the output and add -1: `I2 := D(2*I1,-1)*2`, converting back to 1,-1.

This is an "AND" gate. You can build "OR", "XOR", "NOT", etc., fairly easily.

EDIT: A similar device can be made from those Japanese bamboo water gates. If you've got a bucket with a hole in it, then the bucket will drain if the amount of water coming in is less than going out. So, if the input is A, and the output is 3/2A, then if we've got two inputs we've got (A+A) > 3/2A. So, the result is that with 0 or 1 inputs, the bucket drains, with two inputs it overflows.

The bucket is attached to an arm, and it is the far end of the arm that has a channel with water coming in to the channel; notice, that the water in the bucket only controls the flow of the water in the channel; it is not the water in the bucket providing water into the channel.

If the bucket is full, then the channel is up and no water flows; otherwise the bucket allows water through. This forms a NAND gate.

I've never found a way to make this reliable, although I didn't really try.
Funny story - I had to go to Cheltnam on business a couple of years ago, and while I was there I was getting banner ads trying to recruit me to GCHQ. I'm guessing their staffing people don't have access to the whole file, because they were trying to recruit a foreign national with no security clearance for a job that pays 1/3 of what they're already making.
This is so cool. Is there somewhere we can subscribe to follow the development of the book?
you can use those platforms to market your blog. i’m literally doing this and getting thousands of views a month on a 2 month old site. that’s not filling the 99.99% — maybe just the unimaginative
Rust? What's rust? Is it any good? How much should I care? /s The point: rust has nothing to do with the article. Save your rust whatever for articles that do
Don't show me an individual blog, show me that content syndicated into a feed which I can comment on, interact with, create ad-impressions for, and recieve notifications about, all without ever leaving the feed site.

That's what I'm talking about because that's what it will take. No one has shown me anything like that, yet. Screenshots will be fine! But planet doesn't seem to do what I'm asking for, based on my (admittedly brief) look at it.
I wanted to take a programming class when I was 13, and spent a while learning C, only for them to only use scratch. Fast forward 3 years, I've spent a decent bit of time contributing to various open source projects, and have almost made the switch from C to Haskell.
I really like modular designs, but this article is missing some key limitations of monolithic applications, also if they are really well modularized (this is written mostly from the perspective of a Java developer):

* they force alignment on one language or at least runtime

* they force alignment of dependencies and their versions (yes, you can have different versions e.g. via Java classloaders, but that's getting tricky quickly, you can't share them across module boundaries, etc.)

* they can require lots of RAM if you have many modules with many classes (semi-related fun fact: I remember a situation where we hit the maximum number of class files a JAR could have you loaded into WebLogic)

* they can be slow to start (again, classloading takes time)

* they may be limiting in terms of technology choice (you probably don't want ot have connections to an RDBMS and Neo4j and MongoDB in one process)

* they don't provide resource isolation between components: a busy loop in one module eating up lots of CPU? Bad luck for other modules.

* they take long to rebuild an redeploy, unless you apply a large degree of discipline and engineering excellence to only rebuild changed modules while making sure no API contracts are broken

* they can be hard to test (how does DB set-up of that other team's component work again?)

I am not saying that most of these issues cannot be overcome; to the contrary, I would love to see monoliths being built in a way where these problems don't exist. I've worked on massive monoliths which were extremely well modularized. Those practical issues above were what was killing productivity and developer joy in these contexts.

Let's not pretend large monoliths don't pose specific challenges and folks moved to microservices for the last 15 years without good reason.
Can you explain why you can deploy microservices independently but not modules?
Looks like moral panic bullshit to me.
What’s next for the chip industry in 2023
I have no dog in this fight (probably will never use mastodon or this search engine) but I do find it ironic that this guy is being insulted for using a throwaway by people advocating for privacy on mastodon.
Very interesting way of presenting these informations. Quite educational and visual!
I’ve noticed that a lot of HN comments tend to be utilitarian, in an “ends justify the means” sort of way. This can lead to all sorts of ethical quandaries but it seems prevalent in business.