Hacker News new | past | comments | ask | show | jobs | submit | markpapadakis's comments login

https://github.com/skypjack/entt is a fantastic alternative; also, one of the most beautiful codebases/elegant designs I 've come across.


All our infrastructure technology, services, and almost all “applications” we have built are written in C++. That’s millions of lines of code and span everything from IR, distributed storage and computation, ads serving, relational and columnar datastores, caching and much more.

It’s about velocity and experience. Language rarely matters ( and when it does, you can use what’s appropriate ). For us, C++ checks all the boxes.


Above, you wrote <<velocity>>. Most people would say that C++ has lower velocity than other higher order languages, like C#, Java, Python, Ruby, etc. You also include the term <<experience>> which is a curious combination. In my professional experience, language "experience" dominates most discussions about what langauge to use for a new project. After all, programmers are humans who have biases from their (programming) langauge experience. (Zero trolling on the last sentence!)


Velocity is about familiarity, about expressiveness, about being able to quickly translating what you want to accomplish to code. It’s also about, for me anyway, not being constrained by inherent limits of the language or runtimes. Like I said, checks all the boxes.

As for experience, I have been writing C since the very early nineties and moved on to c++ soon thereafter.

Again, all that is, for the most part anyway, not specific to this language.


I agree. It's also an ISO standard that IMPO, will be in use for the next 50 to 100 years. Modern C++ is very safe and very fast and very mature.


We have been running hundreds of services that effectively consume from various topics, perform mostly simple transformations and produce back to other topics. Providing this kind of functionality makes a lot of sense.

We are using TANK, and that functionality is not available there, but given the benefits such a feature provides, we will likely use RP as well in order to save on development time and number of distinct services we use for various events streams transformations.


This is a great related podcast episode: https://maximumfun.org/episodes/sawbones/havana-syndrome/


Apologies for linking to something I wrote; I believe convenience is addictive: https://markpapadakis.medium.com/convenience-is-key-2aad97d5...


This works great for me; what's most important is understanding what it is and how it materialises. Dealing with it becomes much simpler once you can reason about it: https://markpapadakis.medium.com/how-to-prevent-burnout-and-...


This is quite ridiculous. I’d say it’s obviously ridiculous but others may have a different point of view. The government there is eager to side with Murdoch and his friends for favorable coverage so that they can pocket money from this extortion stunt while disregarding the impact to its many many citizens. Suggesting Bing is good enough is stupid because if their citizens were to use it over google if google quits that market, what then ? Government goes after them and if it does what if Microsoft also gets out? And if government doesn’t then doesn’t that show to the world that it was personal with google? People shouldn’t be stupid. It’s a low bar to clear.


Bing has indicated it would be willing make government deals in exchange for eliminating the competition and being #1 in search.


Who wouldn‘t. It‘s not like they have anything to loose when it comes to search.


This is fantastic news. What would you say were the hardest aspects of the design and implementation, in terms of effort and thinking that went into those accomplishments ?


I would say, building an scalable raft implementation has been by far the hardest thing. Mostly because we started from scratch and bypassed the page-cache with our read-ahead and write-behind strategies, etc. so building tiers of caches, etc and have a working raft system was hard.

Here is a post on building a dummy key-value db to test jepsen https://vectorized.io/validating-consistency/


https://medium.com/@markpapadakis/interesting-codebases-159f...

In addition to those I highly recommend studying ClickHouse’s codebase. There are brilliant design and engineering bits everywhere. I learned more from studying this codebase than most other I can think of, especially with regards to templates meta-programming ( I learned about “template template parameters” from coming across extensive use of those there ). It’s actually somewhat challenging to grok what’s going on — but it is worth pushing through until you “get it”.


Yep, i second the clickhouse suggestion. Much more easier to understand than, say, mongodb or mysql codebases.


Pocket ( https://getpocket.com/ ). It’s really bad. Been using it for years and it’s always been broken. Crashes often, narration sometimes works most of the time it doesn’t, other times it works if you force stop the app and restart it. It’s very slow too. I depend on for my long daily commutes and I only stick to it because InstaPaper is also very broken and there is no reasonable way to move the stories from pocket to instapaper. I am convinced the people who build it never really use it for those issues are otherwise trivial to encounter and I would think trivia to fix as well. I hope someone will build a better such app and make them irrelevant.


Consider applying for YC's Summer 2025 batch! Applications are open till May 13

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

Search: