The newest Cincom Smalltalk Featured Partner is Simberon Incorporated.
The newest Cincom Smalltalk Featured Partner is Simberon Incorporated. Since 2006, Cincom Systems, Inc. and Simberon Incorporated have had a partnership agreement in place for consulting and training services. This partnership has led to numerous successes with companies who needed assistance with their applications written in Cincom Smalltalk and companies who needed training or an application evaluation to make sure that they were getting the most out of their Cincom Smalltalk solution.
Simberon’s corporate office is located in Ottawa, Ontario, Canada and was founded in 1994 by David Buck to provide object oriented consulting and training services to software development companies in Canada and across the world. Specializing in Smalltalk development, Simberon has assisted customers in upgrading their applications and solving difficult problems to allow their development to continue. Simberon also offers introductory and advanced level training courses for Smalltalk, Java, and .NET developers.
- To learn more about Simberon Incorporated, click here.
We recently had a discussion with David Buck about Simberon’s services:
What services do you wish more customers would use and why?
“There are many customers who are running on very old versions of Cincom Smalltalk. Sometimes I see teams using versions that are 15 years old. This is a very risky practice. It’s hard maintaining code that’s built on an old version because it’s not supported by Cincom Support and may not run properly on the newest operating systems or with the newest database drivers. You should always strive to keep within a few versions of the most recent version. Not only do you reduce your risk of running with incompatible versions but also the tools and environment improvements make it much easier to develop applications.”
Which is your favorite class to teach?
“I always enjoy teaching the Introduction to Cincom Smalltalk classes. It gives me a chance to show developers a truly amazing development environment and show them how easy software development can be. These days, most of the people taking the Introduction to VisualWorks classes are developers who have used Java, C++ or C# previously. They often haven’t been exposed to environments that are as dynamic and as simple as Smalltalk. It’s fun to show them why I’m so passionate about Smalltalk.”
What are the biggest mistakes developers make when writing software?
“The biggest problem I see is code that violates the basic principles of object oriented design. The purpose of object oriented design is to make the code easy to develop and easy to understand. When you violate the object oriented principles, the code becomes more obscure and harder to change. The best way to write good code is to continually refactor it as you go to simplify anything that’s becoming difficult. If you don’t refactor to follow good object oriented principles, your code becomes rigid and making changes to it becomes a huge chore. It helps to get other developers to look at your code and provide comments and feedback. In fact, that’s one service I’m often asked to provide to my customers. They want me to go through some code and provide comments and suggestions for improvement.”
Do these basic object oriented principles lead to good performance?
“By performance, I take it you mean that it runs quickly. Object oriented principles allow you to develop code that works. It’s not so concerned about performance. Having said that, performance is often an important aspect of an application. The funny thing about performance, however, is that it’s hard to anticipate where your performance problems will be ahead of time. I’ve seen many projects create a complex design thinking that it will run faster and find out that it offers little or no benefit. The best way to program for performance is to write it first using good object oriented practices. Then measure the performance and determine where the best targets are for optimization. Once you know what’s slow, you can work to speed it up. Without measuring, you’re just guessing and our guesses are usually terrible when it comes to speed.”
Why do you like developing in Smalltalk?
“In Smalltalk, I spent more time thinking about my domain and less time thinking about the language. It allows me to explore my object model and understand areas of the code that I’ve never encountered before. It has excellent tools to navigate around to help you understand the code and quickly determine where and how to make a change. I’m often put onto difficult assignments where I need to quickly find a problem and come up with a fix. The Smalltalk tools allow me to work quickly and focus on the problem rather than on the tools. I like to compare it to modeling with clay. With Smalltalk, you can pull this, bend that, turn it around, look at it from another angle, and stretch it some more. With most other development environments you need to do the same operations but you have to do it by using sticks from five feet away. You lose the intimate contact with the system and lose the ability to easily understand and manipulate it.”