{"action":"created","issue":{"url":"https://api.github.com/repos/Nick-Gottschlich/Social-Amnesia/issues/11","repository_url":"https://api.github.com/repos/Nick-Gottschlich/Social-Amnesia","labels_url":"https://api.github.com/repos/Nick-Gottschlich/Social-Amnesia/issues/11/labels{/name}","comments_url":"https://api.github.com/repos/Nick-Gottschlich/Social-Amnesia/issues/11/comments","events_url":"https://api.github.com/repos/Nick-Gottschlich/Social-Amnesia/issues/11/events","html_url":"https://github.com/Nick-Gottschlich/Social-Amnesia/issues/11","id":339157562,"node_id":"MDU6SXNzdWUzMzkxNTc1NjI=","number":11,"title":"Restructurize the code","user":{"login":"Ickerday","id":12597189,"node_id":"MDQ6VXNlcjEyNTk3MTg5","avatar_url":"https://avatars0.githubusercontent.com/u/12597189?v=4","gravatar_id":"","url":"https://api.github.com/users/Ickerday","html_url":"https://github.com/Ickerday","followers_url":"https://api.github.com/users/Ickerday/followers","following_url":"https://api.github.com/users/Ickerday/following{/other_user}","gists_url":"https://api.github.com/users/Ickerday/gists{/gist_id}","starred_url":"https://api.github.com/users/Ickerday/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Ickerday/subscriptions","organizations_url":"https://api.github.com/users/Ickerday/orgs","repos_url":"https://api.github.com/users/Ickerday/repos","events_url":"https://api.github.com/users/Ickerday/events{/privacy}","received_events_url":"https://api.github.com/users/Ickerday/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-07-07T16:23:30Z","updated_at":"2018-07-07T23:00:00Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"Making myself acquainted with the code I found some articles with Tkinter best practices. Those along with some refactoring should reduce redundancy and make the code more easily extendable, say when the work would begin on a Facebook service. \r\nIt's also a good occasion to learn Tkinter better.\r\n\r\nSome proposed outlines:\r\n- Encapsulation + docstrings instead of long methods with lots of comments (readability + sphinx support in the future?)\r\n- more classes, \r\n- camelCase to pascal_case (and other standard code style stuff)\r\n- removal of wildcard imports\r\n- Type hints? (I'd love to finally see those in action, but those should probably come after the refactoring itself)\r\n\r\nAnyone with more Python and Tkinter experience is more than welcome to help!\r\n\r\nArticles:\r\nhttps://www.begueradj.com/tkinter-best-practices.html\r\nhttps://sukhbinder.wordpress.com/2014/12/25/an-example-of-model-view-controller-design-pattern-with-tkinter-python/\r\nhttps://python-textbok.readthedocs.io/en/latest/Introduction_to_GUI_Programming.html\r\nhttps://docs.python.org/3.7/library/tkinter.html#a-simple-hello-world-program"},"comment":{"url":"https://api.github.com/repos/Nick-Gottschlich/Social-Amnesia/issues/comments/403248311","html_url":"https://github.com/Nick-Gottschlich/Social-Amnesia/issues/11#issuecomment-403248311","issue_url":"https://api.github.com/repos/Nick-Gottschlich/Social-Amnesia/issues/11","id":403248311,"node_id":"MDEyOklzc3VlQ29tbWVudDQwMzI0ODMxMQ==","user":{"login":"Nick-Gottschlich","id":10564265,"node_id":"MDQ6VXNlcjEwNTY0MjY1","avatar_url":"https://avatars3.githubusercontent.com/u/10564265?v=4","gravatar_id":"","url":"https://api.github.com/users/Nick-Gottschlich","html_url":"https://github.com/Nick-Gottschlich","followers_url":"https://api.github.com/users/Nick-Gottschlich/followers","following_url":"https://api.github.com/users/Nick-Gottschlich/following{/other_user}","gists_url":"https://api.github.com/users/Nick-Gottschlich/gists{/gist_id}","starred_url":"https://api.github.com/users/Nick-Gottschlich/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Nick-Gottschlich/subscriptions","organizations_url":"https://api.github.com/users/Nick-Gottschlich/orgs","repos_url":"https://api.github.com/users/Nick-Gottschlich/repos","events_url":"https://api.github.com/users/Nick-Gottschlich/events{/privacy}","received_events_url":"https://api.github.com/users/Nick-Gottschlich/received_events","type":"User","site_admin":false},"created_at":"2018-07-07T23:00:00Z","updated_at":"2018-07-07T23:00:00Z","author_association":"OWNER","body":"I agree with this, one of the next things I was planning on working on was a big refactor. Looks like you might've beat me to it though 🙂. \r\n\r\nI'm primarily a Javascript developer, so I don't have a lot of experience with Python best practices (in fact, part of the purpose of building this was to learn Python better).\r\n\r\n- Encapsulation + docstrings instead of long methods with lots of comments (readability + sphinx support in the future?) - Agreed\r\n- more classes - agreed, although I don't know how classes work in Python at all, would be a learning experience for me\r\n- camelCase to pascal_case (and other standard code style stuff) - Sure, we should probably be going with https://www.python.org/dev/peps/pep-0008/ (since as I understand it it's *the* python styling guide).\r\n- removal of wildcard imports - agreed, I don't know how to do this though\r\n- Type hints - I have a very limited understanding of this, but it seems to be a sort of static typing for Python? Seems interesting."}}
{"actor":{"display_login":"Nick-Gottschlich"}}