. .

smalltalk

Smalltalk and WebDAV

June 9, 2011 16:38:45.000

Craig Latta is using WebDAV with Spoon, in order to enable Smalltalk code accessibility as if it were all in files. I like the idea a lot, and it would be interesting to see that sort of thing done for one of the large Smalltalk implementations.

Technorati Tags: ,

posted by James Robertson

 Share Tweet This

smalltalk

Google Analytics From Your Seaside App

June 9, 2011 13:35:50.000

Looks like you can get access to your analytics directly from Seaside now:

I want to announce the release of Google Analytics Tracker, a small tool we make for getitmade.com (Nick Ager's project), to allow us to get analytics data. Right now is very simple, it just give us page visits data, but can be used as a foundation to get a lot more info.

To give it a spin, load up ConfigurationOfGoogleAnalyticsTracker in Pharo.

Technorati Tags: ,

posted by James Robertson

 Share Tweet This

js4u

JS 4U 63: Dynamically Add a CSS Attribute

June 9, 2011 7:42:21.062

Javascript 4 U

Today's Javascript 4 You. Today we look at using the JQuery to add a CSS attribute to a page element. 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:

JQuery and CSS

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:
[js4u63-iPhone.m4v ( Size: 2858986 )]

posted by James Robertson

 Share Tweet This

general

Too Much Government

June 8, 2011 15:00:00.000

Reasonable people can have completely honest debates about the appropriate size of government, and about the proper roles and responsibilities of that government. However - when you have an education department breaking down doors, can't we all agree that there's something very wrong here?

Update: Looks like the link above is broken (did someone lean on the news outlet?).  You can get the "defense" from the Education department here, but my question remains - why on earth is the education department sending para-military units out to execute warrants? 

posted by James Robertson

 Share Tweet This

smalltalk

Smalltalk in Dallas?

June 8, 2011 9:55:21.000

We have a pretty decent sized group of Smalltalkers where I'm working now, in the Grand Prairie area (Texas). I know there are other Smalltalk shops in the Metroplex, so it occurs to me that a local user group is something that could work. I'm trying to get meeting space set up where I work - anyone else in the area interested in helping organize such a thing? If so, contact me and let's see what we can do.

Technorati Tags:

posted by James Robertson

 Share Tweet This

st4u

ST 4U 92: Creating a Configuration Map in VA

June 8, 2011 8:36:00.825

Today's Smalltalk 4 You looks at creating a configuration map. In ENVY, configuration maps are how you create reproducible, loadable configurations of software in the version control system. 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:

Config Maps.

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 the CounterApp and CounterTestsApp applications, and package them up into a single loadable Configuration. In VA Smalltalk, that's accomplished with an ENVY construct called a ConfigurationMpa. Using the Tools menu, select Browse ConfigurationMaps:

Applications

Config Maps

To create a new Config Map, select the Names menu, and then click on Create...:

Create a Config Map

Give the new Config Map a Name:

Create a Config Map

Now, in the rightmost pane at the top, right click, and select Add.... That will bring up a window, allowing you to add applications to the Configuration map:

Add Applications

We'll move CounterApp and CounterTestsApp over to the right, and click the Ok button:

Add Applications

Finally, using the menu in the second pane, give your Config map a version number - and that's it - you've got a loadable configuration. We'll be going into more depth on Applications and Config Maps in future tutorials, we've barely scratched the surface so far!

Version it

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:
[st4u92-iPhone.m4v ( Size: 6112872 )]

posted by James Robertson

 Share Tweet This

smalltalk

Quantities in VisualWorks

June 7, 2011 19:00:00.000

Michael Lucas-Smith has a detailed write up on a new Quantities library he's created in VisualWorks. It's taken inspiration from part of the Boost library - you can get details at the link. What's the motivation?

So with these two great examples of units and quantities to go off of, I set about trying different variations for describing quantities in VisualWorks generically. I wanted to allow it to blend with the existing (and future) implementation of Duration. I *really* wanted to know if there is any design impact on Duration that I need to know about now before I go and change its implementation in VisualWorks 7.9.

After going through many iterations, I ended up with a design using the same trick as Measurements, but with more capabilities, such as instantiating Duration when dealing with the Time dimension. Or instantiating an Angle when you’re dealing with radians, degrees and gradians. There is of course the Temperature class too - but I won’t bore you with the details of that one

posted by James Robertson

 Share Tweet This

smalltalk

Glorp for Pharo

June 7, 2011 14:14:03.000

A new port of Glorp for Pharo, built on top of DBXTalk (formerly SqueakDBX) is out:

I'm glad to announce a first stable version of the new Glorp Port, from VW 7.7.1.

The port has been integrated with the DBXTalk Driver (before known as SqueakDBX), and tested on the following platforms:

  • MySql: 872 tests run, 18 errors, 6 failures
  • PostgreSQL: 872 tests, 18 errors, 6 failures
  • Oracle: 872 tests, 21 errors, 5 failures.

Technorati Tags: , ,

posted by James Robertson

 Share Tweet This

js4u

JS 4U 62: Conditional JQuery Selecting

June 7, 2011 9:03:58.858

Javascript 4 U

Today's Javascript 4 You. Today we look at using JQuery selectors to conditionally grab page elements. 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:

Conditional Selection

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:
[js4u62-iPhone.m4v ( Size: 2746474 )]

posted by James Robertson

 Share Tweet This

advertising

Tablets, the Cloud, and Smalltalk

June 6, 2011 9:50:15.000

Runar Jordahl links to a post about Tablets and the Cloud, and passes on his own thoughts:

Skrishnamachari says that better interfacing with Java is vital to grow Smalltalk’s use in cloud computing. That might be true, but interfacing to NoSQL databases (Cassandra, Riak, Hbase) and services (like AWS) running in the cloud, is just as important. Cloudfork is one such interface, the Riak interface another. I think we should be able to write great cloud applications from scratch using Smalltalk, and increasingly these tools are becoming more important.

One thing that you'll notice right off is the complete dearth of commercial Smalltalk support for tablet devices. All of the action is in Pharo and Squeak, where there's been a fair bit of work done to support IOS, and a start at Android support. Cloud/web interfacing looks more possible for the commercial systems, but again - most of the action is coming from community people (Cloudfork, anyone?).

I understand the need to support the existing customer base, and the whole "where's the revenue?" problem - but at the same time, these are areas that really can't be ignored.

Technorati Tags: , ,

posted by James Robertson

 Share Tweet This

st4u

ST 4U 91: Focusing SUnit on Specific Tests

June 6, 2011 8:18:28.277

Today's Smalltalk 4 You looks at loading and using SUnit in VA Smalltalk. Last time we looked at the SUnit browser in VA Smalltalk, but it showed every test loaded in the image. Today, we look at how simple it is to get a more focused view. 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:

SUnit.

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 go back to SUnit in VA Smalltalk, and see how easy it is to concentrate on just the tests that are of interest to you, instead of all tests across the system. We'll start in the Application Browser, looking at the TestCase subclass we created last time:

TestCase

Right click on the class, and in the context menu, select Test:

Open the SUnit Browser

You have the same tool you saw last time, but instead of all tests that are loaded (and that could be quite a few, if you've loaded something like Seaside) - you'll see just the tests in this selection:

Focused SUnit

Now we can run just the tests we care about (one in the image below), and not be distracted by whatever else happens to be loaded in our image. On a large project, with multiple developers creating features and tests, that could be a big distraction:

Focused SUnit

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:
[st4u91-iPhone.m4v ( Size: 2586924 )]

posted by James Robertson

 Share Tweet This

podcastAAC

IM 32: What Smalltalk Can Learn From Ruby

June 5, 2011 12:33:51.926

Welcome to episode 32 of Independent Misinterpretations - a Smalltalk and dynamic language oriented podcast with James Robertson, Michael Lucas-Smith, and David Buck.

This week I have another session from Smalltalk Solutions 2011 - Steven Baker, talking about "What Smalltalk Can Learn from Ruby". The abstract for the talk was:

In the past five years, we have seen a meteoric rise in popularity of the Ruby programming language. Some attribute this to the development of a great web framework, while others claim it has more to do with the simplicity, expressiveness, and features of the Ruby language. In this talk, you'll learn some possible reasons why Smalltalk hasn't seen the same explosion in popularity, despite also having great web frameworks, and arguably more simplicity, expressiveness, and language features. We'll also learn some things we might do to encourage others to learn about Smalltalk and the benefits of using it.

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:
[im32.m4a ( Size: 23545505 )]

posted by James Robertson

 Share Tweet This

podcast

IM 32: What Smalltalk Can Learn From Ruby

June 5, 2011 12:33:11.016

Welcome to episode 32 of Independent Misinterpretations - a Smalltalk and dynamic language oriented podcast with James Robertson, Michael Lucas-Smith, and David Buck.

This week I have another session from Smalltalk Solutions 2011 - Steven Baker, talking about "What Smalltalk Can Learn from Ruby". The abstract for the talk was:

In the past five years, we have seen a meteoric rise in popularity of the Ruby programming language. Some attribute this to the development of a great web framework, while others claim it has more to do with the simplicity, expressiveness, and features of the Ruby language. In this talk, you'll learn some possible reasons why Smalltalk hasn't seen the same explosion in popularity, despite also having great web frameworks, and arguably more simplicity, expressiveness, and language features. We'll also learn some things we might do to encourage others to learn about Smalltalk and the benefits of using it.

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:
[im32.mp3 ( Size: 17010272 )]

posted by James Robertson

 Share Tweet This

gadgets

Finally: Over the Air Synching for IOS

June 4, 2011 17:37:16.227

Spotted in Engadget:

While searching for updates in iTunes, a MacRumors reader stumbled upon this page, which alludes to an "Automatic Download" feature that allows for wireless syncing. Also, the fact that Apple went out of its way to say "...if your device has Automatic Download enabled for apps" makes us wonder what else we'll soon be able to update over the air. The company has since pulled the tattletale page in iTunes, but MacRumors grabbed a screenshot while it was still live.

I'd be happier about it if the phrase "about d*** time" didn't keep coming to mind :)

Technorati Tags: ,

posted by James Robertson

 Share Tweet This

smalltalk

CUIS 3.3 Released

June 4, 2011 16:53:44.000

Juan Vuletich has just released CUIS 3.3. What's new? Too much stuff to list it concisely - follow the link for details. Or just download it now

Technorati Tags:

posted by James Robertson

 Share Tweet This

smalltalk

Simple REST for Pharo

June 4, 2011 11:51:07.000

Need a lightweight REST solution for Pharo? Guillermo has one built on top of the KomHttpServer.

Technorati Tags: , ,

posted by James Robertson

 Share Tweet This

smalltalk

Continuous Integration with Jenkins and Pharo

June 4, 2011 7:48:31.000

Nick Ager adds to the documentation produced by Lukas Renggli for a nice description of what to do.

Technorati Tags: ,

posted by James Robertson

 Share Tweet This

games

Bypassing Steam?

June 3, 2011 20:12:28.000

I understand why EA wants to do this, but they'll have to work to get past Steam - Steam has a huge headstart on the social end of gaming:

Electronic Arts is diving into digital game distribution by launching its own service for selling downloadable games direct to consumers.

Technorati Tags: ,

posted by James Robertson

 Share Tweet This

smalltalk

Maintaining Your Gemstone Installation

June 3, 2011 14:08:04.607

Norbert Hartl has some useful maintenance tips for Gemstone/S developers and admins. Hat tip Dale

Technorati Tags:

posted by James Robertson

 Share Tweet This

st4u

ST 4U 90: Test Driven Development in VA Smalltalk

June 3, 2011 13:03:04.116

Today's Smalltalk 4 You looks at loading and using SUnit in VA Smalltalk. SUnit is the standard way of supporting TDD in all Smalltalk dialects - and it's easy to use in VA. 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:

SUNit.

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 using SUnit (for unit testing) in VA Smalltalk. The first step is to use the Load/Unload Features menu pick to bring in SUnit support (along with all of the associated tools built into VA for it):

Load SUnit

In the feature list UI, scroll down to SUnit, select it, and hit the >> button to move it to the right. Then click the Ok button to load the code:

Load SUnit

Now that SUnit support is loaded, we need to create a new application that will contain our test class. We'll be building a simple test case for the previously created CounterApp - which means that our new application will need some pre-requisites to make the appropriate classes visible. First, create the application, and add the pre-reqs using the picker:

Create the Application

Create the Application

Add pre-reqs

Now we can define the new test case class. This is no different from creating any other class, but if you didn't add SUnit as a pre-req, the TestCase class won't be visible to your new application. The next few images walk through creating the class:

Create the Class

Create the Class

Now, we can write a standard SUnit testcase. Create a method that begins with the word test - that's how SUnit finds the tests in your subclass of TestCase. The last part of the method should send the #assert: message, with the argument being an expression that answers a boolean. Below is the simple example that tests the #addOne method in Counter:

test

Now, go back to the tools menu, and pulling the SUnit option right, select the SUnit Browser:

SUnit Browser

That opens a tool showing all of the tests present in your VA image. There are ways to be more specific about what you see in this tool; we'll cover that in another tutorial. For now, simply scroll down to the test you created and select it

SUnit Browser

Finally, press the Run button, and you should see two green bars and some information. If you see red, either the CounterApp has a bug, or your test is wrong.

SUnit Browser

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:
[st4u90-iPhone.m4v ( Size: 8945432 )]

posted by James Robertson

 Share Tweet This

smalltalk

Scratch Ported Up to Pharo

June 2, 2011 16:03:35.000

Good news for Scratch fans - there's a port in progress from the (fairly old) rev of Squeak that Scratch uses to Pharo. You can check the progress and participate via the Google Code Page

Technorati Tags: , ,

posted by James Robertson

 Share Tweet This

smalltalk

Simple Seaside Graphs

June 2, 2011 14:57:21.000

Bob explains how easy it is to push up a nice, simple graph using Seaside

Technorati Tags:

posted by James Robertson

 Share Tweet This

js4u

JS 4U 61: Element Replacement with AJAX

June 2, 2011 9:43:13.996

Javascript 4 U

Today's Javascript 4 You. Today we look at the low level AJAX functionality that JQuery makes simpler via the load() function (which we covered here). 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:

AJAX

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:
[js4u61-iPhone.m4v ( Size: 3019785 )]

posted by James Robertson

 Share Tweet This

gadgets

Why Nokia Bailed on MeeGo

June 2, 2011 8:54:33.674

Engadget has the scoop, and it's interesting - basically, Nokia did some actual introspection, and determined that they couldn't get where they needed to go with their own OS - so they partnered with Microsoft. A lot of companies could benefit by looking at their own strategies with as much of an open mind as Nokia apparently did.

Technorati Tags: ,

posted by James Robertson

 Share Tweet This