Welcome to episode 4 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 we talk about a lot of things, but mostly about the different paths we're all taking through the game. Enchanting, swordplay, smithing, and magic - this game is so big, we're all diverging a lot - and we're all looking forward to our next playthrough so we can try something different (even though we haven't nearly finished our first :) ).
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.
Welcome to episode 4 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 we talk about a lot of things, but mostly about the different paths we're all taking through the game. Enchanting, swordplay, smithing, and magic - this game is so big, we're all diverging a lot - and we're all looking forward to our next playthrough so we can try something different (even though we haven't nearly finished our first :) ).
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.
Welcome to episode 55 of Independent Misinterpretations - a Smalltalk and dynamic language oriented podcast with James Robertson and David Buck.
This week Dave and I address the (completely misguided, in our opinion) meme that "you don't need a debugger". As you might expect from a couple of experienced Smalltalk hands, we don't think much that :)
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!
Welcome to episode 55 of Independent Misinterpretations - a Smalltalk and dynamic language oriented podcast with James Robertson and David Buck.
This week Dave and I address the (completely misguided, in our opinion) meme that "you don't need a debugger". As you might expect from a couple of experienced Smalltalk hands, we don't think much that :)
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!
Welcome to episode 3 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 we talk about our characters, and the widely different paths through the game we've taken. Not all of us have done the main quest yet, so we aren't talking about that yet - probably next episode. The title comes from me - I keep managing to get my companions killed :)
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.
Welcome to episode 3 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 we talk about our characters, and the widely different paths through the game we've taken. Not all of us have done the main quest yet, so we aren't talking about that yet - probably next episode. The title comes from me - I keep managing to get my companions killed :)
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.
Today's Smalltalk 4 You looks at menu pragmas in VisualWorks - a way to dynamically modify a menu without having to edit the menu specification itself. 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.
Gemstone (VMWare) has shipped MagLev 1.0 - as reported by InfoQ:
MagLev 1.0 has been released: MagLev is a Ruby VM built on GemStone/S, a 64 bit Smalltalk VM. But MagLev is much more than a Ruby VM, it comes with a mature NoSQL data store, from the website:
MagLev VM takes full advantage of GemStone/S JIT to native code performance, distributed shared cache, fully ACID transactions, and enterprise class NoSQL data management capabilities to provide a robust and durable programming platform. It can transparently manage a much larger amount (terabytes) of data and code than will fit in memory.
I'm playing Skyrim on both my XBox and my Mac (using Parallels), so my progress in both games is running about the same - I can't play on the XBox while I'm in Texas, and I mostly play the XBox when I'm home. On the PC game, I've been doing the mage college quest, looking for the Staff of Magnus - and I've gotten to this room in Labyrinthian:
I spent about 20 minutes (at an absurdly late hour last night) staring at that room and at the map, trying to figure out where to go. I guess the name has meaning :)
Today's Smalltalk 4 You starts working with Glorp descriptors - which is how you define mappings between objects and tables in Glorp.. 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 set up the basics for using Glorp to interact with tables in a database. To start with, we'll need to set up a descriptor class:
DescriptorSystem defines the basics for interacting with a database using Glorp; the subclass we are setting up will define the table mappings we want to use. Today we are going to define a simple mapping to a table (Emp), and then we are going to use Glorp to create that table in the database. There are a few methods we need to define, all instance side. To start with, we need a #tableForTABLENAMEHERE: method - note the caps, which will be replaced by actual name of the table:
This is the pattern you'll use to map Smalltalk objects (instance variables) to columns. We'll explain how the column names get mapped to instance variables below. You'll also need a method to define all the tables being mapped by this descriptor; it should return an array:
allTableNames
^#('EMP')
Next, we need to give the mappings a bit more fleshing out:
That's how we map column names to variable names; here we are using direct mapping. There are other mapping methods, but we'll leave that for another day. For now, we need two more methods:
That's how most descriptors you create will look (with the specifics for the tables/classes filled in, of course). Now we can make use of this code to create the Emp table in the database (Oracle in this case):
"login"
accessor := DatabaseAccessor forLogin: login.
accessor login.
"create a session"
session := GlorpSession new.
session system: (EmpSystem forPlatform: login database).
session accessor: accessor.
"see the SQL in Transcript"
session accessor logging: true.
"now create the table"
session inTransactionDo:
[session system allTables do:
[:each |
accessor
createTable: each
ifError: [:error |Transcript show: error messageText]]].
accessor logout
How do we know that worked? We'll pop up SQLPlus (an Oracle tool) and have a look:
That wraps it up for today - we'll get to inserts, updates, queries, and deletes soon.
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.
GemStone/S 64 3.0.1 was released on Monday of this week.GemStone/S 64 Bit 3.0.1 is a new version of the GemStone/S 64 Bit object server. This release provides feature enhancements and fixes a number of serious 3.0 bugs.
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.
Welcome to episode 2 of "Thu'umcast" - a podcast where Michael Lucas-Smith, Scott Dirk, Austin healy, Makahlua and I document our trials and tribulations in Elder Scrolls V: Skyrim
Today we talk about some of the quests we've been doing - centered loosely around the mage college quests out of Winterhold. A lot of other things came up, including the number of dragons we've slain, the skill/perk system, and some of the weirder random encounters we've had.
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.
Welcome to episode 2 of "Thu'umcast" - a podcast where Michael Lucas-Smith, Scott Dirk, Austin healy, Makahlua and I document our trials and tribulations in Elder Scrolls V: Skyrim
Today we talk about some of the quests we've been doing - centered loosely around the mage college quests out of Winterhold. A lot of other things came up, including the number of dragons we've slain, the skill/perk system, and some of the weirder random encounters we've had.
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.
Today's Smalltalk 4 You starts making use of Glorp against Oracle with a simple query - about as simple a query as you can make, as it happens. 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 get started with using Glorp in VA Smalltalk with Oracle. We've already set up basic connectivity; today we'll have a look at one of the classes (DatabaseAccessor) that you'll end up using in VA Smalltalk.
To start doing queries, you need to login and get things set up:
"simple query using basic database facilities"
result := accessor basicExecuteSQLString: 'select 1 + 1 from dual'.
result next first.
That uses basic Oracle facilities to do the simple math problem. The more important thing from our perspective is the API: #basicExecuteSQLString:. We'll be using this, and other facilities of DatabaseAccessor over the next few screencasts. Once you execute and inspect that, you should see this:
Finally, logout:
"logout"
accessor logout.
Next time we'll start taking a real look at creating database descriptors, so that we can start interacting with tables using GLORP.
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.
Welcome to episode 54 of Independent Misinterpretations - a Smalltalk and dynamic language oriented podcast with James Robertson and David Buck.
This week we have another ESUG 2011 session - Johan Brichnau's talk on a dynamic abstraction layer for web apps. From his abstract:
Multiuser web applications often need to manage concurrent (and potentially conflicting) operations on shared data. The parallel processing of web requests and the disconnected client-side view on that shared data raise ample opportunities for users to make conflicting changes. When such conflicts arise, we may or we may not need to inform the user of the conflict. To this end, database transaction mechanisms are a performant and proven technology for detecting and managing conflicting changes. When each user's web session maintains its isolated view on the database and operations are wrapped in transactions, we are able to prevent, detect and handle all such conflicts. At the same time, however, such applications easily become dependent on a particular database's technical abilities. Even when only considering the object-oriented databases GOODS, Magma and Gemstone, the differences in how database views and transactions work are vast. For example, Magma supports nested transactions while GOODS does not. An even more important difference is that when using Magma and GOODS, we can maintain a separate database view per web session and rely on the transaction mechanism to handle all conflicts. In Gemstone's GLASS integration of Seaside, however, incoming requests always share the same database view. This means only parallel execution conflicts are trapped by the transaction mechanism. With DALi, a database abstraction layer, we build Seaside-based web applications that are database independent and rely on database transactions to manage inter-user application-level conflicts as well as parallel execution conflicts directly. DALi is currently implemented for Pharo Smalltalk (with GOODS, Magma or image-based backends) and GemStone GLASS.
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!
Welcome to episode 54 of Independent Misinterpretations - a Smalltalk and dynamic language oriented podcast with James Robertson and David Buck.
This week we have another ESUG 2011 session - Johan Brichnau's talk on a dynamic abstraction layer for web apps. From his abstract:
Multiuser web applications often need to manage concurrent (and potentially conflicting) operations on shared data. The parallel processing of web requests and the disconnected client-side view on that shared data raise ample opportunities for users to make conflicting changes. When such conflicts arise, we may or we may not need to inform the user of the conflict. To this end, database transaction mechanisms are a performant and proven technology for detecting and managing conflicting changes. When each user's web session maintains its isolated view on the database and operations are wrapped in transactions, we are able to prevent, detect and handle all such conflicts. At the same time, however, such applications easily become dependent on a particular database's technical abilities. Even when only considering the object-oriented databases GOODS, Magma and Gemstone, the differences in how database views and transactions work are vast. For example, Magma supports nested transactions while GOODS does not. An even more important difference is that when using Magma and GOODS, we can maintain a separate database view per web session and rely on the transaction mechanism to handle all conflicts. In Gemstone's GLASS integration of Seaside, however, incoming requests always share the same database view. This means only parallel execution conflicts are trapped by the transaction mechanism. With DALi, a database abstraction layer, we build Seaside-based web applications that are database independent and rely on database transactions to manage inter-user application-level conflicts as well as parallel execution conflicts directly. DALi is currently implemented for Pharo Smalltalk (with GOODS, Magma or image-based backends) and GemStone GLASS.
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!