. .

js4u

JS 4U 227: Fusion Heatmap with Styling

December 6, 2012 1:15:08.301

Javascript 4 U

Today's Javascript 4 You looks at changing the style of a heatmap using the Google Maps Javascript API. 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:

heatmap styling

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:

Tags: ,

Enclosures:
[js4u227-iPhone.m4v ( Size: 1532767 )]

posted by James Robertson

 Share Tweet This

smalltalk

Pharo 2.0 Hits Beta

December 6, 2012 19:43:42.632

Pharo 2.0 is now beta:

Today I finished the pending integrations for move to Pharo 2.0. There is still a problem with the VMs (for NB), but that's not a stopper for moving on. What does this means? Starting now, no new changes of API will be allowed, just bug fixes and minor enhancements that does not change the system behavior. We still have a long stabilization path until we can release, but we hope a couple of months will put us in shape

Tags:

posted by James Robertson

 Share Tweet This

games

Minecraft is Huge

December 6, 2012 20:27:28.578

Spotted in Joystiq:

The Xbox Live Arcade version of Minecraft is selling at a good clip, shifting between 40,000 and 60,000 copies a week - it's just below Call of Duty: Black Ops 2 and Halo 4 in the weekly Xbox Live activity charts. As of November's end, total XBLA sales are at 4,476,904.

Think about that - Mojang is still a small shop, and the amount of money that has been spent on Minecraft development is tiny compared to any of the other titles mentioned above. There's a lesson in there somewhere for the AAA development shops, but I rather suspect that they'll miss it.

Tags:

posted by James Robertson

 Share Tweet This

st4u

ST 4U 318: Sketching Out a CaseStatement Object

December 7, 2012 12:33:47.791

Today's Smalltalk 4 You sketches out a case statement object in Smalltalk. Not because this is a great idea; generally, you want to use Polymorphism. However, having been asked about such a thing, we have a sketch of how to do 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:

Case Statement.

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:


Recently, I was asked about Case Statements and Smalltalk - Smalltalk does not have one (nor does it need one, for the most part) - but it makes for a small, interesting example. I had created one of these in VisualWorks years ago, but it ported pretty cleanly into VA Smalltalk (the only real difference being that #new in VA does not send #initialize to the newly created instance). I have verification that the code works as-is in GNU Smalltalk as well - not a surprise, as it's pretty basic stuff. Here's the class definition:



Object subclass: #CaseStatement
    classInstanceVariableNames: ''
    instanceVariableNames: 'cases '
    classVariableNames: ''
    poolDictionaries: ''

There's a convenience method to create the first case, and the collection of cases is a collection of associations (where the key is the case, the value is the execution block for that case):


case: aCondition do: aBlock
	"answer a new instance with initial condition"

	^self new case: aCondition do: aBlock

There are a few instance methods to hook up the machinery:


switch: aCondition
	"execute block previously stored"

	self switch: aCondition default: [self error: 'No Default Found']

switch: aCondition default: aBlock
	"execute block previously stored"

	| association |
	association := self findOnKey: aCondition.
	association notNil 
		ifTrue: [(self findValue: association) value]
		ifFalse: [aBlock value]

findOnKey: aCondition
	"answer association or nil"

	^cases detect: [:each | each key = aCondition] ifNone: [nil]

findValue: anAssociation
	"answer the value"

	^anAssociation value

You can then see how this kind of thing works:


| caseStatement |
caseStatement := CaseStatement case: 1 do: [Transcript show: 'one'; cr].
caseStatement 
	case: 2 do: [Transcript show: 'two'; cr];
	case: 3 do: [Transcript show: 'three'; cr];
	case: 4 do: [Transcript show: 'four'; cr].

To actually use the statement, you do this kind of thing:


caseStatement switch: 6 default: [Transcript show: 'Could not find case'; cr].
caseStatement switch: 5.


Try that out and see what happens. You can find the code in VRGoodies (Contributed) in VisualWorks, and that code will port cleanly to at least VA and GNU (and I expect Pharo or Squeak as well).

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.

Tags: , ,

Enclosures:
[st4u318-iPhone.m4v ( Size: 4364936 )]

posted by James Robertson

 Share Tweet This

podcast

IM 106: Practical GIT for Smalltalk

December 9, 2012 20:19:42.302

Welcome to episode 106 of Independent Misinterpretations - a Smalltalk and dynamic language oriented podcast with James Robertson and David Buck.

This week we have another recording from the STIC 2012 conference - Dale Henrichs of VMWare (Gemstone) talking about using GIT for Smalltalk projects. If you would rather watch the video, head on over to the STIC website.

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!

Tags: , ,

Enclosures:
[im106.mp3 ( Size: 15864676 )]

posted by James Robertson

 Share Tweet This

podcastAAC

IM 106: Practical GIT for Smalltalk (AAC)

December 9, 2012 20:20:22.569

Welcome to episode 106 of Independent Misinterpretations - a Smalltalk and dynamic language oriented podcast with James Robertson and David Buck.

This week we have another recording from the STIC 2012 conference - Dale Henrichs of VMWare (Gemstone) talking about using GIT for Smalltalk projects. If you would rather watch the video, head on over to the STIC website.

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!

Tags: , ,

Enclosures:
[im106.m4a ( Size: 21878531 )]

posted by James Robertson

 Share Tweet This

st4u

ST 4U 319: Oracle and VW 7.9

December 10, 2012 10:59:31.148

Today's Smalltalk 4 You looks at a small change in the way VW works against Oracle (as of VW 7.9). If you're upgrading from an older rev of the product, you might run into this. There's a code example in this post, and you should probably be aware that Cincom has classified this as a bug, for which they'll be issuing a resolution. 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:

Oracle and #bindInput:

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:

s

Tags: , ,

Enclosures:
[st4u319-iPhone.m4v ( Size: 2758104 )]

posted by James Robertson

 Share Tweet This

skyrim

Thu'umcast 33: Dragonborn

December 10, 2012 18:21:56.522

Thu'umcast

Welcome to episode 33 of "Thu'umcast" - a podcast where Michael Lucas-Smith, Scott Dirk, Austin Haley, Makahlua and I document our trials and tribulations in Elder Scrolls V: Skyrim

Today's episode with James, Austin, and Chris goes into Dragonborn - the new DLC for Skyrim. The short answer s - we like it a lot. There's lots to talk about, including the all too common Skyrim quest glitches.

If you liked our work on That Podcast, you'll probably like this. We intend to stay with the same idea - a gameplay podcast. If you don't want spoilers, don't listen - we are going to be talking about how we play the game, and what we ran across as we played.

You can subscribe in iTunes (or any podcatcher) using this feed, or this one for the AAC edition. We'll add the iTunes specific links as soon as they are available. In the meantime, join the Facebook Group and follow us on Twitter. If you play on Steam, join the Steam Group. Like the music? Pay Sbeast a visit, we thank him for letting us use it!

Links to all episodes and other information can be found on the Thu'umcast page.

If you want to download the podcast directly, we've provided it in three formats:

Got feedback? Tweet us!. Enjoy the podcast, and we'll see you in Skyrim!

Tags: , , ,

Enclosures:
[thuum33.mp3 ( Size: 10489189 )]

posted by James Robertson

 Share Tweet This

skyrimAAC

Thu'umcast 33: Dragonborn (AAC)

December 10, 2012 18:28:34.543

Thu'umcast

Welcome to episode 33 of "Thu'umcast" - a podcast where Michael Lucas-Smith, Scott Dirk, Austin Haley, Makahlua and I document our trials and tribulations in Elder Scrolls V: Skyrim

Today's episode with James, Austin, and Chris goes into Dragonborn - the new DLC for Skyrim. The short answer s - we like it a lot. There's lots to talk about, including the all too common Skyrim quest glitches.

If you liked our work on That Podcast, you'll probably like this. We intend to stay with the same idea - a gameplay podcast. If you don't want spoilers, don't listen - we are going to be talking about how we play the game, and what we ran across as we played.

You can subscribe in iTunes (or any podcatcher) using this feed, or this one for the AAC edition. We'll add the iTunes specific links as soon as they are available. In the meantime, join the Facebook Group and follow us on Twitter. If you play on Steam, join the Steam Group. Like the music? Pay Sbeast a visit, we thank him for letting us use it!

Links to all episodes and other information can be found on the Thu'umcast page.

If you want to download the podcast directly, we've provided it in three formats:

Got feedback? Tweet us!. Enjoy the podcast, and we'll see you in Skyrim!

Tags: , , ,

Enclosures:
[thuum33.m4a ( Size: 14379009 )]

posted by James Robertson

 Share Tweet This

js4u

JS 4U 228: GeoRSS Layers

December 11, 2012 10:19:36.839

Javascript 4 U

Today's Javascript 4 You looks at adding a map layer via GeoRSS feeds. 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:

GeoRSS

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:

Tags: , ,

Enclosures:
[js4u228-iPhone.m4v ( Size: 1099584 )]

posted by James Robertson

 Share Tweet This

news

The Zucker Dead Zone Expands Towards CNN

December 11, 2012 12:53:15.803

You have to love the moves CNN is making - bringing the man who nearly killed NBC on board. Maybe he can finish the job, and leave CNN with even fewer viewers than it has now. This analysis at PJ Media is pretty good, but this quote from Zucker says it all:

We have to remain true to the journalistic values that are the hallmark of CNN, and also continue to broaden the definition of what news is.

Scanning my cable guide, I notice 3 news channels - which means a halfway competent exec should get 1/3 of that audience without trying very hard. On the other hand, there are hundreds - hundreds - of other channels. And Zucker's big idea is to start competing with them? Here's a hot tip: If I want food news, I'll be looking to the Food channel, not to CNN.

Sit back and get the popcorn, and the last guy watching CNN should turn out the lights.

Tags:

posted by James Robertson

 Share Tweet This

st4u

ST 4U 320: Using a CaseStatement in Smalltalk

December 12, 2012 11:15:01.801

Today's Smalltalk 4 You goes back to the CaseStatement sketch we did recently, and goes over when such a construct might be useful in Smalltalk. 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:

Case Statement.

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:


Having looked at a Case Statement sketch and at polymorphism, we'll turn back to the Case Statement idea - when might such a thing be useful in Smalltalk? There are times when you end up with a long section of #ifTrue:ifFalse: blocks - when dealing with keyboard shortcuts, or possibly return values from an external application. Consider this simple example:



"imagine that val is the return value from some external application"

| val cases |
val := ((EsRandom new next) * 10) rounded.
cases := CaseStatement case: 1 do: [Transcript show: '1'; cr].
cases
	case: 2  do: [Transcript show: '2'; cr];
	case: 3  do: [Transcript show: '3'; cr];
	case: 4  do: [Transcript show: '4'; cr];
	case: 5  do: [Transcript show: '5'; cr];
	case: 6  do: [Transcript show: '6'; cr];
	case: 7  do: [Transcript show: '7'; cr];
	case: 8  do: [Transcript show: '8'; cr];
	case: 9  do: [Transcript show: '9'; cr].
cases switch: val default: [Transcript show: 'Not Found: ', val printString; cr].


Instead of a random number generator, imagine that the code coming back is from an external system call, and we need to do different things based on what came back. We could set up a polymorphic caller, using a dictionary matching numbers to symbols, and then performing the symbols - but that might actually be less clear than the code above. It's not often that you'll need a case statement in Smalltalk, but it does come up from time to time.

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.

Tags: ,

Enclosures:
[st4u320-iPhone.m4v ( Size: 3329436 )]

posted by James Robertson

 Share Tweet This

games

Mass Effect is Doomed

December 12, 2012 22:04:19.085

Spotted in Joystiq

"While I can't comment on why it changed studios, fans can expect a similar style of choices and action that they've come to know in Mass Effect," Gamble said. "Casey Hudson is very much involved in the new Mass Effect game, as well as many from Edmonton. BioWare Montreal is a great studio and they did fantastic with the multiplayer for Mass Effect 3, so fans should know the series is in good hands.

*Cough*. This is the same Casey Hudson who defended his awful, awful ending for Mass Effect 3. Good hands would mean that Hudson had been fired, and someone who understood how to end a story had been brought on.

Tags:

posted by James Robertson

 Share Tweet This

js4u

JS 4U 229: Traffic Layers

December 13, 2012 8:43:36.367

Javascript 4 U

Today's Javascript 4 You looks at adding a traffic layer to a Google streetmap. 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:

transit

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:

Tags: , ,

Enclosures:
[js4u229-iPhone.m4v ( Size: 1065649 )]

posted by James Robertson

 Share Tweet This