Tuesday, February 5, 2008

Aida/Web soon with Scribo - opensource CMS platform

Current development of Aida/Web is geared towards opensourcing part of Aida/BiArt CMS platform into package called Scribo. With Scribo you'll be able to create blogs, wikis, web sites and templates in practically no time.

To get a taste what can be done with Scribo, check Nicolas blog. It's written on top of it.

Also, AIDA/Web just bumped version number up to 5.6-stable and is featuring some very interesting stuff:


  • robust and seamless Ajax support, you won't even notice that you are doing Ajax!

  • integrated Ajax libraries Prototype and Scriptaculous

  • reliable and performant serving directly to the Internet,

  • multilingual support for serving domain objects in many languages,

  • WYSIWYG editor support (TinyMCE),

  • strong WebGrid support with Ajax sorting and filtering,

  • tabulation with ENTER key,

  • real-time statistics including referrers,

  • Joomla template support with Mitra template included.



Stay tuned, more of Aida/Web is on the way!

Thursday, December 13, 2007

Aida/Web updates

Janko has been busy lately, Aida/Web got some logo proposals.

Also, new project is getting started, opensource CRM system written on Aida/Web framework. If you wish to participate, contact Janko. The project will officialy start in January 2008.

Happy holidays from the sunny side of the Alps!

Monday, October 22, 2007

Aida/Web presentation in Kiberpipa

On Tuesday 23th of October (ie. tomorrow :-) Janko will be giving Aida/Web presentation in Kiberpipa (Ljubljana, Slovenia).

From Aida's site:
AIDA/Web is a web server and framework for complex web applications with integrated Ajax support, rich collection of web components to build web pages programatically, MVC-like separation of presentation from domain, nice looking and bookmarkable url links, with integrated session and security management and many more.

AIDA/Web is known by its simplicity but still allows building most demanding web applications of many sorts. It has everything you need for a real web app, together with Ajax.

It is also a mature one, running web apps in production since 1996. It is used in many intranet business apps from Gas billing system for all gas in Slovenia to logistics management system called e-logis and recently a CMS like system for Quality and Business process management.


The talk will start at 7pm. See you there!

Thursday, October 11, 2007

Timeout

I'm short on time, so this billing application will have to wait for a few more days. Reality kicked in...

Thursday, September 27, 2007

Debian etch font issue

While updating my image with latest Swazoo and AIDA/Web (from Cincoms public repository) on Debian etch, I got some weird font errors.

Soon I got a tip on #smalltalk I should try to 'rehash' my fonts before starting Smalltalk:
xset fp rehash

Starting Smalltalk after this command, update process finished without errors.

Update your image

Before we start writing our billing application, let's update our image software packages to their latest versions. Two pieces of software we'll use are Swazoo (Smalltalk Web Application Zoo) web server and of course AIDA/Web framework itself.

From the menu in main window select Store>Connect to Repository. From Connection Profile choose Cincom Public Repository and click Connect:



You are now connected to CVS-like repository from where you can update your image software packages. Choose Store>Published Items. A window should pop-up showing repository contents. In the upper left field (Bundles and Packages) type 'swazoo'. Select topmost bundle from the left window and Version (2.0.1, mivsek). Right click on version item and select Load.



Now wait till Swazoo gets updated. Let me remind you this is live image you're updating. You better have a backup image ready just in case. ;-)
Ok, when done, repeat the same procedure for AIDA/Web bundle. Start typing aida in the search field and you'll see AIDA/Web on top of the list in the left window. Select it, select Version 5.4.0, rightclick and load it into image.

When done and if there are no errors in Transcript window, you're image is updated. If for some reason you're image can't be smoothly updated, you can always ask people on AIDA/Web mailing list about your issue.

With all this behind us, we're now ready to start writing our billing application. We'll start with domain model...

Tuesday, September 25, 2007

Backup your work

What work? What backup? We haven't done anything yet!

True, but the image (visualnc.im) you're running right now is the default image. It comes with installation. You really don't want to modify this image, as if you do something stupid (and believe me, you will...) you'd be left with corrupted image and no Smalltalk environment. Your only way out would be fresh install. After three or four re-installations, you get kind of sick of it.

So, either copy the image file with new name or in File menu choose Save As and save image with different name. Also, good practice is to save your work after big changes. Or so they say...

You can skip this step if you know what you're doing. But better be safe than sorry.

Friday, September 21, 2007

The tools of the craft

Since I'm starting from scratch, I'll need some tools. First tool is Smalltalk itself. While there's lots of Smalltalk implementations, I chose VisualWorks on which AIDA/Web is developed and well supported.

Let's got to Cincom's site and download VisualWorks-NonComercial (or VW-NC). It's free and it has all features enabled. Yes, you get it all for free!
Follow this link and click on 'Proceed to the downloads now'. We can register later (it's also free), now we just want the software.

You'll see few options (Net installer, CD installer, ...). I tried Net installer few times and ftp connection always dies on me. So I suggest you download ISO image and burn it on CD. After selecting CD-based installer, you can choose which version of VW-NC to download. I suggest you go with the latest version (in time of writing it's 7.5). Save the ISO file and burn it on CD.

I'm doing this on Linux, but Windows of any recent kind should be ok. Insert newly burned CD and installer should pop up:



Choose Typical Install and click Next. You'll see what will be installed, just click Next. Licence agreement; read it and eventually choose I Accept, then click Install.

Now sit back, sip your tea and wait for installer to finish. When done, you should get similar notice:



Smalltalk needs to know where is installed so it can load various libraries and portions of code. For that, special environment variable VISUALWORKS must be set (bash version):

export VISUALWORKS=/home/damir/vw7.5nc


Click OK and Exit the installer. You now have your Smalltalk installed! To run VisualWorks, go to installation directory (usualy ~/vw7.5nc on Linux) and run this command from the shell:

bin/linux86/visual image/visualnc.im


You should now see two windows, Launcher and Helper:



Congratulations, we're up and running! Time to party, gimme that beer...

The first dip

For the last two years I've increasingly spent more and more time doing web programming. I'm quite comfortable with RubyOnRails, it's in my fingers. However, according to the Blub theory, I should look up and use more powerful tools.

My next step is Smalltalk.

I'll use Smalltalk for my future web programming. More specific, Cincom's VisualWorks with AIDA/Web framework by Eranova.

From what I've read and heard, VisualWorks Smalltalk is mature and stable, enterprise class software used by world's largest corporations.
AIDA/Web is a web framework, built with Smalltalk and used in production setups for almost a decade. And it's buzzword compliant.

I'm totaly new in world of Smalltalk. But I'm excited! From what I've seen, Smalltalk has many advantages over today's most popular choices (or companies best practices, if you will) used in web programming.

Here, I'll try to document all steps taken during building web application with AIDA/Web framework. The application will be billing system for small companies. It should include as many aspects of niche as possible: issuing invoices, tax, customers list, notifying, XML import/export, PDF generation and whatever features should prove to be needed.

Note, however, I haven't yet started writing this application. I don't event have required software installed. This is from-ground-up approach and I challenge you to follow me. Even more, I dare you to surpass me with your additions and features.

So, get yourself a cup of tea and let's get started with our new billing application.