Congratulations on your grant! (Yes, I'm secretly following this thread).
Offline
bharvey wrote:
Our grant got funded!
This will speed up Snap! development and establish summer workshops to teach teachers our CS curriculum based on it.
So, if you're in the US and an interested high school or college teacher, get in touch with me -- and if you're in the US and a high school student, get your CS teacher to get in touch with me (or if there is no CS teacher, pick a teacher you think would be good -- not scared of computers, not scared of kids, ready to learn new things).
(Non-US people who are interested can get in touch too, but our travel budget won't reach you.)
The basic plan is that you get a regional group of around 30 teachers organized, and preferably a cooperating local college that provides space and TAs, and we send you a teacher experienced with the curriculum to lead a workshop that also involves taking our course online.
Oh, and, by the way, if you're a German lawyer-*-programmer, time to get even busier.
bh@cs.berkeley.edu
I just saw this Brian. Congratulations! I am very excited about what this will mean for SNAP and the future of CS education.
I am also thinking that with all you probably now have going, you might not have time to look over that design pattern project I emailed you about. I, therefore, am hoping to get some of the brights folks on this thread to take a moment to check out my project, Scratch Pattern, and give me some feed back. Scratch Pattern relates to Snap in that I am hoping to carry my work over to Snap once Snap is closer to a beta. My goal is to develop a more structured Scratch programming style so that it is easier for Scratchers to collaborate on larger projects. I, particularly, want to start building open-source educational games in Scratch/Snap that challenge what is out there currently.
So if anyone is curious about Scratch Pattern and would like to give me feedback here are the links:
Hash Table
-a hash table I just built that should allow for the construction of various dynamic data structures.
Math Game Engine
-Some math question libraries and a viewer object that I built to showcase Scratch Pattern. There is documentation of Scratch Pattern in the project notes.
With advanced appreciation,
webstermath
Offline
I found a bug on BYOB: when you use a script that runs a sprite-specific block of another sprite then if it isn't in the scripting area of the sprite that it is for, then 'unload unused blocks' deletes it and then causes an error when run.
Offline
Let me just tell you, you made this AWESOME program in JS, and when I open in IE, it just tells me "Your browser doesn't support canvas."
The only way it could be good is if they just copy Firefox's code, and change the icon. That would be illegal though, so... it probably won't ever be good. >_>
Offline
joefarebrother wrote:
I found a bug on BYOB: when you use a script that runs a sprite-specific block of another sprite then if it isn't in the scripting area of the sprite that it is for, then 'unload unused blocks' deletes it and then causes an error when run.
Good catch!
At this point, though, that's one of those bugs that'll just disappear automatically as we rewrite the entire program, including the entire save/load mechanism, for 4.0. Saving and loading will be totally redesigned to account for self-referential data structures.
Offline
webstermath wrote:
I am also thinking that with all you probably now have going, you might not have time to look over that design pattern project I emailed you about.
Oof, I'm sorry. Right now it's the beginning of classes at Berkeley that has me frantic. You're one of four people whose stuff I've promised to read. I'll get to that list once the rush settles down.
Offline
bharvey wrote:
scimonster wrote:
when I open in IE, it just tells me "Your browser doesn't support canvas."
Microsoft will catch up eventually. But, why do you have IE on your computer? You like viruses?
Well, I just never deleted it from the default installation, and now I see it's occasionally useful for checking stuff in different web-browsers. When I get my new computer I'll add Chrome too; it's not so bad.
Offline
scimonster wrote:
Let me just tell you, you made this AWESOME program in JS, and when I open in IE, it just tells me "Your browser doesn't support canvas."
The only way it could be good is if they just copy Firefox's code, and change the icon. That would be illegal though, so... it probably won't ever be good. >_>
please upgrade to IE9! It's a decent browser and it works fine for Snap.
Offline
Jens wrote:
scimonster wrote:
Let me just tell you, you made this AWESOME program in JS, and when I open in IE, it just tells me "Your browser doesn't support canvas."
The only way it could be good is if they just copy Firefox's code, and change the icon. That would be illegal though, so... it probably won't ever be good. >_>please upgrade to IE9! It's a decent browser and it works fine for Snap.
Yeah? I don't feel like downloading IE. Firefox works fine too. ;D
Offline
bharvey wrote:
Microsoft will catch up eventually.
Microsoft improving? Heresy!
P.S. I actually use Chrome, snap works pretty well on Chrome (maybe I only use Chrome because it still has that new software smell )
Last edited by 14God (2011-08-31 19:18:26)
Offline
I just noticed, call( object myself ) creates an easter egg.
Offline
I have an EXELENT sugestion for future versions on BYOB/snap here
Offline
joefarebrother wrote:
I have an EXELENT sugestion for future versions on BYOB/snap here
Umm, I think 3.1 can already achieve what you want, although we don't do it with a class/instance vocabulary. Read the stuff about sprite prototyping in the reference manual and play with using sprites as classes and see if it convinces you.
If not, tell us what class/instance OOP lets you do that prototyping OOP doesn't.
P.S. Except that we made the decision that local methods and data aren't really hidden in the Java sense -- you can ask a sprite to run one of its methods or read or set one of its variables -- because that's good enough to avoid the kind of bug that hiding is supposed to avoid, while still making it possible to debug an object.
Offline
Yes I know you can do stuff like that, but it might be difficult to remember all of the objects and scripts and functions. It would be useful to design your own classes like if first class colours were implemented it would be possible to make a picture class that may normaly be very difficult, and also it could be used with the <is () a () > block.
Also with the local functions thing, you might want a function that is usable inside the class to save time, but cannot be called outside of the class because otherwise it may not function as you expected. I got the idea when I learnt that you can do somthing very simalar in C++.
Last edited by joefarebrother (2011-09-01 15:51:16)
Offline
I love Chrome, but I always have backspace issues when editing text in Snap. Somehow, Chrome occasionally "forgets" that the focus is in the block, and returns me to the previous page.
Does anyone know how to disable backspace as a hotkey?
Offline
Jens wrote:
Sure, Firefox is currently my favorite, too.
Chrome is better only if somebody is wanting to write websockets and webGL..
its too slow with CSS 3 and canvas as yuck .. wel it fastens up when the css 3 uses a z rotation of 0 * that makes it use the Hardware acceleration.
MSIE - i dont wanna talk about it
For me firefox is great as a browser/sandbox but the lack of full websocket support makes it a bit -.- .
Offline
Oh by the way jens , why a single canvas ??? and not a DOM based snap ???
I am just being curious about this as by experience with DOM and HTML5 in past year i think it will work gazillion times faster if written with DOM and Canvas together .. i mean blocks can be DOM and Canvas can handle the screen (or just the pens as all the objects can be rendered using the DOM ).Not to mention that way it becomes more backward compilant as for now if somebody wants to see that on an outdated broswser they will have to use flashcanvas or exp-canvas or similar js libraries for making it go with an even reduced performance.
Last edited by fanofcena (2011-09-02 08:54:06)
Offline
joefarebrother wrote:
also it could be used with the <is () a () > block.
That's an interesting idea, adding user-defined types to <is () a () >, although of course you could write your own that would work by sending the object a TYPE message.
I got the idea when I learnt that you can do somthing very simalar in C++.
I think it's pretty well settled that we don't want to be anything like C++ or Java. Class/instance OOP is okay for industrial work where a team of managers writes up the list of classes before anyone writes any code, but for a language meant for exploration and experimentation and tinkering, prototyping OOP is the way to go. And obsessive data/method hiding is for when you had to scrape the bottom of the barrel to hire the 5,000 programmers you needed for your project, so you don't trust them not to step on each other's feet. In a language whose expected median team size is 1, hiding things just makes it harder to debug without any corresponding gain in bug avoidance.
Last edited by bharvey (2011-09-02 11:19:07)
Offline
MSIE isn't worthy to be called a Microsoft product. Pay no attention to it.
And Chrome runs CSS3 and Canvas BEAUTIFULLY. I would know. I'm been developing a website, and Chrome runs it correctly 100% of the time, while Firefox has a few persistent and annoying errors. (By the way, it's called Techwiq)
On another note,
I managed to escape another year of learning Word 2007 at school (while practically teaching the class for a week)! I would have thought that high school would be a tad more advanced, but ah well.
Last edited by shadow_7283 (2011-09-02 19:17:37)
Offline