. .

PR

How to Create a Bad PR Event

March 26, 2012 7:52:34.237

Microsoft has the latest "how to look stupid in public" example. If you run a contest like that one, you simply have to be prepared to lose a few....

Update: Microsoft quickly figured out what a problem this was, and - to their credit - dealt with it.

Technorati Tags:

posted by James Robertson

 Share Tweet This

st4u

ST 4U 211: Inspectors and Workspaces in VW

March 26, 2012 9:59:36.193

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:

Workspace

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:

Technorati Tags: , ,

Enclosures:
[st4u211-iPhone.m4v ( Size: 2290873 )]

posted by James Robertson

 Share Tweet This

js4u

JS 4U 143: Formatting Dates

March 27, 2012 8:41:35.598

Javascript 4 U

Today's Javascript 4 You looks at formatting dates in Javascript. If you have trouble viewing it here in the browser, you can also navigate directly to YouTube.

Join the Facebook Group to discuss the tutorials. You can view the archives here.

To watch now, click on the image below:

dates

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:

Technorati Tags: , ,

Enclosures:
[js4u143-iPhone.m4v ( Size: 1217762 )]

posted by James Robertson

 Share Tweet This

st4u

ST 4U 212: Customizing log4s output

March 28, 2012 10:40:29.755

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:

Logging.

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:

logging

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:


level := EsLogManager getLevel: 'All'.
pattern := EsPatternLayout new: '%date{ISO8601}: [%level]  [%object] %message:'.
transcriptAppender := EsTranscriptAppender level: level layout:  pattern.
logger addAppender: transcriptAppender.

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:


Adder1:

printOn: stream
	super printOn: stream.
	stream nextPutAll: ' <', count printString, '>'

Adder2:

printLog4s
	^'LOGGING:  <', count printString, '>'

Now we'll execute the following:


"with logging on, go ahead and watch two different results"
adder1 := Adder1 new.
adder2 := Adder2 new.

adder1 addOne.
adder2 addOne.


And this is what we see in the Transcript:


2012-03-28 09:59:22,031: [WARN]  [an Adder1 <1>] Added one:
2012-03-28 09:59:28,937: [WARN]  [LOGGING:  <1>] Added one:


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.

Technorati Tags: , ,

Enclosures:
[st4u212-iPhone.m4v ( Size: 4439160 )]

posted by James Robertson

 Share Tweet This

smalltalk

ESUG 2012 Call For Participation

March 29, 2012 8:28:24.483

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.

Technorati Tags:

posted by James Robertson

 Share Tweet This

js4u

JS 4U 144: JQuery each() Function

March 29, 2012 11:05:03.751

Javascript 4 U

Today's Javascript 4 You looks at the each() function in JQuery. If you have trouble viewing it here in the browser, you can also navigate directly to YouTube.

Join the Facebook Group to discuss the tutorials. You can view the archives here.

To watch now, click on the image below:

each()

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:

Technorati Tags: , ,

Enclosures:
[js4u144-iPhone.m4v ( Size: 1507673 )]

posted by James Robertson

 Share Tweet This

smalltalk

Smalltalks 2012 announcement

March 30, 2012 10:22:47.143

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!

posted by James Robertson

 Share Tweet This

st4u

ST 4U 213: Useful log4s APIs

March 30, 2012 12:23:07.457

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:

log4s.

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:

all appenders

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:

appender

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:

appender

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:

appender

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.

Technorati Tags: , ,

Enclosures:
[st4u213-iPhone.m4v ( Size: 3360554 )]

posted by James Robertson

 Share Tweet This

smalltalk

Amber in Production

March 31, 2012 18:09:33.916

Amber is not just an experiment - it's being used in production

Technorati Tags:

posted by James Robertson

 Share Tweet This

smalltalk

Smalltalk in South America

April 1, 2012 11:16:37.844

Squeak to be specific, in Uruguay and Argentina.

Technorati Tags:

posted by James Robertson

 Share Tweet This

podcast

IM 72: STIC 2012 Wrap Up

April 1, 2012 11:41:59.334

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!

Technorati Tags: ,

Enclosures:
[im72.mp3 ( Size: 11430190 )]

posted by James Robertson

 Share Tweet This

podcastAAC

IM 72: STIC 2012 Wrap Up (AAC)

April 1, 2012 11:43:08.404

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!

Technorati Tags: ,

Enclosures:
[im72.m4a ( Size: 15891497 )]

posted by James Robertson

 Share Tweet This

st4u

ST 4U 214: Logging with Toothpick

April 2, 2012 10:28:31.039

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:

Logging

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

Technorati Tags: , ,

Enclosures:
[st4u214-iPhone.m4v ( Size: 6126431 )]

posted by James Robertson

 Share Tweet This