Tuesday, June 05, 2012
Voyage - persisting objects
Voyage is another approach in the Smalltalk/Pharo world to persist object models. It was written by Esteban Lorenzano, I think mainly with the goal to persist data from Pier (the CMS system) images.
You will find his slides from the Pharo 2012 conference here. Francois Stephany is a beta tester and is already blogging how to use Voyage in conjunction with MongoDB.
The code can be found in the Voyage project at smalltalkhub.
You will find his slides from the Pharo 2012 conference here. Francois Stephany is a beta tester and is already blogging how to use Voyage in conjunction with MongoDB.
The code can be found in the Voyage project at smalltalkhub.
Monday, June 04, 2012
Thursday, May 31, 2012
Amber in use at SmalltalkHub
http://smalltalkhub.com is not only a new website for Smalltalk. If you look at the bottom of the page you will notice that is based on Pharo, Seaside, MongoDB and also the client side Amber Smalltalk that helps running the nice looking pages.
If you have have Google Chrome just hit F12, go to the JavaScript console and evaluate:
"smalltalk.Browser._open()"
to open the Amber class browser. It is very nice to see the classes in Hub-Amber-... categories and I like how easy one can understand and encapsulate client side rendering.
Hope to find some time to dig deeper into Amber especially after Nicolas has some nice ideas to push Amber.
If you have have Google Chrome just hit F12, go to the JavaScript console and evaluate:
"smalltalk.Browser._open()"
to open the Amber class browser. It is very nice to see the classes in Hub-Amber-... categories and I like how easy one can understand and encapsulate client side rendering.
Hope to find some time to dig deeper into Amber especially after Nicolas has some nice ideas to push Amber.
CogVM Object format
Guillermo explains the details of the CogVM object format in a blog post. I already mentioned Marianos blog that should also help you digging deeper in virtual machine building and related technology.
Currently there is also a discussion about a new object format that Eliot want to introduce. If interested check out the vm-dev list.
Destroy all software (fun)
After watching this video I opened a Smalltalk image and tried things like "#() + #()" and the like.
Wednesday, May 30, 2012
Tuesday, May 29, 2012
Fuel Release Version 1.8 and graph visualizer
There is a new version 1.8 of Fuel available. The nice thing is that it now includes a visualizer based on Roassal.
This allows to easily debug Fuel.
Note that the repository is now moved to SqueakSource3
This allows to easily debug Fuel.
Note that the repository is now moved to SqueakSource3
Friday, May 25, 2012
Squeak on top of JavaScript Linux in the web browser
Exotic but possible: Squeak virtual machine now also runs on JSLinux using the mini.image. JSLinux is a x86 PC emulator written in JavaScript and running in a web browser.
Here is the video and announcement from Pavel.
I expect more and more emulators running on top of JavaScript. Maybe one day it is fast enough to load and run Windows or Ubuntu on top of the JS engine right within your pc/tablet/phones web browser. Interesting times...
Thursday, May 24, 2012
CodeMirror - Styling Seasides WABrowser
I wrote a simple seaside wrapper today for the CodeMirror JavaScript Editor, the code lives in
http://ss3.gemstone.com/ss/Seaside-CodeMirror
It was actually very easy to wrap due to the new WAFileMetadataLibrary facility allowing for nested folders in latest Seaside versions.
Since this editor includes also a "Smalltalk mode" you can also use the project in combination with a simple patch changeset for WABrowser to style your web served Seaside code browser/editor:
http://ss3.gemstone.com/ss/Seaside-CodeMirror
It was actually very easy to wrap due to the new WAFileMetadataLibrary facility allowing for nested folders in latest Seaside versions.
Since this editor includes also a "Smalltalk mode" you can also use the project in combination with a simple patch changeset for WABrowser to style your web served Seaside code browser/editor:
Wednesday, May 23, 2012
Oniguruma
Oniguruma is a regular expression library which is standard with Ruby 1.9. Now there is a binding for VisualWorks Smalltalk too.
LivelyKernel updates
LivelyKernel - ideas from Squeaks Morphic brought to the webbrowser using JavaScript.
Interesting demos:
- Lively Kernel on 3D cube
- SyncMorph
- Lively Kernel 2 - Connections example
- Morph Interaction on iPad (with details here)
Monday, May 21, 2012
Sunday, May 20, 2012
Roassal visualization engine
Roassal is a new agile visualization engine. With the project you can graphically render objects using short and expressive Smalltalk expressions. It is MIT licensed and free.
Tuesday, May 15, 2012
Wednesday, May 09, 2012
Tuesday, May 08, 2012
Timeouts in Smalltalk
Thats why I like Smalltalk (and Blocks) - powerfull and easy to understand:
[ self doSomething ]
valueWithin: 1 day
onTimeout: [ self doSomethingElse ].
[ self doSomething ]
valueWithin: 1 day
onTimeout: [ self doSomethingElse ].
Monday, May 07, 2012
STON - Smalltalk Object Notation
You may know JSON format from JavaScript - now Smalltalk has something similar. It is called STON - Smalltalk Object Notation and infos about it can be found here.
Wednesday, April 25, 2012
Artefact - PDF framework for Pharo
Oliver created a PDF Framework for Pharo called "Artefact". Nice to have a new alternative.
In the past I used my LibHaru wrapper for Pharo - but that one requires a native library. Christians work generating PDF directly in Smalltalk is only available for VW and not yet ported to Pharo.
In the past I used my LibHaru wrapper for Pharo - but that one requires a native library. Christians work generating PDF directly in Smalltalk is only available for VW and not yet ported to Pharo.
Monday, April 23, 2012
2nd favorite language
Just stumbled over this presentation from Eric Clayberg with an introduction to Dart for Smalltalkers. You can also watch the video here. As you may know Dart is an attempt from Google to provide a better language than JavaScript for structured web apps. Its interesting and in my spare time I follow new Dart development by looking at dartlang.org or Dart news on Google+.
One interesting thing I noticed is that Eric's presentation is dated March 2012. Nothing special for you. But at least something that made me personally think. Exactly 12 years ago in March 2000 we both attended the first CampSmalltalk in San Diego where a bunch of Smalltalkers gathered to make the world a better place and have a great time. It was my first visit to the states and yes - we all had a great time.
At the Camp Eric had a few copies of the original Smalltalk issue of the BYTE magazine and I got the last one he had left. I was so happy about this historical trophy - it still has a special place in my library!
Eric is meanwhile working for Google as Engineering Manager for the new Dart Editor at Google. One of his slides in the Dart presentation is:
"Let us know if Dart is your new 2nd favorite language :)"
I have to admin I'm not sure what my 2nd favorite language is. There are many nice languages out there:
But I know what my first favorite language is and the programming future still has to be invented.
One interesting thing I noticed is that Eric's presentation is dated March 2012. Nothing special for you. But at least something that made me personally think. Exactly 12 years ago in March 2000 we both attended the first CampSmalltalk in San Diego where a bunch of Smalltalkers gathered to make the world a better place and have a great time. It was my first visit to the states and yes - we all had a great time.
At the Camp Eric had a few copies of the original Smalltalk issue of the BYTE magazine and I got the last one he had left. I was so happy about this historical trophy - it still has a special place in my library!
Eric is meanwhile working for Google as Engineering Manager for the new Dart Editor at Google. One of his slides in the Dart presentation is:
"Let us know if Dart is your new 2nd favorite language :)"
I have to admin I'm not sure what my 2nd favorite language is. There are many nice languages out there:
- Is it JavaScript since it is widely present and IMHO the dynamic languages with the best adoption
- Is it Dart since its new and better structured than JavaScript?
- Is it Groovy which is a nice scripting language for the JVM with Java, Lisp and Smalltalk roots and Smalltalk syntax on the wish list.
- Is it Amber since it allows me to run Smalltalk on JavaScript
- Is it Java since I (have to) use it in daily work and is the most wide spread
- Is it SQL since (relational) data often survives code/programs?
- Is it C since stupid TIOBE ranking says it has now overtaken Java.
But I know what my first favorite language is and the programming future still has to be invented.
SVG importer for Pharo Athens
Igor is working on an SVG importer for the Pharo Athens framework. He made some progress as this screenshot proves:
Pharo Launcher for Mac
Working with Pharo Smalltalk on Mac? Then have a look here for a nice launcher.
Pharo 2.0 development started
Pharo 1.4 is released - so the community starts Pharo 2.0 development. The webpage has the details.
Thursday, April 19, 2012
Nautilus - the reborn System Browser
When working with the new Pharo 1.4. Release please do not forget to try Nautilus - a new browser. Mariano has written a nice blog post about it.
Collabri - a new Web-App, written in Amber Smalltalk
This is a video on a new Web-App, written in Amber Smalltalk (which is running on top of JavaScript). The server uses node.js and socket.io with Amber.
Video on Athens for Pharo Smalltalk
There is a new video about Athens available - the new vector graphics framework for Pharo.
Wednesday, April 18, 2012
Monday, April 16, 2012
Amber Smalltalk on PhoneGap
Apache Cordova is a platform for building native mobile applications using HTML, CSS and JavaScript.
The project now has become PhoneGap and if you like you can already use Amber (the Smalltalk on top of JavaScript) with it.
Read more.
The project now has become PhoneGap and if you like you can already use Amber (the Smalltalk on top of JavaScript) with it.
Read more.
Inside OOVM
Kasper V. Lund (who is now working on Google Dart Language) provides a link to his Master thesis which he wrote with Jakob R. Andersen called "Revolutionizing Embedded Software".
Both worked together with Lars Bak in the OOVM team. Lars should be known to you from his V8 JavaScript Engine implementation in Google Chrome, the Strongtalk project and others.
OOVM is a Smalltalk based virtual machine that allows programmers to hook in remotely and modify code on the fly without needing to reboot the environment.
This VM allowed you to connect to running embedded devices and directly manipulate every object, class, or method. Which is a very known concept for us Smalltalkers since the beginning it allowed interactive programming environments for embedded system developers as well.
However - interesting paper.
Both worked together with Lars Bak in the OOVM team. Lars should be known to you from his V8 JavaScript Engine implementation in Google Chrome, the Strongtalk project and others.
OOVM is a Smalltalk based virtual machine that allows programmers to hook in remotely and modify code on the fly without needing to reboot the environment.
This VM allowed you to connect to running embedded devices and directly manipulate every object, class, or method. Which is a very known concept for us Smalltalkers since the beginning it allowed interactive programming environments for embedded system developers as well.
However - interesting paper.
Thursday, April 12, 2012
GSoC Update
13 stipendiums got accepted by Google for Smalltalk! Great work and a good investment into the future.
Tuesday, April 10, 2012
Pharo: from Kernel to Core
As I already posted Pavel is working on a small Pharo Kernel. The idea is to have the Pharo core image, throw out packages to find a minimalistic kernel image and by loading the packages back prove that it is able to boostrap Core from Kernel again.
Pavel is now using Fuel to load the core packages back into the kernel image to recreate a Pharo Core image. As you can see and read here this really speeds up the process.
Pavel is now using Fuel to load the core packages back into the kernel image to recreate a Pharo Core image. As you can see and read here this really speeds up the process.
Monday, April 02, 2012
Smallsource
Smallsource is a project from Dale to allow you to store Monticello packages
within the file tree. This allows you to use traditional versioning
systems like Subversion or Git from Pharo Smalltalk.
Check out the README of the project.
Dale gave a presentation on this called "Practical Git for Smalltalk"
within the file tree. This allows you to use traditional versioning
systems like Subversion or Git from Pharo Smalltalk.
Check out the README of the project.
Dale gave a presentation on this called "Practical Git for Smalltalk"
Vancouver Smalltalk Developer Meetup
And a new Vancouver Smalltalk Developer Meetup group. More infos here.
Ha Noi Smalltalk Developers Meetup
Regular meetings for developers interested in Smalltalk in Ha Noi with focus on Pharo.
Sunday, April 01, 2012
Seaside 3.0.7 in preparation
Nick, Dale, Phillip, Lukas and others are working hard on preparing Seaside 3.0.7.
Here is the change log.
You can help testing it.
Here is the change log.
You can help testing it.
Saturday, March 31, 2012
Made with Amber
Amber - the smalltalk on JavaScript is already used in customer products.
Laurent knows more - you can watch the video too.
Laurent knows more - you can watch the video too.
Snap!
In the tradition of Squeaks Morphic and the Scratch platform there
is a nice library for JavaScript with a morphic implementation to BYOB
(build you own blocks). Version 4.0 is still in pre-alpha status, but here's a preview available.
The current result looks really good. Details can be found on Jens Mönig's blog.
is a nice library for JavaScript with a morphic implementation to BYOB
(build you own blocks). Version 4.0 is still in pre-alpha status, but here's a preview available.
The current result looks really good. Details can be found on Jens Mönig's blog.
Monday, March 26, 2012
Pharo Build Pipeline
The Pharo image is used a base image for various software builds - details can be
found on the Jenkins Continuous Integration tool
http://ci.pharo-project.org
Also check out the visualization of the Pharo build pipeline.
found on the Jenkins Continuous Integration tool
http://ci.pharo-project.org
Also check out the visualization of the Pharo build pipeline.
Thursday, March 22, 2012
TicTacToe
You start learning Smalltalk - then look at the simple TicTacToe example game you can implement in Pharo.
Testing Webapps with Pharo
Selenium is a nice web app testing system. And there is Selenium Remote Control which can be used with Pharo web tester to test your web interfaces. There is also a video showing how to do that.
IWST 2011 papers
The International Workshop on Smalltalk Technologies (IWST) 2011 proceedings are currently on-line.
Pharo and (Oracle) databases
Want to work with Pharo and Oracle using DBXTalk. Here is some help.
Looks like the DBXTalk project makes good progress - there is Neptuno the database browser and Phoseydon Beta2 allowing you to define entities using a simple DSL.
Looks like the DBXTalk project makes good progress - there is Neptuno the database browser and Phoseydon Beta2 allowing you to define entities using a simple DSL.
Pharo Conference in May
Want to visit the Pharo conference in May?
Then check out this page: http://pharoconference.eventbrite.com/
Then check out this page: http://pharoconference.eventbrite.com/
Wednesday, March 21, 2012
Extended File Library for Seaside and Twitter Bootstrap
Subclasses of "WAFileLibrary" allow you to serve static files directly from Seaside without the need for a stand-alone server like Apache.
This is nice - but unfortunately they were all served in the same resource folder/url. If you look at most JavaScript components then often separate folders for CSS or images are used which can be very tricky if you want to wrap them in Seaside.
But there is help: Nick Ager works on an improved WAFileLibrary.
He also used this to wrap the Twitter Bootstrap library, check it out at:
http://twitterbootstrap.seasidehosting.st/
This is nice - but unfortunately they were all served in the same resource folder/url. If you look at most JavaScript components then often separate folders for CSS or images are used which can be very tricky if you want to wrap them in Seaside.
But there is help: Nick Ager works on an improved WAFileLibrary.
He also used this to wrap the Twitter Bootstrap library, check it out at:
http://twitterbootstrap.seasidehosting.st/
Object profiling
Looks like there is now a new small company founded to help profiling software. They use VisualWorks and Pharo and they use their own MIT licensed "Kai" and "Hapao" projects. I already reported on "Hapao" earlier.
VAST Videos
Nice - a new page for videos from Instantiations about VAST (Visual Age Smalltalk) and Smalltalk in general.
Sunday, March 18, 2012
Smalltalk and Google Summer of Code 2012
The ESUG Smalltalk projects were accepted for the GSoC. Read more at http://gsoc2012.esug.org/
Thursday, March 15, 2012
CSS Frameworks for Seaside
Paul made some code available that should easily allow you
to use some of the new CSS Frameworks within your Seaside
application. Nice!
to use some of the new CSS Frameworks within your Seaside
application. Nice!
BioSmalltalk
BioSmalltalk is an open source library for doing bioinformatics with Smalltalk. You can read a little bit about it on the following blog: http://biosmalltalk.blogspot.com/
3 Smalltalkers presenting at DYNCON 2012
Gäran Krampe, Jason Ayers and Nicolas Petton - 3 Smalltalkers presenting at the dynamic languages conference.
Wednesday, March 14, 2012
Optimizing Seaside: Cacheable
Sebastian Sastre shares a project usefull for optimizing Seaside apps.
It is called Cacheable.
"Cacheable will make you able to use the same code in the app but making your web applications able to cache resources forever but preserving your ability of updating them whenever you need to."
It is called Cacheable.
"Cacheable will make you able to use the same code in the app but making your web applications able to cache resources forever but preserving your ability of updating them whenever you need to."
Spelling Services for Pharo and Squeak
In the past John M. McIntosh created a spellchecker plugin for the
MacVM for Squeak. Now Tim announced that there are also bindings
for Linux and Windows available.
You will find it as "ConfigurationOfSpellingServices" in the MetacelloRepository on
Squeaksource.
The development repo is at the Squeaksource 3 instance at HPI Institute.
Its open for read write - so if you want to contribute...
MacVM for Squeak. Now Tim announced that there are also bindings
for Linux and Windows available.
You will find it as "ConfigurationOfSpellingServices" in the MetacelloRepository on
Squeaksource.
The development repo is at the Squeaksource 3 instance at HPI Institute.
Its open for read write - so if you want to contribute...
Smalltalk and CI
Pharo already provides a CI server for daily builds:
http://ci.pharo-project.org
I personally use it to get the latest versions and you should do as
well if you are interested in up to date images.
Now some work is going on in the Squeak community to reuse the build
scripts from Lukas as well and I think we can soon expect
http://www.squeakci.org
to fill up with Squeak CI built images. Cool and a big thanks to the people providing that!
http://ci.pharo-project.org
I personally use it to get the latest versions and you should do as
well if you are interested in up to date images.
Now some work is going on in the Squeak community to reuse the build
scripts from Lukas as well and I think we can soon expect
http://www.squeakci.org
to fill up with Squeak CI built images. Cool and a big thanks to the people providing that!
Tuesday, March 13, 2012
Pharo Smalltalk in use ...
Nice video from Pinesoft. The application is implemented in Pharo Smalltalk.
Wednesday, March 07, 2012
SmallCharts website
Hey, Christian announced that his company website has a new design. The company is offering a tool (built in VW Smalltalk) to easily build financial charts for newspapers. Nice!
Friday, March 02, 2012
S8/U8 Social Smalltalk development
There is a new social platform for Smalltalk development called "U8".
It is based on development with S8 - a Smalltalk running over javascript execution engines on all major browser flavors.
You can find some details here or visit the NYC Smalltalk user group on 6th of March (details on the meeting here).
It is based on development with S8 - a Smalltalk running over javascript execution engines on all major browser flavors.
You can find some details here or visit the NYC Smalltalk user group on 6th of March (details on the meeting here).
Wednesday, February 29, 2012
Styling your (VisualWorks) Smalltalk app
There are Smalltalks with native UIs (native widgets painted by the underlying OS) and other Smalltalks who paint the windows and widgets themselves.
With the last ones you can even built an own "Cross-Platform UI Look" like this UI example from a VisualWorks based product from http://www.cognitone.com shows.
With the last ones you can even built an own "Cross-Platform UI Look" like this UI example from a VisualWorks based product from http://www.cognitone.com shows.
Wednesday, February 22, 2012
Play with Arduino and Pharo
In case you want to play with Arduino and Pharo Smalltalk then check out this blog post.
Also note that since the VM packaged with the 1.3 one click image from the pharo-project.org download has a bug when using FFI package you should use the latest Cog VM as it is also described here.
Also note that since the VM packaged with the 1.3 one click image from the pharo-project.org download has a bug when using FFI package you should use the latest Cog VM as it is also described here.
Tuesday, February 07, 2012
Friday, February 03, 2012
Monday, January 30, 2012
Friday, January 27, 2012
Monday, January 16, 2012
SqueakSource down
SqueakSource is often down, this time due to a network error.
But there is help by using a mirror.
But there is help by using a mirror.
Significance of 1.1.1753
When working in IT you often have "magic" numbers or dates. Remember the year 2000 bug (Y2K)?
One interesting date is is 1.1.1753 - which is a limit in SQL-Server. Interesting to know.
One interesting date is is 1.1.1753 - which is a limit in SQL-Server. Interesting to know.
Tuesday, January 10, 2012
Sunday, January 08, 2012
Who needs the JVM - Tomcat on Smalltalk/X
The software engineering group from the czech university in Prague is running Tomcat on Smalltalk/X. So who needs the JVM? ;)
Wednesday, January 04, 2012
Thursday, December 29, 2011
Scripy
Scripy - a way to share Workspace scripts with others right from within you Smalltalk image. Read more at http://www.scripy.org
Tuesday, December 27, 2011
Monday, December 26, 2011
Phoseydon Beta released
Phoseydon - a tool aimed to model and create applications easily in Smalltalk, as Ruby does with Rails or python with Django. You describe a model, and from that model a relational database plus an object model plus an ORM mapping are fed from that model.
Teleplace gone
The company Teleplace is gone, the software (written in Squeak Smalltalk) is still available and continues to live.
Wednesday, December 21, 2011
Renaming Projects: DBXTalk
Looks like it is not good to rename a project while it already got some attention on the web. The former SqueakDBX is now DBXTalk and you should follow this discussion if you are interested.
Monday, December 19, 2011
Sunday, December 11, 2011
Friday, December 09, 2011
Smalltalk Devroom at FOSDEM 2012
Dont know what to do on Sunday, February 5, 2012? You can visit the Smalltalk Devroom at FOSDEM 2012 if you like.
Monday, December 05, 2011
BDD Extensions for Pharo
GUI testing in Pharo made easy - if you are interested then read this and this or checkout the project on Squeaksource. It is an experiment from Sean P. DeNigris for Behavior Driven Development (BDD) in Pharo.
Subscribe to:
Posts (Atom)