Proposal “dash-masternode-tool-development-boost“ (Completed)Back

Title:DashMasternodeTool - development boost
Owner:Bertrand256
Monthly amount: 66 DASH (60548 USD)
Completed payments: 2 totaling in 132 DASH (0 month remaining)
Payment start/end: 2017-09-18 / 2017-11-17 (added on 2017-09-16)
Votes: 1093 Yes / 5 No / 4 Abstain

Proposal description

*EDIT*
Thank you masternode owners for all your votes. I have to admit that the number of positive votes was a big surprise to me, so once again: thank you.

I would like to remind you that due to my mistake, instead of the amount of 33 Dash per month I've requested 66 Dash. Therefore, you can defund my proposal in the current voting round - then I'll work on this project exclusively by the end of November. If you don't do this, my 100% involvement will be extended until mid February 2018 (additional 2.5 months).


Background

Shortly after I've stumbled upon the Dash technology (of course, thanks to Amanda's videos), Dash began to surge in value and thus I became interested in the matter of masternode collateral security. Earlier, the collateral was usually controlled by the Dash-QT software wallet, but its value was now too high for the solution to be considered safe in an era of ubiquitous malware. There was already a great solution at the time (chaeplin's dashmnb) that made it possible to secure the collateral with a hardware wallet (e.g. Trezor), but some people put off migrating to it since it lacked a GUI, which may have been an obstacle to non-technical users. I decided to give chaeplin’s creation a graphical form – this is how DashMasternodeTool came to be.

Thanks to the knowledge within dashmnb, the basic version of the tool was created relatively quickly, with new functionalities added over the course of the next few months.

Here is the current feature list:
  • starting a masternode using Trezor/Keepkey hardware wallets
  • sending funds earned by the masternode in a way that keeps the 1000 Dash collateral secure
  • voting on proposals
  • signing messages with a hardware key, checking masternode status etc.
History of the project from its very beginning: https://www.dash.org/forum/threads/gui-tool-for-running-masternode-with-trezor.13748/
The source code of the project is published on Github: https://github.com/Bertrand256/dash-masternode-tool

Current challenges
As the work was done after hours, the development time was severely limited. In consequence, the pace of releasing new functionalities was far from impressive, many trade-offs were made in the code and the documentation is a long way from professional.

Over the several months of working on the app, some users suggested a few interesting features, which I added to the list of ideas I had planned to implement myself. I believe these features are so interesting and needed that I have decided that there is no point stretching their development over a long period of time especially when the Dash ecosystem has a perfect solution for such a problem.

Proposal
This proposal is about covering costs of my switching from my current occupation to working exclusively on the DMT project for a period of 2 months, thereby accelerating the implementation of the following functionalities:
  • Support for Ledger Nano S hardware wallets – this requires a significant amount of work considering the limited support from Ledger company.
  • Changing the view in the main window of the app in order to see a full list of masternodes, which will allow the user to perform actions on multiple masternodes at once.
  • Retrieving additional important information regarding masternodes and the machines they run on, e.g. free RAM and disk space, payment queue position etc and display them in the masternodes' list.
  • Further development of the masternode funds-sending feature – the goal is to make it a full-fledged wallet that will ensure full control over transactions (UTXO) users want to send.
  • Encryption of the app’s configuration file using a hardware wallet – the file contains sensitive information some users would prefer to hide in case their computer gets into the wrong hands.
  • Adding a documentation chapter that describes the preparation of the development environment and the executable files compilation method as well as adding chapters related to new features.
  • Having the entire project documentation proofread and corrected by a professional translation company in order to ensure that the project looks professional in that aspect as well (my English is far from perfect, so the documentation contains many errors).
  • Doing the same to all messages displayed by the program.
  • Adapting the program to work with the TESTNET.
  • Eliminating many of the simplifications and trade-offs made in the app, which will improve its stability and user-friendliness.
The above list may change if more interesting/needed ideas appear in the meantime.

Future plans
Here are further plans (after the 2 months have passed):
  • Analysis of possibilities and implementation of a feature allowing users to start a masternode using a paper wallet.
  • Initializing the hardware wallet in a way that allows users to avoid using the web version (e.g. for Trezor). Some people would prefer to initialize their wallet in offline mode (without connecting to the Internet), which in the case of Trezor is not possible without an external app.
  • SSH multi-terminal functionality in order to manage multiple servers at once.
  • Porting the source code from interpreted Python to C++. Currently, the executable file is in fact a self-unpacking archive, which means it has to unpack every time it is run and therefore the program is rather slow to start. This, however, is a long-term plan.
Budget
The cost of my switching to working exclusively on the DMT:  8k$/month (29 Dash/month)
The cost of proofreading the current and translation of new documentation/app's messages:  900$ (3 Dash)
Proposal fee reimbursement:  5 Dash
Overall: 66 Dash (29 *2 + 3 + 5)

About me
I'm not a very social-media guy, but since I'm posting this proposal I have to reveal some information about myself.

I have been working as an IT expert in the telecommunications and energy industries for about 20 years, working with C++, Python, Oracle DB, JavaScript, HTML and other technologies. Besides cryptocurrencies, I am also interested in electronic circuit design, microcontrollers and IT security; however, I am not professionally active in these areas.

I've created an app (which I won't advertise here) that captures and reveals SQL communication (normally hidden) between Oracle databases and client applications. It is used by Oracle DB developers/administrators to track down various problems that occur in the application development process. This program uses legitimate mechanisms to hook up into Windows API calls (between an app and the OS), which in fact allows you to do everything. Similar mechanisms (but in bad intentions) are used by malware and it has shown me clearly how easy it is for a skilled developer to create a program that steals or manipulate user's sensitive data, especially on Windows OS. That's why I'm a big proponent of securing cryptocurrencies with hardware wallets, especially if using Windows and the funds are substantial as in the case of masternodes' collaterals.

During my professional career, I've also created several tools for managing parts of the IT infrastructure, I've designed a system for automated compilation and deployment of changes developed by programmers to several dozens of databases and Unix servers. Part of this experience I am going to put into DashMasternodeTool box.

My profiles:
Dash forum: https://www.dash.org/forum/members/bertrand256.10218/
Dashnation Slack: bertrand256
Github: https://github.com/Bertrand256
Keybase: https://keybase.io/bertrand256
E-mail: bertrand256[at]protonmail[dot]com

If you share the view that it is worth accelerating the development of the features outlined above for the stated costs, please vote YES. If you have other suggestions, I would be grateful for them. If the proposal is not accepted, the development will still continue at its current pace.

Show full description ...

Discussion: Should we fund this proposal?

Submit comment
 
0 points,2 months ago
I vote yes. Where is the best place to propose new features? I am a new MNO.
Reply
0 points,2 months ago
A good place for this is the following thread: https://www.dash.org/forum/threads/gui-tool-for-running-masternode-with-trezor.13748/

You can also post it as an 'Issue' on the DMT's Github site (https://github.com/Bertrand256/dash-masternode-tool/issues) or send me an e-mail (address is at the end of the proposal description).
Reply
1 point,2 months ago
Thank you masternode owners for all your votes. I have to admit that the number of positive votes was a big surprise to me, so once again: thank you.

I would like to remind you that due to my mistake, instead of the amount of 33 Dash per month I've requested 66 Dash. Therefore, you can defund my proposal in the current voting round - then I'll work on this project exclusively by the end of November. If you don't do this, my 100% involvement will be extended until mid February 2018 (additional 2.5 months).
Reply
2 points,2 months ago
Love the current tool. Will love to be able to vote from it even more. Voting 'yes'. Great job so far.
Reply
0 points,2 months ago
Thanks for the feedback and votes :-)
Reply
2 points,2 months ago
I rely on this program very much, I will definitely vote yes, and hope you can do more for us after this current project is updated. Thanks so much!
Reply
0 points,2 months ago
Thanks for the feedback and understanding when you came across some DMT problems.
Reply
0 points,2 months ago
I would be more than happy to grant the full amount to cover some of the time you spent up until now. Voting yes
Reply
0 points,2 months ago
Thank you very much for your words. There have been suggestions to use extra resources for additional time to continue the project on a full-time basis. That would be a great solution, but I'll let MNOs decide. Thanks :-)
Reply
0 points,2 months ago
Super cool project, yes votes incoming!
Reply
0 points,2 months ago
Arrived, I confirm :-) Thanks Mastermined.
Reply
2 points,2 months ago
I said a long time a go I would support this project. You have my vote. If the proposal fails you should post a donation address on the forum so people can help you out.
Reply
1 point,2 months ago
Thanks Acedian, I remember what you said and I really appreciate it. If the proposal is not accepted, I will surely find another way to speed up the work, but even if not, it's not a very big problem, it simply will take a little longer to do the stuff, but it will be done :-)
Reply
0 points,2 months ago
very good! voted yes
Reply
2 points,2 months ago
as discuss before
i would suggest to let run as is
use extra funds for extra features / more time
DMT is 100% needed and great - u put a lot of work into this over the last 6 month + , we are happy to have you on the team and if anybody deserves extra funding (feature and time) it is you as you did not ask for anything before
i am in touch with bertrand since the beginning of DMT (kind project manager here) and he is doing great work , 100% trusted and supported by core team - pinged me direct right away about the "mistake"
let run as is is my suggestion !
tx for all the great work
Reply
0 points,2 months ago
Thank you tungfa, dashuser33 and others for all your suggestions - it's definitely worth to consider them. Let's see how the cooperation looks during the first month and then decide whether defund or use those extra funds to extend the dmt-time for another 2+ months.

I wanted to assure you that on my side it's feasible. I altered all my commitments earlier so that the time window I was going to devote to Dash had no very rigid dates.
Reply
0 points,2 months ago
I agree. This is budget well spent. Use it for more features and time to properly invest in testing and documentation without burning yourself to deliver quickly.
Reply
7 points,2 months ago
I wouldn't be sleeping so comfortably without my collateral safely on Trezor using DMT. Thank you!
Reply
0 points,2 months ago
i agree
Reply
3 points,2 months ago
Yes. yep yes
Reply
3 points,2 months ago
I have not yet used your software, but i have followed its progress and i think it will be an essential piece of software for masternode owners .. so i'm voting yes. I hope your software will work also on the Ledger Blue as i was thinking about buying that hardware wallet some point in the future when there is masternode support for it.
Reply
3 points,2 months ago
Easy yes vote.
Reply
1 point,2 months ago
Dear MNOs. Thank you all for your feedback, This is very encouraging to continue working on the tool. I really, really appreciate it.

As for my mistake with the amount, it seems that the best solution would be to defunding after the first month. I apologize to everyone for this confusion.
Reply
5 points,2 months ago
Bertrand256, I'm a user of the DMT and it's made things easier from masternode owner's perspective. You have my votes!
Reply
0 points,2 months ago
Thanks for the feedback, I'm glad that the app is helpful and hopefully soon will be even more.
Reply
1 point,2 months ago
Dear Masternode owners. I've made a mistake in my proposal - according to my intentions the amount should be 66 Dash for two months (33 per month), but it turns out that 66 Dash is per each month. This was definitely not my intention. I will talk to someone from Core what would be the best solution - canceling my proposal and submitting a new one or maybe sending that surplus (66 Dash) to a Dash Core account. Until then, it is best to refrain from voting. If any of you have an idea how best to solve this, I will also be grateful for the suggestions. I suppose I'm not the first one to make such a mistake.
Reply
1 point,2 months ago
Actually it might be the first time, I don't recall it happening before at least :-p
I would be fine with de-funding after the first month if that's an option you are considering
Reply
1 point,2 months ago
So far it seems to be the best solution
Reply
2 points,2 months ago
Lets look at it this way : you got those yes votes for a reason, a good reason. And those yes votes are for 66 Dash for 2 months without any remarks about anyone finding the requested funding too high... thats gotta tell you something.
Reply
0 points,2 months ago
what it "tells you" is that MNs need to do better homework on how much proposals are costing vs how much they're asking for. An embarrassing mistake for the MNs imo.
Reply
3 points,2 months ago
What i'm trying to say is that 66 Dash per month over a period of 2 months is fine with me and does not necessarily needs lowering. Just reserve some of the funds for additional updates or something.
Reply
-1 point,2 months ago
i totally agree - let run as is - and use extra coins for another 2 month or whatever is needed
bertrand pinged me direct about this - obviously we totally trust him (he did great work for free for some time already - TREZOR DMT is 100% needed and working GREAT)
so let run as is and use funds for more features / time ; )
Reply
3 points,2 months ago
Why not propose for a period of 3 months? As a sw professional, I think 2 months is too short a time interval to do anything meaningful (meaning bringing software from v1 to v2). Testing takes most of the time, do not underestimate the importance of testing.
Reply
3 points,2 months ago
If the Dash price will rise (I'm sure it will), then after two months there will be some "fuel" to work a little longer for full-time :-)
Reply
2 points,2 months ago
And please, for the love of god, do not transform the source code from Python to C++. At least we enjoy security from dangling pointers and all sorts of memory management related chutzpah on Python as opposed to C++. It's also easier on your eyes to read.
Reply
0 points,2 months ago
:-) We'll see, maybe I'll prepare voting to confirm whether app's starting time is an issue as I see it or not. Anyway, it's a long-term plan and there will be much time to think it over.
Reply
3 points,2 months ago
I've already found it to be a very helpful tool. Voting yes, and look forward to further development.
Reply
5 points,2 months ago
I can confirm that the creator of this proposal is the owner of the software.
My votes are on it as well!
Reply
2 points,2 months ago
Thanks splawik21.
I'm sure you meant the "developer of the program" not the owner :-)
Reply
1 point,2 months ago
Thanks. Voting yes!
Reply
3 points,2 months ago
Terrific!
Reply
2 points,2 months ago
I just starting using it. Very helpful! I will vote yes!
Reply
2 points,2 months ago
Did you link the proposal somewhere in the forum? It is a yes from me, just need a confirmation that it is indeed you. Sorry if it is obvious and I don't see it.
Reply
1 point,2 months ago
Yes, I'm going to put links in the forum after I finish struggling with some text formatting issues :-) Thanks.
Reply