This is a read-only archive of the old Scratch 1.x Forums.
Try searching the current Scratch discussion forums.

#1 2012-05-16 03:16:35

OldCodger
New Scratcher
Registered: 2012-05-16
Posts: 54

First Impressions of BYOB

I have been an off and on programmer for many years. Programming has always been a hobby to fit in when time allowed. Now I am retired I want to take programming up again.

I think BYOB will fit the bill perfectly but the appearance is somewhat overwhelming. I like the idea of blocks which fit together. They remind me of StarLogo TNG which uses the same idea. Oddly though I am finding reading code very difficult.

I like the fact that recursion is possible and that lists are provided. On the matter of lists I think that showing slots makes the list seem more like a mutable array. Surely it is enough to have a head and tail and simply traverse the list. How is an empty list indicated?  I haven't discovered that yet.

The code blocks in the Tools directory don't seem to have any help files attached and I think there is a great need for a full tutorial in the manner of Computer Science Logo Style is needed.

Finally I look forward to a browser version that I can use on my iPad. It is a great mistake for Apple to try and control what people can and can't do. Perhaps they imagined the iPad only as a passive marketing tool. HTML 5 will challenge this view.

Offline

 

#2 2012-05-16 04:30:08

Hardmath123
Scratcher
Registered: 2010-02-19
Posts: 1000+

Re: First Impressions of BYOB

Hmmm, I agree about the need for better tutorials, it took me a while to get used to BYOB-style coding. An empty list is indicated by taking the (list [] < >) block and clicking on the left arrow so that there are no arguments (list < >). That block basically reports the arguments composited into a list (i.e. JS [a, b, c] notation); and the arrows allow you to add/remove items. And yes, lists are treated much like arrays, we usually specify the index rather than iterate with car/cdr.

How are you finding reading code difficult? I find is much easier than say C, where there are so many weird symbols. BYOB code flows much more like natural language to me.

About the Apple thing; yeah: Apple made a mistake there. If we had Squeak and Flash apps on the iPad, it would be so much easier to use. I would love to play many Nitrome games, even Scratch projects, on my iPad. Hopefully people will shift to HTML5 faster.  smile


Hardmaths-MacBook-Pro:~ Hardmath$ sudo make $(whoami) a sandwich

Offline

 

#3 2012-05-16 05:47:05

OldCodger
New Scratcher
Registered: 2012-05-16
Posts: 54

Re: First Impressions of BYOB

Hi,

I've mainly used Forth Prolog and Logo in the past. My experience of lists mostly comes from using Prolog. I'm very used to just doing something to the head of a list and then doing it to the tail until you hit the empty list.

As an example of difficult to read code; page 19 of the manual shows some code for a crossproduct. I think it is quite hard to follow the call block in particular.

I haven't seen many comments in people's code either. Smalltalk is a good model to follow with its marked comment  in every class or method template.

Offline

 

#4 2012-05-16 06:38:23

Hardmath123
Scratcher
Registered: 2010-02-19
Posts: 1000+

Re: First Impressions of BYOB

Ah. Well, though commenting is a problem in BYOB code, it's true that the comment block is in fact the 10th top used block in all uploaded Scratch projects!

You can write your own car and cdr functions quite easily, and Snap (the HTML version) has the "all but first of", "[] in front of []" and "item (1) of []" blocks, which are cdr, cons, and car respectively.


Hardmaths-MacBook-Pro:~ Hardmath$ sudo make $(whoami) a sandwich

Offline

 

#5 2012-05-16 13:08:53

Pecola1
Scratcher
Registered: 2010-09-06
Posts: 1000+

Re: First Impressions of BYOB

I would suggest looking at bharvey's projects, he has a lot of tutorials which eased me down when I first started.

I was ready to go back to byob 2.0, it was much simpler!


If you are reading this, please read to the end, because if you don't you won't know what's at the end. Don't just skip to the end though otherwise you won't be able to read the middle, which is most important. Now you must be wondering why you just read all that, the reason is you may have not noticed something, read it again and see if you notice it this time  smile

Offline

 

Board footer