I just finished A Dance with Dragons: A Song of Ice and Fire: Book Five
- and as per usual, he's thrown a few curveballs at us. Here we are in book five, and we are still being introduced to new characters. There's also a shocking (to me, at least) death near the end of the book - someone who I was sure was going to be a player all the way to the end bought the farm.
I'm still not pleased with what he's doing with Arya - I'd like to see her come back into the main story somehow. At least Tyrion is still a major player - I like that character quite a bit, and he keeps managing to land on his feet (although I'm curious to see how the deal he makes towards the end of this book plays out; his cards seem really weak at this point.
My one complaint was that the book was hard to get back into. Like the Wheel of Time books, the gap between installments has just been too long, and by the time a new one comes along, I've forgotten where the story was. At least winter has finally arrived :)
GLASS 1.0-beta.8.7 has been released. I’ve been pretty busy since the last GLASS release in March: there are almost 50 bugfixes included in this release.
Today's Smalltalk 4 You looks at automated loads (from Store) using VisualWorks. I've been doing a lot of work in this area on the project I'm on at work, and I thought it might be worth sharing. 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.
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.
I'm a bit skeptical - the game has a defined beginning, middle and end - so I'm skeptical about how well DLC will fit into the narrative. Still, I liked the game, and the DLC is supposed to slot in during a failry obvious interstitial in the game. I downloaded the DLC while I was visiting my sister; we'll see how it goes :)
Today's Smalltalk 4 You looks at direct SQL access from VA Smalltalk. It's pretty simple, so long as you remember that the API differs when you use select (as opposed to any other SQL operator). 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:
Today we'll look at accessing a relational database using direct SQL statements in VA Smalltalk - to see how to connect, please go back to this tutorial, as we are building on it here. You'll want to take a look at class AbtQuerySpec if you intend to work at this level with your database accessing. The main thing to know is this: if you are querying (using select), then you use #resultTableFromQuerySpec: If you are using any other kind of SQL statement, use #executeQuerySpec: instead. The way you utilize this is pretty simple. To query, use the following kind of code:
"using AbtQuerySpec"
resultCollection := OrderedCollection new.
querySpec := AbtQuerySpec new.
querySpec statement: 'select * from people'.
result := connection resultTableFromQuerySpec: querySpec.
result do: [:eachRow | resultCollection add: (eachRow)].
^resultCollection.
It will look the same with a where clause:
"with a where clause"
resultCollection := OrderedCollection new.
querySpec := AbtQuerySpec new.
querySpec statement: 'select * from people where zipcode = 12345'.
result := connection resultTableFromQuerySpec: querySpec.
result do: [:eachRow | resultCollection add: (eachRow)].
^resultCollection first asDictionary
To use any other SQL statement:
"insert with a query spec"
querySpec := AbtQuerySpec new.
querySpec statement: 'insert into people values (''Fred Flintstone'', ''Rubble Way'', ''Old Town'', ''PH'', 23456, ''456-7890-1234'')'.
connection executeQuerySpec: querySpec.
"commit it"
connection commitUnitOfWork
"delete with a query spec"
querySpec := AbtQuerySpec new.
querySpec statement: 'delete from people where zipcode = 23456'.
connection executeQuerySpec: querySpec.
"commit it"
connection commitUnitOfWork
That pretty much wraps it up for today - we'll look at some more examples next 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.
Today's Javascript 4 You. Today we look at the offsetParent() 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:
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.
When you travel as much as I do, you're bound to hit bad weather every so often - and tonight I hit the jackpot. A line of storms diverted us to Houston for fuel, and then a second line kept us circling DFW for a bit. Then I had to wait in a long line at Avis - I hadn't updated my card with them, so even though I was on the "Preferred" board, I had to go talk to them.
Today's Smalltalk 4 You looks at deleting rows from a database using VA Smalltalk. We'll look at the "object" level interface to that today, and get to general use of SQL in a future screencast. 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:
Today we'll look at deleting data from a database using VA Smalltalk - to see how to connect, please go back to this tutorial, as we are building on it here. You can do this sort of thing directly via SQL, and we'll be getting to that in another screencast. Today we'll be looking at the "object" interface for this.
Once you have a connection to your database set up (with a user who has permissions to make changes), you can delete data pretty easily. First, query the data out of the database:
"delete a row"
table := connection openTableNamed: 'PEOPLE'.
querySpec := (AbtQuerySpec new)
statement: 'SELECT * from PEOPLE where PEOPLE.ZIPCODE = 12345';
hostVarsShape: (nil).
rowToDelete := (connection resultTableFromQuerySpec: querySpec) first.
table deleteRow: rowToDelete.
Next, commit the work:
"commit it"
connection commitUnitOfWork
Now, before we executed the delet, here's what we had from the query:
And here's what we had after the commit:
That pretty much wraps it up for today - we'll look at some more examples next 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.
This week James talks to Niall Ross, a Cincom Smalltalk engineer who was the local representative for this year's (2011) ESUG conference in Edinburgh, Scotland. Niall got involved in just about every aspect of the conference, and that's what the conversation was about.
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!
This week James talks to Niall Ross, a Cincom Smalltalk engineer who was the local representative for this year's (2011) ESUG conference in Edinburgh, Scotland. Niall got involved in just about every aspect of the conference, and that's what the conversation was about.
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!