HackerLangs
TopNewTrendsCommentsPastAskShowJobs

pdimitar

10,777 karmajoined há 12 anos
Backend programmer with sysadmin chops.

Prefers working with: Elixir, Golang, Rust. Knows shell scripting, macOS and Linux well and navigates them freely.

Retired skills: C/C++, Java, PHP, JS, HTML/CSS, Ruby.

Professional programming interests: code generation from data schema files. Also network administration.

Hobby programming interests: game bots and AI, financial trading, formal verification of code, super-optimization (evolving the perfect compiled code).

email: `mitko.p| <at] {gmail.com[

GitHub: https://github.com/dimitarvp

LinkedIn: https://www.linkedin.com/in/dpanayotov/

comments

pdimitar
·ontem·discuss
With respect, it's difficult to interpret "libertarian sensiblities" as something else than "political leanings". Now "liberal" is a much more general -- I wouldn't necessarily call that political -- but what you said had a strong political connotation, hence my comment.

Your explanation lands otherwise. I can't relate to "I don't have to appease a borrow checker" though. That reads like a deliberately uncharitable read of what Rust's compiler is doing. That being said, it's definitely not for everyone.

I tried Zig. Loved it. But then after a few weekends I said to myself: "Wait a bit. I've been down this path before with C and C++. I know exactly where it ends." -- and bailed.

To me these days low-level programming is basically: either go all the way, or don't go at all. Sadly Rust is not like, going really all the way, but it's IMO the closest we got. And before somebody starts enumerating obscure languages that barely have a community: I include multi-axial evaluation here i.e. PL features, stdlib, ecosystem, richness of education (Rust has _a lot_ of good books and courses), and others I am surely forgetting at the moment.

Zig is great. But I'll not take marginal improvements anymore. Not in my personal life and not in my work. I'll get big ones, or not get them.

Since we are explaining philosophies, now without political undertones: that's mine.
pdimitar
·ontem·discuss
Of all the things I expected to read today on HN, "I chose a programming language that appeals to my political leanings" was certainly not one of them.
pdimitar
·há 4 dias·discuss
Really depends on the concrete numbers and the projections. You could be right, I could be right, I am only saying what I've witnessed historically in general. Greed trumps a lot of other fairly rational courses of action.
pdimitar
·há 4 dias·discuss
Yes: historically this is not what I have observed businesses doing. They'd fight tooth and nail to reduce expenses for the fatter profits; cost savings are seldom if ever passed to consumers.
pdimitar
·há 4 dias·discuss
Realistic and historically accurate:

Pepsi starts collecting the extra profits with zero price reductions.
pdimitar
·há 9 dias·discuss
At exactly 22:50 EEST (19:50 UTC) I got the notification email from Anthropic that the "Fable 5 was disabled" incident has been resolved. Sure enough, after restarting Claude Code, I could use it straight away.
pdimitar
·há 10 dias·discuss
~20:33 now and yeah, still no access.
pdimitar
·há 10 dias·discuss
It's 14:35 here in Eastern Europe and Fable is still not accessible for me, neither on the web UI nor inside Claude Code.

Any exact times when we can expect it? The beginning of workday Pacific time, maybe?
pdimitar
·há 10 dias·discuss
> You could only use it for what like a week? How is that at all enough time to evaluate?

By observing how in 4 workdays it achieved more than Opus in ~11 days. I am my team's backend lead and the Fable 5 model finally turned the tide on my overwhelming backlog. Back to Opus and I have to treat it like special-education kid multiple times a day.
pdimitar
·há 12 dias·discuss
For the reasons stated above -- that DDR5-gen hardware is expensive right now -- I'd think the DDR4-gen market will remain alive for quite a big longer. Though that's likely much more on the second-hand market side of things.

While I wouldn't necessarily agree with "a handful of people", the fact is that neither of us can prove their lean -- so no point pursuing that argument thread.

So you might be right that it's a pure numbers/statistics decision. Or I might be right that they want to herd people into the more expensive hardware while forcing them to do so by phasing out production of the cheaper hardware.

No way to truly know IMO. We are exchanging hypotheses.
pdimitar
·há 12 dias·discuss
The mere "enthusiast" word in your question suggests the percent is not too big. But I am not sure I get your point -- elaborate, please?
pdimitar
·há 12 dias·discuss
Dropping DDR-4 is anything but meaningful. It'll easily last 10 more years, machines from this gen are still much more affordable and quite powerful. In fact for most dev and gaming workflows the difference between the DDR-4 and DDR-5 generation of hardware is more or less negligible. I am exaggerating a bit -- but really, not too much.

Of course it might be a ploy to sheep-herd consumers and companies towards the expensive DDR-5. I would not put that below the ring of RAM producers.
pdimitar
·há 13 dias·discuss
Indeed it's more like live-rewrite; features are still wanted but the rewrite heavily influences them as they go so it's juggling a lot of balls at the same time.

Fable 5 was amazing at helping me with that. Opus 4.8 is... good, really good, but... you have to be on your toes _all_ the time. It gets tiring. But as already explained: it also helped me become better.
pdimitar
·há 14 dias·discuss
Having the mechanism does not equal guaranteeing the positive result that this mechanism theoretically allows.

Politicians' whole schtick is to promise the sun and the moon and then give their buddies the lucrative government contracts, do insider trading, and generally create hidden rings of influence.

Voting and democracy in general are a facade and have been probably ever since they first existed. Not seeing that seems... a strange form of idealism, to me.
pdimitar
·há 14 dias·discuss
I doubt they voted for increased fuel prices.
pdimitar
·há 14 dias·discuss
It's not that much of a tangent tbf. It's one of the things that is an endless churn in millions of codebases out there and yet no core programming language team has the courage and the grit to solve this problem.

Those who tried are only doing it in mostly academic/toy languages which is a damned shame. We _really_ need those constructs, compile-time enforced, in commercial codebases, like 25 years ago at least!

People are trying everywhere though but I've witnessed CTOs getting cold feet and fearing their codebase will get too abstract or hard to maintain when they hire the next dev.

Group-think and conformism and fear of change, demonstrated live, every day. :/

So yep -- amen to that indeed.
pdimitar
·há 14 dias·discuss
Fair question, and I was vague just so as not to balloon the comment.

I work in a financial startup. The codebase is a mess and very much spaghettified. One rework that forced us to migrate our data model from 1:1 users<->loans to M:N (many-to-many) took two months and touched ~40% of the codebase... multiple times. Huge churn. And it just crossed two months of work, even though it's now in its very final phases.

I know what must I do:

- Introduce and enforce structs for passing context and input shapes around. So as to stop fighting with NULLs, lack of keys in maps and other maddening cases that inflate your coding lines for no other reason than programming languages not having higher-order constructs on well-researched and mostly resolved computer science problems (sigh; not going to rant here about that but it does tick me off how we are _all_ constantly reinventing the same wheels almost every day).

- Saga discipline: if step 6/9 in a pipeline fails, revert everything up to this point, even if it was touched by a 3rd party API.

- Compensation/undo steps. Including flagging / logging those that cannot be undone (sadly one part of our 3rd party APIs are like that).

- Introduce an universal runtime validator library that enforces contracts -- including conditional validation i.e. "only validate field Z if field X is present and is a positive integer and if field Y is present and is a valid UUID".

- Introduce runtime contracts / invariant enforcement.

- Introduce our own dynamic workflow engine, piggybacking off of a few free and unencumbered solutions in the language of choice's ecosystem.

...And these are just off the top of my head after I slept only 4.5h and woke up due to the heat. And each one of these can take from 2 to 6 weeks _even_ with Opus driving all coding and me reviewing and keeping it behaving within my policies and coding standards.

Me & Claude are maintaining a TODO list that is no smaller than 150 items at this point (though in fairness, at least 75% of them are fairly small and not architectural like the ones above).

I believe I know how to architect this thing but business customers and the CEO keep coming back with feature requests which of course always take priority.

When Fable 5 was around, for mere 4 workdays, I not only went ahead of my own schedule feature-work-wise but even had the bandwidth to start tackling a few other architectural decisions, tightened them up in `CLAUDE.md` and Fable even devised an opinionated AST linter for test discipline (disallow direct DB access in our tests, only go through the domain/context modules to do so). It helped me start turning the tide.

This all went out the window when I had to go back to Opus 4.8. It's still _very_ good, mind you, but it does feel like I am a special-education teacher periodically. It forgets disciplines we discussed and codified likely 15-20 times at this point, forgets important project context and attempts to reintroduce subtle bugs, and a few others.

My next game is, with or without Fable, to continue its work and just enrich the AST-based linters to convert the theoretical prompt-based guard-rails into actual LLM hooks and compiler / runtime-at-startup hooks so the agent cannot ignore them.

I don't enjoy harness engineering but the interesting and very positive effect has been that it helped me think more like an architect and less like a coding monkey, which I do hugely appreciate and only realized I was missing it for years after it actually started happening again.

Hope that helps put things in context.
pdimitar
·há 14 dias·discuss
Okay, might have mistook 4 work days for 5.
pdimitar
·há 14 dias·discuss
> Does anyone think a startup with a good product is going to be materially disadvantaged by not having access to an incrementally better security focused LLM release?

- It's not "incrementally better". It's a complete game changer. Opus 4.8 on max thinking does X amount of mistakes in my commercial work. Fable 5 did 5% of X. Counted. I barely had anything to contribute in the work sessions, for a full week I could count on my two hands the total amount of times I actually caught Fable 5 -- and one part of those were not true mistakes, more like divergence from policy in our `CLAUDE.md` files.

- It's not "security focused". It's simply better in every way _plus_ it's also security-conscious.

- It legitimately accelerated my work. I don't have too much unknowns in my work, I simply have way too much to do. Fable 5 was an objective and measurable improvement over Opus 4.8. Returning to it after Fable 5 was removed was extremely discouraging and frustrating, and still is to some extent.

> It’s lots of fun to pretend it’s some step-change that’s too dangerous for general release

Maybe, but not as much fun as tearing down a straw man apparently. :)

> (Just to be clear, I think the gatekeeping is ridiculous, especially given the above)

It's ridiculous for multiple other reasons but ridiculous nonetheless.
pdimitar
·há 15 dias·discuss
Very good quote, thank you. And it seems like propaganda worked on these people.