. .

smalltalk

Virtual Agility

January 6, 2011 21:26:25.598

Ron Teitelbaum talks about how Teleplace supports agile development - no matter how far flung your development team is.

Technorati Tags: ,

posted by James Robertson

 Share Tweet This

smalltalk

Building Clean

January 6, 2011 14:08:00.604

Before you can even get to building a runtime image from a clean base image, you have to get to the point where yoiu can build a clean development image from a clean base image. That was today's first challenge.

On any long lived project, things pile up if no one has been doing clean builds, and this one was no different. It wasn't bad - I only ran into one issue that needed resolving: four methods in one package were being invoked (via package initialization code), but those methods were defined in a package that hadn't loaded yet.

To back up a bit, the entire project here is in a "master bundle" - you load that, and you get everything (either in the bundle or via pre-reqs). Over the last little while, builds have only been done on top of previous development images, so no one spotted this issue. I cleaned that up, and then everything came in easily.

Next up was trying to save the bundle out as a parcel (I'd like to be able to build into an image without Store present). Now I ran into the second check: a bunch of external interfaces were defined with optimization level #debug, and parcels can't be saved with that setting. So... another bunch of small changes and bam - I had a parcel out on disk.

Now comes the fun part - one of the pre-reqs is all of the patch sets that Cincom support sends out (boy, would this be simpler if they just shipped new versions of the owning packages, but I digress). That stuff can't be saved (at least in VW 7.6) as a parcel, because they all contain overrides. So... I just filed that out. Since it's all patches on the base system, I can just set that up to load last and I shouldn't run into problems.

Thus far, I have the system loading cleanly from a base visual.im, which is progress. From there, I can move along to the next few steps and see if I can get a runtime build. Fingers crossed :)

posted by James Robertson

 Share Tweet This

js4u

JS 4 U 21: The String Class

January 6, 2011 8:29:41.257

Javascript 4 U

Today's Javascript 4 You. Today we look at the String class in Javascript, and some of the methods it makes available. 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:

Escaping Strings

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

posted by James Robertson

 Share Tweet This

general

Brief Outage

January 6, 2011 8:18:50.127

There was an issue with the service I use overnight (I got a bunch of emails while I slept) - but it's all better now :)

posted by James Robertson

 Share Tweet This

smalltalk

S3 in Pharo

January 5, 2011 22:03:48.354

Sven Van Caekengergh has implemented an S3 client for Pharo Smalltalk:

I implemented and published a Pharo client for Amazon's AWS S3 service called ZnAWSS3Client. For some background, see the Amazon docs. The code can be found in the package 'Zinc-AWS' in Squeak Source. It depends on both Zinc HTTP Components and XML Support (an excellent package BTW) as well as on the cryptography functionality in Pharo (md5, sha1 & hmac). Basically, Amazon S3 (Simple Storage Service) is an online storage web service where you store and retrieve objects under keys organized in groups called buckets. Objects can be any web resource identified by a mime type. The main advantage is that S3 is a highly scalable, reliable, secure, fast, inexpensive service.

Technorati Tags: , ,

posted by James Robertson

 Share Tweet This

smalltalk

Moving Back the Chains on Build Tools

January 5, 2011 14:37:23.694

I'm still working on build automation - the work I did yesterday got me where I wanted to go for BottomFeeder, but that's because all of the scripts existed already. What I need to get to is this:

  • Starting from a development image, specify a set of packages and bundles to include in a build
  • Have a tool that takes that information and generates a minimal build script
  • From there, be able to execute said build script

And that's what I'm working on today. I've got a simple domain model hammered out - I still need to create a UI to live on top of that as a specification tool. But it's progress :)

posted by James Robertson

 Share Tweet This

st4u

ST 4 U 30: The Shout Workspace

January 5, 2011 7:51:30.412

Today's Smalltalk 4 You looks at the Shout workspace in Pharo - another tool you'll use a lot. 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:

Shout

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

posted by James Robertson

 Share Tweet This

smalltalk

Custom Window Styles in Pharo

January 5, 2011 7:46:33.902

NullPointer has three videos up demonstrating some of the new features of the UI Painter for Pharo - I've embedded them below:

Technorati Tags: ,

posted by James Robertson

 Share Tweet This

fnvdiaryAAC

That Podcast 16: Dead Money (AAC)

January 4, 2011 23:48:13.876

That Podcast: FNV Diary

Welcome to episode 16 of "That Podcast: An FNV Diary" - a podcast where Michael Lucas-Smith and I document our trials and tribulations in Fallout: New Vegas.

On today's podcast, I'm joined by guest host Michael Fincher - another XBox player who has recently (minutes before we recorded) completed "Dead Money", the topic of tonight's podcast.

You can subscribe in iTunes (or any podcatcher) using this feed, or this one for the AAC edition. You can get to the podcast directly in iTunes via this link. You can also go to the iTunes store and leave a comment, or join the Facebook Group and discuss the podcast.

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

Got feedback? Send it to James. We'd really appreciate it if you head on over to iTunes and leave a comment - enjoy the podcast, and we'll see you in the wastelands!

Technorati Tags: , , ,

Enclosures:
[fnvdiary16.m4a ( Size: 9272863 )]

posted by James Robertson

 Share Tweet This

fnvdiary

That Podcast 16: Dead Money

January 4, 2011 23:47:34.487

That Podcast: FNV Diary

Welcome to episode 16 of "That Podcast: An FNV Diary" - a podcast where Michael Lucas-Smith and I document our trials and tribulations in Fallout: New Vegas.

On today's podcast, I'm joined by guest host Michael Fincher - another XBox player who has recently (minutes before we recorded) completed "Dead Money", the topic of tonight's podcast.

You can subscribe in iTunes (or any podcatcher) using this feed, or this one for the AAC edition. You can get to the podcast directly in iTunes via this link. You can also go to the iTunes store and leave a comment, or join the Facebook Group and discuss the podcast.

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

Got feedback? Send it to James. We'd really appreciate it if you head on over to iTunes and leave a comment - enjoy the podcast, and we'll see you in the wastelands!

Technorati Tags: , , ,

Enclosures:
[fnvdiary16.mp3 ( Size: 6722965 )]

posted by James Robertson

 Share Tweet This

smalltalk

More Build Automation

January 4, 2011 17:33:55.603

I wanted to move my build script one level further back - meaning, I wanted to have it work like this:

  • Fire off an image
  • Load all the latest code from Store
  • Drop each package/bundle from the image into a build directory
  • Fire off a new, clean image, load the parcels, and proceed from there

That way I could ensure that a build actually had the latest code, instead of the latest code I remembered to parcel out - and my build doesn't need any of the Store machinery in it. So, here's the guts of that new script. First, some code to load a package from Store, then dump it out as a parcel:

 

savePackageBlock := [:name :dir |
	| pkg |
	pkg := Store.PackageModel allInstances detect: [:each | each name = name].
	pkg
		saveAsParcel: (dir asFilename construct: name) 
		saveStructure: true 
		saveLinks: true].

(Store.Package newestVersionWithName: 'MyCounter') loadSrc.
savePackageBlock value: 'MyCounter' value: 'buildTest'.

 

That's easily built up to more packages. Then I just add this new script to what I last posted on, and bam - I go from a clean image and an empty build directory to a full build directory and a clean build. Pretty nice :)

posted by James Robertson

 Share Tweet This

general

The Joys of Bureaucracy

January 4, 2011 13:22:08.703

There are advantages to working in a big organization - budgets tend to be looser, the projects tend to well established. On the other hand, getting started can be slow - the wheels of the IT organization turn slowly. I only got my work laptop today, for instance, and it took nearly 30 minutes on hold before the help desk got to my call (they were polite and helpful once I got there though).

It's going to be a bit weird having a machine that I'm not the master of - I don't have admin access to the Windows notebook they gave me. That's why I have my personal Mac though - it's my "real" machine :)

posted by James Robertson

 Share Tweet This

marketing

How to Promote

January 4, 2011 11:27:31.827

Gemstone gets it - they are actively promoting the new Amazon free EC2 micro-instance as a way of getting started with GLASS. Other Smalltalk vendors, sadly, are in a somewhat different place...

posted by James Robertson

 Share Tweet This

js4u

JS 4U 20: Escaping Javascript Strings

January 4, 2011 8:23:21.046

Javascript 4 U

Today's Javascript 4 You. Today we look at how you escape special characters in Javascript strings. 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:

Escaping Strings

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:
[js4u20-iPhone.m4v ( Size: 3,265,329 )]

posted by James Robertson

 Share Tweet This

web

You Want a Dynamic Language on the Web

January 3, 2011 17:21:42.154

Unless you think recompile, kill, restart is an efficient way to run a website. In which case, go ahead, use Java :)

Technorati Tags: ,

posted by James Robertson

 Share Tweet This

smalltalk

A Free EC2 Instance with GLASS

January 3, 2011 6:45:14.040

Amazon is offering free micro-instances for a year, and Nick Ager is showing you how to use it with Gemstone and Seaside:

Deploy your Seaside application for free with an EC2 micro instance and Gemstone from Nick Ager on Vimeo.

Hat tip Torsten

Technorati Tags: , , ,

posted by James Robertson

 Share Tweet This

st4u

ST 4U 29: The Pharo System Browser

January 3, 2011 6:38:01.280

Today's Smalltalk 4 You looks at the system browser in Pharo - the tool you'll spend the most time with 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:

System Browser

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

posted by James Robertson

 Share Tweet This

podcastAAC

Independent Misinterpretatons 11: Pango in Smalltalk (AAC)

January 2, 2011 11:14:25.409

Welcome to episode 11 of Independent Misinterpretations - a Smalltalk and dynamic language oriented podcast with James Robertson, Michael Lucas-Smith, and David Buck. This week I have a recording from ESUG 2010 - Travis Griggs talking about integrating Pango with Smalltalk. I apologize for the noise in the audio; it came to me that way.

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:
[im11.m4a ( Size: 21,110,516 )]

posted by James Robertson

 Share Tweet This

podcast

Independent Misinterpretations 11: Pango in Smalltalk

January 2, 2011 11:13:52.079

Welcome to episode 11 of Independent Misinterpretations - a Smalltalk and dynamic language oriented podcast with James Robertson, Michael Lucas-Smith, and David Buck. This week I have a recording from ESUG 2010 - Travis Griggs talking about integrating Pango with Smalltalk. I apologize for the noise in the audio; it came to me that way.

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:
[im11.mp3 ( Size: 15,222,327 )]

posted by James Robertson

 Share Tweet This

smalltalk

Musical Representation in Smalltalk

January 2, 2011 11:05:30.999

The Cyclades project looks pretty neat.

Technorati Tags:

posted by James Robertson

 Share Tweet This

marketing

Disintermediation in Books

January 1, 2011 12:00:21.485

Richard Fernandez notes that more authors are starting to move away from formal publishing, and doing it themselves - they get to keep a lot more of the money that way. The problem for new authors trying to do the same thing? Visibility:

Maybe Joe Konrath can go direct to his audience. But he’s got a reputation. Authors without an established readership base face a chicken and egg problem. Nobody buys their books because nobody knows about them, and nobody knows about them because nobody has yet bought their books. New print on demand services like Createspace and Amazon’s Kindle have only solved the self-publisher’s logistics and distribution problem, but they have not solved the self-publisher’s more fundamental problem, which is marketing.

That's certainly a problem, but I wonder how much of one going forward. The Amazon recommendation engine has turned over a lot of books for me, many of them self published ones from fairly unknown authors. I've found the quality of those books varies about as much as it does for "professional" authors.

The thing I don't really know is how those authors make the leap from utter obscurity to that recommendation list. Clearly some people are making that jump, but I have no idea how many, or how hard it is.

Technorati Tags: ,

posted by James Robertson

 Share Tweet This

holiday

Happy New Year!

January 1, 2011 2:21:16.688

Happy 2011!

posted by James Robertson

 Share Tweet This

games

StarCraft Love Song

December 31, 2010 11:22:34.678

It's that sort of day, when music and video games blend - who would have expected a StarCraft love song?

Technorati Tags: ,

posted by James Robertson

 Share Tweet This

games

Vault 101 Comes to Rock Band

December 31, 2010 11:10:59.058

There's more crossover between the fan bases of Fallout and Rock Band than I thought :)

Technorati Tags: ,

posted by James Robertson

 Share Tweet This

smalltalk

New Cog VMs

December 30, 2010 22:49:39.375

Eliot Miranda has released new Cog VMs - I'm quoting an email to the Squeak list below:

I've released a new version of Cog that has a substantially improved code generator along the lines of Peter Deutsch's HPS (VisualWorks) and various of Ian Piumarta's VMs. These all use a simple tecnique to identify constant references in bytecode and to support a register-based calling convention. While this does produce faster code it tends to accelerate low-level code much more than high-level code

You can download them here - and follow Eliot on his blog here.

Technorati Tags: ,

posted by James Robertson

 Share Tweet This

smalltalk

Video in Smalltalk

December 30, 2010 18:22:07.883

Sean DeNegris continues to do some cool work in Squeak:

I have a working proof-of-concept to play any video file that QuickTime can handle in Squeak Smalltalk (or Pharo with slight modifications).

Technorati Tags: , ,

posted by James Robertson

 Share Tweet This

books

Evolving Book Norms

December 30, 2010 11:27:47.743

Here's something I hadn't thought of with the rise of ebooks - the loss of page numbers. I'm quoting John Holbo, who ponders the issue:

I’m thinking about quoting our John in something I’m writing (yes, on Zizek). But I can’t footnote a Kindle edition. No pages. What will the world come to? Bibliography has gotten a bit old and odd in the head in the age of the internet, but the existence of pages themselves is kind of a watershed.

The Kindle app (and presumably the Kindle as well) show you a "percentage reached" instead of a page number. I understand that - given the various form factors involved (multiple Kindle sizes, iPads, smart phones....), what does a page number even mean? It should be simple to graft the physical form page number into the metadata, but as we go forward, there may well be books for which no physical form exists. What then? Perhaps we'll have to footnote based on the word count of the reference? Some sort of standard will have to arise, I guess.

Technorati Tags:

posted by James Robertson

 Share Tweet This

smalltalk

Have Smalltalk Talk to your Phone

December 30, 2010 9:35:14.526

There's an interface to Tropo from Pharo and Squeak:

With tropo.com you can have users interact with your smalltalk application using their telephones or SMS messages.

Technorati Tags: , , , ,

posted by James Robertson

 Share Tweet This