News for hackers. Stuff that matters.

Kototama

They did: "Elise [...] worked in the past on Nintendo Switch hacking"

This was written on the original posted page (before the link was changed) when you commented.

If it's for a hobby project it can be fun to work with Common Lisp and see all the good things such an old language still has to offer and where it's still superior to more modern languages. You also don't need to deal with the JVM and will have nice stacktraces (Clojure stacktraces are a mix of Java land and Clojure land). However the ecosystem is very thin so you might have to implement more stuff yourself or being blocked on something (no asynchronous programming for example if you need a very high performance web application). It's not rare to search for a library and find that the last edit was 7 years ago. Maybe it works, maybe it does not, but it surely is not maintained.

The interactivity in Common Lisp is a bit better (navigate the stacktrace, debugger, object inspector etc) but the Clojure REPL is also very good and allow to change the code of your application live without recompiling the whole project. Clojure is a functional programming language, whereas CL is multi-paradigms so it's easier to deal with state in Clojure. The ecosystem of Clojure is much richer and you can always fallback on the endless Java ecosystem if something is missing.

Re:The Synology End Game on Friday August 29, 2025 @10:27AM (#45064593)
You could have a big external USB drive and try a deduplicating backup software such as borg backup or restic.
Re:The Synology End Game on Friday August 29, 2025 @10:26AM (#45064574)
You could activate the sshd service and log in to the NAS.
Re:The Synology End Game on Friday August 29, 2025 @04:27AM (#45061586)
You can use Synology Hyper Backup (or any cloud backup program) and an AWS S3 compatible provider, such as Backblaze.
Re:All Kindles can now be jailbroken on Monday February 17, 2025 @11:05AM (#43080321)
Books as a unit of time. Interesting :D.
> Typed languages are essential on teams with mixed experience levels

I like this one because it puts this endless dilemma in a human context. Most discussions are technical (static typing ease refactoring and safety, dynamic typing is easier to learn and better for interactive programming etc.) and ignore the users, the programmers.

Because software is built on shifting sands?
Re:Using Guile for Emacs on Monday December 16, 2024 @01:26PM (#42433762)
You can always make magit behave as a standalone program if you wish. For example https://github.com/gizmomogwai/magit
Re:A solution to The Onion problem of J. Kenji Lopez-Alt on Tuesday November 26, 2024 @11:09AM (#42246926)
You need to cut in the direction of your body in some cases (for example when carving wood).

Two things to prevent injuries: a) never put any force if the material resists b) do it slowly.

Re:Relativty: An open-source VR headset for $200 on Friday November 15, 2024 @05:11AM (#42145492)
It's even more confusing for non native speakers.
Re:Throw Out Your Black Plastic Spatula on Thursday October 31, 2024 @06:55AM (#42005509)
You need to preheat the pan and not cook at a temperature where the oil polymerizes or the ingredients can burn. When you put something sticky in it, you need to wait a bit for the crust to form before moving it.
Re:Throw Out Your Black Plastic Spatula on Thursday October 31, 2024 @06:52AM (#42005489)
Exactly. Even the Lodge manufacturer, for example, indicates on their website that you can use a small amount of soap.
This is not correlated. Android has sandboxing and you can run your own applications.
Re:How to Write a (Lisp) Interpreter (In Python) (2010) on Monday March 11, 2024 @09:38AM (#39668080)
Curiosity beyond your own tools
Re:The Evolution of a Haskell Programmer (2010) on Wednesday March 06, 2024 @11:59AM (#39617997)
Don't forget LEGO® Serious Play®.
You mean embedded-hal, not embedded-hat :-)
Re:Orgzly Revived: a community-maintained version of Orgzly on Friday February 16, 2024 @07:14AM (#39395904)
It would minimize the synchronisation lag between the other machines, being more often started.
Re:The Erlang Runtime System on Thursday February 15, 2024 @10:06AM (#39383515)
It's not really hard to onboard new engineers with Scala, Clojure or even Ruby backgrounds. The language is easy. It takes a bit of time to learn the OTP patterns but so does learning any frameworks / tech stack too.
Re:The Erlang Runtime System on Wednesday February 14, 2024 @11:42AM (#39371920)
I have no experience with Kubernetes but my understanding is that Erlang/OTP is conceptually much simpler but also answer a different problem. Some stuff overlap (like restarting services/apps) but not all: for example there is no autoscaling in Erlang/OTP. I know that some companies use both in their stack. Kubernetes is language agnostic.

Erlang/Elixir is amazing because it brings so much good things and they are not that difficult to learn with some experience with functional programming.

Re:The Erlang Runtime System on Wednesday February 14, 2024 @11:26AM (#39371753)
> How do the supervisor trees avoid a single point of failure?

They do not. Supervisor trees are a way to manage failures at the level of one node.

> How would I tell the cluster that there should be N processes running, each on a different node?

It's not something that is builtin in OTP. There are libraries that solve it, like libcluster.

> And is there anything in OTP that would help me elect a leader or do I still have to implement that myself?

Not directly in OTP but there are libraries, for example for raft.

Ok so why is Erlang/Elixir/OTP good then? Well first it makes a single running application more robust to failures thanks to its supervision trees but it also allow to build distributed applications more easily. GenServers allow to build robust services very easily with common patterns. Local calls or remote calls to GenServers are the same, allowing to scale services. Message passing and pattern matching is part of the core of the language (no need for protobuf for example). Observability and introspection is excellent when a problem arise (inspecting processes, their memory, their message queues, the schedulers etc). Immutable datastructures and processes that do not share memory also make it easier to scale horizontally, at a cluster level. And probably lot of other good things I forgot :-).

This makes moonwalks very dangerous.
Re:Improving my Emacs experience with completion on Monday February 05, 2024 @09:34AM (#39261608)
You think they are outdated because you did not find the cross on the UI to close them once you noticed you actually had to LEARN them to use their power?
I wonder how many people buy such products once it's displayed on the frontpage of HN.
Re:An implementation of Common Lisp targeting Lua on Friday November 10, 2023 @05:41AM (#38217284)
Does anybody know of something similar for Go? I think it could work well: both languages use mutable datastructures, have a GC and are expected to be reasonably fast. It would bring all the Go libraries to CL.
Re:The Top Programming Languages 2023 on Monday September 11, 2023 @08:55AM (#37466527)
Ah ah :-) It has been so long I actually copied it from a website.

But I had to look after your comment and Java can cope with no package declaration! https://stackoverflow.com/questions/2335211/what-is-the-defa...

Re:The Top Programming Languages 2023 on Monday September 11, 2023 @08:38AM (#37466329)
Nothing like a short

class HelloWorld { public static void main(String[] args) { System.out.println("Hello, World!"); } }

to start a nice journey into programming, right?

Cassandra is more close to AP whereas MySQL with clustering is more like CP. So they serve different purpose. See this nice discussion on Stackoverflow: https://stackoverflow.com/questions/36404765/why-isnt-rdbms-...

> Also, whether you need a highly available database for a company like yelp is an implementation detail.

You surely know better than them what they need, that's impressive.

Cassandra is highly-available, your suggestion is not.

Older »