Author Topic: Let's create a foundation for competition among BTS developers  (Read 15906 times)

0 Members and 1 Guest are viewing this topic.

jakub

  • Guest
I would learn the codebase and document it for 3-4m
bts per month but i doubt any other senior developer would becausethey would look at chart first and extrapolate.

No one should be expected to document the codebase except the original author. Anything else would be highly misleading to future readers of the comments/documentation.

As far as documenting the code-base is concerned,  this has already been done to a large extent in the form of doxygen docs.
Therefore, IMO the main point is to create a tutorial that will guide you step by step how to use the code-base and create new smart-contracts and new operation types.

Something similar to this section of the Ethereum tutorial describing how some basic smart-contracts can be created and deployed:
https://ethereum.gitbooks.io/frontier-guide/content/contract_tutorials.html

Offline monsterer

I would learn the codebase and document it for 3-4m
bts per month but i doubt any other senior developer would becausethey would look at chart first and extrapolate.

No one should be expected to document the codebase except the original author. Anything else would be highly misleading to future readers of the comments/documentation.
My opinions do not represent those of metaexchange unless explicitly stated.
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline Samupaha

  • Sr. Member
  • ****
  • Posts: 479
    • View Profile
  • BitShares: samupaha
But maybe we don't really need classic "blockchain programming" to be able to implement & deploy our ideas expressed in BSIPs.
Maybe all that's needed is the ability to construct new smart-contracts, create new types of operations and thoroughly test them.

Just like Android - it took the most talented coders to create the platform. But building apps on it is not so demanding.
Maybe with Graphene this contrast is not so extreme but still I guess the most difficult task of designing & building the platform has been done. Now we need coders who will just make use of it.

At first we need just somebody who can build the app, Cryptonomex can check and test the code when it's ready.

Offline cass

  • Hero Member
  • *****
  • Posts: 4311
  • /(┬.┬)\
    • View Profile
wouldn't make much sense to me

Quote
it for 3-4m bts per month
█║▌║║█  - - -  The quieter you become, the more you are able to hear  - - -  █║▌║║█

Offline cube

  • Hero Member
  • *****
  • Posts: 1404
  • Bit by bit, we will get there!
    • View Profile
  • BitShares: bitcube
I would learn the codebase and document it for 3-4m
bts per month but i doubt any other senior developer would becausethey would look at chart first and extrapolate.

3-4M = Mille or/ Million?

3500000 BTS = 11893.99 USD --> for learning the codebase?
(You should not forget the advantage you'll get through this (knowledge, contacts, etc).. IMO a way to much)

Did he mean 3 to 4 months?
ID: bitcube
bitcube is a dedicated witness and committe member. Please vote for bitcube.

Offline cass

  • Hero Member
  • *****
  • Posts: 4311
  • /(┬.┬)\
    • View Profile
I would learn the codebase and document it for 3-4m
bts per month but i doubt any other senior developer would becausethey would look at chart first and extrapolate.

3-4M = Mille or/ Million?

3500000 BTS = 11893.99 USD --> for learning the codebase?
(You should not forget the advantage you'll get through this (knowledge, contacts, etc).. IMO a way to much)
« Last Edit: January 03, 2016, 10:33:50 am by cass »
█║▌║║█  - - -  The quieter you become, the more you are able to hear  - - -  █║▌║║█

Offline cube

  • Hero Member
  • *****
  • Posts: 1404
  • Bit by bit, we will get there!
    • View Profile
  • BitShares: bitcube
I would learn the codebase and document it for 3-4m
bts per month but i doubt any other senior developer would becausethey would look at chart first and extrapolate.

My estimation is about there too.
ID: bitcube
bitcube is a dedicated witness and committe member. Please vote for bitcube.

Offline jsidhu

  • Hero Member
  • *****
  • Posts: 1335
    • View Profile
I would learn the codebase and document it for 3-4m
bts per month but i doubt any other senior developer would becausethey would look at chart first and extrapolate.
Hired by blockchain | Developer
delegate: dev.sidhujag

jakub

  • Guest
Just like Android - it took the most talented coders to create the platform. But building apps on it is not so demanding.
Maybe with Graphene this contrast is not so extreme but still I guess the most difficult task of designing & building the platform has been done. Now we need coders who will just make use of it.

There is a chasm between the difficulty of building a smartphone app and the difficulty of deploying a P2P currency system change; principally that a bug in an app doesn't lose people money, whereas in blockchain projects, it very well can do.

That only confirms my assumption that the most crucial and difficult area is testing, not the coding itself.
That''s why I added creating a test network as an integral part of this proposal. This way the entire community can help with that.

IOHKCharles

  • Guest
This is an interesting idea. Has anyone written up something on a potential Bitshares Foundation?

Offline monsterer

Just like Android - it took the most talented coders to create the platform. But building apps on it is not so demanding.
Maybe with Graphene this contrast is not so extreme but still I guess the most difficult task of designing & building the platform has been done. Now we need coders who will just make use of it.

There is a chasm between the difficulty of building a smartphone app and the difficulty of deploying a P2P currency system change; principally that a bug in an app doesn't lose people money, whereas in blockchain projects, it very well can do.
My opinions do not represent those of metaexchange unless explicitly stated.
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

jakub

  • Guest
Just throwing out ideas here. Aside from the C++ learning curve, my perspective is more or less aligned with monsterer's. However I haven't seriously looked at the graphene C++ code, only the API commands and I find the API very complicated and not very well structured, with inconsistent arguments for similar API calls for example. I wouldn't surprise me it will be a steep learning curve for all but the most gifted C++ coders.

To clarify, I'm not saying that graphene codebase is difficult to learn in particular, I'm saying that blockchain programming in general is an incredibly specialised and complicated niche that you cannot expect even experienced c++ programmers to just pick up and run with, without prior learning, knowledge and experience in the field.

But maybe we don't really need classic "blockchain programming" to be able to implement & deploy our ideas expressed in BSIPs.
Maybe all that's needed is the ability to construct new smart-contracts, create new types of operations and thoroughly test them.

Just like Android - it took the most talented coders to create the platform. But building apps on it is not so demanding.
Maybe with Graphene this contrast is not so extreme but still I guess the most difficult task of designing & building the platform has been done. Now we need coders who will just make use of it.

Offline monsterer

Just throwing out ideas here. Aside from the C++ learning curve, my perspective is more or less aligned with monsterer's. However I haven't seriously looked at the graphene C++ code, only the API commands and I find the API very complicated and not very well structured, with inconsistent arguments for similar API calls for example. I wouldn't surprise me it will be a steep learning curve for all but the most gifted C++ coders.

To clarify, I'm not saying that graphene codebase is difficult to learn in particular, I'm saying that blockchain programming in general is an incredibly specialised and complicated niche that you cannot expect even experienced c++ programmers to just pick up and run with, without prior learning, knowledge and experience in the field.
My opinions do not represent those of metaexchange unless explicitly stated.
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

jakub

  • Guest
If learning graphene is really that difficult maybe the best we can do is take a small step approach and focus on small chunks of the API at a time. Document how the various API calls are used to achieve an existing end result, and perhaps from that context it would be possible to extrapolate how to use the API to accomplish other things.

I think we should make a clear distinction between:
(1) making use of the API (e.g. for building a mobile wallet or a bridge/gateway or a trading bot)
(2) adding new features (or modifying existing ones) to the BitShares code-base - I guess this is mainly done by creating new smart-contracts and new types of operations.

I guess (1) is (or will be) covered by xeroc and it seems that reasonably experienced coders can already handle this area, even without advanced C++ skills.

The problem I'm trying to address in this thread is (2).
Monsterer suggests (2) is extremely difficult and takes years of experience with blockchain technology to be able to master it.
But I recall BM saying during Mumble hangouts that the coding itself is relatively easy, the difficult part is testing and making sure there are no unexpected side-effects.

I guess we need to wait for the devs to shed some light on this.

Offline Thom

You're asking all the right questions Jakub. Perhaps it is unrealistic to expect a relatively short learning curve for an 5 - 10 year C++ coder without blockchain experience to be productive in coding BSIPs. I think that's what monsterer's perspective is, and it sounds contrary to Stan's.

Even a programmer like Andreaus Antonopolis doesn't claim to be an expert, tho he has written a book targeted to bitcoin programmers. He is up front in saying his skills as a C++ programmer are not as productive as other bitcoin programmers and he feels speaking, teaching and evangelizing are tasks he is better suited for.

If learning graphene is really that difficult maybe the best we can do is take a small step approach and focus on small chunks of the API at a time. Document how the various API calls are used to achieve an existing end result, and perhaps from that context it would be possible to extrapolate how to use the API to accomplish other things.

Just throwing out ideas here. Aside from the C++ learning curve, my perspective is more or less aligned with monsterer's. However I haven't seriously looked at the graphene C++ code, only the API commands and I find the API very complicated and not very well structured, with inconsistent arguments for similar API calls for example. I wouldn't surprise me it will be a steep learning curve for all but the most gifted C++ coders.
Injustice anywhere is a threat to justice everywhere - MLK |  Verbaltech2 Witness Reports: https://bitsharestalk.org/index.php/topic,23902.0.html