Showing posts with label squeak. Show all posts
Showing posts with label squeak. Show all posts

Tuesday, September 9, 2008

Upcomming events

Archimedes is still stalled since I have been gathering some interesting activities lately.
I'll state chronologically:
  • I have been invited to go to São Carlos this Friday (September 12th 2008) to join Kiko (Christian Reis) at Async for a Coding Dojo session in Python with members of his team. Kiko is currently employed by Canonical and is working on LaunchPad for a while. Although I met him at the beginning of the year, we met again at Agile 2008 where we had a better chance to chat which resulted in presenting him the Coding Dojo idea which he liked. Since Danilo is not here in Brazil to help him with it, I am the one that became responsible for that.
  • Monday, Tuesdays and Wednesday, I will be one of the four monitors of Bruce Eckel's workshop in São Paulo. Bruce will present his future book's ideas about patterns. Luciano Ramalho invited me and São Paulo's Coding Dojo community for this event which will probably last the full three days and will focus on how to identify, use and understand patterns. Knowning Bruce's work from Thinking in C/C++ and Thinking in Java, it will be a very interesting experience. I will post about it when I get a chance.
  • From Thursday to Saturday, I will be in Rio de Janeiro since Kiko invited me to present a Coding Dojo with Async's folks at PyCon Brasil. I haven't booked my flight (or bus ticket) yet but I expect to stay there for the whole conference. We intend to present at least a couple Dojos at Async's booth. I will also try to set up a new kind of Dojo exercise with R (Rodrigo Bernardo Pimentel). The idea is pretty aggressive but aims to pick on a very touchy point in every organization's project. I will explain the game on my next post but just to let you wander, I named it "Telefone sem fio" after the Chinese Whisper game's name in Portuguese thanks to Mariana's suggestion. The name will probably change once I've played it once but for now that should do.
  • After that I am giving two courses with Mariana and Dairton Bassi over two months about Object Oriented modeling with UML and an introduction to eXtreme Programming. Both courses will be given to University's employees that have over 20 years of programming experience that are migrating to Java and a more dynamical environment.
  • October, the 3rd and 4th I will be at Brasilia to present a talk about Squeak and Seaside in the Free Software Festival (Festival de Software Livre-DF). I intend to present how to start a seaside application from scratch and deploy it. I am not sure I will be able to include tests for it but I surely would like to.
  • October 11th, I will attend to (and I am organizing) the "Encontro Ágil" (Agile Meeting) that will take place at my college's building at the University of São Paulo. It will be a full day of talks and a few Birds of Feather and discussions. The small logo of participation:
    Encontro Ágil 2008
  • OOPSLA 2008 will be held in Nashville, Tenessee this year from October 19th to 23th. I will be there with Mariana. We leave São Paulo the 15th and come back the 25th. A day before my works at the municipal elections.
This is an overall of my activities for the next two months. I am loving all those things to do and travels and conferences to attend to. However, I am pretty sure I am way too overloaded for what I can really handle. Let's see how things go.
That's all for now, I will write about my new coding game in my next post. See you.

Monday, May 12, 2008

After a while, another screencast

Hello,
I've been busy since FISL as always. A couple projects starting over which I will only comment once they go a bit further than now.

Now for the good news, I had a paper about the Coding Dojo São Paulo accepted at Agile 2008 with Danilo Sato and Mariana Bravo. As soon as we finish the last revisions, I will post it here. For those of you who do not know what a Coding Dojo is, check the paper by the end of the week, for the rest, know that we host a coding dojo weekly (soon to be twice a week) in São Paulo and we would be glad if you could join us every wednesday from 8pm to 10:30pm.

Archimedes is walking slowly. I believe we will have most intersection features working for this release but not the save/open feature yet. Selection by intersection an trim will not be ready either. I should release it by the end of the week and I will post about it.

I have finally recorded the 6th screencast about Smalltalk, Squeak and Seaside. It shows the System Browser tool along with the Message names and the Method finder. It is not really very important but I had to talk about it before I can start classes (which is next screencast's goal).
That's it for now. Enjoy the recording:

Download the English version here or see it on Google Video.
Download the Portuguese version here or see it on Google Video.

Tuesday, April 15, 2008

Squeakcasts running on Seaside?

I am considering idea of having Squeakcasts made with Seaside and running on a squeak virtual machine at my Dreamhost account. It would be a bit more honest to do it this way instead of having a rails application for it (although I guess the rails structure for railscasts could help a lot). I will try to contact folks at Dreamhost to see if that is possible/allowed. If it is, I will do it until I find a big problem (hopefully never).

With this episode (04-Loops), the screencasts so far have covered a bit of visual script programming with morphic and the main part of Smalltalk syntax. The only parts missing are the class and message creation which we will see in the next screencasts. Just a quick summary until RSS for those screencasts are not ready:

  • 00-Morphic (Portuguese and English version): 15 minutes
    Teaches how to create a simple game using the Morphic environment and its scripting language. Not a single line of Smalltalk code written to have a small racing game.
  • 01-Transcript (Portuguese and English version): 5 minutes
    Presents the Transcript and Workspace tools in Squeak and shows the three main messages to manipulate the Transcript (clear, show: and cr). Shows variable and string declaration and concatenation.
  • 02-Conditionals (Portuguese and English version): 5 minutes
    Working on the previous code, transforms what was done into a conditional that prints the parity of a number correctly based on conditions.
  • 03-Blocks (Portuguese and English version): 7 minutes
    Using the code that prints parity, refactors it to use blocks returns, attribute blocks to variables, discuss its scope and shows parametrized blocks.
  • 04-Loops (Portuguese and English version): 7 minutes
    Using the parametrized blocks from episode 03, teaches how to create 3 styles of loops like 'for', 'while' and 'do while'.
That's it for now. I hope to post tomorrow before we leave for Porto Alegre where FISL will take place but I am not sure. Enjoy it!

Squeakcasts coming soon?

I was chatting with a very good friend yesterday (Danilo T. Sato) and he was pretty happy with my screencasting and suggested I should have a website/blog running only about those screencasts. Since I am a big fan of Railscasts (in English) and Akita's tips (in Portuguese) on Rails, I am seriously considering doing it. While chatting, I suggested "smallcasts" and we had some fun about the name and some ideas about it. Today, however, I though maybe "squeakcasts" would be better. It would relate Smalltalk, Squeak and the OLPC project pretty good and would make a more meaningful name.
I intend to have some sort of start on this website on the bus trip to FISL and maybe, when I come back, I get this started. If you have suggestions about a short music, a logo or anything else, please tell me and I would be glad to use them.

For now, just enjoy the Block's screencast that is a bit longer (7 mins) and half an hour late.

Download the English version here. Google Video seems bugged and can't upload correctly. Removed the link until I can fix it again.
Download the Portuguese version here. Google Video seems bugged and can't upload correctly. Removed the link until I can fix it again.

Enjoy it!

Thursday, March 27, 2008

More screencasting

I had a really good feedback about my first screencast with a couple suggestions, helps and ideas. The first suggestion is that I should improve my screencasting environment. First buying a usb microphone (and headphone) and then a local screencast software with mouse effects and keyboards exibitions. Can't solve everything now but I've made some improvements. Got the keyboard and mouse problems solved and ordered a usb mic. Researched a lot about the screencast softwares but couldn't really make my mind about it.

I've recorded two more screencasts. The first one is an English speaking version of the Morphic example I posted previously. I've already received critics about it and I'm gonna try to improve next time but I can't ensure anything (speaking in English uses a considerable cpu share in my head). But here goes the links:
http://www.screencast-o-matic.com/watch/cjetqAVD6 - Requires Java 1.5 browser plugin
http://eclipse.ime.usp.br/~night/00-morphic-en-800.mp4
Or you can see it here (problem is that is it very tiny and no fullscreen option):


The other one is in Portuguese and focuses on the Squeak developments tools. It was recorded based on a developer's image assembled by Damien Cassou. I present Smalltalk blocks, the conditional system and the loop one. All the code use the Transcript and Workspace widgets to write code detached from a class. I still haven't received my new headset so the voice is still pretty low and I was a bit sick when I recorded it so you can hear me cough. The sound was improved in the mp4 version so you can hear a bit better. As I said, it is only availble in Portuguese for now but I hope to keep the pace and release an English version along with the next portuguese episode next week. You can see the screencast (if you speak Portuguese and/or don't care about the very low voice) at:
http://www.screencast-o-matic.com/watch/cjfViPVDH - Requires Java 1.5 browser plugin
http://eclipse.ime.usp.br/~night/01-blocksifsloops-800.mp4
Or see here (tiny video, good sound, will post feature request for blogger to add a fullscreen option):



Enjoy it people!
Bye bye

Wednesday, March 19, 2008

Screencasts on Smalltalk, Squeak and Seaside

Hello everyone,
During Campus Party, I've met Fabio Akita and he was asking about some demonstration of Seaside and screencasts about it. Seaside is a framework to build web applications written in Smalltalk and whose main name is Avi Bryant (who Akita interviewed in two parts: part 1 and part 2). It is a very neat way of building web applications even easier than Rails. It is mainly used with Squeak that is the most advanced free and open source Smalltalk Virtual Machine.

Being the current teacher assistant for an Object Oriented Programming course at the university, I've decided to launch myself into screencasting about Smalltalk, Squeak and Seaside to attend Akita's request. The first one has just been recorded but was aimed to the students so it is in portuguese and speaks about Morphic, the main user interface for Squeak. You can see it at (requires java browser plugin installed):
http://www.screencast-o-matic.com/watch/cjeFrOV2c
Or download it in an MP4 47 Mb file (requires some free codecs) at:
http://eclipse.ime.usp.br/~night/00-morphic-800.mp4
or
http://www.ime.usp.br/~kon/MAC5714/00-morphic-800.mp4

I've found this new feature in blogspot to upload a video. Trying here:


I pretend intend (thanks Kenzo) to release another version of it in english for those interested in it but I will wait for some feedback to correct and improve the current version.

It requires that you have Squeak installed and running which can be easily done by downloading the correct package for your operating system at http://www.squeak.org/. Click your operating system link on the top right side of the site to download squeak (the virtual machine) and a clean image of Squeak's world.

Smalltalk is slightly different than most current object oriented languages. The Squeak Image (.image file and .changes) is a representation of Squeak's world as it was on last save. This means when you load it, it is just like if you were back at the exact time when you saved your image. The same things are showing, same processes are running, same everything. Especially this means, if you screw up your image and save it, closing and opening won't help at all. Therefore, create backups of your .image (and .changes) every once in a while.

Then you can do some very fun things such as changing the behaviour of the True class (in Smalltalk, there is no syntax specific word... EVERYTHING is a class, even conditionals and loops but we will see about that in another screencast).

For now, I'll leave you, non-portuguese speakers, testing squeak by yourselves (although the speaking is not THAT important in the screencast) and the others, have fun creating games for your kids!

bye bye