0 Members and 1 Guest are viewing this topic.
Quote from: jsidhu on January 03, 2016, 08:17:53 amI would learn the codebase and document it for 3-4mbts 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.
I would learn the codebase and document it for 3-4mbts per month but i doubt any other senior developer would becausethey would look at chart first and extrapolate.
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.
it for 3-4m bts per month
Quote from: jsidhu on January 03, 2016, 08:17:53 amI would learn the codebase and document it for 3-4mbts 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)
Quote from: jakub on January 02, 2016, 10:28:42 pmJust 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.
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.
Quote from: Thom on January 02, 2016, 08:33:13 pmJust 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.
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.
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.
The thing is you can't teach people that stuff, it's too time consuming and costly. You can only give them the tools so they can use them and build something themselves. As long as we have a few tutorials, examples, videos, etc, devs will only need to see them in order to build something themselves.
Quote from: monsterer on January 02, 2016, 05:32:11 pmQuote from: jakub on January 02, 2016, 04:46:54 pmI'd suggest this instead: one of our community members (someone who has a good understanding of BitShares) teams up with an external C++ expert and they write a tutorial together in close cooperation with CNX.What you're saying is like saying you're going to make a tutorial to turn a piano salesman into a world class pianist.OK, I'm in no position to argue with that as I've never done any blockchain development and never looked into Graphene's source code.@Stan and @xeroc seem to be more optimistic about this but none of them is an actual Graphene developer. BM's remarks have very vague so far.That's why we need CNX developers' opinion on this - they are the only people who know the answer to this important question:How much time and effort will it take to train an experienced C++ developer (without any deep understanding of the blockchain concept) to become an independent contributor capable of handling any of the tasks listed in our BSIPs?
Quote from: jakub on January 02, 2016, 04:46:54 pmI'd suggest this instead: one of our community members (someone who has a good understanding of BitShares) teams up with an external C++ expert and they write a tutorial together in close cooperation with CNX.What you're saying is like saying you're going to make a tutorial to turn a piano salesman into a world class pianist.
I'd suggest this instead: one of our community members (someone who has a good understanding of BitShares) teams up with an external C++ expert and they write a tutorial together in close cooperation with CNX.
Yes, @xeroc (if he wants) plus one C++ talent familiar with or interested in (passionate about) blockchain tech, working together, both paid. That's my preference. The C++ coder? I think we should pitch it like a scholarship and get a boatload of applicants to sort through, I would trust xeroc plus one core dev to do this, if we don't already have someone among us who is willing and able. I can help find candidates if y'all are at a loss for where to look.
Quote from: monsterer on January 02, 2016, 04:07:04 pmQuote from: jakub on January 02, 2016, 03:59:26 pmSo what do you propose?If it is the case that for an "uninitiated c++ developer" it will take years to acquire enough knowledge to implement & deploy any of our BSIPs, then we are screwed indeed.Instead of throwing away money trying to teach something so fantastically complicated, you should recruit talent with the necessary skills already under their belt. Advertise on bitcointalk.org, that's about the only place I know where these guys hang out.So you suggest to advertise on bitcointalk.org for a blockchain guy to come to our community, extract knowledge from CNX and write it down for us?It might happen but it's not very likely to me.I'd suggest this instead: one of our community members (someone who has a good understanding of BitShares) teams up with an external C++ expert and they write a tutorial together in close cooperation with CNX.And this tutorial should not assume deep prior knowledge about the blockchain technology (only general understanding of the concept). This is how I see it.
Quote from: jakub on January 02, 2016, 03:59:26 pmSo what do you propose?If it is the case that for an "uninitiated c++ developer" it will take years to acquire enough knowledge to implement & deploy any of our BSIPs, then we are screwed indeed.Instead of throwing away money trying to teach something so fantastically complicated, you should recruit talent with the necessary skills already under their belt. Advertise on bitcointalk.org, that's about the only place I know where these guys hang out.
So what do you propose?If it is the case that for an "uninitiated c++ developer" it will take years to acquire enough knowledge to implement & deploy any of our BSIPs, then we are screwed indeed.
There is ample documentation and examples within the code and a community of developers ready to answer any questions those developers may have.
Quote from: jakub on January 02, 2016, 01:15:45 pmI have given some thought to the matter of Graphene tutorial and here are my conclusions:(1) Our situation is quite similar to Android - we don't need to teach people a new programming language, we only need to teach them how to use a known language in a very specific environment. Sorry, this is nonsense. You propose to teach an uninitiated c++ developer something which takes years to master. This is not possible within the budget.
I have given some thought to the matter of Graphene tutorial and here are my conclusions:(1) Our situation is quite similar to Android - we don't need to teach people a new programming language, we only need to teach them how to use a known language in a very specific environment.
Quote from: jakub on January 02, 2016, 01:53:28 pmThis is what Ethereum currently has:https://ethereum.gitbooks.io/frontier-guide/content/Very simple but appears to be quite practical.It has a search utility which is another important feature of a good tutorial.Nice find .. i can definitely improve our stuff on that!
This is what Ethereum currently has:https://ethereum.gitbooks.io/frontier-guide/content/Very simple but appears to be quite practical.It has a search utility which is another important feature of a good tutorial.
Quote from: xeroc on January 02, 2016, 03:16:02 pmQuote from: jakub on January 02, 2016, 01:53:28 pmThis is what Ethereum currently has:https://ethereum.gitbooks.io/frontier-guide/content/Very simple but appears to be quite practical.It has a search utility which is another important feature of a good tutorial.Nice find .. i can definitely improve our stuff on that!they are using gitbooks, we used as well for the past BitAssets WP IRRC
Quote from: xeroc on January 02, 2016, 12:36:46 pmQuote from: jakub on January 02, 2016, 09:57:25 amQuote from: xeroc on December 31, 2015, 04:05:27 pmExcept for "- create working examples of "hello world" smart contracts and operations,"that is exactly what I am doing already for quite some timeIn your worker proposal you state very vaguely:QuoteLots of Documentation (e.g. docs.bitshares.eu), Whitepapers, BSIPs,@xeroc , is there any place where I can find what areas you intend to address in the documentation covered by your worker proposal? And also what areas you definitely don't intend to address?This would help us greatly in avoiding overlapping.There is nothing that I do NOT want to have in there .. (except maybe politics) ..There is also a poll on what I should work on next:https://bitsharestalk.org/index.php/topic,19967.new.html#newI tackled some of them alreadyI know that ideally we would like to have everything united in one place.However, please be more specific what your plans and capabilities are for the next 2-3 months, as otherwise it's hard for me to specify goals for a person attempting to create a Graphene development tutorial.Telling him/her "just work with xeroc and fill in whatever you can" is not specific enough IMO.My aim is to create a tutorial which will enable an experienced C++ developer to code, test and deploy something as complex as BSIP #6What parts of this know-how will you cover? What areas are you not able to cover?EDIT: Judging from the poll, it looks to me that your documentation is aimed at those two use-cases:- how to use BitShares- how to create third-party apps that interface with BitShares (e.g. mobile wallets, gateways, bridges)And what you don't seem to cover is anything that introduces changes affecting the BitShares protocol (i.e. requiring hard-forks).Is it a fair definition of the scope of your docs?(If so, how does your intention to write "hello world" contracts and operations fit into this?)
Quote from: jakub on January 02, 2016, 09:57:25 amQuote from: xeroc on December 31, 2015, 04:05:27 pmExcept for "- create working examples of "hello world" smart contracts and operations,"that is exactly what I am doing already for quite some timeIn your worker proposal you state very vaguely:QuoteLots of Documentation (e.g. docs.bitshares.eu), Whitepapers, BSIPs,@xeroc , is there any place where I can find what areas you intend to address in the documentation covered by your worker proposal? And also what areas you definitely don't intend to address?This would help us greatly in avoiding overlapping.There is nothing that I do NOT want to have in there .. (except maybe politics) ..There is also a poll on what I should work on next:https://bitsharestalk.org/index.php/topic,19967.new.html#newI tackled some of them already
Quote from: xeroc on December 31, 2015, 04:05:27 pmExcept for "- create working examples of "hello world" smart contracts and operations,"that is exactly what I am doing already for quite some timeIn your worker proposal you state very vaguely:QuoteLots of Documentation (e.g. docs.bitshares.eu), Whitepapers, BSIPs,@xeroc , is there any place where I can find what areas you intend to address in the documentation covered by your worker proposal? And also what areas you definitely don't intend to address?This would help us greatly in avoiding overlapping.
Except for "- create working examples of "hello world" smart contracts and operations,"that is exactly what I am doing already for quite some time
Lots of Documentation (e.g. docs.bitshares.eu), Whitepapers, BSIPs,
Quote from: monsterer on January 02, 2016, 11:13:00 amHiring some latvian coder from freelancer.com, or some such other generic source will be a waste of time; they will simply not have the expertise to do the job properly even if they do know c++ inside out. Simply put, blockchain programming is an extremely specialised niche within a niche and you must expect to pay a premium to get someone who knows what they are doing.Moving forward, I suggest you fund CNX to produce a series of competency tests which test candidate programmers for their knowledge of low level, blockchain oriented systems, design methodologies and general c++. CNX would need to be in charge of the hiring process, because they know their systems inside out.Completely agreed here ...
Hiring some latvian coder from freelancer.com, or some such other generic source will be a waste of time; they will simply not have the expertise to do the job properly even if they do know c++ inside out. Simply put, blockchain programming is an extremely specialised niche within a niche and you must expect to pay a premium to get someone who knows what they are doing.Moving forward, I suggest you fund CNX to produce a series of competency tests which test candidate programmers for their knowledge of low level, blockchain oriented systems, design methodologies and general c++. CNX would need to be in charge of the hiring process, because they know their systems inside out.
Before we go searching for talented C++ coders outside of the BitShares community, might it not be wise to inquire as to which of our local bts community talents could be persuaded to put time into such an effort? @xeroc is already well along in his efforts. What about @svk? Might a sufficiently well paid worker proposal be able to persuade some of our highly talented friends to focus on developing this 'foundation'?If we're going to spend bts for such efforts, if possible I'd prefer to see it go towards people whose reputations and interests are already firmly aligned with the success of BitShares.Thoughts?
Quote from: lovejoy on January 02, 2016, 03:53:36 amBefore we go searching for talented C++ coders outside of the BitShares community, might it not be wise to inquire as to which of our local bts community talents could be persuaded to put time into such an effort? @xeroc is already well along in his efforts. What about @svk? Might a sufficiently well paid worker proposal be able to persuade some of our highly talented friends to focus on developing this 'foundation'?If we're going to spend bts for such efforts, if possible I'd prefer to see it go towards people whose reputations and interests are already firmly aligned with the success of BitShares.Thoughts?Please contact @hybridd and @kuro112 . I am not sure how good they are with c++, but they could possibly help. Hybridd has been providing support for sharebits in the freebie section and kuro has written tutorials in the past (with no expectations of compensation ) - https://bitsharestalk.org/index.php/topic,19612.msg251784.htmlRegardsXypher
5. What subjects will the documentation by xeroc cover as opposed to the documentation aimed at developers?Let's let Xeroc answer that. He is free to focus where he feels he can do the most good.
Quote from: jakub on December 30, 2015, 10:38:44 pm- thoroughly learn Graphene and its API,- document it by expanding the existing documentation,- create friendly tutorials for C++ developers wanting to work with Graphene,- launch a test network,- and for the next 2-3 months afterwards play the role of an "ask me anything" expert at our full disposalExcept for "- create working examples of "hello world" smart contracts and operations,"that is exactly what I am doing already for quite some time
- thoroughly learn Graphene and its API,- document it by expanding the existing documentation,- create friendly tutorials for C++ developers wanting to work with Graphene,- launch a test network,- and for the next 2-3 months afterwards play the role of an "ask me anything" expert at our full disposal
Required skills:- solid expertise in C++- proficiency in spoken and written EnglishPreferred experience:- familiarity with the blockchain concept and/or BitShares- already worked as a CNX contractor
Nowadays nobody outsider knows what's happening in Bitshares because everything is in here on the forum. If somebody doesn't know what to search for, it's kinda hard to get onboard with development.
Hangouts are nice of course, but I have found it difficult to get anybody outsider listen to an hour of talking.
I & think most would support an initiative to bring in new Latvian/other devs as individuals or even ultimately as a team under your management, with your position being paid more generously of course, if that's something you'd consider.
I have been outsourcing since 1993. I did have a large office with in-house devs and all that overhead for over 16 years but to stay in business you HAVE to outsource and learn how to write detailed project descriptions with milestones, know who the buzzword "devs" are, know who the high value devs are, learn to simplify your english so that you can communicate with anyone in any country, always crosstrain everyone, know what to pay them (don't pay them too little and certainly do not pay them too much (for numerous reasons)).. the list goes on and on. Fuzzy and I chatted about this for a bit, maybe we can chat about this more during the mumble on friday. Call them slaves if you like, but the fact is, $900 goes a looooong way in some countries and those guys drive nice cars, they certainly do not feel like slaves. They feel very successful. They work their ass off too, stay with me for years, never complain about vacation time, or their work hours, or need a fukn gym membership or health benefits from me either. I could go on and on why I only outsource with freelancers. Do you know how much stuff I could build with $45,000? JEEZ This friday (tomorrow) fuzzy and I will be talking about OPENPOS (https://bitsharestalk.org/index.php/topic,20762.0/all.html) and what that 19K project has built and is still building. Those little 2BTS donations (http://i.imgur.com/JyNtgOU.jpg) at the cash registers and mobile wallets will go a long way for us and provide a hell of a lot of instant liquidity and cashflow so that I can build us even more products and take BitShares to the moon.
Marvellous idea jakub. Perhaps kencode can find a Latvian developer with the requisite skills in addition to very good English?
Quote from: kenCode on December 30, 2015, 10:23:28 pmI can get expert coders out of Latvia for $900 month who will work on average 10-12 hour per day (because they WANT to) and will produce typically DOUBLE what any of my American coders ever could. Also, Russia, Turkey and Ukraine are about the same rates. I still have an expert python/C++ guy in India too but his rate is close to American salaries these days, India just isn't as competitive anymore.Think outside the borders. You guys want to get out of this mess? Talk to me.@kenCode The thing is, do "expert coders out of Latvia for $900" speak (and write) fluent English so that they can communicate with CNX and produce comprehensive documentation?
I can get expert coders out of Latvia for $900 month who will work on average 10-12 hour per day (because they WANT to) and will produce typically DOUBLE what any of my American coders ever could. Also, Russia, Turkey and Ukraine are about the same rates. I still have an expert python/C++ guy in India too but his rate is close to American salaries these days, India just isn't as competitive anymore.Think outside the borders. You guys want to get out of this mess? Talk to me.
Listen, I never said CNX should disappear from bts. I just don't want them to be the dominant player in both bts knowledge and bts stake. That is centralization.
C++ Dev, 80k-ish / year full time salary?http://www.payscale.com/research/US/Skill=C%2b%2b/Salary#by_Years_Experience