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

>for those that are scared of dynamic types.

If you aren't scared of dynamic types for any type of semi-large project (like a game..) then you aren't qualified to talk about much.


Why?

Without agreeing (or disagreeing) with their larger point, dynamic types become more of liability as a project gets larger

Like "schemaless" database applications, there's always types/schema somewhere: the choice is if they'll be explicitly defined at the place of construction, or implicitly spread out across all the places data happens to flow in your application. And the more places there are, the more spread out they'll be.

Static typing is also really nice for game dev since proper unit tests are harder (but not impossible) compared to your average CRUD app.


The other side of the argument is that dynamic typing is great for prototyping and can allow for more compact code.

The discussion is exhausting because many people don't understand the difference between weak typing and dynamic typing. You basically never want weak typing but dynamic typing has legit uses. Yes JS is both weakly and dynamically typed and that sucks but Common Lisp shows you can have very strong typing and dynamic types.

Lots of very complex software has been writing in dynamically typed languages. The whole Erlang/Elixir world is dynamically typed though Elixir is getting gradual typing.

There is a good reason gradual typing is getting popular, you get the best of both world. You can prototype quickly and then add types and make everything more solid later.

(Which also why you want to always use a statically typed language in the corporate world because there is never a "later" and the bigger the team the more important it is to have the lang enforcing discipline. But not every programming is corporate.)

People that are dogmatic about static typing show their immaturity. The older I get the more I realize that there is no right or wrong way to program, everything it tradeoffs and "it depends".


Exactly which part of my comment seems dogmatic?

You literally start your comment by reaffirming my point (prototyping, like when you tend to have a smaller code base?)

Feels like you replied to a comment you imagined based on past interactions, not anything I actually wrote.


> Exactly which part of my comment seems dogmatic

I never said that any part of your comment is dogmatic. This is not private conversation where I am talking to you directly.

I wrote

> People that are dogmatic about static typing show their immaturity

Referring to the people like eatsyourtacos who started this discussion.


> dynamic types become more of liability as a project gets larger

Why?


> there's always types/schema somewhere: the choice is if they'll be explicitly defined at the place of construction, or implicitly spread out across all the places data happens to flow in your application.

> And the more places there are, the more spread out they'll be.


You can still have schema validation at the borders of the application(data in/out) without static typing.

I think there are many other factors that come into play when it comes to maintaniblity of large projects. I'd easily choose to maintain a large Elixir or Common Lisp codebase over a Java one, assuming they were all using the Best Practices™ of their respective languages.

There is research out there, and there is absolutely zero evidence that static typing catches more bugs than dynamic types. My experience is that immutability, functional programming, simplicity and testing pays a MUCH bigger role in maintainability than static typing.

Dynamic typing has trade-offs, and so does static typing, HUGE trade-offs by the way. But for some reason, no one seems to mention them... ever.


Silly me for falling for the bait after two one-word replies in a row.

If I need to specify this is about data flow inside your application when we're talking about typing, I don't want think we're having the same conversation.

Hopefully someone else will want to mud wrestle on this.


"private company"

Ah you mean an app that the US forced to be sold to a private company that certainly agreed behind the scenes to certain terms of the government?

Yeah.. completely independent private company...


It's probably more "active" sitting. If you are a gamer (especially computer gamer), you are generally not just sitting back "relaxing". Your body is more engaged and you are constantly moving your body in some way.

Sitting and watching tv you can literally be completely still for long periods of time.


Consider StarCraft: Brood War, a legendary real-time strategy game. To be played well, it requires between 200-400 actions per minute (APM), with some players going even beyond 500 APM. Some games last for more than an hour. Players use both the mouse and the keyboard. There's always more to do than you can realistically do. You are always putting out fires, managing your economy, producing units, securing income, carrying multiple attacks at once, fighting tactical battles, and executing strategic goals. Yeah I'd call that a pretty active sitting :)


Let's be honest, most of those actions are useless keybashing and clicking. It's easy to get a high APM.

This is certainly true in the beginning of a game. Players claim to do this to warm up. However, in a busy confrontation there is no reason to spam any actions that are not directly contributing towards your endeavor. If you spam useless actions during a fight, your opponent who does not will best you.

In Smash? Sure. In StarCraft? I’ve never measured it, but I wouldn’t say ‘most’ by any stretch.

The game's been played competitively for more than 25 years now, people still earn their living plying StarCraft. You wont find a single one of them with APM below 200. Having their livelihoods and legacies depending on this, do you think they'd be repeatedly doing something useless instead of optimizing?

Anyways, I think you are missing the point that this thread is about active sitting. I imagine there isn't much difference to the meaning behind movement: movement is movement, meaningful or not.


Depends on the game. I'd say I have two modes of sitting when programming, one is passive and my muscles ache. Another is active, when I try to use belly muscles (abs?) to keep my posture etc but... When I fall deeply into thinking I will eventually release muscles and feel worse later.

I wonder if there could be an application that would encourage active sitting


This is what I was thinking about too. I thought that "Active" sitting was going to be something about making sure you're not slouching, but rather adjusting yourself every so often to make sure you're sitting up straight instead of slouching off the chair.


They mention reading as an example of active sitting despite the fact that it requires no more motion than changing the channel (or whatever the modern day equivalent is).


I am thinking about stance while sitting lately. I am breathing and speaking more from my belly and that starts with posture which is neither slouched forward or back.


Me too and it's something I've become more aware as I got older. In short the lesson I learned is be well stacked and relaxed at the same time with the gaze forward. Also be able to freely move around around a fixed point if needed (the sit bones connecting to a sturdy surface of a chair). I find that swivel chairs or too soft of a chair could mess up stability/proprioception. A fixed/rigid chair at the right height helps me plant my feet better into the ground, forming some a sort of a tripod for better stability. Also an eye level monitor and a keyboard in reach without having to stretch out the arms helps keep a better posture. Another thing I practice is not leaning on the backrest too much. I noticed my kid shifting to bad postures when doing homework. Just gently telling him about it from time to time and making him be aware of his improved and what a correct posture should be seems to have improved his habits.

Literally the last thing on the internet you can complain about is Steam. PC gaming would be the biggest cluster fuck in the world- if not fairly dead / super niche.

You would need to install 12 front-ends like Steam that would be hot trash and have a handful of games and be the most miserable shit ever. You wouldn't have sales, reasonable game prices, or family library sharing (this would be absurd to any other company).

Steam is a prime example of when a monopoly ends up to be the best for the consumer.


Well, you don't "stop using Steam" unless you don't care about playing most games released in the last 10-15 years. But the premise is solid, given that GOG has no DRM. Steam did get DRM "right" though.

My problem with Steam are the casino tactics Valve inject into their own games and the platform. That is an entire gaming industry problem however. At least Valve do some good things with the dirty money.


I still cannot reliably restore any Postgres DB with the TimescaleDB extensions on it.. have tried a million things but still fails every time.


Sounds like a great way to completely lock yourself into an ecosystem you'll never be able to leave!


On the contrary, you could swap the database rather easily compared to traditional REST+SQL backends.

Migrate data to another GraphQL DB and join its GraphQL schema to the supergraph. The only pain point could be DB-specific decorators, but even those could be implemented at the supergraph level (in the Federation server) if needed.

Even migrating to a non-GraphQL DB is feasible: you could just write your own resolvers in a separate GraphQL server and join that to the supergraph. But that would be more of a ecosystem lock already :)

Really, any manner of SQL database is more of an ecosystem lock than a GraphQL database behind Federation.


>Philosophically speaking, this is what people want though

No- it's what the rich and powerful want and they have forced their ways on everyone because there's nothing we can do to stop it.


Right. Under a dictatorship, you wouldn’t just say philosophy speaking this is what people want because if they didn’t, they would revolt.


You have a point, but I think the situation can be framed as a question of "what people want" by modelling the decision better. (People under a dictator sometimes do revolt, but often don't.)

The choice people have is not between a dictator and no dictator, it's between a dictator and a period of instability and chaos, possibly including bloody fighting or even famine, the outcome of which is (a) completely uncertain even in the unlikely event that you know that ~everyone wants the dictator gone and (b) might be that the dictator's forces still come out on top, or that someone even worse is installed into power.


>is a fancy guessing algorithm

That's literally what our brains are so I'm not sure what argument you are actually trying to make..


guessing tokens (or something similar) i think humans grasp at more than 1 type of straw.

Edit: no ok i get u. ensemble learning is a thing ofc. maybe me n other poster reasoned too much from AI == model..but ofc you combine em these days. which is more humanlike guesser levels. (not nearly enough models now ofc)


We don't have IQs of 300. Would you seriously consider an LLM the same as a human brain?


https://www.trackingai.org/home

Without doubt, LLMs know more than any human, and can act faster. They will soon be smarter than any human. Why does it have to be the same as a human brain? That is irrelevant.


They are implemented on an entirely different substrate. But they are very similar in function.

The training process forces this outcome. By necessity, LLMs converge onto something of a similar shape to a human mind. LLMs use the same type of "abstract thinking" as humans do, and even their failures are amusingly humanlike.


What? Who has made this claim, what is the evidence? I don’t think this is true at all.


>Or more precisely, that you could be rationalizing what is essentially a random process?

You mean like our human brains and our entire bodies? We are the result of random processes.

>Sucks for those of us who are stuck in the now, though

I don't know what you are doing- but GPT5 is incredible. I literally spent 3 hours last night going back and forth on a project where I loaded some files for a somewhat complicated and tedious conversion between two data formats. And I was able to keep going back and forth and making the improvements incrementally and have AI do 90% of the actual tedious work.

To me it's incredible people don't seem to understand the CURRENT value. It has literally replaced a junior developer for me. I am 100% better off working with AI for all these tedious tasks than passing them off to someone off. We can argue all day if that's good for the world (it's not) but in terms of the current state of AI- it's already incredible.


But would you have hired a junior dev for that work if AI hadn't 'replaced' it?


Not a valid response in all cases.

It might not be a junior dev tool. Senior devs are using AI quite differently to magnify themselves not help them manage juniors with developing ceilings.


Well I'm part of a small few person team- I had a junior developer helping me who left. And I literally don't need someone like him anymore because I can do anything that he was doing via AI faster and better because it's under my control. I can have a 20 minute conversation and code revision that would have taken days for someone junior to code and would have probably been not done right (by 'right' I mean how I want it to be done, not necessarily wrong)

To think the same isn't happening all over the place and will only continue is ignoring just how powerful this tech is.


And when you are out sick, can AI do his role? When you are on vacation, can AI do his role? When you leave, can AI at least help define/interview your replacement, like he could have, even if he's too junior to step into the role?

There is so much else that people do. So many details that are just being ignored because of short term 'gains' that justify ignoring so many details.


You aren't taking what he said seriously. The junior could also get sick, present management issues, etc.

If this person plus a junior represented "1.3 engineering knots," he's saying... "actually, I'm still 1.3 engineering knots without him."

When this person leaves, they go find someone else who is 1.3 engineering knots. The junior represented .3, without the 1., it doesn't matter that much. Headcount strategy shifts.


If your company can treat people as cogs this way, your company has zero value add/domain knowledge. A company's value is what it value adds, what domain knowledge/expertise it has, or cheapest price. If all you have is cheapest price, you will lose over time. You will be undercut. You won't have the domain knowledge to adapt, to see future changes coming down the path.

So the company you talk about is already in the entropy vortex. It has no momentum. It has no future. It just hopes it can keep doing what it is doing now.


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

Search: