Jump to content
UBot Underground

Recommended Posts

Hi everyone,

Helloinsamnia's ebook on clean code really opened my eyes to creating clean code. It's only been 3 days but this concept has been a game changer already due to my interest in creating complex projects on an industrious level.
 

The Principles of Clean Architecture by Uncle Bob Martin

 
 

10 Tips For Clean Code
 

Clean code in Python

 

In additions to the clean code skill, it would be good to understand effective unit testing/Log testing. To

Another game changer for me this week was to start designing the logic via flow charts in LucidChart .

So, last month, i was overwhelmed by the code after searching through 500-1000 lines of uScript, But now with the clean coding process, I look at the bot code and it's like reading an elegant Book line by Line, with appropriate names, with meaningful Naming in Great Long Detail. Some of my VAR names are huge now but I can read it and know in 4 seconds precisely why it's there, what it is for, what will it do, etc. 

Unit Testing and Clean Architecture are lately on my mine a lot. As they seem to be the primary limiting factor in creating huge complex systems. Really these principles i consider META principles that apply accross all verticles...

What do you guys think, anything to add?

Do you have anything to add RE 'Clean Coding Concepts'?
Books?
Do you know more of these advanced coding concepts?

Post a screenshot of your Node Tree so we can compare clean coding concepts? I'll do this later i have ran out of time for this post!

Good Day Builders,

Edited by johnwalton
Link to post
Share on other sites

Yeah even for me its the same experience, it helped a lot and although he did talk about it in bits and pieces in his other courses, and its quite surprising how our own memory fails us sometimes, like things are fresh while coding but after few days to go back and look at huge lines of messy code then it can get frustrating!

  • Like 1
Link to post
Share on other sites

*********
Update:

uBottic Node Tree, starting from macro-level to micro. (will not include original noodle code version due to my unorganized Dev folder) maybe git hub would be better?

1.
http://weekendwinners.club/images/1.jpg

2.
http://weekendwinners.club/images/2.jpg

3.
http://weekendwinners.club/images/3.jpg

4.
http://weekendwinners.club/images/4.jpg

Do you see something here that could be done better?
And,If you can and are willing, post some examples of clean code here toohttp://weekendwinners.club/images/1.png

What to Unit Test? is it a Good idea to create a system to process failed Establish Tests if many, >200 Log type records? Would be sweet to know to test effectively..

Edited by johnwalton
Link to post
Share on other sites

Well don't forget what the preface of the book said ;)

 

It's easy to take it too far but at least you are learning and that's a good step in the right direction, just don't let it inhibit your coding is all.

Will do! Printed your eBook to read later

Edited by johnwalton
Link to post
Share on other sites

*********

Update:

 

uBottic Node Tree, starting from macro-level to micro. (will not include original noodle code version due to my unorganized Dev folder) maybe git hub would be better?

 

The first thing I notice - and I see this a lot actually - is that you put your define declarations right in another command. You can do this if you want but I think it's better to put them elsewhere. Let me show you a brief example:

 AddNumbers()
define AddNumbers {
    set(#sumOfTwoNumbers,$AddTwoNumbers(14, 3),"Global")
    set(#sumOfThreeNumbers,$AddThreeNumbers(5, 6, 7),"Global")
    divider
define $AddTwoNumbers(#_num1, #_num2) {
        return($add(#_num1,#_num2))
    }
define $AddThreeNumbers(#_num1, #_num2, #_num3) {
        return($add($add(#_num1,#_num2),#_num3))
    }
}

That's how I see people doing it. And I suppose it's okay. But since these are all global and reusable I always declare them outside of any other commands like so:

AddNumbers()
define AddNumbers {
    set(#sumOfTwoNumbers,$AddTwoNumbers(14, 3),"Global")
    set(#sumOfThreeNumbers,$AddThreeNumbers(5, 6, 7),"Global")
}
define $AddTwoNumbers(#_num1, #_num2) {
    return($add(#_num1,#_num2))
}
define $AddThreeNumbers(#_num1, #_num2, #_num3) {
    return($add($add(#_num1,#_num2),#_num3))
}

If you're looking for some organization you can use tabs or the section command under Log Commands to further organize.

  • Like 1
Link to post
Share on other sites

By the way, I am going to have a code review service soon, where I will review your code and film a video going over the code and giving my opinions on what is good/bad or what should be changed and what you're doing well.

  • Like 1
Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...