jstout wrote:
the three pieces of information
I've been thinking that it should really also include information about the pen state, but I guess we don't have reporters for that. I guess we have to wait for the BYOB/Panther merger.
Offline
jstout wrote:
Complicated variables/lists to store the three pieces of information and the restore process is very simple.
It's a good exercise to use your method, but in this precise case probably that it is simpler to save position+direction into 3 variables.
Anyway the solution you mention - to use lists as a kind of shared memory - is not a bad one, mainly if you need to handle long lists of variables. In addition a list can store "procedures" ...and everything you like etc It can be an elegant solution to store every variables, or every property of a sprite into a dedicated list.
Offline
TheExternal wrote:
http://scratchx.webs.com/
I re-made my website and (i'm still working on it now) for BYOB.
Nice! Thanks for sharing your site here. It's such a blast for us to see how you guys are enthusiastically taking on those "big ideas" behind BYOB3! The Scratch community really is something else. See, that's why we want first class procedures and first class lists in the official Scratch, and not a separate "Scratch4CS" application: We don't want to split this wonderful community, where grown-ups can learn from kids and vice-versa (just look at the age range in this forum thread, it's amazing!).
Offline
Jens wrote:
TheExternal wrote:
http://scratchx.webs.com/
I re-made my website and (i'm still working on it now) for BYOB.Nice! Thanks for sharing your site here. It's such a blast for us to see how you guys are enthusiastically taking on those "big ideas" behind BYOB3!
Thanks Also, is there a way to be able to put download links for BYOB projects on websites?
EDIT:
Nevermind I figured out how to.
Last edited by TheExternal (2010-06-15 09:40:52)
Offline
Okay, so I'm a little bit confused right now, and I don't feel like reading through 31 pages of posts to find the answer
Is Jens creating this solo, or is it a group of people? As I recall, Jens did create BYOB, and so I was a little confused when there was a new thread made by somebody other than Jens about BYOB. Anybody care to clear this up for me? Thanks
Offline
I think is now a group, but not 100% sure...
Offline
coolstuff wrote:
Okay, so I'm a little bit confused right now, and I don't feel like reading through 31 pages of posts to find the answer
Is Jens creating this solo, or is it a group of people? As I recall, Jens did create BYOB, and so I was a little confused when there was a new thread made by somebody other than Jens about BYOB. Anybody care to clear this up for me? Thanks
Jens is pretty much writing the software, and bharvey is providing input and expertise, as well as documentation and tutorials. Everyone else in this thread has merely been providing examples, suggestions, bug reports, and praise. And maybe a few gripes.
Last edited by fullmoon (2010-06-15 16:56:48)
Offline
coolstuff wrote:
Okay, so I'm a little bit confused right now, and I don't feel like reading through 31 pages of posts to find the answer
Is Jens creating this solo, or is it a group of people? As I recall, Jens did create BYOB, and so I was a little confused when there was a new thread made by somebody other than Jens about BYOB. Anybody care to clear this up for me? Thanks
Jens is the main developer of BYOB. The other people are just fans, who are helping. The creator of this thread is also just a fan. People who help a lot, get on the Certificate of Appreciation. You can view the image, and a lot of other things related to BYOB3 at the BYOB3 Website
If you are too lazy to do that, here is a picture:
Soon, a person best known among us Scratchers as "bharvey" who came along and started to help Jens. Soon enogh, they found themselves working with each other to complete BYOB3. But bharvey did not help to make BYOB1 or BYOB2.
Clear enough?
Offline
coolstuff wrote:
Is Jens creating this solo, or is it a group of people? As I recall, Jens did create BYOB, and so I was a little confused when there was a new thread made by somebody other than Jens about BYOB. Anybody care to clear this up for me? Thanks
Jens remains the sole programmer of BYOB. As of BYOB3 I'm participating in the design (mostly this means I taught Jens about first class functions but also we've been working out a million little user interface issues) and contributing documentation, tutorials, making trouble on forums, etc.
The two of us are the "team" officially, but of course lots of other people have been helping in large and small ways. Lucario organized this forum thread. A whole gang have been finding bugs for us. We have a team at Berkeley developing a new computer science course using BYOB, and they've contributed ideas; in particular, Sally Ahn, a student in human-computer interaction, is doing an HCI evaluation for us, looking systematically for aspects of the design that would make BYOB unnecessarily hard to use.
Hope that helps.
Offline
coolstuff wrote:
Okay, thanks bharvey, fullmoon, henley, and johnnydean1! That helps a lot.
lol, we were all to bored not to answer
Offline
henley wrote:
People who help a lot, get on the Certificate of Appreciation
Umm, we weren't planning to change the Certificate. A few people have come on board since then (in particular fullmoon who missed the beginning but started being really useful just after! ) and are definitely appreciated! I wish you were all in one place and we could host a party or something. But that certificate celebrates people who were on board right at the beginning, major bugs and all.
Offline
xly wrote:
jstout wrote:
Complicated variables/lists to store the three pieces of information and the restore process is very simple.
It's a good exercise to use your method, but in this precise case probably that it is simpler to save position+direction into 3 variables.
Anyway the solution you mention - to use lists as a kind of shared memory - is not a bad one, mainly if you need to handle long lists of variables. In addition a list can store "procedures" ...and everything you like etc It can be an elegant solution to store every variables, or every property of a sprite into a dedicated list.
I'm not sure it's simpler using three variables, or even a list with three items. I'd have to have one custom reporter block to report a list with three items in it (the current x, y, and direction), and a variable to hold the list reported. Then I'd need another custom block with one list parameter which would pick out the three items in the list and do a goto x:y:, then a set direction:.
With the functional approach I only need one custom reporter block which reports the block that, when run, does the goto x:y:, then the set direction:, and a variable to store the block reported. Then to restore the position I just run the contents of the variable. One fewer custom blocks to keep in sync: if I change the order in which x, y, and direction are stored in the list I'd have to remember to change the code in my restore position block. If Jens and Brian give us a way of saving and restoring the pen then I can add that to the functional reporter block and I don't have to change any other code.
I think it's one of the things that you get from functional programming: once you get your head around the central idea, then all sort of things become so much simpler.
John
Last edited by jstout (2010-06-15 19:27:52)
Offline
Quoth Jens:
this release significantly speeds up the evaluation of editable argument slots (of type text, number or any), bringing some parts of BYOB back to Scratch speed. As I found out in first tests with various Scratch and BYOB projects, other parts are still lagging behind Scratch / BYOB2 speed. I hope to be able to do something about them, too, before the release of BYOB 3.
The speed-up in tonight's release affects the part of the code that's responsible for suppressing empty argument slots to be automatically filled with zeros by Scratch. Therefore I'm half expecting some new bugs related to zero-filled empty slots and perhaps even involving saving/reading errors to surface. Let's uncover those if they're in there!
Offline
jstout wrote:
With the functional approach I only need one custom reporter block which reports the block that, when run, does the goto x:y:, then the set direction:, and a variable to store the block reported. Then to restore the position I just run the contents of the variable.
With some regret, because I love the elegance of your solution, I think I've thought of a simpler way for most applications:
But your way has the advantage that you can call the restore-state procedure more than once.
Offline
bharvey wrote:
Quoth Jens:
this release significantly speeds up the evaluation of editable argument slots (of type text, number or any), bringing some parts of BYOB back to Scratch speed. As I found out in first tests with various Scratch and BYOB projects, other parts are still lagging behind Scratch / BYOB2 speed. I hope to be able to do something about them, too, before the release of BYOB 3.
The speed-up in tonight's release affects the part of the code that's responsible for suppressing empty argument slots to be automatically filled with zeros by Scratch. Therefore I'm half expecting some new bugs related to zero-filled empty slots and perhaps even involving saving/reading errors to surface. Let's uncover those if they're in there!
Virtual high-five! I'll have to download it tomorrow and see how it goes.
Last edited by fullmoon (2010-06-16 00:13:42)
Offline
bharvey wrote:
The speed-up in tonight's release affects the part of the code that's responsible for suppressing empty argument slots to be automatically filled with zeros by Scratch. Therefore I'm half expecting some new bugs related to zero-filled empty slots and perhaps even involving saving/reading errors to surface. Let's uncover those if they're in there!
wait... your gonna make the empty slots automatically fill up with a 0? Can you at least keep some of them like they are because if i leave an empty slot and do this:
{ [answer] > [] } I can make the script sense if there's anything in the box at all instead of just numbers. I use this alot.
Offline
i was using byob 2.99.019 and i froze byob so i started the task manager to exit out and the cpu usage was at 100% so i exited it out and then my computer froze.
Offline
fg123 wrote:
Yes. It is possible for that to happen. It managed to crash Brian's Mac.
Well It hasn't crashed my Mac. Go Mac Minis!!
Offline
TheExternal wrote:
i was using byob 2.99.019 and i froze byob so i started the task manager to exit out and the cpu usage was at 100% so i exited it out and then my computer froze.
It would be great if you could show us what you were doing that froze! Thanks.
Offline
ScratchReallyROCKS wrote:
Well It hasn't crashed my Mac. Go Mac Minis!!
Apparently it's just my particular year's model of MacBook Pro that has this overheating problem. It hasn't happened since I installed the Fan Control preferences pane that lets me get the fans going faster sooner.
Offline
Hi... when I run LINE in Scratch, it's at a nice speed - but when I run it in BYOB, it's very slow... any ideas why?
Offline