{"action":"created","issue":{"url":"https://api.github.com/repos/ladybug-analysis-tools/honeybee-core/issues/8","repository_url":"https://api.github.com/repos/ladybug-analysis-tools/honeybee-core","labels_url":"https://api.github.com/repos/ladybug-analysis-tools/honeybee-core/issues/8/labels{/name}","comments_url":"https://api.github.com/repos/ladybug-analysis-tools/honeybee-core/issues/8/comments","events_url":"https://api.github.com/repos/ladybug-analysis-tools/honeybee-core/issues/8/events","html_url":"https://github.com/ladybug-analysis-tools/honeybee-core/issues/8","id":140421781,"number":8,"title":"Is having separate libraries for dynamo and grasshopper is the best approach for development?","user":{"login":"mostaphaRoudsari","id":2915573,"avatar_url":"https://avatars.githubusercontent.com/u/2915573?v=3","gravatar_id":"","url":"https://api.github.com/users/mostaphaRoudsari","html_url":"https://github.com/mostaphaRoudsari","followers_url":"https://api.github.com/users/mostaphaRoudsari/followers","following_url":"https://api.github.com/users/mostaphaRoudsari/following{/other_user}","gists_url":"https://api.github.com/users/mostaphaRoudsari/gists{/gist_id}","starred_url":"https://api.github.com/users/mostaphaRoudsari/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mostaphaRoudsari/subscriptions","organizations_url":"https://api.github.com/users/mostaphaRoudsari/orgs","repos_url":"https://api.github.com/users/mostaphaRoudsari/repos","events_url":"https://api.github.com/users/mostaphaRoudsari/events{/privacy}","received_events_url":"https://api.github.com/users/mostaphaRoudsari/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/ladybug-analysis-tools/honeybee-core/labels/best%20practice%20discussions","name":"best practice discussions","color":"eb6420"},{"url":"https://api.github.com/repos/ladybug-analysis-tools/honeybee-core/labels/new%20development","name":"new development","color":"fef2c0"}],"state":"open","locked":false,"assignee":{"login":"mostaphaRoudsari","id":2915573,"avatar_url":"https://avatars.githubusercontent.com/u/2915573?v=3","gravatar_id":"","url":"https://api.github.com/users/mostaphaRoudsari","html_url":"https://github.com/mostaphaRoudsari","followers_url":"https://api.github.com/users/mostaphaRoudsari/followers","following_url":"https://api.github.com/users/mostaphaRoudsari/following{/other_user}","gists_url":"https://api.github.com/users/mostaphaRoudsari/gists{/gist_id}","starred_url":"https://api.github.com/users/mostaphaRoudsari/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mostaphaRoudsari/subscriptions","organizations_url":"https://api.github.com/users/mostaphaRoudsari/orgs","repos_url":"https://api.github.com/users/mostaphaRoudsari/repos","events_url":"https://api.github.com/users/mostaphaRoudsari/events{/privacy}","received_events_url":"https://api.github.com/users/mostaphaRoudsari/received_events","type":"User","site_admin":false},"milestone":null,"comments":13,"created_at":"2016-03-12T22:15:32Z","updated_at":"2016-03-30T14:49:43Z","closed_at":null,"body":"This is a critical question to be answered before moving on with the development. Currently ladybug-core and honeybee-core are developed to some extend and for each of them one geometry library is created: ladybug-dynamo and honeybee-grasshopper.\r\n\r\nNow that I want to start using honeybee-grasshopper in Dynamo for sunlight hours analysis I'm not sure if having two separate libraries is the right decision. It's True that geometry libraries for Grasshopper and Dynamo are different but the majority of the code which is not library-dependent is shared. Also many of the geometry operations in Grasshopper and Dynamo are very similar.\r\n\r\nI'm thinking to try some duck typing instead and see if we can keep the libraries as a single library. My only concern is that it makes it for other developers to contribute to the code later on. If we want to go with dock typing we need to have a clear platform."},"comment":{"url":"https://api.github.com/repos/ladybug-analysis-tools/honeybee-core/issues/comments/203469509","html_url":"https://github.com/ladybug-analysis-tools/honeybee-core/issues/8#issuecomment-203469509","issue_url":"https://api.github.com/repos/ladybug-analysis-tools/honeybee-core/issues/8","id":203469509,"user":{"login":"mostaphaRoudsari","id":2915573,"avatar_url":"https://avatars.githubusercontent.com/u/2915573?v=3","gravatar_id":"","url":"https://api.github.com/users/mostaphaRoudsari","html_url":"https://github.com/mostaphaRoudsari","followers_url":"https://api.github.com/users/mostaphaRoudsari/followers","following_url":"https://api.github.com/users/mostaphaRoudsari/following{/other_user}","gists_url":"https://api.github.com/users/mostaphaRoudsari/gists{/gist_id}","starred_url":"https://api.github.com/users/mostaphaRoudsari/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mostaphaRoudsari/subscriptions","organizations_url":"https://api.github.com/users/mostaphaRoudsari/orgs","repos_url":"https://api.github.com/users/mostaphaRoudsari/repos","events_url":"https://api.github.com/users/mostaphaRoudsari/events{/privacy}","received_events_url":"https://api.github.com/users/mostaphaRoudsari/received_events","type":"User","site_admin":false},"created_at":"2016-03-30T14:49:43Z","updated_at":"2016-03-30T14:49:43Z","body":"Thanks @chriswmackey, @sariths. At least we all agree that this is the way to go.\r\n\r\nInterestingly enough, for the exact same reason as Chris I was thinking that we should keep the libraries **with geometry** ladybug and honeybee as that's what the plugins are going to use and I was thinking keeping the names is important. Now that I read Chris's comment that also makes total sense to me too.\r\n\r\nIt seems the key is to keep ladybug and honeybee in the name of the libraries. What about following naming convention for libraries like *cpickle* and *pickle*? you Many people still write ```import cpickle and pickle```, and it's very similar from there. We also have *unittest* and *unittest2*.\r\n\r\nSomething like *ladybug* and *ladybugx*, *honeybee* and *honeybeex* respectively for core and geometry libraries so ladybug and honeybee stays in the name of both libraries and you can do ```import ladybugx as ladybug``` for the geometry libraries and so on.\r\n\r\nOnce we make the decision I will go ahead and rename/re-structure the repositories."}}