Virtual Agility
Ron Teitelbaum talks about how Teleplace supports agile development - no matter how far flung your development team is.
. .
The author of this blog, James Robertson, passed away in April 2014. This blog is being maintained by David Buck (david@simberon.com).
Ron Teitelbaum talks about how Teleplace supports agile development - no matter how far flung your development team is.
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 :)
![]() |
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:
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: javascript, string
Enclosures:
[js4u21-iPhone.m4v ( Size: 6684768 )]
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 :)
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.
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:
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 :)
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:
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:
Enclosures:
[st4u30-iPhone.m4v ( Size: 3205784 )]
NullPointer has three videos up demonstrating some of the new features of the UI Painter for Pharo - I've embedded them below:
Technorati Tags: pharo, ui painter
![]() |
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: fallout, fnv, fallout new vegas, dead money
Enclosures:
[fnvdiary16.m4a ( Size: 9272863 )]
![]() |
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: dead money, fnv, fallout, fallout new vegas
Enclosures:
[fnvdiary16.mp3 ( Size: 6722965 )]
I wanted to move my build script one level further back - meaning, I wanted to have it work like this:
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 :)
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 :)
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...
![]() |
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:
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: javascript, escape, strings
Enclosures:
[js4u20-iPhone.m4v ( Size: 3,265,329 )]
Unless you think recompile, kill, restart is an efficient way to run a website. In which case, go ahead, use Java :)
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:
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:
Enclosures:
[st4u29-iPhone.m4v ( Size: 4375862 )]
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!
Enclosures:
[im11.m4a ( Size: 21,110,516 )]
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!
Enclosures:
[im11.mp3 ( Size: 15,222,327 )]
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: books, self publishing
It's that sort of day, when music and video games blend - who would have expected a StarCraft love song?
There's more crossover between the fan bases of Fallout and Rock Band than I thought :)
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.
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).
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: footnotes