skysight-inc/HackerNews huggingface dataset:
I am verry happy with `screen` which I use for ~10 years.

Hear about `tmux` here and there, but so far not sure about the benefits. Any particular reason it's better over `screen` ?
Indeed. That's the way to reason about correctness of opaque functions.
Show HN: An Open-Source Collaborative Database Development Tool
A couple of years ago, we had an interesting idea. When a development team within an organization consists of around 10 members or fewer, controlling the risks associated with database changes might be achieved through trust and real-time communication. However, as the team grows, the responsibilities within the team become more specialized. Imagine a scenario where different branches of the business exist, each with its own set of developers, team leads, testers, testing leads, DBAs, and more. Relying solely on traditional communication methods becomes increasingly challenging when it comes to managing change risks.
Envision a platform where a change request goes through a sequence of checks: it's first reviewed by colleagues familiar with the business, then approved by the business lead, followed by scrutiny from the database lead, and finally assessed for security by the security lead. Does this approach effectively control the risk associated with that change when it's executed?

In 2019, we embarked on building the first piece of this puzzle: ODC. Fast forward to today, after more than three years of development, ODC has evolved from a specialized developer tool designed for OceanBase (OB) into an enterprise-grade collaborative control platform, with plans to support multiple data sources.

And today, we are thrilled to announce that we are open-sourcing our project. You can find the entire four-year code history on GitHub (https://github.com/oceanbase/odc).

We're excited to hear your thoughts on this concept and whether you identify any potential challenges or opportunities that lie ahead. Your insights will play a crucial role in shaping the future of this project.

Looking forward to your feedback!
I am very happy with SimpleX chat

I became concerned by signals newish auto-updating feature.

I dont like to keep allowing "Install unknown apps" then disabling "Install unknown apps" after every update. Its so annoying.

I considered Molly (foss) as an alternative to signal but SimpleX chat without using a phone number appealed to my thinking around privacy.

It took a short while to understand how to add contacts but as with using anything new it has now resolved itself and become part of my routine.

The audit was great and of course 3 out of 4 issues have been rectified and the one outstanding is in process

cool
> IMHO typescript could just cut loose from its javascript compatibility. Why not compile it to wasm instead of transpiling it to javascript?

My fantasy for the past year has been, if I could magically program anything, bringing a compiler and spec wholesale into the world out of the void, I would create a new language (call it WebScript as a placeholder) that

- featured an ML style type system, ADTs, a type syntax nearly indistinguishable from TypeScript

- whose actual core language essentially resembled Kotlin or "Go with exceptions"

- compiled to WASM or JS as a compatibility bridge

Nothing radical. Nothing revolutionary. Just these things would be an immediate plus.

But maybe AssemblyScript is a good enough step towards that.
Thanks, was unaware of the movie!
That may be the advice, but what I actually saw was: "Be really, really good at what you do and someone will notice."

That isn't possible for most people. They simply don't have the innate skills and drives that that person does. That person was always going to get a job because their passion shows through, and they do things.

It doesn't matter if it's open source or not. Having a code portfolio when you apply, even if it's a private portfolio, would always have shown their skills.
Lol, expecting your residence permit to not take 9 months to get renewed is Ambani level privilege? Expecting to get a doctor's appointment in a couple of weeks is privilege?

> If this level of greatness is true then why are you here? I can even tell you that even at this level of richness you won't

Believe it or not, it is true. You get paid more in India if you're an experienced and capable software dev than you do in Germany (unless you're employed by FAANG in Germany). As for why I don't do it - because even though I bitch about the bureaucracy and broken infrastructure, there are a billion other things that I love about Germany.

However just because I love a lot of things about Germany, doesn't mean I shouldn't criticize those things that are horribly broken - esp. when the politicians show no signs of wanting to fix them.
iOS 12 is way too new.

I have a Retina iPad stuck on iOS 9, which is now essentially an ebook reader and movie player.

I had two of them stuck on iOS 5. Perfectly working, cosmetically perfect, lots of battery life, but bricks.

Whereas I have a 1st gen Pro and a 5th gen (when the stock iPad got the Air form-factor) which both run the latest iPadOS, but their battery life is now a couple of hours if that. They're nearly useless.

I had a new battery fitted to the 5th gen. It is no better but now the screen is damaged with multiple artifacts visible.

There is no battery replacement for the Pro: it's too big and too fragile.

In other words, in important terms, the old ones were BETTER but they are now useless because of an outdated OS.
Perhaps it is resting.
Yeah it sucks, I basically only know programmers who can get by living here without speaking German.

But honestly, in which countries is that really different? The only ones I remember stories about would be the Netherlands and Sweden, but also only if you're living in a big city and not in a small town. Obviously I'm leaving out the countries where their main language is English already and assuming you speak English. And Spain if you come from a Spanish-speaking country, and France if you come from a French-speaking country... but overall I just think that this is the default?
Our society is an extremely complex system.

We're consuming and polluting more than the environment can handle (overshoot).

Our economy, consumption and pollution is growing exponentially, in a finite environment (one planet).

It would be naive that in this point one single solution would solve our problems forever.

In fact, we should repair as many things as possible in one go, to get to the equilibrium as soon as possible.

Few things that could get us on the right track:

- remove the drivers of the exponential growth (reform the financial system, degrowth, ubi)

- speed up the transition to renewables (while we have fossil fuels, peak oil is not far away)

- stop polluting everything (plastics, pfas, pesticides/herbicides ...)

- reform agriculture (leading driver of deforestation and biodiversity loss, overfishing)

- plant based diets (animal ag. is 80+% of all agriculture, free an area the size of both Americas)

- reforest/rewild freed pastures to restore forests, biodiversity and water cycle (no monocultures, multi level canopies, no harvesting, old growth)

- by reforesting animal. ag. lands alone we could store enough carbon to cause new little ice age and reverse the warming

- reform / automate plant agriculture - repair soils, stop pesticides/herbicides (insects, pollinators)
Nice catch :), except that I accounted for that above, that's why I quoted the parent's single line, to mean that the substitution applied only to it.

But it would have been more clear if I had written it thusly:

echo "I wonder about photography." | sed 's/graphy/shop'

Also, if the expression had been wrong, other words too could cause it to fail, like videography, filmography, orthography, etc.
Coming up next: free datasets, with sponsored preferences.
It takes time to adapt to a language and culture. You can't expect this before entering Germany. A professional is taking a chance with Germany, they are not refugees . Germany needs to be welcoming, it's not all 1 way traffic. Germany is not in a position to attract world's professionals acting this way
It might not be necessarily free.

From the story I got the V was looking to “switch jobs”.

From personal experience, I once had to work with an open source library at work. I got very familiar with the inner workings to the point that it wouldn’t have been to hard for me to contribute, and I did have a few improvements in mind. I never did that though.
How can a declining population selling mostly commoditized goods support ever increasing property prices, that too when property is already overleveraged!!

This crash was always on the cards. Just a matter of when, and the when may have finally arrived.
> Aren’t the salaries higher as well?

The killer is house and rental costs.

If you want a flat in central London you'll be paying half (or more?) of your £68k salary on rent after tax. In Canary Wharf you might not even be able to afford rent.

A £68k salary won't bring you close to being able to afford a mortgage, unless you have capital from other means e.g. inheritance.
> will encourage (and actually make some of) them to give something to the needy there.

or just drop by to get some food. "unmissable" :)
Is there any chance that CoPilot can help transform old-style C extensions into new style api code? (Since the transformation is probably going to be very similar for all those extensions).
Indeed... at least here in Europe, the occurence of sleepy truck trivers plowing into people dropped by quite a bit once logging switched from paper tachographs to GPS remote logging.

That doesn't mean I support this kind of logging for private vehicles (it really feels like the government overstepping the safety/freedom boundary), but it did have very positive effects on heavy road transport safety.
This style of doing things is very common in languages with a (good) REPL, think clojure or ipython. You keep sending snippets and iterating on them until they work as intended. For that, you don't need the full context of your program.

Not a LISPer but apparently in that land you could actually have the program running and a REPL attached to it, in which case, you actually do have all the program at your disposal.
I'm sure you _can_ find salaries that low but it's not typical. I started on £30k 6 years ago, and that company was infamous for underpaying grads! Most other junior developers I knew (at other companies) were on ~£40k or so.

£8/pint is also way more expensive than normal. I was out in Shoreditch last night, paid £6.70 for a pint of Brewdog, and that was more than I'd usually pay.
Here's some data corroborating this:

https://www.ons.gov.uk/economy/inflationandpriceindices/bull...

As you can see, London rents are increasing at an accelerating rate.
totally agree, for me golang is a strongly imperative language and that's ok. I'm willing to be proved wrong, but I would imagine if you want to do functional programming it's going to be a lot easier to just use a different language.
Right! I also used a Norton Commander clone written with Turbo Vision. You could mark several files (with Insert), then press F4 and voilà - you got multiple windows open! AFAIR, you could even do a "global search and replace" (across these windows). Powerful stuff.

Although coding in TV was much, much less pleasant than using it...

Now I use Emacs, which is obviously superior to any other editor except Vim, which is incomparable [0] to Emacs.

[0] https://en.wikipedia.org/wiki/Partially_ordered_set
And if you keep doing that the mods will take your flagging privileges away.
> My impression (from far on the outside) is that Racket has taken up a lot of the oxygen

For real world applications rather than education Racket and Clojure as well, in fact Clojure has taken up a lot of the oxygen across a variety of niche FP language eco systems. The Clojure toolchain and library support (much of it through the JVM and Java ecosystem) is excellent and far ahead of Racket for most of the same applications. But Racket starts faster and has a much smaller memory footprint. Depending on your workload and compatibility demands either the one or the other will be a clear favorite with Clojure coming out ahead.

But all of these and scheme (which I think is mostly propped up by virtue of being used a lot in education, I've yet to come across scheme in the wild) are very much niche languages. Clojure really does have an advantage of standing on the shoulders of Java and the JVM, without that I don't think it would have gotten as large as it did.
As another former Londoner reading this thread, I think the confusion is that we were told increasing density will increase the viability and availability of local services, but the opposite turns out to be true. The London of today has more per sq mile than twenty years ago in terms of floor space but in level of interesting activity it doesn't compare.

I will admit the Shard is cool, but you are absolutely right about Lloyd's. Those of us of a certain age consider anything designed by Richard Rogers to look like the future we aspired to.
Beautiful. Maybe it’s just the style of music but the example video is very reminiscent of Disasterpeace’s work:

https://disasterpeace.bandcamp.com/track/nocturne
These are not the people you meet in public sector and services
The way OP described it, yes, it sounds like a ponzi, but in reality it's more like crowdfunding. First, the developer takes credit from a bank and uses own money to buy a land. Then, in order to start construction, the developer sells what is basically an obligation to build real estate and transfer the rights to buyer. These obligations are obviously cheaper than the expected price of real estate in the future, and also cheaper than already-constructed real estate now. The developer does not sell all the future real estate at once, because as the time goes by, and construction comes closer to a finish, the obligations become more expensive - it sells only the amount necessary to fund the next step of construction. After the construction is finished, developer sells leftover real estate with a markup big enough to finance its next project.

When the housing market is good, this scheme brings real estate costs down, because you can buy cheaper "not-yet-build" flats or houses, and the developer can seek funding without overpaying on the bank loans. But if the housing market tanks, the development freezes, and the first buyers take a loss. I don't know about China, but in some countries such obligations are mandatory insured from the default, so people can get at least some of their money back. In others buyers are left with a piece of land with unfinished building.
quantify it
"Early to bed, early to rise, work like hell, and advertise!"
The question was about why not what is allowed as a guard. Perhaps this was not clear amongst the noise.
How do you split viewport to see multiple screens at once, how do you iterate over viewports?
Hah, love that you're showing White City, you've missed the gigantic residential development by Westfield and the big commercial White City Place that's continuing to go up.
Maybe just Baader–Meinhof phenomenon, but I do see way more "Britain is still a great place to invest"-type of messages recently in various media, and it's always a sad reminder of Brexit :(
I think at this point unfortunately regulators needs to start getting involved.
You are missing the point. Are other countrkes expecting professionals to move and help them out?
> Exceptions do this automatically for you by default (you need to explicitly override it with a try/catch block) but alternative approaches, such as railway oriented programming, require you to add in a whole lot of extra boilerplate code that is easy to forget and easy to get wrong.

The unfortunately missing part of exceptions (in mainstream languages) is that they handle this invisibly. Figuring out, at compile time, what sort of exceptions can appear inside a given function is not obvious.

That's the big payoff of ROP: you can look at any function signature and immediately know what sort of errors can come out of it.

Mitigating the downside of ROP (boilerplate) can be done to various extents, depending on the language. Haskell has do-notation. In F#, using the result computation expression [0] can make your code extremely clean:

type LoginError = InvalidUser | InvalidPwd | Unauthorized of AuthError

let login (username : string) (password : string) : Result<AuthToken, LoginError> =
result {
// requireSome unwraps a Some value or gives the specified error if None
let! user = username |> tryGetUser |> Result.requireSome InvalidUser

// requireTrue gives the specified error if false
do! user |> isPwdValid password |> Result.requireTrue InvalidPwd

// Error value is wrapped/transformed (Unauthorized has signature AuthError -> LoginError)
do! user |> authorize |> Result.mapError Unauthorized

return user |> createAuthToken
}

Could we do the reverse, i.e. mitigate the downside of exceptions? Is there a linter, code analyzer, or some other compile-time tool that can integrate with a Java IDE and automatically display the uncaught exceptions that might be thrown by a given line of code?

[0] https://demystifyfp.gitbook.io/fstoolkit-errorhandling/fstoo...
Not if one is so cushy it demands to be automated. This is what high-end manufacturing looks like on the cutting edge. If we want those jobs and fabs in America, something has to give.
Is that a photo essay on the commercial real-estate bubble?
The guy wants to drive an unsafe distance/time every day. How is it dystopian that rules and tech prevent this?

If he wants to get home, he can move closer or find another route. Or park the truck and drive his personal vehicle.
Of course, your opinion is yours to have, but honestly, the world has moved on from USB-A for new computers/phones/peripherals. I just bought a couple of those: https://www.amazon.com/Basesailor-Thunderbolt-Converter-Gene... and they stay on the USB-A cable - the price is low enough that I can justify the expense for my 5 or so older peripherals.

The USB-A socket is too big for the slim form-factor of ultrabooks and tablets, and it won't make a come-back.
The horror on my PM's voice when I showed him this library was funny. Instantly blacklisted it in my organization.
Nah. I live and work in Luxembourg. Workers rights are very similar.
Or this: <https://www.reddit.com/r/ProgrammerHumor/comments/uosex4/no_...>
They're doing this region by region and I came across it South Africa as well yesterday. Apparently, you need just one video in your watch history and then switch off watch history to circumvent this. But then maybe your recommendations will suffer as a result of this.

They could just recommend videos from your subscribed channels, but then it wouldn't be to the benefit of Google's nefarious plans.

Now I make sure never to watch directly on YouTube; I either download the video or use a 3rd-party app like NewPipe where I only see videos of channels I subscribed to. It's much better this way as YouTube is 99% junk.
>Scheme may be a small island, but when it has an earthquake, it makes waves through the whole archipelago of programming languages.

It's more like people are addicted to drama. Following something like this when you don't use Scheme is like watching reality TV. It's human nature.
I'm using Bhyve and doing PCIe passthrough of some NVMe's to a Linux guest.

To my slight surprise, PCIe passthrough was device dependent, ie not all PCIe devices were supported. I'm running TrueNAS which runs a slightly older FreeBSD kernel, and from what I could gather GPU passthrough would not work there. IIRC the latest FreeBSD has some support for that.

But network cards should work, and NVMe's definitely work.

However it wasn't straight sailing. Using the approach from the wiki[1] did not work directly, I had to mask the devices using a pre-init boot script with

devctl set driver -f nvme1 ppt

[1]: https://wiki.freebsd.org/bhyve/pci_passthru
Groups of humans bigger than 10 can, with planning, catch pretty much any wild animal, even without equipment. Simply digging a hole and tricking the animal into it is one approach.

Obviously the large animals that have a lot of meat (and might knock down your house) are an obvious target to catch.
> there is no such thing as a skill shortage or work ethic concern in a free market

Agree on the latter, not the former. You can pay infinitely for a skill, if there literally isn’t anyone with it and you’re barred from importing those who can, that is a locked market.
Yes, this is a monad tutorial. It's concrete and specific and doesn't attempt to generalize, but it's explaining an application of monads.

And yes, the approach described, if followed naively and robotically, reinvents a clumsy kind of checked exceptions.

As another comment https://news.ycombinator.com/item?id=37173435 points out, after learning and before serious application, it should be leavened with caveats: https://fsharpforfunandprofit.com/posts/against-railway-orie...
Typically real estate companies use properties as collateral for loans. So they can't sell those properties unless they pay back the rest of the loan at the same time, which they probably can't.

They might have some properties that are not collateral, but even selling those imposes a problem: in the current market, most likely they will be sold well below book value. This automatically devaluates the value of any other property which they would like to use in the future for collateral and it will make existing lenders very nervous as well.
I think people are reading too much into “going to it on an empty stomach”.

It is not about empathy.

Rather, it is being treated as a highly rated restaurant that gives you a lot of food.

I have seen reviews of restaurants like buffets and other restaurants that give you a lot of food recommending you go there when you are really hungry.
It's relatively common IME to see cynical, anti-government sentiment from HN commenters. Perhaps these comments are aimed at the US. But stories like this out of Norway show that not all national governments are useless. Some national governments are trying to address the problem of so-called "tech" companies.
I love fuzzing as a technique and use it quite regularly and I'm even the maintainer of AFL++ in Fedora. But running AFL++ on even a single program occupies all threads of a high end AMD server for weeks. I'm running it locally so merely paying for the electricity. If it was a cloud instance it would cost a small fortune. I think this is a reason it is not used more widely. In addition most CI systems assume the tests will run in a small finite amount of time, not run for weeks on end.

I will note that Google have a programme for doing fuzz testing on open source projects using compute from their cloud: https://google.github.io/oss-fuzz/
Would replacing the word "foolish" with "naive" be better? Because that's what I intended to convey. Bad choice of words there.
I think they meant batteries you can swap without taking the machine apart, like old laptops had
i did not see much change, check out nyc
Here is a super basic example of running rails code: https://cln.sh/xXNlf51m

Now imagine instead of a empty rails shell, I had my server running there and I can set breakpoints. Or why not both a shell and a server?
London is actually surprisingly cheaper than many cities in US. You just have to find your place based on the budget. I lived in Ealing area (sure it’s far from many actions but lots of great ethnic food in far cheaper price than anywhere else) in a quite a spacious apartment and it was half as much as what I spent in both two cities I have lived in US. And the tube is excellent (compared to our public transport standard). I actually somewhat miss my time there. It was safe (again based on my standard in US) and I didn’t really need a car.
Yes, it is a rolling distribution with some nice features.
https://linuxlifehacks.com/rhino-linux-ubuntu-based-rolling-...
It is also lightweight because it uses Xfce.