Skip to content

Instantly share code, notes, and snippets.

@spirobel
Last active February 5, 2022 02:18
Show Gist options
  • Save spirobel/932c4cff3154409a4874aaf7e8b1073e to your computer and use it in GitHub Desktop.
Save spirobel/932c4cff3154409a4874aaf7e8b1073e to your computer and use it in GitHub Desktop.
Chat about the meaning of wallet2 - the monero codebase should be split into multiple repos, to speed up development
1/26/2022, 11:09:24 AM - spirobel: I just wanted to mention that it might be a good idea to watch this talk when diving into the monero codebase: https://www.youtube.com/watch?v=DY0iE0cBXbc wallet2 is the most important spot to look at it.
1/26/2022, 8:28:23 PM - afungible: I saw the presentation in full. I have some questions about architecture/ codebase. Must I take it to #Monero dev IRC?
1/26/2022, 10:12:07 PM - Rucknium: I and a few others have been sounding the alarm on this for a while. It is too easy to pitch into a downward spiral at this point in terms of dev resources. We don't have enough devs who want to help onboard new devs, leading to few new devs. Then some existing devs become less active, making it even harder to onboard new devs...and repeat.
1/26/2022, 10:15:49 PM - Rucknium: The number of researchers is even further into the "red line", but in a sense there is ready-made documentation in the form of research papers, so the onboarding issue arguably isn't as severe.
1/26/2022, 10:21:04 PM - afungible: Thanks. Understandable. About the research paper, sure there are excellent resources out there (I've attempted to read a few), though, unfortunately not every (new dev) may go thrg them before getting their hands wet in code. I posted some questions on Monero-dev, & have a discussion ongoing there purely regd. to code development.
1/26/2022, 10:29:56 PM - dⱮartian: Rucknium: I don't have anything to add to what you've said yet, but you're making some salient points
1/29/2022, 11:14:24 AM - istina joined the room
2/1/2022, 4:53:18 AM - qophse joined the room
2/3/2022, 5:43:56 AM - mj-xmr: <@spirobel:matrix.org "I just wanted to mention that it..."> But before you get too adventurous with wallet2, take note, that not every your PR will be merged. https://github.com/monero-project/monero/pull/7679
2/3/2022, 5:44:17 AM - mj-xmr: So plan your work accordingly.
2/3/2022, 5:46:37 AM - mj-xmr: <@rucknium:monero.social "I and a few others have been sou..."> I can help. Just ping me y'all with IT-related issues but not sooner than in March, since I have a ton of private leftovers to handle RN.
2/3/2022, 5:47:35 AM - mj-xmr: I don't hang around in the groups though. Not much time for this.
2/3/2022, 5:47:48 AM - mj-xmr: groups/rooms/channels
2/3/2022, 6:19:48 AM - mj-xmr: <@mj-xmr:matrix.org "But before you get too adventuro..."> And I'm saying this, because that presentation was exactly the reason why I created that PR.
2/3/2022, 6:31:34 AM - afungible: <@mj-xmr:matrix.org "I can help. Just ping me y'all w..."> I was feeling encouraged to contribute as a new dev, though didn't receive a convincing reception to my earlier questions in dev group. So, it left me more confused than before, & gave me the sign that I need to reverse engineer everything to get to a sweet spot - which for a project like Monero, it will take a good amount of my time.
2/3/2022, 7:03:20 AM - mj-xmr: afungible: if the question is strictly crypto-related, then I'm not the right person either. This is a kind of specialty, that I don't posses. I have other, that crypto-gurus typically don't posses (IT-related)].
2/3/2022, 7:03:30 AM - mj-xmr: To give you an idea:
2/3/2022, 7:03:55 AM - mj-xmr: https://github.com/monero-project/monero/blob/master/docs/COMPILING_DEBUGGING_TESTING.md
2/3/2022, 7:04:07 AM - mj-xmr: This is documentation written by me.
2/3/2022, 7:05:02 AM - mj-xmr: And currently I'm into Time Series Analysis, for example of the transaction volume, but I doubt that you need it. Just trying to say, that you have to pick a tool (person) for a given job (question)
2/3/2022, 7:09:12 AM - mj-xmr: OTOH, if you feel, that your question has been flooded and not recognized, then maybe you could write it up in a form of "Issue" on monero-project? Then at least it can be easier referenced and catalogued.
2/3/2022, 7:28:55 AM - afungible: Thanks, mj-xmr much appreciated.
My questions were more on best way to get started on Monero development. I've skimmed through the codebase. The article is a great write up & a good start up, thanks for sharing. I hope the monero/docs are flooded with more such documents. I've read the mastering Monero, but yet to start reading into zero to Monero (2nd Ed.). I guess it's all about putting pieces in puzzle together.
Thanks for your suggestion, will consider it.
2/3/2022, 8:59:12 AM - spirobel: <@mj-xmr:matrix.org "But before you get too adventuro..."> Yeah. I am not really looking to contribute PRs to monero atm. I just want to use the api that wallet2 provides and build a browserwallet and other things. I also want to document how to do this because there is just so many underlying assumptions that are not documented and not explained. I know all of this is trivial if you are "in the weeds". But I think atm it is too hard and it takes too much "insider knowledge" to build stuff for the monero ecosystem. And also there is no clear place/way to figure things out.
2/3/2022, 9:38:07 AM - greek left the room
2/3/2022, 3:43:31 PM - mj-xmr: <@afungible:monero.social "Thanks, mj-xmr much appreciated."> Thank you.
Monero takes time to compile. Do you have multiple Linux PCs in your LAN? In this case info gathered here would be relevant for you: https://github.com/monero-project/monero/pull/7160
2/3/2022, 3:44:17 PM - mj-xmr: This is how you'd install ICECC:
2/3/2022, 3:44:19 PM - mj-xmr: https://github.com/mj-xmr/tsqsim/blob/master/docs/ICECC_INSTALL.md
2/3/2022, 3:45:09 PM - afungible: Thanks. Will check this out.
2/3/2022, 3:45:14 PM - mj-xmr: <@spirobel:matrix.org "Yeah. I am not really looking to..."> Documentation is a great thing to do. Withing Monero project or not.
2/3/2022, 3:46:10 PM - mj-xmr: <@afungible:monero.social "Thanks. Will check this out."> "It's recommended to adjust the number of accepted jobs on each slave to the amount of RAM, and to the heat tolerance. For instance to make a low-end laptop accept just one job at a time, please alter the variable ICECC_MAX_JOBS to "1"
Or you'll be blaming me for burning down your laptops :)
2/3/2022, 4:21:29 PM - afungible: I checked the instructions. I do have a spare Linux laptop, though need to reinstall OS on it. How long would (approx.) compilation take on a single high end laptop (e.g. 32GB RAM, Quad-core i7, 2.8Ghz), take? A day, maybe?
2/3/2022, 4:35:02 PM - mj-xmr: afungible: According to these stats, you have to assume 3 GB per core:
http://cryptog.hopto.org/monero/health/
http://cryptog.hopto.org/monero/health/data/9aab19f34/9aab19f34-mem-usage-tests.txt
2/3/2022, 4:35:38 PM - mj-xmr: So you could use all your 4 cores for your i7.
2/3/2022, 4:35:50 PM - mj-xmr: (if heat is not a problem that is)
2/3/2022, 4:35:57 PM - mj-xmr: (and I know it is)
2/3/2022, 4:37:04 PM - mj-xmr: And according to these stats, it should take just an hour for the full compilation on a single core of a similar CPU:
http://cryptog.hopto.org/monero/health/data/9aab19f34/9aab19f34-cba-result.txt
2/3/2022, 4:38:01 PM - mj-xmr: But the problem is, that the code is written so, that a change of an implementation in header (you heard right) will typically lead to a recompilation of about half of the code.
2/3/2022, 4:38:31 PM - mj-xmr: Anyway, to spare yourself some time when switching branches at least, install ccache.
2/3/2022, 4:39:10 PM - mj-xmr: and don't forget to execute:
2/3/2022, 4:39:33 PM - mj-xmr: ```
CONFCCACHE=$HOME/.ccache/ccache.conf
touch $CONFCCACHE
echo "compression = true" >> $CONFCCACHE
```
This will make the compilation easier on your SSD.
2/3/2022, 4:40:22 PM - mj-xmr: I should probably update this documentation, that I posted earlier.
2/3/2022, 4:40:31 PM - mj-xmr: I mean extend, not update.
2/3/2022, 6:30:03 PM - afungible: Thanks mj-xmr , for these instructions. Will try these soon enough.
2/3/2022, 6:52:58 PM - mj-xmr: Alright. Let me know how it went.
2/3/2022, 10:46:44 PM - mj-xmr: <@mj-xmr:matrix.org "```"> afungible: on latest Debian/Ubuntu >= 21 it should actually be:
```
DIRCCACHE=$HOME/.config/ccache/
CONFCCACHE=$DIRCCACHE/ccache.conf
mkdir -p $DIRCCACHE
echo "compression = true" >> $CONFCCACHE
```
2/3/2022, 11:56:51 PM - afungible: Noted, thanks.
2/4/2022, 12:21:55 AM - Rucknium: Maybe a relevant conversation:
https://www.reddit.com/r/Monero/comments/sj5gjr/whats_the_equivalent_of_chaincode_labs_for_monero/
2/4/2022, 12:31:26 AM - mj-xmr: <@rucknium:monero.social "Maybe a relevant conversation:"> I'll just say one thing here, since it's public: he's somewhat hard
2/4/2022, 1:40:30 AM - Rucknium: I have no idea if this is legit, but may be of interest:
https://www.reddit.com/r/btc/comments/sjm73w/uniworld_eu_hackathon_2022_the_largest_blockchain/
2/4/2022, 6:43:30 PM - spirobel: I think most of the characters in moneroland spent all of their xp on some nerdy tech skill tree. and/or they are maxxed out when it comes to philosophy/politics. On the social and charisma front we are not doing so well. Maybe we should try to improve that. 🙂
2/4/2022, 7:10:35 PM - mj-xmr: I prefer to just shut up and do my thang :)
2/4/2022, 7:11:47 PM - mj-xmr: Just once in a month, I need to put some kids back to their mothers' basements :)
2/4/2022, 7:11:49 PM - mj-xmr: https://www.reddit.com/r/Monero/comments/shq9ia/comment/hv990i2/?utm_source=reddit&utm_medium=web2x&context=3
2/4/2022, 7:58:51 PM - mj-xmr: On a serious note, I'm perhaps a naive believer, that quality is like a fundamental value of a stock. You don't need to talk about it. It just attracts serious devs and public, that will not leave you when something goes wrong and the value will continue building up with the time. Contrary to Shiba-like coins.
2/4/2022, 7:59:46 PM - mj-xmr: And I'm not saying that we don't need publicity at all. I just mean, that if I'm better at being a dev, I won't bother shouting.
2/4/2022, 8:06:35 PM - spirobel: <@mj-xmr:matrix.org "On a serious note, I'm perhaps a..."> There is a connection between the social structure of the group and the structure of the code. I think there can be great value in good communication. It will lead to good documentation and easy to understand APIs.
2/4/2022, 8:15:45 PM - mj-xmr: That for sure. I thought you meant only being more active on social media. Internal comms are always needed.
2/4/2022, 8:17:23 PM - mj-xmr: From a broader perspective I personally see it so, that currently there are so many various fields, which need individuals only, that in these fields at least, we can still work independently mostly. But even these (like tsqsim), will need to interface other systems sooner or later.
2/4/2022, 8:17:44 PM - mj-xmr: And API and its documentation is without question already in such phase and is lacking.
2/4/2022, 8:34:05 PM - spirobel: <@mj-xmr:matrix.org "From a broader perspective I per..."> working independently can be very effective. Adding more people to a project always means communication overhead which reduces efficiency. There is just some places where there is no way around communication because many people touch the same code. Wallet2 is maybe a good example for this. Lets see how this develops in the future especially with the work on seraphis.
2/4/2022, 8:43:06 PM - endor00: <@mj-xmr:matrix.org "On a serious note, I'm perhaps a..."> Quality is a fundamental value, but you *do* need to talk about it. If nobody knows about you, it's as if you don't exist - and people can't know what they don't know
2/4/2022, 8:45:04 PM - endor00: Can't find the reddit post anymore, but it was from someone who went to a conference to promote Monero along with Monerotopia, SGP, and so.e other people - and what stuck with me from their recount is that most of the people they met there *had absolutely no idea what Monero was*
2/4/2022, 8:46:51 PM - endor00: Some people often complain about Monero being a great project but with poor financial performance, and that too many brainless idiots throw money at the latest shitcoins and hype trains instead of supporting good projects
2/4/2022, 8:47:22 PM - endor00: But it's no wonder that that's the case, if the majority of them have never even heard of Monero
2/4/2022, 8:48:51 PM - endor00: Cheap marketing ploys and clickbait suck, but if we want to survive these days, we need to fight back with the same weapons - otherwise we will get drowned out in the vast ocean of noise
2/4/2022, 8:52:17 PM - endor00: The monero threads on 4chan that people link to every now and then are one of the few good examples of persistent marketing we have going on, but its target audience is rather limited
2/4/2022, 9:50:36 PM - afungible: Can someone explain to me in simple words, what "wallet2" precisely do? Haven't checked the code of wallet2.cpp yet, though I can see it in code, it has 14362 lines of code. But is that the epitome of whole Monero software? It is 14% of the entire software. Checked with..
find . -name '*.cpp' | xargs wc -l
And also, how does one allow a C++ file to explode? I mean I wonder if there are any coding standards involved, in the sense that when a file goes over >2,000 it could be split into multiple subclasses, files, or other clever methods to keep a file modular. Given, this will prevent any such phenomenal rework in future.
Not a complain, but a question/concern.
2/4/2022, 10:05:47 PM - spirobel: <@afungible:monero.social "Can someone explain to me in sim..."> I think it is necessary to look at it not just from the context of the monero codebase. The monero-javascript library (that many other projects use as well to build on top of) is connected to it for example. https://github.com/monero-ecosystem/monero-javascript you can look at the diagram in the readme.md, the spec https://moneroecosystem.org/monero-java/monero-spec.pdf and the jsdoc. https://moneroecosystem.org/monero-javascript/MoneroWalletFull.html You can also look at it from the perspective of a practical example: Lets say you want to build a wallet. https://github.com/monero-ecosystem/monero-javascript/blob/master/docs/developer_guide/creating_wallets.md the testfiles also help to learn how the api is actually meant to be called: https://github.com/monero-ecosystem/monero-javascript/blob/ff92010b0d2df89025166f54ec1d00ce88357b60/src/test/TestMoneroWalletFull.js#L170 Now you can go through the API calls a wallet implementation would use and trace them back through the proxy functions that eventually call wallet2. I think this way you can get a grasp of the significance of wallet2. In the context of the monero repo the significance is not immediately apparent. The naming especially the 2 does not really convey the importance. But I think if you look at it from this concrete example and from the perspective of monero-javascript it becomes more clear what wallet2 means to the (social network of) monero developers and all the people and software in the ecosystem.
2/4/2022, 10:06:29 PM - spirobel sent an image. (Media omitted)
2/4/2022, 10:10:07 PM - spirobel: <@rucknium:monero.social "Maybe a relevant conversation:"> then there is the story of mymonero and the talk that paul gave. It is somewhat disconnected from all of this. There is lightwallet servers and the problem of scanning for new transactions for many wallets simultaneously. That is not really possible with wallet2. I think mymonero and Paul is more focused on that. But I think these two groups/networks/ problem spaces are somewhat disconnected.
2/4/2022, 10:11:25 PM - spirobel: I think it would be great if they could be connected. But I am not sure if it is possible. Its more of a social than a technological problem I guess.
2/4/2022, 10:13:08 PM - spirobel: I am also not sure how aware all the participants are of this meta structure.
2/4/2022, 10:13:49 PM - spirobel sent an image. (Media omitted)
2/4/2022, 10:14:10 PM - spirobel: It seems like both disconnected groups think they are the center
2/4/2022, 10:15:34 PM - spirobel: I am less familiar with mymonero and lightwallet servers...maybe someone can expand on this. I took a closer look at monero-javascript and wallet2 first and then never really progressed in the other direction.
2/4/2022, 10:15:51 PM - spirobel: Would be glad to learn more! 🙂
2/4/2022, 10:26:14 PM - mj-xmr: <@endor00:matrix.org "Some people often complain about..."> I get you.
These people are not somebody you want in the space anyway.
Also I'd be very happy if the price appreciated more, but more important for a currency is that it's meant to flow... Does falling price necessarily hinder this? I don't know myself. I think that the relative number of transactions would be a better gauge, than price for such a technical masterpiece.
2/4/2022, 10:29:17 PM - mj-xmr: <@afungible:monero.social "Can someone explain to me in sim..."> I had an entire proposal for this:
https://ccs.getmonero.org/proposals/mj-compil-time-reduction.html
See milestone 10:
"Milestone 10: One class per header
It also helps reducing the probability of having to recompile a large chunk of sources, if the classes are declared one per header. Better segmentation also helps ccache reuse its cache, if there's better granularity. Since this is quite a mechanical work, not needing ANY analysis, I'd say 2 XMR would be enough."
2/4/2022, 10:29:57 PM - mj-xmr: I gave up on this proposal, since the core team didn't want to merge my branches simply, even though the Community funded my proposal in < 24h, while I was a stranger for them...
2/4/2022, 10:30:29 PM - mj-xmr: So I told the guys to just close it and redistribute the funds.
2/4/2022, 10:30:49 PM - mj-xmr: Luckily I have now harder things to do, so that I don't have to play a beggar...
2/4/2022, 10:33:09 PM - spirobel: <@mj-xmr:matrix.org "I gave up on this proposal, sinc..."> who is the core team btw?
2/4/2022, 10:34:07 PM - mj-xmr: <@spirobel:matrix.org "who is the core team btw?"> Well the typical reviewers are:
- mmoo
- vtn
- selst
If they decide not to merge, it's not merged.
2/4/2022, 10:34:44 PM - mj-xmr: (I avoided pinging them by mentioning their names fully)
2/4/2022, 10:35:27 PM - rottenwheel: <@spirobel:matrix.org "who is the core team btw?"> Fluffypony, ArticMine, binaryFate, luigi1111 and othe, last I checked.
2/4/2022, 10:35:44 PM - endor00: <@mj-xmr:matrix.org "(I avoided pinging them by menti..."> They're not in here anyway, as this room is not bridged to irc
2/4/2022, 10:36:09 PM - mj-xmr: <@rottenwheel:halogen.city "Fluffypony, ArticMine, binaryFat..."> Neither of them does any reviews though, even if they play their important, specific parts.
2/4/2022, 10:36:29 PM - mj-xmr: or roles.
2/4/2022, 10:36:48 PM - rottenwheel: <@mj-xmr:matrix.org "Neither of them does any reviews..."> Question was who is the core team, not reviewers. :)
2/4/2022, 10:37:30 PM - mj-xmr: The answer is correct, but the question was wrong :)
2/4/2022, 10:38:13 PM - spirobel: do they play an active role, or are they just reviewing the PRs?
2/4/2022, 10:38:53 PM - rottenwheel: selsta is generally just cuddling with his cat. 😂
2/4/2022, 10:39:10 PM - mj-xmr: <@spirobel:matrix.org "do they play an active role, or ..."> They play active roles in everything else than reviewing, or they review very specific parts. Which is OK, but there's nobody to review the cleanups.
2/4/2022, 10:40:02 PM - mj-xmr: In short: we have a reviewing problem.
2/4/2022, 10:40:28 PM - mj-xmr: <@rottenwheel:halogen.city "selsta is generally just cuddlin..."> Ain't nobody cooler than selsta here.
2/4/2022, 10:40:29 PM - spirobel: <@mj-xmr:matrix.org "They play active roles in everyt..."> so they have specific projects they focus on and everything else falls by the wayside?
2/4/2022, 10:40:45 PM - endor00: <@mj-xmr:matrix.org "I get you."> Price itself is not (or should not be) the end goal, but it *does* have a significant impact on the flow of money. Nobody wants to use money that might lose half its value overnight, and buying crypto ad-hoc every time right when you need to spend it is a pain in the ass (and comes with its own set of issues)
2/4/2022, 10:41:10 PM - mj-xmr: That's correct.
2/4/2022, 10:41:37 PM - rottenwheel: <@mj-xmr:matrix.org "Ain't nobody cooler than selsta ..."> I can neither confirm nor deny such statement, sir.
2/4/2022, 10:41:59 PM - spirobel: and there is a loose consensus on how to move forward, right? (seraphis and stuff)
2/4/2022, 10:42:34 PM - mj-xmr: <@rottenwheel:halogen.city "I can neither confirm nor deny s..."> We've both pushed a loooot of kickass stuff by reviewing (and correcting) each other's PRs.
2/4/2022, 10:43:03 PM - mj-xmr: He also knows how to make compromises. A rare resource these days :)
2/4/2022, 10:44:06 PM - spirobel: <@mj-xmr:matrix.org "We've both pushed a loooot of ki..."> how is decided who is a reviewer? are you a reviewer too?
2/4/2022, 10:45:32 PM - mj-xmr: Anybody can be, but your track record helps with making your review more significant.
For instance: nobody would take my crypto-related approval seriously, but in anything IT-related, it's enough to have my approval, and eventually selsta's for more controversial IT stuff.
2/4/2022, 10:46:25 PM - mj-xmr: Treat it like a Chinese Social Credit Score Rating, that is not written anywhere else, than in peoples' memories :)
2/4/2022, 10:47:06 PM - spirobel: <@mj-xmr:matrix.org "Treat it like a Chinese Social C..."> 好的
2/4/2022, 10:47:18 PM - mj-xmr: <@spirobel:matrix.org "好的"> Don't insult me!
2/4/2022, 10:48:03 PM - endor00: In other words, there's a "loose" reputation system
2/4/2022, 10:49:38 PM - endor00: Monero does love being loosey goosey
2/4/2022, 10:49:53 PM - mj-xmr: And to be honest, the fewer "strict" rules and processes we have, the better for the project. From the IT industry I know exactly the opposite and it's a talent-killer.
2/4/2022, 10:50:33 PM - mj-xmr: We have to trust each other and occasionally review each other.
2/4/2022, 10:51:31 PM - mj-xmr: I'll give you an example, where I took a closer look at selsta's PR. If selsta's account was hacked or he lost his mind, or got bribed, the review would uncover it.
Give me a second.
2/4/2022, 10:54:55 PM - mj-xmr: https://github.com/monero-project/monero/pull/8023
2/4/2022, 10:58:43 PM - mj-xmr: So here you have an example, that we actually do have a protocol (or can build one), whenever we NEED it.
2/4/2022, 11:02:08 PM - spirobel: <@mj-xmr:matrix.org "So here you have an example, tha..."> makes sense.
2/4/2022, 11:03:13 PM - spirobel: luigi is the final boss in this case
2/4/2022, 11:06:05 PM - mj-xmr: luigi specifically stated, that he wants to have as little to say as possible in such cases, because this helps the decentralization of the whole process.
2/4/2022, 11:06:55 PM - mj-xmr: OTOH, if I document my steps, I make it easier for him to reproduce the verification on his machine, without him even having to mention it to us.
2/4/2022, 11:09:15 PM - afungible: <@mj-xmr:matrix.org "I gave up on this proposal, sinc..."> Why not? Was there a technical glitch or did it actually improve the value of compilation multi-fold?
2/4/2022, 11:10:49 PM - mj-xmr: Because they didn't feel like it's needed. I think you have to ask them. I don't understand it either. I'll give you 2 cases: a good achievement and a poor one. You'll probably understand the hesitation in the 2nd case, but the 1st case will probably make you wonder...
2/4/2022, 11:10:50 PM - afungible: <@mj-xmr:matrix.org "Well the typical reviewers are:"> Sorry to ask, but isn't that a bit centralized then? I know they do a lot of work & quality maintenance.
2/4/2022, 11:11:17 PM - mj-xmr: The positive one:
https://github.com/monero-project/monero/pull/7160
2/4/2022, 11:11:33 PM - mj-xmr: The controversial one:
https://github.com/monero-project/monero/pull/6934
2/4/2022, 11:13:04 PM - mj-xmr: Here's a full list of my opened, and never merged branches. Make your own opinion:
https://github.com/monero-project/monero/pulls/mj-xmr
2/4/2022, 11:13:38 PM - mj-xmr: <@afungible:monero.social "Sorry to ask, but isn't that a b..."> It is.
MONERO
NEEDS
YOU
2/4/2022, 11:35:27 PM - spirobel sent an image. (Media omitted)
2/4/2022, 11:36:51 PM - spirobel: I think the third suggestion is very important. It could speed up the merging significantly if there were different repos. Because you could split responsibilities. Different people could be responsible for different stuff and not have everything mixed together in one repo
2/4/2022, 11:40:20 PM - mj-xmr: <@spirobel:matrix.org "I think the third suggestion is ..."> I'm not sure.
Besides this is just a "Manager's Wishlist". If he blocks the corresponding PRs, because he wants to leave it all for himself, then what is this presentation other than his own pitch?
I'm sorry, but it's a bit cruel.
2/4/2022, 11:40:40 PM - mj-xmr: At the same time, there are plenty of other stuff to do, that you simply haven't seen a presentation for.
2/4/2022, 11:44:49 PM - spirobel: <@mj-xmr:matrix.org "I'm not sure. "> hm...it does not imply you have to give control over a specific piece of code to a specific someone. the current repo could still be the monorepo where everything is fit together and there is a final sign off.
2/4/2022, 11:46:56 PM - spirobel: It just seems like the current situation of "everything is connected to everything" in one giant repo is not optimal.
2/5/2022, 12:49:42 AM - afungible: There should perhaps be a merge voting based on weight (i.e. One with highest contributions, has higher weight & ones with lower, lower weight). Though, this can still lead to collusion.
Ideally, there could be an architectural document/presentation that everyone agrees to for long term & implentations be based off on that. And iterative commits iso. one single big fat commit to save reviewer' time.
2/4/2022, 11:47:08 PM - mj-xmr: Whatever is decided, it's still just an unrealistic wishlist.
2/4/2022, 11:47:29 PM - mj-xmr: And that presentation is 5(?) years old.
2/4/2022, 11:47:45 PM - mj-xmr: If it were realistic, at least 2 of 3 points would have long been resolved.
2/4/2022, 11:47:59 PM - mj-xmr: But as I said, if he blocks everybody from doing anything...
2/4/2022, 11:48:09 PM - mj-xmr: and doesn't really want to merge his changes into core.
2/4/2022, 11:48:23 PM - mj-xmr: I mean I don't care. I'm just saying like it is.
2/4/2022, 11:50:11 PM - mj-xmr: You have to understand, that the face value of this presentation is:
"Let's all make Monero greater together"
while the real motive is:
"Here's my pitch"
2/4/2022, 11:51:02 PM - mj-xmr: I think I should start making presentations just for people not to focus on one thing only :)
2/4/2022, 11:55:07 PM - spirobel: I understand the sentiment. It seems like the vision is too big and there are not enough PRs that practically move towards this vision.
2/4/2022, 11:55:47 PM - spirobel: And probably all the others also have a vision
2/4/2022, 11:56:32 PM - mj-xmr: I'd myself create more PRs, if my existing ones weren't blocked.
2/4/2022, 11:57:04 PM - mj-xmr: It's not about the number.
2/4/2022, 11:58:31 PM - spirobel: <@mj-xmr:matrix.org "I'd myself create more PRs, if m..."> the fundamental problem here is that everything is connected to everything in this one repo and everything needs to go through this one (organisational) bottleneck.
2/4/2022, 11:59:15 PM - spirobel: maybe there is a way to go small steps towards splitting parts of the codebase into smaller repos instead of pursuing this grand vision
2/5/2022, 12:29:40 AM - endor00: Thinking out loud here: wouldn't this be a good opportunity to leverage the decentralized nature of the project, and push for your version? Not in a "split the project in two" fashion, but "Hey folks, here's a slightly different implementation which has x, y, z benefits. Which do you choose?". Then it wouldn't be just you vs him, but there would be a community pressure to push changes one way or the other
2/5/2022, 12:58:04 AM - afungible: I see your passion towards the project. And that's a lot of work you did mj-xmr I was also going through the comments in some yet (Open) commits, the responses to your comments, were rather very slow. e.g.
https://github.com/monero-project/monero/pull/6934
2/5/2022, 12:31:07 AM - endor00: (Yes, I'm aware that taking issues "to the masses" has a lot of ancillary problems, but it would also be a good way to remind the community that they have a say, too, in the developmemt of the project)
2/5/2022, 12:32:23 AM - endor00: (As opposed to just sitting there waiting for update to drop and number go up, while a small group of devs are too busy stepping on eachother's toes trying to deliver something)
2/5/2022, 12:32:46 AM - endor00: ((No implied judgement on either party here, more of a general statement))
2/5/2022, 12:41:15 AM - mj-xmr: <@endor00:matrix.org "Thinking out loud here: wouldn't..."> Hypothetically yes.
But what if this effort fails? Who's going to pay for my time?
For as long as there are other and much more important things to do, this topic is just an entertainment for me, fo'real.
2/5/2022, 12:45:34 AM - mj-xmr: <@endor00:matrix.org "(As opposed to just sitting ther..."> I don't take it personal, but I personally don't sit and wait. I do other, more important things. If you'd like to try your social skills (more than technical) with the guys, I'm really not stopping anybody.
2/5/2022, 12:47:07 AM - endor00: With "sit and wait" I was referring to the community at large, not the devs actively working on the project and/or directly related activities
2/5/2022, 12:48:10 AM - endor00: Unfortunately my public speaking skills are not that great, I much prefer technical environments 😅
2/5/2022, 12:48:51 AM - endor00: But perhaps somebody else with the right skillset might pick up on my ideas
2/5/2022, 12:50:10 AM - mj-xmr: <@endor00:matrix.org "With "sit and wait" I was referr..."> It's OK. The community also is able to perceive the social inefficiencies and won't engage in those stinky topics.
2/5/2022, 12:50:46 AM - mj-xmr: But if somebody wants to help with my tsqsim and consequently with Rucknium 's work himself, then I'd welcome 1 or 2 collaborators.
2/5/2022, 12:51:28 AM - mj-xmr: If you're looking for anything interesting to do that is. I hope we won't spend the whole week talking about one guy's outdated presentation :)
2/5/2022, 12:56:17 AM - endor00: I have a little pet project of my own, just have a few other irl things to deal with before I can get started writing stuff down
2/5/2022, 12:56:42 AM - endor00: I haven't delved into tsqsim too much yet, but I think it might actually come in handy for my work too
2/5/2022, 12:57:36 AM - endor00: (Building a model of the financial incentive of mining, and comparing that with the actual observed miner behaviour of the whole network)
2/5/2022, 2:34:53 AM - mj-xmr: Exactly this is one of the many possible use cases. On top of that, you have my technical support, as long as it's Monero-related, so nobody from my sponsors can complain about it.
2/5/2022, 2:36:30 AM - mj-xmr: <@afungible:monero.social "I see your passion towards the p..."> Yeah. They seem to be focusing on completely different things and treat this as a distraction.
But hell. From time to time everybody has to clean up the toi... kitchen.
2/5/2022, 2:44:36 AM - mj-xmr: And if they don't...
/me points at `wallet2`
2/5/2022, 6:02:40 AM - impermanentrecord joined the room
2/5/2022, 9:54:49 AM - spirobel: <@mj-xmr:matrix.org "The controversial one:"> this commit changes 64 files and touches many different parts of the codebase. This is very hard to review, because nobody has a deep knowledge of all of these parts. Also it is hard to find the people that are responsible for a certain part of the codebase, because code ownership isn't clearly delineated. This could be solved by splitting up the codebase into different repos that have different owners. Then you can go to each of them and get your commit reviewed piece by piece.
2/5/2022, 10:03:58 AM - spirobel: <@mj-xmr:matrix.org "Yeah. They seem to be focusing o..."> maybe we dont need to clean it up all at once. Just go piece by piece and focus on the deliverables (wallet rpc, simplewallet, monerod etc ...) instead of ideas that might be opinionated (like extracting a libmonero or a libwallet like paul proposed) I think it would be a huge win for example if walletrpc was in a different repo and it could be built there instead of next to monerod and all the other stuff. How common code can be shared and refactored will work itself out later. The organisational benefits like PRs that get merged faster will be effective immediately.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment