Today's Smalltalk 4 You looks at the ability to use drag/drop between inspectors and workspaces in VisualWorks (or ObjectStudio). If you have trouble viewing it here in the browser, you can also navigate directly to YouTube. To watch now, click on the image below:
If you have trouble viewing that directly, you can click here to download the video directly. If you need the video in a Windows Media format, then download that here.
Join the Facebook Group to discuss the tutorials. You can view the archives here.
To watch now, click on the image below:
If you have trouble viewing that directly, you can click here to download the video directly. If you need the video in a Windows Media format, then download that here.
Today's Smalltalk 4 You looks at how you can customize the output of log4s data via the built in pattern specifiers - and the support code that you can implement to make use of it. If you have trouble viewing it here in the browser, you can also navigate directly to YouTube. To watch now, click on the image below:
If you have trouble viewing that directly, you can click here to download the video directly. If you need the video in a Windows Media format, then download that here.
You can also watch it on YouTube:
Today we'll take look at customizing your logging (in log4s) via the pattern strings used when setting up a logger. First off, you should look at the documentation, where you'll find this page, explaining the various options:
What we'll do today is set up some object specific logging based on the API supported by our objects. We'll create two simple classes which respond to the same method - #addOne, adding one to a counter. One will implement #printOn: (customizing #printString), the other will implement #printLog4s. To get that all to show up, we'll use the %object specifier in the log setup:
If your object implements #printLog4s, that will get used instead of #printString. Here's what the code for Adder1 and Adder2 (the two classes) looks like:
Need more help? There's a screencast for other topics like this which you may want to watch. Questions? Try the "Chat with James" Google gadget over in the sidebar.
ESUG 2012 is happening in Gent, Belgium this year (August 27-31, with Camp Smalltalk on the 25th and 26th). Get all the details at the conference page.
Join the Facebook Group to discuss the tutorials. You can view the archives here.
To watch now, click on the image below:
If you have trouble viewing that directly, you can click here to download the video directly. If you need the video in a Windows Media format, then download that here.
Andres Valloud has announced Smalltalks 2012, set for early November, 2012:
This would be a good time to get a calendar and try blocking November 7th through November 9th. You see, we're inviting you to Puerto Madryn in beautiful southern Argentina so you can attend Smalltalks 2012! In the coming weeks we will send out research track calls for papers, calls for participation, and start the registration process. But get those presentations ready, Smalltalks 2012 will be here before you know it. We look forward to seeing you there!
Today's Smalltalk 4 You wraps up our look at log4s with an examination of some of the more useful API methods we've brushed over. If you have trouble viewing it here in the browser, you can also navigate directly to YouTube. To watch now, click on the image below:
If you have trouble viewing that directly, you can click here to download the video directly. If you need the video in a Windows Media format, then download that here.
You can also watch it on YouTube:
Today we'll look at some of the useful API methods for log4s that we've brushed over in the last few screencasts. To get started, we'll add a Transcript appender to the root logger (which was set up in the ini file):
"logging apis"
logger := EsLogManager getLogger: 'root'.
"Add a transcript appender programmatically, but set at a higher level"
level := EsLogManager getLevel: 'Error'.
pattern := EsPatternLayout new: 'ڴe{ISO8601}: [%level] %message'.
transcriptAppender := EsTranscriptAppender level: level layout: pattern.
logger addAppender: transcriptAppender.
One of the things you can do is ask a logger for all of the appenders it has:
"get all appenders"
logger allAppenders.
Which gives us this, if we inspect that line of code:
You can also get a specific appender by name:
"get the transcript appender"
logger getAppender: 'Transcript'
If we inspect that, we'll see the following:
Next we'll remove the Transcript appender. Note that we need to send the appender, not the name, as the argument. The VA 8.5 document is not clear about that:
"remove the Transcript appender"
logger removeAppender: transcriptAppender.
Now inspect the all appenders API again, and you should see:
Note that we're back where we started just the appender specified in the ini file. Finally, you can remove all appenders:
"remove all"
logger removeAllAppenders.
And inspecting the all appenders api yields:
And that about wraps it up for log4s. You should definitely peruse the documentation for more information
Need more help? There's a screencast for other topics like this which you may want to watch. Questions? Try the "Chat with James" Google gadget over in the sidebar.
Welcome to episode 72 of Independent Misinterpretations - a Smalltalk and dynamic language oriented podcast with James Robertson and David Buck.
This podcast was recorded by Bob Nemec and I at the end of day 3 of STIC 2012 - we spoke about the "big data" keynote that I missed, and touched on a lot of the other talks. There's a bit of background muzak playing - we recorded in the conference hall.
You can subscribe to the podcast in iTunes (or any other podcatching software) using this feed directly or in iTunes with this one.
To listen now, you can either download the mp3 edition, or the AAC edition. The AAC edition comes with chapter markers. You can subscribe to either edition of the podcast directly in iTunes; just search for Smalltalk and look in the Podcast results. You can subscribe to the mp3 edition directly using this feed, or the AAC edition using this feed using any podcatching software. You can also download the podcast in ogg format.
If you like the music we use, please visit Josh Woodward's site. We use the song Troublemaker for our intro/outro music. I'm sure he'd appreciate your support!
If you have feedback, send it to jarober@gmail.com - or visit us on Facebook - you can subscribe in iTunes using this iTunes enabled feed.. If you enjoy the podcast, pass the word - we would love to have more people hear about Smalltalk!
Welcome to episode 72 of Independent Misinterpretations - a Smalltalk and dynamic language oriented podcast with James Robertson and David Buck.
This podcast was recorded by Bob Nemec and I at the end of day 3 of STIC 2012 - we spoke about the "big data" keynote that I missed, and touched on a lot of the other talks. There's a bit of background muzak playing - we recorded in the conference hall.
You can subscribe to the podcast in iTunes (or any other podcatching software) using this feed directly or in iTunes with this one.
To listen now, you can either download the mp3 edition, or the AAC edition. The AAC edition comes with chapter markers. You can subscribe to either edition of the podcast directly in iTunes; just search for Smalltalk and look in the Podcast results. You can subscribe to the mp3 edition directly using this feed, or the AAC edition using this feed using any podcatching software. You can also download the podcast in ogg format.
If you like the music we use, please visit Josh Woodward's site. We use the song Troublemaker for our intro/outro music. I'm sure he'd appreciate your support!
If you have feedback, send it to jarober@gmail.com - or visit us on Facebook - you can subscribe in iTunes using this iTunes enabled feed.. If you enjoy the podcast, pass the word - we would love to have more people hear about Smalltalk!
Today's Smalltalk 4 You looks at logging with Toothpick in VisualWorks and Pharo (the code is available for VA, and Dolphin as well - and the VW code works in ObjectStudio, while the Squeak code is what I used in Pharo). If you have trouble viewing it here in the browser, you can also navigate directly to YouTube. To watch now, click on the image below:
If you have trouble viewing that directly, you can click here to download the video directly. If you need the video in a Windows Media format, then download that here.
You can also watch it on YouTube:
The logging code used in the screencast, which you can find documented at metaprog:
"create a logger"
logger1 := TranscriptLogger new
name: 'My first Logger'.
"where do logging events go"
logger1 format: SimpleLoggingFormatter defaultFormat.
"logging policy"
logger1 policy: (LoggingPolicy category: #debug level: #debug).
"register the logger"
(LoggingMultiplexer current)
addLogger: logger1.
"Start the loggers"
(LoggingMultiplexer current) startAllLoggers.
LoggingEvent
category: #debug
level: #warn
message: 'using obsolete protocol'.
LoggingMultiplexer current stopAllLoggers