Hacker Newsnew | past | comments | ask | show | jobs | submit | sleepy_keita's commentslogin

I'm still pre-launch, but I've attended (and presented at) a couple conferences / industry events for my SaaS in Japan. You can get a lot of traction by getting out there and actually talking to people. Networking is important (probably this is the same anywhere?) and talking to other presenters is as important as talking to potential customers, because you can get that relationship going for mutual benefit.


Humans can work with these cases better though because they have access to better memory. Next time you see "iteration_count", you'll know that it actually has a sum, while a new AI session will have to re-discover it from scratch. I think this will only get better as time goes on, though.


You are underestimating how lazy humans can be. Humans are going to skim code, scroll down into the middle of some function and assume iteration count means iteration count. AI on the other hand will have the full definition of the function in its context every time.


You are underestimating the importance of attention. You can have everything in context and still attend to the wrong parts (eg bad names)


Improving AI is easier than improving human nature.


Unfortunately, so far coding models seem to perform worse and break in other ways as context grows, so it's still best practice to start a new conversation even when iterating. Luckily, high-end reasoning models are now catching when var names don't match what they actually do (as long as the declaration is provided in context).


Or you immediately rename it to avoid the need to remember? :)


Yeah, it's named after the person who wrote the RFC - John Nagle. Wild coincidence! https://datatracker.ietf.org/doc/html/rfc896


hes on hn as "Animats"


Funner trivia is why he's named "Animats".


I've been on HN a long time and this comment was the one to finally make me realize that "animats" is "stamina" spelled backward.


See, I didn't even realize that --- wasn't what I was referring to! :)


Yeah. It used to be the go-to for starting simple projects. We have quite a bit of other options in this space now, though - GH Pages, Cloudflare workers, Vercel, Netlify, etc etc...


Those are static site providers. For actual server paas that can run docker containers, render.com and fly.io are what heroku could have evolved to.


They're saying that you have 3 banks of lights, each connected to one phase of the 3 phase input. That way, when only 1 bank goes out, it's easy to see that one phase is out.


Was just rereading - it was the radioactivity and the large natural satellite that was unique in his universe. Tides are interesting because once you have life in the oceans, it's a kind of forcing function to adapt to land conditions


Forcing function + making a stretch of land which is neither dry nor enterily wet. A gradient. If there are no tides the leap life has to make is much bigger.


And perhaps the advantages of this gradient extend up as far as aquatic apes.


Not sure what this means.


I assume they are referencing the long-debunked theory that man evolved from a line of apes that became semi-aquatic for a while.


Yup that's where I was aiming. Is it thoroughly debunked ? It's a cool idea.


Fascinating


Why are tides a forcing function? Marine life has been perfectly content just not going near a beach.


> Why are tides a forcing function?

"Nucleotide formation and polymerization are both more favored thermodynamically when subunit and nucleotide concentrations increase and the water concentration decreases (i.e., at low water activity)" [1].

Tide pools provide a regularly-cycling low-water and high-water environment. (And you get thermocycling, nutrient refreshment, and a path to the oceans, too.)

They're not a forcing function, generally, because we don't know how life formed. But I believe they're close to one in a RNA-first or metabolism-first origin-of-life universe.

[1] https://www.nature.com/articles/s41467-018-07389-2


Very interesting, thank you!


I was thinking more on the lines of "if marine life never found itself stranded on land, it wouldn't need to evolve to survive on the land"


I find it interesting how Rust is gaining momentum in tooling like uv and now rv.


Rust is the new C. Go had a shot but went in an applications direction. I predict that very soon, perhaps even inside of three decades, Rust will become the dominant, first-choice systems programming language.


Go can do just as well in tooling.

Microsoft chose Go for tsc rewrite. https://devblogs.microsoft.com/typescript/typescript-native-...

And then there's esbuild, also in Go, which revolutionized web bundling speed https://esbuild.github.io


It's important to note that Microsoft's choice of Go for tsgo was because it would be easier to port the existing TypeScript codebase due to the structural similarity of TypeScript and Go. If writing from scratch, they likely would not have chosen Go.

Which is not to say that Go can't do well in tooling. Only that Go was not necessarily their first choice.


How is Go structurally similar to TypeScript?

It doesn't even have advanced generics like TypeScript, nor union types. No classes and no heritance either.

Unless you have a source, I'd say that's a very debatable speculation.

My guess is they chose Go for the same reason most users do: it's good enough, easy to grasp, has a decent std lib and is easy to grasp.


https://www.youtube.com/watch?v=10qowKUW82U

Around the 13 minute mark, Anders goes into it. IIRC, the big things were the GC and them both supporting cyclic data structures.


Makes sense. Cyclic data with Rust is not trivial, to put it mildly. And GC does make things much easier.


GC vs no GC will impact your code structure more than anything else.


That is kinda my point though. None of those are kernels, device drivers, hypervisors, virtual machines, interrupt handlers, bootloaders, dynamic linkers; and writing such things in Go would be an uphill battle against the language's own design, much like the Go runtime itself. Being a GC'd language almost completely fences Go off from even being in the running for these, except for hobby projects trying to prove a point.

Universal applicability may not be necessary to write a Ruby installer, but it certainly is to have any hope of taking C's crown.


MS uses Go for tsc because they are basically doing a line by line rewrite of tsc from typescript to Go.

It's impossible to do this kind of rewrite from a GC language to a non GC one, especially Rust where the object soup of typescript will probably cause the borrow checker to explode.

I think that if MS or someone else decided to write a typescript type checker from scratch there is a high chance Rust will be chosen.


I love both Go and Rust but Go is GC no? Where rust shines is on its safety at compile time and lifetime/borrow/memory model imho

both are awesome tools!


GC is ok for these use cases. In fact with such short-lived processes, GC is probably not even running before it terminates.


I think Go is going away. It occupies such a weird niche. People have said it's good for app backends, but you should really have exceptions (JS, Py, Java) for that sort of thing. For systems, just use Rust or worst case C++. For CLIs, it doesn't really matter. For things where portability matters like WASM, can't use Go. Bad syntax and type system on top of it.

What if Google spent all that time and money on something from the outside instead of inventing their own language? Like, Microsoft owns npm now.


I always thought of Go as a middle ground between C and Python. From C it gets simple syntax, from Python - "batteries included" part.

Deserializing JSON and XML is a breeze from my experience. And it's available out of the box. But I guess C++ will get there with reflection having been approved in C++26.

So I don't think it will go away (in the coming years at least), since a lot of tools is written in it.


It's not that bad to handle some JSON in C++ or Rust. It can get annoying if you're doing it everywhere, but that's usually that's the kind of use case where JS or Python works anyway. Yes I get that some people prefer Go, but it's not necessary enough to guarantee that it'll stick around.


> For CLIs, it doesn't really matter.

Actually, I'd say this is where Go has a real advantage. Are any other mainstream languages both garbage-collected (for ease of development) and native-compiled (for ease of distribution)?


Yeah. Only ObjC and Swift, which nobody wants. But JS distribution is arguably easier than building for every platform. Google did that with Gemini CLI.

Also if you're ok being dirty, short-lived processes can just leak. Some of those Go CLIs are probably not even GCing before the program exits.


You can compile to WASM from Go.


Maybe - but in this case, Ruby is written in C, it uses C extensions when performance matters, but tooling for the Ruby language itself is all in Ruby. Rust isn't replacing the use of C in the core of Ruby (yet) - it's stepping in to the area where Ruby would have been traditionally used.


Similar thing is in motion with the JS toolchains. Rewriting in Rust is easier than rewriting in C, but why didn't they previously rewrite in something like C++ or Go? I'm guessing because people were simply not interested.


Finally Linus accepted it into Linux.

It's his birthday today btw hbd


It is not his birthday. Today is my birthday and you almost made me very excited


well happy birthday too dboon!


Torvalds was right all along to hold out against C++.


Simulated a RAG, and it still gets it pretty wrong.

> The tallest mountains on Earth, in descending order: 1. Mount Everest, 8849m 2. K2, 8611m 3. Kangchenjunga, 8586m

> Tell me the second tallest mountain on Earth.

The second tallest mountain on Earth is *Mount Everest*.


The IME problem was the only thing keeping me on "legacy" X11 a couple years ago. Is it still the same today?


My IME issues were so dire I went back to a Mac (well also work giving me a Mac). But my IME issues linked to snaps and the like, not Wayland.


LISTEN/NOTIFY was always a bit of a puzzler for me. Using it means you can't use things like pgbouncer/pgpool and there are so many other ways to do this, polling included. I guess it could be handy for an application where you know it won't scale and you just want a simple, one-dependency database.


> I guess it could be handy for an application where you know it won't scale and you just want a simple, one-dependency database

That's where we use it at my work. We have host/networking deployment pipelines that used to have up to one minute latency on each step because each was ran on a one-minute cron. A short python script/service that handled the LISTENing + adding NOTIFYs when the next step was ready removed the latency and we'll never do enough for the load on the db to matter


You can setup notify to run as a trigger on an events table. The job that listens shouldn't need a pool, it's a long lived connection anyway. Now you can keep using pgbouncer everywhere else.


How about using a service that runs continuously and brings it's own pool? So basically all Java/JVM based solutions that use something like HiKariCP.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: