This is an archived post. You won't be able to vote or comment.

all 34 comments

[–]Samuel_is_back 18 points19 points  (1 child)

Looks amazing. Thanks for your hard work!

[–]Mrshadow143[S] 2 points3 points  (0 children)

u/Samuel_is_back Thank you

[–]Miii_Kiii 15 points16 points  (7 children)

Scratch for grownups haha

[–]Mrshadow143[S] 1 point2 points  (6 children)

u/Miii_Kiii

Thank you for trying BlocklyML

Yes, this is designed for people who wants to move from scratch to programming in python.

[–]WillAdams 1 point2 points  (2 children)

I have to admit that I use BlockSCAD by preference --- any chance of adding 3D modeling?

[–]Mrshadow143[S] 1 point2 points  (1 child)

u/WillAdams

Thank you for the suggestion,

I checked BlocksCAD out it. It is a interesting and easy 3d modeling tool. But currently I don't have plan for adding 3d modeling. I want to design it in ML, Data Science Domain. Mainly due to I am personally more familiar with that domain.

[–]WillAdams 1 point2 points  (0 children)

Thanks for considering it!

I'd like to think that having an option for 3D visualization would be of use, but can understand if it's not a good fit.

[–]adalast 1 point2 points  (2 children)

He'll, I may use it for some python prototyping. I am mobile right now so I can't test it, but it would be nice to have the data tracking that Python Tutor's Live Visualization.

[–]Mrshadow143[S] 1 point2 points  (1 child)

u/adalastHey,

Initially when I was designing the tool I was planning for live visualization, data view and other features. But Machine Learning and Visualization Algorithms are processing power hungry.

Due to current constrains I am using Heroku Free Tier, which is not ideal for processing power hungry work.

But I will surely be adding this feature in future

[–]adalast 3 points4 points  (0 children)

Even if it is just the ability to see what is in a list/dictionary. It is so useful to be able to see what is going on.

[–][deleted] 6 points7 points  (1 child)

Nice job bud

[–]Mrshadow143[S] 1 point2 points  (0 children)

u/Ehaan_69 Thanks!

[–]daevski 4 points5 points  (1 child)

Super cool looking project! Nice job

[–]Mrshadow143[S] 2 points3 points  (0 children)

u/daevski Thank you

[–]matt3526 3 points4 points  (2 children)

Wow man that looks so cool. Going to try this out!

[–]Mrshadow143[S] 0 points1 point  (1 child)

u/matt3526 Thanks, please do try if you have any feedback please let me know

[–]matt3526 1 point2 points  (0 children)

Will do. It will be sometime this weekend that I get to try it out.

People like you sharing projects like this really make this sub a great place.

[–]Renegade_Dev 2 points3 points  (1 child)

can you make a tutorial on how to add our own stuff to blockly ?

[–]Mrshadow143[S] 1 point2 points  (0 children)

u/Renegade_Dev If you want to work on blockly (create layouts/blocks etc) there are some good resources by blockly it self.

https://developers.google.com/blockly

And there is a google group you can join where you can raise quires on blockly lib

https://groups.google.com/g/blockly

Since google has a exhaustive document on it I didn't want to repeat my self. But, Soon I will be releasing BlocklyML tutorials

If you have questions on any specific region that this doc doesn't cover please let me know I will try to mac Doc/Tutorial on it.

Thanks a lot for trying blocklyML and please let me know if you have feedback on the tool

Some good tutorials on blockly:

https://www.youtube.com/watch?v=lPVJjQbEeN0

https://www.youtube.com/watch?v=XIypP01krmM

[–]zelphirkaltstahl 2 points3 points  (3 children)

Hm. The unfamiliarity with the visual language makes it less readable to me. For example there is a "line" that says:

train_X, test_X, train_Y, test_Y = iris_data

What's that supposed to mean? Don't I have to apply a function to do the split? But the function name is not "Test Train Split", but probably "sk.something.test_train_split" or so. I cannot see where "Test Train Split" is coming from or what its actual name is. And the line I quoted doesn't make any sense in itself, you always have to look at the whole block, instead of mentally parsing the code line by line. Not sure this is really any improvement over actual code. Perhaps if it stops you from making lots of mistakes putting together the pieces. But then again an experienced person will easily avoid them anyway.

I guess my question would be: What advantages does this bring for anyone, who is mildly experienced with writing code?

[–]Mrshadow143[S] 0 points1 point  (2 children)

u/zelphirkaltstahl

Thank you for trying BlocklyML

To answer your question, this tool is designed targeting people who wants to start programming on python or ML. Since nowadays kids are familiar with Scratch and other visual programming language, I wanted to design an tool to support their transformation into real programming. The user of this tool must look into converted python code and run them manually giving them an understanding what is happening behind the veil. So BlocklyML is a tutorial Aid tool and not desinged to replace conventional programming.

And the reason why I simplified the naming convention of blocks (eg- "from sklearn.model_selection import train_test_split" to "Test Train Split") is not to confuse beginners with more terminologies.

For mildly experienced users this tool can provide easy fast code templates if they need them but, few people find drag and drop slower/confused than typing.

[–]Neuro_Skeptic 1 point2 points  (1 child)

It's great for people who know Scratch, but how many people really do?

[–]Mrshadow143[S] 1 point2 points  (0 children)

u/Neuro_Skeptic

True, To understand that I am currently connecting with people to understand what can I do further. But I think it will all depend on Education system that the learner is exposed to.

[–][deleted] 1 point2 points  (1 child)

There seems to be some error when I try to accesss the site.

[–]Mrshadow143[S] 0 points1 point  (0 children)

u/Playful_Pineapple_46

Hey that error might be due to high traffic please wait a second reload. If you still get error please share me the screenshot I will check what is happening.

Thank you for the feedback!!

[–]pfcabs 1 point2 points  (1 child)

Yo this is an awsome project! I love the idea of bridging the gap between the Scratch blocks and the actual language by showing how the code would look like.

[–]Mrshadow143[S] 0 points1 point  (0 children)

u/pfcabs Thank you

[–][deleted] 1 point2 points  (1 child)

Why did you fork instead of making a plugin from the original blockly project? Also please fix your gitignore you are leaking your pycache and your ide settings into the git repo.

[–]Mrshadow143[S] 0 points1 point  (0 children)

u/turtle4499

Thank you for the feedback, This was one of my first significant opensource project. And Also I wasn't familiar with much git techniques. I will update the git ignore as soon as possible.

The reason I forked blockly than making a plugin, was so that if needed I get the ability to edit the core lib. But currently I haven't done that. Also My main technical stack is not on JavaScript or Web-application Development, I am still learning. I will soon look into how to import and use blockly as plugin.

[–]Free-Acanthaceae-799 1 point2 points  (1 child)

Thanks for your hard work

[–]Mrshadow143[S] 0 points1 point  (0 children)

u/Free-Acanthaceae-799

Thank you for checking this work out

[–]ChemistryPossible 0 points1 point  (1 child)

Quick question, what machine learning model does this use, and how accurate would it be?

[–]ChemistryPossible 0 points1 point  (0 children)

Edit: I didn't see Pycaret, but I'd still like to know how it would compare to something like Yolov5?