community

Leveraging Multicore CPU's with Cincom Smalltalk

December 4, 2009

Happy Holidays to all.

Please join us at our next meeting on Wed, January 21st, 2009 where Arden Thomas Cincom Smalltalk’s product manager will be presenting. For more info check out our site: www.nycsmalltalk.org.

Also if anybody is interested in helping out with presentations related to Smalltalk and other technologies that can be leveraged from Smalltalk please send me an email here: presentations@nycsmalltalk.org.

 

thanks

 

-Charles

general

Cincom presents Web Velocity

December 4, 2009

On May 21st, Arden Thomas, product manager for Cincom Smalltalk will be proving us with a presentation on Web Velocity , a Seaside based framework for the rapid development of web based apps.

See our web site for further details:

 

www.nycsmalltalk.org

community

GLASS - Gemstone on Seaside

December 4, 2009

Please join us this upcoming Wednesday, Feb 6th , for an interesting presentation on a new Seaside based framework which leverages Gemstone to provide for transparent persistence services to Seaside.

James Forester of Gemstone will be presenting.

Please visit our site for directions.

 

GLASS: Transparent Persistence for Seaside
 
While the Seaside framework elegantly addresses HTML generation and application flow-of-control issues, it still leaves challenges for the developer--including persistence, multi-user coordination, and scaling. With typical solutions (including object-relational mapping, external files, and multiple images) the "pure objects" experience of Smalltalk is compromised. In this presentation we will demonstrate GLASS (GemStone, Linux, Apache, Seaside, and Smalltalk), a stack (analogous to LAMP) that provides a robust environment for deploying sophisticated, dynamic web applications that can scale.
 
GLASS runs on GemStone/S 64 Bit, a Smalltalk application server and database, whose Web Edition is available for free--even for commercial use. Copies of the software will be available at the meeting.
 
James Foster is QA Lead on the Smalltalk Engineering Team at GemStone Systems, Inc.
 

community

Plugging in Postgres

December 4, 2009

The next NYC Smalltalk presentation will be held Wednesday Nov. 7th.

I, Charles A. Monteiro will be discussing issues I encountered as well as techniques/strategies in our quest to have an Oracle centric direct sql VW application speak to a Postgres backend without having to change application layer code.

The presentation starts at 7pm  but there’s an open house at 6:30 where people meet and freely discuss anything sort of Smalltalk related.

After the presentation many of us go to a local pub/bar and continue the discussions over some beer.

Our presentations are opened  to the public. Bring a friend if you have one.

For directions go to: www.nycsmalltalk.org , keep in mind that the web site is in the process of being converted back to a wiki and therefore may not be up to date, although you can certainly trust the directions .

general

Basic on Seaside

December 4, 2009

Carl Gundel , developer of LibertyBasic , a development environment for Basic written in VisualWorks, will be presenting at NYC Smalltalk on Wednesday, May 30th, 2007. Open house starts at 6:30 pm and the presentation follows at 7:00pm. We usually go out for drinks/food to a nearby restaurant/bar..

Our meetings are opened to the general public.

For directions go to our web site:

http://www.nycsmalltalk.org

 

Bio:

Carl Gundel is a long time Smalltalker (since 1988) who got his start using Digitalk's Smalltalk/V for DOS.  Since then he's used Smalltalk to craft everything from shop floor control to CNC editors to programming languages.
 
Abstract:

Carl will present Run BASIC; a web programming system.  Run BASIC focuses on making web development easy; sort of a QBasic for the web.  Run BASIC is based on Carl's popular Liberty BASIC language and is implemented on top of VisualWorks and Seaside.

 

http://www.libertybasic.com
 

general

Presentation: Unit-Testing in Smalltalk

December 4, 2009

Please join us for our next presentation Wednesday 28th of March 2007. See you all there and visit our web site for time and directions:

http://www.nycsmalltalk.org

Details:

BIO:

Mr. Panu Viljamaa is an OO-, XML-, and web-based -programming expert currently working as an independent consultant in New York City. He's been working as a Smalltalk programmer-architect since 1986. His current tools include J2EE, "Ajax" and "REST" as well. His writings on software have been published in the Addison-Wesley series on Design Patterns and by ACM. He's worked extensively as a software engineer in the telecom-, financial-, utilities- and e-learning domains in both United States and Europe.

-----------------------------------------------------------------
Abstract:

In this presentation Panu will talk about Unit-Testing in Smalltalk, including a new simplified "Method-Tests" -API for doing so.
He will demonstrate how unit-testing can be made more productive and totally integrated with the open IDE of Smalltalk. This presentation will be a precursor, and a dress-rehearsal for a more comprehensive presentation to be given at Smalltalk Solutions 2007, Toronto.

 

 

community

Cincom Smalltalk in the house

December 4, 2009

Arden Thomas which is the new SE for Cincom Smalltalk will be presenting on January 31st , 2007.

Directions and time can be found on our web site.

Abstract:

I  will discuss our new product roadmap, which has been changing and evolving more recently.  I would also like to get feedback from the group on their product needs, and even do some group "thinking out loud" or brainstorming, about future directions for Smalltalk IDE's, and ways to improve our product.

Bio:


Arden Thomas got started with Smalltalk in 1986, looking for better ways to do software development (he found it). He is currently a senior field application engineer for Cincom working to help Cincom's Smalltalk customers, and to help move Smalltalk forward.  Prior to this he worked for ParcPlace as a trainer, sales engineer, and consultant, and then moved into a senior development position at Forest Investment management, doing extensive software development in VisualWorks Smalltalk.

See you all there and as always we will get together for some drinks right around the corner at the La Vigna restaurant at the New Yorker at 34th and 8th.
 

music

Music Patterns

December 4, 2009

As I believe I have mentioned before I find that some of the ideas I have encountered in software engineering can be helpful in my music journey. On my music blog I talk about applying the concept of design patterns to the music creation process i.e. from composition, arrangement to mixing , mastering and publishing. Soup to nuts.

I specifically write about a way of doing an intro to a tune that permeates an idea across the tune all the way to the end. Some of this is based on stuff that I know I have listened to , some of it is I'm sure on stuff that I have listened to but not consciously aware of , is anything really new ?

This pattern has helped me with one of my major issues and that being having a sense for the entire tune.

Here is the link:

http://monteirofusion.blogspot.com/2007/01/music-patterns.html

Some of you all may relate, or at least find it interesting.

Discussion of applying patterns to music I expect hopefully will carry on here.

music

Music Exec pirate offspring

December 4, 2009

In case James didn’t see this one, caught it on my lawyer’s blog , bloged about here on my music blog:

http://monteirofusion.blogspot.com/2006/12/its-okay-if-your-dad-is-music-exec.html

sorry for the run around , music stuff I put on that blog but since at least James covers the RIAA pretty decently I thought it was relevant to point it out.

For those Smalltalkers out there that are music obscessed like me I think this post may be interesing:

http://monteirofusion.blogspot.com/2006/12/land-of-free-vsts.html

I started covering the world of free VST (Virtual Studio Technology). Great time to be doing recording from podcasting to full music production. There are ton of real high quality signal processing plugins out there which can be integrated into your audio recording software which btw includes Audacity. For Audacity you will need the VST enabler plugin as a pre-requisite.

I plan to specifically cover those VST plugins I use in my album project. The article does provide a link to a number of plugins.

Enjoy.

general

Podcasting the NYC Smalltalk meetings.

December 4, 2009

Recently I was asked by Joe Backansas, and Joe forgive me if I have slaughtered your name, if I would consider podcasting the NYC Smalltalk meetings. In his words that “would really be cool”. Then a few weeks later James Robertson , which you all know very well,  inquired as well.

Well, I’m swamped but with regards to this, things were just falling in place. I recently purchased a new PC to do be able to handle professional level hard disk recording. My hard disk recording software Adobe Audition recently won an award at a Podcaster’s conference. I have been listening to a podcast on how to podcast using Adobe Audition and I certainly could use exercising my sound engineering chops.

So I will be giving this a shot.

In my music blog I talk about some of the obstacles involved and how I expect those will be conquered.

I will report back and hopefully have a podcast to share fairly soon. Our next NYC Smalltalk meeting is actually tonite.

-Charles

http://www.monteirosfusion.com

general

Presentation: More is better baby

December 4, 2009

Give me more classes is what Andres Valloud says. He will shows us how more classes can in some cases equate to better Smalltalk performance.

Andres will be providing us with an encore presentation of his recent OOPSLA presentation.

The next meeting will be Wednesday November 29th, 2006. It will be the last for this year since we will be taking a break for the holidays.

Same place except its on the 11th Floor and our regular same time.

Directions:

Take A,C,E to 34th street Penn Station. For that matter any train stopping at 34th street would suffice such as N,R,2,3. The New Yorker Hotel is at the corner of 34th and 8th, see the star on the map above. Walk to the corner of 34th and 9th. Meeting is held at: 440 W. 9th Ave, Fl 11. Meetings run from 6:30 pm to 8:30 pm .The first half hour is an open house where individuals new to Smalltalk can ask any question regarding Smalltalk of any of our seasoned Smalltalkers. After the presentation we go around the corner to the New Yorker Hotel and have a couple of beers and talk more Smalltalk and other related tangents that come up.

—————————————————————————————————————————-

The Presentation

The abstract:
 
This presentation shows how to substantially increase the performance
of Smalltalk programs by creating more classes to take advantage of
polymorphism.  An improved implementation of the well-known message
match:, using this and other techniques, can run up to twice as fast
as the current inlined implementation VisualWorks Smalltalk includes.
In this particular case, creating more classes is shown to be so
powerful as to become preferable to heavy use of identity checks on
immediate objects by a margin of up to 20% on average.  In addition,
non-inlined implementations compare quite well to the existing inlined
implementation of match:.  While they can run faster in some cases,
their overall performance falls behind by no more than a factor of 2.
 
This is a quick summary of chapter 3 from my book currently being
written.  It is due to be published in 2007.
 
 
The bio:
 
Andres has been programming since age 10, has been programming in
Smalltalk for the last 10 years, and has been an artist at it for the
last 5 years.  He has received a check from Donald Knuth regarding The
Art of Computer Programming.  He is currently writing a book on
Smalltalk.  He won the Smalltalk Solutions 2006 Coding Contest, and
he was a presenter at OOPSLA 2006 as well.  Presently, he works as a
consultant at JP Morgan.

—————————————————————————————————————————

See you all there.

 

Charles

http://feeds.feedburner.com/MonteirosFusion

general

NYCST - Wednesday's presentation postponed till next week

December 4, 2009

due to the upcoming heavy rains on Wednesday, the fact that a lot of
our members drive including our presenter which is coming from deep
Jersey, the fact that the 18th also happens to be one of our regular's
birthday which he will be spending with his immediate family, we shall
be postponing our presentation till next Wednesday the 25th which will
be in direct conflict with OOPSLA
 
we apologize for any inconveniences

BTW, anybody else that has a shrink wrapped Smalltalk application that they would like demo please send me email.

thanks
 
the management
NYC Smalltalk

music

Debut in iTunes

December 4, 2009

Jonraney2No its not another Smalltalk tutorial series although it would be good to see more of those spring up but rather I’m plugging my friend and composition teacher Jon Raney. Jon is collaborating on a my project i.e. my music project. Its not all that Jazz, more like World Fusion but probably more like Monteiro’s fusion .  I have ordered an intense PC to do the hard disk recording and sound engineering. That’s coming next week.

If you all like Jazz or even if you think you don’t but like piano music check out Jon’s CD. Its got a bit of everything there from ballads, to blues to Samba infusions.

-Charles

music

Dimeola in Gotham

December 4, 2009

I went to the Al DiMeola concert in Manhattan last nite. DiMeola has a new album and its great. Its called Consequence of Chaos and its available certainly at Amazon’s but also at Telearc the publisher.

I blogged about my experience at the show here.

community

Building a successful shrink-wrap application using Smalltalk

December 4, 2009

Mark Pirogovsky, a frequent visitor to NYC Smalltalk , will provide us with a presentation on his experiences building shrink wrapped Smalltalk applications. He has actually worked on three large shrink wrapped ST apps.

He will specifically be using his current application as an example.

Check out: http://www.aggflow.com

For bio and background checkout:

http://wiki.cs.uiuc.edu/VisualWorks/Mark+Pirogovsky
http://profiles.yahoo.com/mpirogovsky

Date:

Wednesday , October 18th, 2006

6:30 pm Open house

7:00 pm - Presentation

Directions:

Take A,C,E to 34th street Penn Station. For that matter any train stopping at 34th street would suffice such as N,R,2,3. The New Yorker Hotel is at the corner of 34th and 8th, see the star on the map above. Walk to the corner of 34th and 9th. Meeting is held at: 440 W. 9th Ave, Fl 8. Meetings run from 6:30 pm to 8:30 pm .

The first half hour is an open house where individuals new to Smalltalk can ask any question regarding Smalltalk of any of our seasoned Smalltalkers. After the presentation we go around the corner to the New Yorker Hotel and have a couple of beers and talk more Smalltalk and other related tangets that come up.

 See you ALL there.

 

-Charles

general

Presentation: and the Winner is

December 4, 2009

Hi all. Andres Vallound , one of our members here at NYC Smalltalk and the recent winner of the Smalltalk Solutions 2006 coding contest will be presenting. He plans on showing us what it took to win the contest. Should be fun. As always we will also meet after the presentation for some beers and etc and continue the discussions there at La Vigna, the restaurant right inside of the New Yorker hotel around the corner from the presentation.

Some details here:

Date & Time

Wednesday, September 13th, 2006

Open house — 6:30 PM

Presentation — 7:00 PM – approx 8 PM

Drinks and Food — after at La Vigna

Directions  can be found on our web site.

Abstract

This presentation describes an approach to the coding
contest at Smalltalk Solutions 2006.  Many deep abstraction techniques
are put to use to deliver a framework of expression that is extremely
easy to change and maintain.  Part playing video games and part
introspective, this strategy was awarded first place in Toronto.
 
 
Bio

 
Andres has been programming since age 10, has been programming in
Smalltalk for the last 10 years, and has been an artist at it for the
last 5 years.  He has received a check from Donald Knuth regarding The
Art of Computer Programming.  He is currently writing a book on
Smalltalk.  He recently won the Smalltalk Solutions 2006 Coding
Contest, and has been accepted as a presenter at OOPSLA 2006.
Presently, he works as a Smalltalk consultant at JP Morgan.

 

community

A great past season

December 4, 2009

I think of our seasons here at NYC Smalltalk to run from September to June. July and August have proven to difficult to meet and we do take a break in December though sometimes our schedules get pushed so that we still end up presenting during the first week of December.

We had a great 2005 – 2006  season, we had everything from Sunit testing to a Ruby/Smalltalk presentation. We also met 9 times i.e. we had a full schedule and not once did I have to present  We had good vendor support, and support from individuals like Carl Gundel that made the trip from Boston to present.

A rundown of this past season can checked out here:

http://www.cincomsmalltalk.com/userblogs/ocit/blogView?searchCategory=community

This season should be as interesting. We have two new presenters right off the gates. Andres Valloud who will present on his experiences in winning the Smalltalk coding contest at Smalltalk Solutions 2006 and Mark Pirogovsky who will be presenting a demo of a engineering application written in Smalltalk. More details soon on those. We also may have an old friend to NYC Smalltalk come and visit us again, that being Eric Clayberg of Instantiations whom I cornered at Smalltalk Solutions this past April in Toronto. We have a decent number of VAST developers and customers that would like to hear the skinny on Instantiations effectively taking over the VAST line. Synchrony Systems also expressed interest in presenting. I also tried to recruit a known Squeaker, this guy lives in Boston so its do-able as Carl has proven but sure its a  hike. He kind of said , “I’ll call you” and so I wait.  Eric lives in Boston as well but he is a vendor so I have less pity. We shall see.  Back to Squeak, I sort of feel bad that we under represent Squeak here. I welcome any Squeaker that wants to present to let me know.

Recently, an old Smalltaker friend of mine that had surely moved to the dark side dropped me a note remarking that it was good to see me still involved with Smalltalk and NYC Smalltalk. Well, I personally certainly have had my stints with Java but luckily really never stopped working with Smalltalk and I am happily fully employed in Smalltalk for a decent while. As far as the group well it has been around certainly since at least 94 and we have never stopped meeting. Sure some years were leaner than others but things are looking pretty good for Smalltalk from where I see it. VisualWorks for one is soooo much better, awesome really. The VW community is the most active I have ever seen it. Cincom is doing well. Squeakers are working on all sorts of nifty things.

What was particularly nice this past season was to see so many new faces to the group. Maybe this year we can get to see some of the old, old faces we have not seen in a while.

To keep abreast of our schedule folks can subscribe to our newsfeed. I will also post to comp.lang.smalltalk and to the VWNC list. Finally, we have a Yahoo group registering there also provides the advantage of having access to presentations that been made available to us by the presenters.

Here’s our newfeed:

http://www.cincomsmalltalk.com/rssBlog/ocit-rss.xml

Joining our Yahoo groups happens here:

http://groups.yahoo.com/group/nycsmalltalk/

Our next presentation is in September, date to be announced most probably the 13th and full details of Andres presentation will be made as soon as I can confirm the availability of the venue.

See you all soon.

 

-Charles

community

Cleaned up the site

December 4, 2009

Okay, NYC Smalltalkers can go to:

http://wiki.nycsmalltalk.org for details on whatever the current meeting is.

For now this is being forwarded to http://www.nycsmalltalk.org

but the idea is that hopefully we will have a wiki backup so that I can update it from any where I may be.

Anyhow, June 7th we have the Smalltalk Ruby presentation. In July we plan to have Andres Valloud this year’s winner of the Smalltalk coding contest at the Smalltalk Solutions conference give a presentation on the strategy that won him the iPod.

 

-Charles

community

Getting there , slowly

December 4, 2009

In my last post I griped about my dynamic dns problems. Recap: I used to run the NYC Smalltalk wiki from my home on my VAIO notebook running CentOS Linux until it seems the greedy facist cable company apparently shut me down. I really don’t think it was just me

Anywho , a gentlemen and a colleague assisted by providing me with access to a shell account from where I could run nmap on my box in order to figure what was really up. Have not had the cycles to do this yet but I will and thanks.

What have I done?

  • I changed my web site hosting provider and went with a cheaper package that allowed me to do more, a lot more. I’ll blog about these guys later. I’m quite happy with them and quite disgusted with my previous fat cat provider.
  • The more is that we now have http://www.nycsmalltalk.org  – a static web site, which I have not yet updated but will and probably will for a while be posting the up coming meeting announcements on.

While making the move I found some interesting and nostalgic items packed in boxes such as:

 

A site that my wife had built in Flash for us. From the art work you all can tell how old it is. Looking at it just makes me sad.

Anyhow, I will have a wiki back up someday but chances are that I will take the time now to port to WikiWorksSSP i.e. an extended WikiWorks framework based on VisualWorks SSP technology which includes a reasonable security mechanism and move away from SmallWiki. The main reason is that there has not been any continued development of SmallWiki on VisualWorks but rather they moved to Squeak.

 

-Charles

community

Ruby and Smalltalk

December 4, 2009

I thought it would be an interesting idea to have a presentation where we compared Smalltalk to one of our dynamic language cousins. Of these next kin it seemed to me that from the most popular languages that Ruby was the closest. So I approached the NYC Ruby chairperson, Patrick May. We met at the cafe at the New Yorker Hotel , right around from Suite LLC where we hold our meetings and for a couple hours we chatted but mostly went through the VisualWorks IDE. I brought a copy of VW 7.4 NC which I let him have. Patrick apparently has been a fan of Smalltalk but did not know quite where to start.

I wonder, has anybody written a “making the transition” type of tutorial i.e. that which understands that most new comers to Smalltalk will be used to file based environments and just unfamiliar with the “live” image concept that Smalltalk presents.

But I digress, details for our May presentation:

Date: June 7th, 2006

Location: 440 W. 9th Avenue, between 34th and 35th ,  8th Fl

Time: 6:30 to approx 8:30

The presentation actually starts at 7pm , but there is an open house from 6:30 – 7pm.

 

Abstract:

Patrick May will give an introduction to the Ruby language, highlighting similarities and
differences from Smalltalk.  He will also speak on the viability of Ruby in various
real-world scenarios

Bio:

Patrick May is a programmer, organiser, and artist.  May is Director of Technology at
Rhizome.org, a new media arts community.  Since 2002, he has been developing ruby-web,
 a ruby environment optimised for the web.  He has presented ruby-web at the 2002 and
2004 Ruby Conferences.
 
.

community

I have been shot down

December 4, 2009

Perhaps some of you have noticed that NYC Smalltalk Wiki is not operational. Well, perhaps you all out there have not noticed but some of our regulars have. It seems that my ISP has shut all of my ports down. Probably not just me. It probably is now “policy”. This SUCKS !!!

BTW, I have a residential broadband account. It has sustained our wiki for at least 2 years. Are they all starting to do this? So the small people like me can’t run wikis from home. Forget about any independent P2P collaboration. P2P networks will definitely need to rely on super peers which means at the very least folks on business cable/dsl. But wait, some cable providers will give you a business cable account and they will very generously open 2 ports. What a joke.

I wonder what the motivation is. Are they trying to control spam/viruses better? Are the small fries of the world actually really impacting their bandwidth? Is this a money making squeeze to get us all to upgrade to business cable.

Maybe I’m screwing up. My newer NetGear router may be screwing up.

I used Shields UP from www.grc.com to check out my port “stealthness” or not. Unfortunately, Shield Up will only test a range of 64 ports at a time and I have to edit the port forwarding tables on the router as well to be able to test. Needless to say I only tested a couple ranges. I don’t know of a tool that will scan the entire port range. Even if there is such a tool, I obviously would need to connect a box directly to the cable modem. I think. I don’t believe there is a setting in my router to just allow all traffic through. Of course not. Through to where? Traffic has to go somewhere.  Well, there is the “DMZ” option but I already tried that with one of my boxes.

All of this is such a hazzle and aggravation especially since it makes me so angry that I have to take time away from playing my guitar to handle this BS.

Action items:

  1. Need at the very least a backup static site for NYC Smalltalk.
  2. A link from the site to a url that would access the NYC Smalltalk blogs “Community” category, if possible.
  3. Spend just a tiny little more time on testing what the issue really is.
  4. Decide to bite the bullet and upgrade to a business cable setup that would allow me total access to my box. In other words just buy myself out of this hazzle.

 

community

Reflections and tidbits from Toronto

December 4, 2009

Here are my notes from my trip to Smalltalk Solutions in Toronto:

  • If you ask for a cappuccino at Tim Horton’s you will get regular coffee with milk, really.
  • Don’t try to use your credit card at Tim’s.
  • Tim Horton’s is the parallel universe counterpart to Dunkin Donuts.
  • Coffee shops will serve your coffee in paper cups but without a lid. Why???
  • Some coffee shops (Timothy’s) require that you pick out your paper cup and then hand it over to the coffee people.
  • The Federal goverment charges sales tax on food and so does the state. I was told that it all adds up to about 15% and that of course does not include tip and of course also does not include the “foreign fee” your bank will charge you.
  • Many, many restaurants in the downtown area have TVs in them.
  • Brian Foote is a funny dude —most enjoyed presentation. 
  • Eliot has a funny laugh.
  • Martin McClure bakes his own bread.
  • Michael-Lucas Smith woke up at 4 am and then went to an Aikido session.
  • I managed to get in decent amount of guitar time.
  • Michael also slept through dessert last nite, really.
  • Canadian Bob Nemec is the new Executive Director of STIC. I was told that he will decree that from now on all Smalltalk code must be written in both French and English.
  • I am so “web-ed” out but for those that are not there was a lot of useful to potentially useful web technology on display.
  • The crypto stuff, boy that was a snore
  • Apparently, there are only 27,000 sunits for Pollock not 50,000 +
  • Haddocks have loins.
  • A NYC Smalltalker won the coding contest. So Andres, may be the coding contest experience would make a good topic for a presentation?
  • Smalltalk Solutions 2007 will be in Toronto again.
  • Country music and Hockey apparently mix well.
  • Not convinced that we got a lot of exposure to non-Smalltalkers but I guess something is better than nothing. Perhaps better next year. More time to plan, more leverage with the organizers. Maybe.
  • My most satisfying meal came out of a vending machine the very last nite. A “Vickies” Sea salt malt vinegar potato chip bag and some French orange-ade like beverage. Pretty good actually. I wonder if there are any Smalltalker gastrophiles (is that a word ?) i.e. Smalltalkers that like good food and I just mean good and not pretentiously expensive. Just one nice dinner would have sufficed.
  • The Good, the bad and the ugly was a Clint Eastwood film before it was a Jeff Sutherland article. I would be more concerned to piss off Clint than Jeff.
  • I guess overall the content seemed light but then again we had less slots to use because of the combined conference. Perhaps , next year we can elevate the technical content and spread it around, perhaps get more slots from the conference.
  • We should avoid negative PR presentations.
  • Some non-Smalltalker dude asked one of the vendors at the exhibit hall “what are objects”, boy what a flash back.
  • I had a nice chat with the dark angel. Wants to show us stuff. Hmmm.
  • I don’t believe anything got accomplished from the packaging BOF but I guess folks got to express their needs which is a good thing.
  • I don’t fit well in a twin size bed.
  • CanJet worked out pretty well. Will use them again.
  • Overall, great to talk with people again face to face and it was great to see some faces I had not seen in a while.
  • Happy to be home back in this fantastic city. Looking forward to Bruce’s presentation next week which I purposely missed at StS.

That all folks ….

community

The OpenSkills SkillsBase system

December 4, 2009

NYC Smalltalk will have its next presentation on May 4th, 2006. Our dear friend and once upon regular British friend now living in Australia will bring us up to date on his long standing SkillBase system.

 

The OpenSkills SkillsBase system runs using an application server that
has the advanced features one would expect but with several unique
properties. Demonstrations will be interleaved throughout the talk.
The following is a small selection of the topics Bruce will include.
o No impedence missmatch when persisting objects
o Huge numbers of instances of the application are possible
o No HTTP session affinity required (i.e. apps can be RESTful)
o A cache of unmodified objects shared by all instances
o One language throughout the system
o Application code is executed in the databases processes …..
o The DBMS *is* the application server
o Premier IDE from which code is injected directly into the app server
... though we do use a staging area for production changes
 
Bruce Badger is an enthusiastic technologist and the Founder and
President of OpenSkills.org, a global non-profit association of
professional individuals. His strong technical leadership skills have
contributed to his success of a wide range of IT projects, over a
period of more than 25 years. He has built and deployed many systems
and libraries over the past 10 years, preferring to develop software
using Smalltalk, a pure Object Oriented language. Bruce is currently
focusing on the evolution of the services market as Free and Open
Source software is increasingly adopted. He has written a number of
Open Source libraries, and is currently engaged with building the
support systems for the OpenSkills association.

 

For more info pls checkout our wiki.

 

community

A BASIC IDE written in Smalltalk ?

December 4, 2009

yes indeed.

Carl Gundel will stop by NYC Smalltalk this upcoming April 6th and present on Liberty BASIC a popular shareware BASIC IDE. He will discuss:

  • Why Smalltalk
  • The issues involved in building IDEs
  • Pollock, the new GUI framework for VisualWorks which Liberty BASIC is utilizing.

Here is one screenshot:

 

and another

This is apparently the MAC look.

It should be fun. Please check in with our wiki for directions.

See you all there.

-Charles

community

Cincom Smalltalk Strategy 2006

December 4, 2009

Both James Robertson and Suzanne Fortman of Cincom Smalltalk attended. James was the presenter so the presentation focused mostly on the VisualWorks product roadmap. However, the fact that Suzanne attended meant that we got to ask some marketing related questions. The presentation slides can be found here. However, to access these you will have to join our yahoo group which takes no time.

In anycase, here is my recap:

The Product

  • Lot of emphasis on integrating VisualWorks with ObjectStudio
    • OS developers get to run on VW a faster VM and much better IDE including StORE source code control.
    • VW developers get to use some interesting ActiveX embedding technology and native widgets on Windows of course.
    • This also allows ObjectStudio clients to leverage their investment in OS but also provides them with a forward path into VisualWorks
    • My impression was that there is no interest in advancing ObjectStudio per se i.e. beyond the integration effort with VisualWorks. That makes sense to me.
  • More platform support including the Windows CE / PocketPC platforms
  • 64 bit support for Linux and Solaris, holding off on 64 bit on Windows
  • Smalltalk Runtime Environment build up deployment mechanism is supposedly a major area of focus. Unfortunately, this is to be spread over the “next” major releases. I think that most of us feel that this should be a focus of the very next release.  A lot would be accomplished if Cincom “component-ized” the rest of their IDE and kernel into parcels which should not be a big job.
  • Pollock is of course on the plate now advancing into incorporating Splash which is Pollock’s version of the UI Painter to be simplistic.
  • Glorp , the object – relational mapping tool which is a next generation TopLink or better said a re-thought out and re-architecture of that problem space will be officially supported by end of year 2006.

The Marketing

I had a chance to speak to James and Suzzane about this. The general gist was  it is “not what your country can do for you, but what you can do for your country” i.e. you are not going to see Cincom actively marketing Smalltalk i.e. at least not in the traditional ways i.e. through a visible magazine ad campaign for example. They just don’t have the budget nor could they ever compete with somebody like IBM and SUN etc. Rather, its the Smalltalk community that should be actively promoting Smalltalk. Well, I agree but easier said than done. One suggestion that I had which I had brought up before to STIC was to somehow facilitate the creation and sustain of more “active” Smalltalk user groups by helping with presentations, sponsoring or finding sponsors for user groups i.e. corporations , academic institutions that would be willing to provide time and meeting space for STUG meetings. I was told that they already do some of that. Certainly, Cincom has always been very supportive of NYC Smalltalk. However, I really don’t see many “active” user groups i.e. groups that meet at least six times a year. It has gotten better in the last past two years but we still need more activity. It is important to have a “local” Smalltalk presence. I would suggest that all Smalltalk user groups advertize their meetings at the very least in comp.lang.smalltalk. This will encourage others to start groups. If you want to start a Smalltalk user’s group don’t be shy. Call Cincom who has expressed their willingness to help and ask them to help you find a meeting venue, they have many contacts. If you happen to live in an area where a Cincom engineer lives I’m sure that said engineer and that Cincom Smalltalk would be very happy to help your group with a commitment to one presentation per year.

 

If any NYC Smalltalk member would like to add any comments or to make any corrections please feel free to add a comment to this blog.

Our next presentation scheduled for the first week in April will feature Liberty BASIC , a BASIC IDE written in Smalltalk. More later.

 

community

James Robertson visits NYC Smalltalk

December 4, 2009

James Robertson , which most readers will recognize as the Cincom Smalltalk product manager and the lead developer for BottomFeeder will grace us with a visit. He will discuss what ‘s new in 7.4 and the VisualWorks roadmap for the year and beyond. He promises to bring a bunch of 7.4 non-commercial CDs.

I will soon update our wiki with the details. The meeting will be held on Wednesday, March 1st. Emails will be sent to our Yahoo group members. Instructions on how to join our group can be found on the wiki.

See you all there.

general

Gemstone/S 64 bit presentation review

December 4, 2009

I had already known what going to a 64 bit architecture meant to Gemstone Smalltalk as far as scalability thresholds. That in itself is amazing. What I had not realized was all of the rest that comes with the 64 bit release. It quite a lot of stuff. I won’t recap here but rather one can find the presentation here at our Yahoo groups web site. If you are not a member, you will have to join but that takes a second. The other interesting note is that it seems that Gemstone would like to be the StORE repository of choice for VisualWorks. VW and Gemstone are a natural fit. StORE on the other hand currently expects to have an RDMS as its backend. Cincom seems to be making moves to fronting that with GLORP which is basically an offshoot of TopLink an O-R mapping framework. Btw, the lead architect for GLORP was also one of the lead architects for TopLink, an interesting framework in its own right. It would not seem that a Gemstone / StORE marriage is likely anytime soon. We’ll have to just wait and see how it plays out. Perhaps a CampSmalltalk project can get this off the ground.

Finally, another interesting tidbit is that, if I recall correctly, now something like 20% of the world’s transportation is running using VisualWorks/Gemstone Smalltalk. Maybe one of our members recalls the exact number quoted. Feel free to correct me.

community

Gemstone/S

December 4, 2009

If I had my way Gemstone/S would be a primary component of any enterprise application I was involved with. There is simply no better way of storing your objects that in an object database. Gemstone goes further since for one it also behaves as an app server. “Stored Procedures” are simply just good ole methods. One essentially gets to persist the object model. There is no painful object relational mapping but distributed objects between clients and Gemstone . Queries basically work the same way as iterating over standard Smalltalk collections work. There is of course, special optimised support for various uses but what it boils down to is that Gemstone is simply a much simpler way than the rdms based alternatives.

I was lucky enough to have spent over 5 years working with Gemstone on large enterprise apps for the utility industry. One of the apps involved using Gemstone with a GIS, which was a lot of fun. Gemstone is not “new” technology. It is just extremely current , relevant, modern technology. It has been used commercially since at least the early 90’s. Many strategic mission critical applications have been built with Gemstone. Florida Power & Light where I started my Smalltalk career uses it in a number of apps including their Emergency response system i.e. that which handles hurricanes. JP Morgan has a large bread and butter financial framework built with Gemstone. Right down the street from me a huge Japanese multinational uses Gemstone to support its transportation business. These are just a few examples.

Its been  a while since Gemstone has presented to NYC Smalltalk. One of the most noteworthy news is that Gemstone/S is now 64  bit which just blows open many of the scalability thresholds for a system that was already very scalable.

Norm Green of Gemstone will present on February 1st, 2006. Please visit our wiki for further details and directions.

general

The transit strike from a New Yorker's perspective

December 4, 2009

Unless you are here , there is no way that people can truly appreciate what is going on and therefore comments sympathetic or “understanding” of this strike will miss their mark and perhaps just plain piss people off. This is not just an inconvenience. This strike is really actually hurting people, they are spending money and time that they don’t have. In many cases lives are actually at risk, their health is at risk, daily life has become a torture. This is being done by people that have it pretty good comparatively speaking to the majority of “working class” people in New York, people who decided to break the law, who took advantage of the leverage that they have because of what they do. Imagine if cops decided to walk off the job. How about firefighters, nurses, teachers. They turned down a package that is better than most of other packages municipal workers have. That’s okay , it is their right to turn offers down. It is not their right to hurt the innocent in order to get their way. This is in fact an act of terrorism. One thousand TWU workers decided that what their organization was doing was wrong and returned to work today. The TWU’s parent organization must think it is wrong because they are not supporting the TWU. I have no doubt that it is wrong and no doubt that the Taylor Law is a necessary protection. Time will tell if it is enough in its current implementation.

How am I being affected? Well, I’m okay personally. I can TightVNC to work, I use Skype for daily meetings. Our bug tracker has a https interface etc. However, my wife works in retail and a strike on Christmas week will probably kill the chances of making her numbers for this year. The real issue is the personal ordeal of getting to and from work. She has it bad but many have it much , much worse.

community

Presentation: Object Oriented Algorithm Design

December 4, 2009

David Siegel will present next on Wednesday, December 7th, 2005.  Here is the abstract and bio:


Abstract:

An introduction to a family of algorithms whose uses include approximate string matching, spelling correction, synchronizing sequences, and analysis of DNA and protein data.
 

Bio:


David Siegel has been working with objects for over twenty years. His interests include language design, algorithms, data structures, persistence and concurrency.


If I may I would like to elaborate a bit further on our colleague. David is one of our long standing regulars at NYC Smalltalk. As a matter of fact, many of David’s twenty years include quite a bit of Smalltalk and quite a bit of OODMS specifically Gemstone. Its probably accurate to say that he is “famous” for his work as one of the main architects on large Gemstone project but I’m not going to mention the name of said project since he does not bring it up.

Elegant OO designs in languages as Smalltalk can often make up for the brute force approaches that is typical to “closer to the metal” languages. Isolating the right algorithm primitives and implementing just those in an External C library can provide for an implementation that meets performance requirements but also one that is extensible. Of course, we believe that using Smalltalk just makes all of the above easier .

BTW, a great follow up presentation would be one that deals with the VisualWorks pluging framework i.e. that framework which allows one to code Smalltalk and then compile it to C and subsequently make it accessible to the virtual machine.

Directions to the meeting can be found on our wiki.

Life

Waiting for Godin

December 4, 2009

Now isn’t that a pretty sight. Welcome the new member to my musical family, the Godin Nylon SA. Yes, its a nylon guitar with a beautiful lush sound of a classical / flamenco guitar. The electronics in the guitar , basically EQ boosts, allow you to setup for more Flamenco tones i.e. boost the highs to the richer medium tones of the classical nylon guitar but all amplified and built to play amplified and without the terrible feedback that one can get from mic-ed guitars or hollowed body guitars. Apparently, according to some of the artists using the Godin SAs one can go directly into a board and record beautifully. That in of itself is a compelling reason to have this guitar in one’s collection i.e. if one is into Spanish guitar / jazz / world fusion. The neck is a beautiful and extremely playable. Essentially, the neck of a steel string guitar. The fretboard is ebony which is the only wood I can really play on, so ebony is a must in my guitars. Folks, that is not all though. Far from it. What makes this guitar a particularly interesting guitar is that it was built from the ground up to be a synth controller. It has a built-in RMC hex pickup which can individually track every string. Every aspect of the guitar was built with trackability in mind. The woods chosen , the placement of the bridge, neck position , everything. Finally extensive testing particulary on Roland Guitar synths, make for a guitar that tracks very well. So not only will I now be able to sound like a sax but more importantly I will be able to drop some lines that my single hand keyboard skills can’t cut. Also instead of using a computer mouse to transcribe my melodies into software such as Finale I’ll be able to use the Godin to input notes directly into the notation software , Finale mostly.

I like to buy my guitars brand new. Mind you not that I buy many. The new addition has to serve a specfic purpose which is why I probably can’t see myself buying an electric guitar anytime soon. My Ibanez Artist has served me well for many years. The Ovation that I bought almost two years ago provides a very specific sound and also is more demanding. The Godin most definitely will serve a unique purpose. The nylon strings will also place a different demand on my hands which is all good. The playing of other types of instruments i.e. via the Godin will certainly require adaptation i.e. I can just feel a ton of new synapses popping up. But I digress, this time I did not buy this guitar brand new. I actually gave Ebay a try. I actually had purchased a guitar amp modeller (PodXT) through eBay but these type of things are different than guitars. Guitars are more like girlfriends which wife’s can’t rationally get jealous off. I get pretty attached to my guitars. I could never sell any of them. Anyhow, I think that I lucked out on this transaction. The guitar is only six months old, still under warranty, and depending on how one looks at it I saved anywhere from $350.00 to $450.00. I also bought it from a guitar player which makes me feel more comfortable i.e. not from some music instrument/ gadget pimp.

I must admit I’m nervous. I hope she has a smooth ride home.

 

cool tech stuff

Move over POD , there's a new kid in town

December 4, 2009

When I drop close to $400.00 on a “mobile” digital media player I expect it to last a long time. Two years just ain’t enough. Well, that is just what happened. Just about two years after my purchase of the iPod the thing just crapped out on me. I really considered not going with the iPod at the time since there was at least one other unit which had great reviews  but iTunes sold me. The fact that I did not have to commit to a monthly fee and that I could purchase individual tunes was key. Today, we find at least another service providing the same namely Walmart which sells their tunes for 88 cents and which seems for at least the music I listen (Jazz/World Fusion Guitar oriented) to have a comparable selection as iTunes. Also I bumped into a press release about Microsoft starting their own pay per song service which is great for the consumer. One thing MS has is pull and that has to mean better selection for the consumer. In anycase, it turns out that I don’t buy a whole lot. In the last two years it seems that I have accumulated about 150 purchased tunes from iTunes. In the same two years I probably have purchased about six CDs. Yet, I listen to music especially this past years for approx 30 hours per week.

Anyhow, now that my iPod is defunct, what am I to do? Drop more money on Apple after they let me down? No freakin way. Now, I get to study the issue and go for quality . Do the Research. The result is that I am going to give iAudio a chance. Specifically, I have purchased the iAudio X5L which has an unbelievable 35 hours of audio play , less if you watch video, supports Linux? What? Yes. Here are its features, all for the same price as the comparable iPod although not really comparable iAudio blows the iPod in features. The audio and general build quality are ranked as excellent. I guess I’m still mad about the demise of my iPod which  must be why I took the time to copy and format the features list below. I have also inserted my comments where appropriate. I want people to know. There are also a number of reviews. One of the most comprehensive can be found here.

Features:

 X5, with its super-compact slim design is not only convenient to carry, but also stylish with a high-quality aluminium external finish on most of the unit.  
 
iAUDIO comes equipped with a 160 x 128 dot, 260,000 color TFT-LCD, which allows you to check the general operation status of the device with one glance. 
 
It's possible to convert various video files to MPEG4 up to 15 FPS using JetAudio. The transcoded video file can be played back on iAUDIO X5. 
 
You can import photos taken from a digital camera to iAUDIO, and view them from iAUDIO using the USB Host feature of iAUDIO X5. (*Certain digital cameras are not supported.)

You can view both text and image files on iAUDIO X5. You can view text files while listening to music. There is apparently support for a scrollable lyrics display feature.
 
With the super huge storage capacity, this 20GB product can save approximately 5,000 songs (MP3 files -- 4 MB each). iAUDIO X5 is capable of recognizing up to 2,000 folders and 10,000 files. The new models come with 30GB.
 
A super power saving circuit is used to provide a long playback time. A continuous playback of up to 14 hours is possible after a full charge. (based on the company's test environment). Up to 35 hours with the X5L model.
 
It supports MP3, OGG, WMA, WAV files, as well as FLAC (a lossless compressed codec). The first player in Korea to support this format, and only the second in the world! 
 
Create your own iAUDIO ! You can create your own logo or download logos from our web site. You can also set your own picture as wallpaper. Cute, I’ll probably have a picture of my dog there.
 
With the built-in, high-fidelity microphone, iAUDIO can record voice at the level of dedicated voice recorders.You can record important meetings or lectures using this feature. My composition/music mentor suggested I record our lessons , this will be a great feature for me.


iAUDIO provides direct encoding by which you can record output from an external audio device at a 1:1 ratio. This means that you can connect the recording terminal and the output terminal of an external audio device with a bi-directional stereo cable for recording. Using this feature, you can receive the direct input from audio devices such as a walkman, MD (mini disk), old LP phonograph, or TV, and record them with iAUDIO. Hmm, maybe I can rescue my investment of tunes in some proprietary format which can only run on specific hardware. Note, I do mean investment I have already paid for these.


Listen to FM radio and record it by pressing a button, instantly. Play them back on iAUDIO, or save to your computer. Also has a preset feature which allows you to save your preferred radio stations as channel numbers. Maybe a good way to scan for new artists although most of the Jazz fusion stuff seems to be lame and watered down soul-less.
 
iAUDIO is automatically recognised as a removable disk when you connect it to your PC via the USB cable. You no longer need a separate USB drive with small storage any more. There is support for Mac and Linux.


 Discover true, rich bass sound.iAUDIO is the only mp3 player that provides exquisite sound with world-renowned U.S. BBE Sound System for the first time in the world. BBE Sound System is known for its true sound reproduction and clarity.It is only available with iAUDIO. No other mp3 player can be compared! BBE,  has been used in the recording industry for quite a while now. Many moons ago I had purchased a unit which I used on vocals and guitar.


Create your own world with high-quality EQ JetEffect.iAUDIO U2 can create up to 1.2 trillion different sounds with a total of six top-of-the-line sound effects (5 Band EQ, BBE, Mach3Bass, MP Enhance, 3D Surround and Pan). 
 

Whether it's Rock or Jazz, Easy Listening or Classical, you will enjoy rich sound from the most delicate to the most powerful.


Superb Cresyn headphones are a standard accessory with iAUDIO U2.Cresyn is one of the leading brand in sound reproduction. With this light, top-quality headset, you wouldn't want to take them off! I’ll probably invest in Senheizzer or Sony high quality ear buds.


You can enjoy your music and read lyrics at the same time! New Lyric Display Feature provides you with lyrics on wide color LCD 
 
iAUDIO X5 support Clock feature to do View Clock, Alarm, FM radio recording and more through this. 
 

Support USB 2.0 interface to transfer your 700Mbytes movie files within few seconds! Max speed is 480Mbps.


Scan through your music folder while listening. X5’s intelligent control is designed for your convenience. Command-oriented navigation window and popup-type menu window make organizing simple! X5 allows you to spend less time in hassle and more time in enjoying your favorite music.


Create and edit playlists directly on the X5. Organize your songs any way you like. Random and other playback modes available.Also user can edit playlist while playing. Add or delete.
 
Supports M3U playlist that mostly used in PC. Can playback by storing music files each different folder into the list
 

Display mode, Auto off and Sleep function are included with the iAUDIO X5.


 You can use the firmware upgrade feature to improve product performance. We support user's requests and suggestions by continuously providing firmware on a non-periodic basis. 
 
Up to 12 minutes of anti-shock. Enjoy your music while running or driving. 
 
The custom made leather case fits perfectly to your X5 to protect and make your X5 look even more attractive. (Optional Accessory)
 
Easy to manage iAUDIO X5 through JetShell, which is upgraded and it's compatible with removable disk. JetShell can do CD ripping, File convert and music playback. 
 
JetShell, the file transfer software included in the iAUDIO package, allows you to convert music to MP3 files easily and rapidly. Now you convert and upload your favorite music from Audio CDs to iAUDIO. 
 
Also included in the package is JetAudio, the most popular integrated multimedia player software in the world. Also, a simple video conversion for X5 is possible using the JetAudio conversion tools without need for any additional program.

Use Mac or Linux? No problem!! iAUDIO X5 is available to be used on Mac or Linux OS. 
 
All functions are easy to controlled by 6 line wide LCD remote controller and it include indigo blue backlight. (Optional Accessory)
 
 
Stylish designed cradle has 3 main functions. File and data transfer and fast recharge thru USB interface, direct encoding thru line-in port, external speaker output thru line-out port. (Optional Accessory).

Development

The skinny on the VW Linux Oracle Client

December 4, 2009

I found that installing Oracle on Linux and CentOS for that matter was not a straightforward process but for that matter there were also some issues in hooking VisualWorks up that made for a bumpy ride. Any senior Smalltalker / developer probably would eventually figure things out but in the hopes of saving others some of the pain I went through I’ll detail my little adventure below.

 

Oracle Installation

 

Once upon a time in a land not so far away I found myself in front of a Linux box with an Oracle 10 g client install CD. My objective was to install Oracle 10g Instant client i.e. that which simply installs the libraries required for the Oracle client call interface and nothing more, nothing less.

Problem: CentOS is not recognised as “supported” Linux distro.

and here is where I forget what I did. Have to write these blog entries closer to time zero. Essentially, the “runInstaller.sh” found at the top of the Oracle Client 10g CD can be run with a flag which means don’t check if the current OS is a valid distro etc. I’ll try to dig up that flag and amend this article but I do recall that in particular the CentOS forums where helpful.

 

Configuring VisualWorks

 

It is extremely important to provide visibility for the Oracle libs from the get go.  This is accomplished by setting two environment vars to the location of the Oracle libs. This was done in the startup script for my VisualWorks image. The entries are: 

ORACLE_HOME=/apps/oracle
export ORACLE_HOME

PATH=$PATH:$ORACLE_HOME/lib
export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib
export LD_LIBRARY_PATH

Note that the Oracle documentation states that env var “ORACLE_HOME” does not need to be setup for the call interface to work. Also the install of Instant client does not create a “lib” directory. I created one because the directory structure the installer creates is just too painful for me. So I simply took the libraries and put them in the lib directory which I created under ORACLE_HOME.

 

Configuring Oracle

 

Oracle call interface will require the following env vars to be set as follows:

NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1
export NLS_LANG
TNS_ADMIN=$ORACLE_HOME/lib
export TNS_ADMIN

NLS_LANG is I assume pretty self explanatory but TNS_ADMIN is not. As a matter of fact, nobody knew in this shop what that did. The reason being is that when one performs any of the “fatter” install options this var is set underneath the covers. TNS_ADMIN specifies the location where the tnsnames.ora file resides. Entries in this file follow the pattern illustrated below:

 

TBOPROD =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = linux)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = tbOPROD)
    )
  )

etc …

So let’s break this down:

  • TBOPROD = this is simply the label assigned to the entry above.
  • Host & Port = host and port where the oracle cluster is running.
  • SERVICE_NAME = the name of the database instance.

Your dba usually sets this file up and usually generated by Oracle configuration tools.

 

Calling Oracle

 

The following workspace code illustrates how to retrieve a connection:

connection := OracleLinuxInterface new.
connection username: ‘Charles’
connection environment: ‘//MyLinuxBox/TBOPROD’.
connection connect: ‘smalltalkrocks’


 Well this is as far as I go with this article. The VisualWorks docs do good job of showing how the database EXDI interface works. Furthermore , you really ought to be using an object relational mapping layer such as GLORP instead of using the EXDI layer which just provides for Direct SQL  However, what is noteworthy is that I found that the pattern provided for the “environment” string is incorrectly documented in the docs. What I found to work is illustrated above and that is why I have included the workspace above.

Hope this is useful.

-Charles

 

 

 

community

American Nuclear Insurers - business case

December 4, 2009

Daniel Antion has been for the last two years an active member of NYC Smalltalk. Dan lives and works out in Conneticut but makes the time to visit NYC for our presentations and stays around for drinks while we all meet at the the hotel bar to discuss everything Smalltalk.

For our next meeting Dan will talk about how Smalltalk has been a business enabler to his organization.

Here is what Dan had to say about the presentation:

“Specifically, I would like to talk about the ways in which Smalltalk has enabled ANI to quickly respond to business and regulatory requirements. The rapid develvopment cycles combined with abundent tools and the ability to reuse and extend our objects as well as the environment has allowed us to tackle some large projectss and a variety of small projects with a very small staff.
 
Part of the presentation focuses on highlighting the language capabilities by addressing small, less critical projects than developers normally talk about. Building support for a language, in my experience, can't be confined to large projects only.”
 
Some facts about Dan:
 
“Daniel Antion is Vice President, Information Services for American Nuclear Insurers. He is responsible for all systems development activities in addition to managing general information technology efforts.  Prior to joining ANI, he worked in systems development for several companies.  He also worked as a consultant for Coopers & Lybrand and KPMG Peat Marwick, specializing in information systems and consulting services to financial institutions.  An enthusiastic fan of Smalltalk, Dan has made presentations at Smalltalk Solutions and OOPSLA.”

Hope to see you all there.

 

-Charles

cool tech stuff

Are you magellin'

December 4, 2009

Ever since I purchased my Garmin StreetPilot I have been built an obsession for all that is GPS. I even contemplated buying a Satellite phone , one can pick one up in eBay for a reasonable amount as well as pre-paid cards. Why? Just for those times when you are hiking in the middle of nowhere upstate New York and your cell phone goes blind. Just what happened last time we went upstate , no emergency it was just a little disconcerting to not be able to get in contact with a human being in case we were mauled by some bear. Anyhow, I did not buy the satellite phone, I’ll do that after we buy the Hummer H2 which goes very well with Satellite phones and GPS systems, which I agreed to only buy after we buy a place in the Poconos which we have not really started saving for yet. Of course in between all that is my next guitar which I will definitely get for my birthday next year. In the meanwhile I purchased another GPS unit from Garmin , the Etrex Vista C, great for hiking. One can download topographical maps as well as maps which include hiking trails, city maps. It also does cool things as tracking your path so that you can backtrack etc and lots more.

 

I guess one of the reasons why GPS stuff is fascinating to me is because I spent  approx 4 years working among other things on a VisualWorks GIS application for a utility company. I would like to somehow add doing something with GPS and VisualWorks to my pet project list but that list keeps getting longer. Bruce Badger wrote a driver to his Magellan GPS unit a while back. Actually demoed it at NYC Smalltalk.  Garmin also has an SDK which can be wrapped. JUN has API for doing topo stuff so it maps well to GIS. Smalltalk MT if recall correctly has a GIS framework available. I used and extended AppliedReasoning’s GeoSynchrony ( I may be hazy on the name) but they are no more last I heard and that and their graphics package sank with the ship.

Best of VWNC

Minimal image stripper

December 4, 2009

For those of you not on the VWNC list here is an interesting post from Terry Raymond. He now has 2.2 mb base image which I believe he is using to support Smalltalk scripting type of functionality. The image only supports file-ins and chunck format at that but he stated the he could probably add support for parcels. Apparently, said support may add another 1 mb. I assume that if on Windows we should still be able to use compression and Reshacker to deliver a relatively small exe which matters to some for example those downloading apps from the web or perhaps folks deploying on PocketPC devices etc. If this can be made to support parcels maybe its the start of  an SRE (Smalltalk Runtime Environment).

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

Hi
 
There is now a stripper for 7.3.1 in
http://www.cincomsmalltalk.com/CincomSmalltalkWiki/DOWNLOAD/CODE/stripper731.zip
 
Watch the word wrap.
 
Read the include readme and follow the instructions to create a
small(2.2mb)
7.3.1 image.
 
The stripped image does not support parcels. 
 
Terry
 
===========================================================
Terry Raymond       Smalltalk Professional Debug Package
Crafted Smalltalk
80 Lazywood Ln.
Tiverton, RI  02878
(401) 624-4517      traymond@craftedsmalltalk.com
<http://www.craftedsmalltalk.com>
===========================================================

Meta Smalltalk

A little black magic, making generic VW constructors

December 4, 2009

I have been playing with a little Smalltalk black magic to solve a philosophical problem. I believe that my acts should be consistent with my beliefs, not always possible not always what I want at the moment but …

So what is the problem?

I happen to be one of those Smalltalkers that creating setters and getters for every instance variable as a default policy just rubs me the wrong way. Now, please I don’t want to start the 20th billionth debate on this, but to me there is state that is just meant to be private really private and putting an accessor in front of one is like building a bathroom without a door.  Not cool.

So then don’t create accessors for everything , you may say?

but how many times do we see instance creation methods i.e. constructors where we do this type of stuff:

MyClass>>>newFor: this and: that
 inst := self new.
 inst this: this; that: that.


 ^inst

In this case we need the instance side setters #this: and #that:

Alternatively we could do something like:

MyClass>>>newFor: this and: that
 inst := self new.
 inst newFor: this and: that.

 ^inst

Here, I don’t have to create the accessors and therefore leave my instVars private but I still have to create an instance side method to field the incoming args used in the construction of the instance. Annoying, but worse it still does provide a mechanism to mutate instance variables that are meant to be private albeit one can’t just mutate one.

Recently one night I was bored and just decided to come up with something no matter if it was ugly or bad, brainstorm something into creation.

I decided on the following requirements:

  • a generic constructor i.e. a message where I could pass an array of instance variable names / value pairs.
  • only allow for every respective class to be the sole constructor of its instances in this manner

The result would then look something like this:

MyClass>>>newFor: this and: that

   " e.g.: <self newFor: 'hello' and: 'there' >"

   self construct: {'this'->this. 'that'->that.}

 

Now, what the heck is that {stuff …}.

That is, if I recall correctly, something that was borrowed from Squeak by Cincom’s Vassili Bykov and its called Brace Constructors. Don’t have time to get into it right now but it basically one can delimit objects with periods i.e. $. So for example one can do the following:

{1. 5+2. true. self calculateSomething}

Anyhow , back at the ranch.

I’m sure that this looks very strange to most Smalltalkers and I’ll admit that I’m not totally sold yet although it really is convenient. So far so good . I may end up liking it.

Note that the following will not work:

MyClass construct: {'this'->this. 'that'->that.}

An exception is raised stating that only “MyClass” can send #construct:.

In the next installment of this article I will cover how that is done and the pros and cons.

 

 

 

 


 

community

Pelrine's presentation

December 4, 2009

Another great meeting. Got insights into some of the work that Joseph was involved in i.e. the enhancement of the Sunit framework. As we all know automated unit testing i.e. the Sunit framework which was then the model for Junits and others came out of the Smalltalk world. Personally, I learned a few things. For one, I had never taken the time to learn what TestResources do. In the past I used the TestCase subclass  class to build resources that could then be made available for the TestCase instances. TestResources are more flexible and can be shared across different test cases. As has proven to be the case so far the informal discussions that arise at the bar are as interesting as the presentations. It also helps to have a local Smalltalk legend in our midsts to get those historical insights on the Xerox Parc days and the various Smalltalk personalities.

 

cool tech stuff

My Plight with Tight, part 2

December 4, 2009

Previous Article in Series

 

Today I decided to look into using a minimal desktop manager and only start my VisualWorks application. I therefore changed my $HOME/.vnc/xstartup to look like:

!/bin/sh

# Uncomment the following two lines for normal desktop:
#unset SESSION_MANAGER
#exec /etc/X11/xinit/xinitrc
 [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
setroot -solid grey
/home/visualworks/scripts/startVWVirgin7_3_1.sh &
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &

twm &

Unfortunately, I found that the window title bars and the desktop manager’s menus were not being setup.

After some struggle I discovered that for some reason starting the vnc desktop i.e.

$ > vncserver :3

after logging in as the user wishing to establish the vnc desktop would cause the problem.  Instead if one logs in as root and then does an “su” to log into the user’s account in question, then running the above command will set things correctly. Mind you, one gets a warning about not being able to “lock root’s xauthority” file but it will eventually come back with a successfully established vnc desktop.

For some reason the xterm does not start however one can spawn a new one via the desktop manager’s menu.

Perhaps a more Linux / VNC savvy reader can explain the whys. Typically, if using for example a gnome desktop there are no issues at all with the user’s desktop owner actually issuing the desktop instantiation command. BTW, I also made sure that the twm startup files (usr/X11R6/lib/X11/twm/system.twmrc by default or just .twmrc if under the user’s home directory) specified window borders (ClientBorderWidth “10” ) and even included one under my home directory but again to no avail.

At least the above workaround gets me back on track to what is most important i.e. development using VisualWorks Smalltalk. Hope this helps any other Smalltalker contemplating getting on the same boat with TightVNC or VNC for that matter.

 

cool tech stuff

My plight with tight

December 4, 2009

Next Article in Series

Lately I have been struggling with configuring TightVNC both at work and at home. TightVNC is a spin on VNC (Virtual Network Computing). Think of remote desktops , terminal services etc. The scope included making things work with VisualWorks and making things work in both Linux and Windows. After some pain I found out that there are three ways of using TightVNC:

  1. Like terminal services
  2. Like a remote desktop ( remote control)
  3. Like this private X space you can setup for yourself

 

Like Terminal Services

If one setups VNC as a xinetd service then the result is that VNC will behave like Windows terminal services. By this I mean that every time one attempts to connect the user is prompted with the Linux desktop’s login screen. These sessions are not “shareable” i.e. their is only one active user which is the user that logged in. Info on how to setup VNC as a “xinetd” service can be found here. On Windows I did not find a way of using TightVNC in a terminal services type of way. Instead, when one connects to a Windows box using TightVNC one is actually on the current Windows desktop i.e. under “remote control” or remote desktop mode.

 

 

Like a Remote Desktop

The default when hooking up to a Linux TightVNC server is not to hook up to what is called “display 0” i.e. the current X console running on the box in question. Therefore this means that one cannot right off use TightVNC to support “customer service” scenarios. In our case that works out fine, our users are on Windows PCs and the servers are either on Windows or Linux. So for us TightVNC’s  primary purpose will be to connect to TightVNC servers running under Linux. However, if one has to connect to the user’s console i.e. if running Linux then that is apparently possible.

 

Like this private X space you can setup for yourself

This is to me that most useful mode. Effectively, one setup a private X console/desktop where one can spawn applications. When one exits the TightVNC viewer said private desktop does not go away. Therefore when one reconnects one still has access to the spawned applications. Since said apps are running in an X desktop one then can deploy headful apps with all the necessary GUI based tools which can include partial to full development environments. I know of three companies deploying their Smalltalk apps in such fashion. I also deploy the NYC Smalltalk wiki under VNC. It works great. The capability to debug production issues is greatly enhanced using this strategy.

Security

Neither TightVNC nor VNC are inherently secured. However, one can use SSH tunneling to secure VNC. More information can be found on www.realvnc.com faq. I also saw a readme file on how to use Stunnel to do the same. Also one can use a minimal desktop such as TWM and only spawn the desired applications. TWM just provides the necessary window and user input support i.e. there are no admin tools available such as those found in a Gnome desktop for example. Additionally, the desktop exposed can be under a specific user with very specific rights etc. The TightVNC session does use password authentication and of course one can add authentication at the app level as well.

Other Issues

I thought I had issues with running VisualWorks 7.3.1 from a Linux based TightVNC server. Happy to report that is not the case. Well, I did have a problem with certain images going into a free fall upon startup i.e. they would not get past the splash screen and would just start gobbing up all memory. To be honest I don’t have all my facts worked out. My current theory, is that base virgin images extracted via the Gnome Archive manager somehow become corrupted in such a way that starting them in a VNC session throws them into a loop. Once I replaced the faulty image with the base virgin image that is provided with the VisualWorks installation things just worked fine. BTW, for those who live in Windows  most of the time , be aware that there are a couple of extra steps to do in Linux to make an image usable. Read the install.pdf.

Conclusion

I am now quite happy. Connecting to the office in New Jersey from my home in Forest Hills, NYC works quite well. A tad slower but even browsing and working with the development tools feels like almost there. Now, I don’t know how it would work out if I had to connect to the Netherlands but for now VNC is doing everything that I expected it to do and more and it works very well with VisualWorks. I don’t know if TightVNC is really any better than RealVNC but don’t really care either way, at least for now.

 

general

Katrina's sneeze

December 4, 2009

The picture to the right is of my brother’s backyard after Katrina paid South Florida a visit. Some in that area of Davie/Ft. Lauderdale went without power for almost two days. My brother still has not had his phone service restored. I was able to call my Dad though. Of course, compared to what Lousiana and Missisippi are going through Katrina was merely an inconvenience here. My family including myself lived through Andrew which I belived up to now was the biggest or at least most costly hurricaine to hit the U.S. Andrew was a category 5, Katrina made landfall at category 4 levels but a much bigger storm and therefore a much bigger mess. The nightmare is yet to begin. I was not able to move back into our home for about 10 months. The insurance relief is not quite enough and not very timely. There is a ton of red tape and life does not just wait for you. Whatever plans, goals one may have had may have to be put on hold for a while. Hurricaines are not huge killers at least not in the States but they can very definitely bump you and your plans off path and getting back on track can for many be very difficult.

These things are really getting out of hand, we are already up to the K’s and we have not yet passed Labor day.

Best of VWNC

Making your filenames work in Linux

December 4, 2009

So I am in the middle of porting the NYC Smalltalk servers to CentOS. One of the issues that I ran into is that in Windows I setup the “start in” directory for the images (VisualWorks images i.e not gifs, etc) that I launch to be the directory where the image resides. In Linux I did not know how to do this. As a matter of fact, some folks that I know did not know either and build their own mechanism for resolving filenames. However, I want  simply for code that worked in Windows to work in Linux without change  or without changing the respective file locations.

Basically I wanted for the following to be true:

Given that ‘blah.txt’ exits in the same directory as where the current image exits then the following should be true:

 

(ObjectMemory imageName asFilename directory) = 'blah.txt' asFilename directory.

 

Well, thanks to one of the member of the VisualWorks Non-Commercial List I was able to to as much. The answer is simple: “change to” the working directory in your shell script to be what you need. This exactly what we do with a Windows shortcut except that in Linux we use scripting. So for example my startup script looks like this:

VISUALWORKS=/apps/visualworks/vw7.3.1

export VISUALWORKS

cd /apps/visualworks/vw7.3.1/image/wiki

/apps/visualworks/vw7.3.1/bin/linux86/visual /apps/visualworks/vw7.3.1/image/wiki/visual.im

 

Hope this is useful, it sure saved me some headaches.

 

 

 

community

[Presentation] SUnits and Test Driven Development

December 4, 2009

Joseph Pelrine will be presenting at NYC Smalltalk on September 14th. Same place same time. A post in comp.lang.smalltalk and the NYC Smalltalk yahoo groups will follow. It will also be announced on our wiki shortly. Anyhow here’s the heads up, it should be an interesting presentation.

Abstract:

 Rarely have 3 classes and a handful of methods changed the face of software development more. SUnit, first described in an article published in the October 1994 Smalltalk Report, was an instrumental part of eXtreme Programming and its offshoot, Test-Driven Development. It has also spawned a legion of clones for other languages.

 The last few years have seen a number of powerful features added to SUnit, features whose use isn't all that easy to understand. In this talk, Joseph Pelrine, current maintainer of the Camp Smalltalk Sunit project, will talk about the past and present history of SUnit, the reasons behind the new features, and will show a number of handy tips and tricks which can be used to turbocharge your testing.

Bio:

 Joseph Pelrine is C*O of MetaProg, a company devoted to increasing the quality of software and its development process, and is one of Europe's leading experts on eXtreme Programming as well as Europe's first certified ScrumMaster Practitioner and Trainer. He has had a successful career as software developer, project manager and consultant, and has spoken about it at such diverse places as IBM, OOPSLA and the Chaos Computer Club. His work in organizational complexity has led him to currently focus his interest on the Cynefin sense-making framework and its application to Agile processes.

 

 

general

CentOS

December 4, 2009

Its late and I’m tired but I had decided a while back that I was going to port my servers to CentOS and tonite’s the night, everything is going to be all right. Well let’s hope. The cd is cranking but it seems sluggish in taking me through the graphical installation wizard. Ok, it is not happy about something. Maybe the graphical installation option was not the right decision.

Ok, I now opted for the “linux text” installation option and this is going through the options much quicker. This is also the option that I have used in the past with Red Hat. It has that ole Clipper / Paradox look to it. In the meanwhile I had made sure to move my wiki to my other Windows box and change the port forwarding tables on my router. However, I forgot that I had been supporting some of my blog posts images with an Apache server. That directory is now gone i.e. since I clobbered it with the CentOS installation.

I wonder how much of a dent CentOS is making into Red Hat’s Enterprise business. We use RHE at work and so for me it does make sense to use CentOS for my personal needs.

For those of you who don’t know CentOS is basically free Red Hat Enterprise. I don’t like the idea of not paying for things. Yes, I’m weird that way so If CentOS works out for me I’ll probably PayPal them about $50.00 per year. I recently purchased an inexpensive clone with an AMD Semprom board overclocking at I believe 3200, with 512 mb ram for less than $300.00. Its pretty amazing to me that one can very inexpensively setup a viable cluster. Reliability can be a matter of redundancy as opposed to dropping a lot of cash on HP blades.

Ok, the installation is finished. Gnome looks much better from what I recall last. I had switched to KDE sometime ago. What is cool about CentOS is that it has an update service such as RHE.

Now, I just have to get VNC to work from my Win XP notebook to the Linux boxes, install VW , Postgres, Gemstone and look into switching from SmallWiki to the WikiWorksForSSP framework. Not tonite. I keep nodding off , I’ll go to bed once I confirm that the packages updated without issue.

 

Experiences

The Guy Upstairs and his DNAs

December 4, 2009

Mike has what seems to me to be a very cool job and yet it can get very morbid. I first met Mike the Spring before 911 when he and his wife moved in upstairs. Mike works for a DNA lab/consulting outfit and it was his firm that ran the mammoth job of trying to identify via DNA the remains of all the poor souls that lost their lives on that horrible day. Well, that took what seemed forever to me but the gory truth is that there were a lot of samples to identify.  Then the Tsunami hit which dwarfed the death toll of 911 and yes Mike was sent to Thailand to help with that.  A different problem though the DNA was really spread out and most of it at sea.

I bumped into Mike yesterday as I was taking off my shoes before going into the house after throwing the ball at the park with my Rhodesian Ridgeback. I said to him , “ I noticed you all took a little vacation last week.” “Oh no” he replied , “I was sent to London to work on the bombings” . “What is this with you following death” , he smiled “death follows me”.

And yet I would love to build an app to help with this. Ever since I read about Watson and Crick’s work I have been fascinated with anything related to DNA.

As far as Mike I wonder if he has nightmares or is he now just jaded?

Opentalk

Opentalking the Database - Ch. 1: The Need

December 4, 2009

Version: 1.0

 

The Requirements

  1. Eliminate the need to install database specific components on end user PCs.
  2. Do not change application code however refactor where needed. The goal is to make changes to the access of the database transparent to the application. 

The Solution

Employ Opentalk ST-ST to proxy database connections/sessions.

Background

The application which does what it does well uses the “direct SQL” methodology for interacting with currently an Oracle database. Note that this application was built well before I had arrived.  If things were up to me we would be using Gemstone but that is another story. Hopefully, Glorp will take the edge off but first we want to make it easier to deploy and manage the application.

So simplistically the idea goes like this:

Fig. 1

 

 

 

 

 

The Solution entails:

  1. Configure communications
  2. Try to minimize excessive chatter between proxy and real db session i.e. employ a “caching proxy” I’ll explain what I mean later.
  3. Understand what objects are passed between the proxy and its target remote object in order to configure pass modes and decide what Classes may need to live in both spaces.
  4. Understand what to do about exceptions and db errors.
  5. Understand what to do about communications errors.
  6. Test in a VPN
  7. Try to stress test.
  8. among other things …

More to come but I am out of time for this chapter.

 

 

 

 

 

music

[music] The Grande Passion

December 4, 2009

I finally caught up with Al Di Meola’s The Grande Passion. Ever since I bought my Ovation guitar I have been more interested in the albums DiMeola made with his acoustic group World Sinfonia. For one I can relate to them better since I am exclusively playing on the Ovation and have not touched my electric for over almost a year. Also, this album is heavily infused with Tango influences and in particular the compositions and playing of Astor Piazzolla, a legend of Tango at an equal footing with greats such as Coltrane in the impact that he had on his contemporaries. As a matter of fact, along with this album I also bought Piazzolla’s Tango Zero Hour. I have not had a chance to listen to it yet but what is an interesting story is that I met one of the producers for that album while walking my dog around my neighbourhood. Their label specialises on Latin fusions. Check out their site: www.americanclave.com. Amazon has a sample of the music on the Grande Passion as well as commentary. Here is a direct link to a free download for Double Concerto.

DiMeola’s playing is great as usual but in many ways more passionate, perhaps due to Tango which is a very passionate and rhythmic form.

Dining

Service over Quality

December 4, 2009

Today I was reminded of how important service is and that quality is not all. I usually value quality over service. By that I mean is that I am willing to be inconvenienced if I get good value out of a particular product. In the case of food, how it taste, smells and is presented will any day make up for a rude waiter and otherwise bad service. However, when the food is delivered exceedingly late that can just destroy the entire experience and its very difficult for quality to make up. Here is my review of a restaurant we dined at this evening in the Murray Hill section of Manhattan:

The humus was one of the tastiest I have ever had . the herbs and feta cheese were very fresh , unfortunately even these were delivered to our table unbearably late. Eventually, the food would once on our table turn out to be good and the portions were ample, the price quite reasonable but the wait had spoiled the dining experience.

The name of the restaurant is: Jasmine Persian Cuisine at 11 E 30th Street. Again, the food was good and the prices were good as well. Perhaps. an off-night.

 

 

Best of VWNC

Russell's Antinomy

December 4, 2009

From the VisualWorks Non-Commercial List

Given the following code:

set1 := Set with: 2 with: 3 with: 4.

set2 := Set with: 4 with: 3 with: 2.

Should:

set1 = set2 ? 

BTW, the above in Smalltalk reads set1 is equal to set2.

The answer is that in VisualWorks it does not but in Squeak it does. I favor the Squeak implementation. In anycase, we also got a taste of Set theory. Check out my favorite line out of the thread:

“You are right on target.  The so-called "axiom of regularity" in ZFC axiomatic set theory forbids self inclusion.  This was needed to avoid Russell's antinomy and a number of related paradoxes.  Depending on the formulation of the set theory (there are so many!), you either get axioms of this form or the theory is constructive (the "type theory" solution of Russell and Whitehead), again forbidding self inclusion. I'm not aware of any modern set theories where the term "set" is used to denote a mathematical object which can contain itself.
 
I ain’t no mathemetition though...”

Gotta love that.

BTW, click on Bertrand above if interested in reading more about his “paradox”.

 

 

 

 

general

Florida Power and Light and its Hurricaines

December 4, 2009

Last year I blogged on FPL’s emergency response system called Trouble Call Management System (TCMS). TCMS is a Smalltalk system which uses Gemstone/S a Smalltalk based app server/OODMS . What is becoming very noteworthy is that these storms seem to be getting stronger and more frequent and now apparently they are starting much sooner in the season. The good news is that Gemstone/S just announced 64 bit support. This means that the highwater mark (total number of possible objects) has gone through the roof to an insane number. The same is happenning for the shared page cache threshold which implies that one can basically ram the entire database in memory. Currently, I believe that HP and Solaris are supported. TCMS last I checked was running on AIX. Unfortunately, I cannot find the press release with the details.

music

What is originality?

December 4, 2009

Some dude out in the UK published an interview with my composition and Jazz teacher Jon Raney. Here is the link to the interview. I'm not sure who this guy is and what he does but Jon's answers provide an interesting perspective into what originality is.

Jon is the son of a legendary American Jazz guitarist Jimmy Raney and is a great Jazz pianist and composer. Some of his music can be listened to here.

Dining

Lemon Grass Grill

December 4, 2009

If ever in New York City, per chance at a Smalltalk conference or not, and if you like Thai food or always wanted to try it then you must checkout the Lemon Grass Grill chain of restaurants. Like my taste in music my taste in foods leans toward a fusion of styles. I have heard it commented that the food at the Lemon Grass Grill is not authentic but my wife and I can vouch that it is delicious. I can especially vouch for the location at 138 East 34th Street, which we visit frequently. The restaurant is decorated in all wood paneling and is lit by orangy light fixtures. The long kitchen line is in plain sight. A typical dinner for us consists of:

  1. Appetizer - Basil Lime Leaves Fish Cake
  2. Appetizer - Steamed or Crispy Fried Vegetable Dumpling
  3. Entree - Chicken String Beans Basil
  4. Entree - Chicken Thai Fresh Green Chili
  5. Dessert - Green Tea Ice Cream
  6. Dessert - Coconut Pudding
I must also note that the Green Tea Ice Cream is of the darker more bitter nature almost dark chocolate like but not. The other Green Tea Ice Cream which one most often sees in Japanese restaurants is very bland almost vanilla like and to our taste lame. The bill for the above without tax and gratuities comes out to approximately $35.00 USD and the portions are large enough to take home for seconds. A real treat and a great deal. Enjoy.

Life

Weber Genesis Platinum C

December 4, 2009

Many eons ago I remember having a philosophical discussion on IT strategy with an upper management type. He said to me: "good developers do not use their tools as excuses". I quickly replied: "well, I can open a can of tuna with a screwdriver but a can opener would surely be a lot less messier". The guy was basically telling me to shut up , stop whining and get back to work and use what I tell you to use. My point was that he was dumb, shortsighted and that tools do matter.

Some tools are just inherently better at something than other tools. Some tools just fit a particular individual better. An example of this is found in the art of grilling. I recently purchased a Weber Genesis Platinum C grill. What a joy. Starting the grill is just a matter of a couple clicks on a startup button, once on the heat is perfectly evenly distributed and there is nothing I have do to maintain heat consistency, the shutdown and maintenance is just as easy. This Weber gas grill allows me to keep focused on my problem i.e. grilling. My old charcoal / wood grill was the total opposite, at least half of the time was spent on keeping the grill happy and the maintenance what a chore.

So what are the lessons gleaned from this experience with my new gas grill?

  • Tools are important
  • The Weber Genesis Platinum C is a great gas grill.
  • Smalltalk is a great can opener.

OpentalkMatrix

Opentalk's dirty secret

December 4, 2009

Opentalk is great, Its a well factored and thus extensible framework. It allows local and remote objects to interact transparently. However, it has a couple major flaws at least in the context of p2p. In my previous post I mentioned that I had coded my Kazaa like prototype about 3 years ago. Well, I did not do much after that and the reason was that I encountered a problem that bummed me out. I discovered that I was not able to get past NATs. To be more accurate the problem is with Opentalk ST-ST i.e. the Smalltalk to Smalltalk distributed messaging mechanism. I plan to document this in detail later but for now the issue is that an OT message is tagged with the ip address of the OT broker sending the message and that is the ip address that is used to respond to the message. So if your broker is behind a NAT on 192.168,20,3 when the guy on the other end receives the message it will try to use that ip , well get the picture, not pretty. We really need the notion of our "public" ip or better still the notion of an access point needs to be made more robust. So what's the impact of this on OpentalkMatrix? If you are directly connected to the Internet and so are your peers then there is no problem. So there is a problem since many will be behind home routers and therefore NATs. This however does not mean that Opentalk ST-ST is useless. It means that one can use Opentalk ST-ST for most corporate type of deployments where the nodes are within a corporate network or VPN but again currently hostile to p2p deployments.

Anyhow, this has to be fixed. The Opentalk team had been stuck doing unimportant stuff like Web Services, a ton of crypto, SNMP to name a few but enough is enough. The fix should not be that hard and its something that is best that they do. So if you think that this is important i.e. OT surviving past a NAT then please let the product manager for Cincom Smalltalk know. Hint his first name is James and he is a very active blogger :)

community

Tonight's meeting - OpenSkills

December 4, 2009

Bruce is one of my favorite presenters. He has that witty British thing going and no matter how boring the presentation may be he is always fun to watch. Not that he was boring this time, the presentation was brilliant we had a lovely time.

Bruce's OpenSkills related presentations are interesting because of the various open source technologies used which are combined with Smalltalk and often leveraged from Smalltalk. On this occassion , the OpenPGP stuff and it use to support a trust network was very interesting. Also of interest to me was his use of Glorp since we intend to use it to provide a pluggable rdms backend to our product.

After the meeting we went to the bar which is now apparently becoming part of our custom. I'm glad we started to do this since it allows us to interact in a way one can't during a presentation. We had two guests i.e. newcomers , Matt and Jerome. Good meeting you all, hope to see you next time. Any questions you know where to ask. BTW, next time would be September since we take August off. The fall season should be a good one. I potentially have more presentations than available time slots , a good thing since that means that we should have material available for first Q 2006.

music

Garage Band

December 4, 2009

This is a great time to be an aspiring musician. Check out Garage Band. They keep making their services better and better. I have been a member ever since my composition teacher joined. If you like Jazz piano search for Jon Raney , son of the legendary Jazz guitarist Jimmy Raney. Unfortunately, you won't find me there yet :)

Development

Collaborating with StORE

December 4, 2009

It had been probably about 1.5 years since I last tried to use Postgres on Windows as a backend for StORE, the source code versioning environment for VisualWorks. It was not happening at all. At that time I decided to use the Interbase/Firebird backend because it was a multi-user solution which was stable and that was a step up from what I had been using at the time namely Access. Why is a multi-user backend necessary? Well, because it one wants to collaborate with somebody there is no to setup some centralized repository somewhere you can do it peer to peer which sure beats passing parcels around. However the Interbase/Firebird solution was not quite perfect. So now I have decided to move on to using Postgres on Windows as my StORE backend the reasons being:

  • Good security which means that participants do not have to be confined to the same local network
  • Very easy install on Windows
  • the admin tools are good, making it easy to setup users and multiple databases
  • Postgres works with Glorp and thereofore with the Glorp Store replicator
  • I want to start working with something that uses Glorp since we plan to use it in the near future
  • Finally, this is the setup that many of the Cincom Smalltalkers seem to be using i.e. from my talks at SS 2005

OpentalkMatrix

Murphy and the Matrix

December 4, 2009

Everything that possibly could go wrong went wrong. Did I drop the ball, did I slack off? Let's start at the very beginning. About three years ago or so I went to OOPSLA , I'm confused as to whether it was in Tampa or Minneapolis. All I remember, is that STIC had a fairly decent size booth with a gigantic overhead sign and right across from the Microsoft booth. There I setup a camp in one corner and demoed something I called OpentalkMatrix. OpentalkMatrix is something akin to LimeWire or Kazaa but yet different. Like LimeWire and Kazaa it allows users to discover components on a p2p network but it has extended support for VisualWorks code parcels. Anyhow, let's leave the details for later just suffice to say that the demo worked. I would later go on to demo OpentalkMatrix at NYC Smalltalk and yet again it worked. At home I have a 4 node network including a node on a wireless leg and it works here fine. Prior to the conference , I even tried this out on the network at the office and that worked too. Finally, a couple days before my slot at Smalltalk Solutions I met with one of the principal Cincom Smalltalk engineers in charge of Opentalk development and our dry run went well as well. Of course, the logistics at the demo were slightly different. I did not count with the original presenter running over into my time slot :) I did not count on my notebook not being able to connect properly to the projector i.e. something that I have done many, many times at NYC Smalltalk, I did not count on a second wireless network in the area. Did not count on having to use TightVNC in quite the way I did. I knew that a live demo was a daring undertaking but I thought I had taken enough spins around the block. Overall, I am pissed and mostly because I do now think that I did slack off. I did not deliver. I did not take the time to control my environment. Anyhow, the only way I will be able to redeem myself is to demo OpentalkMatrix at a global scale i.e. let the Internet be my stage but before I can do that for one we will have to fix one minor issue with Opentalk. More on that later :) .

Life

4th of July in NYC

December 4, 2009

Every year we make an excuse, oh the rowdy crowds and this and that, but for some reason this year we dragged ourselves out and got on the subway and in 30 minutes got to our spot. The spot was in Long Island City right across the river from 34th street. New York is such a great city and we just don't take enough advantage of it . The fireworks were spectacular, beautiful. We will be making this a tradition. One of the coolest things about watching the fireworks in NYC is that within my immediate radar there were couples, and families of just about every possible race, ethnic background, all enjoying for 30 minutes the tremendous spectacle Macy's puts out for the 4th. Supposedly, 1000 shells per second were launched. These fireworks were the second largest in NYC history second to the millenium celebrations. Here are some shots, I did not take them , I figured somebody would.

community

OpenSkills Membership Management System

December 4, 2009

Bruce Badger , a long time friend of NYC Smalltalk , will again be gracing us this year with a presentation on another support system for his OpenSkills organization. Last year the presentation involved Gemstone , a Smalltalk based oodms/app server as well as the use of Squid, and a Smalltalk based wiki.. This year the presentation involves using GLORP ( the reincarnation of TopLink) and the generation and management of PGP keys among other things. Bruce always presents the week after Smalltalk Solutions since that is when he makes his pilgrimage from the land down under up to the States. So invariably, we will also be discussing Smalltalk Solutions which I hope will not include my mishap but more on that later.

If you are in the NYC area please join us. More information can be found at the NYC Smalltalk wiki.

community

Etoys now Scratch

December 4, 2009

First came E-Toys an environment built on Squeak , a Smalltalk dialect developed by the original inventor of Smalltalk - Alan Kay. Now, we have Scratch a learning environment that unlike E-Toys targets an older audience, the 10 - 16 crowd. Scratch is being built on Squeak that is clear. Not sure , if it is being built on E-Toys. Nonetheless, this is exciting from a Smalltalk promoter's perspective since there will now be two learning environments that at least acquaint young humans from kindergarten through high school to Smalltalk.

I recently learned about this since I had invited one of the principals of the E-Toys project to present to us (NYC Smalltalk) in the April/May timeframe. Unfortunately, some last minute schedule conflicts forced us to postpone the meeting. We are still hopeful for sometime in the Fall. This would not have been the first presentation on E-Toys. Last year we had a teacher at a private school here in NYC share with us his work using E-Toys actively in the classroom. I also met a public school teacher doing the same. Columbia Teacher's College is actively involved with E-Toys and there has been an active pilot if not full-blown program in the California School System.

Hopefully, I'll manage to convince one of the principal developers for Scratch to present.

Development

VisualWorks and Traits

December 4, 2009

I don't have much spare time to spend on non-compensated Smalltalk work. Sure, I enjoy coding with Smalltalk but nowadays I have returned to my original passion which is playing the guitar. My quota is a minimum 10.5 hours of guitar per week although it is difficult to consistently achieve that. Then there is walking the dog for at least an hour per day if not more. I am also married , need I say more. So I choose my pet Smalltalk projects very carefully. I have a few active ideas. However, when I found at that Terry Raymond had built a core Traits engine that was just too much to resist. Why?

  • I believe Traits has the potential to be quite useful.
  • I knew Terry would have something substantial that I could sink my teeth into.
  • I did not have a presenter scheduled for the NYCST March meeting. That usually means that I have to try to put something together quick.
  • I have been feeling guilty about not contributing to the community with product and this seemed like a great chance.
So sometime in February I decided that I was going to do my best to add StORE and RefactoringBrowser integration to VW Traits and to present the work at the March meeting for NYC Smalltalk. It was close but that is what I did.

The presentation I thought went well. Terry Raymond which lives about 4 hours away up in New England decided to come and visit us which was a definite plus. The discussions at the meeting and then later at the bar went great. I think we gathered some nice ideas on how to extend Traits and make it even more powerful.

I won't bore you all with any further detail. Those so inclined can start by checking out the Traits section on our wiki.

Finally, I have published the work to the Cincom Public Repository. Load bundle: 'VW Traits Development 3'.

I would be very much interested in feedback as I am sure so would Terry Raymond.

community

VisualWorks 7.3 and Product Roadmap

December 4, 2009

I am slightly behind on my blogging , better late than never. Last Wednesday James Robertson, product manager for Cincom Smalltalk and which is now co-in charged of business development, stopped by to give NYC Smalltalk a presentation on 7.3 and their immediate plans.

I think that by now it is clear that Cincom is committed to Smalltalk. Ever since Cincom took over , their Smalltalk division has been aggressively improving the VisualWorks product line. This next year does not let up the pace. The current product roadmap for VW 7.3 can be found here.

Some of the more interesting questions that came up during the presentation dealt with whether Cincom anytime soon planned to support / become involved with Croquet and Traits. The answer was no and maybe.

There is no current plan for Cincom itself to port over Croquet. For those that don't know what Croquet is it is an amazing collaboration framework which has an even more amazing 3D virtual world interface to it. Croquet is currently written in Squeak a dialect of Smalltalk. More info can be found on the NYC Smalltalk wiki for which I provide a link below.

As far as Traits , there has been some interest expressed by at least one of the engineers at Cincom. The maybe answer is that were something to be built by the community Cincom Smalltalk would evaluate it and contemplate its integration or at least supported distribution.

Currently, there is an initial port of Traits out in the Cincom public repository which was implemented by Terry Raymond. The port basically provides "core" trait services i.e. synchronization between client and traits and installation albeit manually. I have extended the initial port so that it integrates with StORE and is in general more transparent in use but more about that later.

One further very noteworthy news is that Cincom Smalltalk plans to support a migration path for VisualAge Smalltalk customers who wish to stay with Smalltalk and keep up with the new developments in Smalltalk. Talks are underway with some potential partners.

Next month we will have a presentation on Traits. More info on Traits, a new and very interesting mechanism for code re-use, can be found along with info on Croquet on our wiki.

community

Open source Smalltalk presentations

December 4, 2009

A couple of years ago I had made a suggestion that a bof be put together at Smalltalk Solutions on Smalltalk user groups, why they are important and what can be done to help spawn more of them. One of my recommendations was that user groups share presentations. The more presentations that are around , the more reason to meet, and the more Smalltalkers meet the better. Unfortunately, I was not able to attend the conference that year. I know that the bof was held but so far have not seen any activity on that front.

Anyhow, recently I was given the opportunity to "put up or shut up". A new stug out in the L.A. area recently put a post out on c.l.s announcing its birth. I emailed them with some suggestions and hopefully words of encouragement. Daniel, their leader, mentioned that some presentation material would be nice which reminded me of the idea that I had not acted upon.

So here:

The NYC Smalltalk User's Group will make its presentations available to other Smalltalk User groups. We encourage other stugs to take advantage of this and we hope that other stugs will reciprocate and follow suit. We hope that this will motivate current stugs to meet more often but more importantly encourage Smalltalkers to start stugs in their local areas.

So currently, I am in the process of digging up some of our old content, dusting it off and hopefully sending Daniel something soon. I plan to put a link on our wiki sometime in the near future.

Now, what do I mean by open source Smalltalk presentations?

The presentations will be under something akin to GPL i.e. more specifically:

  • Presentations are to be used to promote Smalltalk in the context of a Smalltalk user's group meeting.
  • The original authors needs to be credited on the introduction of the presentation.
  • Any amendments /extensions need to be documented i.e. the amendment's author's name and date.
  • The modified presentation must be made available to the original author and any other Smalltalk user's group which expresses interest.
  • There are no warranties whatsoever made with regards to accuracy of the content.
  • Any actions taken on the part of a reader based on the content provided is solely the responsibility of the reader.
  • Any disparaging comments as to the content or authors of the content cannot be included in any of the presentation's versions.
Well, so much for my legalese. If this encourages the launch of just one more stug, I'll be happy enough.

Development

Text Messaging with VisualWorks

December 4, 2009

One very easy way of sending text messages from a VisualWorks application is to simply send email to a provider that forwards the email to your cell phone. See my previous blog for an example of SMTP in VW.

One such provider is Verizon Wireless. Email sent to yourPhoneNumber@vtext.com will get forwarded. Messages are truncated to 250 characters and attachments are of course ignored. I figured that most cell phone providers would have similar service but from a quick look it seems that most have web interfaces but not many an email interface. However, there are companies out there that offer the service. One such company is www.ipipi.com. What is interesting about them is that email will be forwarded to your cell phone depending on rules that are setup.

We plan to shortly be able to alert our users of production issues via text messaging by leveraging SMTP in VisualWorks.

Development

Staying ahead of trouble

December 4, 2009

The other day I decided to play with the idea of facilitating the notification of issues back to us. Our users are off-site.. So I decided to hook up to the SMTP capabilities of VW. As a proof of concept, I decided to modify the Notifier so that instead of providing a "copy stack" button it provides a "Send Stack" button. This is pretty easy to do by simply overriding:

DebuggerService>>> openDebugger: aDebugger contents: aString1 label: aString2 proceed: mayProceed displayAt: aPoint

it will be quite apparent where to make the mods.

I then use MailMessage to send an email to my work account as well as to my cell phone. It is a simple as this:

| message smtpClient |
message := MailMessage newTextPlain.
message from: 'santa@northpole.net';
to: 'timmy@yourmail.net';
subject: 'Start making your list now';
text: 'What would you like for Christmas?'.
smtpClient := SimpleSMTPClient host: 'smtp.northpole.net'.
smtpClient sendMessage: message.

The above is straight from the VisualWork's documentation. Messages can also carry attachments. For more info check out the NetClientDevGuide.pdf which comes with the VisualWorks Cincom distribution.

The overriding need is not for bugs per se but rather for production events such as abnormal termination of batch jobs etc. My plan is to make the application much more aware and responsive of runtime issues. Partly by perhaps incorporating VW's SNMP framework but also by simply more carefully tracking runtime events in the daily business cycle.

SMTP seems like a reasonable viable possibility. Mail messages can of course be sent programatically. The question is whether the users will feel this to be a security risk. We should be able to encrypt mail. Well, we shall see how this turns out.

community

Microlingua

December 4, 2009

Tomorrow Maurice Rabb will present Microlingua at NYC Smalltalk. Microlingua is a Smalltalk dialect being designed for "resource constrained" environments i.e. its about embedding Smalltalk. I have been interested in embedded Smalltalk for quite a while. Smalltalk has quite a history in the embedded space. As most of us Smalltalkers know Tektronics had built an oscilloscope that ran Smalltalk. I don't recall the exact time period but it must have been at somewhere in the early 90's i.e. it was one of the first stories I heard when I started coding in Smalltalk which was back in 94. OTI , before they went over to the dark side, had embedded Smalltalk. I recently heard that HP had done similar work, The "network" car that IBM showcased at one of the earlier Java Ones was actually running Smalltalk to do the low level interactions with the vehicle while Java was only being used for the UIs. Some of the members of the NYC Smalltalk, myself included, met with the then president of the American division of OTI and over some Jack and cokes , were told about prototypes that Porshe was working on and how the developers would actually debug while driving the car. We were provided with some licenses and I played with the environment for a bit including playing with QNX a real time operating system. Another embedded Smalltalk that we got exposed to was PocketSmalltalk, an environment designed to run on a Palm pda. One of our members at the time, Steve Harris, was very much into PocketSmalltalk and presented a few times on the topic.

So what is new in the embedded Smalltalk space? Let's see:

  • OOVM -- This is/was a Smalltalk embedded environment which was recently demonstrated at Smalltalk Solutions earlier this year. However, they have been acquired by a Java company so I am not sure what is available and in what form. Apparently, there is currently nothing that can be downloaded.
  • Cincom VisualWorks PocketPC vms are now available.
  • WISP , not sure what the status of that is. Maybe somebody can comment on this.
  • PocketSmalltalk -- There is still a site but it seems inactive.
  • SmalltalkMT -- not really for embedded applications but SmalltalkMT can generate very small executables and is used in PC gaming.
I'll make time to make an entry in the NYC Smalltalk wiki for this topic. BTW, anybody interested in coming to the meeting can find details on our wiki.

community

Web tool kit presentation - review

December 4, 2009

We had a great start for our season. The turnout was quite good as well. Our resident Smalltalk legend, she was on the original team at XeroxParc with Alan Kay, made it even though she now has a gig with a large insurance company out in Jersey. Two of the guys from JP's Kapital project made it as well. One of our members came all the way from Ithaca, just to name a few. Tom gave a great presentation and even included examples of integrating CSS with the Web Tool Kit framework. Having done some JSP work myself , it is quite clear that there are some real advantages in using the WTK, especially in debugging. It is as easy as dropping a "self halt" in the JSP.

After the presentation we all went to the New Yorker Hotel around the corner on 34th and 8th and had a few beers.

The next presentation is on Microlingua on Nov. 16th.

community

Another Season

December 4, 2009

I first became involved with the NYC Smalltalk user's group back in 1996 when I left Florida Power & Light to embark on a consulting gig at the then called Brooklyn Union Gas. Back then Jeff Britton and Ted McKnight were the co-chairs and I believe that before them there were some other leads. I took over, if I recall correctly, back in 2000. Ever since 1996 we have been meeting on a pretty consistent basis. Somehow, we just manage to get enough participation from the community as well as material that we ourselves put together. I do wish that more of our local Smalltalkers would make it a point to present at least once a year. I think that people make too much of a big deal of things. I am told that in Argentina and Europe Smalltalkers just meet in cafe's and someone just takes the lead on a topic. Tonight, Tom Sattler will be presenting on VisualWorks Web Tool Kit , a JSP spec compliant implementation among other things. This is Tom's second year. I really appreciate his participation at this level. Tom is also one of our regulars. In January we have another local presenting, my co-worker Rob Fossella. Rob has been "coerced" into that presentation but my sincere hope is that next year it won't take too much arm twisting :) Next month we have Maurice Rabb visiting us. Maurice has developed a new dialect of Smalltalk called Microlingua which targets small devices. Maurice is from Chicago but I hear that he likes NYC quite a lot , so who knows maybe he will become a local.

Meta Smalltalk

Reflex

December 4, 2009

One of my favorite techy-geeky subjects is about meta type stuff i.e. issues dealing with reflection, AOP, etc.

Reflex was developed as part of PhD thesis. To quote its creator: "Reflex is an efficient and flexible reflective system for Java that I developed during my PhD thesis (which is about to end). It is evolving right now to what we call an "AOP kernel", supporting multiple approaches to AOP to coexist and collaborate. One of the limitations of the actual implementation of Reflex is that it is in standard Java (via load-time bytecode transformation), and therefore does not support really dynamic stuff (a class definition in Java cannot be changed after runtime, the instantiation link of an object neither, etc.). These restrictions in the Java world do not exist in Smalltalk, where moreover, the type system is pretty "cool", to say the least. Therefore an interesting perspective ... is to work on a version of Reflex for Smalltalk, in which the complete dynamicity of the environment would be used."

I'm going to try to follow this one closely. BTW, there are already other related implementations in Smalltalk. Robert Hirshfeld has been working on AspectS (AOP) which is both available in VisualWorks and Squeak.

I think that I will add a page to the NYC Smalltalk Wiki which I will dedicate to these issues.

Experiences

Here we go again

December 4, 2009

These storms are getting to be a real drag. It is really annoying to have to call my family in Florida just to ask if they are swimming in their living rooms. This all reminds that I forgot to mention one very important app used by FPL in their dealings with these storms. FGMS (Facilities Graphics Management System) is/was (have not checked) a Smalltalk application that combined Smalltalk, Gemstone (Smalltalk OODMS) and I believe ArcInfo to provide FPL with up to date knowledge of the state of their electric grid. This has to be one of the pioneer Smalltalk apps i.e. at least used by a large corporation. The app was built somewhere around 1988. That sounds crazy. Smalltalk was certainly around. I recall that it was a collaboration between FPL and the University of Florida. Somehow, Gemstone got in the mix. BTW, guess when FPL rolls out their meat and potatoes apps into production? It is not in the Fall :). Don't fix it if it ain't broke comes to mind.

Experiences

Smalltalk is my day job

December 4, 2009

Yesterday, I commemorated the half way point in my life or possibly the 2/3 rd point , my family runs that spectrum. I feel like I am rushing to a finish line in a race that I should not want to finish. Life is just flying by. It was only yesterday that I was looking for a day job. Yesterday, I brought home my fourth guitar. A guitar which I have been waiting an agonizing 4 months for. The guitar is an Ovation 1769 - AD5 the Al Di Meola signature model. It's a beautfiful thing, I got the blond natural finish. Yes, I wanted to be a musician, probably not terribly unique. So I looked and looked for that day job that would approximate the feedback that I got from guitar playing and especially from improvising. I almost gave up when I was shown mercy and was recruited from college by Florida Power & Light to do Smalltalk development. Now, I am not going claim that I can get that "immediacy" that I get from playing the guitar from coding in Smalltalk but it is as close as it gets and by far the closest any development tool , language gets, that I have encountered. The rapidity in Smalltalk of understanding one's environment, of causing change in the environment and thus reacting to change, of conceiving and subsequently mapping those ideas to implementation is so immediate that it does remind me of playing an instrument. The power to create and change are really at one's fingertips. Other environments that I have used always have hurdles, noise, contraptions that get in the way, they tire me. Yes, I am talking about the coding in the debugger experience, the lack of typing and the implications of that, the simplicity of the language, its readability, the "liveliness" of the environment and most definitely powerful IDE's such as VisualWorks that out produce any other IDE I have used and that includes Eclipse, JBuilder etc. I know this has been discussed ad nauseum (sp?) but getting my guitar reminded me that I did find my day job after all. Now, I have to do something about getting that night gig :). The other nice thing about Smalltalk is that by the end of the day you are not so exhausted that one can't put another 1.5 hours into practice.

cool tech stuff

Vmware on my Alienware

December 4, 2009

They say that boys like toys and I am no exception. There are two toys that I still find myself talking and smiling about. Those are my Alienware Area 51 notebook and VmWare a virtual computing environment.

I was first turned on to Alienware notebooks by Dave Anderson of Smalltalk MT. Dave in into "desktop replacements" because one he needs to be mobile but also because he helps his clients develop simulation systems (un-mentionable government agencies) as well as computer games. I actually witnessed one of those games in action and it was very impressive. This was a full-blown motion picture with story line type of game. The graphics were just amazing. I myself used Smalltalk MT to integrate DirectMusic into a VisualWork's music ed application I was developing for a client. VisualWorks can of course wrap C/C++ libraries but often it is convenient to create a C library that provides a facade into a large C subsystem such as DirectX. Smalltalk MT is great for this. I then used VisualWork's DLLCC (C wrapping framework) and wrapped the Smalltalk MT created dll. Smalltalk MT essentially allows one to code in Smalltalk and generate true native dlls, exes, Com and ActiveX components. I often say that Smaltalk MT is the best C/C++ development environment in the planet but that is of course because I get to code in Smalltalk :) . Seriously, the upside there is that one gets the productivity of Smalltalk but gets to deliver highly optimized Windows components when it actually matters to do so.

The main reason that I love my Alienware is that I get to be mobile and yet do what requires a full blown desktop, all in a stunningly looking notebook that is built like a Mercedes. I have already mentioned some of what I do above. Other applications include hard-disk recording for example which I use for my guitar practice and composing.

Another reason why my Alienware is really handy is to run multiple VwWare vm instances. VmWare allows one to essentially host multiple guest computing environments within a host environment. For example one can have multiple versions of Windows running at the same time co-running with Linux vms. This greatly facilitates simulating enterprise applications which operate over a heterogenous network. At my current gig, I am re-architecting a financial client server application that directly engages an Oracle database into an n-tier distributed system that is fault tolerant , provides for load balancing and is independant of RDMS vendor (well at least the major rdms will be pluggable). We will be using VisualWork's Opentalk st-st messaging, load balancing , snmp capabilities (currently in preview) as well as MQ integration. GLORP ( a TopLink re-incarnation by the one of the original architects) will provide for database pluggability, other technologies such as stunnel, LDAP, Samba , xml/https are in the mix. Get the picture ? The capability to recreate most of this in one notebook.provides for some real productivity gains..

Experiences

Big Blue

December 4, 2009

Just yesterday I received an email that from a Smalltalker out at a utility in the midwest. A utility which I never had heard of before using Smalltalk. He told me that after seeing my post in c.l.s regarding FPL and its Smalltalk systems and that he contacted a colleague over there and was told that the system was still in Smalltalk but that apparently there was a multi-year plan (mind you not project) to move over to Java. That came to no surprise to me. I was told as much at least 4 years ago. The fact of the matter is that FPL is a "Big Blue" shop. Big Blue exerts an incredible influence over many in IT at FPL. I was once told by a senior manager while I was working there that there was a saying in IT that basically said that "one will never get fired if they go with Big Blue". Big Blue is what FPLers call IBM. I'm sure that they did not invent the nickname. IBM actually has offices smack in the middle of at least the Miami office. Their influence is truly great. It was not long after IBM got into the Smalltalk game that at least the Juno office starting porting their Smalltalk apps to VisualAge for Smalltalk and it was not because they had a better can opener. When IBM changed their game to Java they began exerting great pressure to port those apps to Websphere, A lot of the pressure comes from IBM's insinuated threat to dropping support for VAST. Keep in mind that IBM has been at this for awhile and yet, as far as I have been told none of the apps have been actually ported. One app was wholesale replaced by a package. I am not trying to debate whether FPL is a Smalltalk shop or a Websphere shop. However, the Smalltalk apps have so far survived very powerful forces and they have done so because they work, they work quite well, and because most business units don't want to burn their money for at best very expensive replacement functionality. Again, I do take satisfaction in knowing that applications that I helped build over eight years ago are still out there helping FPL better service their customers. As far as the port goes, we shall see. First of all, what the Juno offices do is not necessarily what the Miami offices will do. As as I recall all the apps in Miami are VisualWorks and were not ported to VAST which gives me some hope that next hurricane season I may once again blog about how happy I am that those apps survived yet another year.

Experiences

When trouble means trouble

December 4, 2009

Here I go again, this is my second blog entry but this time I am blogging via James's BottomFeeder which supposedly guarantees safe passage, we shall see.

Hurricane Frances was of special concern to me since I have family in both Miami and Ft. Lauderdale and know first hand from Hurricane Andrew how destructive these things can be. Additionally, it was of interest to me because Florida Power and Light is my alma mater. It was in those halls that I was introduced to Smalltalk. I imagine that every utility company in the country must have a trouble management system but I think that we can all agree that when FPL prepares for trouble that they are living at an entirely different level than most other utilities. Trouble management usually entails at least two systems. A call center customer service system and a specific trouble management system. Both of these systems were partially to entirely written in Smalltalk. The Call Center systems was a modernization of a "green' screen system. It was interesting because it was generic framework that provided for CICS output to be streamed out to the client where it was marshalled into objects. It provided value because data associated with the respective screens was aggregated reducing user navigation, etc. I was one of the principal developers of the Smalltalk client piece. The trouble management system was largely written in Smalltalk and it employed Gemstone as its database. Gemstone for those not familiar with it is , a cross between an app server and an OODMS. Rather, it basically does both.

This past May, a colleague from my FPL days stopped by to visit me on his way to his cousin's wedding. I was pleased to know that the call center systems I had helped build were still standing and so was the trouble call management system among others. I am glad that so far those systems have weathered the Java marketing hype hurricane

general

I may have lost my first post

December 4, 2009

So it seems that I may have lost my first post, that is a drag, not sure if I will have the energy to recreate it.