Rob Halförd - (Gridcoin)

  • Content count

  • Joined

  • Last visited

  • Days Won


Rob Halförd - (Gridcoin) last won the day on April 2

Rob Halförd - (Gridcoin) had the most liked content!

About Rob Halförd - (Gridcoin)

  • Rank
    Gridcoin Developer
  • Birthday 06/18/1971

Contact Methods

  • Website

Profile Information

  • Country
    Falkland Islands (malvinas)
  • Location
    Nakamoto Province
  • Gender
  • Interests
    Karaoke, Gridcoin

Recent Profile Visitors

2,464 profile views
  1. Gridcoin Research Mandatory Upgrade - Resolve syncing problem with beacon business logic. - Mandatory upgrade block : 860500
  2. All- The latest mandatory didnt fix the issue (as you can see). Denravonska pointed out the primary reason. Im working on merging in the change now. CCEX knows about the issue and put us in maintenance and is waiting for the new version. The new mandatory should be out in 1 hour.
  3. Gridcoin Research Mandatory Upgrade - Added checkpoint at 850000 - Enforce beacon age; beacons over 6 months are discarded network wide. Beacons may be re-sent without restarting if they are expired. - To sync: From the command line on windows: grcrestarter downloadblocks. NOTE ** We still need 51% to upgrade to stay in sync. After block 855000, clients enforce the mandatory upgrade.
  4. As of approx. 3 days ago, some nodes started logging the error 'BAD CPID' - and we started to have a consensus issue. The root cause of the issue is that our 6 month beacon timestamp invalidation process did not handle nodes who stayed online for extended periods, therefore, we actually need a stronger business logic rule in place. The upcoming patch implements a rule that invalidates beacons greater than 6 months old explicitly. (It also allows a beacon to be sent without rebooting if the current privately owned beacon is > 6 months old). Progress: The change has been coded and requires a mandatory upgrade. I notified CCEX to take us down for maintenance. The mandatory switchover is at block 855000. As you may know Denravonska and the other new volunteers have been doing an excellent job. Therefore, we are testing Github to ensure the second branch with its many commits has not broken our build process. I just tested that, and we are still doing fine in that respect. We should have a mandatory release in approx 1 hour. If anyone is involved with our partners or other exchanges, please let them know to take us down for maintenance. After block 855000 the network will disconnect from other nodes who have not upgraded.
  5. Gridcoin Research Leisure Upgrade - Removed the dependency on Netsoft to test a new CPID - Modified 'list cpids' to detect the users projects and CPID without a call to Netsoft - Modified 'execute proveownership' to work in a decentralized fashion - Tested 'execute advertisebeacon' to ensure it works with a valid new CPID with 0 rac - Note: New users must have boinc installed with at least one project mounted in order to advertise a beacon and the Gridcoin e-mail setting must match the project server e-mail address value.
  6. On the diagnostic page, can you please paste the error contents of the stack trace? ************** Exception Text ************** System.InvalidCastException: Conversion from string "" to type 'Double' is not valid. ---> System.FormatException: Input string was not in a correct format. at Microsoft.VisualBasic.CompilerServices.Conversions.ParseDouble(String Value, NumberFormatInfo NumberFormat) at Microsoft.VisualBasic.CompilerServices.Conversions.ToDouble(String Value, NumberFormatInfo NumberFormat) --- End of inner exception stack trace --- at Microsoft.VisualBa Thanks-Fixed in the next version.
  7. Hey is Grisou out here? Quez mentioned you want to help. If you are still available you could potentially grab Joe Krug's voting code and merge it in - and modify it from a bar chart to a pie chart in linux. The goal is to have a working voting UI from linux QT. Currently the code compiles but it renders a bar chart and I believe Joe said it crashes under certain circumstances. So I did not merge it in the repo yet, but I can rename it to an unused class and let you improve it if you have time. Rob
  8. Hi All, So I'll try to cover the lions share of whats been happening. First, Alien mentioned above that I'm a Sr. Programmer at a midsize data company. That used to be the case. However approx. 2 years ago, I started a consulting company and quit my day job. I thought this would be positive for Gridcoin in that I could hire someone to relieve my responsibilities and I could focus more on Gridcoin. Over the last 2 years, I have not successfully been able to train anyone to alleviate the workload. The only thing I have Not tried, is interviewing a local c# full time candidate. Thats what I am doing now. (Right now). In November, one of my clients had a Huge change request. They asked this project be completed by the end of of 2016. It is finally finished. However they require support now. Approx 2 weeks ago, I raised my rates. They "seemed" to hesitantly accept the rates. So in summary, I am now hiring a local programmer and we will see what this brings. As far as Gridcoin goes, I would like to launch a new initiative (regarding development). Instead of me being 100% responsible, why dont we have a volunteer or set of volunteers bring on a fairly advanced programmer, and we can try cross training the devs, and give them the deploy keys (as long as they prove to be proficient). Then in parallel I will still attempt to hire a proficient c++ developer, funded partially by the foundation (pending the outcome of the future vote). I feel that we are starting to lag behind, and through this effort (cross training) I think we can build up a dev team and catch up on progress. In addition I will not be the only central point of contention for the coin: we will have a decentralized dev department. I would also like to do this with the web site (cross train a webmaster) and any other centralized repo we have left. On the subject of Removing the Team requirement: I'm seeing a lot of messages, mostly by the same people, that want to remove the team requirement, and they want to know what technical requirements need to be done to remove the constraint. We can talk about that, but first I want to ask a few questions, to let everyone understand the ramifications. If we were to Remove the team Gridcoin requirement, imo, Gridcoin would fall into shambles (as far as our compute level on boincstats-not necessarily our price or user count). A user posted on here a few weeks back: We are #4 on boincstats on such and such page, look at the growth! The only thing stopping us from moving up is removing the team so we can be #1! We would have more interest (by new users). NO. That is Not the case, here is why. Once you remove the team, random users through attrition and maintenance will gradually not care about being part of our team, and when they reset a project or recreate a project they wont go through the hassle of selecting Gridcoin. Our boincstats will slowly drop to the bottom rung. Then we lose all leverage with any future service provider or deal (Ideas such as RTMs and Quezs to sell Burp rendering, or sell computing power) are out the window. We would have to write our own version of boincstats, to convey the compute power of our network and have people rely on that UI or text dump, instead of the gold standard (boinc stats). We could not compare ourselves side by side to any reference point. So that also weakens our integrity. I think the only way we can approach this is to solve the data aggregation key problem first. Maybe persuade boincstats to make an aggregation key for us. But their answer will be - we already have aggregation by Team, why make a new one? If we had a way to report on our network without a team, via boincstats then to me it would make sense to consider the idea as viable. So to summarize, I think that aggregation key makes more sense to pursue first, to find if its even possible. Or are we thinking along these lines: Once boinc participants know they can also be compensated, the huge influx of new users will constantly join, and we "become" the entire boinc network (as word would spread to every boinc user). We would have no boincstats reports, but we instead write a report and UI that shows the computing power. It still feels unusual to have no ability to compare our network to any other live teams or users in any type of leaderboard list. Realize guys, that since boinc is running venerable software its not easy to add a web field for Gridcoin across all projects (as that would take a tweak in 70 places) and there is no guarantee anyone would honor the change - or boincstats - and no guarantee a process will be changed for us - hence the dilemma here. Rob
  9. Hi All, I realize everyone wants to know whats going on and I will have more details ASAP. Everything is going fine, it's just extremely busy. BTW, I believe we owe Evoked a reimbursement, Evoked please fill in the amount here so we can reimburse you: I've been working on the roadmap. Here is my progress so far: ROADMAP: ROADMAP PRINTABLE PAGE IN ROW FORMAT: Please review and let me know if I missed anything, or need to add more details to one of the future entries, or if you have a plan on adding something that we need in the future to the roadmap. Have a great evening.
  10. Sorry for the delay, if you ever dont hear back please send email to How much is the expense, is it approved, and where do we send it?
  11. On the diagnostic page, can you please paste the error contents of the stack trace?
  12. Gridcoin Research Leisure Upgrade - Catch HTTP error on Diagnostics page - Add checkpoints up to 770000 - Remove unused functions (cryptolottery, options trading) - Merge in Denravonska #158 - CPU-Usage-Fix: This fix prevents GRC from copying memory structs and is designed to lower CPU usage to the same as other coins.
  13. Sorry for the delay, if you ever dont hear back please send email to How much is the expense, is it approved, and where do we send it?
  14. Gridcoin Research Leisure Upgrade - Remove legacy hardcoded hashes and unused functions (lower memory consumption), remove millisleeps (attempt to prevent UI blocks), remove Option functions - Add legacy code that allows 1000 blocks to be loaded (this is an attempt to bring back our fast syncing) and to help the ARM sync - Attempt to improve arm syncing - Remove peek cache (lower memory consumption) - Made magnitude vote weight Total Money Supply / 5.67 * Magnitude