# Update 20 October, 2022

Thx 4 the update Maidsafe devs

Please do keep hacking super ants

Side note I would like to buy @Heather_Burns book if she accept MAID and keeps her MAID

10 Likes

@dirvine I saw on the Oct. 6th update @thedirtfarmer ask how much runway we have left. How did Maidsafe accomplish another two years of development runway when 2 years ago it had only 2 years of runway? What allowed for the extra runway? Can this be done again if needed?

5 Likes

I wonder if sending a ACK for each received piece of data is better or if a stream performs a ping-pong to show the connection is not dead and then one each ping-pong interval you send all the details that were successfull. Eg. on 10sec interval you batch all received pieces and send it back so the amount of messages could be drastically reduced. On the other hand it could take up to 10sec to tell the other side that something failed and then it has to be resend, although I think failures are not that likely to happen and only the part that failed has to be resend not all data during the interval.

Big improvement of the years, greatly improves the maintainability index (MI).
For anyone who wants to calculate it:

MI = 171 - 5.2ln(HV) - 0.23CC - 16.2ln(LOC) + 50sqrt(2.46*perCOM)

LTH = OP + OD, Hallsteadh Length, OP is the number of Operators and OD number of Operands

VOC = UOP + UOD, Hallstead Vocabulary, UOP is Unique number of Operators and UOD the number of Unique Operands.

HV = LTH * log2(VOC), Hallstead Volume

CC = P + 1, Cyclomatic Complexity (# of nodes that contain conditional checks, also known as predicate nodes). Basically parts where if,elif,else statements are one such block is a predicate node that increases knowledge one needs to have to understand what the logical statements lead to.

LOC = (raw) lines of code, 71471
perCOM = percentage of lines that is comments, 13.381651299%.

MI score of >= 85 is highly maintainable
MI score between 65 and 85 is moderately maintainable
MI score below 65 is difficult to maintain.

8 Likes

It does sound like that. I got curious about what this Quic is in general, and found the Wikipedia entry quite informative. One thing that caught my eye was this:

One concern about the move from TCP to UDP is that TCP is widely adopted and many of the “middle-boxes” in the internet infrastructure are tuned for TCP and rate-limit or even block UDP. Google carried out a number of exploratory experiments to characterize this and found that only a small number of connections were blocked in this manner.[4] This led to the use of a rapid fallback-to-TCP system; Chromium’s network stack opens both a QUIC and traditional TCP connection at the same time, which allows it to fall back with negligible latency.[25]

I wonder if Safe Network would be a solution to the “middle-boxes” -problem, or if the middle-boxes will still be a problem?

I remember in some previous update the Quic (or was it qp2p?) was called “a bit of a black box”. I wonder if it would be good idea to contract an outside expert to solve problems specific to it?

6 Likes

I missed this as well was it announced?

5 Likes

No, we did not announce that. It was a mutual decision to part company, though.

12 Likes

Nice progress. Great update.

7 Likes

I would count markdown lines as comments instead of code because they give explanations to the code in their own way. Or at least just ignore markdown files to not give an unjustified bad maintainability perception of the repo when we only look at the Total line

This would improve the Maintainability Index mentioned by @DeusNexus (but I can’t compute it because not all variables are available and I find different formulas depending on the source).

Anyway I don’t believe in this kind of formulas. Comments / LOC ratio is good enough and shows the problem of counting markdown lines as code:

md code as code 71471 9564 13,38%
ignore md files 44170 9564 21,65%
md code as comment 51720 29315 56,68%
5 Likes

There seem to be an awful lot of “magic” numbers here
Maybe I should StartPage Hallstead Length etc to get some clue as to how these numbers are derived.

3 Likes